浏览代码

fix 优化

覃浩 2 年之前
父节点
当前提交
bd58ca6067

+ 3 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/dto/BookingLayoutRoomsDto.java

@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.jeecg.modules.business.entity.BusLivingCustomer;
+import org.jeecg.modules.business.entity.BusRoomBookingOrders;
 
 import java.util.List;
 
@@ -20,6 +21,8 @@ public class BookingLayoutRoomsDto {
     private List<BusLivingCustomer> livingCustomers;
     @ApiModelProperty(value = "费用信息.暂时不需要")
     private List<String> orderFees;
+    @ApiModelProperty(value = "单个房间的入住订单信息")
+    private BusRoomBookingOrders roomOrderInfo;
 
 
 }

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusRoomBookingOrdersService.java

@@ -41,7 +41,7 @@ public interface IBusRoomBookingOrdersService extends IService<BusRoomBookingOrd
     String batchOrderSave(BatchOrderSavaDto item);
 
     Boolean setBatchOrderStatus(BusBookingBatch batchOrder);
-    String bookingToLive(String bookingRoomId, List<BusLivingCustomer> customers, String hotelId,Boolean bookingLiving);
+    String bookingToLive(String bookingRoomId, List<BusLivingCustomer> customers, String hotelId,Boolean bookingLiving, BusRoomBookingOrders livingRoomOrderInfo);
 
     String customerLiving(BookingOrderSaveDto livingData, Boolean isTeam, String hotelId);
 

+ 11 - 6
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusRoomBookingOrdersServiceImpl.java

@@ -870,7 +870,7 @@ public class BusRoomBookingOrdersServiceImpl extends ServiceImpl<BusRoomBookingO
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public String bookingToLive(String bookingRoomId, List<BusLivingCustomer> customers, String hotelId, Boolean bookingLiving) {
+    public String bookingToLive(String bookingRoomId, List<BusLivingCustomer> customers, String hotelId, Boolean bookingLiving, BusRoomBookingOrders livingRoomOrderInfo) {
         BusBookingRooms bkRoom = bookingRoomsService.getById(bookingRoomId);
         if(bkRoom == null) throw  new JeecgBootException("关联房间不存在");
         BusRoomBookingOrders bookingOrders = getById(bkRoom.getBookingOrdersId());
@@ -881,7 +881,12 @@ public class BusRoomBookingOrdersServiceImpl extends ServiceImpl<BusRoomBookingO
         BusRoomsLivingOrder livingOrder = null;
         if(bkRoom.getBookingType().equals(BookingOrdersType.NORMAL.getKey())) {
             //todo other
-            livingOrder = copyBookingToAcceptOrder(bookingOrders);
+            if(livingRoomOrderInfo != null) {
+                livingRoomOrderInfo.setId(bookingOrders.getId());
+                // 设置为当前时间
+                livingRoomOrderInfo.setArrivalTime(new Date());
+            }
+            livingOrder = copyBookingToAcceptOrder(livingRoomOrderInfo);
             livingOrder.setBookingRoomId(bookingRoomId);
         } else if(bkRoom.getBookingType().equals(BookingOrdersType.TEAM.getKey())) {
             BusBookingBatch batch = bookingBatchService.getById(bkRoom.getBookingBatchId());
@@ -1474,7 +1479,7 @@ public class BusRoomBookingOrdersServiceImpl extends ServiceImpl<BusRoomBookingO
         livingCustomer.setId(null);
         livingCustomer.setLivingOrderId(null);
         customers.add(livingCustomer);
-        String livingOrderId = bookingToLive(bookingRooms.getId(), customers,hotelId,null);
+        String livingOrderId = bookingToLive(bookingRooms.getId(), customers,hotelId,null,null);
 
         return true;
     }
@@ -1996,10 +2001,10 @@ public class BusRoomBookingOrdersServiceImpl extends ServiceImpl<BusRoomBookingO
         roomIds.forEach(bkRoom-> {
             if(livingData.getRoomIds().stream().filter(s->s.getRoomId().equals(bkRoom.getRoomId())).count() == 0)
                 throw new JeecgBootException("房间信息未找到");
-
-            List<BusLivingCustomer> customers = livingData.getRoomIds().stream().filter(s->s.getRoomId().equals(bkRoom.getRoomId())).findFirst().get().getLivingCustomers();
+            BookingLayoutRoomsDto bkRoomItem = livingData.getRoomIds().stream().filter(s->s.getRoomId().equals(bkRoom.getRoomId())).findFirst().get();
+            List<BusLivingCustomer> customers = bkRoomItem.getLivingCustomers();
             if(customers == null || customers.size() == 0) throw new JeecgBootException("请添加客户信息");
-            String livingOrderId = bookingToLive(bkRoom.getId(), customers,hotelId,null);
+            String livingOrderId = bookingToLive(bkRoom.getId(), customers,hotelId,null, bkRoomItem.getRoomOrderInfo());
             // 费用关联到主房
             if(livingData.getOrderFees()!=null && livingData.getOrderFees().size() > 0 ) {
                 List<BusOrderFee> findRoomFees = livingData.getOrderFees().stream().filter(t->t.getRoomId().equals(bkRoom.getRoomId())).collect(Collectors.toList());