This commit is contained in:
xiaofajia 2024-12-20 14:19:45 +08:00
parent 4b6d66e9b4
commit e230c5ab09
6 changed files with 62 additions and 23 deletions

View File

@ -105,15 +105,15 @@ public class CompanyStaffController {
}
/**
* 创建员工信息在角色和用户已经存在的情况下用
* 创建修改员工信息在角色和用户已经存在的情况下用
*
* @author 小李
* @date 17:26 2024/12/19
* @param staffRespVO 信息
**/
@PostMapping("/createByExistUser")
public CommonResult<?> createByExistUser(@RequestBody CompanyStaffRespVO staffRespVO){
staffService.createByExistUser(staffRespVO);
@PostMapping("/updateByExistUser")
public CommonResult<?> updateByExistUser(@RequestBody CompanyStaffRespVO staffRespVO){
staffService.updateByExistUser(staffRespVO);
return CommonResult.ok();
}

View File

@ -120,13 +120,13 @@ public class CompanyStaff extends TenantBaseDO {
@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ExcelProperty("转正时间")
private LocalDateTime formalDate;
private Date formalDate;
/** 购买保险时间 */
@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ExcelProperty("购买保险时间")
private LocalDateTime safeDate;
private Date safeDate;
/** 附件的名称们手动填写逗号分隔没有也要占位和下面的urls对应 */
private String fileNames;

View File

@ -141,12 +141,12 @@ public interface CompanyStaffService extends IService<CompanyStaff> {
CompanyStaffRespVO getMyAdviser(Long tenantId,String sysCode);
/**
* 创建员工信息在角色和用户已经存在的情况下用
* 创建修改员工信息在角色和用户已经存在的情况下用
*
* @author 小李
* @date 17:26 2024/12/19
* @param staffRespVO 信息
**/
void createByExistUser(CompanyStaffRespVO staffRespVO);
void updateByExistUser(CompanyStaffRespVO staffRespVO);
}

View File

@ -689,26 +689,43 @@ public class CompanyStaffServiceImpl extends ServiceImpl<CompanyStaffMapper, Com
}
/**
* 创建员工信息在角色和用户已经存在的情况下用
* 创建修改员工信息在角色和用户已经存在的情况下用
*
* @author 小李
* @date 17:26 2024/12/19
* @param staffRespVO 信息
**/
public void createByExistUser(CompanyStaffRespVO staffRespVO){
AdminUserRespDTO loginUser = getLoginUser();
// 设置新增员工部门
staffRespVO.setDeptId(loginUser.getDeptId());
// 1 获取当前登录用户的企业信息给添加的员工
DeptRespDTO loginDept = getLoginDept(loginUser.getDeptId());
staffRespVO.setCorpId(loginDept.getCorpId());
// 2 生成唯一推广码
String uniqueCode = uniqueCodeService.createUniqueCode();
if (!ObjectUtil.isNotEmpty(uniqueCode)) {
throw exception(CommonErrorCodeConstants.UNIQUE_CODE_CREATE_REPEAT);
@Override
public void updateByExistUser(CompanyStaffRespVO staffRespVO){
if (ObjectUtil.isEmpty(staffRespVO.getId())){
AdminUserRespDTO loginUser = getLoginUser();
// 设置新增员工部门
staffRespVO.setDeptId(loginUser.getDeptId());
// 1 获取当前登录用户的企业信息给添加的员工
DeptRespDTO loginDept = getLoginDept(loginUser.getDeptId());
staffRespVO.setCorpId(loginDept.getCorpId());
// 2 生成唯一推广码
String uniqueCode = uniqueCodeService.createUniqueCode();
if (!ObjectUtil.isNotEmpty(uniqueCode)) {
throw exception(CommonErrorCodeConstants.UNIQUE_CODE_CREATE_REPEAT);
}
staffRespVO.setUniqueCode(uniqueCode);
// 3 保存员工信息到数据库
baseMapper.insert(staffRespVO);
}else {
AdminUserRespDTO user = adminUserApi.getUser(staffRespVO.getUserId());
AdminUserRespDTO newUser = new AdminUserRespDTO();
newUser.setId(user.getId());
if (!user.getUsername().equals(staffRespVO.getTel())){
newUser.setUsername(staffRespVO.getTel());
}
if (!user.getNickname().equals(staffRespVO.getName())){
newUser.setNickname(staffRespVO.getName());
}
if (ObjectUtil.isNotEmpty(newUser.getUsername()) || ObjectUtil.isNotEmpty(newUser.getNickname())){
adminUserApi.updateUser(newUser);
}
baseMapper.updateById(staffRespVO);
}
staffRespVO.setUniqueCode(uniqueCode);
// 3 保存员工信息到数据库
baseMapper.insert(staffRespVO);
}
}

View File

@ -162,4 +162,13 @@ public interface AdminUserApi {
**/
void setOpenId(Long userId,String openId);
/**
* 更新用户信息慎用
*
* @author 小李
* @date 11:47 2024/12/20
* @param newUser 新用户信息
**/
void updateUser(AdminUserRespDTO newUser);
}

View File

@ -195,4 +195,17 @@ public class AdminUserApiImpl implements AdminUserApi {
userService.setOpenId(userId, openId);
}
/**
* 更新用户信息慎用
*
* @author 小李
* @date 11:47 2024/12/20
* @param newUser 新用户信息
**/
@Override
public void updateUser(AdminUserRespDTO newUser){
AdminUserDO bean = BeanUtil.toBean(newUser, AdminUserDO.class);
userService.updateById(bean);
}
}