liu 10 months ago
parent
commit
97c3bb8081
27 changed files with 643 additions and 213 deletions
  1. 6 1
      src/main/java/com/template/api/WelcomeDormitoryControllerAPI.java
  2. 11 2
      src/main/java/com/template/api/WelcomeStudentControllerAPI.java
  3. 9 7
      src/main/java/com/template/controller/WelcomeBedController.java
  4. 3 3
      src/main/java/com/template/controller/WelcomeBuildController.java
  5. 160 97
      src/main/java/com/template/controller/WelcomeDormitoryController.java
  6. 129 16
      src/main/java/com/template/controller/WelcomeStudentController.java
  7. 8 1
      src/main/java/com/template/mapper/WelcomeBedMapper.java
  8. 1 0
      src/main/java/com/template/mapper/WelcomeBuildMapper.java
  9. 4 1
      src/main/java/com/template/mapper/WelcomeDormitoryMapper.java
  10. 6 1
      src/main/java/com/template/mapper/WelcomeStudentMapper.java
  11. 1 1
      src/main/java/com/template/model/pojo/WelcomeDormitory.java
  12. 4 0
      src/main/java/com/template/model/pojo/WelcomeStudent.java
  13. 3 0
      src/main/java/com/template/model/vo/StudentOverviewVo.java
  14. 4 0
      src/main/java/com/template/model/vo/StudentPageVo.java
  15. 7 2
      src/main/java/com/template/model/vo/StudentRegisterVo.java
  16. 1 1
      src/main/java/com/template/model/vo/WelcomeDormitoryVo.java
  17. 2 2
      src/main/java/com/template/services/WelcomeBedService.java
  18. 3 3
      src/main/java/com/template/services/WelcomeDormitoryService.java
  19. 10 2
      src/main/java/com/template/services/WelcomeStudentService.java
  20. 34 27
      src/main/java/com/template/services/impl/WelcomeBedServiceImpl.java
  21. 4 3
      src/main/java/com/template/services/impl/WelcomeBuildServiceImpl.java
  22. 18 16
      src/main/java/com/template/services/impl/WelcomeDormitoryServiceImpl.java
  23. 33 4
      src/main/java/com/template/services/impl/WelcomeStudentServiceImpl.java
  24. 91 2
      src/main/resources/mapper/template/WelcomeBedMapper.xml
  25. 12 1
      src/main/resources/mapper/template/WelcomeBuildMapper.xml
  26. 37 16
      src/main/resources/mapper/template/WelcomeDormitoryMapper.xml
  27. 42 4
      src/main/resources/mapper/template/WelcomeStudentMapper.xml

+ 6 - 1
src/main/java/com/template/api/WelcomeDormitoryControllerAPI.java

@@ -22,6 +22,7 @@ public interface WelcomeDormitoryControllerAPI {
     @ApiOperation(value = "删除寝室", notes = "删除寝室", httpMethod = "GET")
     CommonResult deleteDormitory(@RequestParam Integer dormitoryId);
 
+
     @PostMapping(value = "/updateDormitory")
     @ApiOperation(value = "修改寝室", notes = "修改寝室", httpMethod = "POST")
     CommonResult updateDormitory(@RequestBody WelcomeDormitory welcomeDormitory);
@@ -51,7 +52,6 @@ public interface WelcomeDormitoryControllerAPI {
     @ApiOperation(value = "寝室信息导出模板", notes = "寝室信息导出模板", httpMethod = "GET")
     CommonResult downloadDormitoryExcel();
 
-
     @GetMapping(value = "welcomeDormitoryExport")
     @ApiOperation(value = "导出寝室信息数据", notes = "导出寝室信息数据", httpMethod = "GET")
     void welcomeDormitoryExport(HttpServletResponse response, Integer schoolId,Integer buildId,Integer dormitoryId,String sex,Integer collegeId,Integer status,Integer retentionState,Integer accountId);
@@ -75,4 +75,9 @@ public interface WelcomeDormitoryControllerAPI {
     @GetMapping(value = "/saveBedDormitoryGroup")
     @ApiOperation(value = "添加床位宿舍分组", notes = "添加床位宿舍分组", httpMethod = "GET")
     CommonResult saveBedDormitoryGroup(Integer schoolId,Integer buildId,Integer accountId);
+
+    @GetMapping(value = "/getColleges")
+    @ApiOperation(value = "获取学院", notes = "获取学院", httpMethod = "GET")
+    CommonResult getColleges(@RequestParam Integer dormitoryId);
+
 }

+ 11 - 2
src/main/java/com/template/api/WelcomeStudentControllerAPI.java

@@ -1,5 +1,6 @@
 package com.template.api;
 
+import com.template.model.pojo.WelcomeStudent;
 import com.template.model.request.InfoCollectionRequest;
 import com.template.model.request.InsertStudentRequest;
 import com.template.model.request.RegisterRequest;
@@ -30,7 +31,7 @@ public interface WelcomeStudentControllerAPI {
 
     @GetMapping(value = "/queryPageStudents")
     @ApiOperation(value = "学生信息分页数据", notes = "学生信息分页数据", httpMethod = "GET")
-    CommonResult queryPageStudents(@RequestAttribute String userId,@RequestParam int currentPage, @RequestParam int pageCount, Integer collegeId, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus);
+    CommonResult queryPageStudents(@RequestAttribute String userId,@RequestParam int currentPage, @RequestParam int pageCount, Integer collegeId, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus,Integer isRegistered);
 
     @GetMapping(value = "/queryStudentDetail")
     @ApiOperation(value = "学生信息明细数据", notes = "学生信息明细数据", httpMethod = "GET")
@@ -63,7 +64,7 @@ public interface WelcomeStudentControllerAPI {
 
     @GetMapping(value = "/studentRegister")
     @ApiOperation(value = "新生报到情况", notes = "新生报到情况", httpMethod = "GET")
-    CommonResult studentRegister();
+    CommonResult studentRegister(Integer collegeId);
 
     @GetMapping(value = "/studentTraffic")
     @ApiOperation(value = "学生交通方式", notes = "学生交通方式", httpMethod = "GET")
@@ -84,4 +85,12 @@ public interface WelcomeStudentControllerAPI {
     @GetMapping(value = "/queryStudentInfo")
     @ApiOperation(value = "查询学生信息", notes = "查询学生信息", httpMethod = "GET")
     CommonResult queryStudentInfo(@RequestParam String admissNum);
+
+    @PostMapping(value = "/isRegistered")
+    @ApiOperation(value = "是否已报到", notes = "是否已报到", httpMethod = "POST")
+    CommonResult isRegistered(@RequestBody WelcomeStudent welcomeStudent);
+
+    @GetMapping(value = "/levelRegister")
+    @ApiOperation(value = "层次报到情况", notes = "层次报到情况", httpMethod = "GET")
+    CommonResult levelRegister();
 }

+ 9 - 7
src/main/java/com/template/controller/WelcomeBedController.java

@@ -212,17 +212,19 @@ public class WelcomeBedController implements WelcomeBedControllerAPI {
         //        当学院为空
         PageUtils<WelcomeBed> result = null;
         if (ObjectUtils.isEmpty(collegeId)) {
+            String collegeIds = "";
             WelcomeAccount account = welcomeAccountService.getById(accountId);
             if (ObjectUtils.isEmpty(account)) {
                 return CommonResult.fail("当前账号不存在,请重新登入");
             }
-            String aClassstrId = account.getCollegeId();
-            String[] split = aClassstrId.split(",");
-            List<String> collegeIds = new ArrayList<>();
-
-            for (String s : split) {
-                collegeIds.add(s);
-            }
+//            String aClassstrId = account.getCollegeId();
+//            String[] split = aClassstrId.split(",");
+//            List<String> collegeIds = new ArrayList<>();
+//
+//            for (String s : split) {
+//                collegeIds.add(s);
+//            }
+            collegeIds = account.getCollegeId();
             result = welcomeBedService.queryPageWelcomeBedsC(currentPage, pageCount, schoolId, buildId, dormitoryId, sex, isCheck, collegeIds, majorId, classstrId, retentionState);
         } else {
             result = welcomeBedService.queryPageWelcomeBeds(currentPage, pageCount, schoolId, buildId, dormitoryId, sex, isCheck, collegeId, majorId, classstrId, retentionState);

+ 3 - 3
src/main/java/com/template/controller/WelcomeBuildController.java

@@ -119,9 +119,9 @@ public class WelcomeBuildController implements WelcomeBuildControllerAPI {
 //        判断楼栋名称是否修改, 是的话需要修改宿舍喝床位表
         WelcomeBuild byId = welcomeBuildService.getById(welcomeBuild.getId());
         if (ObjectUtils.isNotEmpty(byId)) {
-            if (!byId.getBuild().equals(welcomeBuild.getBuild())) {
-                welcomeDormitoryService.updateBuild(welcomeBuild.getSchoolId(), byId.getId(), welcomeBuild.getBuild());
-                welcomeBedService.updateBuild(welcomeBuild.getSchoolId(), byId.getId(), welcomeBuild.getBuild());
+            if (!byId.getBuild().equals(welcomeBuild.getBuild()) || !byId.getSchoolId().equals(welcomeBuild.getSchoolId())) {
+                welcomeDormitoryService.updateBuild(welcomeBuild.getSchoolId(), byId.getId(), welcomeBuild.getBuild(),welcomeBuild.getSchool());
+                welcomeBedService.updateBuild(welcomeBuild.getSchoolId(), byId.getId(), welcomeBuild.getBuild(),welcomeBuild.getSchool());
             }
         }
 

+ 160 - 97
src/main/java/com/template/controller/WelcomeDormitoryController.java

@@ -24,6 +24,7 @@ import org.apache.poi.ss.usermodel.DataFormatter;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.util.StringUtil;
 import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
@@ -38,10 +39,7 @@ import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.InputStream;
 import java.text.ParseException;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -98,6 +96,8 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
 
         welcomeDormitory.setFreeBedNumber(welcomeDormitory.getBedNumber());
 
+//        将学院按数字大小排列
+
         boolean insertWd = welcomeDormitoryService.save(welcomeDormitory);
         if (!insertWd) {
             return CommonResult.fail("新增失败");
@@ -193,6 +193,19 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
         ArrayList<WelcomeBed> welcomeBeds = new ArrayList<>();
         //动态修改床位
 
+//        获取所属学院
+        String[] split = welcomeDormitory.getCollegeId().split(",");
+        String collegeId="";
+        if (ObjectUtils.isNotEmpty(split)) {
+            collegeId=split[0];
+
+        }
+        WelcomeOrg welcomeOrg = welcomeOrgService.getById(collegeId);
+        String college="";
+        if (ObjectUtils.isNotEmpty(welcomeOrg)) {
+            college=welcomeOrg.getName();
+        }
+
         if (beds != null && beds.size() > 0) {
 
             //动态生成床位
@@ -209,8 +222,8 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                     wb.setBuildId(welcomeDormitory.getBuildId());
                     wb.setDormitory(welcomeDormitory.getDormitory());
                     wb.setDormitoryId(welcomeDormitory.getId());
-                    wb.setCollege(welcomeDormitory.getCollege());
-                    wb.setCollegeId(welcomeDormitory.getCollegeId());
+                    wb.setCollege(college);
+                    wb.setCollegeId(Integer.valueOf(collegeId));
                     wb.setSex(welcomeDormitory.getSex());
                     welcomeBeds.add(wb);
                 } else {
@@ -222,8 +235,8 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                     welcomeInsert.setBuildId(welcomeDormitory.getBuildId());
                     welcomeInsert.setDormitory(welcomeDormitory.getDormitory());
                     welcomeInsert.setDormitoryId(welcomeDormitory.getId());
-                    welcomeInsert.setCollege(welcomeDormitory.getCollege());
-                    welcomeInsert.setCollegeId(welcomeDormitory.getCollegeId());
+                    welcomeInsert.setCollege(college);
+                    welcomeInsert.setCollegeId(Integer.valueOf(collegeId));
                     welcomeInsert.setSex(welcomeDormitory.getSex());
                     welcomeInsert.setIsCheck(0);
                     welcomeBeds.add(welcomeInsert);
@@ -241,8 +254,8 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                 welcomeBed.setBuildId(welcomeDormitory.getBuildId());
                 welcomeBed.setDormitory(welcomeDormitory.getDormitory());
                 welcomeBed.setDormitoryId(welcomeDormitory.getId());
-                welcomeBed.setCollege(welcomeDormitory.getCollege());
-                welcomeBed.setCollegeId(welcomeDormitory.getCollegeId());
+                welcomeBed.setCollege(college);
+                welcomeBed.setCollegeId(Integer.valueOf(collegeId));
                 welcomeBed.setSex(welcomeDormitory.getSex());
                 welcomeBed.setIsCheck(0);
                 welcomeBeds.add(welcomeBed);
@@ -260,24 +273,33 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
     }
 
     @Override
-    public CommonResult listDormitory(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer collegeId, Integer status, Integer retentionState,Integer accountId) {
+    public CommonResult listDormitory(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer collegeId, Integer status, Integer retentionState, Integer accountId) {
 
 //        当学院为空
-        PageUtils<WelcomeDormitoryVo> pageUtils=null;
+        PageUtils<WelcomeDormitoryVo> pageUtils = null;
         if (ObjectUtils.isEmpty(collegeId)) {
-            String collegeIds="";
             WelcomeAccount account = welcomeAccountService.getById(accountId);
             if (ObjectUtils.isEmpty(account)) {
                 return CommonResult.fail("当前账号已被删除,请重新登入");
             }
-            collegeIds=account.getCollegeId();
-           pageUtils = welcomeDormitoryService.listDormitoryCPage(currentPage, pageCount, schoolId, buildId, dormitoryId, sex, collegeIds, status, retentionState);
-        }else {
+            String collegeIds = account.getCollegeId();
+//            String[] split = aClassstrId.split(",");
+//            Arrays.sort(split);
+//            StringBuilder stringBuilder = new StringBuilder();
+//            for (int i = 0; i < split.length; i++) {
+//                if (i==0) {
+//                    stringBuilder.append(Integer.valueOf(split[i]));
+//                }else {
+//                    stringBuilder.append(",").append(Integer.valueOf(split[i]));
+//                }
+//            }
+//            String collegeIds = stringBuilder.toString();
+            pageUtils = welcomeDormitoryService.listDormitoryCPage(currentPage, pageCount, schoolId, buildId, dormitoryId, sex, collegeIds, status, retentionState);
+        } else {
             pageUtils = welcomeDormitoryService.listDormitoryPage(currentPage, pageCount, schoolId, buildId, dormitoryId, sex, collegeId, status, retentionState);
         }
 
 
-
         if (pageUtils != null && pageUtils.getList() != null && pageUtils.getList().size() > 0) {
             List<Integer> dormitoryIds = pageUtils.getList().stream().map(WelcomeDormitoryVo::getId).collect(Collectors.toList());
             List<WelcomeBed> beds = welcomeBedService.queryBeds(dormitoryIds);
@@ -292,7 +314,7 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         wdv.setStatus(1);
                         wdv.setFreeBedNumber(0);
                         WelcomeDormitory welcomeDormitory = new WelcomeDormitory();
-                        BeanUtil.copyProperties(wdv,welcomeDormitory);
+                        BeanUtil.copyProperties(wdv, welcomeDormitory);
                         welcomeDormitories.add(welcomeDormitory);
                     }
 
@@ -302,7 +324,7 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         wdv.setStatus(3);
                         wdv.setFreeBedNumber(wdv.getBedNumber() - count);
                         WelcomeDormitory welcomeDormitory = new WelcomeDormitory();
-                        BeanUtil.copyProperties(wdv,welcomeDormitory);
+                        BeanUtil.copyProperties(wdv, welcomeDormitory);
                         welcomeDormitories.add(welcomeDormitory);
                     }
                 } else {//全空 2
@@ -311,7 +333,7 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         wdv.setStatus(2);
                         wdv.setFreeBedNumber(wdv.getBedNumber() - count);
                         WelcomeDormitory welcomeDormitory = new WelcomeDormitory();
-                        BeanUtil.copyProperties(wdv,welcomeDormitory);
+                        BeanUtil.copyProperties(wdv, welcomeDormitory);
                         welcomeDormitories.add(welcomeDormitory);
                     }
                 }
@@ -386,25 +408,24 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
         boolean resultBool = welcomeDormitoryService.saveOrUpdateBatch(welcomeDormitories);
         if (resultBool) {
             for (WelcomeDormitory welcomeDormitory : welcomeDormitories) {
-                if ("墨轩湖校区".equals(welcomeDormitory.getSchool()) && welcomeDormitory.getSchoolId().equals(1)) {
-                    for (int i = 1; i <= 4; i++) {
-                        WelcomeBed welcomeBed = new WelcomeBed();
-                        welcomeBed.setNumber(i);
-                        welcomeBed.setSchool(welcomeDormitory.getSchool());
-                        welcomeBed.setSchoolId(welcomeDormitory.getSchoolId());
-                        welcomeBed.setBuild(welcomeDormitory.getBuild());
-                        welcomeBed.setBuildId(welcomeDormitory.getBuildId());
-                        welcomeBed.setDormitory(welcomeDormitory.getDormitory());
-                        welcomeBed.setDormitoryId(welcomeDormitory.getId());
-                        welcomeBed.setSex(welcomeDormitory.getSex());
-                        welcomeBed.setCollege(welcomeDormitory.getCollege());
-                        welcomeBed.setCollegeId(welcomeDormitory.getCollegeId());
-                        welcomeBed.setGrade(welcomeDormitory.getGrade());
-                        welcomeBed.setIsCheck(0);
-                        welcomeBed.setRetentionState(welcomeDormitory.getRetentionState());
-                        welcomeBeds.add(welcomeBed);
-                    }
-
+                Integer bedNumber = welcomeDormitory.getBedNumber();
+                for (int i = 1; i <= bedNumber; i++) {
+                    WelcomeBed welcomeBed = new WelcomeBed();
+                    welcomeBed.setNumber(i);
+                    welcomeBed.setSchool(welcomeDormitory.getSchool());
+                    welcomeBed.setSchoolId(welcomeDormitory.getSchoolId());
+                    welcomeBed.setBuild(welcomeDormitory.getBuild());
+                    welcomeBed.setBuildId(welcomeDormitory.getBuildId());
+                    welcomeBed.setDormitory(welcomeDormitory.getDormitory());
+                    welcomeBed.setDormitoryId(welcomeDormitory.getId());
+                    welcomeBed.setSex(welcomeDormitory.getSex());
+                    welcomeBed.setCollege(welcomeDormitory.getCollege());
+//                    导入的时候只导一个学院
+                    welcomeBed.setCollegeId(Integer.valueOf(welcomeDormitory.getCollegeId()));
+                    welcomeBed.setGrade(welcomeDormitory.getGrade());
+                    welcomeBed.setIsCheck(0);
+                    welcomeBed.setRetentionState(welcomeDormitory.getRetentionState());
+                    welcomeBeds.add(welcomeBed);
                 }
             }
         }
@@ -506,24 +527,24 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         if (wos != null && wos.isPresent()) {
                             wd.setSchoolId(wos.get().getId());
                             wd.setSchool(school);
-                        }else {
-                            int h=rowNum+1;
-                            return CommonResult.fail("第"+h+"行,不存在该校区");
+                        } else {
+                            int h = rowNum + 1;
+                            return CommonResult.fail("第" + h + "行,不存在该校区");
                         }
 
 
                         Optional<WelcomeBuild> oBuild = buildDatas.stream().filter(e -> e.getSchool().equals(school) && e.getBuild().equals(build)).findFirst();
                         if (oBuild != null && oBuild.isPresent()) {
                             if (!sex.equals(oBuild.get().getSex())) {
-                                int h=rowNum+1;
-                                return CommonResult.fail("第"+h+"行,宿舍性别和楼栋性别不一致");
+                                int h = rowNum + 1;
+                                return CommonResult.fail("第" + h + "行,宿舍性别和楼栋性别不一致");
                             }
                             wd.setBuild(build);
                             wd.setBuildId(oBuild.get().getId());
 
-                        }else {
-                            int h=rowNum+1;
-                            return CommonResult.fail("第"+h+"行,不存在该楼栋");
+                        } else {
+                            int h = rowNum + 1;
+                            return CommonResult.fail("第" + h + "行,不存在该楼栋");
                         }
                         wd.setDormitory(dormitory);
                         wd.setSex(sex);
@@ -531,10 +552,10 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         Optional<WelcomeOrg> oCollege = orgs.stream().filter(e -> e.getName().equals(college)).findFirst();
                         if (oCollege != null && oCollege.isPresent()) {
                             wd.setCollege(college);
-                            wd.setCollegeId(oCollege.get().getId());
-                        }else {
-                            int h=rowNum+1;
-                            return CommonResult.fail("第"+h+"行,不存在该学院");
+                            wd.setCollegeId(oCollege.get().getId()+"");
+                        } else {
+                            int h = rowNum + 1;
+                            return CommonResult.fail("第" + h + "行,不存在该学院");
                         }
 
                         wd.setBedNumber(Integer.valueOf(bedNum));
@@ -641,23 +662,23 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         if (wos != null && wos.isPresent()) {
                             wd.setSchoolId(wos.get().getId());
                             wd.setSchool(school);
-                        }else {
-                            int h=rowNum+1;
-                            return CommonResult.fail("第"+h+"行,不存在该校区");
+                        } else {
+                            int h = rowNum + 1;
+                            return CommonResult.fail("第" + h + "行,不存在该校区");
                         }
 
                         Optional<WelcomeBuild> oBuild = buildDatas.stream().filter(e -> e.getSchool().equals(school) && e.getBuild().equals(build)).findFirst();
                         if (oBuild != null && oBuild.isPresent()) {
                             if (!sex.equals(oBuild.get().getSex())) {
-                                int h=rowNum+1;
-                                return CommonResult.fail("第"+h+"行,宿舍性别和楼栋性别不一致");
+                                int h = rowNum + 1;
+                                return CommonResult.fail("第" + h + "行,宿舍性别和楼栋性别不一致");
                             }
                             wd.setBuild(build);
                             wd.setBuildId(oBuild.get().getId());
 
-                        }else {
-                            int h=rowNum+1;
-                            return CommonResult.fail("第"+h+"行,不存在该楼栋");
+                        } else {
+                            int h = rowNum + 1;
+                            return CommonResult.fail("第" + h + "行,不存在该楼栋");
                         }
                         wd.setDormitory(dormitory);
                         wd.setSex(sex);
@@ -665,10 +686,10 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
                         Optional<WelcomeOrg> oCollege = orgs.stream().filter(e -> e.getName().equals(college)).findFirst();
                         if (oCollege != null && oCollege.isPresent()) {
                             wd.setCollege(college);
-                            wd.setCollegeId(oCollege.get().getId());
-                        }else {
-                            int h=rowNum+1;
-                            return CommonResult.fail("第"+h+"行,不存在该学院");
+                            wd.setCollegeId(oCollege.get().getId()+"");
+                        } else {
+                            int h = rowNum + 1;
+                            return CommonResult.fail("第" + h + "行,不存在该学院");
                         }
 
                         wd.setBedNumber(Integer.valueOf(bedNum));
@@ -694,18 +715,28 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
     }
 
     @Override
-    public void welcomeDormitoryExport(HttpServletResponse response, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer collegeId, Integer status, Integer retentionState,Integer accountId) {
+    public void welcomeDormitoryExport(HttpServletResponse response, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer collegeId, Integer status, Integer retentionState, Integer accountId) {
         //        当学院为空
-        List<WelcomeDormitoryVo> result=null;
+        List<WelcomeDormitoryVo> result = null;
         if (ObjectUtils.isEmpty(collegeId)) {
-            String collegeIds="";
             WelcomeAccount account = welcomeAccountService.getById(accountId);
             if (ObjectUtils.isEmpty(account)) {
                 throw new RuntimeException("当前账号已被删除,请重新登入");
             }
-            collegeIds=account.getCollegeId();
+            String collegeIds = account.getCollegeId();
+//            String[] split = aClassstrId.split(",");
+//            Arrays.sort(split);
+//            StringBuilder stringBuilder = new StringBuilder();
+//            for (int i = 0; i < split.length; i++) {
+//                if (i==0) {
+//                    stringBuilder.append(Integer.valueOf(split[i]));
+//                }else {
+//                    stringBuilder.append(",").append(Integer.valueOf(split[i]));
+//                }
+//            }
+//            String collegeIds = stringBuilder.toString();
             result = welcomeDormitoryService.listDormitoryS(schoolId, buildId, dormitoryId, sex, collegeIds, status, retentionState);
-        }else {
+        } else {
             result = welcomeDormitoryService.listDormitory(schoolId, buildId, dormitoryId, sex, collegeId, status, retentionState);
         }
 
@@ -737,22 +768,22 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
             dataRow.createCell(6).setCellValue(build.getBedNumber());
             dataRow.createCell(7).setCellValue(build.getFreeBedNumber());
             Integer status1 = build.getStatus();
-            String zt="";
-            if (status1==1) {
-                zt="满员";
-            }else if (status1==2){
-                zt="全空";
-            }else if (status1==3){
-                zt="缺额";
+            String zt = "";
+            if (status1 == 1) {
+                zt = "满员";
+            } else if (status1 == 2) {
+                zt = "全空";
+            } else if (status1 == 3) {
+                zt = "缺额";
             }
             dataRow.createCell(8).setCellValue(zt);
             dataRow.createCell(9).setCellValue(build.getRemark());
             Integer retentionState1 = build.getRetentionState();
-            String bl="";
-            if (1==retentionState1) {
-                bl="否";
-            }else {
-                bl="是";
+            String bl = "";
+            if (1 == retentionState1) {
+                bl = "否";
+            } else {
+                bl = "是";
             }
             dataRow.createCell(10).setCellValue(bl);
         }
@@ -767,8 +798,18 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
         wrapper.in(WelcomeDormitory::getId, dormitoryIds);
         List<WelcomeDormitory> list = welcomeDormitoryService.list(wrapper);
         if (ObjectUtils.isNotEmpty(list)) {
+//            批量更改床位
             for (WelcomeDormitory welcomeDormitory : list) {
                 welcomeDormitory.setRetentionState(batchOperationVo.getRetentionState());
+                LambdaQueryWrapper<WelcomeBed> wrapperBed=new LambdaQueryWrapper<>();
+                wrapperBed.eq(WelcomeBed::getDormitoryId,welcomeDormitory.getId());
+                List<WelcomeBed> welcomeBeds = welcomeBedService.list(wrapperBed);
+                if (ObjectUtils.isNotEmpty(welcomeBeds)) {
+                    for (WelcomeBed welcomeBed : welcomeBeds) {
+                        welcomeBed.setRetentionState(batchOperationVo.getRetentionState());
+                    }
+                    welcomeBedService.updateBatchById(welcomeBeds);
+                }
             }
             welcomeDormitoryService.updateBatchById(list);
         }
@@ -789,14 +830,19 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
         if (ObjectUtils.isEmpty(account)) {
             return CommonResult.fail("无该账号权限");
         }
-        String aClassstrId = account.getCollegeId();
-        String[] split = aClassstrId.split(",");
-        List<String> collegeIds = new ArrayList<>();
-
-        for (String s : split) {
-            collegeIds.add(s);
-        }
-        List<WelcomeDormitory> dormitories = welcomeDormitoryService.saveBedBuildGroup(schoolId,collegeIds);
+        String collegeIds = account.getCollegeId();
+//        String[] split = aClassstrId.split(",");
+//        Arrays.sort(split);
+//        StringBuilder stringBuilder = new StringBuilder();
+//        for (int i = 0; i < split.length; i++) {
+//            if (i==0) {
+//                stringBuilder.append(Integer.valueOf(split[i]));
+//            }else {
+//                stringBuilder.append(",").append(Integer.valueOf(split[i]));
+//            }
+//        }
+//        String collegeIds = stringBuilder.toString();
+        List<WelcomeDormitory> dormitories = welcomeDormitoryService.saveBedBuildGroup(schoolId, collegeIds);
         ArrayList<SaveBedBuildGroupVo> vos = new ArrayList<>();
         for (WelcomeDormitory welcomeDormitory : dormitories) {
             SaveBedBuildGroupVo vo = new SaveBedBuildGroupVo();
@@ -815,21 +861,38 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
     }
 
     @Override
-    public CommonResult saveBedDormitoryGroup(Integer schoolId, Integer buildId,Integer accountId) {
+    public CommonResult saveBedDormitoryGroup(Integer schoolId, Integer buildId, Integer accountId) {
         WelcomeAccount account = welcomeAccountService.getById(accountId);
         if (ObjectUtils.isEmpty(account)) {
             return CommonResult.fail("无该账号权限");
         }
-        String aClassstrId = account.getCollegeId();
-        String[] split = aClassstrId.split(",");
-        List<String> collegeIds = new ArrayList<>();
-
-        for (String s : split) {
-            collegeIds.add(s);
-        }
-        List<WelcomeDormitory> dormitories = welcomeDormitoryService.saveBedDormitoryGroup(schoolId,buildId,collegeIds);
+        String collegeIds = account.getCollegeId();
+//        String[] split = aClassstrId.split(",");
+//        Arrays.sort(split);
+//        StringBuilder stringBuilder = new StringBuilder();
+//        for (int i = 0; i < split.length; i++) {
+//            if (i==0) {
+//                stringBuilder.append(Integer.valueOf(split[i]));
+//            }else {
+//                stringBuilder.append(",").append(Integer.valueOf(split[i]));
+//            }
+//        }
+//        String collegeIds = stringBuilder.toString();
+        List<WelcomeDormitory> dormitories = welcomeDormitoryService.saveBedDormitoryGroup(schoolId, buildId, collegeIds);
 
         return CommonResult.ok(dormitories);
     }
+
+    @Override
+    public CommonResult getColleges(Integer dormitoryId) {
+        WelcomeDormitory welcomeDormitory = welcomeDormitoryService.getById(dormitoryId);
+        List<WelcomeOrg> welcomeOrgs=null;
+        if (ObjectUtils.isNotEmpty(welcomeDormitory)) {
+            String collegeId = welcomeDormitory.getCollegeId();
+            List<String> list = Arrays.asList(collegeId.split(","));
+            welcomeOrgs = welcomeOrgService.queryColleges(list);
+        }
+        return CommonResult.ok(welcomeOrgs);
+    }
 }
 

+ 129 - 16
src/main/java/com/template/controller/WelcomeStudentController.java

@@ -189,6 +189,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
         ws.setIdenType(1);
         ws.setIsPay(0);
         ws.setFillStatus("未填报");
+        ws.setIsRegistered(2);
         //ws.setAmountPayable(isr.getAmountPayable());
         //ws.setPayAmount(isr.getPayAmount());
         //ws.setIsDrive(isr.getIsDrive());
@@ -482,7 +483,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
     }
 
     @Override
-    public CommonResult queryPageStudents(String userId, int currentPage, int pageCount, Integer collegeId, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus) {
+    public CommonResult queryPageStudents(String userId, int currentPage, int pageCount, Integer collegeId, Integer majorId, Integer classstrId, String trafficMethod, String name, String fillStatus, Integer isRegistered) {
         IPage<StudentPageVo> pages = new Page<>();
         PageUtils<StudentPageVo> result = new PageUtils<>(pages);
         WelcomeAccount wa = welcomeAccountService.getManageById(userId);
@@ -500,7 +501,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
                 collegeIds.add(String.valueOf(collegeId));
             }
         }
-        result = welcomeStudentService.queryStudentPageList(currentPage, pageCount, collegeIds, majorId, classstrId, trafficMethod, name,fillStatus);
+        result = welcomeStudentService.queryStudentPageList(currentPage, pageCount, collegeIds, majorId, classstrId, trafficMethod, name, fillStatus, isRegistered);
         return CommonResult.ok(result);
     }
 
@@ -616,6 +617,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
         result.setAmountPayable(ws.getAmountPayable());
         result.setPayAmount(ws.getPayAmount());
         result.setIsDrive(ws.getIsDrive());
+//        当前学生表里的车牌号为空
         result.setCarNumber(ws.getCarNumber());
 
         return CommonResult.ok(result);
@@ -937,7 +939,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
                     ws.setAddress(ws.getAddress());
                     ws.setZipCode(ws.getZipCode());
                     ws.setIsPay(0);
-                    ws.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/studentImage/"+ws.getCardId()+".jpg");
+                    ws.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/studentImage/" + ws.getCardId() + ".jpg");
                 }
             }
         }
@@ -1216,8 +1218,10 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
                         studentData.setZipCode(zipCode);
                         studentData.setIdenType(1);
                         studentData.setFillStatus("未填报");
+                        studentData.setIsRegistered(2);
+                        studentData.setIsPay(0);
                         //studentData.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/newStudentHeadImage.jpg");
-                        studentData.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/studentImage/"+studentData.getCardId()+".jpg");
+                        studentData.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/studentImage/" + studentData.getCardId() + ".jpg");
                         result.add(studentData);
                     }
                 }
@@ -1499,8 +1503,10 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
                         studentData.setZipCode(zipCode);
                         studentData.setIdenType(1);
                         studentData.setFillStatus("未填报");
+                        studentData.setIsRegistered(2);
+                        studentData.setIsPay(0);
                         //studentData.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/newStudentHeadImage.jpg");
-                        studentData.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/studentImage/"+studentData.getCardId()+".jpg");
+                        studentData.setPicture("https://chtech.ncjti.edu.cn/welcome/homeimage/studentImage/" + studentData.getCardId() + ".jpg");
                         result.add(studentData);
                     }
                 }
@@ -1518,7 +1524,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
     }
 
     @Override
-    public void welcomeStudentExport(String userId, HttpServletResponse response, Integer collegeId, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus) {
+    public void welcomeStudentExport(String userId, HttpServletResponse response, Integer collegeId, Integer majorId, Integer classstrId, String trafficMethod, String name, String fillStatus) {
         Workbook workbook = new XSSFWorkbook();
         Sheet sheet = workbook.createSheet("学生信息");
         WelcomeAccount wa = welcomeAccountService.getManageById(userId);
@@ -1537,7 +1543,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
             }
         }
 
-        List<StudentPageVo> result = welcomeStudentService.queryStudentList(collegeIds, majorId, classstrId, trafficMethod, name,fillStatus);
+        List<StudentPageVo> result = welcomeStudentService.queryStudentList(collegeIds, majorId, classstrId, trafficMethod, name, fillStatus);
         //导出
 
         Row headerRow = sheet.createRow(0);
@@ -1582,13 +1588,17 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
     @Override
     public CommonResult studentOverview() {
 
+        int enrollmentTotal=welcomeStudentService.studentTotalCount();
         //        录取总数
         //        LambdaQueryWrapper<WelcomeStudent> queryWrapper=new LambdaQueryWrapper<>();
         //        queryWrapper.eq(WelcomeStudent::getIdenType,1);
-        int enrollmentTotal = 8062;//welcomeStudentService.count(queryWrapper);
+//        int enrollmentTotal = 8085;//welcomeStudentService.count(queryWrapper);
 
         //        缴费人数
         int payCount = welcomeStudentService.payCount();
+        //        缴费率
+        Double rate = ((double) payCount / enrollmentTotal) * 100;
+        String payRate = String.format("%.2f", rate);
 
 
         //        已入住寝室数
@@ -1623,6 +1633,7 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
         StudentOverviewVo vo = new StudentOverviewVo();
         vo.setEnrollmentTotal(enrollmentTotal);
         vo.setPayCount(payCount);
+        vo.setPayRate(payRate);
         vo.setCheckInBedTotal(checkInBedTotal);
         vo.setRegistrationRate(registrationRate);
         vo.setHCarTotal(hCarTotal - hVisitorTotal);
@@ -1634,16 +1645,28 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
 
 
     @Override
-    public CommonResult studentRegister() {
-
-//        获取总数
-        Integer count = welcomeStudentService.totalCount();
-        List<StudentRegisterVo> vos = welcomeStudentService.studentRegister();
+    public CommonResult studentRegister(Integer collegeId) {
+//        学生总数
+        int enrollmentTotal=welcomeStudentService.studentTotalCount();
+        //        获取总数
+        Integer count = welcomeStudentService.totalCount(collegeId);
+//        获取比例
+        Double result = ((double) count / enrollmentTotal) * 100;
+        String rate = String.format("%.2f", result);
         StudentRegisterVo vo = new StudentRegisterVo();
-        vo.setCollegeName("报到总数");
+        vo.setName("报到总数");
         vo.setCount(count);
-        vos.add(vo);
-        return CommonResult.ok(vos);
+        vo.setRate(rate);
+        if (ObjectUtils.isNotEmpty(collegeId)) {
+            List<StudentRegisterVo> vos = welcomeStudentService.studentMajorRegister(collegeId);
+            vos.add(vo);
+            return CommonResult.ok(vos);
+        } else {
+            List<StudentRegisterVo> vos = welcomeStudentService.studentRegister();
+            vos.add(vo);
+            return CommonResult.ok(vos);
+        }
+
     }
 
     @Override
@@ -1903,5 +1926,95 @@ public class WelcomeStudentController implements WelcomeStudentControllerAPI {
         result.setPays(pdvs);
         return CommonResult.ok(result);
     }
+
+    @Override
+    public CommonResult isRegistered(WelcomeStudent welcomeStudent) {
+        boolean update = welcomeStudentService.updateById(welcomeStudent);
+        return update ? CommonResult.ok() : CommonResult.fail();
+    }
+
+    @Override
+    public CommonResult levelRegister() {
+//        学生总数
+        int enrollmentTotal=welcomeStudentService.studentTotalCount();
+
+        //        获取总数
+        Integer count = welcomeStudentService.totalCount(null);
+//        获取比例
+        Double result = ((double) count / enrollmentTotal) * 100;
+        String rate = String.format("%.2f", result);
+        StudentRegisterVo vo = new StudentRegisterVo();
+        vo.setName("报到总数");
+        vo.setCount(count);
+        vo.setRate(rate);
+        vo.setTotalCount(enrollmentTotal);
+
+        String bk="本科";
+        String zsb="专升本";
+        String zk="专科";
+
+//        获取本科人数
+        Integer bkCount = welcomeStudentService.getLevelTotalCount(bk);
+//        获取专升本人数
+        Integer zsbCount = welcomeStudentService.getLevelTotalCount(zsb);
+//        获取专科人数
+        Integer zkCount = welcomeStudentService.getLevelTotalCount(zk);
+
+        List<StudentRegisterVo> vos = welcomeStudentService.levelRegister();
+        HashMap<String, StudentRegisterVo> map = new HashMap<>();
+        for (StudentRegisterVo studentRegisterVo : vos) {
+            Integer count1 = studentRegisterVo.getCount();
+            if (studentRegisterVo.getName().equals(bk)) {
+                Double result1 = ((double) count1 / bkCount) * 100;
+                String rate1 = String.format("%.2f", result1);
+                studentRegisterVo.setRate(rate1);
+                studentRegisterVo.setTotalCount(bkCount);
+            }else if (studentRegisterVo.getName().equals(zsb)){
+                Double result1 = ((double) count1 / zsbCount) * 100;
+                String rate1 = String.format("%.2f", result1);
+                studentRegisterVo.setRate(rate1);
+                studentRegisterVo.setTotalCount(zsbCount);
+            }else if (studentRegisterVo.getName().equals(zk)){
+                Double result1 = ((double) count1 / zkCount) * 100;
+                String rate1 = String.format("%.2f", result1);
+                studentRegisterVo.setRate(rate1);
+                studentRegisterVo.setTotalCount(zkCount);
+            }
+
+            map.put(studentRegisterVo.getName(), studentRegisterVo);
+        }
+
+        if (!map.containsKey("本科")) {
+            StudentRegisterVo vo1 = new StudentRegisterVo();
+            vo1.setName("本科");
+            vo1.setCount(0);
+            vo1.setRate("0.00");
+            vo1.setTotalCount(bkCount);
+            vos.add(vo1);
+        }
+
+        if (!map.containsKey("专升本")) {
+            StudentRegisterVo vo2 = new StudentRegisterVo();
+            vo2.setName("专升本");
+            vo2.setCount(0);
+            vo2.setRate("0.00");
+            vo2.setTotalCount(zsbCount);
+            vos.add(vo2);
+        }
+
+        if (!map.containsKey("专科")) {
+            StudentRegisterVo vo3 = new StudentRegisterVo();
+            vo3.setName("专科");
+            vo3.setCount(0);
+            vo3.setRate("0.00");
+            vo3.setTotalCount(zkCount);
+            vos.add(vo3);
+        }
+
+
+        vos.add(vo);
+        return CommonResult.ok(vos);
+
+    }
 }
 

+ 8 - 1
src/main/java/com/template/mapper/WelcomeBedMapper.java

@@ -1,5 +1,7 @@
 package com.template.mapper;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.template.model.pojo.WelcomeBed;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.template.model.vo.*;
@@ -33,5 +35,10 @@ public interface WelcomeBedMapper extends BaseMapper<WelcomeBed> {
 
     List<BedInfosVo> queryBedList(@Param("studentCard") String studentCard);
 
-    void updateBuild(@Param("schoolId") String schoolId,@Param("buildId") Integer buildId, @Param("build") String build);
+    void updateBuild(@Param("schoolId") String schoolId,@Param("buildId") Integer buildId, @Param("build") String build,@Param("school") String school);
+
+    IPage<WelcomeBed> queryPageWelcomeBedsC(Page<WelcomeBed> page,@Param("schoolId") Integer schoolId,@Param("buildId") Integer buildId,@Param("dormitoryId") Integer dormitoryId,@Param("sex") String sex,@Param("isCheck") Integer isCheck,@Param("collegeIds") String collegeIds,@Param("majorId") Integer majorId,@Param("classstrId") Integer classstrId,@Param("retentionState") Integer retentionState);
+
+    IPage<WelcomeBed> queryPageWelcomeBeds(Page<WelcomeBed> page, @Param("schoolId") Integer schoolId,@Param("buildId") Integer buildId,@Param("dormitoryId") Integer dormitoryId,@Param("sex") String sex,@Param("isCheck") Integer isCheck,@Param("collegeId") Integer collegeId,@Param("majorId") Integer majorId,@Param("classstrId") Integer classstrId,@Param("retentionState") Integer retentionState);
+
 }

+ 1 - 0
src/main/java/com/template/mapper/WelcomeBuildMapper.java

@@ -23,4 +23,5 @@ public interface WelcomeBuildMapper extends BaseMapper<WelcomeBuild> {
 
     IPage<WelcomeBuildVo> listBuild(Page<WelcomeBuildVo> page, @Param("schoolId")  Integer schoolId, @Param("buildId")  String buildId, @Param("sex") String sex);
 
+    List<WelcomeBuild> buildGroup(@Param("schoolId") Integer schoolId);
 }

+ 4 - 1
src/main/java/com/template/mapper/WelcomeDormitoryMapper.java

@@ -42,6 +42,9 @@ public interface WelcomeDormitoryMapper extends BaseMapper<WelcomeDormitory> {
                                             @Param("dormitoryId") Integer dormitoryId, @Param("sex") String sex, @Param("collegeIds") String collegeIds,
                                             @Param("status") Integer status,@Param("retentionState") Integer retentionState);
 
-    void updateBuild(@Param("schoolId") String schoolId,@Param("buildId") Integer buildId, @Param("build") String build);
+    void updateBuild(@Param("schoolId") String schoolId,@Param("buildId") Integer buildId, @Param("build") String build,@Param("school") String school);
 
+    List<WelcomeDormitory> saveBedDormitoryGroup(@Param("schoolId") Integer schoolId,@Param("buildId")  Integer buildId,@Param("collegeIds") String collegeIds);
+
+    List<WelcomeDormitory> saveBedBuildGroup(@Param("schoolId") Integer schoolId,@Param("collegeIds") String collegeIds);
 }

+ 6 - 1
src/main/java/com/template/mapper/WelcomeStudentMapper.java

@@ -19,7 +19,7 @@ import java.util.List;
  */
 @Repository
 public interface WelcomeStudentMapper extends BaseMapper<WelcomeStudent> {
-    IPage<StudentPageVo> queryStudentPageList(IPage<StudentPageVo> page, @Param("collegeIds") List<String> collegeIds,@Param("majorId") Integer majorId,@Param("classstrId") Integer classstrId,@Param("trafficMethod") String trafficMethod ,@Param("name") String name,@Param("fillStatus") String fillStatus);
+    IPage<StudentPageVo> queryStudentPageList(IPage<StudentPageVo> page, @Param("collegeIds") List<String> collegeIds,@Param("majorId") Integer majorId,@Param("classstrId") Integer classstrId,@Param("trafficMethod") String trafficMethod ,@Param("name") String name,@Param("fillStatus") String fillStatus,@Param("isRegistered") Integer isRegistered);
 
     List<StudentPageVo> queryStudentPageList(@Param("collegeIds") List<String> collegeIds, @Param("majorId") Integer majorId, @Param("classstrId") Integer classstrId, @Param("trafficMethod") String trafficMethod , @Param("name") String name,@Param("fillStatus") String fillStatus);
 
@@ -30,4 +30,9 @@ public interface WelcomeStudentMapper extends BaseMapper<WelcomeStudent> {
     List<StudentSexRatioVo> studentSexRatio();
 
     List<StudentTotalVo> queryStudentTotal();
+
+    List<StudentRegisterVo> studentMajorRegister(@Param("collegeId") Integer collegeId);
+
+    List<StudentRegisterVo> levelRegister();
+
 }

+ 1 - 1
src/main/java/com/template/model/pojo/WelcomeDormitory.java

@@ -56,7 +56,7 @@ public class WelcomeDormitory implements Serializable {
     private String college;
 
     @ApiModelProperty(value = "所属学院ID")
-    private Integer collegeId;
+    private String collegeId;
 
     @ApiModelProperty(value = "所属年级")
     private Integer grade;

+ 4 - 0
src/main/java/com/template/model/pojo/WelcomeStudent.java

@@ -205,6 +205,10 @@ public class WelcomeStudent implements Serializable {
     @ApiModelProperty(value = "是否已缴费")
     private Integer isPay;
 
+    //已报到:1,未报到:2,为空默认是未报到
+    @ApiModelProperty(value = "是否已报到")
+    private Integer isRegistered;
+
     @ApiModelProperty(value = "创建时间")
     @TableField(fill = FieldFill.INSERT)
     private Date createTime;

+ 3 - 0
src/main/java/com/template/model/vo/StudentOverviewVo.java

@@ -10,6 +10,9 @@ public class StudentOverviewVo {
     //已缴费人数
     private Integer payCount;
 
+    //缴费率
+    private String payRate;
+
     //入住床位总数
     private Integer checkInBedTotal;
 

+ 4 - 0
src/main/java/com/template/model/vo/StudentPageVo.java

@@ -61,4 +61,8 @@ public class StudentPageVo {
     @ApiModelProperty(value = "宿舍信息")
     private String dormitory;
 
+    //已报到:1,未报到:2,为空默认是未报到
+    @ApiModelProperty(value = "是否已报到")
+    private Integer isRegistered;
+
 }

+ 7 - 2
src/main/java/com/template/model/vo/StudentRegisterVo.java

@@ -4,8 +4,13 @@ import lombok.Data;
 
 @Data
 public class StudentRegisterVo {
-//    学院名称
-    private String collegeName;
+//    名称
+    private String name;
 //    总数
     private Integer count;
+//    比例
+    private String rate;
+//  总人数
+    private Integer totalCount;
+
 }

+ 1 - 1
src/main/java/com/template/model/vo/WelcomeDormitoryVo.java

@@ -29,7 +29,7 @@ public class WelcomeDormitoryVo {
     private String college;
 
     @ApiModelProperty(value = "所属学院ID")
-    private Integer collegeId;
+    private String collegeId;
 
     @ApiModelProperty(value = "所属年级")
     private Integer grade;

+ 2 - 2
src/main/java/com/template/services/WelcomeBedService.java

@@ -77,7 +77,7 @@ public interface WelcomeBedService extends IService<WelcomeBed> {
 
     List<WelcomeBed> hBedGroup(Integer schoolId, Integer buildId, Integer dormitoryId, Integer collegeId, Integer majorId, Integer classstrid, String sex);
 
-    PageUtils<WelcomeBed> queryPageWelcomeBedsC(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer isCheck, List<String> collegeIds, Integer majorId, Integer classstrId, Integer retentionState);
+    PageUtils<WelcomeBed> queryPageWelcomeBedsC(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer isCheck, String collegeIds, Integer majorId, Integer classstrId, Integer retentionState);
 
 
     List<WelcomeBed> queryPageWelcomeBedsS(Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer isCheck, List<String> collegeIds, Integer majorId, Integer classstrId, Integer retentionState);
@@ -88,5 +88,5 @@ public interface WelcomeBedService extends IService<WelcomeBed> {
 
     List<BedInfosVo> queryBedList(String studentCard);
 
-    void updateBuild(String schoolId, Integer buildId, String build);
+    void updateBuild(String schoolId, Integer buildId, String build,String school);
 }

+ 3 - 3
src/main/java/com/template/services/WelcomeDormitoryService.java

@@ -43,13 +43,13 @@ public interface WelcomeDormitoryService extends IService<WelcomeDormitory> {
 
     PageUtils<WelcomeDormitoryVo> listDormitoryCPage(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, String collegeIds, Integer status, Integer retentionState);
 
-    List<WelcomeDormitory> saveBedBuildGroup(Integer schoolId, List<String> collegeIds);
+    List<WelcomeDormitory> saveBedBuildGroup(Integer schoolId, String collegeIds);
 
     List<WelcomeDormitoryVo> listDormitoryS(Integer schoolId, Integer buildId, Integer dormitoryId, String sex, String collegeIds, Integer status, Integer retentionState);
 
     List<WelcomeDormitory> dormitoryTGroup(Integer schoolId, Integer buildId);
 
-    List<WelcomeDormitory> saveBedDormitoryGroup(Integer schoolId, Integer buildId, List<String> collegeIds);
+    List<WelcomeDormitory> saveBedDormitoryGroup(Integer schoolId, Integer buildId,String collegeIds);
 
-    void updateBuild(String schoolId, Integer buildId,String build);
+    void updateBuild(String schoolId, Integer buildId,String build,String school);
 }

+ 10 - 2
src/main/java/com/template/services/WelcomeStudentService.java

@@ -31,7 +31,7 @@ public interface WelcomeStudentService extends IService<WelcomeStudent> {
 
     WelcomeStudent getDataByIdcard(String cardId);
 
-    PageUtils<StudentPageVo> queryStudentPageList(int currentPage, int pageCount, List<String> collegeIds, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus);
+    PageUtils<StudentPageVo> queryStudentPageList(int currentPage, int pageCount, List<String> collegeIds, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus,Integer isRegistered);
 
     WelcomeStudent getDataByIdcardOrNum(String admissNum, String cardId);
 
@@ -51,7 +51,7 @@ public interface WelcomeStudentService extends IService<WelcomeStudent> {
 
     List<StudentSexRatioVo> studentSexRatio();
 
-    Integer totalCount();
+    Integer totalCount(Integer collegeId);
 
     int payCount();
 
@@ -74,4 +74,12 @@ public interface WelcomeStudentService extends IService<WelcomeStudent> {
      * @return 学生信息
      */
     WelcomeStudent getByStudentCard(String studentCard);
+
+    List<StudentRegisterVo> studentMajorRegister(Integer collegeId);
+
+    List<StudentRegisterVo> levelRegister();
+
+    Integer getLevelTotalCount(String batchValue);
+
+    int studentTotalCount();
 }

+ 34 - 27
src/main/java/com/template/services/impl/WelcomeBedServiceImpl.java

@@ -46,19 +46,22 @@ public class WelcomeBedServiceImpl extends ServiceImpl<WelcomeBedMapper, Welcome
 
     @Override
     public PageUtils<WelcomeBed> queryPageWelcomeBeds(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer isCheck, Integer collegeId, Integer majorId, Integer classstrId,Integer retentionState) {
+//        Page<WelcomeBed> page = new Page<>(currentPage, pageCount);
+//        QueryWrapper<WelcomeBed> queryWrapper = new QueryWrapper<>();
+//        queryWrapper.eq(schoolId != null, "school_id", schoolId);
+//        queryWrapper.eq(buildId != null, "build_id", buildId);
+//        queryWrapper.eq(dormitoryId != null, "dormitory_id", dormitoryId);
+//        queryWrapper.eq(StringUtils.hasText(sex), "sex", sex);
+//        queryWrapper.eq(isCheck != null, "is_check", isCheck);
+//        queryWrapper.eq(collegeId != null, "college_id", collegeId);
+//        queryWrapper.eq(majorId != null, "major_id", majorId);
+//        queryWrapper.eq(classstrId != null, "classstr_id", classstrId);
+//        queryWrapper.eq(retentionState != null, "retention_state", retentionState);
+//        queryWrapper.orderByAsc("build","dormitory","number");
+//        IPage<WelcomeBed> result = welcomeBedMapper.selectPage(page, queryWrapper);
+//        return new PageUtils<>(result);
         Page<WelcomeBed> page = new Page<>(currentPage, pageCount);
-        QueryWrapper<WelcomeBed> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq(schoolId != null, "school_id", schoolId);
-        queryWrapper.eq(buildId != null, "build_id", buildId);
-        queryWrapper.eq(dormitoryId != null, "dormitory_id", dormitoryId);
-        queryWrapper.eq(StringUtils.hasText(sex), "sex", sex);
-        queryWrapper.eq(isCheck != null, "is_check", isCheck);
-        queryWrapper.eq(collegeId != null, "college_id", collegeId);
-        queryWrapper.eq(majorId != null, "major_id", majorId);
-        queryWrapper.eq(classstrId != null, "classstr_id", classstrId);
-        queryWrapper.eq(retentionState != null, "retention_state", retentionState);
-        queryWrapper.orderByAsc("build","dormitory","number");
-        IPage<WelcomeBed> result = welcomeBedMapper.selectPage(page, queryWrapper);
+        IPage<WelcomeBed> result = welcomeBedMapper.queryPageWelcomeBeds(page,schoolId,buildId,dormitoryId,sex,isCheck,collegeId,majorId,classstrId,retentionState);
         return new PageUtils<>(result);
     }
 
@@ -363,20 +366,24 @@ public class WelcomeBedServiceImpl extends ServiceImpl<WelcomeBedMapper, Welcome
     }
 
     @Override
-    public PageUtils<WelcomeBed> queryPageWelcomeBedsC(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer isCheck, List<String> collegeIds, Integer majorId, Integer classstrId, Integer retentionState) {
+    public PageUtils<WelcomeBed> queryPageWelcomeBedsC(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer isCheck, String collegeIds, Integer majorId, Integer classstrId, Integer retentionState) {
+//        Page<WelcomeBed> page = new Page<>(currentPage, pageCount);
+//        QueryWrapper<WelcomeBed> queryWrapper = new QueryWrapper<>();
+//        queryWrapper.eq(schoolId != null, "school_id", schoolId);
+//        queryWrapper.eq(buildId != null, "build_id", buildId);
+//        queryWrapper.eq(dormitoryId != null, "dormitory_id", dormitoryId);
+//        queryWrapper.eq(StringUtils.hasText(sex), "sex", sex);
+//        queryWrapper.eq(isCheck != null, "is_check", isCheck);
+//        queryWrapper.in( "college_id", collegeIds);
+//        queryWrapper.eq(majorId != null, "major_id", majorId);
+//        queryWrapper.eq(classstrId != null, "classstr_id", classstrId);
+//        queryWrapper.eq(retentionState != null, "retention_state", retentionState);
+//        queryWrapper.orderByAsc("build","dormitory","number");
+//        IPage<WelcomeBed> result = welcomeBedMapper.selectPage(page, queryWrapper);
+//        return new PageUtils<>(result);
+
         Page<WelcomeBed> page = new Page<>(currentPage, pageCount);
-        QueryWrapper<WelcomeBed> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq(schoolId != null, "school_id", schoolId);
-        queryWrapper.eq(buildId != null, "build_id", buildId);
-        queryWrapper.eq(dormitoryId != null, "dormitory_id", dormitoryId);
-        queryWrapper.eq(StringUtils.hasText(sex), "sex", sex);
-        queryWrapper.eq(isCheck != null, "is_check", isCheck);
-        queryWrapper.in( "college_id", collegeIds);
-        queryWrapper.eq(majorId != null, "major_id", majorId);
-        queryWrapper.eq(classstrId != null, "classstr_id", classstrId);
-        queryWrapper.eq(retentionState != null, "retention_state", retentionState);
-        queryWrapper.orderByAsc("build","dormitory","number");
-        IPage<WelcomeBed> result = welcomeBedMapper.selectPage(page, queryWrapper);
+        IPage<WelcomeBed> result = welcomeBedMapper.queryPageWelcomeBedsC(page,schoolId,buildId,dormitoryId,sex,isCheck,collegeIds,majorId,classstrId,retentionState);
         return new PageUtils<>(result);
     }
 
@@ -451,8 +458,8 @@ public class WelcomeBedServiceImpl extends ServiceImpl<WelcomeBedMapper, Welcome
     }
 
     @Override
-    public void updateBuild(String schoolId, Integer buildId, String build) {
-        welcomeBedMapper.updateBuild(schoolId,buildId,build);
+    public void updateBuild(String schoolId, Integer buildId, String build,String school) {
+        welcomeBedMapper.updateBuild(schoolId,buildId,build,school);
     }
 
 }

+ 4 - 3
src/main/java/com/template/services/impl/WelcomeBuildServiceImpl.java

@@ -86,9 +86,10 @@ public class WelcomeBuildServiceImpl extends ServiceImpl<WelcomeBuildMapper, Wel
 
     @Override
     public List<WelcomeBuild> buildGroup(Integer schoolId) {
-        LambdaQueryWrapper<WelcomeBuild> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(ObjectUtils.isNotEmpty(schoolId),WelcomeBuild::getSchoolId,schoolId);
-        List<WelcomeBuild> result = welcomeBuildMapper.selectList(queryWrapper);
+//        LambdaQueryWrapper<WelcomeBuild> queryWrapper = new LambdaQueryWrapper<>();
+//        queryWrapper.eq(ObjectUtils.isNotEmpty(schoolId),WelcomeBuild::getSchoolId,schoolId);
+//        List<WelcomeBuild> result = welcomeBuildMapper.selectList(queryWrapper);
+        List<WelcomeBuild> result = welcomeBuildMapper.buildGroup(schoolId);
         return result;
     }
 

+ 18 - 16
src/main/java/com/template/services/impl/WelcomeDormitoryServiceImpl.java

@@ -127,12 +127,13 @@ public class WelcomeDormitoryServiceImpl extends ServiceImpl<WelcomeDormitoryMap
     }
 
     @Override
-    public List<WelcomeDormitory> saveBedBuildGroup(Integer schoolId, List<String> collegeIds) {
-        LambdaQueryWrapper<WelcomeDormitory> queryWrapper=new LambdaQueryWrapper<>();
-        queryWrapper.eq(WelcomeDormitory::getSchoolId,schoolId)
-                .in(WelcomeDormitory::getCollegeId,collegeIds)
-                .groupBy(WelcomeDormitory::getSchoolId,WelcomeDormitory::getBuildId);
-        List<WelcomeDormitory> result = welcomeDormitoryMapper.selectList(queryWrapper);
+    public List<WelcomeDormitory> saveBedBuildGroup(Integer schoolId, String collegeIds) {
+//        LambdaQueryWrapper<WelcomeDormitory> queryWrapper=new LambdaQueryWrapper<>();
+//        queryWrapper.eq(WelcomeDormitory::getSchoolId,schoolId)
+//                .in(WelcomeDormitory::getCollegeId,collegeIds)
+//                .groupBy(WelcomeDormitory::getSchoolId,WelcomeDormitory::getBuildId);
+//        List<WelcomeDormitory> result = welcomeDormitoryMapper.selectList(queryWrapper);
+        List<WelcomeDormitory> result = welcomeDormitoryMapper.saveBedBuildGroup(schoolId,collegeIds);
         return result;
     }
 
@@ -147,24 +148,25 @@ public class WelcomeDormitoryServiceImpl extends ServiceImpl<WelcomeDormitoryMap
         LambdaQueryWrapper<WelcomeDormitory> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(ObjectUtils.isNotEmpty(schoolId), WelcomeDormitory::getSchoolId, schoolId)
                 .eq(ObjectUtils.isNotEmpty(buildId), WelcomeDormitory::getBuildId, buildId)
-                .orderByDesc(WelcomeDormitory::getBuild,WelcomeDormitory::getDormitory);;
+                .orderByDesc(WelcomeDormitory::getBuild,WelcomeDormitory::getDormitory);
         List<WelcomeDormitory> welcomeDormitories = welcomeDormitoryMapper.selectList(wrapper);
         return welcomeDormitories;
     }
 
     @Override
-    public List<WelcomeDormitory> saveBedDormitoryGroup(Integer schoolId, Integer buildId, List<String> collegeIds) {
-        LambdaQueryWrapper<WelcomeDormitory> queryWrapper=new LambdaQueryWrapper<>();
-        queryWrapper.eq(WelcomeDormitory::getSchoolId,schoolId)
-                .eq(WelcomeDormitory::getBuildId,buildId)
-                .in(WelcomeDormitory::getCollegeId,collegeIds)
-                .groupBy(WelcomeDormitory::getSchoolId,WelcomeDormitory::getBuildId,WelcomeDormitory::getDormitory);
-        List<WelcomeDormitory> result = welcomeDormitoryMapper.selectList(queryWrapper);
+    public List<WelcomeDormitory> saveBedDormitoryGroup(Integer schoolId, Integer buildId, String collegeIds) {
+//        LambdaQueryWrapper<WelcomeDormitory> queryWrapper=new LambdaQueryWrapper<>();
+//        queryWrapper.eq(WelcomeDormitory::getSchoolId,schoolId)
+//                .eq(WelcomeDormitory::getBuildId,buildId)
+//                .in(WelcomeDormitory::getCollegeId,collegeIds)
+//                .groupBy(WelcomeDormitory::getSchoolId,WelcomeDormitory::getBuildId,WelcomeDormitory::getDormitory);
+//        List<WelcomeDormitory> result = welcomeDormitoryMapper.selectList(queryWrapper);
+        List<WelcomeDormitory> result = welcomeDormitoryMapper.saveBedDormitoryGroup(schoolId,buildId,collegeIds);
         return result;
     }
 
     @Override
-    public void updateBuild(String schoolId, Integer buildId,String build) {
-        welcomeDormitoryMapper.updateBuild(schoolId,buildId,build);
+    public void updateBuild(String schoolId, Integer buildId,String build,String school) {
+        welcomeDormitoryMapper.updateBuild(schoolId,buildId,build,school);
     }
 }

+ 33 - 4
src/main/java/com/template/services/impl/WelcomeStudentServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.template.mapper.WelcomeStudentMapper;
@@ -79,11 +80,11 @@ public class WelcomeStudentServiceImpl extends ServiceImpl<WelcomeStudentMapper,
     }
 
     @Override
-    public PageUtils<StudentPageVo> queryStudentPageList(int currentPage, int pageCount, List<String> collegeIds, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus) {
+    public PageUtils<StudentPageVo> queryStudentPageList(int currentPage, int pageCount, List<String> collegeIds, Integer majorId, Integer classstrId, String trafficMethod, String name,String fillStatus,Integer isRegistered) {
         Page<StudentPageVo> page = new Page<>();
         page.setCurrent(currentPage);
         page.setSize(pageCount);
-        IPage<StudentPageVo> result = welcomeStudentMapper.queryStudentPageList(page, collegeIds, majorId, classstrId, trafficMethod, name,fillStatus);
+        IPage<StudentPageVo> result = welcomeStudentMapper.queryStudentPageList(page, collegeIds, majorId, classstrId, trafficMethod, name,fillStatus,isRegistered);
         return new PageUtils(result);
     }
 
@@ -139,10 +140,11 @@ public class WelcomeStudentServiceImpl extends ServiceImpl<WelcomeStudentMapper,
     }
 
     @Override
-    public Integer totalCount() {
+    public Integer totalCount(Integer collegeId) {
         LambdaQueryWrapper<WelcomeStudent> wrapper=new LambdaQueryWrapper<>();
         wrapper.eq(WelcomeStudent::getIdenType,1)
-                .eq(WelcomeStudent::getFillStatus,"已填报");
+                .eq(WelcomeStudent::getIsRegistered,1)
+                .eq(ObjectUtils.isNotEmpty(collegeId),WelcomeStudent::getCollegeId,collegeId);
         Integer count = welcomeStudentMapper.selectCount(wrapper);
         return count;
     }
@@ -221,4 +223,31 @@ public class WelcomeStudentServiceImpl extends ServiceImpl<WelcomeStudentMapper,
         queryWrapper.eq(WelcomeStudent::getCardId, studentCard);
         return getOne(queryWrapper);
     }
+
+    @Override
+    public List<StudentRegisterVo> studentMajorRegister(Integer collegeId) {
+        return welcomeStudentMapper.studentMajorRegister(collegeId);
+    }
+
+    @Override
+    public List<StudentRegisterVo> levelRegister() {
+        return welcomeStudentMapper.levelRegister();
+    }
+
+    @Override
+    public Integer getLevelTotalCount(String batchValue) {
+        LambdaQueryWrapper<WelcomeStudent> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(WelcomeStudent::getIdenType,1)
+                .eq(WelcomeStudent::getBatchValue,batchValue);
+        Integer count = welcomeStudentMapper.selectCount(wrapper);
+        return count;
+    }
+
+    @Override
+    public int studentTotalCount() {
+        LambdaQueryWrapper<WelcomeStudent> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(WelcomeStudent::getIdenType,1);
+        Integer count = welcomeStudentMapper.selectCount(wrapper);
+        return count;
+    }
 }

+ 91 - 2
src/main/resources/mapper/template/WelcomeBedMapper.xml

@@ -13,10 +13,11 @@
     <update id="updateBuild">
         UPDATE `welcome_bed`
         SET
-            build= #{build}
+            build= #{build},
+            school_id= #{schoolId},
+            school= #{school}
         WHERE
             deleted=0
-          AND school_id= #{schoolId}
           AND build_id= #{buildId}
     </update>
 
@@ -152,4 +153,92 @@
         </if>
         group by wb.college,wb.sex
     </select>
+
+    <select id="queryPageWelcomeBedsC" resultType="com.template.model.pojo.WelcomeBed">
+        SELECT
+        wb.*
+        FROM
+        `welcome_bed` wb
+        WHERE
+        wb.deleted =0
+        <if test="schoolId != null and schoolId != ''">
+            and wb.school_id = #{schoolId}
+        </if>
+
+        <if test="buildId != null and buildId != ''">
+            and wb.build_id = #{buildId}
+        </if>
+
+        <if test="dormitoryId != null and dormitoryId != ''">
+            and wb.dormitory_id = #{dormitoryId}
+        </if>
+
+        <if test="sex != null and sex != ''">
+            and wb.sex = #{sex}
+        </if>
+
+        <if test="isCheck != null and isCheck != ''">
+            and wb.is_check = #{isCheck}
+        </if>
+
+        <if test="majorId != null and majorId != ''">
+            and wb.major_id = #{majorId}
+        </if>
+
+        <if test="classstrId != null and classstrId != ''">
+            and wb.classstr_id = #{classstrId}
+        </if>
+
+        <if test="retentionState != null and retentionState != ''">
+            and wb.retention_state = #{retentionState}
+        </if>
+
+        AND FIND_IN_SET(wb.college_id,#{collegeIds})
+        order by LPAD(wb.build, 20, '0'),wb.dormitory,wb.number asc
+    </select>
+    <select id="queryPageWelcomeBeds" resultType="com.template.model.pojo.WelcomeBed">
+        SELECT
+        wb.*
+        FROM
+        `welcome_bed` wb
+        WHERE
+        wb.deleted =0
+        <if test="schoolId != null and schoolId != ''">
+            and wb.school_id = #{schoolId}
+        </if>
+
+        <if test="buildId != null and buildId != ''">
+            and wb.build_id = #{buildId}
+        </if>
+
+        <if test="dormitoryId != null and dormitoryId != ''">
+            and wb.dormitory_id = #{dormitoryId}
+        </if>
+
+        <if test="sex != null and sex != ''">
+            and wb.sex = #{sex}
+        </if>
+
+        <if test="isCheck != null and isCheck != ''">
+            and wb.is_check = #{isCheck}
+        </if>
+
+        <if test="collegeId != null and collegeId != ''">
+            and wb.college_id = #{collegeId}
+        </if>
+
+        <if test="majorId != null and majorId != ''">
+            and wb.major_id = #{majorId}
+        </if>
+
+        <if test="classstrId != null and classstrId != ''">
+            and wb.classstr_id = #{classstrId}
+        </if>
+
+        <if test="retentionState != null and retentionState != ''">
+            and wb.retention_state = #{retentionState}
+        </if>
+
+        order by LPAD(wb.build, 20, '0'),wb.dormitory,wb.number asc
+    </select>
 </mapper>

+ 12 - 1
src/main/resources/mapper/template/WelcomeBuildMapper.xml

@@ -25,6 +25,17 @@
         <if test="sex != null and sex != ''">
             and wb.sex = #{sex}
         </if>
-        order by wb.create_time desc
+        order by LPAD(wb.build, 20, '0') asc
+    </select>
+    <select id="buildGroup" resultType="com.template.model.pojo.WelcomeBuild">
+        SELECT
+            wb.*
+        FROM
+            `welcome_build` wb
+        WHERE wb.deleted=0
+        <if test="schoolId != null and schoolId != ''">
+            and wb.school_id = #{schoolId}
+        </if>
+        order by LPAD(wb.build, 20, '0') asc
     </select>
 </mapper>

+ 37 - 16
src/main/resources/mapper/template/WelcomeDormitoryMapper.xml

@@ -4,10 +4,11 @@
     <update id="updateBuild">
         UPDATE `welcome_dormitory`
         SET
-            build= #{build}
+            build= #{build},
+            school_id= #{schoolId},
+            school= #{school}
         WHERE
             deleted=0
-          AND school_id= #{schoolId}
           AND build_id= #{buildId}
 
     </update>
@@ -22,7 +23,7 @@
         wd.dormitory,
         wd.sex,
         wd.college_id as collegeId,
-        wo.name as college,
+        wd.college as college,
         wd.grade as grade,
         wd.bed_number as bedNumber,
         wd.remark,
@@ -33,7 +34,6 @@
         `welcome_dormitory` wd
         LEFT JOIN welcome_school ws ON wd.school_id = ws.id and ws.deleted = 0
         LEFT JOIN welcome_build wb ON wd.build_id = wb.id and wb.deleted = 0
-        LEFT JOIN welcome_org wo ON wd.college_id = wo.id and wo.deleted = 0
         WHERE
         wd.deleted =0
         <if test="schoolId != null and schoolId != ''">
@@ -49,7 +49,7 @@
             and wd.sex = #{sex}
         </if>
         <if test="collegeId != null and collegeId != ''">
-            and wd.college_id = #{collegeId}
+            and FIND_IN_SET(#{collegeId} ,wd.college_id)
         </if>
         <if test="status != null and status != ''">
             and wd.status = #{status}
@@ -83,7 +83,7 @@
         wd.dormitory,
         wd.sex,
         wd.college_id as collegeId,
-        wo.name as college,
+        wd.college as college,
         wd.grade as grade,
         wd.bed_number as bedNumber,
         wd.remark,
@@ -94,7 +94,6 @@
         `welcome_dormitory` wd
         LEFT JOIN welcome_school ws ON wd.school_id = ws.id and ws.deleted = 0
         LEFT JOIN welcome_build wb ON wd.build_id = wb.id and wb.deleted = 0
-        LEFT JOIN welcome_org wo ON wd.college_id = wo.id and wo.deleted = 0
         WHERE
         wd.deleted =0
         <if test="schoolId != null and schoolId != ''">
@@ -110,7 +109,7 @@
             and wd.sex = #{sex}
         </if>
         <if test="collegeId != null and collegeId != ''">
-            and wd.college_id = #{collegeId}
+            and FIND_IN_SET(#{collegeId} ,wd.college_id)
         </if>
         <if test="status != null and status != ''">
             and wd.status = #{status}
@@ -118,7 +117,7 @@
         <if test="retentionState != null and retentionState != ''">
             and wd.retention_state = #{retentionState}
         </if>
-        order by wd.build,wd.dormitory asc
+        order by LPAD(wd.build, 20, '0'),wd.dormitory asc
     </select>
     <select id="listDormitoryCPage" resultType="com.template.model.vo.WelcomeDormitoryVo">
         SELECT
@@ -130,7 +129,7 @@
         wd.dormitory,
         wd.sex,
         wd.college_id as collegeId,
-        wo.name as college,
+        wd.college as college,
         wd.grade as grade,
         wd.bed_number as bedNumber,
         wd.remark,
@@ -141,7 +140,6 @@
         `welcome_dormitory` wd
         LEFT JOIN welcome_school ws ON wd.school_id = ws.id and ws.deleted = 0
         LEFT JOIN welcome_build wb ON wd.build_id = wb.id and wb.deleted = 0
-        LEFT JOIN welcome_org wo ON wd.college_id = wo.id and wo.deleted = 0
         WHERE
         wd.deleted =0
         <if test="schoolId != null and schoolId != ''">
@@ -162,8 +160,8 @@
         <if test="retentionState != null and retentionState != ''">
             and wd.retention_state = #{retentionState}
         </if>
-        AND FIND_IN_SET(wd.college_id,#{collegeIds})
-        order by wd.build,wd.dormitory asc
+        and  wd.college_id in (${collegeIds})
+        order by LPAD(wd.build, 20, '0'),wd.dormitory asc
     </select>
     <select id="listDormitoryS" resultType="com.template.model.vo.WelcomeDormitoryVo">
         SELECT
@@ -175,7 +173,7 @@
         wd.dormitory,
         wd.sex,
         wd.college_id as collegeId,
-        wo.name as college,
+        wd.college as college,
         wd.grade as grade,
         wd.bed_number as bedNumber,
         wd.remark,
@@ -186,7 +184,6 @@
         `welcome_dormitory` wd
         LEFT JOIN welcome_school ws ON wd.school_id = ws.id and ws.deleted = 0
         LEFT JOIN welcome_build wb ON wd.build_id = wb.id and wb.deleted = 0
-        LEFT JOIN welcome_org wo ON wd.college_id = wo.id and wo.deleted = 0
         WHERE
         wd.deleted =0
         <if test="schoolId != null and schoolId != ''">
@@ -207,7 +204,31 @@
         <if test="retentionState != null and retentionState != ''">
             and wd.retention_state = #{retentionState}
         </if>
-        and FIND_IN_SET(wd.college_id ,#{collegeIds})
+        and  wd.college_id in (${collegeIds})
         order by wd.build,wd.dormitory asc
     </select>
+
+    <select id="saveBedDormitoryGroup" resultType="com.template.model.pojo.WelcomeDormitory">
+        SELECT
+            wd.*
+        FROM
+            `welcome_dormitory` wd
+        where wd.deleted =0
+        and wd.school_id = #{schoolId}
+        and wd.build_id = #{buildId}
+        and  wd.college_id in (${collegeIds})
+        group by wd.build,wd.dormitory
+        order by LPAD(wd.build, 20, '0'),wd.dormitory asc
+    </select>
+    <select id="saveBedBuildGroup" resultType="com.template.model.pojo.WelcomeDormitory">
+        SELECT
+            wd.*
+        FROM
+            `welcome_dormitory` wd
+        where wd.deleted =0
+          and wd.school_id = #{schoolId}
+        and  wd.college_id in (${collegeIds})
+        group by wd.build
+        order by LPAD(wd.build, 20, '0') asc
+    </select>
 </mapper>

+ 42 - 4
src/main/resources/mapper/template/WelcomeStudentMapper.xml

@@ -23,7 +23,7 @@
         select (select count(id) from welcome_accompany where student_card = ws.card_id and deleted = 0) as accompanyNum,
         ws.id,ws.admiss_num,ws.name,ws.card_id,ws.college,ws.major,ws.classstr,
         ws.traffic_method,ws.arrive,ws.amount_payable,ws.pay_amount,ws.fill_status,
-        CONCAT(wsd.build, '-', wsd.dormitory, '-', wsd.number) as dormitory,ws.sex
+        CONCAT(wsd.build, '-', wsd.dormitory, '-', wsd.number) as dormitory,ws.sex,ws.is_registered as isRegistered
         from welcome_student ws
         left join welcome_bed wsd on wsd.deleted =0 and wsd.student_card = ws.card_id
         where ws.deleted = 0
@@ -48,12 +48,21 @@
         <if test="fillStatus != null and fillStatus != ''">
             and ws.fill_status = #{fillStatus}
         </if>
+        <if test="isRegistered != null and isRegistered != ''">
+            <if test="isRegistered == 1">
+                and ws.is_registered = #{isRegistered}
+            </if>
+            <if test="isRegistered == 2">
+                and (ws.is_registered =2 or ws.is_registered is NULL)
+            </if>
+        </if>
+
         and ws.iden_type != 2
         order by ws.update_time desc
     </select>
     <select id="studentRegister" resultType="com.template.model.vo.StudentRegisterVo">
         SELECT count(ws.id) AS count,
-	           wo.`name` AS collegeName
+	           wo.`name`
         FROM
             `welcome_student` ws
             LEFT JOIN welcome_org wo
@@ -61,7 +70,7 @@
         WHERE
             ws.deleted = 0
           AND ws.iden_type=1
-          AND ws.fill_status = "已填报"
+          AND ws.is_registered = 1
         GROUP BY
             college_id
     </select>
@@ -73,7 +82,7 @@
         WHERE
             ws.deleted = 0
           AND ws.iden_type=1
-          AND ws.fill_status = "已填报"
+          AND ws.fill_status = '已填报'
         GROUP BY
             traffic_method
     </select>
@@ -134,6 +143,35 @@
         where deleted = 0 and iden_type = 1
         group by college,sex
     </select>
+    <select id="studentMajorRegister" resultType="com.template.model.vo.StudentRegisterVo">
+        SELECT count(ws.id) AS count,
+	           wo.`name`
+        FROM
+            `welcome_student` ws
+            LEFT JOIN welcome_org wo
+        ON ws.major_id = wo.id AND wo.deleted = 0
+        WHERE
+            ws.deleted = 0
+          AND ws.iden_type=1
+          AND ws.is_registered = 1
+          AND ws.college_id= #{collegeId}
+        GROUP BY
+            ws.major_id
+    </select>
+    <select id="levelRegister" resultType="com.template.model.vo.StudentRegisterVo">
+        SELECT count(ws.id) AS count,
+	           ws.batch_value as name
+        FROM
+            `welcome_student` ws
+            LEFT JOIN welcome_org wo
+        ON ws.college_id = wo.id AND wo.deleted = 0
+        WHERE
+            ws.deleted = 0
+          AND ws.iden_type=1
+          AND ws.is_registered = 1
+        GROUP BY
+            ws.batch_value
+    </select>
 
 
 </mapper>