dzx пре 6 месеци
родитељ
комит
ea3e805261

+ 25 - 24
src/main/java/com/xjrsoft/module/job/JianyuekbScheduleTask.java

@@ -280,29 +280,30 @@ public class JianyuekbScheduleTask {
     }
 
     void sendMsg(Set<String> techerIds, Map<String, Object> receiveMsg) {
-        try {
-            JianyueData jianyueData = jianyueDataService.getOne(
-                    new QueryWrapper<JianyueData>().lambda()
-                            .eq(JianyueData::getJianyueId, receiveMsg.get("edu_year_serial_no").toString())
-            );
-            String[] sourceId = jianyueData.getSourceId().split("_");
-            Department department = departmentService.getById(sourceId[0]);
-
-            BaseGrade grade = gradeService.getById(sourceId[1]);
-            //通知对应教师
-            List<User> userList = userService.listByIds(new ArrayList<>(techerIds));
-            List<User> userList1 = userService.list(
-                    new MPJLambdaWrapper<User>()
-                            .distinct()
-                            .select(User::getId)
-                            .select(User.class, x -> VoToColumnUtil.fieldsToColumns(User.class).contains(x.getProperty()))
-                            .innerJoin(UserRoleRelation.class, UserRoleRelation::getUserId, User::getId)
-                            .innerJoin(Role.class, Role::getId, UserRoleRelation::getRoleId)
-                            .eq(Role::getCode, "KEBIAOGX")
-            );
-            userList.addAll(userList1);
 
-            for (User user : userList) {
+        JianyueData jianyueData = jianyueDataService.getOne(
+                new QueryWrapper<JianyueData>().lambda()
+                        .eq(JianyueData::getJianyueId, receiveMsg.get("edu_year_serial_no").toString())
+        );
+        String[] sourceId = jianyueData.getSourceId().split("_");
+        Department department = departmentService.getById(sourceId[0]);
+
+        BaseGrade grade = gradeService.getById(sourceId[1]);
+        //通知对应教师
+        List<User> userList = userService.listByIds(new ArrayList<>(techerIds));
+        List<User> userList1 = userService.list(
+                new MPJLambdaWrapper<User>()
+                        .distinct()
+                        .select(User::getId)
+                        .select(User.class, x -> VoToColumnUtil.fieldsToColumns(User.class).contains(x.getProperty()))
+                        .innerJoin(UserRoleRelation.class, UserRoleRelation::getUserId, User::getId)
+                        .innerJoin(Role.class, Role::getId, UserRoleRelation::getRoleId)
+                        .eq(Role::getCode, "KEBIAOGX")
+        );
+        userList.addAll(userList1);
+
+        for (User user : userList) {
+            try {
                 WeChatSendMessageDto weChatSendMessageDto = new WeChatSendMessageDto();
                 weChatSendMessageDto.setTemplateId(noticeTeacherTemplate);
                 JSONObject paramJson = new JSONObject();
@@ -331,9 +332,9 @@ public class JianyuekbScheduleTask {
                     weChatSendMessageDto.setUserId(openId);
                     weChatService.sendTemplateMessage(weChatSendMessageDto);
                 }
+            } catch (Exception e) {
+                Log.error(e.getMessage(), e);
             }
-        } catch (Exception e) {
-            Log.error(e.getMessage(), e);
         }
     }
 

+ 3 - 0
src/main/java/com/xjrsoft/module/organization/mapper/UserMapper.java

@@ -36,4 +36,7 @@ public interface UserMapper extends MPJBaseMapper<User> {
 
     @Update("update xjr_user set delete_mark = 0, enabled_mark = 1, modify_user_id = #{modifyUserId}, modify_date = now() where id = #{userId}")
     Boolean activateUser(@Param("userId") Long userId, @Param("modifyUserId") Long modifyUserId);
+
+    @Update("update xjr_user set delete_mark = 1, enabled_mark = 0, modify_user_id = #{modifyUserId}, modify_date = now() where id = #{userId}")
+    Boolean disableUser(@Param("userId") Long userId, @Param("modifyUserId") Long modifyUserId);
 }

+ 3 - 0
src/main/java/com/xjrsoft/module/student/mapper/BaseStudentSchoolRollMapper.java

@@ -71,5 +71,8 @@ public interface BaseStudentSchoolRollMapper extends MPJBaseMapper<BaseStudentSc
     @Update("UPDATE base_student_school_roll SET archives_status = 'FB2901', delete_mark = 0, enabled_mark = 1, modify_user_id = #{modifyUserId}, modify_date = now() where id = #{id}")
     Boolean activateStudentSchoolRoll(@Param("id") Long id, @Param("modifyUserId") Long modifyUserId);
 
+    @Update("UPDATE base_student_school_roll SET delete_mark = 1, enabled_mark = 0, modify_user_id = #{modifyUserId}, modify_date = now() where id = #{id}")
+    Boolean disableStudentSchoolRoll(@Param("id") Long id, @Param("modifyUserId") Long modifyUserId);
+
 }
 

+ 2 - 21
src/main/java/com/xjrsoft/module/student/service/impl/BaseStudentSchoolRollServiceImpl.java

@@ -343,29 +343,10 @@ public class BaseStudentSchoolRollServiceImpl extends MPJBaseServiceImpl<BaseStu
     @Transactional(rollbackFor = Exception.class)
     public Boolean disableStudent(Long userId, Long modifyUserId) {
         //激活用户信息
-        User user = userMapper.selectById(userId);
-        user.setDeleteMark(DeleteMark.DELETED.getCode());
-        user.setEnabledMark(EnabledMark.DISABLED.getCode());
-        user.setModifyUserId(modifyUserId);
-        user.setModifyDate(LocalDateTime.now());
-        userMapper.updateById(user);
+        userMapper.disableUser(userId, modifyUserId);
 
         //将学籍信息改为在读
-        BaseStudentSchoolRoll schoolRoll = this.getOne(
-                new MPJLambdaWrapper<BaseStudentSchoolRoll>()
-                        .disableLogicDel()
-                        .select(BaseStudentSchoolRoll::getId)
-                        .select(BaseStudentSchoolRoll.class, x -> VoToColumnUtil.fieldsToColumns(BaseStudentSchoolRoll.class).contains(x.getProperty()))
-                        .eq(BaseStudentSchoolRoll::getUserId, userId)
-        );
-        UpdateWrapper<BaseStudentSchoolRoll> updateRoll = new UpdateWrapper<>();
-        updateRoll.eq("id", schoolRoll.getId());
-        updateRoll.setSql("delete_mark = 1");
-        updateRoll.setSql("enabled_mark = 0");
-//        updateRoll.setSql("class_id = null");
-        updateRoll.setSql("modify_user_id = " + modifyUserId);
-        updateRoll.setSql("modify_date = now()");
-        this.update(schoolRoll, updateRoll);
+        this.baseMapper.disableStudentSchoolRoll(userId, modifyUserId);
 
         //将学生基本信息中状态改为正常
         BaseStudent baseStudent = baseStudentMapper.selectOne(

+ 1 - 0
src/main/resources/mapper/classtime/ClassTimeStatisticsMapper.xml

@@ -15,6 +15,7 @@
         INNER JOIN xjr_workflow_form_relation t3 ON t2.id = t3.form_key_value
         WHERE t3.current_state = 'COMPLETED' and t2.enabled_mark = 1
         AND t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
+        and t1.course_time_type is not null
     </select>
 
     <select id="getCourseList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">

+ 8 - 5
src/test/java/com/xjrsoft/module/job/JianyuekbScheduleTaskTest.java

@@ -209,9 +209,9 @@ class JianyuekbScheduleTaskTest {
                 LocalDate startDateObj = LocalDate.parse(startDateStr);
                 String endDateStr = receiveMsg.get("end_date").toString();
                 LocalDate endDateObj = LocalDate.parse(endDateStr);
-                if(today.isAfter(startDateObj)){
-                    startDateStr = today.format(formatter);
-                }
+//                if(today.isAfter(startDateObj)){
+//                    startDateStr = today.format(formatter);
+//                }
 
                 //删除课表信息;
                 List<Long> classIdList = gradeClassMaps.get(eduYearSerialNo);
@@ -282,7 +282,7 @@ class JianyuekbScheduleTaskTest {
 
         Set<String> techerIds = dataUtil.insertCourseTableEntiy(scheduleInfo, classroomMap, courseMap, semesterMap,
                 teacherMap, classMap, String.valueOf(courseReceiveMsgId), startDate, endDate);
-        //sendMsg(techerIds, courseReceiveMsgId);
+        sendMsg(techerIds, courseReceiveMsgId);
         dataUtil.insertClassTime(scheduleInfo);
     }
 
@@ -299,6 +299,9 @@ class JianyuekbScheduleTaskTest {
             //通知对应教师
             List<User> userList = userService.listByIds(new ArrayList<>(techerIds));
             for (User user : userList) {
+                if(14954805247174L == user.getId()){
+                    System.out.println(user.getName());
+                }
                 WeChatSendMessageDto weChatSendMessageDto = new WeChatSendMessageDto();
                 weChatSendMessageDto.setTemplateId(noticeTeacherTemplate);
                 JSONObject paramJson = new JSONObject();
@@ -365,7 +368,7 @@ class JianyuekbScheduleTaskTest {
      * 3、顶课数据,如果顶课日期那天那个老师没有课,但是新发布的课表又有课了,需要把原来的顶课数据作废
      */
     public void handleCourseAdjust(List<Long> classIds, String startDate, String endDate){
-        classService.listByIds(classIds)
+        List<BaseClass> classList = classService.listByIds(classIds);
         Map<Long, String> classMap = classList.stream().collect(Collectors.toMap(BaseClass::getId, BaseClass::getName));
         List<CourseTableBak> bakList = courseTableBakService.list(
                 new QueryWrapper<CourseTableBak>().lambda()