Browse Source

分班确认后,固化班级和学生关系数据并调整查询逻辑

dzx 6 months ago
parent
commit
e820aa712f

+ 3 - 0
src/main/java/com/xjrsoft/module/banding/mapper/BandingTaskClassStudentSureMapper.java

@@ -7,6 +7,7 @@ import com.xjrsoft.module.banding.entity.BandingTaskClassStudentSure;
 import com.xjrsoft.module.student.dto.BaseNewStudentPageDto;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Update;
 
 import java.util.List;
 
@@ -19,4 +20,6 @@ import java.util.List;
 @Mapper
 public interface BandingTaskClassStudentSureMapper extends MPJBaseMapper<BandingTaskClassStudentSure> {
 
+    @Update("DELETE FROM banding_task_class_student_sure t1 INNER JOIN banding_task_class t2 ON t1.banding_task_class_id = t2.id WHERE t2.banding_task_id = #{taskId}")
+    Boolean deleteByTaskId(@Param("taskId") Long taskId);
 }

+ 1 - 0
src/main/java/com/xjrsoft/module/banding/service/impl/BandingTaskServiceImpl.java

@@ -896,6 +896,7 @@ public class BandingTaskServiceImpl extends MPJBaseServiceImpl<BandingTaskMapper
      * 确认后,将分班数的数据情况固化
      */
     void lockData(BandingTask task){
+        taskClassStudentSureMapper.deleteByTaskId(task.getId());
         List<BandingTaskClassStudent> studentList = classStudentService.list(
                 new MPJLambdaWrapper<BandingTaskClassStudent>()
                         .select(BandingTaskClassStudent::getId)