Bläddra i källkod

非成衣外销发票号取装箱单上的

fenghaifu 6 dagar sedan
förälder
incheckning
8b22aae7b5

+ 14 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/quartz/job/PushShippingDetailsJob.java

@@ -29,6 +29,8 @@ import org.jeecg.modules.documents.syShippingOrder.service.ISyShippingOrderItemS
 import org.jeecg.modules.documents.syShippingOrder.service.ISyShippingOrderService;
 import org.jeecg.modules.openApi.entity.DxpDataPlan;
 import org.jeecg.modules.openApi.service.IDxpDataPlanService;
+import org.jeecg.modules.splfi.entity.SyPackingListFabric;
+import org.jeecg.modules.splfi.service.ISyPackingListFabricService;
 import org.jeecg.modules.system.util.HttpHelper;
 import org.jeecg.modules.system.util.InterfaceConnUtils;
 import org.jeecg.modules.system.util.oConvertUtils;
@@ -65,6 +67,8 @@ public class PushShippingDetailsJob implements Job {
     private ISyShippingOrderItemService syShippingOrderItemService;
     @Autowired
     private ISyShippingOrderService syShippingOrderService;
+    @Autowired
+    private ISyPackingListFabricService syPackingListFabricService;
 
     // srm调用校验码
     @Value("${srm.access-token}")
@@ -169,6 +173,7 @@ public class PushShippingDetailsJob implements Job {
                     mQueryWrapper.in(SyShippingOrder::getId, itemList.stream().map(SyShippingOrderItem::getSyShippingOrderItemId).distinct().collect(Collectors.toList()));
                     List<SyShippingOrder> orderList = syShippingOrderService.list(mQueryWrapper);
                     List<ReqShippingOrderItemVO> reqVoList = new ArrayList<>();
+                    List<SyPackingListFabric> packingListFabricList = new ArrayList<>();
                     for (SyShippingOrderItem item : itemList){
                         SyShippingOrder findOrder = orderList.stream().filter(x -> x.getId().equals(item.getSyShippingOrderItemId())).findFirst().orElse(null);
                         if ("0".equals(findOrder.getTheDocumentsState())){
@@ -177,6 +182,15 @@ public class PushShippingDetailsJob implements Job {
                         if (findOrder != null){
                             ReqShippingOrderItemVO reqVo = new ReqShippingOrderItemVO();
                             reqVo.fromShippingOrder(item, findOrder);
+                            if (!"成衣".equals(findOrder.getReadyFabric())){
+                                // 拉取装箱单表头外销发票号
+                                SyPackingListFabric syPackingListFabric = packingListFabricList.stream().filter(e->e.getId().equals(item.getTailoringFabricId())).findFirst().orElse(null);
+                                if (syPackingListFabric == null){
+                                    syPackingListFabric = syPackingListFabricService.getById(item.getTailoringFabricId());
+                                    packingListFabricList.add(syPackingListFabric);
+                                }
+                                reqVo.setExportInvoiceNo(syPackingListFabric.getExportInvoiceNo());
+                            }
                             reqVoList.add(reqVo);
                         }
                     }