Browse Source

课表导入科目校验

chenw 6 years ago
parent
commit
a8a99e733c

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

@@ -112,21 +112,18 @@ public class CurriculumServiceImpl implements CurriculumService {
     private void convertToId(CurriculumDetailDTO curriculumDetailDTO, SubjectDO subjectDO) {
         if (curriculumDetailDTO.getMon().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setMon(subjectDO.getSubjectId().toString());
-        }
-        if (curriculumDetailDTO.getTues().equals(subjectDO.getSubjectName())){
+        }else if (curriculumDetailDTO.getTues().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setTues(subjectDO.getSubjectId().toString());
-        }
-        if (curriculumDetailDTO.getThur().equals(subjectDO.getSubjectName())){
+        }else if (curriculumDetailDTO.getThur().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setThur(subjectDO.getSubjectId().toString());
-        }
-        if (curriculumDetailDTO.getWed().equals(subjectDO.getSubjectName())){
+        }else if (curriculumDetailDTO.getWed().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setWed(subjectDO.getSubjectId().toString());
-        }
-        if (curriculumDetailDTO.getFri().equals(subjectDO.getSubjectName())){
+        }else if (curriculumDetailDTO.getFri().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setFri(subjectDO.getSubjectId().toString());
-        }
-        if (curriculumDetailDTO.getSat().equals(subjectDO.getSubjectName())){
+        }else if (curriculumDetailDTO.getSat().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setSat(subjectDO.getSubjectId().toString());
+        }else {
+            throw new BizException(BizExceptionCode.NOT_EXISTS_SUBJECT.getCode(), String.format(BizExceptionCode.NOT_EXISTS_SUBJECT.getMessage(), subjectDO.getSubjectName()));
         }
     }
 
@@ -202,6 +199,7 @@ public class CurriculumServiceImpl implements CurriculumService {
     }
 
     @Override
+    @Transactional
     public void saveToFormal(Integer id, boolean update){
         if (null == id || "0".equals(id)) {
             return;
@@ -243,10 +241,12 @@ public class CurriculumServiceImpl implements CurriculumService {
                         //1. 替换课程名称为ID
                         List<SubjectDO> subjectDOList = curriculumMapper.selectSubject(schoolId);
                         Iterator<CurriculumDetailDTO> detailIterator = curriculumDetailDTOList.iterator();
+                        int detno = 1;
                         while (detailIterator.hasNext()){
                             CurriculumDetailDTO curriculumDetailDTO = detailIterator.next();
                             curriculumDetailDTO.setmId(mainId);
                             curriculumDetailDTO.setStatus(1);
+                            curriculumDetailDTO.setLessons(detno++);
                             curriculumDetailDTO.setSchoolId(schoolId);
                             curriculumDetailDTO.setClazzId(clazzId);
                             subjectDOList.forEach(subjectDO -> { convertToId(curriculumDetailDTO, subjectDO); });

+ 2 - 1
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/exception/BizExceptionCode.java

@@ -27,7 +27,8 @@ public enum BizExceptionCode implements BaseExceptionCode {
     REPEAT_GRADE_NAME(600001, "年级名称重复"),
     REPEAT_CLASS_NAME(600002, "班级名称重复"),
     REPEAT_STUDENT_NUMBER(600003, "学生学号不可重复"),
-    EFFECTIVE_CLASS_DATA(600004, "无法删除有学生的班级");
+    EFFECTIVE_CLASS_DATA(600004, "无法删除有学生的班级"),
+    NOT_EXISTS_SUBJECT(60005, "科目<u>%s</u>不存在");
 
 
     private int code;