From fafc8d352aa1a4f943dd9e79d14e8e93ee12ce1f Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期三, 11 十月 2023 08:42:11 +0800
Subject: [PATCH] 优化数据同步时品种转换

---
 src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1208.java |   89 ++++++++++++++++++++++++++------------------
 1 files changed, 53 insertions(+), 36 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1208.java b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1208.java
index 191cd34..7977a27 100644
--- a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1208.java
+++ b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1208.java
@@ -8,13 +8,12 @@
 import com.fzzy.api.view.repository.Api1102Rep;
 import com.fzzy.api.view.repository.Api1208Rep;
 import com.fzzy.api.view.repository.ApiLogRep;
-import com.fzzy.async.fzzy35.entity.Depot;
+import com.fzzy.async.fzzy35.entity.Fz35DepotStore;
 import com.fzzy.async.fzzy35.repository.Fzzy35Sync1208Rep;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang.time.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
-
 import java.util.Date;
 import java.util.List;
 
@@ -58,7 +57,7 @@
         apiLog.setStatus(99);
         apiLog.setId(ContextUtil.getUUID());
         try {
-            List<Depot> list = fzzySync1208Rep.listDepot(deptId);
+            List<Fz35DepotStore> list = fzzySync1208Rep.listDepot(deptId, start, end);
 
             if (null == list || list.isEmpty()) {
 
@@ -72,69 +71,87 @@
 
             Api1208 apiData;
             Api1105 api1105;
-          //  List<GbArea> gbAreaList;
-            for (Depot depot : list) {
+            List<Api1208> api1208List;
+            for (Fz35DepotStore fz35DepotStore : list) {
 
                 //鑾峰彇璐т綅淇℃伅
-                api1105 = commonService.getApi1105Cache(depot.getId());
+                api1105 = commonService.getApi1105Cache(fz35DepotStore.getDepotId());
                 if (null == api1105) {
                     continue;
                 }
-                apiData = api1208Rep.getOne(api1105.getHwdm());
-                if (apiData == null){
-                    apiData = new Api1208();
-                    apiData.setCzbz(Constant.CZBZ_I);
-                }else{
-                    //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂�
-                }
+
                 apiData = new Api1208();
+                apiData.setId(fz35DepotStore.getId());
                 apiData.setHwdm(api1105.getHwdm());
 
                 //绮鍝佺
-                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, depot.getFoodVariety());
+                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, fz35DepotStore.getFoodVariety().substring(0,3));
                 apiData.setLspzdm(mappingCode);
 
                 //绮鎬ц川
-                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, depot.getFoodType());
+                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, fz35DepotStore.getFoodType());
                 apiData.setLsxzdm(mappingCode);
 
                 //绮绛夌骇
-                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSDJ, depot.getFoodLevel());
+                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSDJ, fz35DepotStore.getFoodLevel());
                 apiData.setLsdjdm(mappingCode);
 
-                apiData.setShnd(depot.getFoodYear());
+                apiData.setShnd(fz35DepotStore.getFoodYear());
 
                 //浜у湴浠g爜
-                String cd = commonService.getFoodLocationIdFromCache(depot.getFoodLocation());
+                String cd = commonService.getFoodLocationIdFromCache(fz35DepotStore.getFoodLocation());
                 apiData.setCd(cd);
 
-                apiData.setBgy(depot.getStoreKeeperName());
+                apiData.setBgy(api1105.getBgy());
+                //绮潈褰掑睘鍗曚綅
                 apiData.setLqgsdwdm(api1102.getDwdm());
+                //绮潈琛屾斂鍖哄垝浠g爜
+                apiData.setLqxzqhdm(api1102.getDwdm().substring(2, 8));
+                //绠$悊鏂瑰紡-榛樿鐩村偍
+                apiData.setGlfs("01");
+                //鏀跺偍鍦扮偣-榛樿搴撳唴
+                apiData.setScdd("1");
+                //鍌ㄧ伯鏂瑰紡
+                apiData.setClfs(fz35DepotStore.getStoreType());
 
                 //璐т綅鐘舵��
-                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_HWZT, depot.getDepotStatus());
+                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_HWZT, fz35DepotStore.getDepotStatus());
                 apiData.setHwzt(mappingCode);
-
-                //鍥藉埆
-                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_GB, depot.getFoodLocation());
-                if(StringUtils.isNotEmpty(mappingCode)){
-                    apiData.setGb(mappingCode);
-                }else{
-                    apiData.setGb("156");
+                if(null == fz35DepotStore.getStoreDate()){
+                    fz35DepotStore.setStoreDate(new Date());
                 }
+                //鍏ヤ粨鏃堕棿
+                apiData.setRcsj(fz35DepotStore.getStoreDate());
+                //灏佷粨鏃ユ湡
+                if("3".equals(apiData.getHwzt())){
+                    apiData.setFcrq(DateUtils.addDays(fz35DepotStore.getStoreDate(), 10));
+                }
+                //鍑轰粨瀹屾垚鏃堕棿
+                if("1".equals(apiData.getHwzt())){
+                    apiData.setCcwcsj(DateUtils.addDays(fz35DepotStore.getStoreDate(), 5));
+                }
+                //鍥藉埆
+                apiData.setGb("156");
+                apiData.setSjsl(fz35DepotStore.getStorageReal());
+                apiData.setJjsl(fz35DepotStore.getStorageReal());
+                apiData.setSjzlxg(6);
+                apiData.setLdtj(10000);
 
-                apiData.setRcsj(depot.getStoreDate());
-                apiData.setSjsl(depot.getStorageReal());
-                apiData.setJjsl(depot.getStorageReal());
-
-                apiData.setZhgxsj(new Date());
+                apiData.setZhgxsj(fz35DepotStore.getUpdateDate());
 
                 //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂�
-                apiData.setBizId(depot.getId());
+                apiData.setBizId(fz35DepotStore.getId());
                 apiData.setKqdm(kqdm);
                 apiData.setSyncTime(new Date());
-                apiData.setId(api1105.getHwdm());
-                //淇濆瓨鏁版嵁
+
+                //搴撳瓨姣忔鏂板
+                api1208List = api1208Rep.getDataById(apiData.getId());
+                if(null == api1208List || api1208List.isEmpty()){
+                    apiData.setCzbz(Constant.CZBZ_I);
+                }else {
+                    apiData.setCzbz(api1208List.get(0).getCzbz());
+                }
+
                 //淇濆瓨鏁版嵁
                 api1208Rep.save(apiData);
             }

--
Gitblit v1.9.3