From ce9d44e48aa77ebf2537f22ff8bf4a70089d0474 Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期二, 22 八月 2023 18:17:29 +0800
Subject: [PATCH] 优化3.5和4.0版本的出入库信息同步

---
 src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java |   60 ++++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 40 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java
index 7d741c1..4fdc9f4 100644
--- a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java
+++ b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java
@@ -3,14 +3,15 @@
 import com.fzzy.api.Constant;
 import com.fzzy.api.entity.Api1105;
 import com.fzzy.api.entity.Api1202;
+import com.fzzy.api.entity.Api1208;
 import com.fzzy.api.entity.ApiLog;
 import com.fzzy.api.service.ApiCommonService;
 import com.fzzy.api.service.ApiTriggerService;
 import com.fzzy.api.utils.ContextUtil;
 import com.fzzy.api.view.repository.Api1202Rep;
 import com.fzzy.api.view.repository.ApiLogRep;
-import com.fzzy.async.fzzy35.entity.InoutNoticeIn;
-import com.fzzy.async.fzzy35.entity.InoutRecord;
+import com.fzzy.async.fzzy35.entity.Fz35InoutNoticeIn;
+import com.fzzy.async.fzzy35.entity.Fz35InoutRecord;
 import com.fzzy.async.fzzy35.repository.Fzzy35Sync1202Rep;
 import com.fzzy.async.fzzy35.repository.Fzzy35SyncNoticeInRep;
 import lombok.extern.slf4j.Slf4j;
@@ -19,9 +20,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import java.util.Calendar;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 /**
  * 绮鍏ュ簱淇℃伅
@@ -68,7 +67,7 @@
         apiLog.setId(ContextUtil.getUUID());
         try {
             //鑾峰彇绮鍏ュ簱璁板綍淇℃伅锛屾牴鎹祦绋嬪畬鎴愭椂闂磋幏鍙�
-            List<InoutRecord> list = fzzySync1202Rep.listInoutRecord(deptId, INOUT_TYPE_IN, start, end);
+            List<Fz35InoutRecord> list = fzzySync1202Rep.listInoutRecord(deptId, INOUT_TYPE_IN, start, end);
 
             if (null == list || list.isEmpty()) {
                 log.info("-------------娌℃湁鑾峰彇鍒扮伯椋熷叆搴撲俊鎭�------------------");
@@ -77,9 +76,20 @@
 
             Api1202 apiData;
             Api1105 api1105;
-            List<InoutNoticeIn> listInoutNotice;
+            List<Fz35InoutNoticeIn> listInoutNotice;
+            List<Api1202> api1202List;
             Calendar c = Calendar.getInstance();
-            for (InoutRecord sysData : list) {
+            String ywsj = "";
+            String num = "";
+            Map<String, Integer> map = new HashMap<>();
+            for (Fz35InoutRecord sysData : list) {
+                if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){
+                    sysData.setRecordWeight(sysData.getSettleWeight());
+                }
+                //鍒ゆ柇鍑�閲嶆槸鍚﹀ぇ浜�0锛岀瓑浜�0琛ㄧず涓嶅悎鏍硷紝涓嶈繘琛屽悓姝ヤ笂浼�
+                if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){
+                    continue;
+                }
                 //鑾峰彇璐т綅淇℃伅
                 api1105 = commonService.getApi1105Cache(sysData.getDepotId());
                 if (null == api1105) {
@@ -87,9 +97,17 @@
                 }
                 apiData = new Api1202();
 
-                apiData.setId(sysData.getId());
-
                 apiData.setRkywdh(Constant.INOUT_TYPE_14 + sysData.getId().substring(4));
+                //鍒ゆ柇涓氬姟鏃堕棿涓庡崟鎹彿鏄惁鍖归厤
+                ywsj = DateFormatUtils.format(sysData.getCompleteTime(),"yyMMdd");
+                if(!ywsj.equals(sysData.getId().substring(4, 10))){
+                    if(null == map.get(ywsj)){
+                        map.put(ywsj, 10201);
+                    }
+                    num = String.valueOf(map.get(ywsj)).substring(1);
+                    apiData.setRkywdh(Constant.INOUT_TYPE_14 + ywsj + num);
+                    map.put(ywsj, map.get(ywsj) + 1);
+                }
 
                 //璐т綅浠g爜
                 apiData.setHwdm(api1105.getHwdm());
@@ -100,7 +118,7 @@
                 //榛樿涓�涓殢渚垮��
                 apiData.setLxdh(StringUtils.isEmpty(sysData.getUserContact()) ? "13012345678" : sysData.getUserContact());
 
-                apiData.setSfzh(null == sysData.getUserId() ? "410183200010100000" : sysData.getUserId());
+                apiData.setSfzh(null == sysData.getUserId() ? "410183200010100000" : sysData.getUserId().trim());
 
                 //鑾峰彇鍚堝悓鍙�
                 listInoutNotice = fzzy35SyncNoticeInRep.listInoutNoticeInById(sysData.getNoticeId());
@@ -112,8 +130,8 @@
 
                 apiData.setXxdz(sysData.getUserAddress());
 
-                //杩愯緭宸ュ叿锛岄粯璁ゆ苯杞︼紝TODO>> 寰呰皟鏁翠负鏍规嵁鏁版嵁搴撹幏鍙�
-                apiData.setYsgj("1");
+                //杩愯緭宸ュ叿锛岃嫢涓虹┖锛屽垯榛樿缁�1-姹借溅
+                apiData.setYsgj(StringUtils.isEmpty(sysData.getTransType()) ? "1":sysData.getTransType());
 
                 //杞﹁埞鍙�
                 apiData.setCch(sysData.getPlateNum());
@@ -164,25 +182,27 @@
                 //鍊间粨 鐜板満鎵i噸
                 apiData.setXckl( 0 - sysData.getDeHandle());
 
-
-                apiData.setJz(sysData.getSettleWeight());
+                apiData.setJz(sysData.getRecordWeight());
                 c.setTime(sysData.getCompleteTime());
                 c.add(Calendar.MINUTE,3);
                 apiData.setCmsj(c.getTime());
 
-
-                //鍏ュ簱缁撶畻鍗曞彿
-                apiData.setRkjsdh(kqdm + sysData.getId().substring(2));
+                //鍏ュ簱缁撶畻鍗曞彿,榛樿缁熶竴缁撶畻锛屼笉璁剧疆缁撶畻鍗曞彿
+                //apiData.setRkjsdh(kqdm + sysData.getId().substring(2));
 
                 //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂�
-                apiData.setCzbz(Constant.CZBZ_I);
                 apiData.setZhgxsj(c.getTime());
 
                 //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂�
                 apiData.setBizId(sysData.getId());
                 apiData.setKqdm(kqdm);
                 apiData.setSyncTime(new Date());
-
+                api1202List = api1202Rep.getDataById(apiData.getRkywdh());
+                if(null == api1202List || api1202List.isEmpty()){
+                    apiData.setCzbz(Constant.CZBZ_I);
+                }else {
+                    apiData.setCzbz(api1202List.get(0).getCzbz());
+                }
                 //淇濆瓨鏁版嵁
                 api1202Rep.save(apiData);
                 log.info("1202---鍚屾鏁版嵁锛歿}", apiData.toString());

--
Gitblit v1.9.3