Explorar o código

教师删除校验

chenw %!s(int64=6) %!d(string=hai) anos
pai
achega
8993c2d51f

+ 10 - 7
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/basic/service/impl/TeacherServiceImpl.java

@@ -164,12 +164,10 @@ public class TeacherServiceImpl implements TeacherService{
         if (null == id || "0".equals(id)) {
             return;
         }
-        List<String> check = null;
         //教师检测
-        check = sysTeacherMapper.checkTeacher(id);
-        if (check != null) {
-            String.join("|", check);
-            throw new BizException(BizExceptionCode.TEACHERS_EXISTS_CLASS.getCode(), String.format(BizExceptionCode.TEACHERS_EXISTS_CLASS.getMessage(), String.join("|", check)));
+        int count = sysTeacherMapper.checkTeacher(id);
+        if (count > 0) {
+            throw new BizException(BizExceptionCode.EXISTS_TEACHER_CLASS);
         }
         sysTeacherMapper.deleteByPrimaryKey(id);
         sysTeacherMapper.deleteRelation(id);
@@ -181,9 +179,14 @@ public class TeacherServiceImpl implements TeacherService{
                 baseDTOs.getBaseDTOs().size() == 0) {
             return;
         }
-
+        StringBuilder sb = new StringBuilder();
         for (DocBaseDTO base : baseDTOs.getBaseDTOs()) {
-            delete(base.getId());
+            try {
+                delete(base.getId());
+            }catch (Exception e){
+                sb.append(sysTeacherMapper.selectByPrimaryKey(base.getId()).getTeacher_name() + "|");
+            }
         }
+        throw new BizException(BizExceptionCode.TEACHERS_EXISTS_CLASS.getCode(), String.format(BizExceptionCode.TEACHERS_EXISTS_CLASS.getMessage(), sb.substring(0, sb.length() - 1)));
     }
 }

+ 1 - 1
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/mapper/SysTeacherMapper.java

@@ -39,5 +39,5 @@ public interface SysTeacherMapper {
 
     SysTeacher selectNumberByKey(String teacher_number);
 
-    List<String> checkTeacher(Long id);
+    int checkTeacher(Long id);
 }

+ 2 - 2
applications/school/school-server/src/main/resources/mapper/SysTeacherMapper.xml

@@ -395,7 +395,7 @@ where sys_teacher_clazz.teacher_id=#{id}
     where teacher_number = #{teacher_number,jdbcType=VARCHAR}
   </select>
 
-  <select id="checkTeacher" parameterType="long" resultType="List">
-    select teacher_name from sys_teacher_clazz where  teacher_id= #{id}
+  <select id="checkTeacher" parameterType="long" resultType="int">
+    select count(*) from sys_teacher_clazz where  teacher_id= #{id}
   </select>
 </mapper>