Prechádzať zdrojové kódy

Merge branch 'zx_course_convert' of http://git.dayaedu.com/yonge/mec into master_saas

zouxuan 2 rokov pred
rodič
commit
e11c71c19d

+ 0 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseConvertLogDao.java

@@ -9,7 +9,6 @@ import java.util.Map;
 
 public interface CourseConvertLogDao extends BaseDAO<Integer, CourseConvertLog> {
 
-
     void updateRevoke(Integer courseConvertId);
 
     int countConvertPage(Map<String, Object> params);

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

@@ -1,9 +1,11 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
 import com.ym.mec.biz.dal.dto.StudentStandardDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceComplaintsDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceDetailDto;
 import com.ym.mec.biz.dal.dto.TeacherSignOutDto;
+import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
 import com.ym.mec.biz.dal.enums.UpdateAttendanceEnum;
 import com.ym.mec.biz.dal.page.TeacherAttendanceComplaintsQueryInfo;
@@ -16,6 +18,8 @@ import java.util.Map;
 
 public interface TeacherAttendanceService extends BaseService<Long, TeacherAttendance> {
 
+	TeacherAttendanceDao getDao();
+
 	/**
 	* @description: 处理学员学习标准是否达标
 	 * @param studentStandardDtos
@@ -154,4 +158,6 @@ public interface TeacherAttendanceService extends BaseService<Long, TeacherAtten
 	 * @param signOutDeviceNum
 	 */
 	void updateDeviceNum(Integer courseId, String userId,String signInDeviceNum, String signOutDeviceNum);
+
+	void addTeacherAttendance(List<CourseSchedule> courseScheduleList);
 }

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseConvertLogServiceImpl.java

@@ -76,6 +76,7 @@ public class CourseConvertLogServiceImpl extends BaseServiceImpl<Integer, Course
 		List<CourseSchedule> courseSchedules = courseScheduleDao.findByCourseScheduleIds(oldCourseIdList);
 		Integer oldClassId = courseSchedules.stream().map(e -> e.getClassGroupId()).findFirst().get();
 		ClassGroup classGroup = classGroupDao.get(oldClassId);
+		courseConvertLog.setMusicGroupId(classGroup.getMusicGroupId());
 		courseConvertLog.setOldClassId(oldClassId);
 		courseConvertLog.setOldClassName(classGroup.getName());
 		courseConvertLog.setOldCourseJson(JSONObject.toJSONString(courseSchedules));

+ 10 - 7
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleConvertServiceImpl.java

@@ -3,7 +3,6 @@ package com.ym.mec.biz.service.impl;
 import com.alibaba.fastjson.JSONArray;
 import com.ym.mec.biz.dal.dao.CourseScheduleConvertDao;
 import com.ym.mec.biz.dal.dao.StudentDao;
-import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
 import com.ym.mec.biz.dal.dto.BasicUserDto;
 import com.ym.mec.biz.dal.dto.CourseConvertSumDto;
 import com.ym.mec.biz.dal.entity.*;
@@ -49,7 +48,7 @@ public class CourseScheduleConvertServiceImpl implements CourseScheduleConvertSe
     @Autowired
     private ClassGroupService classGroupService;
     @Autowired
-    private TeacherAttendanceDao teacherAttendanceDao;
+    private TeacherAttendanceService teacherAttendanceService;
     @Autowired
     private CloudTeacherFreeCourseService cloudTeacherFreeCourseService;
 
@@ -83,13 +82,14 @@ public class CourseScheduleConvertServiceImpl implements CourseScheduleConvertSe
         //校验主教助教是否冲突
         classGroups.stream().forEach(e->classGroupTeacherMapperService.checkTeachingBishop(e.getClassGroupTeacherMapperList()));
         int classNum = classGroups.size();
+        //课程列表
+        List<CourseSchedule> courseScheduleList = new ArrayList<>();
         //老师课酬
         List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaryList = new ArrayList<>();
         //学员课程价值
         List<CourseScheduleStudentPayment> courseScheduleStudentPayments = new ArrayList<>();
         List<Integer> studentIdList = new ArrayList<>();
-        //获取学员课程总价值
-        List<Long> courseIdList = new ArrayList<>();
+
         for (ClassGroupDto groupDto : classGroups) {
             List<Integer> userIdStrSet = Arrays.stream(groupDto.getUserIds().split(",")).map(id -> Integer.valueOf(id)).collect(Collectors.toList());
             studentIdList.addAll(userIdStrSet);
@@ -115,7 +115,7 @@ public class CourseScheduleConvertServiceImpl implements CourseScheduleConvertSe
                 return result;
             }else {
                 if(groupDto.getConfirmGenerate()){
-                    courseIdList.addAll(result.getData().stream().map(e->e.getId()).collect(Collectors.toList()));
+                    courseScheduleList.addAll(result.getData());
                     courseScheduleTeacherSalaryList.addAll(groupDto.getCourseScheduleTeacherSalaryList());
                     courseScheduleStudentPayments.addAll(groupDto.getCourseScheduleStudentPayments());
                 }else {
@@ -132,10 +132,13 @@ public class CourseScheduleConvertServiceImpl implements CourseScheduleConvertSe
         List<CourseScheduleStudentPayment> studentPayments = courseScheduleStudentPaymentService.getDao().findByCourseScheduleIds(oldCourseIdList);
         //保存老师课酬
         courseScheduleTeacherSalaryService.splitTeacherSalary(courseScheduleTeacherSalaryList,teacherSalaries);
+        //生成老师考勤
+        teacherAttendanceService.addTeacherAttendance(courseScheduleList);
         //保存学员课程关联
         courseScheduleStudentPaymentService.splitStudentPayment(courseScheduleStudentPayments,studentPayments);
         List<Integer> newClassGroupIds = classGroups.stream().map(e -> e.getClassGroupId()).collect(Collectors.toList());
         //记录云教练课程
+        List<Long> courseIdList = courseScheduleList.stream().map(e -> e.getId()).collect(Collectors.toList());
         cloudTeacherFreeCourseService.courseConvert(oldCourseIdList,courseIdList);
         //记录课程转换相关信息
         courseConvertLogService.save(courseIds,newClassGroupIds,courseIdList,teacherSalaries,studentPayments);
@@ -172,7 +175,7 @@ public class CourseScheduleConvertServiceImpl implements CourseScheduleConvertSe
         courseScheduleTeacherSalaryService.getDao().batchInsert(JSONArray.parseArray(teacherSalaryJson,CourseScheduleTeacherSalary.class));
         //保存考勤
         String teacherAttendanceJson = courseConvertLog.getOldTeacherAttendanceJson();
-        teacherAttendanceDao.batchInsert(JSONArray.parseArray(teacherAttendanceJson,TeacherAttendance.class));
+        teacherAttendanceService.getDao().batchInsert(JSONArray.parseArray(teacherAttendanceJson,TeacherAttendance.class));
 
         //删除转换后的课程、课酬、学员课程价值
         this.delByCourse(newCourseIdList);
@@ -183,7 +186,7 @@ public class CourseScheduleConvertServiceImpl implements CourseScheduleConvertSe
         //删除转换后的课程、课酬、学员课程价值
         courseScheduleService.getDao().batchDeleteCourseSchedulesWithoutCheck(newCourseIdList);
         //删除老师考勤
-        teacherAttendanceDao.batchDeleteByCourseSchedules(newCourseIdList);
+        teacherAttendanceService.getDao().batchDeleteByCourseSchedules(newCourseIdList);
         //删除老师课酬
         courseScheduleTeacherSalaryService.getDao().batchDeleteByCourseScheduleIds(newCourseIdList);
         //删除学员课程价值

+ 22 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -80,7 +80,12 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 		return teacherAttendanceDao;
 	}
 
-	@Transactional(rollbackFor = Exception.class)
+    @Override
+    public TeacherAttendanceDao getDao() {
+        return teacherAttendanceDao;
+    }
+
+    @Transactional(rollbackFor = Exception.class)
 	@Override
 	public void saveStudentStandard(List<StudentStandardDto> studentStandardDtos,Long courseScheduleId){
 		if(studentStandardDtos == null || studentStandardDtos.size() == 0){
@@ -994,4 +999,20 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 	public void updateDeviceNum(Integer courseId, String userId, String signInDeviceNum, String signOutDeviceNum) {
 		teacherAttendanceDao.updateDeviceNum(courseId,userId,signInDeviceNum,signOutDeviceNum);
 	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void addTeacherAttendance(List<CourseSchedule> courseScheduleList) {
+		List<TeacherAttendance> teacherAttendanceList = new ArrayList<>();
+		for (CourseSchedule courseSchedule : courseScheduleList) {
+			TeacherAttendance teacherAttendance = new TeacherAttendance();
+			teacherAttendance.setGroupType(courseSchedule.getGroupType());
+			teacherAttendance.setTeacherId(courseSchedule.getActualTeacherId());
+			teacherAttendance.setMusicGroupId(courseSchedule.getMusicGroupId());
+			teacherAttendance.setClassGroupId(courseSchedule.getClassGroupId());
+			teacherAttendance.setCourseScheduleId(courseSchedule.getId());
+			teacherAttendanceList.add(teacherAttendance);
+		}
+		teacherAttendanceDao.batchInsert(teacherAttendanceList);
+	}
 }

+ 3 - 1
mec-biz/src/main/resources/config/mybatis/CourseConvertLogMapper.xml

@@ -46,7 +46,9 @@
 	</resultMap>
 	<!-- 分页查询 -->
 	<select id="queryConvertPage" resultMap="CourseConvertLogDto" parameterType="map">
-		SELECT ccl.* FROM course_convert_log ccl
+		SELECT ccl.id_,ccl.old_course_ids_,ccl.old_class_id_,ccl.new_course_ids_,ccl.new_class_ids_,ccl.operator_,
+		ccl.revoke_flag_,ccl.create_time_,ccl.update_time_,ccl.music_group_id_,ccl.old_class_name_,ccl.operator_name_
+		FROM course_convert_log ccl
 		<include refid="queryPageSql"/>
 		<include refid="global.limit"/>
 	</select>