瀏覽代碼

Merge remote-tracking branch 'origin/master'

周箭河 5 年之前
父節點
當前提交
ba53e8cee4

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

@@ -161,7 +161,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @param courseScheduleId
 	 * @return
 	 */
-	List<CourseScheduleTeachersDto> queryTeacherSalary(Integer courseScheduleId);
+	List<CourseScheduleTeachersDto> queryTeacherSalary(Long courseScheduleId);
 
 	/**
 	 * @param courseScheduleIds: 课程编号列表

+ 8 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupService.java

@@ -7,10 +7,13 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
-import com.ym.mec.biz.dal.dto.*;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dto.BasicUserDto;
+import com.ym.mec.biz.dal.dto.CourseScheduleTeachersDto;
+import com.ym.mec.biz.dal.dto.MusicCardDto;
+import com.ym.mec.biz.dal.dto.RegisterPayDto;
+import com.ym.mec.biz.dal.dto.SporadicPayDto;
+import com.ym.mec.biz.dal.dto.SubFeeSettingDto;
+import com.ym.mec.biz.dal.dto.UpdateExpectedNumDto;
 import com.ym.mec.biz.dal.entity.ApprovalStatus;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
@@ -186,7 +189,7 @@ public interface MusicGroupService extends BaseService<String, MusicGroup> {
 	 * @param courseScheduleId
 	 * @return
 	 */
-	List<CourseScheduleTeachersDto> queryTeacherSalary(Integer courseScheduleId);
+	List<CourseScheduleTeachersDto> queryTeacherSalary(Long courseScheduleId);
 
 	/**
 	 * 开启缴费(报名中 -->  缴费中)

+ 56 - 21
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -25,7 +25,9 @@ import com.ym.mec.util.collection.ListUtil;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.json.JsonUtil;
+
 import feign.codec.DecodeException;
+
 import org.apache.commons.collections.ListUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -1633,19 +1635,27 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
             if (Objects.isNull(newCourseSchedule.getGroupType())) {
                 newCourseSchedule.setGroupType(oldCourseSchedule.getGroupType());
             }
+
+            if (Objects.isNull(newCourseSchedule.getTeachMode())) {
+                newCourseSchedule.setTeachMode(oldCourseSchedule.getTeachMode());
+            }
             
 			if (newCourseSchedule.getGroupType() == GroupType.VIP) {
 				if (newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode() && newCourseSchedule.getTeachMode() == TeachModeEnum.OFFLINE) {
 					throw new BizException("不允许将线上课调整为线下课");
 				}
 			}
+
+            if (Objects.isNull(newCourseSchedule.getSchoolId())) {
+                newCourseSchedule.setSchoolId(oldCourseSchedule.getSchoolId());
+            }
+			if (newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode() && newCourseSchedule.getTeachMode() == TeachModeEnum.ONLINE) {
+				newCourseSchedule.setSchoolId(-1);
+			}
 			
             if (Objects.isNull(newCourseSchedule.getActualTeacherId())) {
                 newCourseSchedule.setActualTeacherId(oldCourseSchedule.getActualTeacherId());
             }
-            if (Objects.isNull(newCourseSchedule.getSchoolId())) {
-                newCourseSchedule.setSchoolId(oldCourseSchedule.getSchoolId());
-            }
             if (Objects.isNull(newCourseSchedule.getType())) {
                 newCourseSchedule.setType(oldCourseSchedule.getType());
             }
@@ -1659,9 +1669,6 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
             if(Objects.isNull(newCourseSchedule.getClassGroupId())){
                 newCourseSchedule.setClassGroupId(oldCourseSchedule.getClassGroupId());
             }
-            if (Objects.isNull(newCourseSchedule.getTeachMode())) {
-                newCourseSchedule.setTeachMode(oldCourseSchedule.getTeachMode());
-            }
             if(Objects.isNull(newCourseSchedule.getClassDate())){
                 newCourseSchedule.setClassDate(oldCourseSchedule.getClassDate());
             }
@@ -1705,6 +1712,18 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		// 课程对应乐团结算方式集合
 		List<Map<String, String>> musicGroupSettlementTypeByCourse = courseScheduleTeacherSalaryDao.findMusicGroupSettlementTypeByCourse(courseScheduleIds);
 		Map<String, String> musicGroupSettlementsMap = MapUtil.convertMybatisMap(musicGroupSettlementTypeByCourse);
+		
+		Map<Long,Map<Integer,CourseScheduleTeacherSalary>> courseScheduleTeacherSalaryMap = new HashMap<Long, Map<Integer,CourseScheduleTeacherSalary>>();
+		List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaryList = courseScheduleTeacherSalaryDao.findByCourseSchedules(courseScheduleIds);
+		
+		for (CourseScheduleTeacherSalary ts : courseScheduleTeacherSalaryList) {
+			Map<Integer, CourseScheduleTeacherSalary> map = courseScheduleTeacherSalaryMap.get(ts.getCourseScheduleId());
+			if (map == null) {
+				map = new HashMap<Integer, CourseScheduleTeacherSalary>();
+			}
+			map.put(ts.getUserId(), ts);
+			courseScheduleTeacherSalaryMap.put(ts.getCourseScheduleId(), map);
+		}
 
 		Date entryDate = DateUtil.stringToDate(sysConfigDao.findByParamName(SysConfigService.TEACHER_ENTRY_DATE).getParanValue(), "yyyy-MM-dd");
 
@@ -1781,24 +1800,31 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			if (!ListUtil.isEquals(oldTeacherIdList, newTeacherIdList) || newCourseSchedule.getType() != oldCourseSchedule.getType()
 					|| newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode() || oldMinutes != newMinutes) {
 
-				// 所有教师列表
-				List<Teacher> teachers = teacherDao.findByTeacherIds(newTeacherIdList);
-				Map<Integer, Teacher> teacherMap = teachers.stream().collect(Collectors.toMap(Teacher::getId, teacher -> teacher));
-
+				Map<Integer, Teacher> teacherMap = null;
 				Map<Integer, Map<CourseScheduleType, TeacherDefaultMusicGroupSalary>> musicGroupSalaryMap = new HashMap<Integer, Map<CourseScheduleType, TeacherDefaultMusicGroupSalary>>();
-				// 所有老师默认乐团课酬
-				List<TeacherDefaultMusicGroupSalary> teacherDefaultMusicGroupSalaries = teacherDefaultMusicGroupSalaryDao.findByTeacher(newTeacherIdList);
-				for (TeacherDefaultMusicGroupSalary tdms : teacherDefaultMusicGroupSalaries) {
-					Map<CourseScheduleType, TeacherDefaultMusicGroupSalary> map = musicGroupSalaryMap.get(tdms.getUserId());
-					if (map == null) {
-						map = new HashMap<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary>();
+
+				if (newCourseSchedule.getGroupType() == GroupType.MUSIC) {
+					// 所有教师列表
+					List<Teacher> teachers = teacherDao.findByTeacherIds(newTeacherIdList);
+					teacherMap = teachers.stream().collect(Collectors.toMap(Teacher::getId, teacher -> teacher));
+
+					// 所有老师默认乐团课酬
+					List<TeacherDefaultMusicGroupSalary> teacherDefaultMusicGroupSalaries = teacherDefaultMusicGroupSalaryDao.findByTeacher(newTeacherIdList);
+					for (TeacherDefaultMusicGroupSalary tdms : teacherDefaultMusicGroupSalaries) {
+						Map<CourseScheduleType, TeacherDefaultMusicGroupSalary> map = musicGroupSalaryMap.get(tdms.getUserId());
+						if (map == null) {
+							map = new HashMap<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary>();
+						}
+						map.put(tdms.getCourseScheduleType(), tdms);
+						musicGroupSalaryMap.put(tdms.getUserId(), map);
 					}
-					map.put(tdms.getCourseScheduleType(), tdms);
-					musicGroupSalaryMap.put(tdms.getUserId(), map);
+				} else if (newCourseSchedule.getGroupType() == GroupType.VIP) {
+					//查询这节课每位老师对应的课酬
+					courseScheduleTeacherSalaryDao.queryTeacherSalary(courseScheduleId);
 				}
 
 				// 所有老师默认vip课酬
-				List<TeacherDefaultVipGroupSalary> teacherDefaultVipGroupSalaries = teacherDefaultVipGroupSalaryDao.queryByUserIdList(newTeacherIdList);
+				/*List<TeacherDefaultVipGroupSalary> teacherDefaultVipGroupSalaries = teacherDefaultVipGroupSalaryDao.queryByUserIdList(newTeacherIdList);
 				Map<Integer, Map<Integer, TeacherDefaultVipGroupSalary>> vipGroupSalaryMap = new HashMap<Integer, Map<Integer, TeacherDefaultVipGroupSalary>>();
 				for (TeacherDefaultVipGroupSalary tdvs : teacherDefaultVipGroupSalaries) {
 					Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(tdvs.getUserId());
@@ -1809,7 +1835,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 					vipGroupSalaryMap.put(tdvs.getUserId(), map);
 				}
 
-				VipGroup vipGroup = vipGroupDao.findByCourseSchedule(courseScheduleId);
+				VipGroup vipGroup = vipGroupDao.findByCourseSchedule(courseScheduleId);*/
 
 				// 删除课酬
 				List<Long> courseScheduleIdList = new ArrayList<Long>();
@@ -1880,7 +1906,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 						}
 					
 					} else if (newCourseSchedule.getGroupType() == GroupType.VIP) {
-						Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(teacherId);
+						/*Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(teacherId);
 						if (map == null) {
 							throw new BizException("老师[]没有设置默认课酬,请先设置", teacherId);
 						}
@@ -1895,6 +1921,15 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 							ts.setExpectSalary(tdvs.getOfflineClassesSalary());
 						} else {
 							ts.setExpectSalary(tdvs.getOnlineClassesSalary());
+						}*/
+
+						ts.setExpectSalary(new BigDecimal(0));
+						Map<Integer, CourseScheduleTeacherSalary> tsMap = courseScheduleTeacherSalaryMap.get(courseScheduleId);
+						if(tsMap != null){
+							CourseScheduleTeacherSalary oldTS = tsMap.get(teacherId);
+							if(oldTS != null){
+								ts.setExpectSalary(oldTS.getExpectSalary());
+							}
 						}
 					} else if (newCourseSchedule.getGroupType() == GroupType.PRACTICE) {
 						List<TeacherDefaultPracticeGroupSalary> teacherDefaultPracticeGroupSalaryList = teacherDefaultPracticeGroupSalaryDao

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

@@ -2007,7 +2007,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     }
 
     @Override
-    public List<CourseScheduleTeachersDto> queryTeacherSalary(Integer courseScheduleId) {
+    public List<CourseScheduleTeachersDto> queryTeacherSalary(Long courseScheduleId) {
         return courseScheduleTeacherSalaryDao.queryTeacherSalary(courseScheduleId);
     }
 

+ 0 - 2
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -1072,9 +1072,7 @@
                 <if test="item.leaveStudentNum != null">
                     leave_student_num_ = #{item.leaveStudentNum},
                 </if>
-                <if test="item.schoolId != null">
                     schoole_id_ = #{item.schoolId},
-                </if>
                 <if test="item.schoolId == null">
                     schoole_id_ = null,
                 </if>

+ 2 - 2
mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml

@@ -707,7 +707,7 @@
         <result property="vipGroupStatus" column="vip_group_status_"/>
         <result property="organName" column="organ_name_"/>
         <result property="subjectName" column="music_group_subject_"/>
-        <result property="courseBalance" column="balance_"/>
+        <result property="courseBalance" column="course_balance_"/>
     </resultMap>
     <select id="queryHasCourseStudent" resultMap="studentManageListDto">
         SELECT su.id_ user_id_,su.username_,su.gender_,GROUP_CONCAT(DISTINCT sr.parents_name_)parents_name_,
@@ -728,7 +728,7 @@
         CASE WHEN GROUP_CONCAT(DISTINCT pla.id_) IS NULL THEN 0 ELSE 1 END isMake_,
         CASE WHEN su.password_ IS NULL THEN 0 ELSE 1 END isActive_,
         CASE WHEN GROUP_CONCAT(DISTINCT cssp1.id_) IS NULL THEN 0 ELSE 1 END hasPracticeCourse_,
-        suca.balance_
+        suca.course_balance_
         FROM sys_user su
         LEFT JOIN course_schedule_student_payment cssp ON su.id_ = cssp.user_id_
         LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_ AND cs.status_ != 'OVER'

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

@@ -216,7 +216,7 @@ public class CourseScheduleController extends BaseController {
 	@ApiOperation(value = "乐团详情--课酬调整--课程教师列表")
 	@GetMapping("/queryTeacherSalary")
     @PreAuthorize("@pcs.hasPermissions('courseSchedule/queryTeacherSalary')")
-	public Object queryTeacherSalary(Integer courseScheduleId) {
+	public Object queryTeacherSalary(Long courseScheduleId) {
 		return succeed(musicGroupService.queryTeacherSalary(courseScheduleId));
 	}