caozixuan пре 3 година
родитељ
комит
772cbaa622

+ 1 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/enums/DictionaryEnum.java

@@ -8,6 +8,7 @@ import java.util.Objects;
  * @Date: 2021-11-02
  */
 public enum DictionaryEnum {
+    CAMPUS("校区"),
     SEMESTER("学期"),
     COLLEGE("学院"),
     MAJOR("专业"),

+ 29 - 10
distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java

@@ -31,7 +31,6 @@ import io.swagger.annotations.*;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
@@ -52,14 +51,14 @@ import java.util.stream.Collectors;
 public class SysController {
     private final static Logger log = LoggerFactory.getLogger(SysController.class);
 
-    @Autowired
-    private SysUserService sysUserService;
+    @Resource
+    SysUserService sysUserService;
 
-    @Autowired
-    private BasicVerifyCodeService basicVerifyCodeService;
+    @Resource
+    BasicVerifyCodeService basicVerifyCodeService;
 
-    @Autowired
-    private DictionaryConfig dictionaryConfig;
+    @Resource
+    DictionaryConfig dictionaryConfig;
 
     @Resource
     CommonCacheService commonCacheService;
@@ -73,8 +72,8 @@ public class SysController {
     @Resource
     BasicAttachmentService basicAttachmentService;
 
-    @Autowired
-    private SysUserRoleService sysUserRoleService;
+    @Resource
+    SysUserRoleService sysUserRoleService;
 
     @Resource
     TeachcloudCommonService teachcloudCommonService;
@@ -100,6 +99,9 @@ public class SysController {
     @Resource
     TBSyncTaskService tbSyncTaskService;
 
+    @Resource
+    BasicCampusService basicCampusService;
+
     /**
      * 登录
      *
@@ -342,7 +344,8 @@ public class SysController {
     @ApiOperation(value = "共用接口-查询字典")
     @RequestMapping(value = "/get_dictionary", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
-    public Result findDictionaryList(@ApiParam(value = "学期id") @RequestParam(required = false) String semesterId,
+    public Result findDictionaryList(@ApiParam(value = "校区id") @RequestParam(required = false) String campusId,
+                                     @ApiParam(value = "学期id") @RequestParam(required = false) String semesterId,
                                      @ApiParam(value = "学院id") @RequestParam(required = false) String collegeId,
                                      @ApiParam(value = "专业id") @RequestParam(required = false) String majorId,
                                      @ApiParam(value = "班级id") @RequestParam(required = false) String clazzId,
@@ -351,6 +354,16 @@ public class SysController {
         Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
         List<DictionaryResult> dictionaryResultList = new ArrayList<>();
         switch (dictionaryEnum) {
+            case CAMPUS:
+                List<BasicCampus> basicCampusList = basicCampusService.list(new QueryWrapper<BasicCampus>().lambda().eq(BasicCampus::getSchoolId,schoolId));
+                dictionaryResultList = basicCampusList.stream().map(e -> {
+                    DictionaryResult dictionaryResult = new DictionaryResult();
+                    dictionaryResult.setName(e.getCampusName());
+                    dictionaryResult.setCode(e.getCampusCode());
+                    dictionaryResult.setId(e.getId());
+                    return dictionaryResult;
+                }).collect(Collectors.toList());
+                break;
             case SEMESTER:
                 List<BasicSemester> basicSemesterList = basicSemesterService.list(new QueryWrapper<BasicSemester>().lambda().eq(BasicSemester::getSchoolId, schoolId).eq(BasicSemester::getEnable, true));
                 dictionaryResultList = basicSemesterList.stream().map(e -> {
@@ -411,6 +424,9 @@ public class SysController {
             case CLAZZ:
                 QueryWrapper<BasicClazz> clazzQueryWrapper = new QueryWrapper<>();
                 clazzQueryWrapper.lambda().eq(BasicClazz::getSchoolId, schoolId).eq(BasicClazz::getEnable, true);
+                if (SystemConstant.longNotNull(SystemConstant.convertIdToLong(campusId))){
+                    clazzQueryWrapper.lambda().eq(BasicClazz::getCampusId,campusId);
+                }
                 if (SystemConstant.longNotNull(SystemConstant.convertIdToLong(majorId))) {
                     clazzQueryWrapper.lambda().eq(BasicClazz::getMajorId, majorId);
                 }
@@ -426,6 +442,9 @@ public class SysController {
             case STUDENT:
                 QueryWrapper<BasicStudent> studentQueryWrapper = new QueryWrapper<>();
                 studentQueryWrapper.lambda().eq(BasicStudent::getSchoolId, schoolId).eq(BasicStudent::getEnable, true);
+                if (SystemConstant.longNotNull(SystemConstant.convertIdToLong(campusId))){
+                    studentQueryWrapper.lambda().eq(BasicStudent::getCampusId,campusId);
+                }
                 if (SystemConstant.longNotNull(SystemConstant.convertIdToLong(collegeId))) {
                     studentQueryWrapper.lambda().eq(BasicStudent::getBelongOrgId, collegeId);
                 }

+ 5 - 0
teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicStudent.java

@@ -34,13 +34,17 @@ public class BasicStudent extends BaseEntity implements Serializable {
     private String studentCode;
 
     @ApiModelProperty(value = "电话号码")
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private String phoneNumber;
 
     @ApiModelProperty(value = "校区主键")
     @JsonSerialize(using = ToStringSerializer.class)
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long campusId;
 
     @ApiModelProperty(value = "班级id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long clazzId;
 
     @ApiModelProperty(value = "可用状态(1:可用,0:不可用)")
@@ -57,6 +61,7 @@ public class BasicStudent extends BaseEntity implements Serializable {
 
     @ApiModelProperty(value = "专业id")
     @JsonSerialize(using = ToStringSerializer.class)
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long majorId;
 
     public Long getBelongOrgId() {

+ 37 - 37
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicStudentServiceImpl.java

@@ -48,12 +48,12 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
     private BasicCampusService basicCampusService;
 
     @Override
-    public IPage<BasicStudentResult> basicStudentPage(String queryParams,Long campusId, Set<Long> clazzIdList,int pageNumber, int pageSize) {
+    public IPage<BasicStudentResult> basicStudentPage(String queryParams, Long campusId, Set<Long> clazzIdList, int pageNumber, int pageSize) {
         Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
 //        Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         Set<Long> orgIds = null;
         queryParams = SystemConstant.translateSpecificSign(queryParams);
-        return basicStudentMapper.findBasicStudentPage(new Page<>(pageNumber, pageSize), queryParams, schoolId,campusId, clazzIdList,orgIds);
+        return basicStudentMapper.findBasicStudentPage(new Page<>(pageNumber, pageSize), queryParams, schoolId, campusId, clazzIdList, orgIds);
     }
 
     @Override
@@ -85,7 +85,7 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
         if (idList.size() == 0) {
             throw ExceptionResultEnum.ERROR.exception("请选择要删除的目标");
         }
-        return this.remove(new QueryWrapper<BasicStudent>().lambda().in(BasicStudent::getId,idList));
+        return this.remove(new QueryWrapper<BasicStudent>().lambda().in(BasicStudent::getId, idList));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -95,13 +95,13 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
         Long schoolId = sysUser.getSchoolId();
         final String link = "-";
         // key = campusName
-        Map<String,BasicCampus> campusMap = new HashMap<>();
+        Map<String, BasicCampus> campusMap = new HashMap<>();
         // key = collegeName
-        Map<String,SysOrg> collegeMap = new HashMap<>();
+        Map<String, SysOrg> collegeMap = new HashMap<>();
         // key = collegeId + "-" + majorName
-        Map<String,Long> majorMap = new HashMap<>();
+        Map<String, Long> majorMap = new HashMap<>();
         // key = majorId + "-" + clazzName
-        Map<String,Long> clazzMap = new HashMap<>();
+        Map<String, Long> clazzMap = new HashMap<>();
 
         List<BasicStudentParams> addBasicStudentParamsList = new ArrayList<>();
         for (int i = 0; i < finalList.size(); i++) {
@@ -109,7 +109,7 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
             List<Object> basicStudentImportDtoList = excelMap.get(i);
 
             assert basicStudentImportDtoList != null;
-            if (basicStudentImportDtoList.get(0) instanceof DescribeImportDto){
+            if (basicStudentImportDtoList.get(0) instanceof DescribeImportDto) {
                 continue;
             }
             List<BasicStudentImportDto> datasource = basicStudentImportDtoList.stream().map(e -> {
@@ -141,7 +141,7 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
                         basicCampus = basicCampusService.getOne(new QueryWrapper<BasicCampus>().lambda()
                                 .eq(BasicCampus::getSchoolId, schoolId)
                                 .eq(BasicCampus::getCampusName, campusName));
-                        if (Objects.isNull(basicCampus)){
+                        if (Objects.isNull(basicCampus)) {
                             throw ExceptionResultEnum.ERROR.exception("系统中不存在【校区】:" + campusName);
                         }
                         campusMap.put(campusName, basicCampus);
@@ -151,7 +151,7 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
 
                 // 学院
                 Long collegeId = null;
-                if (SystemConstant.strNotNull(collegeName)){
+                if (SystemConstant.strNotNull(collegeName)) {
                     SysOrg sysOrg;
                     if (collegeMap.containsKey(collegeName)) {
                         sysOrg = collegeMap.get(collegeName);
@@ -159,7 +159,7 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
                         sysOrg = sysOrgService.getOne(new QueryWrapper<SysOrg>().lambda()
                                 .eq(SysOrg::getSchoolId, schoolId)
                                 .eq(SysOrg::getName, collegeName));
-                        if (Objects.isNull(sysOrg)){
+                        if (Objects.isNull(sysOrg)) {
                             throw ExceptionResultEnum.ERROR.exception("系统中不存在【学院】:" + collegeName);
                         }
                         collegeMap.put(collegeName, sysOrg);
@@ -196,36 +196,36 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
 
                 // 班级
                 Long clazzId = null;
-                if (SystemConstant.strNotNull(clazzName)){
-                    if (!SystemConstant.longNotNull(campusId)){
+                if (SystemConstant.strNotNull(clazzName)) {
+                    if (!SystemConstant.longNotNull(campusId)) {
                         throw ExceptionResultEnum.ERROR.exception("学生班级信息缺失校区信息异常");
                     }
-                    if (!SystemConstant.longNotNull(collegeId)){
+                    if (!SystemConstant.longNotNull(collegeId)) {
                         throw ExceptionResultEnum.ERROR.exception("学生班级信息缺失学院信息异常");
                     }
-                    if (!SystemConstant.longNotNull(majorId)){
+                    if (!SystemConstant.longNotNull(majorId)) {
                         throw ExceptionResultEnum.ERROR.exception("学生班级信息缺失专业信息异常");
                     }
 
                     String clazzKey = majorId + link + clazzName;
-                    if (clazzMap.containsKey(clazzKey)){
+                    if (clazzMap.containsKey(clazzKey)) {
                         clazzId = clazzMap.get(clazzKey);
-                    }else {
+                    } else {
                         BasicClazz basicClazz = basicClazzService.getOne(new QueryWrapper<BasicClazz>().lambda()
-                                .eq(BasicClazz::getSchoolId,schoolId)
-                                .eq(BasicClazz::getMajorId,majorId)
-                                .eq(BasicClazz::getClazzName,clazzName));
-                        if (Objects.isNull(basicClazz)){
+                                .eq(BasicClazz::getSchoolId, schoolId)
+                                .eq(BasicClazz::getMajorId, majorId)
+                                .eq(BasicClazz::getClazzName, clazzName));
+                        if (Objects.isNull(basicClazz)) {
                             // 新增一个clazz
                             BasicClazzParams basicClazzParams = new BasicClazzParams();
                             basicClazzParams.setCampusId(campusId);
                             basicClazzParams.setMajorId(majorId);
                             basicClazzParams.setClazzName(clazzName);
-                            clazzId = basicClazzService.saveBasicClazz(basicClazzParams,sysUser);
-                        }else {
+                            clazzId = basicClazzService.saveBasicClazz(basicClazzParams, sysUser);
+                        } else {
                             clazzId = basicClazz.getId();
                         }
-                        clazzMap.put(clazzKey,clazzId);
+                        clazzMap.put(clazzKey, clazzId);
                     }
                 }
                 // 学生信息组装
@@ -233,16 +233,16 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
                 basicStudentParams.setStudentName(studentName);
                 basicStudentParams.setStudentCode(studentCode);
                 basicStudentParams.setPhoneNumber(phoneNumber);
-                if (SystemConstant.longNotNull(campusId)){
+                if (SystemConstant.longNotNull(campusId)) {
                     basicStudentParams.setCampusId(campusId);
                 }
-                if (SystemConstant.longNotNull(collegeId)){
+                if (SystemConstant.longNotNull(collegeId)) {
                     basicStudentParams.setCollegeId(collegeId);
                 }
-                if (SystemConstant.longNotNull(majorId)){
+                if (SystemConstant.longNotNull(majorId)) {
                     basicStudentParams.setMajorId(majorId);
                 }
-                if (SystemConstant.longNotNull(clazzId)){
+                if (SystemConstant.longNotNull(clazzId)) {
                     basicStudentParams.setClazzId(clazzId);
                 }
 
@@ -283,19 +283,19 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
             Long collegeId = basicStudentParams.getCollegeId();
 
             // 班级验证
-            if (SystemConstant.longNotNull(clazzId)){
+            if (SystemConstant.longNotNull(clazzId)) {
                 // 如果有班级id 再验证
                 BasicClazz basicClazz = basicClazzService.getById(clazzId);
                 if (Objects.isNull(basicClazz)) {
                     throw ExceptionResultEnum.ERROR.exception("所选班级不存在");
                 }
-                if (SystemConstant.longNotNull(campusId)){
-                    if (!campusId.equals(basicClazz.getCampusId())){
+                if (SystemConstant.longNotNull(campusId)) {
+                    if (!campusId.equals(basicClazz.getCampusId())) {
                         throw ExceptionResultEnum.ERROR.exception("学生所属班级信息和学生信息中【校区】不对应");
                     }
                 }
-                if (SystemConstant.longNotNull(majorId)){
-                    if (!majorId.equals(basicClazz.getMajorId())){
+                if (SystemConstant.longNotNull(majorId)) {
+                    if (!majorId.equals(basicClazz.getMajorId())) {
                         throw ExceptionResultEnum.ERROR.exception("学生所属班级信息和学生信息中【专业】不对应");
                     }
                 }
@@ -303,13 +303,13 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
 
 
             // 专业验证
-            if (SystemConstant.longNotNull(majorId)){
+            if (SystemConstant.longNotNull(majorId)) {
                 BasicMajor basicMajor = basicMajorService.getById(majorId);
                 if (Objects.isNull(basicMajor)) {
                     throw ExceptionResultEnum.ERROR.exception("所选专业不存在");
                 }
-                if (SystemConstant.longNotNull(collegeId)){
-                    if (!collegeId.equals(basicMajor.getBelongOrgId())){
+                if (SystemConstant.longNotNull(collegeId)) {
+                    if (!collegeId.equals(basicMajor.getBelongOrgId())) {
                         throw ExceptionResultEnum.ERROR.exception("学生所属专业信息和学生信息中【学院】不对应");
                     }
                 }
@@ -328,7 +328,7 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
             }
 
             // 检验有值的电话在学校的唯一性
-            if (SystemConstant.strNotNull(phoneNumber)){
+            if (SystemConstant.strNotNull(phoneNumber)) {
                 BasicStudent checkPhone = this.getOne(new QueryWrapper<BasicStudent>().lambda()
                         .eq(BasicStudent::getSchoolId, schoolId)
                         .eq(BasicStudent::getPhoneNumber, phoneNumber)

+ 5 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysUserServiceImpl.java

@@ -942,13 +942,17 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Override
     public boolean userPushService(List<UserPushParam> userPushParamList, Long requestUserId) {
         SysUser requestUser = this.getById(requestUserId);
+        Long schoolId = requestUser.getSchoolId();
+        if (!SystemConstant.longNotNull(schoolId)){
+            schoolId = SystemConstant.convertIdToLong(String.valueOf(ServletUtil.getRequestHeaderSchoolId()));
+        }
         if (Objects.isNull(requestUser)){
             log.error("未找到请求用户信息 requestUserId = " + requestUserId);
             throw ExceptionResultEnum.ERROR.exception("未找到请求用户信息");
         }
         boolean result = true;
         for (UserPushParam userPushParam : userPushParamList) {
-            boolean syncResult = stmmsUtils.syncUser(userPushParam, requestUser.getSchoolId());
+            boolean syncResult = stmmsUtils.syncUser(userPushParam, schoolId);
             if (!syncResult) {
                 log.warn("-----------------------------用户同步推送失败----------------------------");
                 result = false;