Browse Source

bug 任课老师导入不会变更原用户所在机构

caozixuan 2 years ago
parent
commit
009452caa8

+ 9 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/GradeBatchServiceImpl.java

@@ -477,17 +477,25 @@ public class GradeBatchServiceImpl extends ServiceImpl<GradeBatchMapper, GradeBa
             if (orgIds.size() != 1) {
             if (orgIds.size() != 1) {
                 throw ExceptionResultEnum.SUCCESS.exception("任课老师" + key[0] + "对应课程不能属于不同学院");
                 throw ExceptionResultEnum.SUCCESS.exception("任课老师" + key[0] + "对应课程不能属于不同学院");
             }
             }
+            Long courseSecondaryOrgId = orgIds.get(0);
 
 
             SysUser sysUser;
             SysUser sysUser;
             if (sysUserList.isEmpty()) {
             if (sysUserList.isEmpty()) {
                 //新增
                 //新增
                 sysUser = new SysUser(schoolId, key[0], key[1], null, true);
                 sysUser = new SysUser(schoolId, key[0], key[1], null, true);
                 sysUser.setCode(key[0]);
                 sysUser.setCode(key[0]);
-                sysUser.setOrgId(orgIds.get(0));
+                sysUser.setOrgId(courseSecondaryOrgId);
                 sysUserService.save(sysUser);
                 sysUserService.save(sysUser);
             } else {
             } else {
                 //修改
                 //修改
                 sysUser = sysUserList.get(0);
                 sysUser = sysUserList.get(0);
+                Long orgId = sysUser.getOrgId();
+                SysOrg userSecondaryOrg = sysOrgService.findCollegeLevelOrgByOrgId(orgId);
+                Long userSecondaryOrgId = userSecondaryOrg.getId();
+                if (!courseSecondaryOrgId.equals(userSecondaryOrgId)){
+                    throw ExceptionResultEnum.ERROR.exception("导入的excel中,工号为【" + key[0] + "】的用户所在学院为【" + userSecondaryOrg.getName() +
+                            "】,和课程所在学院【" + sysOrgService.getById(courseSecondaryOrgId).getName() + "】不一致");
+                }
                 String dbRealName = sysUser.getRealName();
                 String dbRealName = sysUser.getRealName();
                 if (!dbRealName.equals(key[1])){
                 if (!dbRealName.equals(key[1])){
                     throw ExceptionResultEnum.ERROR.exception("导入的excel中,工号为【" + key[0] + "】的用户姓名【" + key[1] +
                     throw ExceptionResultEnum.ERROR.exception("导入的excel中,工号为【" + key[0] + "】的用户姓名【" + key[1] +
@@ -495,7 +503,6 @@ public class GradeBatchServiceImpl extends ServiceImpl<GradeBatchMapper, GradeBa
                 }
                 }
                 sysUser.setRealName(key[1]);
                 sysUser.setRealName(key[1]);
                 sysUser.setEnable(true);
                 sysUser.setEnable(true);
-                sysUser.setOrgId(orgIds.get(0));
                 sysUserService.updateById(sysUser);
                 sysUserService.updateById(sysUser);
             }
             }