From da0dfffe0c57ed3ca0c66b24a68ccc64da0873c9 Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期四, 19 十月 2023 20:19:51 +0800
Subject: [PATCH] 调整上海接口-船运时调整每车为一条数据

---
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java |   57 ++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 40 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java
index 993c05d..2a5e59c 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java
@@ -12,7 +12,9 @@
 import com.fzzy.api.view.repository.ApiLogRep;
 import com.fzzy.async.fzzy40.entity.Fz40InoutNoticeIn;
 import com.fzzy.async.fzzy40.entity.Fz40InoutRecord;
+import com.fzzy.async.fzzy40.entity.Fz40InoutRecordItem;
 import com.fzzy.async.fzzy40.repository.Fzzy40Sync1202Rep;
+import com.fzzy.async.fzzy40.repository.Fzzy40SyncInoutRecordItemRep;
 import com.fzzy.async.fzzy40.repository.Fzzy40SyncNoticeInRep;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
@@ -21,6 +23,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -38,6 +41,8 @@
 
     @Autowired
     private Fzzy40Sync1202Rep fzzySync1202Rep;
+    @Autowired
+    private Fzzy40SyncInoutRecordItemRep fzzy40SyncInoutRecordItemRep;
     @Autowired
     private Fzzy40SyncNoticeInRep fzzySyncNoticeInRep;
     @Autowired
@@ -80,7 +85,11 @@
             Api1105 api1105;
             List<Fz40InoutNoticeIn> listInoutNotice;
             List<Api1202> api1202List;
+            List<Fz40InoutRecordItem> listInoutRecordItem;
             for (Fz40InoutRecord sysData : list) {
+                if(sysData.getRecordStatus().equals("DEL") || sysData.getRecordStatus().equals("ERROR")){
+                    continue;
+                }
                 if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){
                     sysData.setRecordWeight(sysData.getSettleWeight());
                 }
@@ -97,20 +106,10 @@
 
                 apiData.setRkywdh(Constant.INOUT_TYPE_14 + sysData.getId().substring(4));
 
-                //鍒ゆ柇涓氬姟鏃堕棿涓庡崟鎹彿鏄惁鍖归厤锛岃嫢涓嶅尮閰嶏紝鍒欐洿鏀逛笟鍔℃椂闂翠负鍗曟嵁鍙锋墍鍦ㄧ殑鏃堕棿
-                SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
-                Date time = dateFormat.parse(sysData.getId().substring(2, 10));
-                int numDay = DateUtil.difDay(DateUtil.getCurZero(sysData.getCompleteTime()), DateUtil.getCurZero(time));
-                if(numDay != 0){
-                    sysData.setFullWeightTime(DateUtils.addDays(sysData.getFullWeightTime(), numDay));
-                    sysData.setEmptyWeightTime(DateUtils.addDays(sysData.getEmptyWeightTime(), numDay));
-                    sysData.setCompleteTime(DateUtils.addDays(sysData.getCompleteTime(), numDay));
-                }
-
                 //璐т綅浠g爜
                 apiData.setHwdm(api1105.getHwdm());
                 apiData.setYwlx(Constant.INOUT_TYPE_2);
-                apiData.setYwrq(sysData.getCompleteTime());
+                apiData.setYwrq(DateUtils.parseDate(sysData.getId().substring(2, 10), new String[] { "yyyyMMdd" }));
                 apiData.setCyr(sysData.getUserName());
 
                 //榛樿涓�涓殢渚垮��
@@ -119,11 +118,15 @@
                 apiData.setSfzh(null == sysData.getUserId() ? "410183200010100000" : sysData.getUserId().trim());
 
                 //鑾峰彇鍚堝悓鍙�
+                apiData.setHth(api1105.getHwdm().substring(0,18) + apiData.getRkywdh());
                 listInoutNotice = fzzySyncNoticeInRep.listInoutNoticeInById(sysData.getNoticeId());
                 if(null != listInoutNotice && listInoutNotice.size() >0){
-                    apiData.setHth(api1105.getHwdm().substring(0,18) + listInoutNotice.get(0).getContractId());
-                }else {
-                    apiData.setHth(api1105.getHwdm().substring(0,18) + apiData.getRkywdh());
+                    if(StringUtils.isNotEmpty(listInoutNotice.get(0).getContractId())){
+                        apiData.setHth(api1105.getHwdm().substring(0,18) + listInoutNotice.get(0).getContractId());
+                    }
+                    if(StringUtils.isNotEmpty(listInoutNotice.get(0).getPlanId())){
+                        apiData.setJhmxh(listInoutNotice.get(0).getPlanId());
+                    }
                 }
 
                 apiData.setXxdz(StringUtils.isEmpty(sysData.getUserAddress()) ? "璇︾粏鍦板潃":sysData.getUserAddress());
@@ -137,7 +140,7 @@
                 apiData.setDjsj(sysData.getRegisterTime());
 
                 //绮鍝佺
-                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety());
+                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety().substring(0,3));
                 apiData.setLspzdm(mappingCode);
 
                 //绮鎬ц川
@@ -200,9 +203,29 @@
                 }else {
                     apiData.setCzbz(api1202List.get(0).getCzbz());
                 }
+                //鍒ゆ柇鏄惁涓鸿埞杩�
+                if(StringUtils.isNotEmpty(sysData.getTransType()) && sysData.getTransType().equals("3")){
+                    listInoutRecordItem = fzzy40SyncInoutRecordItemRep.findDataByRecordId(sysData.getId());
+                    if(null == listInoutRecordItem || listInoutRecordItem.isEmpty()){
+                        api1202Rep.save(apiData);
+                        continue;
+                    }
 
-                //淇濆瓨鏁版嵁
-                api1202Rep.save(apiData);
+                    int idNum = Integer.valueOf(sysData.getId().substring(12))*100 + 10001;
+                    for (Fz40InoutRecordItem fz40InoutRecordItem : listInoutRecordItem) {
+                        apiData.setRkywdh(Constant.INOUT_TYPE_14 + sysData.getId().substring(4,10) + String.valueOf(idNum).substring(1));
+                        apiData.setMz(fz40InoutRecordItem.getFullWeight());
+                        apiData.setPz(fz40InoutRecordItem.getEmptyWeight());
+                        apiData.setJz(fz40InoutRecordItem.getSettleWeight());
+
+                        api1202Rep.save(apiData);
+                        idNum ++;
+                    }
+                }else {
+                    //淇濆瓨鏁版嵁
+                    api1202Rep.save(apiData);
+                }
+
                 log.info("1202---鍚屾鏁版嵁锛歿}", apiData.toString());
             }
         } catch (Exception e) {

--
Gitblit v1.9.3