From a33e92958261970fade50db194cf565da0fbdf62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=81=92=E6=88=90?= <962704835@qq.com> Date: Fri, 31 Oct 2025 15:20:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A5=E4=BD=8F=E4=BF=A1=E6=81=AF=E6=9D=83?= =?UTF-8?q?=E9=99=90=E8=A7=A3=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SrsDormitoryStudentController.java | 54 ++++++++++++++++++- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/srs-admin/src/main/java/com/srs/web/controller/dormitory/SrsDormitoryStudentController.java b/srs-admin/src/main/java/com/srs/web/controller/dormitory/SrsDormitoryStudentController.java index 20946ac..6c3e207 100644 --- a/srs-admin/src/main/java/com/srs/web/controller/dormitory/SrsDormitoryStudentController.java +++ b/srs-admin/src/main/java/com/srs/web/controller/dormitory/SrsDormitoryStudentController.java @@ -174,12 +174,10 @@ public class SrsDormitoryStudentController extends BaseController { } - @PreAuthorize("@ss.hasPermi('dms:dormStu:add')") @ApiOperation(value = "学生自主选择床位", notes = "id不用填写,只能选择是当前学生班级并且为空的宿舍床位", response = StudentDormitoryDto.class) @PostMapping("/add") public AjaxResult add(@RequestBody StudentDormitoryDto dto) { boolean hasRole = RoleBool.isHigh(getUserId(), _postService); - System.out.println(hasRole); if (hasRole) { DomInfo dorm = _dormService.getDormHas(dto.getDormitoryId()); SrsStudent stu = _stuService.getStuInfo(dto.getStuNo()); @@ -224,6 +222,50 @@ public class SrsDormitoryStudentController extends BaseController { } } + + @PreAuthorize("@ss.hasPermi('dms:dormStu:add')") + @ApiOperation(value = "学生自主选择床位", notes = "id不用填写,只能选择是当前学生班级并且为空的宿舍床位", response = StudentDormitoryDto.class) + @PostMapping("/addCheckInInformation") + public AjaxResult addCheckInInformation(@RequestBody StudentDormitoryDto dto) { + DomInfo dorm = _dormService.getDormHas(dto.getDormitoryId()); + SrsStudent stu = _stuService.getStuInfo(dto.getStuNo()); + QueryWrapper query = new QueryWrapper<>(); + query.eq("stu_no", dto.getStuNo()); + SrsDormitoryStudent find = srsDormitoryStudentService.getOne(query); + if (find != null) { + return AjaxResult.error("该生已分配宿舍"); + } + if(dorm!=null) { + if (!Objects.equals(stu.getGender(), dorm.gender)) { + return AjaxResult.error("学生性别与宿舍性别不符"); + } + } + SrsDormitoryStudent param = new SrsDormitoryStudent(); + if(dto.getIsInStudentsleep().equals("否")||dto.getIsInStudentsleep().equals("外宿")||dto.getIsInStudentsleep().equals("外出实习")){ + param.setDormitoryId(null); + param.setBedId(null); + param.setStuNo(dto.getStuNo()); + param.setIsDormitoryHead(0); + param.setStatus(0); + param.setCheckinTime(null); + param.setIsInStudentsleep(dto.getIsInStudentsleep()); + } + if(dorm!=null) { + if (dorm.bedNum > dorm.occupancy) { +// param.setStuNo(dto.getStuNo()); +// param.setDormitoryId(dto.getDormitoryId()); +// param.setCheckinTime(dto.checkinTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); + if (dto.getIsInStudentsleep().equals("是")) { + param.setCheckinTime(dto.getCheckinTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); + BeanUtils.copyProperties(dto, param); + } + + } else { + return AjaxResult.error("宿舍床位不够"); + } + } + return toAjax(srsDormitoryStudentService.save(param)); + } @GetMapping("/list") public TableDataInfo list(DmsSearch param) { boolean hasRole = RoleBool.isHigh(getUserId(), _postService); @@ -237,6 +279,14 @@ public class SrsDormitoryStudentController extends BaseController { } } + @PreAuthorize("@ss.hasPermi('dms:dormStu:add')") + @GetMapping("/checkInInformation") + public TableDataInfo checkInInformation(DmsSearch param) { + startPage(); + List list = srsDormitoryStudentService.list(param); + return getDataTable(list); + } + @ApiOperation("查询学生宿舍关联列表") @PostMapping("/list")