1. 系统新增用户标记为外部用户;e 办同步用户标记为系统用户

2. 业务表新增基础业务字段,创建人与更新人名称

(cherry picked from commit 9ee1100b29)
This commit is contained in:
chenbowen
2025-09-16 16:09:10 +08:00
committed by chenbowen
parent 988b4bd74f
commit 4004d4f691
19 changed files with 195 additions and 53 deletions

View File

@@ -56,4 +56,7 @@ public class DeptSaveReqVO {
@Schema(description = "是否集团", example = "false")
private Boolean isGroup;
@Schema(description = "部门来源类型", example = "1")
private Integer deptSource;
}

View File

@@ -70,6 +70,9 @@ public class UserSaveReqVO {
@DiffLogField(name = "用户头像")
private String avatar;
@Schema(description = "用户来源类型", example = "1")
private Integer userSource;
// ========== 仅【创建】时,需要传递的字段 ==========
@Schema(description = "密码", requiredMode = Schema.RequiredMode.REQUIRED, example = "123456")

View File

@@ -75,4 +75,11 @@ public class DeptDO extends TenantBaseDO {
*/
private Boolean isGroup;
/**
* 部门来源类型
*
* 枚举 {@link cn.iocoder.yudao.module.system.enums.dept.DeptSourceEnum}
*/
private Integer deptSource;
}

View File

@@ -110,4 +110,11 @@ public class AdminUserDO extends TenantBaseDO {
*/
private LocalDateTime loginDate;
/**
* 用户来源类型
*
* 枚举 {@link cn.iocoder.yudao.module.system.enums.user.UserSourceEnum}
*/
private Integer userSource;
}

View File

@@ -30,6 +30,8 @@ import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.
import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.*;
import cn.iocoder.yudao.module.system.enums.dept.DeptSourceEnum;
/**
* 部门 Service 实现类
*
@@ -61,6 +63,10 @@ public class DeptServiceImpl implements DeptService {
// 插入部门
DeptDO dept = BeanUtils.toBean(createReqVO, DeptDO.class);
// 设置部门来源:如果未指定,默认为外部部门
if (dept.getDeptSource() == null) {
dept.setDeptSource(DeptSourceEnum.EXTERNAL.getSource());
}
deptMapper.insert(dept);
return dept.getId();
}

View File

@@ -7,6 +7,7 @@ import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptSaveReqV
import cn.iocoder.yudao.module.system.controller.admin.sync.vo.org.*;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.enums.dept.DeptTypeEnum;
import cn.iocoder.yudao.module.system.enums.dept.DeptSourceEnum;
import cn.iocoder.yudao.module.system.service.dept.DeptService;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
@@ -32,6 +33,8 @@ public class OrgSyncServiceImpl implements OrgSyncService {
if (requestVO.getDeptType() != null) {
bean.setIsCompany(DeptTypeEnum.isCompany(requestVO.getDeptType()));
}
// 设置为同步部门
bean.setDeptSource(DeptSourceEnum.SYNC.getSource());
LoginUser loginUser = getLoginUser();
bean.setTenantId(Optional.ofNullable(loginUser).orElse(new LoginUser()).getTenantId());
Long deptId = deptService.createDept(bean);

View File

@@ -14,6 +14,7 @@ import cn.iocoder.yudao.module.system.service.dept.PostService;
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import cn.iocoder.yudao.module.system.service.userdept.UserDeptService;
import cn.iocoder.yudao.module.system.util.sync.SyncVerifyUtil;
import cn.iocoder.yudao.module.system.enums.user.UserSourceEnum;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
@@ -46,6 +47,8 @@ public class UserSyncServiceImpl implements UserSyncService {
TenantContextHolder.setTenantId(tenantId);
// 中铝 e 办不会设置密码,设置默认密码
saveReqVO.setPassword("ZLEB");
// 设置为同步用户
saveReqVO.setUserSource(UserSourceEnum.SYNC.getSource());
Long userId = adminUserService.createUser(saveReqVO);
UserCreateResponseVO resp = new UserCreateResponseVO();
resp.setUid(String.valueOf(userId));

View File

@@ -28,6 +28,7 @@ import cn.iocoder.yudao.module.system.service.dept.PostService;
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
import cn.iocoder.yudao.module.system.service.tenant.TenantService;
import cn.iocoder.yudao.module.system.service.userdept.UserDeptService;
import cn.iocoder.yudao.module.system.enums.user.UserSourceEnum;
import com.google.common.annotations.VisibleForTesting;
import com.mzt.logapi.context.LogRecordContext;
import com.mzt.logapi.service.impl.DiffParseFunction;
@@ -108,6 +109,10 @@ public class AdminUserServiceImpl implements AdminUserService {
LoginUser loginUser = getLoginUser();
user.setTenantId(Optional.ofNullable(loginUser).orElse(new LoginUser()).getTenantId());
}
// 设置用户来源:如果未指定,默认为外部用户
if (user.getUserSource() == null) {
user.setUserSource(UserSourceEnum.EXTERNAL.getSource());
}
user.setPassword(encodePassword(createReqVO.getPassword()));
userMapper.insert(user);
// 2.2 插入关联部门
@@ -145,6 +150,7 @@ public class AdminUserServiceImpl implements AdminUserService {
// 2. 插入用户
AdminUserDO user = BeanUtils.toBean(registerReqVO, AdminUserDO.class);
user.setStatus(CommonStatusEnum.ENABLE.getStatus()); // 默认开启
user.setUserSource(UserSourceEnum.EXTERNAL.getSource()); // 注册用户设为外部用户
user.setPassword(encodePassword(registerReqVO.getPassword())); // 加密密码
userMapper.insert(user);
return user.getId();