From 31c00d4aa4cd3f73d10b4dced774c9372f9e03b9 Mon Sep 17 00:00:00 2001
From: xumiao <1365304440@qq.com>
Date: Tue, 1 Nov 2022 18:06:26 +0800
Subject: [PATCH] 金蝶回传测试

---
 src/main/java/com/huaheng/api/jindie/InvokeHelper.java                          | 20 +++++++++++++-------
 src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java                       |  4 +++-
 src/main/java/com/huaheng/pc/shipment/shipmentHeader/domain/ShipmentHeader.java |  8 ++++++++
 3 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/huaheng/api/jindie/InvokeHelper.java b/src/main/java/com/huaheng/api/jindie/InvokeHelper.java
index 42a2c5f..2887399 100644
--- a/src/main/java/com/huaheng/api/jindie/InvokeHelper.java
+++ b/src/main/java/com/huaheng/api/jindie/InvokeHelper.java
@@ -292,6 +292,7 @@ public class InvokeHelper {
      */
 
     //采购退货单保存
+    @Transactional(rollbackFor = Exception.class)
     public void purchase_return_save(String referCode) throws Exception {
         ShipmentHeader shipmentHeader = shipmentHeaderService.getOne(new LambdaQueryWrapper<ShipmentHeader>().eq(ShipmentHeader::getReferCode, referCode));
         List<ShipmentDetail> shipmentDetails = shipmentDetailService.list(new LambdaQueryWrapper<ShipmentDetail>().eq(ShipmentDetail::getReferCode, referCode));
@@ -301,22 +302,27 @@ public class InvokeHelper {
         List<PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO> fpurmrbentrydtos=new ArrayList<>();
 
         purchaseReturnSave.setFormid("PUR_MRB");
-        purchaseReturnSave.getData().getModel().setFId(shipmentHeader.getUserDef1());
+        purchaseReturnSave.getData().getModel().setFId(shipmentHeader.getReferLineId().toString());
 
         shipmentDetails.forEach((shipmentDetail)->{
             //if(StringUtils.isNotEmpty(shipmentHeader.getUserDef1())&&StringUtils.isNotEmpty(shipmentHeader.getUserDef2())&&StringUtils.isNotEmpty(shipmentDetail.getUserDef1())){
                 PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO fpurmrbentrydto = new PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO();
-                PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO.FMaterialIdDTO fMaterialIdDTO = new PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO.FMaterialIdDTO();
+                //PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO.FMaterialIdDTO fMaterialIdDTO = new PurchaseReturnSave.DataDTO.ModelDTO.FPURMRBENTRYDTO.FMaterialIdDTO();
                 fpurmrbentrydto.setFEntryID(shipmentDetail.getLineId());
                 fpurmrbentrydto.setFrmrealqty(shipmentDetail.getShipQty());
-                fMaterialIdDTO.setFNumber(shipmentDetail.getMaterialCode());
-                fpurmrbentrydto.setFMaterialId(fMaterialIdDTO);
+                //fMaterialIdDTO.setFNumber(shipmentDetail.getMaterialCode());
+                //fpurmrbentrydto.setFMaterialId(fMaterialIdDTO);
                 fpurmrbentrydtos.add(fpurmrbentrydto);
                 purchaseReturnSave.getData().getModel().setFpurmrbentry(fpurmrbentrydtos);
            // }
         });
         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(purchaseReturnSave);
-        Invoke(JinDieApiUri.PURCHASE_RETURN_SAVE.getApiUri(), jsonObject);
+        Results.ResultDTO.ResponseStatusDTO.SuccessEntitys successEntity = Invoke(JinDieApiUri.PURCHASE_RETURN_SAVE.getApiUri(), jsonObject);
+        Integer id = successEntity.getId();
+        String number = successEntity.getNumber();
+        shipmentHeader.setUserDef1(id.toString());
+        shipmentHeader.setUserDef2(number);
+        shipmentHeaderService.updateById(shipmentHeader);
         System.out.println("PURCHASE_RETURN_SAVE:"+"单号"+referCode+"成功!");
     }
 
@@ -327,7 +333,7 @@ public class InvokeHelper {
         purchasePush.setFormid("PUR_MRB");
         PurchasePushData purchasePushData = new PurchasePushData();
         purchasePush.setData(purchasePushData);
-        purchasePush.getData().setIds(shipmentHeader.getUserDef1());
+        purchasePush.getData().setIds(shipmentHeader.getReferLineId().toString());
         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(purchasePush);
         Invoke(JinDieApiUri.PURCHASE_RETURN_SUBMIT.getApiUri(), jsonObject);
         System.out.println("PURCHASE_RETURN_SUBMIT:"+"单号"+referCode+"成功!");
@@ -340,7 +346,7 @@ public class InvokeHelper {
         purchasePush.setFormid("PUR_MRB");
         PurchasePushData purchasePushData = new PurchasePushData();
         purchasePush.setData(purchasePushData);
-        purchasePush.getData().setIds(shipmentHeader.getUserDef1());
+        purchasePush.getData().setIds(shipmentHeader.getReferLineId().toString());
         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(purchasePush);
         Invoke(JinDieApiUri.PURCHASE_RETURN_AUDIT.getApiUri(), jsonObject);
         System.out.println("PURCHASE_RETURN_AUDIT:"+"单号"+referCode+"成功!");
diff --git a/src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java b/src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java
index d4f64c1..30d3962 100644
--- a/src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java
+++ b/src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java
@@ -459,7 +459,9 @@ public class RyTask extends BaseController {
             ShipmentHeader shipmentHeader = shipmentHeaderService.getOne(lambdaQueryWrapper);
             if(shipmentHeader != null){
                 String referCode = shipmentHeader.getReferCode();
-                invokeHelper.purchase_return_save(referCode);
+                if(shipmentHeader.getUserDef1()==null&&shipmentHeader.getUserDef2()==null){
+                    invokeHelper.purchase_return_save(referCode);
+                }
                 invokeHelper.purchase_return_submit(referCode);
                 invokeHelper.purchase_return_audit(referCode);
                 shipmentHeader.setFirstStatus(QuantityConstant.SHIPMENT_HEADER_RETURN);
diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentHeader/domain/ShipmentHeader.java b/src/main/java/com/huaheng/pc/shipment/shipmentHeader/domain/ShipmentHeader.java
index bf86566..0d07e56 100644
--- a/src/main/java/com/huaheng/pc/shipment/shipmentHeader/domain/ShipmentHeader.java
+++ b/src/main/java/com/huaheng/pc/shipment/shipmentHeader/domain/ShipmentHeader.java
@@ -68,6 +68,14 @@ public class ShipmentHeader implements Serializable {
     @ApiModelProperty(value = "erp订单内部号")
     private Integer referId;
 
+
+    /**
+     * erp订单id
+     */
+    @TableField(value = "referLineId")
+    @ApiModelProperty(value = "erp订单id")
+    private Integer referLineId;
+
     /**
      * 订单平台
      */
--
libgit2 0.22.2