Przeglądaj źródła

进行中加学员如果学员已存在,报错

zouxuan 4 lat temu
rodzic
commit
082e2f22e8

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupStudentMapperDao.java

@@ -406,4 +406,11 @@ public interface ClassGroupStudentMapperDao extends BaseDAO<Long, ClassGroupStud
      * @return
      */
     List<StudentEduTeacherDto> getStudentEducationalTeachers(@Param("studentIds") List<Integer> studentIds);
+
+    /**
+     * 是否在指定的班级
+     * @param classGroupIdListStr
+     * @return
+     */
+    Boolean existByClassGroupIds(@Param("classGroupIdListStr") String classGroupIdListStr, @Param("studentId") Integer studentId);
 }

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

@@ -1148,6 +1148,11 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                                                             String batchNo,
 			List<MusicGroupPaymentCalenderCourseSettings> musicGroupPaymentCalenderCourseSettingsList) {
 
+        //如果学员已经在某些班级,
+        Boolean isExistClassGroup = classGroupStudentMapperDao.existByClassGroupIds(classGroupIdListStr,studentId);
+        if(isExistClassGroup){
+            throw new BizException("操作失败:学员已存在");
+        }
 		List<ClassGroup> classGroupList = classGroupDao.findClassGroupByIds(classGroupIdListStr);
 		if (classGroupList == null || classGroupList.size() == 0) {
 			throw new BizException("班级查询失败");

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

@@ -554,4 +554,8 @@
         ) t
         LEFT JOIN sys_user su ON t.educational_teacher_id_=su.id_
     </select>
+    <select id="existByClassGroupIds" resultType="java.lang.Boolean">
+        SELECT COUNT(0) FROM class_group_student_mapper
+        WHERE FIND_IN_SET(class_group_id_,#{classGroupIdListStr}) AND user_id_ = #{studentId} AND status_ = 'NORMAL'
+    </select>
 </mapper>