mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-11-04 04:08:43 +08:00 
			
		
		
		
	Merge branch 'master-jdk17' of https://gitee.com/zhijiantianya/ruoyi-vue-pro into develop
This commit is contained in:
		@@ -33,8 +33,8 @@ public class OperateLogApiImpl implements OperateLogApi {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    @TransMethodResult
 | 
			
		||||
    public PageResult<OperateLogRespDTO> getOperateLogPage(OperateLogPageReqDTO pageReqVO) {
 | 
			
		||||
        PageResult<OperateLogDO> operateLogPage = operateLogService.getOperateLogPage(pageReqVO);
 | 
			
		||||
    public PageResult<OperateLogRespDTO> getOperateLogPage(OperateLogPageReqDTO pageReqDTO) {
 | 
			
		||||
        PageResult<OperateLogDO> operateLogPage = operateLogService.getOperateLogPage(pageReqDTO);
 | 
			
		||||
        return BeanUtils.toBean(operateLogPage, OperateLogRespDTO.class);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -74,8 +74,12 @@ public class SocialClientServiceImpl implements SocialClientService {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 小程序版本
 | 
			
		||||
     *
 | 
			
		||||
     * 1. release:正式版
 | 
			
		||||
     * 2. trial:体验版
 | 
			
		||||
     * 3. developer:开发版
 | 
			
		||||
     */
 | 
			
		||||
    @Value("${yudao.wxa-code.env-version}")
 | 
			
		||||
    @Value("${yudao.wxa-code.env-version:release}")
 | 
			
		||||
    public String envVersion;
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,9 @@ import cn.iocoder.yudao.framework.common.exception.ServiceException;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils;
 | 
			
		||||
import cn.iocoder.yudao.framework.datapermission.core.util.DataPermissionUtils;
 | 
			
		||||
import cn.iocoder.yudao.module.infra.api.config.ConfigApi;
 | 
			
		||||
import cn.iocoder.yudao.module.infra.api.file.FileApi;
 | 
			
		||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
 | 
			
		||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
 | 
			
		||||
@@ -31,8 +33,8 @@ import com.mzt.logapi.context.LogRecordContext;
 | 
			
		||||
import com.mzt.logapi.service.impl.DiffParseFunction;
 | 
			
		||||
import com.mzt.logapi.starter.annotation.LogRecord;
 | 
			
		||||
import jakarta.annotation.Resource;
 | 
			
		||||
import jakarta.validation.ConstraintViolationException;
 | 
			
		||||
import lombok.extern.slf4j.Slf4j;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Value;
 | 
			
		||||
import org.springframework.context.annotation.Lazy;
 | 
			
		||||
import org.springframework.security.crypto.password.PasswordEncoder;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
@@ -57,8 +59,7 @@ import static cn.iocoder.yudao.module.system.enums.LogRecordConstants.*;
 | 
			
		||||
@Slf4j
 | 
			
		||||
public class AdminUserServiceImpl implements AdminUserService {
 | 
			
		||||
 | 
			
		||||
    @Value("${sys.user.init-password:yudaoyuanma}")
 | 
			
		||||
    private String userInitPassword;
 | 
			
		||||
    static final String USER_INIT_PASSWORD_KEY = "system.user.init-password";
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
    private AdminUserMapper userMapper;
 | 
			
		||||
@@ -80,6 +81,8 @@ public class AdminUserServiceImpl implements AdminUserService {
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
    private FileApi fileApi;
 | 
			
		||||
    @Resource
 | 
			
		||||
    private ConfigApi configApi;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    @Transactional(rollbackFor = Exception.class)
 | 
			
		||||
@@ -428,13 +431,28 @@ public class AdminUserServiceImpl implements AdminUserService {
 | 
			
		||||
    @Override
 | 
			
		||||
    @Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入
 | 
			
		||||
    public UserImportRespVO importUserList(List<UserImportExcelVO> importUsers, boolean isUpdateSupport) {
 | 
			
		||||
        // 1.1 参数校验
 | 
			
		||||
        if (CollUtil.isEmpty(importUsers)) {
 | 
			
		||||
            throw exception(USER_IMPORT_LIST_IS_EMPTY);
 | 
			
		||||
        }
 | 
			
		||||
        // 1.2 初始化密码不能为空
 | 
			
		||||
        String initPassword = configApi.getConfigValueByKey(USER_INIT_PASSWORD_KEY);
 | 
			
		||||
        if (StrUtil.isEmpty(initPassword)) {
 | 
			
		||||
            throw exception(USER_IMPORT_INIT_PASSWORD);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 2. 遍历,逐个创建 or 更新
 | 
			
		||||
        UserImportRespVO respVO = UserImportRespVO.builder().createUsernames(new ArrayList<>())
 | 
			
		||||
                .updateUsernames(new ArrayList<>()).failureUsernames(new LinkedHashMap<>()).build();
 | 
			
		||||
        importUsers.forEach(importUser -> {
 | 
			
		||||
            // 校验,判断是否有不符合的原因
 | 
			
		||||
            // 2.1.1 校验字段是否符合要求
 | 
			
		||||
            try {
 | 
			
		||||
                ValidationUtils.validate(BeanUtils.toBean(importUser, UserSaveReqVO.class).setPassword(initPassword));
 | 
			
		||||
            } catch (ConstraintViolationException ex){
 | 
			
		||||
                respVO.getFailureUsernames().put(importUser.getUsername(), ex.getMessage());
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
            // 2.1.2 校验,判断是否有不符合的原因
 | 
			
		||||
            try {
 | 
			
		||||
                validateUserForCreateOrUpdate(null, null, importUser.getMobile(), importUser.getEmail(),
 | 
			
		||||
                        importUser.getDeptId(), null);
 | 
			
		||||
@@ -442,15 +460,16 @@ public class AdminUserServiceImpl implements AdminUserService {
 | 
			
		||||
                respVO.getFailureUsernames().put(importUser.getUsername(), ex.getMessage());
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
            // 判断如果不存在,在进行插入
 | 
			
		||||
 | 
			
		||||
            // 2.2.1 判断如果不存在,在进行插入
 | 
			
		||||
            AdminUserDO existUser = userMapper.selectByUsername(importUser.getUsername());
 | 
			
		||||
            if (existUser == null) {
 | 
			
		||||
                userMapper.insert(BeanUtils.toBean(importUser, AdminUserDO.class)
 | 
			
		||||
                        .setPassword(encodePassword(userInitPassword)).setPostIds(new HashSet<>())); // 设置默认密码及空岗位编号数组
 | 
			
		||||
                        .setPassword(encodePassword(initPassword)).setPostIds(new HashSet<>())); // 设置默认密码及空岗位编号数组
 | 
			
		||||
                respVO.getCreateUsernames().add(importUser.getUsername());
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
            // 如果存在,判断是否允许更新
 | 
			
		||||
            // 2.2.2 如果存在,判断是否允许更新
 | 
			
		||||
            if (!isUpdateSupport) {
 | 
			
		||||
                respVO.getFailureUsernames().put(importUser.getUsername(), USER_USERNAME_EXISTS.getMsg());
 | 
			
		||||
                return;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user