Sfoglia il codice sorgente

年级可以传多个

liujc 2 anni fa
parent
commit
c57e1186b4

+ 34 - 15
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/FivePlusGradeEnum.java

@@ -1,6 +1,12 @@
 package com.ym.mec.biz.dal.enums;
 
 import com.ym.mec.common.enums.BaseEnum;
+import com.ym.mec.common.exception.BizException;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
 
 public enum FivePlusGradeEnum implements BaseEnum<Integer, FivePlusGradeEnum> {
 	GRADE1(1, "一年级"),
@@ -44,23 +50,36 @@ public enum FivePlusGradeEnum implements BaseEnum<Integer, FivePlusGradeEnum> {
 	}
 
 
-    public static FivePlusGradeEnum[] getArray(EGroupGradeType gradeType) {
-        if (gradeType == null) {
+    public static FivePlusGradeEnum[] getArray(String gradeType) {
+        if (StringUtils.isBlank(gradeType)) {
             return FivePlusGradeEnum.values();
         }
-        switch (gradeType) {
-            case PRIMARY:
-                return new FivePlusGradeEnum[] {GRADE1, GRADE2, GRADE3, GRADE4, GRADE5};
-            case MIDDLE:
-                return new FivePlusGradeEnum[] {GRADE6,GRADE7, GRADE8, GRADE9};
-            case HIGH:
-                return new FivePlusGradeEnum[] {GRADE10, GRADE11, GRADE12};
-            case MIXED:
-                return  new FivePlusGradeEnum[] {GRADE1, GRADE2, GRADE3, GRADE4, GRADE5, GRADE6, GRADE7, GRADE8, GRADE9};
-            default:
-                return FivePlusGradeEnum.values();
-        }
+        Set<FivePlusGradeEnum> list = new HashSet<>();
+        for (String s : gradeType.split(",")) {
+            EGroupGradeType o = EGroupGradeType.get(s);
+            if (o == null) {
+                throw new BizException("gradeType参数错误");
+            }
+            switch (o) {
+                case PRIMARY:
+                    list.addAll(Arrays.asList(GRADE1, GRADE2, GRADE3, GRADE4, GRADE5));
+                    break;
+                case MIDDLE:
+                    list.addAll(Arrays.asList(GRADE6,GRADE7, GRADE8, GRADE9));
+                    break;
+                case HIGH:
+                    list.addAll(Arrays.asList(GRADE10, GRADE11, GRADE12));
+                    break;
+                case MIXED:
+                    list.addAll(Arrays.asList(GRADE1, GRADE2, GRADE3, GRADE4, GRADE5, GRADE6, GRADE7, GRADE8, GRADE9));
+
+                    break;
+                default:
+                    list.addAll(Arrays.asList(FivePlusGradeEnum.values()));
+            }
 
+        }
+        return list.toArray(new FivePlusGradeEnum[0]);
     }
 
-}
+    }

+ 31 - 12
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SixPlusGradeEnum.java

@@ -1,6 +1,10 @@
 package com.ym.mec.biz.dal.enums;
 
 import com.ym.mec.common.enums.BaseEnum;
+import com.ym.mec.common.exception.BizException;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.*;
 
 public enum SixPlusGradeEnum implements BaseEnum<Integer, SixPlusGradeEnum> {
     GRADE1(1, "一年级"),
@@ -43,22 +47,37 @@ public enum SixPlusGradeEnum implements BaseEnum<Integer, SixPlusGradeEnum> {
         return null;
     }
 
-    public static SixPlusGradeEnum[] getArray(EGroupGradeType gradeType) {
-        if (gradeType == null) {
+    public static SixPlusGradeEnum[] getArray(String gradeType) {
+        if (StringUtils.isBlank(gradeType)) {
             return SixPlusGradeEnum.values();
         }
-        switch (gradeType) {
-            case PRIMARY:
-                return new SixPlusGradeEnum[] {GRADE1, GRADE2, GRADE3, GRADE4, GRADE5, GRADE6};
-            case MIDDLE:
-                return new SixPlusGradeEnum[] {GRADE7, GRADE8, GRADE9};
+        Set<SixPlusGradeEnum> list = new HashSet<>();
+        for (String s : gradeType.split(",")) {
+            EGroupGradeType o = EGroupGradeType.get(s);
+            if (o == null) {
+                throw new BizException("gradeType参数错误");
+            }
+            switch (o) {
+                case PRIMARY:
+                    list.addAll(Arrays.asList(GRADE1, GRADE2, GRADE3, GRADE4, GRADE5, GRADE6));
+                    break;
+                case MIDDLE:
+                    list.addAll(Arrays.asList(GRADE7, GRADE8, GRADE9));
+                    break;
                 case HIGH:
-                return new SixPlusGradeEnum[] {GRADE10, GRADE11, GRADE12};
-            case MIXED:
-                return  new SixPlusGradeEnum[] {GRADE1, GRADE2, GRADE3, GRADE4, GRADE5, GRADE6, GRADE7, GRADE8, GRADE9};
-            default:
-                return SixPlusGradeEnum.values();
+                    list.addAll(Arrays.asList(GRADE10, GRADE11, GRADE12));
+                    break;
+                case MIXED:
+                    list.addAll(Arrays.asList(GRADE1, GRADE2, GRADE3, GRADE4, GRADE5, GRADE6, GRADE7, GRADE8, GRADE9));
+
+                    break;
+                default:
+                    list.addAll(Arrays.asList(SixPlusGradeEnum.values()));
+            }
+
         }
+        return list.toArray(new SixPlusGradeEnum[0]);
+
 
     }
 

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/OrganizationService.java

@@ -102,5 +102,5 @@ public interface OrganizationService extends BaseService<Integer, Organization>
      * @param organId 分部id
      * @param gradeType 年级类型
      */
-    Map<Integer, String> getGradeList(Integer organId, EGroupGradeType gradeType);
+    Map<Integer, String> getGradeList(Integer organId, String gradeType);
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrganizationServiceImpl.java

@@ -245,7 +245,7 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
      * @param gradeType 年级类型
      */
     @Override
-    public Map<Integer, String> getGradeList(Integer organId, EGroupGradeType gradeType) {
+    public Map<Integer, String> getGradeList(Integer organId, String gradeType) {
         Organization organization = organizationDao.get(organId);
         Map<Integer, String> gradeMap = new HashMap<>();
 

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/OrganizationController.java

@@ -79,7 +79,7 @@ public class OrganizationController extends BaseController {
     @GetMapping("/getGradeList")
 //    @PreAuthorize("@pcs.hasPermissions('organization/getGradeList')")
     @ApiParam(value = "分部编号", required = true)
-    public HttpResponseResult<Map<Integer,String>> getGradeList(Integer id,@ApiParam("年级分布") EGroupGradeType gradeType){
+    public HttpResponseResult<Map<Integer,String>> getGradeList(Integer id,@ApiParam("年级分布") String gradeType){
         return succeed(organizationService.getGradeList(id,gradeType));
     }
 }

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/education/EduMusicGroupRecordController.java

@@ -72,7 +72,7 @@ public class EduMusicGroupRecordController extends BaseController {
 
 		model.put("subject", studentRegistrationDao.countStudentWithSubjectByMusicGroupId(musicGroupId));
 		
-		model.put("gradeMap", organizationService.getGradeList(musicGroup.getOrganId(), EGroupGradeType.get(musicGroup.getGradeType())));
+		model.put("gradeMap", organizationService.getGradeList(musicGroup.getOrganId(), musicGroup.getGradeType()));
 		model.put("grade", studentRegistrationDao.countStudentWithGradeByMusicGroupId(musicGroupId));
 		model.put("teacher", classGroupDao.countTeacherByMusicGroupId(musicGroupId));