Browse Source

修改小程序入住,取消接口,修改管理端订单取消接口

liu 1 year ago
parent
commit
a92a2af5ea

+ 4 - 5
src/main/java/com/template/api/HouseOrderAPI.java

@@ -52,10 +52,6 @@ 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);
@@ -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);
 
 
 
 
@@ -139,6 +135,9 @@ public interface HouseOrderAPI {
     @ApiOperation(value = "是否归还钥匙房卡", notes = "小程序-钟点房当天占用状态", httpMethod = "GET")
     @ApiOperation(value = "是否归还钥匙房卡", notes = "小程序-钟点房当天占用状态", httpMethod = "GET")
     CommonResult ifGiveBack(@RequestParam Integer houseOrderId,@RequestParam Integer giveBack);
     CommonResult ifGiveBack(@RequestParam Integer houseOrderId,@RequestParam Integer giveBack);
 
 
+    @GetMapping("/saveRemark")
+    @ApiOperation(value = "备注", notes = "备注", httpMethod = "GET")
+    CommonResult saveRemark(@RequestParam Integer houseOrderId,@RequestParam String remark);
 
 
 }
 }
 
 

+ 65 - 22
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);
             }
             }
 
 
 
 
@@ -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);
 
 
@@ -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)
@@ -1468,7 +1483,12 @@ public class HouseOrderController implements HouseOrderAPI {
                 dataRow1.createCell(1).setCellValue(houseSta);
                 dataRow1.createCell(1).setCellValue(houseSta);
                 dataRow1.createCell(2).setCellValue(vo.getHouseName());
                 dataRow1.createCell(2).setCellValue(vo.getHouseName());
                 dataRow1.createCell(3).setCellValue(vo.getLockStatus());
                 dataRow1.createCell(3).setCellValue(vo.getLockStatus());
-                dataRow1.createCell(4).setCellValue(vo.getGiveBack());
+                Integer giveBack1 = vo.getGiveBack();
+                String back="未归还";
+                if (1==giveBack1) {
+                    back="已归还";
+                }
+                dataRow1.createCell(4).setCellValue(back);
                 dataRow1.createCell(5).setCellValue(vo.getReserveName());
                 dataRow1.createCell(5).setCellValue(vo.getReserveName());
                 dataRow1.createCell(6).setCellValue(vo.getPhone());
                 dataRow1.createCell(6).setCellValue(vo.getPhone());
                 dataRow1.createCell(7).setCellValue(vo.getLiveName());
                 dataRow1.createCell(7).setCellValue(vo.getLiveName());
@@ -2510,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)
@@ -2525,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("-", "");
@@ -3129,6 +3157,21 @@ public class HouseOrderController implements HouseOrderAPI {
         return CommonResult.ok();
         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 {
 //        获取签名
 //        获取签名