Browse Source

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

zouxuan 5 years ago
parent
commit
8661dfd95f

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

@@ -4,6 +4,7 @@ import com.ym.mec.biz.dal.dto.CourseScheduleTeachersDto;
 import com.ym.mec.biz.dal.dto.TeacherSalaryDto;
 import com.ym.mec.biz.dal.dto.VipGroupSalaryDto;
 import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
+import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.common.dal.BaseDAO;
 import org.apache.ibatis.annotations.Param;
 
@@ -13,147 +14,152 @@ import java.util.Map;
 
 public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseScheduleTeacherSalary> {
 
-    /**
-     * @Author: Joburgess
-     * @Date: 2019/10/10
-     * @params [courseScheduleTeacherSalaries]
-     * @return int
-     * @describe 批量插入
-     */
-    int batchInsert(List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaries);
-
-    /**
-     * @describe 根据课程编号批量删除教师课酬记录
-     * @author Joburgess
-     * @date 2019/10/31
-     * @param courseScheduleIds: 课程编号列表
-     * @return int
-     */
-    int batchDeleteByCourseScheduleIds(@Param("courseScheduleIds") List<Long> courseScheduleIds);
-
-    /**
-     * @Author: Joburgess
-     * @Date: 2019/10/11
-     * @params [params]
-     * @return java.util.List<com.ym.mec.biz.dal.dto.VipGroupSalaryDto>
-     * @describe 获取vip课财务记录
-     */
-    List<VipGroupSalaryDto> findVipGroupSalarys(Map<String,Object> params);
-    int countVipGroupSalarys(Map<String,Object> params);
-
-    /**
-     * @Author: Joburgess
-     * @Date: 2019/10/15
-     * @params [days:天数]
-     * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary>
-     * @describe 获取多少天之前的未结算教师课酬记录(vip课)
-     */
-    List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(Integer days);
-
-    /**
+	/**
+	 * @return int
+	 * @Author: Joburgess
+	 * @Date: 2019/10/10
+	 * @params [courseScheduleTeacherSalaries]
+	 * @describe 批量插入
+	 */
+	int batchInsert(List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaries);
+
+	/**
+	 * @param courseScheduleIds: 课程编号列表
+	 * @return int
+	 * @describe 根据课程编号批量删除教师课酬记录
+	 * @author Joburgess
+	 * @date 2019/10/31
+	 */
+	int batchDeleteByCourseScheduleIds(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+
+	/**
+	 * @return java.util.List<com.ym.mec.biz.dal.dto.VipGroupSalaryDto>
+	 * @Author: Joburgess
+	 * @Date: 2019/10/11
+	 * @params [params]
+	 * @describe 获取vip课财务记录
+	 */
+	List<VipGroupSalaryDto> findVipGroupSalarys(Map<String, Object> params);
+
+	int countVipGroupSalarys(Map<String, Object> params);
+
+	/**
+	 * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary>
+	 * @Author: Joburgess
+	 * @Date: 2019/10/15
+	 * @params [days:天数]
+	 * @describe 获取多少天之前的未结算教师课酬记录(vip课)
+	 */
+	List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(Integer days);
+
+	/**
 	 * 查询老师指定课程的课酬
+	 *
 	 * @param courseScheduleId
 	 * @param teacherId
 	 * @return
 	 */
 	CourseScheduleTeacherSalary queryByCourseScheduleIdAndUserId(@Param("courseScheduleId") Long courseScheduleId, @Param("teacherId") Integer teacherId);
-	
+
 	/**
 	 * 批量更新指定老师所教学班级的报酬(课酬、补贴)
+	 *
 	 * @param classGroupId 班级编号
-	 * @param userId 老师编号
-	 * @param salary 课酬
-	 * @param subsidy 补贴
+	 * @param userId       老师编号
+	 * @param salary       课酬
+	 * @param subsidy      补贴
 	 * @return
 	 */
 	int batchUpdateWages(@Param("classGroupId") Integer classGroupId, @Param("userId") Integer userId, @Param("salary") BigDecimal salary,
-			@Param("subsidy") BigDecimal subsidy);
+						 @Param("subsidy") BigDecimal subsidy);
 
 	/**
+	 * @param courseScheduleId: 课程编号
+	 * @param userIds:          课程关联教师编号
+	 * @return int
 	 * @describe 批量更新指定班级关联教师预计薪水
 	 * @author Joburgess
 	 * @date 2019/10/23
-	 * @param courseScheduleId: 课程编号
-	 * @param userIds: 课程关联教师编号
-	 * @return int
 	 */
 	int batchUpdateTeacherExpectSalary(@Param("courseScheduleId") Integer courseScheduleId,
 									   @Param("userIds") List<Integer> userIds);
 
 	/**
-	 * @describe 根据班级编号和教师类型获取老师列表
-	 * @author Joburgess
-	 * @date 2019/10/23
 	 * @param courseScheduleIds:
 	 * @param teacherRole:
 	 * @return java.util.List<com.ym.mec.biz.dal.dto.BasicUserDto>
+	 * @describe 根据班级编号和教师类型获取老师列表
+	 * @author Joburgess
+	 * @date 2019/10/23
 	 */
 	List<CourseScheduleTeacherSalary> findByCourseScheduleIdsAndTeacherRole(@Param("courseScheduleIds") List<Integer> courseScheduleIds,
-															 @Param("teacherRole") String teacherRole);
+																			@Param("teacherRole") String teacherRole);
 
 	/**
+	 * @param courseScheduleIds: 课程编号列表
+	 * @return java.util.List<java.util.Map < java.lang.String, java.lang.String>>
 	 * @describe 根据课程获取对应乐团结算方式
 	 * @author Joburgess
 	 * @date 2019/10/24
-	 * @param courseScheduleIds: 课程编号列表
-	 * @return java.util.List<java.util.Map<java.lang.String,java.lang.String>>
 	 */
-	List<Map<String,String>> findMusicGroupSettlementTypeByCourse(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+	List<Map<String, String>> findMusicGroupSettlementTypeByCourse(@Param("courseScheduleIds") List<Long> courseScheduleIds);
 
 	/**
+	 * @param courseScheduleIds: 课程编号列表
+	 * @return java.util.List<java.util.Map < java.lang.String, java.lang.Integer>>
 	 * @describe 根据课程获取对应乐团的收费类型
 	 * @author Joburgess
 	 * @date 2019/11/3
-	 * @param courseScheduleIds: 课程编号列表
-	 * @return java.util.List<java.util.Map<java.lang.String,java.lang.Integer>>
 	 */
-	List<Map<String,Integer>> findMusicGroupChargeTypeByCourse(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+	List<Map<String, Integer>> findMusicGroupChargeTypeByCourse(@Param("courseScheduleIds") List<Long> courseScheduleIds);
 
 	/**
+	 * @param courseScheduleIds: 课程编号列表
+	 * @return java.util.List<java.util.Map < java.lang.Integer, java.math.BigDecimal>>
 	 * @describe 根据课程获取对应的教学点补贴
 	 * @author Joburgess
 	 * @date 2019/10/24
-	 * @param courseScheduleIds: 课程编号列表
-	 * @return java.util.List<java.util.Map<java.lang.Integer,java.math.BigDecimal>>
 	 */
-	List<Map<Integer,BigDecimal>> findCourseSubsidyByCourses(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+	List<Map<Integer, BigDecimal>> findCourseSubsidyByCourses(@Param("courseScheduleIds") List<Long> courseScheduleIds);
 
 	/**
 	 * 乐团详情--课酬调整--课程教师列表
+	 *
 	 * @param courseScheduleId
 	 * @return
 	 */
-    List<CourseScheduleTeachersDto> queryTeacherSalary(Integer courseScheduleId);
-
-    /**
-     * @describe 根据课程获取课程相关的老师课酬记录
-     * @author Joburgess
-     * @date 2019/11/3
-     * @param courseScheduleIds: 课程编号列表
-     * @return java.util.List<com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary>
-     */
-    List<CourseScheduleTeacherSalary> findByCourseSchedules(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+	List<CourseScheduleTeachersDto> queryTeacherSalary(Integer courseScheduleId);
 
 	/**
-	 * @describe 根据课程获取课程相关的老师未结算课酬记录
+	 * @param courseScheduleIds: 课程编号列表
+	 * @return java.util.List<com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary>
+	 * @describe 根据课程获取课程相关的老师课酬记录
 	 * @author Joburgess
 	 * @date 2019/11/3
+	 */
+	List<CourseScheduleTeacherSalary> findByCourseSchedules(@Param("courseScheduleIds") List<Long> courseScheduleIds);
+
+	/**
 	 * @param courseScheduleIds: 课程编号列表
 	 * @return java.util.List<com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary>
+	 * @describe 根据课程获取课程相关的老师未结算课酬记录
+	 * @author Joburgess
+	 * @date 2019/11/3
 	 */
 	List<CourseScheduleTeacherSalary> findByCourseSchedulesWithNoSettlement(@Param("courseScheduleIds") List<Long> courseScheduleIds);
 
 	/**
+	 * @param classGroupId: 班级编号
+	 * @return java.util.List<java.util.Map < java.lang.String, java.math.BigDecimal>>
 	 * @describe 统计班级上老师的先上课,线下课课酬
 	 * @author Joburgess
 	 * @date 2019/11/5
-	 * @param classGroupId: 班级编号
-	 * @return java.util.List<java.util.Map<java.lang.String,java.math.BigDecimal>>
 	 */
 	List<Map<String, BigDecimal>> countTeacherOnlineOfflineSalaryByClass(@Param("classGroupId") Integer classGroupId);
 
 	/**
 	 * count教师薪酬
+	 *
 	 * @param params
 	 * @return
 	 */
@@ -161,8 +167,11 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 
 	/**
 	 * query教师薪酬
+	 *
 	 * @param params
 	 * @return
 	 */
 	List<TeacherSalaryDto> querySalaries(Map<String, Object> params);
+
+	List<CourseScheduleTeacherSalary> findCourseScheduleTeacherSalaryByMusicGroupId(@Param("musicGroupId") String musicGroupId, @Param("groupType") GroupType groupType);
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/ClassGroupService.java

@@ -333,4 +333,11 @@ public interface ClassGroupService extends BaseService<Integer, ClassGroup> {
      * @return
      */
     Boolean addImGroup(ClassGroup classGroup,List<Integer> userIds);
+
+    /**
+     * 检测是否设置课酬
+     * @param musicGroupId
+     * @return
+     */
+    Boolean checkSetSalary(String musicGroupId);
 }

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

@@ -1745,4 +1745,13 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         imFeignService.groupCreate(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
         return true;
     }
+
+    @Override
+    public Boolean checkSetSalary(String musicGroupId) {
+        List<CourseScheduleTeacherSalary> courseScheduleTeacherSalary = courseScheduleTeacherSalaryDao.findCourseScheduleTeacherSalaryByMusicGroupId(musicGroupId, GroupType.MUSIC);
+        if(courseScheduleTeacherSalary != null && courseScheduleTeacherSalary.size() > 0){
+            return true;
+        }
+        return false;
+    }
 }

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

@@ -442,7 +442,7 @@
         WHERE
           cs.class_date_ = DATE_FORMAT(#{classDate},'%Y%m%d')
         AND cssp.user_id_ = #{studentId}
-        <if test="quitClassGroupIds.size()>0">
+        <if test="quitClassGroupIds != null and quitClassGroupIds.size()>0">
             AND cssp.class_group_id_ NOT IN
             <foreach collection="quitClassGroupIds" item="quitClassGroupId" open="(" close=")" separator=",">
                 #{quitClassGroupId}

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml

@@ -330,4 +330,8 @@
 				#{userId}
 			</foreach>
 	</update>
+
+	<select id="findCourseScheduleTeacherSalaryByMusicGroupId" resultMap="CourseScheduleTeacherSalary">
+		SELECT * FROM course_schedule_teacher_salary WHERE music_group_id_=#{musicGroupId} AND group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+	</select>
 </mapper>

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

@@ -179,7 +179,7 @@ public class ClassGroupController extends BaseController {
     @PostMapping("/setClassGroupTeacherSalary")
     @PreAuthorize("@pcs.hasPermissions('classGroup/setClassGroupTeacherSalary')")
     @ApiParam(value = "乐团班级老师<包含相应课酬>json", required = true)
-    public Object setClassGroupTeacherSalary(@RequestBody List<ClassGroupTeacherMapper> classGroupTeacherMapperList) throws Exception {
+    public HttpResponseResult setClassGroupTeacherSalary(@RequestBody List<ClassGroupTeacherMapper> classGroupTeacherMapperList) throws Exception {
         if (classGroupTeacherMapperList.size() <= 0) {
             return failed("参数不合法");
         }
@@ -235,4 +235,13 @@ public class ClassGroupController extends BaseController {
         return succeed(classGroupService.getClassGroupAndTeacherByType(musicGroupId,type));
     }
 
+    @ApiOperation(value = "查询是否设置课酬")
+    @GetMapping("/checkSetSalary")
+    @PreAuthorize("@pcs.hasPermissions('classGroup/checkSetSalary')")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "musicGroupId", value = "乐团id", required = true, dataType = "string")
+    })
+    public HttpResponseResult checkSetSalary(String musicGroupId){
+        return succeed(classGroupService.checkSetSalary(musicGroupId));
+    }
 }