Переглянути джерело

解决作废之后,调课顶课标识还在的问题

dzx 1 рік тому
батько
коміт
b621e8fde2

+ 20 - 12
src/main/java/com/xjrsoft/module/schedule/service/impl/WfCourseAdjustServiceImpl.java

@@ -3,6 +3,7 @@ package com.xjrsoft.module.schedule.service.impl;
 import cn.dev33.satoken.stp.StpUtil;
 import cn.hutool.core.bean.BeanUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.xjrsoft.common.enums.CourseAdjustTypeEnum;
 import com.xjrsoft.common.enums.EnabledMark;
@@ -10,6 +11,7 @@ import com.xjrsoft.module.courseTable.entity.CourseTable;
 import com.xjrsoft.module.courseTable.service.ICourseTableService;
 import com.xjrsoft.module.organization.entity.User;
 import com.xjrsoft.module.organization.service.IUserService;
+import com.xjrsoft.module.room.entity.RoomBed;
 import com.xjrsoft.module.schedule.dto.WfCourseAdjustDto;
 import com.xjrsoft.module.schedule.entity.CourseTableBak;
 import com.xjrsoft.module.schedule.entity.WfCourseAdjust;
@@ -62,9 +64,12 @@ public class WfCourseAdjustServiceImpl extends MPJBaseServiceImpl<WfCourseAdjust
                 if(tableBak == null){
                     continue;
                 }
-                courseTable.setTeacherId(tableBak.getTeacherId());
-                courseTable.setTeacherName(tableBak.getTeacherName());
-                courseTableService.updateById(courseTable);
+                UpdateWrapper<CourseTable> updateWrapper = new UpdateWrapper<>();
+                updateWrapper.eq("id", courseTable.getId());
+                updateWrapper.setSql("adjust_type = null");
+                updateWrapper.setSql("teacher_id = '" + tableBak.getTeacherId() + "'");
+                updateWrapper.setSql("teacher_name = '" + tableBak.getTeacherName() + "'");
+                courseTableService.update(courseTable, updateWrapper);
             }
         }else if(CourseAdjustTypeEnum.courseExchange.getCode().equals(courseAdjust.getAdjustType())){
             for (CourseTable courseTable : list) {
@@ -72,15 +77,18 @@ public class WfCourseAdjustServiceImpl extends MPJBaseServiceImpl<WfCourseAdjust
                 if(tableBak == null){
                     continue;
                 }
-                courseTable.setTeacherId(tableBak.getTeacherId());
-                courseTable.setTeacherName(tableBak.getTeacherName());
-                courseTable.setScheduleDate(tableBak.getScheduleDate());
-                courseTable.setTimePeriod(tableBak.getTimePeriod());
-                courseTable.setTimeNumber(tableBak.getTimeNumber());
-                courseTable.setWeek(tableBak.getWeek());
-                courseTable.setWeeks(tableBak.getWeeks());
-                courseTable.setWeeksCn(tableBak.getWeeksCn());
-                courseTableService.updateById(courseTable);
+                UpdateWrapper<CourseTable> updateWrapper = new UpdateWrapper<>();
+                updateWrapper.eq("id", courseTable.getId());
+                updateWrapper.setSql("adjust_type = null");
+                updateWrapper.setSql("teacher_id = '" + tableBak.getTeacherId() + "'");
+                updateWrapper.setSql("teacher_name = '" + tableBak.getTeacherName() + "'");
+                updateWrapper.setSql("schedule_date = '" + tableBak.getScheduleDate() + "'");
+                updateWrapper.setSql("time_period = " + tableBak.getTimePeriod());
+                updateWrapper.setSql("time_number = " + tableBak.getTimeNumber());
+                updateWrapper.setSql("week = '" + tableBak.getWeek() + "'");
+                updateWrapper.setSql("weeks = '" + tableBak.getWeeks() + "'");
+                updateWrapper.setSql("week_cn = '" + tableBak.getWeeksCn() + "'");
+                courseTableService.update(courseTable, updateWrapper);
             }
         }
         courseAdjust.setEnabledMark(EnabledMark.DISABLED.getCode());

+ 1 - 1
src/main/resources/mapper/courseTable/CourseTable.xml

@@ -73,7 +73,7 @@
     <select id="getExceptCourseList" parameterType="java.lang.Long" resultType="com.xjrsoft.module.schedule.entity.WfCourseAdjust">
         SELECT a1.* FROM wf_course_adjust a1
         INNER JOIN xjr_workflow_form_relation a2 ON a1.id = a2.form_key_value
-        WHERE a1.delete_mark = 0 AND a2.current_state IN ('COMPLETED','ACTIVE')
+        WHERE a1.delete_mark = 0 and a1.enabled_mark = 1 AND a2.current_state IN ('COMPLETED','ACTIVE')
         and a1.user_id = #{userId}
     </select>