From 189849927e37278c8bc03202bd714aca7a0f8f7d Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期三, 10 十二月 2025 11:10:03 +0800
Subject: [PATCH] 修改功能
---
multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java | 99 +++++++++++++++++++++++++++++--------------------
1 files changed, 59 insertions(+), 40 deletions(-)
diff --git a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java
index b5cf48f..c96fc70 100644
--- a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java
+++ b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java
@@ -24,6 +24,7 @@
import com.gkhy.exam.system.domain.vo.EmployeeRecordVO;
import com.gkhy.exam.system.domain.vo.SpSysUser;
import com.gkhy.exam.system.mapper.EmployeeRecordMapper;
+import com.gkhy.exam.system.mapper.ExStudentMapper;
import com.gkhy.exam.system.mapper.SysUserMapper;
import com.gkhy.exam.system.mapper.SysUserRoleMapper;
import com.gkhy.exam.system.service.ExStudentService;
@@ -65,6 +66,9 @@
@Autowired
private EmployeeRecordMapper employeeRecordMapper;
+
+ @Autowired
+ private ExStudentMapper exStudentMapper;
@Override
@@ -153,8 +157,6 @@
public SysUser selectUserById(Long userId) {
-
-
return baseMapper.getUserById(userId);
}
@@ -166,7 +168,7 @@
}
delCacheByUsername(user.getUsername());
int i = baseMapper.deleteUserById(userId);
- if (i > 0){
+ if (i > 0) {
delEmployeeRecord(userId);
}
return i;
@@ -185,26 +187,28 @@
batchSaveRole(user.getRoles(), user.getId(), false);
- ExStudent exStudent = new ExStudent();
- exStudent.setCompanyId(user.getCompanyId());
- exStudent.setName(user.getName());
- exStudent.setPassword(user.getPassword());
- exStudent.setDeptId(user.getDeptId());
- exStudent.setDuty(user.getDuty());
- exStudent.setSex(user.getSex());
- exStudent.setPhone(user.getPhone());
- exStudent.setUserId(user.getId());
- exStudentService.insertStudent(exStudent);
-
- Integer internal = user.getInternal();
- if (internal == 0){
- EmployeeRecord employeeRecord = new EmployeeRecord();
- employeeRecord.setCompanyId(user.getCompanyId());
- employeeRecord.setUserId(user.getId());
- employeeRecord.setCreateBy(SecurityUtils.getUsername());
- employeeRecord.setCreateTime(LocalDateTime.now());
- saveEmployeeRecord(employeeRecord);
+ if (user.getCompanyId() != null) {
+ ExStudent exStudent = new ExStudent();
+ exStudent.setCompanyId(user.getCompanyId());
+ exStudent.setName(user.getName());
+ exStudent.setPassword(user.getPassword());
+ exStudent.setDeptId(user.getDeptId());
+ exStudent.setDuty(user.getDuty());
+ exStudent.setSex(user.getSex());
+ exStudent.setPhone(user.getPhone());
+ exStudent.setUserId(user.getId());
+ exStudentService.insertStudent(exStudent);
+ Integer internal = user.getInternal();
+ if (internal == 0) {
+ EmployeeRecord employeeRecord = new EmployeeRecord();
+ employeeRecord.setCompanyId(user.getCompanyId());
+ employeeRecord.setUserId(user.getId());
+ employeeRecord.setCreateBy(SecurityUtils.getUsername());
+ employeeRecord.setCreateTime(LocalDateTime.now());
+ saveEmployeeRecord(employeeRecord);
+ }
}
+
if (row < 1) {
throw new ApiException("新增用户失败");
@@ -212,15 +216,15 @@
return row;
}
- private void saveEmployeeRecord( EmployeeRecord employeeRecord){
- employeeRecordMapper.insert( employeeRecord);
+ private void saveEmployeeRecord(EmployeeRecord employeeRecord) {
+ employeeRecordMapper.insert(employeeRecord);
}
- private void delEmployeeRecord(Long userId){
+ private void delEmployeeRecord(Long userId) {
LambdaUpdateWrapper<EmployeeRecord> updateWrapper = new LambdaUpdateWrapper<>();
- updateWrapper.eq(EmployeeRecord::getUserId,userId).set(EmployeeRecord::getDelFlag,1)
- .set(EmployeeRecord::getUpdateBy,SecurityUtils.getUsername()).set(EmployeeRecord::getUpdateTime,LocalDateTime.now());
- employeeRecordMapper.update(new EmployeeRecord() ,updateWrapper);
+ updateWrapper.eq(EmployeeRecord::getUserId, userId).set(EmployeeRecord::getDelFlag, 1)
+ .set(EmployeeRecord::getUpdateBy, SecurityUtils.getUsername()).set(EmployeeRecord::getUpdateTime, LocalDateTime.now());
+ employeeRecordMapper.update(new EmployeeRecord(), updateWrapper);
}
@@ -255,26 +259,41 @@
checkUserAllowed(user);
user.setUpdateBy(SecurityUtils.getUsername());
- if(StringUtils.isNotEmpty(user.getPassword())){
+ if (StringUtils.isNotEmpty(user.getPassword())) {
user.setPassword(SecurityUtils.encryptPassword(Base64.decodeStr(user.getPassword())));
- }else {
+ } else {
user.setPassword(null);
+ }
+ if (sysUser.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode()) && !user.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode())){
+ if (user.getCompanyId() == null){
+ throw new ApiException("请选择所属公司");
+ }
+ }
+ if (user.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode()) && !sysUser.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode())){
+ user.setCompanyId(null);
+ delEmployeeRecord(user.getId());
+ LambdaUpdateWrapper<ExStudent> updateWrapper = new LambdaUpdateWrapper<>();
+ updateWrapper.eq(ExStudent::getUserId, user.getId()).set(ExStudent::getDelFlag, 1)
+ .set(ExStudent::getUpdateBy, SecurityUtils.getUsername()).set(ExStudent::getUpdateTime, LocalDateTime.now());
+ exStudentMapper.update(new ExStudent(),updateWrapper);
}
int row = baseMapper.updateById(user);
batchSaveRole(user.getRoles(), user.getId(), true);
-
- if (sysUser.getInternal() == 0 && sysUser.getInternal() == 1){
- delEmployeeRecord(user.getId());
- }else if (sysUser.getInternal() == 1 && user.getInternal() == 0){
- EmployeeRecord employeeRecord = new EmployeeRecord();
- employeeRecord.setCompanyId(user.getCompanyId());
- employeeRecord.setUserId(user.getId());
- employeeRecord.setCreateBy(SecurityUtils.getUsername());
- employeeRecord.setCreateTime(LocalDateTime.now());
- saveEmployeeRecord(employeeRecord);
+ if (user.getCompanyId() != null){
+ if (sysUser.getInternal() == 0 && sysUser.getInternal() == 1) {
+ delEmployeeRecord(user.getId());
+ } else if (sysUser.getInternal() == 1 && user.getInternal() == 0) {
+ EmployeeRecord employeeRecord = new EmployeeRecord();
+ employeeRecord.setCompanyId(user.getCompanyId());
+ employeeRecord.setUserId(user.getId());
+ employeeRecord.setCreateBy(SecurityUtils.getUsername());
+ employeeRecord.setCreateTime(LocalDateTime.now());
+ saveEmployeeRecord(employeeRecord);
+ }
}
+
if (row < 1) {
throw new ApiException("更新用户信息失败");
}
--
Gitblit v1.9.2