Ver Fonte

Merge remote-tracking branch 'origin/master'

Joburgess há 4 anos atrás
pai
commit
3ea6a606bc

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

@@ -736,6 +736,7 @@ public interface ClassGroupDao extends BaseDAO<Integer, ClassGroup> {
 
     /**
      * 获取班级列表
+     *
      * @param practiceGroupId
      * @param groupType
      * @return
@@ -744,10 +745,19 @@ public interface ClassGroupDao extends BaseDAO<Integer, ClassGroup> {
 
     /**
      * 根据班级编号冻结所选班级
-     * @author zouxuan
+     *
      * @param classGroupIds
      * @param lockFlag
      * @return
+     * @author zouxuan
      */
     int batchUpdateLockByClassGroupIds(@Param("classGroupIds") List<Integer> classGroupIds, @Param("lockFlag") int lockFlag);
+
+
+    /**
+     * 获取乐团某声部基础技能班或基础技能提高班数量
+     *
+     * @return
+     */
+    int getMusicGroupHighClassNumBySubject(@Param("musicGroupId") String musicGroupId, @Param("subjectIds") String subjectIds);
 }

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java

@@ -380,8 +380,16 @@ public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistratio
 
     /**
      * 获取乐团未交费的学生
+     *
      * @param musicGroupId
      * @return
      */
     List<StudentRegistration> getNoPaymentStudent(@Param("musicGroupId") String musicGroupId);
+
+    /**
+     * 获取乐团声部学生数量
+     *
+     * @return
+     */
+    int getMusicGroupSubjectNum(@Param("musicGroupId") String musicGroupId, @Param("subjectIds") String subjectIds);
 }

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

@@ -216,6 +216,13 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         if (classGroup.getGroupType() == null) {
             throw new BizException("课程组类型不能为空");
         }
+
+        //基础技能班和线上基础技能班,可分班原则为声部人数/6向上取整
+//        if(classGroup.getType().equals(ClassGroupTypeEnum.HIGH_ONLINE)||classGroup.getType().equals(ClassGroupTypeEnum.HIGH)){
+//            int classGroupNum = classGroupDao.getMusicGroupHighClassNumBySubject(classGroup.getMusicGroupId(), classGroup.getSubjectIdList());
+//            int musicGroupSubjectNum = studentRegistrationDao.getMusicGroupSubjectNum(classGroup.getMusicGroupId(), classGroup.getSubjectIdList());
+//        }
+
         String userIds = classGroup.getUserIds();
 
         Set<String> userIdStrSet = new HashSet<String>();

+ 9 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupStudentMapperServiceImpl.java

@@ -393,16 +393,15 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
 
         List<ClassGroupStudentMapper> classGroupStudents = classGroupStudentMapperDao.findAllByClassGroup(classGroupId);
 
-        if (classGroupStudents.size() <= 0 && (classGroup.getType().equals(ClassGroupTypeEnum.HIGH) ||
-                classGroup.getType().equals(ClassGroupTypeEnum.HIGH_ONLINE))) {
-            String errTips = classGroup.getType().equals(ClassGroupTypeEnum.HIGH_ONLINE) ? "线上基础技能班" : "基础技能班";
-            if (studentIds.size() < 3) {
-                throw new BizException(errTips + "人数不能小于3人");
-            }
-            if (studentIds.size() > 6) {
-                throw new BizException(errTips + "人数不能大于6人");
-            }
-        }
+        //线上基础技能班,原始分班人数不能小于3人大于6人
+//        if (classGroupStudents.size() <= 0 && classGroup.getType().equals(ClassGroupTypeEnum.HIGH_ONLINE)) {
+//            if (studentIds.size() < 3) {
+//                throw new BizException("线上基础技能班人数不能小于3人");
+//            }
+//            if (studentIds.size() > 6) {
+//                throw new BizException("线上基础技能班人数不能大于6人");
+//            }
+//        }
 
         Set<Integer> allStudentIds = new HashSet<>();
         Set<Integer> oldStudentIds = new HashSet<>();

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

@@ -316,7 +316,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 		if (musicGroupPaymentCalenderDetailList.size() > 0) {
 			musicGroupPaymentCalenderDetailDao.batchInsert(musicGroupPaymentCalenderDetailList);
 			for(MusicGroupPaymentCalenderDetail cd : musicGroupPaymentCalenderDetailList){
-				userMap.put(cd.getUserId(), musicGroupPaymentCalenderDetail);
+				userMap.put(cd.getUserId(), cd);
 			}
 		}
 		//更新预计缴费人数
@@ -416,7 +416,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 			if (musicGroupPaymentCalenderDetailList.size() > 0) {
 				musicGroupPaymentCalenderDetailDao.batchInsert(musicGroupPaymentCalenderDetailList);
 				for(MusicGroupPaymentCalenderDetail cd : musicGroupPaymentCalenderDetailList){
-					userMap.put(cd.getUserId(), musicGroupPaymentCalenderDetail);
+					userMap.put(cd.getUserId(), cd);
 				}
 			}
 			//更新预计缴费人数

+ 7 - 0
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -1325,4 +1325,11 @@
             AND cg.group_type_ = #{groupType}
         </if>
     </select>
+
+    <!-- 获取乐团某声部基础技能班或基础技能提高班数量 -->
+    <select id="getMusicGroupHighClassNumBySubject" resultType="int">
+        SELECT COUNT(*) FROM class_group WHERE music_group_id_=#{musicGroupId}
+        AND type_ IN ('HIGH','HIGH_ONLINE') AND del_flag_ = '0'
+        AND INTE_ARRAY(subject_id_list_,#{subjectIds})
+    </select>
 </mapper>

+ 6 - 0
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -702,4 +702,10 @@
     <select id="getNoPaymentStudent" resultMap="StudentRegistration">
         SELECT * FROM student_registration WHERE music_group_id_ = #{musicGroupId} AND payment_status_ IN (0,1)
     </select>
+
+    <!-- 获取乐团声部学生数量 -->
+    <select id="getMusicGroupSubjectNum" resultType="int">
+        SELECT COUNT(*) FROM student_registration WHERE music_group_id_=#{musicGroupId}
+        AND INTE_ARRAY(subject_id_,#{subjectIds}) AND music_group_status_ = 'NORMAL'
+    </select>
 </mapper>

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

@@ -156,9 +156,7 @@
             <if test="lectureNum != null">
                 lecture_num_ = #{lectureNum},
             </if>
-            <if test="memo != null">
                 memo_ = #{memo},
-            </if>
             <if test="graduateSchool != null">
                 graduate_school_ = #{graduateSchool},
             </if>
@@ -174,9 +172,7 @@
             <if test="entryDate != null">
                 entry_date_ = #{entryDate},
             </if>
-            <if test="demissionDate != null">
                 demission_date_ = #{demissionDate},
-            </if>
             <if test="jobType != null">
                 job_type_ = #{jobType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
             </if>
@@ -295,7 +291,7 @@
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="Teacher" parameterType="map">
         SELECT t.id_,su.real_name_,su.lock_flag_,t.subject_id_,su.phone_,t.organ_id_ teacher_organ_id_,t.organ_id_,t.is_support_extra_practice_lesson_,
-        t.job_nature_,t.is_probation_period_,t.memo_,GROUP_CONCAT(s.name_) subject_name_,su.del_flag_
+        t.job_nature_,t.demission_date_,t.is_probation_period_,t.memo_,GROUP_CONCAT(s.name_) subject_name_,su.del_flag_
         FROM teacher t
         LEFT JOIN sys_user su ON t.id_ = su.id_
         LEFT JOIN `subject` s ON FIND_IN_SET(s.id_,t.subject_id_)