Quellcode durchsuchen

Merge branch 'main' of http://117.174.100.38:3000/lishiqiang/ship-ota-server into main1

 Conflicts:
	ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/handler/TradeStockOrderHandler.java
luofeiyun vor 1 Monat
Ursprung
Commit
13dcc7cd34

+ 3 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeVistorReqVO.java

@@ -79,4 +79,7 @@ public class TradeVistorReqVO {
 
     @Schema(description = "楼层")
     private Integer floor;
+
+    @Schema(description = "价格")
+    private BigDecimal price;
 }

+ 11 - 13
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/handler/TradeStockOrderHandler.java

@@ -4,7 +4,6 @@ import com.yc.ship.module.product.api.VoyageApi;
 import com.yc.ship.module.product.api.dto.OrderRoomUseDTO;
 import com.yc.ship.module.product.api.dto.ReduceStockReqDTO;
 import com.yc.ship.module.product.enums.DistributorOrStoreEnum;
-import com.yc.ship.module.trade.controller.admin.order.vo.order.TradeOrderRoomModelVO;
 import com.yc.ship.module.trade.dal.dataobject.order.TradeOrderDO;
 import com.yc.ship.module.trade.dal.dataobject.order.TradeVisitorDO;
 import com.yc.ship.module.trade.enums.TradeOrderStatusEnum;
@@ -35,9 +34,9 @@ public class TradeStockOrderHandler implements TradeOrderHandler{
     @Override
     public void beforeOrderCreate(TradeOrderBO order) {
         Integer sellMethod = order.getTradeOrderDO().getSellMethod();
-//        if (sellMethod == 1) { //OTC
+        if (sellMethod == 1||sellMethod == 4||sellMethod == 7||sellMethod == 0||sellMethod == 3) {
             reduceStock(order);
-//        }
+        }
 
     }
 
@@ -50,7 +49,6 @@ public class TradeStockOrderHandler implements TradeOrderHandler{
         reqDTO.setDistributorId(Long.valueOf(order.getTradeOrderDO().getSourceId()));
         reqDTO.setStoreId(order.getTradeOrderDO().getStoreId());
         reqDTO.setUseRoomNum(order.getSummary().getUseRoomTotalNum());
-
         List<TradeOrderDetailBO> tradeOrderDetailBOList = order.getTradeOrderDetailBOList();
         List<TradeVisitorDO> tradeDetailDOList = tradeOrderDetailBOList.stream().flatMap(list1 -> {
             List<TradeVisitorDO> roomNums = list1.getTradeVisitorDOList();
@@ -60,21 +58,21 @@ public class TradeStockOrderHandler implements TradeOrderHandler{
             return Stream.empty();
         }).collect(Collectors.toList());
         List<OrderRoomUseDTO> orderRoomUseDTOList = new ArrayList<>();
-        List<TradeOrderRoomModelVO> roomModelList = order.getRoomModelList();
-        roomModelList.stream().forEach(roomModelVO -> {
-            OrderRoomUseDTO orderRoomUseDTO = new OrderRoomUseDTO();
-            orderRoomUseDTO.setRoomId(roomModelVO.getRoomId());
-            orderRoomUseDTO.setNum(BigDecimal.valueOf(roomModelVO.getUseRoomNum()));
-            orderRoomUseDTO.setRoomModelId(roomModelVO.getRoomModelId());
-            orderRoomUseDTO.setFloor(roomModelVO.getFloor());
-            orderRoomUseDTOList.add(orderRoomUseDTO);
+        Map<String, Long> collect = tradeDetailDOList.stream().filter(tradeVisitorDO -> tradeVisitorDO.getRoomId() != null).collect(Collectors.groupingBy(TradeVisitorDO::getRoomId, Collectors.counting()));
+        collect.keySet().forEach(roomId -> {
+            if(StringUtils.isNotBlank(roomId)) {
+                OrderRoomUseDTO orderRoomUseDTO = new OrderRoomUseDTO();
+                orderRoomUseDTO.setRoomId(Long.valueOf(roomId));
+                orderRoomUseDTO.setNum(BigDecimal.valueOf(collect.get(roomId)).divide(new BigDecimal(2)));
+                orderRoomUseDTOList.add(orderRoomUseDTO);
+            }
         });
         reqDTO.setOrderRoomList(orderRoomUseDTOList);
         Integer orderStatus = reqDTO.getOrderStatus();
         if(Objects.equals(orderStatus, TradeOrderStatusEnum.YD.getStatus())) {
             voyageApi.preReduceStock(reqDTO);
         }else {
-            voyageApi.reduceStock(reqDTO);
+            //TODO:走定单扣库存
         }
     }
 

+ 2 - 2
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/otc/impl/OtcTradeOrderServiceImpl.java

@@ -314,7 +314,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         if (orderProperty == null) {
             orderProperty = new ShipTradeOrderCreateReqVO.OrderProperty();
         }
-        orderProperty.setSellMethod(SellMethodEnum.WINDOW.getType());
+        orderProperty.setSellMethod(otcTradeOrderCreateReqVO.getOrderProperty().getSellMethod());
         setShipOrderPropertyFromLoginUser(loginUser, orderProperty);
         otcTradeOrderCreateReqVO.setOrderProperty(orderProperty);
         return tradeOrderService.createShipOrder(otcTradeOrderCreateReqVO);
@@ -325,7 +325,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         if (orderProperty == null) {
             orderProperty = new ShipTradeOrderCreateReqVO.OrderProperty();
         }
-        orderProperty.setSellMethod(SellMethodEnum.WINDOW.getType());
+        orderProperty.setSellMethod(otcTradeOrderCreateReqVO.getOrderProperty().getSellMethod());
         setShipOrderPropertyFromLoginUser(loginUser, orderProperty);
         otcTradeOrderCreateReqVO.setOrderProperty(orderProperty);
         return tradeOrderService.modifyShipOrder(otcTradeOrderCreateReqVO);