Sfoglia il codice sorgente

1、乐团课新增排课教师课酬计算逻辑调整
2、陪练课接口
3、陪练课指派教师广东分部特殊处理

Joburgess 5 anni fa
parent
commit
e45fb0c5a3

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java

@@ -79,11 +79,11 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
      * @author Joburgess
      * @date 2020/2/2
      * @param organId: 分部编号
-     * @param subjectId: 声部编号
+     * @param subjectIds: 声部编号列表
      * @return java.util.List<com.ym.mec.biz.dal.dto.TeacherBasicDto>
      */
     List<TeacherBasicDto> findTeaTeachersByOrganAndSubject(@Param("organId") Integer organId,
-                                                           @Param("subjectId") Integer subjectId);
+                                                           @Param("subjectIds") String subjectIds);
 
     /**
      * @describe 根据部门和声部获取教师列表

+ 15 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -78,6 +78,8 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
     //广州分部编号
     private static final Integer GUANGZHOU_ORGAN_ID=3;
 
+    private static Map<Integer,String> subjectSubjectsMap=new HashMap<>();
+
     static{
         schoolSubjectTeachersMap=new HashMap<>();
         Map<Integer,List<Integer>> subjectTeachersMap1=new HashMap<>();
@@ -118,6 +120,17 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         for (Integer schoolId : schoolIds3) {
             schoolSubjectTeachersMap.put(schoolId,subjectTeachersMap3);
         }
+
+        subjectSubjectsMap.put(2,"2");
+        subjectSubjectsMap.put(4,"4,5");
+        subjectSubjectsMap.put(5,"4,5");
+        subjectSubjectsMap.put(12,"12,13");
+        subjectSubjectsMap.put(13,"12,13");
+        subjectSubjectsMap.put(14,"14,15,16,17");
+        subjectSubjectsMap.put(15,"14,15,16,17");
+        subjectSubjectsMap.put(16,"14,15,16,17");
+        subjectSubjectsMap.put(17,"14,15,16,17");
+        subjectSubjectsMap.put(23,"23");
     }
 
     @Override
@@ -151,7 +164,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             }
         }
 
-        List<TeacherBasicDto> organAndSubjectTeachers = teacherDao.findTeaTeachersByOrganAndSubject(sysUser.getOrganId(), practiceGroup.getSubjectId());
+        List<TeacherBasicDto> organAndSubjectTeachers = teacherDao.findTeaTeachersByOrganAndSubject(sysUser.getOrganId(), subjectSubjectsMap.get(practiceGroup.getSubjectId()));
         if (CollectionUtils.isEmpty(organAndSubjectTeachers)) {
             throw new BizException("未找到合适教师");
         }
@@ -347,7 +360,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             throw new BizException("未找到用户分部属性");
         }
         Map result = new HashMap();
-        List<TeacherBasicDto> organAndSubjectTeachers = teacherDao.findTeaTeachersByOrganAndSubject(sysUser.getOrganId(), subjectId);
+        List<TeacherBasicDto> organAndSubjectTeachers = teacherDao.findTeaTeachersByOrganAndSubject(sysUser.getOrganId(), subjectSubjectsMap.get(subjectId));
         if (CollectionUtils.isEmpty(organAndSubjectTeachers)) {
             result.put("teacherFreeDates",new ArrayList<>());
             return result;

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

@@ -300,7 +300,7 @@
             teacher t
             LEFT JOIN sys_user su ON t.id_ = su.id_
         WHERE
-            FIND_IN_SET(#{subjectId},t.subject_id_)
+            INTE_ARRAY(#{subjectIds},t.subject_id_)
             AND (t.organ_id_=#{organId} OR FIND_IN_SET(#{organId},t.flow_organ_range_))
     </select>
     <select id="findTeacherByOrganAndSubject" resultMap="TeacherBasicDto">