浏览代码

Merge branch 'master' of https://e.coding.net/chuanghaikeji/smarCampus/iHotel_student_houtai into develop-wxl

wanxl 1 年之前
父节点
当前提交
8e79e122ab
共有 23 个文件被更改,包括 439 次插入140 次删除
  1. 12 7
      src/main/java/com/template/api/HouseOrderAPI.java
  2. 6 4
      src/main/java/com/template/api/HousePriceAPI.java
  3. 12 1
      src/main/java/com/template/component/WeiXiaoComponent.java
  4. 11 4
      src/main/java/com/template/controller/HouseNumberStateController.java
  5. 151 75
      src/main/java/com/template/controller/HouseOrderController.java
  6. 54 6
      src/main/java/com/template/controller/HousePriceController.java
  7. 10 1
      src/main/java/com/template/controller/LoginController.java
  8. 2 2
      src/main/java/com/template/mapper/HouseOrderMapper.java
  9. 2 0
      src/main/java/com/template/mapper/HousePriceMapper.java
  10. 3 0
      src/main/java/com/template/model/pojo/HouseOrder.java
  11. 1 1
      src/main/java/com/template/model/vo/AlterPriceRecordVo.java
  12. 25 5
      src/main/java/com/template/model/vo/HouseOrderPageListVo.java
  13. 14 0
      src/main/java/com/template/model/vo/HousePriceOrderVo.java
  14. 2 0
      src/main/java/com/template/model/vo/HouseStateVo.java
  15. 14 0
      src/main/java/com/template/model/vo/ParticularHouseNumberStatusVo.java
  16. 38 14
      src/main/java/com/template/model/vo/QueryExportVo.java
  17. 2 2
      src/main/java/com/template/services/HouseOrderService.java
  18. 2 0
      src/main/java/com/template/services/HousePriceService.java
  19. 8 4
      src/main/java/com/template/services/impl/HouseOrderServiceImpl.java
  20. 5 0
      src/main/java/com/template/services/impl/HousePriceServiceImpl.java
  21. 3 1
      src/main/resources/mapper/template/HouseNumberMapper.xml
  22. 51 13
      src/main/resources/mapper/template/HouseOrderMapper.xml
  23. 11 0
      src/main/resources/mapper/template/HousePriceMapper.xml

+ 12 - 7
src/main/java/com/template/api/HouseOrderAPI.java

@@ -34,7 +34,7 @@ public interface HouseOrderAPI {
 
 
     @GetMapping("/pageList")
     @GetMapping("/pageList")
     @ApiOperation(value = "订单管理-订单页面展示", notes = "订单管理-订单页面展示", httpMethod = "GET")
     @ApiOperation(value = "订单管理-订单页面展示", notes = "订单管理-订单页面展示", httpMethod = "GET")
-    CommonResult pageList(int adminId, int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime);
+    CommonResult pageList(int adminId, int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack);
 
 
     @PostMapping("/cancel")
     @PostMapping("/cancel")
     @ApiOperation(value = "订单管理-订单取消", notes = "订单管理-订单取消", httpMethod = "POST")
     @ApiOperation(value = "订单管理-订单取消", notes = "订单管理-订单取消", httpMethod = "POST")
@@ -52,17 +52,13 @@ public interface HouseOrderAPI {
     @ApiOperation(value = "订单管理-退房", notes = "订单管理-退房", httpMethod = "POST")
     @ApiOperation(value = "订单管理-退房", notes = "订单管理-退房", httpMethod = "POST")
     CommonResult checkOut(@RequestBody CheckOutDto checkOutDto);
     CommonResult checkOut(@RequestBody CheckOutDto checkOutDto);
 
 
-    @PostMapping("/refund")
-    @ApiOperation(value = "订单管理-退款", notes = "订单管理-退款", httpMethod = "POST")
-    CommonResult refund();
-
     @PostMapping("/roomChange")
     @PostMapping("/roomChange")
     @ApiOperation(value = "订单管理-换房", notes = "订单管理-换房", httpMethod = "POST")
     @ApiOperation(value = "订单管理-换房", notes = "订单管理-换房", httpMethod = "POST")
     CommonResult roomChange(@RequestBody RoomChangeDto roomChangeDto);
     CommonResult roomChange(@RequestBody RoomChangeDto roomChangeDto);
 
 
     @GetMapping("/queryExport")
     @GetMapping("/queryExport")
     @ApiOperation(value = "订单管理-订单导出", notes = "订单管理-订单导出", httpMethod = "GET")
     @ApiOperation(value = "订单管理-订单导出", notes = "订单管理-订单导出", httpMethod = "GET")
-    void queryExport(HttpServletResponse response, int adminId, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime);
+    void queryExport(HttpServletResponse response, int adminId, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack);
 
 
     @GetMapping("/reportStatistics")
     @GetMapping("/reportStatistics")
     @ApiOperation(value = "统计报表", notes = "统计报表", httpMethod = "GET")
     @ApiOperation(value = "统计报表", notes = "统计报表", httpMethod = "GET")
@@ -109,7 +105,7 @@ public interface HouseOrderAPI {
 
 
     // 取消
     // 取消
     @PostMapping("/cancelApplet")
     @PostMapping("/cancelApplet")
-    @ApiOperation(value = "订单管理-订单取消", notes = "订单管理-订单取消", httpMethod = "POST")
+    @ApiOperation(value = "小程序-订单取消", notes = "小程序-订单取消", httpMethod = "POST")
     CommonResult cancelApplet(@RequestBody CancelAppletDto cancelAppletDto);
     CommonResult cancelApplet(@RequestBody CancelAppletDto cancelAppletDto);
 
 
 
 
@@ -134,5 +130,14 @@ public interface HouseOrderAPI {
     @ApiOperation(value = "获取支付人openid", notes = "获取支付人openid", httpMethod = "POST")
     @ApiOperation(value = "获取支付人openid", notes = "获取支付人openid", httpMethod = "POST")
     CommonResult getPayOpenId(@RequestParam String wxcode) throws Exception;
     CommonResult getPayOpenId(@RequestParam String wxcode) throws Exception;
 
 
+
+    @GetMapping("/ifGiveBack")
+    @ApiOperation(value = "是否归还钥匙房卡", notes = "小程序-钟点房当天占用状态", httpMethod = "GET")
+    CommonResult ifGiveBack(@RequestParam Integer houseOrderId,@RequestParam Integer giveBack);
+
+    @GetMapping("/saveRemark")
+    @ApiOperation(value = "备注", notes = "备注", httpMethod = "GET")
+    CommonResult saveRemark(@RequestParam Integer houseOrderId,@RequestParam String remark);
+
 }
 }
 
 

+ 6 - 4
src/main/java/com/template/api/HousePriceAPI.java

@@ -3,10 +3,7 @@ package com.template.api;
 import com.template.model.dto.AlterPriceDto;
 import com.template.model.dto.AlterPriceDto;
 import com.template.model.result.CommonResult;
 import com.template.model.result.CommonResult;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.*;
 
 
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 
 
@@ -35,4 +32,9 @@ public interface HousePriceAPI {
     @GetMapping("/queryExport")
     @GetMapping("/queryExport")
     @ApiOperation(value = "改价记录导出", notes = "改价记录导出", httpMethod = "GET")
     @ApiOperation(value = "改价记录导出", notes = "改价记录导出", httpMethod = "GET")
     void queryExport(HttpServletResponse response, String type, String houseName, String operatingTime, String priceTime, String operatingName);
     void queryExport(HttpServletResponse response, String type, String houseName, String operatingTime, String priceTime, String operatingName);
+
+    @GetMapping("/housePriceOrder")
+    @ApiOperation(value = "房价展示", notes = "房价展示", httpMethod = "GET")
+    CommonResult housePrice(@RequestParam String startTime,@RequestParam String endTime,@RequestParam String houseId);
+
 }
 }

+ 12 - 1
src/main/java/com/template/component/WeiXiaoComponent.java

@@ -9,6 +9,9 @@ import com.template.config.WeixiaoConfig;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.StringRedisTemplate;
 import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 import org.springframework.web.client.RestTemplate;
 import org.springframework.web.client.RestTemplate;
@@ -101,7 +104,15 @@ public class WeiXiaoComponent {
 
 
         try {
         try {
             RestTemplate client = new RestTemplate();
             RestTemplate client = new RestTemplate();
-            ResponseEntity<String> tokenResponse = client.postForEntity(uri, tokenParams, String.class);
+
+            // wecode换取token
+            HttpHeaders headers = new HttpHeaders();
+            headers.setContentType(MediaType.APPLICATION_JSON);
+            HttpEntity<Map<String, String>> request = new HttpEntity<>(tokenParams, headers);
+
+            ResponseEntity<String> tokenResponse = client.postForEntity(uri, request, String.class);
+
+//            ResponseEntity<String> tokenResponse = client.postForEntity(uri, tokenParams, String.class);(需要加头部)
             String body = tokenResponse.getBody();
             String body = tokenResponse.getBody();
             log.info("微校请求token返回结果【{}】", body);
             log.info("微校请求token返回结果【{}】", body);
             ObjectMapper mapper = new ObjectMapper();
             ObjectMapper mapper = new ObjectMapper();

+ 11 - 4
src/main/java/com/template/controller/HouseNumberStateController.java

@@ -417,6 +417,14 @@ public class HouseNumberStateController implements HouseNumberStateAPI {
                     vo.setPayPrice(houseOrder.getPayPrice());
                     vo.setPayPrice(houseOrder.getPayPrice());
 //                  密码
 //                  密码
                     vo.setPassWord(houseOrder.getKeyPassWord());
                     vo.setPassWord(houseOrder.getKeyPassWord());
+//                   钥匙类型
+                    vo.setLockStatus(houseOrder.getKeyType());
+//                  是否归还
+                    vo.setGiveBack(houseOrder.getGiveBack());
+//                   超时时间
+                    vo.setTimeOut(houseOrder.getTimeOut());
+//                    订单id
+                    vo.setHouseOrderId(houseOrder.getId());
 
 
 //                    已入住时间
 //                    已入住时间
                     LocalDateTime now = LocalDateTime.now();
                     LocalDateTime now = LocalDateTime.now();
@@ -860,17 +868,16 @@ public class HouseNumberStateController implements HouseNumberStateAPI {
                 users1.setIdCardInformation(idCardInformation);
                 users1.setIdCardInformation(idCardInformation);
 //                users1.setUserMenuId("1");
 //                users1.setUserMenuId("1");
                 boolean save = usersService.save(users1);
                 boolean save = usersService.save(users1);
-//                houseOrder.setLiveUsersId(users1.getId() + "");
+                houseOrder.setLiveUsersId(users1.getId() + "");
             } else {
             } else {
 //                users.setCardNumber(cardNumber);
 //                users.setCardNumber(cardNumber);
                 users.setFingerprint(fingerprint);
                 users.setFingerprint(fingerprint);
                 users.setIdCard(idCard);
                 users.setIdCard(idCard);
                 users.setIdCardInformation(idCardInformation);
                 users.setIdCardInformation(idCardInformation);
                 usersService.updateById(users);
                 usersService.updateById(users);
-//                houseOrder.setLiveUsersId(users.getId() + "");
+                houseOrder.setLiveUsersId(users.getId() + "");
             }
             }
-            houseOrder.setLiveUsersId(users.getId() + "");
-            houseOrder.setLiveUsersId(houseOrder.getReserveUserId());
+
             DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
             DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
             Date liveDate = Date.from(LocalDateTime.parse(liveTime, dateTimeFormatter1).atZone(ZoneId.systemDefault()).toInstant());
             Date liveDate = Date.from(LocalDateTime.parse(liveTime, dateTimeFormatter1).atZone(ZoneId.systemDefault()).toInstant());
             Date leaveDate = Date.from(LocalDateTime.parse(leaveTime, dateTimeFormatter1).atZone(ZoneId.systemDefault()).toInstant());
             Date leaveDate = Date.from(LocalDateTime.parse(leaveTime, dateTimeFormatter1).atZone(ZoneId.systemDefault()).toInstant());

+ 151 - 75
src/main/java/com/template/controller/HouseOrderController.java

@@ -210,7 +210,7 @@ public class HouseOrderController implements HouseOrderAPI {
         LocalDateTime date = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
         LocalDateTime date = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
         if (now.isAfter(date)) {
         if (now.isAfter(date)) {
             reserveLiveTime = now.format(dateTimeFormatter1);
             reserveLiveTime = now.format(dateTimeFormatter1);
-            establishOrderDto.setReserveLeaveTime(reserveLeaveTime);
+//            establishOrderDto.setReserveLiveTime(reserveLeaveTime);
         }
         }
 
 
 //        获取该时间段内的所有使用的房间
 //        获取该时间段内的所有使用的房间
@@ -270,15 +270,15 @@ public class HouseOrderController implements HouseOrderAPI {
             Integer roomType = house.getRoomType();
             Integer roomType = house.getRoomType();
             if (1 == roomType) {
             if (1 == roomType) {
 //                DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 //                DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
-                LocalDateTime start = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
-                LocalDateTime end = LocalDateTime.parse(reserveLeaveTime, dateTimeFormatter1);
-                String startTime = start.format(dateTimeFormatter1);
-                String endTime = end.format(dateTimeFormatter1);
-                houseNumberState.setStartTime(startTime);
-                houseNumberState.setEndTime(endTime);
-            } else {
+//                LocalDateTime start = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
+//                LocalDateTime end = LocalDateTime.parse(reserveLeaveTime, dateTimeFormatter1);
+//                String startTime = start.format(dateTimeFormatter1);
+//                String endTime = end.format(dateTimeFormatter1);
                 houseNumberState.setStartTime(reserveLiveTime);
                 houseNumberState.setStartTime(reserveLiveTime);
                 houseNumberState.setEndTime(reserveLeaveTime);
                 houseNumberState.setEndTime(reserveLeaveTime);
+            } else {
+                houseNumberState.setStartTime(establishOrderDto.getReserveLiveTime());
+                houseNumberState.setEndTime(reserveLeaveTime);
             }
             }
 
 
 
 
@@ -296,9 +296,9 @@ public class HouseOrderController implements HouseOrderAPI {
 //        预定人电话号码
 //        预定人电话号码
         houseOrder.setReservePhone(establishOrderDto.getReservePhone());
         houseOrder.setReservePhone(establishOrderDto.getReservePhone());
 //        预定入住时间
 //        预定入住时间
-        houseOrder.setReserveLiveTime(establishOrderDto.getReserveLiveTime());
+        houseOrder.setReserveLiveTime(reserveLiveTime);
 //        预定离开时间
 //        预定离开时间
-        houseOrder.setReserveLeaveTime(establishOrderDto.getReserveLeaveTime());
+        houseOrder.setReserveLeaveTime(reserveLeaveTime);
 //        超时时间
 //        超时时间
         String timeOut = now.plusMinutes(15).format(dateTimeFormatter1);
         String timeOut = now.plusMinutes(15).format(dateTimeFormatter1);
         houseOrder.setTimeOut(timeOut);
         houseOrder.setTimeOut(timeOut);
@@ -460,6 +460,25 @@ public class HouseOrderController implements HouseOrderAPI {
         }
         }
 
 
         HouseOrder houseOrder = houseOrderService.getById(houseOrderId);
         HouseOrder houseOrder = houseOrderService.getById(houseOrderId);
+
+//        判断当然时间是否在入住时间内。是的话则可以入住
+        //        判断传过来的时间和当前时间比较
+        DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        LocalDateTime now = LocalDateTime.now();
+        String reserveLiveTime = houseOrder.getReserveLiveTime();
+        LocalDateTime date2 = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
+        if (date2.isAfter(now)) {
+            return CommonResult.fail("未到入住时间");
+        }
+
+        //        判断当然时间是否在入住时间内。是的话则可以入住
+        String reserveLeaveTime = houseOrder.getReserveLeaveTime();
+        LocalDateTime date3 = LocalDateTime.parse(reserveLeaveTime, dateTimeFormatter1);
+        if (now.isAfter(date3)) {
+            return CommonResult.fail("已超过入住时间,请前往前台办理");
+        }
+
+
 //      预定人就是入住人
 //      预定人就是入住人
         String reserveName = houseOrder.getReserveName();
         String reserveName = houseOrder.getReserveName();
         houseOrder.setLiveName(reserveName);
         houseOrder.setLiveName(reserveName);
@@ -468,8 +487,7 @@ public class HouseOrderController implements HouseOrderAPI {
         Date date = new Date();
         Date date = new Date();
         houseOrder.setLiveTime(date);
         houseOrder.setLiveTime(date);
 //      离店时间=预离店时间
 //      离店时间=预离店时间
-        String reserveLeaveTime = houseOrder.getReserveLeaveTime();
-        DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+//        String reserveLeaveTime = houseOrder.getReserveLeaveTime();
         Date leaveTime = Date.from(LocalDateTime.parse(reserveLeaveTime, dateTimeFormatter1).atZone(ZoneId.systemDefault()).toInstant());
         Date leaveTime = Date.from(LocalDateTime.parse(reserveLeaveTime, dateTimeFormatter1).atZone(ZoneId.systemDefault()).toInstant());
 //        houseOrder.setLiveTime(leaveTime);
 //        houseOrder.setLiveTime(leaveTime);
 
 
@@ -573,7 +591,7 @@ public class HouseOrderController implements HouseOrderAPI {
     }
     }
 
 
     @Override
     @Override
-    public CommonResult pageList(int adminId, int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime) {
+    public CommonResult pageList(int adminId, int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack) {
 //        PermissionSetting permissionSetting = permissionSettingService.getById(adminId);
 //        PermissionSetting permissionSetting = permissionSettingService.getById(adminId);
 //        if (ObjectUtils.isEmpty(permissionSetting)) {
 //        if (ObjectUtils.isEmpty(permissionSetting)) {
 //            return CommonResult.fail("非法进入");
 //            return CommonResult.fail("非法进入");
@@ -592,7 +610,7 @@ public class HouseOrderController implements HouseOrderAPI {
             size = 10;
             size = 10;
         }
         }
 
 
-        PageUtils<HouseOrderPageListVo> pageList = houseOrderService.pageList(page, size, keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime);
+        PageUtils<HouseOrderPageListVo> pageList = houseOrderService.pageList(page, size, keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime,houseId,keyType,giveBack);
         List<HouseOrderPageListVo> list = pageList.getList();
         List<HouseOrderPageListVo> list = pageList.getList();
         for (int i = 0; i < list.size(); i++) {
         for (int i = 0; i < list.size(); i++) {
             HouseOrderPageListVo houseOrderPageListVo = list.get(i);
             HouseOrderPageListVo houseOrderPageListVo = list.get(i);
@@ -650,8 +668,8 @@ public class HouseOrderController implements HouseOrderAPI {
             wrapperHo.eq(HouseOrder::getOrderNumber, orderNumber);
             wrapperHo.eq(HouseOrder::getOrderNumber, orderNumber);
             HouseOrder houseOrder = houseOrderService.getOne(wrapperHo);
             HouseOrder houseOrder = houseOrderService.getOne(wrapperHo);
             String orderStatus = houseOrder.getOrderStatus();
             String orderStatus = houseOrder.getOrderStatus();
-            if (!"1".equals(orderStatus)) {
-                return CommonResult.fail("该订单不是待支付,不能直接取消");
+            if (!("1".equals(orderStatus)||"2".equals(orderStatus)||"3".equals(orderStatus))) {
+                return CommonResult.fail("该订单不是待支付,已支付,待入住,不能直接取消");
             }
             }
 
 
 // 修改订单状态
 // 修改订单状态
@@ -1171,10 +1189,7 @@ public class HouseOrderController implements HouseOrderAPI {
 
 
     }
     }
 
 
-    @Override
-    public CommonResult refund() {
-        return null;
-    }
+
 
 
     @Override
     @Override
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
@@ -1417,7 +1432,7 @@ public class HouseOrderController implements HouseOrderAPI {
     }
     }
 
 
     @Override
     @Override
-    public void queryExport(HttpServletResponse response, int adminId, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime) {
+    public void queryExport(HttpServletResponse response, int adminId, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack) {
 //        PermissionSetting permissionSetting = permissionSettingService.getById(adminId);
 //        PermissionSetting permissionSetting = permissionSettingService.getById(adminId);
 //        if (ObjectUtils.isEmpty(permissionSetting)) {
 //        if (ObjectUtils.isEmpty(permissionSetting)) {
 //            return CommonResult.fail("非法进入");
 //            return CommonResult.fail("非法进入");
@@ -1428,64 +1443,66 @@ public class HouseOrderController implements HouseOrderAPI {
 //            return CommonResult.fail("此账号暂无该权限");
 //            return CommonResult.fail("此账号暂无该权限");
 //        }
 //        }
 
 
-        List<QueryExportVo> vos = houseOrderService.queryExport(keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime);
+        List<QueryExportVo> vos = houseOrderService.queryExport(keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime,houseId,keyType,giveBack);
 
 
         //        导出
         //        导出
         Workbook workbook = new XSSFWorkbook();
         Workbook workbook = new XSSFWorkbook();
         Sheet sheet = workbook.createSheet("订单表");
         Sheet sheet = workbook.createSheet("订单表");
         Row headerRow = sheet.createRow(0);
         Row headerRow = sheet.createRow(0);
-        headerRow.createCell(0).setCellValue("订单号");
-        headerRow.createCell(1).setCellValue("入住时间");
-        headerRow.createCell(2).setCellValue("离店时间");
-        headerRow.createCell(3).setCellValue("用户人名称");
-        headerRow.createCell(4).setCellValue("入住人名称");
-        headerRow.createCell(5).setCellValue("手机号码");
-        headerRow.createCell(6).setCellValue("房型");
-        headerRow.createCell(7).setCellValue("房间号");
-        headerRow.createCell(8).setCellValue("订单金额");
-        headerRow.createCell(9).setCellValue("支付方式");
-        headerRow.createCell(10).setCellValue("订单渠道");
-        headerRow.createCell(11).setCellValue("订单状态");
-        headerRow.createCell(12).setCellValue("支付时间");
-        headerRow.createCell(13).setCellValue("退款时间");
-        headerRow.createCell(14).setCellValue("取消时间");
+        headerRow.createCell(0).setCellValue("房间号");
+        headerRow.createCell(1).setCellValue("房类");
+        headerRow.createCell(2).setCellValue("房型名称");
+        headerRow.createCell(3).setCellValue("钥匙类型");
+        headerRow.createCell(4).setCellValue("是否归还");
+        headerRow.createCell(5).setCellValue("预定人");
+        headerRow.createCell(6).setCellValue("手机号码");
+        headerRow.createCell(7).setCellValue("入住人");
+        headerRow.createCell(8).setCellValue("身份证");
+        headerRow.createCell(9).setCellValue("订单号");
+        headerRow.createCell(10).setCellValue("入住时间");
+        headerRow.createCell(11).setCellValue("离店时间");
+        headerRow.createCell(12).setCellValue("订单金额(元)");
+        headerRow.createCell(13).setCellValue("订单状态");
+        headerRow.createCell(14).setCellValue("备注");
+        headerRow.createCell(15).setCellValue("支付类型");
+        headerRow.createCell(16).setCellValue("来源渠道");
+        headerRow.createCell(17).setCellValue("支付时间");
+        headerRow.createCell(18).setCellValue("退款时间");
+        headerRow.createCell(19).setCellValue("取消时间");
 
 
         if (ObjectUtils.isNotEmpty(vos) && vos.size() > 0) {
         if (ObjectUtils.isNotEmpty(vos) && vos.size() > 0) {
             for (int i = 0; i < vos.size(); i++) {
             for (int i = 0; i < vos.size(); i++) {
                 QueryExportVo vo = vos.get(i);
                 QueryExportVo vo = vos.get(i);
                 Row dataRow1 = sheet.createRow(i + 1);
                 Row dataRow1 = sheet.createRow(i + 1);
-                dataRow1.createCell(0).setCellValue(vo.getOrderNumber());
-                dataRow1.createCell(1).setCellValue(vo.getLiveTime());
-                dataRow1.createCell(2).setCellValue(vo.getLeaveTime());
-                dataRow1.createCell(3).setCellValue(vo.getReserveName());
-                dataRow1.createCell(4).setCellValue(vo.getLiveName());
-                dataRow1.createCell(5).setCellValue(vo.getPhone());
-                dataRow1.createCell(6).setCellValue(vo.getHouseName());
-                dataRow1.createCell(7).setCellValue(vo.getHouseNumber());
+                dataRow1.createCell(0).setCellValue(vo.getHouseNumber());
+                Integer roomType = vo.getRoomType();
+                String houseSta="全日房";
+                if (2==roomType) {
+                    houseSta="钟点房";
+                }
+                dataRow1.createCell(1).setCellValue(houseSta);
+                dataRow1.createCell(2).setCellValue(vo.getHouseName());
+                dataRow1.createCell(3).setCellValue(vo.getLockStatus());
+                Integer giveBack1 = vo.getGiveBack();
+                String back="未归还";
+                if (1==giveBack1) {
+                    back="已归还";
+                }
+                dataRow1.createCell(4).setCellValue(back);
+                dataRow1.createCell(5).setCellValue(vo.getReserveName());
+                dataRow1.createCell(6).setCellValue(vo.getPhone());
+                dataRow1.createCell(7).setCellValue(vo.getLiveName());
+                dataRow1.createCell(8).setCellValue(vo.getIdCard());
+                dataRow1.createCell(9).setCellValue(vo.getOrderNumber());
+                dataRow1.createCell(10).setCellValue(vo.getLiveTime());
+                dataRow1.createCell(11).setCellValue(vo.getLeaveTime());
                 BigDecimal orderPrice = vo.getOrderPrice();
                 BigDecimal orderPrice = vo.getOrderPrice();
                 String price = "";
                 String price = "";
                 if (ObjectUtils.isNotEmpty(orderPrice)) {
                 if (ObjectUtils.isNotEmpty(orderPrice)) {
                     price = orderPrice.toString();
                     price = orderPrice.toString();
                 }
                 }
-                dataRow1.createCell(8).setCellValue(price);
-                //                pay_type 支付方式(微信支付,现金)
-                String payType = vo.getPayType();
-                String payName = "";
-                if ("1".equals(payType)) {
-                    payName = "微信支付";
-                } else if ("2".equals(payType)) {
-                    payName = "现金";
-                }
-                dataRow1.createCell(9).setCellValue(payName);
-                //                order_channel 订单渠道(1:线上,2:线下)
-                String orderChannelType = vo.getOrderChannelType();
-                String orderChannelName = "";
-                if ("1".equals(orderChannelType)) {
-                    orderChannelName = "线上";
-                } else if ("2".equals(orderChannelType)) {
-                    orderChannelName = "线下";
-                }
-                dataRow1.createCell(10).setCellValue(orderChannelName);
+                dataRow1.createCell(12).setCellValue(price);
+
                 //                订单 订单状态 1.待支付,2.已支付,3.待入住,4.已入住,5.待结账,6.退款中,7.已退款,8.已退房,9.已取消,超时
                 //                订单 订单状态 1.待支付,2.已支付,3.待入住,4.已入住,5.待结账,6.退款中,7.已退款,8.已退房,9.已取消,超时
                 String orderStart = vo.getOrderStart();
                 String orderStart = vo.getOrderStart();
                 String orderName = "";
                 String orderName = "";
@@ -1508,10 +1525,31 @@ public class HouseOrderController implements HouseOrderAPI {
                 } else if ("9".equals(orderStart)) {
                 } else if ("9".equals(orderStart)) {
                     orderName = "已取消";
                     orderName = "已取消";
                 }
                 }
-                dataRow1.createCell(11).setCellValue(orderName);
-                dataRow1.createCell(12).setCellValue(vo.getPayTime());
-                dataRow1.createCell(13).setCellValue(vo.getRefundTime());
-                dataRow1.createCell(14).setCellValue(vo.getCancelTime());
+                dataRow1.createCell(13).setCellValue(orderName);
+                dataRow1.createCell(14).setCellValue(vo.getRemark());
+
+                //                pay_type 支付方式(微信支付,现金)
+                String payType = vo.getPayType();
+                String payName = "";
+                if ("1".equals(payType)) {
+                    payName = "微信支付";
+                } else if ("2".equals(payType)) {
+                    payName = "现金";
+                }
+                dataRow1.createCell(15).setCellValue(payName);
+                //                order_channel 订单渠道(1:线上,2:线下)
+                String orderChannelType = vo.getOrderChannelType();
+                String orderChannelName = "";
+                if ("1".equals(orderChannelType)) {
+                    orderChannelName = "线上";
+                } else if ("2".equals(orderChannelType)) {
+                    orderChannelName = "线下";
+                }
+                dataRow1.createCell(16).setCellValue(orderChannelName);
+
+                dataRow1.createCell(17).setCellValue(vo.getPayTime());
+                dataRow1.createCell(18).setCellValue(vo.getRefundTime());
+                dataRow1.createCell(19).setCellValue(vo.getCancelTime());
             }
             }
         }
         }
         // 将工作簿写入文件
         // 将工作簿写入文件
@@ -1843,8 +1881,8 @@ public class HouseOrderController implements HouseOrderAPI {
                         throw new Exception("支付失败!");
                         throw new Exception("支付失败!");
                     }
                     }
                 }
                 }
-//              已支付
-                ho.setOrderStatus("2");
+//              金额为0为待入住
+                ho.setOrderStatus("3");
 //               支付时间
 //               支付时间
                 ho.setPayTime(LocalDateTime.now().format(dateTimeFormatter));
                 ho.setPayTime(LocalDateTime.now().format(dateTimeFormatter));
 //                支付渠道
 //                支付渠道
@@ -1856,6 +1894,7 @@ public class HouseOrderController implements HouseOrderAPI {
                 if (!updateHouseOrder) {
                 if (!updateHouseOrder) {
                     throw new Exception("支付失败!");
                     throw new Exception("支付失败!");
                 }
                 }
+                log.info("金额为0,待入住成功");
                 return CommonResult.ok("支付金额为0,不用走微信支付");
                 return CommonResult.ok("支付金额为0,不用走微信支付");
             }
             }
         } catch (Exception e) {
         } catch (Exception e) {
@@ -2491,6 +2530,7 @@ public class HouseOrderController implements HouseOrderAPI {
             return CommonResult.fail("无该订单");
             return CommonResult.fail("无该订单");
         }
         }
 
 
+
         try {
         try {
             LambdaQueryWrapper<HouseNumberState> wrapperHns = new LambdaQueryWrapper<>();
             LambdaQueryWrapper<HouseNumberState> wrapperHns = new LambdaQueryWrapper<>();
             wrapperHns.eq(HouseNumberState::getHouseNumberId, houseNumberId)
             wrapperHns.eq(HouseNumberState::getHouseNumberId, houseNumberId)
@@ -2506,17 +2546,24 @@ public class HouseOrderController implements HouseOrderAPI {
             //  设置取消时间
             //  设置取消时间
             houseOrder.setCancelTime(new Date());
             houseOrder.setCancelTime(new Date());
 
 
-            //现金支付直接修改未已退款
+            //现金支付则需要去前台办理
             if ("2".equals(houseOrder.getPayType())) {
             if ("2".equals(houseOrder.getPayType())) {
-                houseOrder.setOrderStatus("9");
-                houseOrderService.updateById(houseOrder);
-                houseNumberStateService.removeById(houseNumberState);
-                return CommonResult.ok("现金支付订单取消成功");
+                return CommonResult.fail("现金退款请往前台办理");
             }
             }
             String orderStatus = houseOrder.getOrderStatus();
             String orderStatus = houseOrder.getOrderStatus();
             //        判断是否付款,已支付则是退款,未支付则是取消
             //        判断是否付款,已支付则是退款,未支付则是取消
 
 
             if ("2".equals(orderStatus) || "3".equals(orderStatus)) {
             if ("2".equals(orderStatus) || "3".equals(orderStatus)) {
+                //        判断当然时间是否在预定时间内。是的话则可以退款
+                //        判断传过来的时间和当前时间比较
+                DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+                LocalDateTime now = LocalDateTime.now();
+                String reserveLiveTime = houseOrder.getReserveLiveTime();
+                LocalDateTime date = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
+                if (now.isAfter(date)) {
+                    return CommonResult.fail("已超过退款时间,如需退款请前往前台办理");
+                }
+
                 //        退款订单号
                 //        退款订单号
                 String refund_no = UUID.randomUUID().toString();
                 String refund_no = UUID.randomUUID().toString();
                 refund_no = "R" + refund_no.replace("-", "");
                 refund_no = "R" + refund_no.replace("-", "");
@@ -3097,6 +3144,34 @@ public class HouseOrderController implements HouseOrderAPI {
         return CommonResult.ok(openId);
         return CommonResult.ok(openId);
     }
     }
 
 
+    @Override
+    public CommonResult ifGiveBack(Integer houseOrderId, Integer giveBack) {
+        HouseOrder byId = houseOrderService.getById(houseOrderId);
+        if (ObjectUtils.isEmpty(byId)) {
+            return  CommonResult.fail("订单异常");
+        }
+        byId.setGiveBack(giveBack);
+
+        houseOrderService.updateById(byId);
+
+        return CommonResult.ok();
+    }
+
+    @Override
+    public CommonResult saveRemark(Integer houseOrderId, String remark) {
+        HouseOrder houseOrder = houseOrderService.getById(houseOrderId);
+
+        if (ObjectUtils.isEmpty(houseOrder)) {
+            return CommonResult.fail("订单不存在");
+        }
+
+        houseOrder.setRemark(remark);
+
+        houseOrderService.updateById(houseOrder);
+
+        return CommonResult.ok();
+    }
+
 
 
     public static void main(String[] args) throws Exception {
     public static void main(String[] args) throws Exception {
 //        获取签名
 //        获取签名
@@ -3323,6 +3398,7 @@ public class HouseOrderController implements HouseOrderAPI {
     //    到时间超时还未付款则取消
     //    到时间超时还未付款则取消
     @Scheduled(cron = "0 0/5 * * * ? ")
     @Scheduled(cron = "0 0/5 * * * ? ")
     public void getTimeOut() {
     public void getTimeOut() {
+
 //        当前时间
 //        当前时间
         LocalDateTime now = LocalDateTime.now();
         LocalDateTime now = LocalDateTime.now();
         LambdaQueryWrapper<HouseOrder> wrapper = new LambdaQueryWrapper<>();
         LambdaQueryWrapper<HouseOrder> wrapper = new LambdaQueryWrapper<>();

+ 54 - 6
src/main/java/com/template/controller/HousePriceController.java

@@ -15,10 +15,7 @@ import com.template.model.pojo.HousePrice;
 import com.template.model.pojo.PermissionSetting;
 import com.template.model.pojo.PermissionSetting;
 import com.template.model.result.CommonResult;
 import com.template.model.result.CommonResult;
 import com.template.model.result.PageUtils;
 import com.template.model.result.PageUtils;
-import com.template.model.vo.AlterPriceRecordVo;
-import com.template.model.vo.HousePricePageVo;
-import com.template.model.vo.HousePriceVo;
-import com.template.model.vo.RoomTypeVo;
+import com.template.model.vo.*;
 import com.template.services.HousePriceService;
 import com.template.services.HousePriceService;
 import com.template.services.HouseService;
 import com.template.services.HouseService;
 import com.template.services.PermissionSettingService;
 import com.template.services.PermissionSettingService;
@@ -28,11 +25,12 @@ import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
-
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.time.Duration;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
 import java.time.format.DateTimeFormatter;
@@ -332,7 +330,14 @@ public class HousePriceController implements HousePriceAPI {
             for (int i = 0; i < vos.size(); i++) {
             for (int i = 0; i < vos.size(); i++) {
                 AlterPriceRecordVo vo = vos.get(i);
                 AlterPriceRecordVo vo = vos.get(i);
                 Row dataRow1 = sheet.createRow(i + 1);
                 Row dataRow1 = sheet.createRow(i + 1);
-                dataRow1.createCell(0).setCellValue(vo.getHouseType());
+                int houseType = vo.getHouseType();
+                String houseStatus="";
+                if (1==houseType) {
+                    houseStatus="全日房";
+                }else {
+                    houseStatus="钟点房";
+                }
+                dataRow1.createCell(0).setCellValue(houseStatus);
                 dataRow1.createCell(1).setCellValue(vo.getHouseName());
                 dataRow1.createCell(1).setCellValue(vo.getHouseName());
                 dataRow1.createCell(2).setCellValue(vo.getSetDate());
                 dataRow1.createCell(2).setCellValue(vo.getSetDate());
                 dataRow1.createCell(3).setCellValue(vo.getAlterPrice().doubleValue());
                 dataRow1.createCell(3).setCellValue(vo.getAlterPrice().doubleValue());
@@ -346,7 +351,50 @@ public class HousePriceController implements HousePriceAPI {
 
 
     }
     }
 
 
+    @Override
+    public CommonResult housePrice(String startTime, String endTime, String houseId) {
+        House house = houseService.getById(houseId);
+        if (ObjectUtils.isEmpty(house)) {
+            return CommonResult.fail("房型异常");
+        }
+//        原价
+        BigDecimal roomPrice = house.getRoomPrice();
+
+        DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        DateTimeFormatter dateTimeFormatter2 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+        LocalDateTime start = LocalDateTime.parse(startTime, dateTimeFormatter1);
+        LocalDateTime end = LocalDateTime.parse(endTime, dateTimeFormatter1);
+        long l = Duration.between(start, end).toDays();
+        LocalDate startLocalDate = start.toLocalDate();
+        ArrayList<HousePriceOrderVo> vos = new ArrayList<>();
+        for (int i = 0; i < l; i++) {
+            HousePriceOrderVo vo = new HousePriceOrderVo();
+            LocalDate localDateTime = startLocalDate.plusDays(i);
+            vo.setDate(localDateTime.format(dateTimeFormatter2));
+            List<HousePrice> housePrices = housePriceService.getDatePrice(localDateTime, houseId);
+            if (housePrices.size()>0) {
+                HousePrice housePrice = housePrices.get(housePrices.size() - 1);
+                BigDecimal price = housePrice.getPrice();
+                vo.setPrice(price);
+            }else {
+//                没有改价记录则是原价
+                vo.setPrice(roomPrice);
+            }
+            vos.add(vo);
+
+        }
+        return CommonResult.ok(vos);
+    }
 
 
+    public static void main(String[] args) {
+        String startTime="2024-08-14 08:00:00";
+        String endTime="2024-08-18 14:00:00";
+        DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        LocalDateTime start = LocalDateTime.parse(startTime, dateTimeFormatter1);
+        LocalDateTime end = LocalDateTime.parse(endTime, dateTimeFormatter1);
+        long l = Duration.between(start, end).toDays();
+        System.out.println("l = " + l);
+    }
 
 
 }
 }
 
 

+ 10 - 1
src/main/java/com/template/controller/LoginController.java

@@ -553,7 +553,7 @@ public class LoginController implements LoginControllerAPI {
 
 
             menuBarVos.add(menuBarVo3);
             menuBarVos.add(menuBarVo3);
         }
         }
-//                订单
+//                订单管理
         String houseOrderManagement = one.getHouseOrderManagement();
         String houseOrderManagement = one.getHouseOrderManagement();
         if (ObjectUtils.isNotEmpty(houseOrderManagement)) {
         if (ObjectUtils.isNotEmpty(houseOrderManagement)) {
 
 
@@ -602,6 +602,11 @@ public class LoginController implements LoginControllerAPI {
                 functionPointVo9.setStatus(1);
                 functionPointVo9.setStatus(1);
                 vos4.add(functionPointVo9);
                 vos4.add(functionPointVo9);
 
 
+                FunctionPointVo functionPointVo10 = new FunctionPointVo();
+                functionPointVo10.setFunctionPoint("备注");
+                functionPointVo10.setStatus(1);
+                vos4.add(functionPointVo10);
+
             } else {
             } else {
                 FunctionPointVo functionPointVo = ifContains(houseOrderManagement, "1");
                 FunctionPointVo functionPointVo = ifContains(houseOrderManagement, "1");
                 functionPointVo.setFunctionPoint("取消");
                 functionPointVo.setFunctionPoint("取消");
@@ -634,6 +639,10 @@ public class LoginController implements LoginControllerAPI {
                 FunctionPointVo functionPointVo9 = ifContains(houseOrderManagement, "9");
                 FunctionPointVo functionPointVo9 = ifContains(houseOrderManagement, "9");
                 functionPointVo9.setFunctionPoint("导出");
                 functionPointVo9.setFunctionPoint("导出");
                 vos4.add(functionPointVo9);
                 vos4.add(functionPointVo9);
+
+                FunctionPointVo functionPointVo10 = ifContains(houseOrderManagement, "10");
+                functionPointVo10.setFunctionPoint("备注");
+                vos4.add(functionPointVo10);
             }
             }
             menuBarVo4.setFunctionPoints(vos4);
             menuBarVo4.setFunctionPoints(vos4);
             menuBarVos.add(menuBarVo4);
             menuBarVos.add(menuBarVo4);

文件差异内容过多而无法显示
+ 2 - 2
src/main/java/com/template/mapper/HouseOrderMapper.java


+ 2 - 0
src/main/java/com/template/mapper/HousePriceMapper.java

@@ -33,4 +33,6 @@ public interface HousePriceMapper extends BaseMapper<HousePrice> {
     List<HousePrice> getHousePrice(@Param("startTime") String startTime,@Param("endTime") String endTime,@Param("id") Integer id);
     List<HousePrice> getHousePrice(@Param("startTime") String startTime,@Param("endTime") String endTime,@Param("id") Integer id);
 
 
     List<HousePrice> getDatePrice(@Param("localDate1") LocalDate localDate1,@Param("houseId") String houseId);
     List<HousePrice> getDatePrice(@Param("localDate1") LocalDate localDate1,@Param("houseId") String houseId);
+
+    List<HousePrice> getHousePriceOrder(@Param("localDateTime") LocalDateTime localDateTime,@Param("houseId") String houseId);
 }
 }

+ 3 - 0
src/main/java/com/template/model/pojo/HouseOrder.java

@@ -127,6 +127,9 @@ public class HouseOrder implements Serializable {
     @ApiModelProperty(value = "超时时间")
     @ApiModelProperty(value = "超时时间")
     private String timeOut;
     private String timeOut;
 
 
+    @ApiModelProperty(value = "备注")
+    private String remark;
+
     @ApiModelProperty(value = "创建时间")
     @ApiModelProperty(value = "创建时间")
     @TableField(fill = FieldFill.INSERT)
     @TableField(fill = FieldFill.INSERT)
     private String createTime;
     private String createTime;

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

@@ -6,7 +6,7 @@ import java.math.BigDecimal;
 
 
 @Data
 @Data
 public class AlterPriceRecordVo {
 public class AlterPriceRecordVo {
-//    类型
+//    类型(1:全日房,2:钟点房)
     private int houseType;
     private int houseType;
 //    房型名称
 //    房型名称
     private String houseName;
     private String houseName;

+ 25 - 5
src/main/java/com/template/model/vo/HouseOrderPageListVo.java

@@ -15,15 +15,22 @@ public class HouseOrderPageListVo {
     private String liveTime;
     private String liveTime;
 //  离店时间
 //  离店时间
     private String leaveTime;
     private String leaveTime;
-//  用户名称
+////    预入住时间
+//    private String reserveLiveTime;
+////    预离店时间
+//    private String reserveLeaveTime;
+
+//  预定人名称
     private String reserveName;
     private String reserveName;
-//    入住名称
+//  预定人手机号
+    private String phone;
+//    入住人名称
     private String liveName;
     private String liveName;
+//   入住人身份证
+    private String idCard;
 
 
-//  手机号
-    private String phone;
 
 
-    //    房型
+    //    房型名称
     private String houseName;
     private String houseName;
     //    房间号
     //    房间号
     private String houseNumber;
     private String houseNumber;
@@ -52,4 +59,17 @@ public class HouseOrderPageListVo {
 
 
     @ApiModelProperty(value = "房间类型(1:全日房,2:钟点房)")
     @ApiModelProperty(value = "房间类型(1:全日房,2:钟点房)")
     private Integer roomType;
     private Integer roomType;
+
+    @ApiModelProperty(value = "钥匙类型开锁的方式(1.密码,2.卡片,3.指纹,4.身份证,5.钥匙)")
+    private Integer lockStatus;
+
+    @ApiModelProperty(value = "开锁密码")
+    private String keyPassWord;
+
+    @ApiModelProperty(value = "是否归还 1:已归还,2:未归还")
+    private Integer giveBack;
+
+    @ApiModelProperty(value = "备注")
+    private String remark;
+
 }
 }

+ 14 - 0
src/main/java/com/template/model/vo/HousePriceOrderVo.java

@@ -0,0 +1,14 @@
+package com.template.model.vo;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class HousePriceOrderVo {
+//    时间
+    private String date;
+//    金额
+    private BigDecimal price;
+
+}

+ 2 - 0
src/main/java/com/template/model/vo/HouseStateVo.java

@@ -40,4 +40,6 @@ public class HouseStateVo {
 
 
     private String building;
     private String building;
     private String element;
     private String element;
+    private Integer lockStatus;
+    private String passWord;
 }
 }

+ 14 - 0
src/main/java/com/template/model/vo/ParticularHouseNumberStatusVo.java

@@ -47,6 +47,7 @@ public class ParticularHouseNumberStatusVo {
 //    房间状态 状态 1空闲、2脏房、3预定、4入住、5锁定、6维修
 //    房间状态 状态 1空闲、2脏房、3预定、4入住、5锁定、6维修
     private int houseStatus;
     private int houseStatus;
 
 
+    @ApiModelProperty(value = "开锁密码")
     private String passWord;
     private String passWord;
 
 
     @ApiModelProperty(value = "楼栋")
     @ApiModelProperty(value = "楼栋")
@@ -54,4 +55,17 @@ public class ParticularHouseNumberStatusVo {
 
 
     @ApiModelProperty(value = "单元")
     @ApiModelProperty(value = "单元")
     private String element;
     private String element;
+
+    @ApiModelProperty(value = "钥匙类型开锁的方式(1.密码,2.卡片,3.指纹,4.身份证,5.钥匙)")
+    private Integer lockStatus;
+
+
+    @ApiModelProperty(value = "是否归还 1:已归还,2:未归还")
+    private Integer giveBack;
+
+    @ApiModelProperty(value = "超时时间")
+    private String timeOut;
+
+    private Integer houseOrderId;
+
 }
 }

+ 38 - 14
src/main/java/com/template/model/vo/QueryExportVo.java

@@ -1,5 +1,6 @@
 package com.template.model.vo;
 package com.template.model.vo;
 
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
@@ -7,30 +8,53 @@ import java.util.Date;
 
 
 @Data
 @Data
 public class QueryExportVo {
 public class QueryExportVo {
+    //    房间号
+    private String houseNumber;
+ //    房间类型(1:全日房,2:钟点房)
+    private Integer roomType;
+    //    房型
+    private String houseName;
+
+    @ApiModelProperty(value = "钥匙类型开锁的方式(1.密码,2.卡片,3.指纹,4.身份证,5.钥匙)")
+    private Integer lockStatus;
+
+    @ApiModelProperty(value = "是否归还 1:已归还,2:未归还")
+    private Integer giveBack;
+
+    //  预定人名称
+    private String reserveName;
+    //  预定人手机号
+    private String phone;
+    //    入住人名称
+    private String liveName;
+    //   入住人身份证
+    private String idCard;
+
     //    订单号
     //    订单号
     private String orderNumber;
     private String orderNumber;
+
     //  入住时间
     //  入住时间
     private String liveTime;
     private String liveTime;
+
     //  离店时间
     //  离店时间
     private String leaveTime;
     private String leaveTime;
-    //  用户名称
-    private String reserveName;
-    //    入住名称
-    private String liveName;
-    //  手机号
-    private String phone;
-    //    房型
-    private String houseName;
-    //    房间号
-    private String houseNumber;
+
     //  订单金额
     //  订单金额
     private BigDecimal orderPrice;
     private BigDecimal orderPrice;
-    //    支付方式
-    private String payType;
+
+   //     订单状态
+   private String orderStart;
+
+//    备注
+    private String remark;
+
+   //    支付方式
+   private String payType;
+
     //    订单渠道
     //    订单渠道
     private String orderChannelType;
     private String orderChannelType;
-    //     订单状态
-    private String orderStart;
+
+
     //    支付时间
     //    支付时间
     private String payTime;
     private String payTime;
     //    退款时间
     //    退款时间

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

@@ -39,9 +39,9 @@ public interface HouseOrderService extends IService<HouseOrder> {
      */
      */
     PriceVo reservePrice(String houseId, String cardNumber, String liveTime, String leaveTime);
     PriceVo reservePrice(String houseId, String cardNumber, String liveTime, String leaveTime);
 
 
-    PageUtils<HouseOrderPageListVo> pageList(int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime);
+    PageUtils<HouseOrderPageListVo> pageList(int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack);
 
 
-    List<QueryExportVo> queryExport(String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime);
+    List<QueryExportVo> queryExport(String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack);
 
 
 
 
     HouseOrderCheckInShowVo getOrderNumbre(String orderNumber);
     HouseOrderCheckInShowVo getOrderNumbre(String orderNumber);

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

@@ -29,4 +29,6 @@ public interface HousePriceService extends IService<HousePrice> {
     List<HousePrice> getHousePrice(String startTime, String endTime, Integer id);
     List<HousePrice> getHousePrice(String startTime, String endTime, Integer id);
 
 
     List<HousePrice> getDatePrice(LocalDate localDate1, String houseId);
     List<HousePrice> getDatePrice(LocalDate localDate1, String houseId);
+
+    List<HousePrice> getHousePriceOrder(LocalDateTime localDateTime, String houseId);
 }
 }

+ 8 - 4
src/main/java/com/template/services/impl/HouseOrderServiceImpl.java

@@ -119,6 +119,8 @@ public class HouseOrderServiceImpl extends ServiceImpl<HouseOrderMapper, HouseOr
             if (ObjectUtils.isNotEmpty(scheduleList)) {
             if (ObjectUtils.isNotEmpty(scheduleList)) {
                 for (ClassSchedule classSchedule : scheduleList) {
                 for (ClassSchedule classSchedule : scheduleList) {
                     String dateTime = classSchedule.getDateTime();
                     String dateTime = classSchedule.getDateTime();
+                    String[] s = dateTime.split(" ");
+                    dateTime=s[0];
                     LocalDate parse = LocalDate.parse(dateTime, dateTimeFormatter2);
                     LocalDate parse = LocalDate.parse(dateTime, dateTimeFormatter2);
                     if (!localDate1.equals(parse)) {
                     if (!localDate1.equals(parse)) {
                         if (ObjectUtils.isNotEmpty(housePrices1)) {
                         if (ObjectUtils.isNotEmpty(housePrices1)) {
@@ -254,6 +256,8 @@ public class HouseOrderServiceImpl extends ServiceImpl<HouseOrderMapper, HouseOr
             if (ObjectUtils.isNotEmpty(scheduleList)) {
             if (ObjectUtils.isNotEmpty(scheduleList)) {
                 for (ClassSchedule classSchedule : scheduleList) {
                 for (ClassSchedule classSchedule : scheduleList) {
                     String dateTime = classSchedule.getDateTime();
                     String dateTime = classSchedule.getDateTime();
+                    String[] s = dateTime.split(" ");
+                    dateTime=s[0];
                     LocalDate parse = LocalDate.parse(dateTime, dateTimeFormatter2);
                     LocalDate parse = LocalDate.parse(dateTime, dateTimeFormatter2);
                     if (!localDate1.equals(parse)) {
                     if (!localDate1.equals(parse)) {
                         if (ObjectUtils.isNotEmpty(housePrices1)) {
                         if (ObjectUtils.isNotEmpty(housePrices1)) {
@@ -319,15 +323,15 @@ public class HouseOrderServiceImpl extends ServiceImpl<HouseOrderMapper, HouseOr
     }
     }
 
 
     @Override
     @Override
-    public PageUtils<HouseOrderPageListVo> pageList(int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime) {
+    public PageUtils<HouseOrderPageListVo> pageList(int page, int size, String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack) {
         Page<HouseOrderPageListVo> pageVo = new Page<>(page, size);
         Page<HouseOrderPageListVo> pageVo = new Page<>(page, size);
-        IPage<HouseOrderPageListVo> result = houseOrderMapper.pageList(pageVo, keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime);
+        IPage<HouseOrderPageListVo> result = houseOrderMapper.pageList(pageVo, keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime,houseId,keyType,giveBack);
         return new PageUtils(result);
         return new PageUtils(result);
     }
     }
 
 
     @Override
     @Override
-    public List<QueryExportVo> queryExport(String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime) {
-        return houseOrderMapper.queryExport(keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime);
+    public List<QueryExportVo> queryExport(String keyWord, String houseType, String orderStatus, String payPriceStartTime, String payPriceEndTime, String refundStartTime, String refundEndTime, String cancelStartTime, String cancelEndTime, String liveStartTime, String liveEndTime, String leaveStartTime, String leaveEndTime,String houseId,Integer keyType,Integer giveBack) {
+        return houseOrderMapper.queryExport(keyWord, houseType, orderStatus, payPriceStartTime, payPriceEndTime, refundStartTime, refundEndTime, cancelStartTime, cancelEndTime, liveStartTime, liveEndTime, leaveStartTime, leaveEndTime,houseId,keyType,giveBack);
 
 
     }
     }
 
 

+ 5 - 0
src/main/java/com/template/services/impl/HousePriceServiceImpl.java

@@ -54,4 +54,9 @@ public class HousePriceServiceImpl extends ServiceImpl<HousePriceMapper, HousePr
     public List<HousePrice> getDatePrice(LocalDate localDate1, String houseId) {
     public List<HousePrice> getDatePrice(LocalDate localDate1, String houseId) {
         return housePriceMapper.getDatePrice(localDate1,houseId);
         return housePriceMapper.getDatePrice(localDate1,houseId);
     }
     }
+
+    @Override
+    public List<HousePrice> getHousePriceOrder(LocalDateTime localDateTime, String houseId) {
+        return housePriceMapper.getHousePriceOrder(localDateTime,houseId);
+    }
 }
 }

+ 3 - 1
src/main/resources/mapper/template/HouseNumberMapper.xml

@@ -19,7 +19,9 @@
         ho.order_number as orderNumber,
         ho.order_number as orderNumber,
         h.room_type as roomType,
         h.room_type as roomType,
         b.building,
         b.building,
-        b.element
+        b.element,
+        ho.key_type as lockStatus,
+        ho.key_pass_word as passWord
         FROM
         FROM
         `house_number` hn
         `house_number` hn
         LEFT JOIN house h ON h.id = hn.house_id
         LEFT JOIN house h ON h.id = hn.house_id

+ 51 - 13
src/main/resources/mapper/template/HouseOrderMapper.xml

@@ -6,11 +6,14 @@
         SELECT
         SELECT
         ho.id,
         ho.id,
         ho.order_number as orderNumber,
         ho.order_number as orderNumber,
-        ho.reserve_live_time as liveTime,
-        ho.reserve_leave_time as leaveTime,
+--         ho.reserve_live_time as reserveLiveTime,
+--         ho.reserve_leave_time as reserveLeaveTime,
+        ho.live_time as liveTime,
+        ho.leave_time as LeaveTime,
         ho.reserve_name as reserveName,
         ho.reserve_name as reserveName,
-        ho.live_name as liveName,
         ho.reserve_phone as phone,
         ho.reserve_phone as phone,
+        ho.live_name as liveName,
+        u.id_card as idCard,
         h.room_name as houseName,
         h.room_name as houseName,
         hn.room_number as houseNumber,
         hn.room_number as houseNumber,
         ho.pay_price as orderPrice,
         ho.pay_price as orderPrice,
@@ -23,15 +26,19 @@
         ho.order_channel as orderChannel,
         ho.order_channel as orderChannel,
         h.id as houseId,
         h.id as houseId,
         hn.id as houseNumberId,
         hn.id as houseNumberId,
-        h.room_type as roomType
-
-
+        h.room_type as roomType,
+        ho.key_type as lockStatus,
+        ho.key_pass_word as keyPassWord,
+        ho.give_back as giveBack,
+        ho.remark
         FROM
         FROM
         `house_order` ho
         `house_order` ho
         LEFT JOIN house_number hn ON hn.id = ho.house_number_id
         LEFT JOIN house_number hn ON hn.id = ho.house_number_id
         AND hn.deleted = 0
         AND hn.deleted = 0
         LEFT JOIN house h ON h.id = hn.house_id
         LEFT JOIN house h ON h.id = hn.house_id
         AND hn.deleted = 0
         AND hn.deleted = 0
+        LEFT JOIN users u ON u.id = ho.live_users_id
+        AND u.deleted = 0
         <where>
         <where>
             ho.deleted=0
             ho.deleted=0
             <if test="orderStatus != null and orderStatus != ''">
             <if test="orderStatus != null and orderStatus != ''">
@@ -71,6 +78,18 @@
                 AND ho.leave_time >= #{leaveStartTime}
                 AND ho.leave_time >= #{leaveStartTime}
             </if>
             </if>
 
 
+            <if test="houseId != null and houseId != ''">
+                AND ho.house_id = #{houseId}
+            </if>
+
+            <if test="keyType != null and keyType != ''">
+                AND ho.key_type = #{keyType}
+            </if>
+
+            <if test="giveBack != null and giveBack != ''">
+                AND ho.give_back = #{giveBack}
+            </if>
+
         </where>
         </where>
         ORDER BY
         ORDER BY
         ho.create_time DESC
         ho.create_time DESC
@@ -78,18 +97,23 @@
     </select>
     </select>
     <select id="queryExport" resultType="com.template.model.vo.QueryExportVo">
     <select id="queryExport" resultType="com.template.model.vo.QueryExportVo">
         SELECT
         SELECT
+        hn.room_number as houseNumber,
+        h.room_type as roomType,
+        h.room_name as houseName,
+        ho.key_type as lockStatus,
+        ho.give_back as giveBack,
+        ho.reserve_name as reserveName,
+        ho.reserve_phone as phone,
+        ho.live_name as liveName,
+        u.id_card as idCard,
         ho.order_number as orderNumber,
         ho.order_number as orderNumber,
         ho.live_time as liveTime,
         ho.live_time as liveTime,
         ho.leave_time as leaveTime,
         ho.leave_time as leaveTime,
-        ho.reserve_name as reserveName,
-        ho.live_name as liveName,
-        ho.reserve_phone as phone,
-        h.room_name as houseName,
-        hn.room_number as houseNumber,
         ho.pay_price as orderPrice,
         ho.pay_price as orderPrice,
-        ho.pay_type as payType,
-        ho.order_channel as payChannelType,
         ho.order_status as orderStart,
         ho.order_status as orderStart,
+        ho.remark,
+        ho.pay_type as payType,
+        ho.order_channel as orderChannelType,
         ho.pay_time as payTime,
         ho.pay_time as payTime,
         ho.refund_time as refundTime,
         ho.refund_time as refundTime,
         ho.cancel_time as cancelTime
         ho.cancel_time as cancelTime
@@ -99,6 +123,8 @@
         AND hn.deleted = 0
         AND hn.deleted = 0
         LEFT JOIN house h ON h.id = hn.house_id
         LEFT JOIN house h ON h.id = hn.house_id
         AND hn.deleted = 0
         AND hn.deleted = 0
+        LEFT JOIN users u ON u.id = ho.live_users_id
+        AND u.deleted = 0
         <where>
         <where>
             ho.deleted=0
             ho.deleted=0
             <if test="orderStatus != null and orderStatus != ''">
             <if test="orderStatus != null and orderStatus != ''">
@@ -138,6 +164,18 @@
                 AND ho.leave_time >= #{leaveStartTime}
                 AND ho.leave_time >= #{leaveStartTime}
             </if>
             </if>
 
 
+            <if test="houseId != null and houseId != ''">
+                AND ho.house_id = #{houseId}
+            </if>
+
+            <if test="keyType != null and keyType != ''">
+                AND ho.key_type = #{keyType}
+            </if>
+
+            <if test="giveBack != null and giveBack != ''">
+                AND ho.give_back = #{giveBack}
+            </if>
+
         </where>
         </where>
         ORDER BY
         ORDER BY
         ho.create_time DESC
         ho.create_time DESC

+ 11 - 0
src/main/resources/mapper/template/HousePriceMapper.xml

@@ -57,6 +57,7 @@
           and substring_index(set_date, ',', -1) >= #{localDate}
           and substring_index(set_date, ',', -1) >= #{localDate}
           and FIND_IN_SET(house_id, #{ids})
           and FIND_IN_SET(house_id, #{ids})
           and deleted = 0
           and deleted = 0
+        ORDER BY id
     </select>
     </select>
 
 
     <select id="queryExport" resultType="com.template.model.vo.AlterPriceRecordVo">
     <select id="queryExport" resultType="com.template.model.vo.AlterPriceRecordVo">
@@ -131,5 +132,15 @@
           and substring_index(set_date, ',', -1) > #{localDate1}
           and substring_index(set_date, ',', -1) > #{localDate1}
           and house_id = #{houseId}
           and house_id = #{houseId}
           and deleted = 0
           and deleted = 0
+        ORDER BY id
+    </select>
+    <select id="getHousePriceOrder" resultType="com.template.model.pojo.HousePrice">
+        SELECT *
+        FROM `house_price`
+        WHERE #{localDateTime} >= substring_index(set_date, ',', 1)
+          and substring_index(set_date, ',', -1) > #{localDateTime}
+          and house_id = #{houseId}
+          and deleted = 0
+        ORDER BY id
     </select>
     </select>
 </mapper>
 </mapper>