ソースを参照

优化编辑寝室

夏文涛 1 年間 前
コミット
716e4c4104

+ 16 - 16
src/main/java/com/template/controller/WelcomeDormitoryController.java

@@ -66,15 +66,11 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
 
     @Override
     public CommonResult saveDormitory(WelcomeDormitory welcomeDormitory) {
-        LambdaQueryWrapper<WelcomeDormitory> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(WelcomeDormitory::getSchool, welcomeDormitory.getSchool())
-                .eq(WelcomeDormitory::getBuild, welcomeDormitory.getBuild())
-                .eq(WelcomeDormitory::getDormitory, welcomeDormitory.getDormitory());
-
-        WelcomeDormitory one = welcomeDormitoryService.getOne(wrapper);
-        if (ObjectUtils.isNotEmpty(one)) {
-            return CommonResult.fail("已存在该宿舍");
+        WelcomeDormitory existCount =welcomeDormitoryService.queryExistDormotory(welcomeDormitory.getSchoolId(),welcomeDormitory.getBuildId(),welcomeDormitory.getDormitory());
+        if(existCount != null && existCount.getId().intValue() != welcomeDormitory.getId().intValue()){
+            return CommonResult.ok("当前寝室号已存在");
         }
+
         if (ObjectUtils.isEmpty(welcomeDormitory.getRetentionState())) {
             //        默认保留
             welcomeDormitory.setRetentionState(1);
@@ -136,15 +132,19 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
     @Override
     public CommonResult updateDormitory(WelcomeDormitory welcomeDormitory) {
 
+         WelcomeDormitory existCount =welcomeDormitoryService.queryExistDormotory(welcomeDormitory.getSchoolId(),welcomeDormitory.getBuildId(),welcomeDormitory.getDormitory());
+         if(existCount != null && existCount.getId().intValue() != welcomeDormitory.getId().intValue()){
+             return CommonResult.ok("当前寝室号已存在");
+         }
+
 
         WelcomeDormitory one = welcomeDormitoryService.getById(welcomeDormitory.getId());
-        if (ObjectUtils.isNotEmpty(one)) {
-            if (!one.getId().equals(welcomeDormitory.getId())) {
-                return CommonResult.fail("已存在该宿舍");
-            }
+        if (one == null) {
+            return CommonResult.fail("宿舍号信息已存在");
         }
 
-        List<WelcomeBed> beds = welcomeBedService.queryDormitorys(one.getId());
+        //List<WelcomeBed> beds = welcomeBedService.queryDormitorys(one.getId());
+        List<WelcomeBed> beds = welcomeBedService.listWelcomeBed(welcomeDormitory.getId());
 
         //入住人数
         int count = (int) beds.stream().filter(e -> e.getDormitoryId().intValue() == welcomeDormitory.getId().intValue() && StringUtils.hasText(e.getStudentCard())).count();
@@ -166,14 +166,14 @@ public class WelcomeDormitoryController implements WelcomeDormitoryControllerAPI
 
         ArrayList<WelcomeBed> welcomeBeds = new ArrayList<>();
         //动态修改床位
-        List<WelcomeBed> list = welcomeBedService.listWelcomeBed(welcomeDormitory.getId());
-        if (list != null && list.size() > 0) {
+
+        if (beds != null && beds.size() > 0) {
 
             //动态生成床位
             Integer bedNumber = welcomeDormitory.getBedNumber();
             for (int i = 1; i <= bedNumber; i++) {
                 int intData = i;
-                Optional<WelcomeBed> oBed = list.stream().filter(e -> e.getNumber().intValue() == intData).findFirst();
+                Optional<WelcomeBed> oBed = beds.stream().filter(e -> e.getNumber().intValue() == intData).findFirst();
                 if (oBed != null && oBed.isPresent()) {
                     WelcomeBed wb = new WelcomeBed();
                     wb = oBed.get();

+ 2 - 0
src/main/java/com/template/services/WelcomeDormitoryService.java

@@ -37,4 +37,6 @@ public interface WelcomeDormitoryService extends IService<WelcomeDormitory> {
     List<WelcomeDormitory> collegeDormitoryCollegeGroup(Integer schoolId, Integer buildId, Integer collegeId);
 
     PageUtils<WelcomeDormitoryVo> listDormitoryPage(int currentPage, int pageCount, Integer schoolId, Integer buildId, Integer dormitoryId, String sex, Integer collegeId, Integer status, Integer retentionState);
+
+    WelcomeDormitory queryExistDormotory(Integer schoolId, Integer buildId, String dormitory);
 }

+ 10 - 0
src/main/java/com/template/services/impl/WelcomeDormitoryServiceImpl.java

@@ -106,4 +106,14 @@ public class WelcomeDormitoryServiceImpl extends ServiceImpl<WelcomeDormitoryMap
         IPage<WelcomeDormitoryVo> result = welcomeDormitoryMapper.listDormitoryPage(page,schoolId,buildId,dormitoryId,sex,collegeId,status,retentionState);
         return new PageUtils<>(result);
     }
+
+    @Override
+    public WelcomeDormitory queryExistDormotory(Integer schoolId, Integer buildId, String dormitory) {
+        QueryWrapper<WelcomeDormitory> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("school_id",schoolId);
+        queryWrapper.eq("build_id",buildId);
+        queryWrapper.eq("dormitory",dormitory);
+        WelcomeDormitory result = welcomeDormitoryMapper.selectOne(queryWrapper);
+        return result;
+    }
 }