Browse Source

Merge branch 'zx_saas_goods' of http://git.dayaedu.com/yonge/mec into test

zouxuan 1 year ago
parent
commit
f62e7615b4

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SellOrderServiceImpl.java

@@ -875,6 +875,9 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
     @Transactional(rollbackFor = Exception.class)
     public List<SellOrder> initSellOrder(StudentPaymentOrder order, String musicGroupId, List<Integer> goodsIds,
                                          KitGroupPurchaseTypeEnum kitGroupPurchaseType,Boolean saveFlag) {
+        if (CollectionUtils.isEmpty(goodsIds)) {
+            return null;
+        }
         BigDecimal totalBalance = order.getBalancePaymentAmount();
         if (totalBalance == null) {
             totalBalance = BigDecimal.ZERO;

+ 15 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderServiceImpl.java

@@ -2251,17 +2251,26 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
             for (OrderSkuSync.SkuSync skuSync : orderSkuSync.getSkuSyncList()) {
                 List<SellOrder> sellOrderList = goodsSkuMap.get(skuSync.getSku());
                 for (int i = 0; i < skuSync.getCount(); i++) {
-                    SellOrder sellOrder = sellOrderList.get(i);
-                    if (sellOrder != null) {
-                        sellOrder.setDeliveryTime(format);
-                        sellOrder.setSellCost(skuSync.getPrice());
-                        sellOrder.setStockType(StringUtils.equalsIgnoreCase(skuSync.getType(),"INTERNAL")?StockType.INTERNAL:StockType.EXTERNAL);
-                    }
+                    SellOrder sellOrder = this.getSellorder(sellOrderList,i);
+                    sellOrder.setDeliveryTime(format);
+                    sellOrder.setSellCost(skuSync.getPrice());
+                    sellOrder.setStockType(StringUtils.equalsIgnoreCase(skuSync.getType(),"INTERNAL")?StockType.INTERNAL:StockType.EXTERNAL);
                 }
             }
         }
         sellOrderDao.batchUpdate(sellOrders);
+    }
 
+    private SellOrder getSellorder(List<SellOrder> sellOrderList,Integer index){
+        if(index >= sellOrderList.size()){
+            return new SellOrder();
+        }
+        SellOrder sellOrder = sellOrderList.get(index);
+        if(StringUtils.isNotEmpty(sellOrder.getDeliveryTime())){
+            return getSellorder(sellOrderList,index+1);
+        }else {
+            return sellOrder;
+        }
     }
 
     public BigDecimal getActualAmount(BigDecimal price, StudentPaymentOrderExportDto row) {

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentRouteOrderServiceImpl.java

@@ -376,7 +376,7 @@ public class StudentPaymentRouteOrderServiceImpl extends BaseServiceImpl<Long, S
                 if(address.getDeliveryFlag()){
                     OrderSkuSync orderSkuSync = new OrderSkuSync();
                     orderSkuSync.setOrderNo(orderNo);
-                    orderSkuSync.setSkuSyncList(JSONArray.parseArray(address.getAddress(), OrderSkuSync.SkuSync.class));
+                    orderSkuSync.setSkuSyncList(JSONArray.parseArray(address.getDeliveryDetail(), OrderSkuSync.SkuSync.class));
                     List<OrderSkuSync> orderSkuSyncs = new ArrayList<>();
                     orderSkuSyncs.add(orderSkuSync);
                     studentPaymentOrderService.updateShippedStatus(orderSkuSyncs);