Browse Source

小学中学判断能否报名

fllmoyu 5 years ago
parent
commit
78906be6e3

+ 97 - 21
web/src/main/java/com/jpsoft/campus/modules/mobile/controller/EnrollControlApiController.java

@@ -19,10 +19,7 @@ import org.springframework.web.bind.annotation.RequestAttribute;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @author 墨鱼_mo
@@ -40,7 +37,6 @@ public class EnrollControlApiController {
     private SchoolInfoService schoolInfoService;
 
 
-
     @PostMapping("enableEnroll")
     @ApiOperation(value = "验证能否报名")
     @ApiImplicitParams({
@@ -50,45 +46,125 @@ public class EnrollControlApiController {
             @ApiImplicitParam(name = "token", value = "令牌", paramType = "query"),
             @ApiImplicitParam(name = "subject", value = "目标(不传)", paramType = "query")
     })
-    public MessageResult<Boolean> enableEnroll(String applicationId,String schoolType,String studentType,String token, @RequestAttribute String subject){
+    public MessageResult<Boolean> enableEnroll(String applicationId, String schoolType, String studentType, String token, @RequestAttribute String subject) {
 
         MessageResult<Boolean> messageResult = new MessageResult<>();
 
         boolean result = true;
         try {
 
-            if (StringUtils.isBlank(applicationId)){
+            if (StringUtils.isBlank(applicationId)) {
+                List<SchoolInfo> schoolInfoList = schoolInfoService.findByEnrollmentType(schoolType);
 
-                List<EnrollControl> enrollControls = enrollControlService.findBySchoolTypeAndStudentType(schoolType,studentType);
-             //   List<SchoolInfo> schoolList = schoolInfoService.findActiveSchoolByEnrollmentType(studentType,schoolType);
+                if (StringUtils.isNotBlank(studentType)) {
+                    List<EnrollControl> enrollControls = enrollControlService.findBySchoolTypeAndStudentType(schoolType, studentType);
+                    //   List<SchoolInfo> schoolList = schoolInfoService.findActiveSchoolByEnrollmentType(studentType,schoolType);
 
-                List<SchoolInfo> schoolInfoList = schoolInfoService.findByEnrollmentType(schoolType);
-                int i = 0;
-                if (enrollControls.size() == schoolInfoList.size()){
-                    for (EnrollControl enrollControl : enrollControls){
-                        if (enrollControl.getEndTime().compareTo(new Date()) <0){
-                            i++;
+
+                    int i = 0;
+                    if (enrollControls.size() == schoolInfoList.size()) {
+                        for (EnrollControl enrollControl : enrollControls) {
+                            if (enrollControl.getEndTime().compareTo(new Date()) < 0) {
+                                i++;
+                            }
+                        }
+
+                        if (i == schoolInfoList.size()) {
+                            throw new Exception(studentType + "类学生报名通道已全部关闭");
                         }
+
+
                     }
 
-                    if (i == schoolInfoList.size()){
-                        throw new Exception(studentType+"类学生报名通道已全部关闭");
+                }/*else {
+
+                    List<String> studentTypeList = new ArrayList<>();
+                    studentTypeList.add("A");
+                    studentTypeList.add("B");
+                    studentTypeList.add("C");
+                    if ("2".equals(schoolType)){
+                        studentTypeList.add("D");
+                        studentTypeList.add("E");
                     }
 
+                    for (String type : studentTypeList){
+                        List<EnrollControl> enrollControls = enrollControlService.findBySchoolTypeAndStudentType(schoolType, studentType);
+                    }
 
-                }
-            }
 
 
 
+                }*/
+            }
 
 
             messageResult.setCode(200);
             messageResult.setData(result);
             messageResult.setResult(true);
+        } catch (Exception ex) {
+            log.error(ex.getMessage(), ex);
+
+            messageResult.setData(false);
+            messageResult.setCode(500);
+            messageResult.setResult(false);
+            messageResult.setMessage(ex.getMessage());
         }
-        catch (Exception ex){
-            log.error(ex.getMessage(),ex);
+
+        return messageResult;
+    }
+
+    @PostMapping("schoolTypeEnableEnroll")
+    @ApiOperation(value = "验证小学中学能否报名")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "schoolType", value = "学校类型(1:小学,2:中学)", required = true, paramType = "query"),
+            @ApiImplicitParam(name = "token", value = "令牌", paramType = "query"),
+            @ApiImplicitParam(name = "subject", value = "目标(不传)", paramType = "query")
+    })
+    public MessageResult<Boolean> schoolTypeEnableEnroll(String schoolType, String token, @RequestAttribute String subject) {
+
+        MessageResult<Boolean> messageResult = new MessageResult<>();
+
+        boolean result = true;
+        try {
+
+
+                List<SchoolInfo> schoolInfoList = schoolInfoService.findByEnrollmentType(schoolType);
+
+            List<String> studentTypeList = new ArrayList<>();
+            studentTypeList.add("A");
+            studentTypeList.add("B");
+            studentTypeList.add("C");
+            if ("2".equals(schoolType)){
+                studentTypeList.add("D");
+                studentTypeList.add("E");
+            }
+
+            int i = 0;
+            for (String type : studentTypeList){
+                List<EnrollControl> enrollControls = enrollControlService.findBySchoolTypeAndStudentType(schoolType, type);
+
+                if (enrollControls.size() == schoolInfoList.size()) {
+                    for (EnrollControl enrollControl : enrollControls) {
+                        if (enrollControl.getEndTime().compareTo(new Date()) < 0) {
+                            i++;
+                        }
+                    }
+
+                }else {
+                    break;
+                }
+
+            }
+            if (i == schoolInfoList.size()*studentTypeList.size()){
+                result = false;
+            }
+
+
+            messageResult.setCode(200);
+            messageResult.setData(result);
+            messageResult.setResult(true);
+        } catch (Exception ex) {
+            log.error(ex.getMessage(), ex);
 
             messageResult.setData(false);
             messageResult.setCode(500);