yonge 5 年之前
父节点
当前提交
5bde4f5a01
共有 18 个文件被更改,包括 259 次插入145 次删除
  1. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupTeacherMapperDao.java
  2. 20 6
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java
  3. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CreateCourseScheduleDto.java
  4. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseSchedule.java
  5. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleStudentPayment.java
  6. 17 7
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleTeacherSalary.java
  7. 3 13
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/VipGroup.java
  8. 12 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
  9. 18 15
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupTeacherMapperServiceImpl.java
  10. 1 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleStudentPaymentServiceImpl.java
  11. 1 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java
  12. 26 11
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  13. 1 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  14. 11 4
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  15. 35 29
      mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml
  16. 54 36
      mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml
  17. 2 6
      mec-biz/src/main/resources/config/mybatis/VipGroupMapper.xml
  18. 34 14
      mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleController.java

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

@@ -51,6 +51,6 @@ public interface ClassGroupTeacherMapperDao extends BaseDAO<Long, ClassGroupTeac
      * @param musicGroupId:
      * @return java.util.List<com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper>
      */
-    List<ClassGroupTeacherMapper> findByMusicGroup(Long musicGroupId);
+    List<ClassGroupTeacherMapper> findByMusicGroup(String musicGroupId);
 
 }

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

@@ -4,9 +4,12 @@ import com.ym.mec.biz.dal.dto.VipGroupSalaryDto;
 import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
 import com.ym.mec.common.dal.BaseDAO;
 
+import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
 
+import org.apache.ibatis.annotations.Param;
+
 public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseScheduleTeacherSalary> {
 
     /**
@@ -38,10 +41,21 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
     List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(Integer days);
 
     /**
-     * 查询老师指定课程的课酬
-     * @param courseScheduleId
-     * @param teacherId
-     * @return
-     */
-    CourseScheduleTeacherSalary queryByCourseScheduleIdAndUserId(Long courseScheduleId,Integer teacherId);
+	 * 查询老师指定课程的课酬
+	 * @param courseScheduleId
+	 * @param teacherId
+	 * @return
+	 */
+	CourseScheduleTeacherSalary queryByCourseScheduleIdAndUserId(@Param("courseScheduleId") Long courseScheduleId, @Param("teacherId") Integer teacherId);
+	
+	/**
+	 * 批量更新指定老师所教学班级的报酬(课酬、补贴)
+	 * @param classGrpupId 班级编号
+	 * @param userId 老师编号
+	 * @param salary 课酬
+	 * @param subsidy 补贴
+	 * @return
+	 */
+	int batchUpdateWages(@Param("classGrpupId") Integer classGrpupId, @Param("userId") Integer userId, @Param("salary") BigDecimal salary,
+			@Param("subsidy") BigDecimal subsidy);
 }

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CreateCourseScheduleDto.java

@@ -9,15 +9,15 @@ import java.util.List;
  * @Date 2019/10/18
  */
 public class CreateCourseScheduleDto {
-    private Long musicGroupID;
+    private String musicGroupID;
 
     private List<CourseSchedule> courseSchedules;
 
-    public Long getMusicGroupID() {
+    public String getMusicGroupID() {
         return musicGroupID;
     }
 
-    public void setMusicGroupID(Long musicGroupID) {
+    public void setMusicGroupID(String musicGroupID) {
         this.musicGroupID = musicGroupID;
     }
 

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseSchedule.java

@@ -104,6 +104,8 @@ public class CourseSchedule {
 
 	@ApiModelProperty(value = "请假人数")
 	private Integer leaveStudentNum;
+	
+	private Integer schoolId;
 
 	public String getStartClassTimeStr() {
 		return startClassTimeStr;
@@ -277,6 +279,14 @@ public class CourseSchedule {
 		this.name = name;
 	}
 
+	public Integer getSchoolId() {
+		return schoolId;
+	}
+
+	public void setSchoolId(Integer schoolId) {
+		this.schoolId = schoolId;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleStudentPayment.java

@@ -31,6 +31,8 @@ public class CourseScheduleStudentPayment {
 	/** 结算时间 */
 	private java.util.Date settlementTime;
 	
+	private Integer classGroupId;
+	
 	public void setId(Long id){
 		this.id = id;
 	}
@@ -95,6 +97,14 @@ public class CourseScheduleStudentPayment {
 		return this.settlementTime;
 	}
 			
+	public Integer getClassGroupId() {
+		return classGroupId;
+	}
+
+	public void setClassGroupId(Integer classGroupId) {
+		this.classGroupId = classGroupId;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 17 - 7
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleTeacherSalary.java

@@ -27,7 +27,7 @@ public class CourseScheduleTeacherSalary {
 	private java.util.Date createTime;
 	
 	/**  */
-	private java.util.Date createUpdate;
+	private java.util.Date updateTime;
 	
 	/** 补贴 */
 	private java.math.BigDecimal subsidy;
@@ -38,6 +38,8 @@ public class CourseScheduleTeacherSalary {
 	/** 结算时间 */
 	private java.util.Date settlementTime;
 	
+	private Integer classGroupId;
+	
 	public void setId(Long id){
 		this.id = id;
 	}
@@ -86,14 +88,14 @@ public class CourseScheduleTeacherSalary {
 		return this.createTime;
 	}
 			
-	public void setCreateUpdate(java.util.Date createUpdate){
-		this.createUpdate = createUpdate;
+	public java.util.Date getUpdateTime() {
+		return updateTime;
 	}
-	
-	public java.util.Date getCreateUpdate(){
-		return this.createUpdate;
+
+	public void setUpdateTime(java.util.Date updateTime) {
+		this.updateTime = updateTime;
 	}
-			
+
 	public void setSubsidy(java.math.BigDecimal subsidy){
 		this.subsidy = subsidy;
 	}
@@ -118,6 +120,14 @@ public class CourseScheduleTeacherSalary {
 		return this.settlementTime;
 	}
 			
+	public Integer getClassGroupId() {
+		return classGroupId;
+	}
+
+	public void setClassGroupId(Integer classGroupId) {
+		this.classGroupId = classGroupId;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 3 - 13
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/VipGroup.java

@@ -50,7 +50,7 @@ public class VipGroup {
 
 	/** 教学点 */
 	@ApiModelProperty(value = "教学点", required = false)
-	private Long teacherSchoolId;
+	private Integer teacherSchoolId;
 
 	/** 线上课课时数 */
 	@ApiModelProperty(value = "线上课课时数", required = false)
@@ -101,8 +101,6 @@ public class VipGroup {
 	
 	private Integer organId;
 	
-	private Integer schoolId;
-
 	public String getVipGroupActivityName() {
 		return vipGroupActivityName;
 	}
@@ -263,11 +261,11 @@ public class VipGroup {
 		return this.updateTime;
 	}
 
-	public void setTeacherSchoolId(Long teacherSchoolId) {
+	public void setTeacherSchoolId(Integer teacherSchoolId) {
 		this.teacherSchoolId = teacherSchoolId;
 	}
 
-	public Long getTeacherSchoolId() {
+	public Integer getTeacherSchoolId() {
 		return this.teacherSchoolId;
 	}
 
@@ -319,14 +317,6 @@ public class VipGroup {
 		this.organId = organId;
 	}
 
-	public Integer getSchoolId() {
-		return schoolId;
-	}
-
-	public void setSchoolId(Integer schoolId) {
-		this.schoolId = schoolId;
-	}
-
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -187,7 +187,18 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     @Override
     @Transactional(rollbackFor = Exception.class)
     public List<HighClassGroupDto> addHighClassGroup(List<HighClassGroupDto> highClassGroupList) throws Exception {
+    	
+    	Integer schoolId = null;
+    	
         for (HighClassGroupDto highClassGroup : highClassGroupList) {
+        	
+			if (schoolId == null) {
+				MusicGroup musicGroup = musicGroupDao.get(highClassGroup.getMusicGroupId());
+				if (musicGroup != null) {
+					schoolId = musicGroup.getSchoolId();
+				}
+			}
+        	
             //1、插入班级信息
             Date date;
             date = new Date();
@@ -219,6 +230,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                     Instant instant = now.atZone(ZoneId.systemDefault()).toInstant();
                     Date classDate = Date.from(instant);
 
+                    courseSchedule.setSchoolId(schoolId);
                     courseSchedule.setClassGroupId(highClassGroup.getUserId());
                     courseSchedule.setStatus(CourseStatusEnum.NOT_START);
                     courseSchedule.setClassDate(classDate);

+ 18 - 15
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupTeacherMapperServiceImpl.java

@@ -1,26 +1,28 @@
 package com.ym.mec.biz.service.impl;
 
-import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
-import com.ym.mec.biz.dal.entity.*;
-import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
-import com.ym.mec.biz.dal.enums.TeachTypeEnum;
-import com.ym.mec.biz.service.CourseScheduleService;
-import com.ym.mec.biz.service.CourseScheduleTeacherSalaryService;
-import com.ym.mec.util.date.DateUtil;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import com.ym.mec.biz.dal.dao.ClassGroupTeacherMapperDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
+import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
+import com.ym.mec.biz.dal.entity.ClassGroupTeacherSalary;
+import com.ym.mec.biz.dal.entity.CourseSchedule;
+import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
+import com.ym.mec.biz.dal.entity.TeacherDefaultMusicGroupSalary;
+import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
+import com.ym.mec.biz.dal.enums.TeachTypeEnum;
 import com.ym.mec.biz.service.ClassGroupTeacherMapperService;
+import com.ym.mec.biz.service.CourseScheduleService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
+import com.ym.mec.util.date.DateUtil;
 
 @Service
 public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, ClassGroupTeacherMapper> implements ClassGroupTeacherMapperService {
@@ -108,7 +110,8 @@ public class ClassGroupTeacherMapperServiceImpl extends BaseServiceImpl<Long, Cl
                 courseScheduleTeacherSalary.setUserId(classGroupTeacherMapper.getUserId());
                 courseScheduleTeacherSalary.setExpectSalary(salary);
                 courseScheduleTeacherSalary.setCreateTime(date);
-                courseScheduleTeacherSalary.setCreateUpdate(date);
+                courseScheduleTeacherSalary.setUpdateTime(date);
+                courseScheduleTeacherSalary.setClassGroupId(classGroupTeacherMapper.getClassGroupId());
                 courseScheduleTeacherSalaryList.add(courseScheduleTeacherSalary);
             }
         }

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

@@ -64,6 +64,7 @@ public class CourseScheduleStudentPaymentServiceImpl extends BaseServiceImpl<Lon
 				//创建学生课程应缴费记录
 				CourseScheduleStudentPayment courseScheduleStudentPayment = new CourseScheduleStudentPayment();
 				courseScheduleStudentPayment.setCourseScheduleId(courseSchedules.get(i).getId());
+				courseScheduleStudentPayment.setClassGroupId(courseSchedules.get(i).getClassGroupId());
 
 				if (teachModeEnum == TeachModeEnum.ONLINE) {
 					//学生线上单节课应缴费计算

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

@@ -75,6 +75,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 				courseScheduleTeacherSalary.setCourseScheduleId(courseSchedules.get(i).getId());
 				courseScheduleTeacherSalary.setTeacherRole(TeachTypeEnum.BISHOP);
 				courseScheduleTeacherSalary.setUserId(vipGroup.getUserId());
+				courseScheduleTeacherSalary.setClassGroupId(courseSchedules.get(i).getClassGroupId());
 
 				if(teachModeEnum==TeachModeEnum.ONLINE){
 					if(vipGroupActivity.getType()== VipGroupActivityTypeEnum.GIVE_CLASS

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

@@ -19,6 +19,7 @@ import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.ChargeTypeDao;
 import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
 import com.ym.mec.biz.dal.dao.MusicGroupBuildLogDao;
 import com.ym.mec.biz.dal.dao.MusicGroupDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
@@ -35,6 +36,7 @@ import com.ym.mec.biz.dal.dto.MusicCardDto;
 import com.ym.mec.biz.dal.dto.SubFeeSettingDto;
 import com.ym.mec.biz.dal.entity.ApprovalStatus;
 import com.ym.mec.biz.dal.entity.CourseSchedule;
+import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.MusicGroupBuildLog;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
@@ -117,6 +119,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 	
 	@Autowired
 	private CourseScheduleDao courseScheduleDao;
+	
+	@Autowired
+	private CourseScheduleTeacherSalaryDao courseScheduleTeacherSalaryDao;
 
 	@Autowired
 	private PayService payService;
@@ -429,22 +434,32 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 	@Override
 	@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
 	public boolean updateTeacherCoursesSalary(Long courseScheduleId, Integer teacherId, BigDecimal salary, BigDecimal subsidy, String scope) {
-		
+
 		CourseSchedule courseSchedule = courseScheduleDao.get(courseScheduleId);
-		if(courseSchedule == null){
+		if (courseSchedule == null) {
 			throw new BizException("课程信息不存在");
 		}
-		
-		if("all".equals(scope)){
+
+		if ("all".equals(scope)) {
 			Integer classGrpupId = courseSchedule.getClassGroupId();
-			//未结算的课酬都修改
-		}else{
-			//判断当前课程是否结算
-			
+			// 未结算的课酬都修改
+			courseScheduleTeacherSalaryDao.batchUpdateWages(classGrpupId, teacherId, salary, subsidy);
+		} else {
+			CourseScheduleTeacherSalary courseScheduleTeacherSalary = courseScheduleTeacherSalaryDao.queryByCourseScheduleIdAndUserId(courseScheduleId,
+					teacherId);
+			if (courseScheduleTeacherSalary == null) {
+				throw new BizException("课程结算信息不存在");
+			}
+			// 判断当前课程是否结算
+			if (courseScheduleTeacherSalary.getSettlementTime() != null) {
+				throw new BizException("课程已结算");
+			}
+			courseScheduleTeacherSalary.setExpectSalary(salary);
+			courseScheduleTeacherSalary.setSubsidy(subsidy);
+			courseScheduleTeacherSalary.setUpdateTime(new Date());
+			courseScheduleTeacherSalaryDao.update(courseScheduleTeacherSalary);
 		}
-		//更新所有课酬、补贴
-		
-		return false;
+		return true;
 	}
 
 	@Override

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

@@ -189,6 +189,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
                 &&courseSchedule.getStartClassTime().before(vipGroupActivity.getCoursesStartTime())){
 		        throw new BizException("课时安排时间超出范围!");
             }
+		    courseSchedule.setSchoolId(vipGroup.getVipGroupApplyBaseInfo().getTeacherSchoolId());
 		    courseSchedule.setTeacherId(vipGroupApplyBaseInfoDto.getUserId().longValue());
 			courseSchedule.setStatus(CourseStatusEnum.NOT_START);
 		    courseSchedule.setType(CourseSchedule.CourseScheduleType.VIP);

+ 11 - 4
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -23,6 +23,7 @@
         <result column="name_" property="name"/>
         <result column="student_num_" property="studentNum"/>
         <result column="leave_student_num_" property="leaveStudentNum"/>
+        <result column="schoole_id_" property="schoolId"/>
     </resultMap>
 
     <resultMap type="com.ym.mec.biz.dal.dto.CourseScheduleDto" id="courseScheduleDto" extends="CourseSchedule">
@@ -72,17 +73,17 @@
         </selectKey>
         -->
         INSERT INTO course_schedule
-        (id_,class_group_id_,status_,subsidy_,class_date_,start_class_time_,end_class_time_,teacher_id_,actual_teacher_id_,create_time_,update_time_,type_,name_,teach_mode_,student_num_,leave_student_num_)
-        VALUES(#{id},#{classGroupId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{subsidy},#{classDate},#{startClassTime},#{endClassTime},#{teacherId},#{teacherId},now(),now(),#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{name},#{teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{studentNum},#{leaveStudentNum})
+        (id_,class_group_id_,status_,subsidy_,class_date_,start_class_time_,end_class_time_,teacher_id_,actual_teacher_id_,create_time_,update_time_,type_,name_,teach_mode_,student_num_,leave_student_num_,schoole_id_)
+        VALUES(#{id},#{classGroupId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{subsidy},#{classDate},#{startClassTime},#{endClassTime},#{teacherId},#{teacherId},now(),now(),#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{name},#{teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{studentNum},#{leaveStudentNum},#{schoolId})
     </insert>
 
     <insert id="batchAddCourseSchedules" parameterType="java.util.List" useGeneratedKeys="true" keyColumn="id"
             keyProperty="id">
         INSERT INTO course_schedule
-        (id_,class_group_id_,status_,subsidy_,class_date_,start_class_time_,end_class_time_,teacher_id_,actual_teacher_id_,create_time_,update_time_,type_,name_,teach_mode_,student_num_,leave_student_num_)
+        (id_,class_group_id_,status_,subsidy_,class_date_,start_class_time_,end_class_time_,teacher_id_,actual_teacher_id_,create_time_,update_time_,type_,name_,teach_mode_,student_num_,leave_student_num_,schoole_id_)
         VALUE
         <foreach collection="list" item="course" separator=",">
-            (#{course.id},#{course.classGroupId},#{course.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.subsidy},#{course.classDate},#{course.startClassTime},#{course.endClassTime},#{course.teacherId},#{course.teacherId},now(),now(),#{course.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.name},#{course.teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.studentNum},#{course.leaveStudentNum})
+            (#{course.id},#{course.classGroupId},#{course.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.subsidy},#{course.classDate},#{course.startClassTime},#{course.endClassTime},#{course.teacherId},#{course.teacherId},now(),now(),#{course.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.name},#{course.teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.studentNum},#{course.leaveStudentNum},#{course.schoolId})
         </foreach>
     </insert>
 
@@ -126,6 +127,9 @@
             <if test="leaveStudentNum != null">
                 leave_student_num_ = #{leaveStudentNum},
             </if>
+            <if test="schoolId != null">
+                school_id_ = #{schoolId},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>
@@ -731,6 +735,9 @@
             <if test="item.leaveStudentNum != null">
                 leave_student_num_ = #{item.leaveStudentNum},
             </if>
+            <if test="item.schoolId != null">
+                school_id_ = #{item.choolId},
+            </if>
         </set>
         WHERE id_ = #{item.id}
         </foreach>

+ 35 - 29
mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml

@@ -15,6 +15,7 @@
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
 		<result column="settlement_time_" property="settlementTime" />
+		<result column="class_group_id_" property="classGroupId" />
 	</resultMap>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -34,44 +35,48 @@
 		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
 		</selectKey>
 		-->
-		INSERT INTO course_schedule_student_payment (id_,course_schedule_id_,user_id_,expect_price_,actual_price_,create_time_,update_time_,settlement_time_) VALUES(#{id},#{courseScheduleId},#{userId},#{expectPrice},#{actualPrice},#{createTime},#{updateTime},#{settlementTime})
+		INSERT INTO course_schedule_student_payment (id_,course_schedule_id_,user_id_,expect_price_,actual_price_,create_time_,update_time_,settlement_time_,class_group_id_) VALUES(#{id},#{courseScheduleId},#{userId},#{expectPrice},#{actualPrice},#{createTime},#{updateTime},#{settlementTime},#{classGroupId})
 	</insert>
     <insert id="batchInsert" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id_">
-		INSERT INTO course_schedule_student_payment (id_,course_schedule_id_,user_id_,expect_price_,actual_price_,create_time_,update_time_,settlement_time_)
+		INSERT INTO course_schedule_student_payment (id_,course_schedule_id_,user_id_,expect_price_,actual_price_,create_time_,update_time_,settlement_time_,class_group_id_)
 		VALUE
 		<foreach collection="list" item="data" separator=",">
-			(#{data.id},#{data.courseScheduleId},#{data.userId},#{data.expectPrice},#{data.actualPrice},now(),now(),#{data.settlementTime})
+			(#{data.id},#{data.courseScheduleId},#{data.userId},#{data.expectPrice},#{data.actualPrice},now(),now(),#{data.settlementTime},#{data.classGroupId})
 		</foreach>
     </insert>
 
     <!-- 根据主键查询一条记录 -->
 	<update id="update" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment">
-		UPDATE course_schedule_student_payment <set>
-<if test="userId != null">
-user_id_ = #{userId},
-</if>
-<if test="id != null">
-id_ = #{id},
-</if>
-<if test="courseScheduleId != null">
-course_schedule_id_ = #{courseScheduleId},
-</if>
-<if test="updateTime != null">
-update_time_ = #{updateTime},
-</if>
-<if test="settlementTime != null">
-settlement_time_ = #{settlementTime},
-</if>
-<if test="expectPrice != null">
-expect_price_ = #{expectPrice},
-</if>
-<if test="actualPrice != null">
-actual_price_ = #{actualPrice},
-</if>
-<if test="createTime != null">
-create_time_ = #{createTime},
-</if>
-</set> WHERE id_ = #{id} 
+		UPDATE course_schedule_student_payment 
+		<set>
+			<if test="userId != null">
+			user_id_ = #{userId},
+			</if>
+			<if test="id != null">
+			id_ = #{id},
+			</if>
+			<if test="courseScheduleId != null">
+			course_schedule_id_ = #{courseScheduleId},
+			</if>
+			<if test="updateTime != null">
+			update_time_ = #{updateTime},
+			</if>
+			<if test="settlementTime != null">
+			settlement_time_ = #{settlementTime},
+			</if>
+			<if test="expectPrice != null">
+			expect_price_ = #{expectPrice},
+			</if>
+			<if test="actualPrice != null">
+			actual_price_ = #{actualPrice},
+			</if>
+			<if test="createTime != null">
+			create_time_ = #{createTime},
+			</if>
+			<if test="classGroupId != null">
+			class_group_id_ = #{classGroupId},
+			</if>
+		</set> WHERE id_ = #{id} 
 	</update>
 	
 	<!-- 根据主键删除一条记录 -->
@@ -88,6 +93,7 @@ create_time_ = #{createTime},
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM course_schedule_student_payment
 	</select>
+	
     <select id="findByCourseScheduleIds" resultMap="CourseScheduleStudentPayment">
 		SELECT * FROM course_schedule_student_payment WHERE course_schedule_id_ IN
 		<foreach collection="ids" item="id" open="(" close=")" separator=",">

+ 54 - 36
mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml

@@ -13,10 +13,11 @@
 		<result column="user_id_" property="userId" />
 		<result column="expect_salary_" property="expectSalary" />
 		<result column="create_time_" property="createTime" />
-		<result column="create_update_" property="createUpdate" />
+		<result column="update_time_" property="updateTime" />
 		<result column="subsidy_" property="subsidy" />
 		<result column="actual_salary_" property="actualSalary" />
 		<result column="settlement_time_" property="settlementTime" />
+		<result column="class_group_id_" property="classGroupId" />
 	</resultMap>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -36,50 +37,54 @@
 		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
 		</selectKey>
 		-->
-		INSERT INTO course_schedule_teacher_salary (id_,course_schedule_id_,teacher_role_,user_id_,expect_salary_,create_time_,create_update_,subsidy_,actual_salary_,settlement_time_) VALUES(#{id},#{courseScheduleId},#{teacherRole},#{userId},#{expectSalary},#{createTime},#{createUpdate},#{subsidy},#{actualSalary},#{settlementTime})
+		INSERT INTO course_schedule_teacher_salary (id_,course_schedule_id_,teacher_role_,user_id_,expect_salary_,create_time_,update_time_,subsidy_,actual_salary_,settlement_time_,class_group_id_) VALUES(#{id},#{courseScheduleId},#{teacherRole},#{userId},#{expectSalary},#{createTime},#{updateTime},#{subsidy},#{actualSalary},#{settlementTime},#{classGroupId})
 	</insert>
     <insert id="batchInsert" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id_">
-		INSERT INTO course_schedule_teacher_salary (id_,course_schedule_id_,teacher_role_,user_id_,expect_salary_,create_time_,create_update_,subsidy_,actual_salary_,settlement_time_)
+		INSERT INTO course_schedule_teacher_salary (id_,course_schedule_id_,teacher_role_,user_id_,expect_salary_,create_time_,update_time_,subsidy_,actual_salary_,settlement_time_,class_group_id_)
 		VALUES
 		<foreach collection="list" item="data" separator=",">
-			(#{data.id},#{data.courseScheduleId},#{data.teacherRole},#{data.userId},#{data.expectSalary},now(),now(),#{data.subsidy},#{data.actualSalary},#{data.settlementTime})
+			(#{data.id},#{data.courseScheduleId},#{data.teacherRole},#{data.userId},#{data.expectSalary},now(),now(),#{data.subsidy},#{data.actualSalary},#{data.settlementTime},#{data.classGroupId})
 		</foreach>
     </insert>
 
     <!-- 根据主键查询一条记录 -->
 	<update id="update" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary">
-		UPDATE course_schedule_teacher_salary <set>
-<if test="userId != null">
-user_id_ = #{userId},
-</if>
-<if test="subsidy != null">
-subsidy_ = #{subsidy},
-</if>
-<if test="id != null">
-id_ = #{id},
-</if>
-<if test="expectSalary != null">
-expect_salary_ = #{expectSalary},
-</if>
-<if test="courseScheduleId != null">
-course_schedule_id_ = #{courseScheduleId},
-</if>
-<if test="settlementTime != null">
-settlement_time_ = #{settlementTime},
-</if>
-<if test="teacherRole != null">
-teacher_role_ = #{teacherRole},
-</if>
-<if test="createUpdate != null">
-create_update_ = #{createUpdate},
-</if>
-<if test="actualSalary != null">
-actual_salary_ = #{actualSalary},
-</if>
-<if test="createTime != null">
-create_time_ = #{createTime},
-</if>
-</set> WHERE id_ = #{id} 
+		UPDATE course_schedule_teacher_salary 
+		<set>
+			<if test="userId != null">
+			user_id_ = #{userId},
+			</if>
+			<if test="subsidy != null">
+			subsidy_ = #{subsidy},
+			</if>
+			<if test="id != null">
+			id_ = #{id},
+			</if>
+			<if test="expectSalary != null">
+			expect_salary_ = #{expectSalary},
+			</if>
+			<if test="courseScheduleId != null">
+			course_schedule_id_ = #{courseScheduleId},
+			</if>
+			<if test="settlementTime != null">
+			settlement_time_ = #{settlementTime},
+			</if>
+			<if test="teacherRole != null">
+			teacher_role_ = #{teacherRole},
+			</if>
+			<if test="updateTime != null">
+			update_time_ = #{updateTime},
+			</if>
+			<if test="actualSalary != null">
+			actual_salary_ = #{actualSalary},
+			</if>
+			<if test="createTime != null">
+			create_time_ = #{createTime},
+			</if>
+			<if test="classGroupId != null">
+			class_group_id_ = #{classGroupId},
+			</if>
+		</set> WHERE id_ = #{id} 
 	</update>
 	
 	<!-- 根据主键删除一条记录 -->
@@ -148,4 +153,17 @@ create_time_ = #{createTime},
 		CONCAT( cs.class_date_, ' ', cs.start_class_time_ ) &lt;= DATE_ADD( NOW( ), INTERVAL - 7 DAY )
 		AND csts.settlement_time_ IS NULL
     </select>
+    
+    <select id="queryByCourseScheduleIdAndUserId" resultMap="CourseScheduleTeacherSalary" parameterType="map">
+		SELECT * FROM course_schedule_teacher_salary where user_id_ = #{teacherId} and course_schedule_id_ = #{courseScheduleId}
+    </select>
+    
+    <update id="batchUpdateWages" parameterType="map">
+		UPDATE course_schedule_teacher_salary set
+			subsidy_ = #{subsidy},
+			expect_salary_ = #{expectSalary},
+			teacher_role_ = #{teacherRole},
+			update_time_ = now()
+		WHERE user_id_ = #{userId} and class_group_id_ = #{classGroupId}
+	</update>
 </mapper>

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

@@ -34,7 +34,6 @@
         <result column="vip_group_category_id_" property="vipGroupCategoryId"/>
         <result column="give_teach_mode_" property="giveTeachMode" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="organ_id_" property="organId"/>
-        <result column="schoole_id_" property="schoolId"/>
     </resultMap>
     
     <resultMap type="com.ym.mec.biz.dal.entity.School" id="School">
@@ -163,8 +162,8 @@
         </selectKey>
         -->
         INSERT INTO vip_group
-        (id_,user_id_,single_class_minutes_,payment_expire_date_,courses_expire_date_,create_time_,update_time_,teacher_school_id_,online_classes_num_,offline_classes_num_,registration_start_time_,name_,organ_id_list_,vip_group_activity_id_,status_,online_classes_unit_price_,offline_classes_unit_price_,total_price_,give_teach_mode_,vip_group_category_id_,schoole_id_,organ_id_)
-        VALUES(#{id},#{userId},#{singleClassMinutes},#{paymentExpireDate},#{coursesExpireDate},now(),now(),#{teacherSchoolId},#{onlineClassesNum},#{offlineClassesNum},#{registrationStartTime},#{name},#{organIdList},#{vipGroupActivityId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{onlineClassesUnitPrice},#{offlineClassesUnitPrice},#{totalPrice},#{giveTeachMode},#{vipGroupCategoryId},#{schoolId},#{organId})
+        (id_,user_id_,single_class_minutes_,payment_expire_date_,courses_expire_date_,create_time_,update_time_,teacher_school_id_,online_classes_num_,offline_classes_num_,registration_start_time_,name_,organ_id_list_,vip_group_activity_id_,status_,online_classes_unit_price_,offline_classes_unit_price_,total_price_,give_teach_mode_,vip_group_category_id_,organ_id_)
+        VALUES(#{id},#{userId},#{singleClassMinutes},#{paymentExpireDate},#{coursesExpireDate},now(),now(),#{teacherSchoolId},#{onlineClassesNum},#{offlineClassesNum},#{registrationStartTime},#{name},#{organIdList},#{vipGroupActivityId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{onlineClassesUnitPrice},#{offlineClassesUnitPrice},#{totalPrice},#{giveTeachMode},#{vipGroupCategoryId},#{organId})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -228,9 +227,6 @@
             <if test="organId!=null">
                 organ_id_=#{organId}
             </if>
-            <if test="schoolId!=null">
-                schoole_id_=#{schoolId}
-            </if>
         </set>
         WHERE id_ = #{id}
     </update>

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

@@ -1,30 +1,40 @@
 package com.ym.mec.web.controller;
 
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
 import com.ym.mec.biz.dal.dao.ClassGroupTeacherMapperDao;
 import com.ym.mec.biz.dal.dto.ClassDateAdjustDto;
 import com.ym.mec.biz.dal.dto.CreateCourseScheduleDto;
 import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
 import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.CourseScheduleComplaints;
+import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.page.StudentAttendanceQueryInfo;
 import com.ym.mec.biz.service.CourseScheduleService;
+import com.ym.mec.biz.service.MusicGroupService;
 import com.ym.mec.biz.service.StudentAttendanceService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.exception.BizException;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.MediaType;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.util.CollectionUtils;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.stream.Collectors;
 
 /**
  * @Author Joburgess
@@ -41,6 +51,9 @@ public class CourseScheduleController extends BaseController {
     private StudentAttendanceService studentAttendanceService;
     @Autowired
     private ClassGroupTeacherMapperDao classGroupTeacherMapperDao;
+    
+    @Autowired
+    private MusicGroupService musicGroupService;
 
     @ApiOperation(value = "排课")
     @PostMapping("/batchAddCourseSchedule")
@@ -49,6 +62,12 @@ public class CourseScheduleController extends BaseController {
         if(Objects.isNull(createCourseScheduleDto.getMusicGroupID())){
             throw new BizException("请指定乐团");
         }
+        
+        MusicGroup musicGroup = musicGroupService.get(createCourseScheduleDto.getMusicGroupID());
+        if(musicGroup == null){
+        	return failed("乐团信息不存在");
+        }
+        
         List<ClassGroupTeacherMapper> byMusicGroup = classGroupTeacherMapperDao.findByMusicGroup(createCourseScheduleDto.getMusicGroupID());
         Map<Integer, List<ClassGroupTeacherMapper>> teacherByClassGroup = byMusicGroup.stream().collect(Collectors.groupingBy(ClassGroupTeacherMapper::getClassGroupId));
 
@@ -58,6 +77,7 @@ public class CourseScheduleController extends BaseController {
                 throw new BizException("乐团老师设置有误");
             }
             courseSchedule.setTeacherId(classGroupTeacherMappers.get(0).getUserId().longValue());
+            courseSchedule.setSchoolId(musicGroup.getSchoolId());
         });
 
         scheduleService.batchAddCourseSchedule(createCourseScheduleDto.getCourseSchedules());