zouxuan 5 年之前
父節點
當前提交
19e6dadbe1

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentAttendanceDao.java

@@ -248,4 +248,10 @@ public interface StudentAttendanceDao extends BaseDAO<Long, StudentAttendance> {
      */
     int deleteByGroup(@Param("groupId") String groupId,
                       @Param("groupType")GroupType groupType);
+
+    /**
+     * 清空学生考勤
+     * @param courseScheduleIds
+     */
+    void batchCleanCourseStudentSign(String courseScheduleIds);
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherAttendanceDao.java

@@ -183,4 +183,10 @@ public interface TeacherAttendanceDao extends BaseDAO<Long, TeacherAttendance> {
 	 */
 	int deleteByGroup(@Param("groupId") String groupId,
 					  @Param("groupType")GroupType groupType);
+
+	/**
+	 * 清楚老师考勤
+	 * @param courseScheduleIds
+	 */
+    void batchCleanCourseTeacherSign(String courseScheduleIds);
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java

@@ -413,4 +413,10 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
 	 * @param teacherId
 	 */
 	void practiceGroupTeacherAdjust(String practiceGroupId, Integer teacherId);
+
+	/**
+	 * 清空老师和学生考勤
+	 * @param courseScheduleIds
+	 */
+    void cleanAttendance(String courseScheduleIds);
 }

+ 15 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -3110,4 +3110,19 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                     teacherIdMap, null, 0, "7","TEACHER");
         }
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void cleanAttendance(String courseScheduleIds) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (null == user) {
+            throw new BizException("获取用户信息失败");
+        }
+        if(StringUtils.isEmpty(courseScheduleIds)){
+            throw new BizException("参数校验失败");
+        }
+        LOGGER.info("清空老师和学生考勤,user:{},参数:{}",user.getId(),courseScheduleIds);
+        teacherAttendanceDao.batchCleanCourseTeacherSign(courseScheduleIds);
+        studentAttendanceDao.batchCleanCourseStudentSign(courseScheduleIds);
+    }
 }

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/StudentAttendanceMapper.xml

@@ -172,6 +172,9 @@
     <delete id="deleteByGroup">
         DELETE FROM student_attendance WHERE music_group_id_=#{groupId} AND group_type_=#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
     </delete>
+    <delete id="batchCleanCourseStudentSign">
+        DELETE FROM student_attendance WHERE course_schedule_id_ FIND_IN_SET(#{courseScheduleIds})
+    </delete>
 
     <resultMap id="studentAttendanceViewUtilEntity" type="com.ym.mec.biz.dal.dto.StudentAttendanceViewDto">
         <result property="classGroupId" column="class_group_id_"/>

+ 5 - 0
mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml

@@ -376,6 +376,11 @@
             #{courseScheduleId}
         </foreach>
     </update>
+    <update id="batchCleanCourseTeacherSign">
+        UPDATE teacher_attendance
+        SET sign_in_time_ = NULL,sign_in_status_=NULL,sign_out_status_ = NULL,sign_out_time_= NULL
+        WHERE course_schedule_id_ FIND_IN_SET(#{courseScheduleIds})
+    </update>
 
     <delete id="deleteByMusicGroupId" parameterType="map" >
 		DELETE ta FROM teacher_attendance ta LEFT JOIN course_schedule cs ON ta.course_schedule_id_ = cs.id_

+ 8 - 0
mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleController.java

@@ -321,5 +321,13 @@ public class CourseScheduleController extends BaseController {
         scheduleService.practiceGroupTeacherAdjust(practiceGroupId,teacherId);
         return succeed();
     }
+
+    @ApiOperation(value = "清空老师和学生考勤记录")
+    @PostMapping("/cleanAttendance")
+    @PreAuthorize("@pcs.hasPermissions('courseSchedule/cleanAttendance')")
+    public Object cleanAttendance(String courseScheduleIds){
+        scheduleService.cleanAttendance(courseScheduleIds);
+        return succeed();
+    }
 }