From a09c9a9e8d9fe49b2c4bd84e43d3d092175592ee Mon Sep 17 00:00:00 2001
From: YYC <1833023622@qq.com>
Date: 星期二, 05 九月 2023 14:29:52 +0800
Subject: [PATCH] 上海同步数据---市储检斤单

---
 src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java |    8 ++
 src/main/java/com/fzzy/otherview/sh2023/pr/SHApi2101PR.java    |    4 
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2101.java   |  153 ++++++++++++++++++++++++++++++++++++++
 src/main/java/com/fzzy/push/sh2023/dto/SH2023Api2101.java      |   10 --
 src/main/java/com/fzzy/otherview/sh2023/ShApi2101.view.xml     |   23 -----
 src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java   |    7 +
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2104.java   |   19 ++--
 7 files changed, 179 insertions(+), 45 deletions(-)

diff --git a/src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java b/src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java
index 8b18944..30d012d 100644
--- a/src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java
+++ b/src/main/java/com/fzzy/api/view/repository/ApiInfoDataRep.java
@@ -43,4 +43,12 @@
     @Query(value = "update ApiInfoData set czbz=:czbz ,data=:data where id=:id ")
     int updateStatus(@Param("id") String id, @Param("data") String data, @Param("czbz") String czbz);
 
+    /**
+     * 鏍规嵁鎺ュ彛缂栫爜鍜屾暟鎹唴瀹笽D鏌ヨ鏁版嵁
+     *
+     * @param inteId
+     * @return
+     */
+    @Query("from ApiInfoData where inteId=:inteId and dataId=:dataId ")
+    List<ApiInfoData> getDataByInteAndData(@Param("inteId") String inteId, @Param("dataId") String dataId);
 }
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java
index ab22f00..8880181 100644
--- a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java
+++ b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java
@@ -46,6 +46,8 @@
     @Autowired
     private Fzzy40Sync1109 fzzySync1109;
     @Autowired
+    private Fzzy40Sync2101 fzzySync2101;
+    @Autowired
     private Fzzy40Sync2104 fzzySync2104;
 
     @Override
@@ -63,8 +65,9 @@
 
         /*-----鍚勭渷鐙湁鎺ュ彛淇℃伅鍚屾-----*/
         if (StringUtils.isNotEmpty(param.getPushProtocol()) && PushProtocol.SB_SH_2023.getCode().equals(param.getPushProtocol())) {
-            //涓婃捣甯傚钩鍙�2023鐗堬紝闇�瑕佸悓姝ュ競鍌ㄩ┏杩愬崟
-
+            //涓婃捣甯傚钩鍙�2023鐗堬紝闇�瑕佸悓姝ュ競鍌ㄦ鏂ゅ崟锛屽悓姝ュ競鍌ㄩ┏杩愬崟
+            //鍚屾甯傚偍妫�鏂ゅ崟
+            fzzySync2101.syncData(param.getKqdm(), param.getDeptId(), param.getStart(), param.getEnd());
             //鍚屾甯傚偍椹宠繍鍗�
             fzzySync2104.syncData(param.getKqdm(), param.getDeptId(), param.getStart(), param.getEnd());
         }
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2101.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2101.java
new file mode 100644
index 0000000..69617e1
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2101.java
@@ -0,0 +1,153 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.alibaba.fastjson.JSON;
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1102;
+import com.fzzy.api.entity.Api1105;
+import com.fzzy.api.entity.ApiInfoData;
+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.Api1102Rep;
+import com.fzzy.api.view.repository.ApiInfoDataRep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40InoutRecord;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1202Rep;
+import com.fzzy.async.fzzy40.repository.Fzzy40SyncDepotConfRep;
+import com.fzzy.async.fzzy40.repository.Fzzy40SyncDepotRep;
+import com.fzzy.push.sh2023.SH2023Constant;
+import com.fzzy.push.sh2023.dto.SH2023Api2101;
+import com.fzzy.push.sh2023.dto.ShAreaBjw;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 甯傚偍妫�鏂ゅ崟
+ *
+ * @Author:YAN
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync2101 {
+
+    @Autowired
+    private Fzzy40Sync1202Rep fzzy40Sync1202Rep;
+    @Autowired
+    private Api1102Rep api1102Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+    @Autowired
+    private ApiCommonService commonService;
+    @Autowired
+    private ApiInfoDataRep apiInfoDataRep;
+    @Autowired
+    private ApiTriggerService apiTriggerService;
+
+    /**
+     * 鍚屾甯傚偍妫�鏂ゅ崟
+     *
+     * @param deptId
+     * @param start
+     * @param end
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+
+        log.info("-------------2101鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------");
+
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(deptId);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(SH2023Constant.SH_2023_API_CODE_2101);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40InoutRecord> list = fzzy40Sync1202Rep.listInoutRecord(deptId, start, end);
+            if (null == list || list.isEmpty()) {
+                log.debug("-------------娌℃湁鑾峰彇鍒板競鍌ㄦ鏂ゅ崟------------------");
+                return;
+            }
+
+            SH2023Api2101 sh2023Api2101;
+            Api1105 api1105;
+            List<ApiInfoData> apiInfoDataList;
+            List<Api1102> api1102List = api1102Rep.findPushData(kqdm);
+            String bjw = "";
+            if (null != api1102List && api1102List.size() > 0) {
+                bjw = ShAreaBjw.getBjw(api1102List.get(0).getXzqhdm());
+            }
+            for (Fz40InoutRecord sysData : list) {
+                List<ApiInfoData> apiInfoData = apiInfoDataRep.getDataByInteAndData(SH2023Constant.SH_2023_API_CODE_2101, sysData.getCheckId());
+                if (null != apiInfoData && apiInfoData.size() > 0) {
+                    continue;
+                }
+                sh2023Api2101 = new SH2023Api2101();
+                sh2023Api2101.setJjdh(sysData.getCheckId());
+                sh2023Api2101.setKqdm(kqdm);
+                sh2023Api2101.setJjrq(sysData.getCompleteTime());
+                sh2023Api2101.setJzrq(sysData.getCompleteTime());
+                sh2023Api2101.setInbillno(sysData.getId().substring(2));
+                sh2023Api2101.setZydh(sysData.getId());
+                sh2023Api2101.setZylx("IN".equals(sysData.getType()) ? "1" : "4");
+
+                sh2023Api2101.setCch(sysData.getPlateNum());
+                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, sysData.getFoodType());
+                sh2023Api2101.setLsxzdm(mappingCode);
+                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety());
+                sh2023Api2101.setLspzdmdl(mappingCode);
+
+                sh2023Api2101.setLldm(kqdm);
+
+
+                sh2023Api2101.setJz(sysData.getNetWeight());
+                sh2023Api2101.setMz(sysData.getNetWeight());
+                sh2023Api2101.setBzwzkl(sysData.getDePackage());
+                sh2023Api2101.setZhgxsj(sysData.getUpdateTime());
+
+                //鑾峰彇璐т綅淇℃伅
+                api1105 = commonService.getApi1105Cache(sysData.getDepotId());
+                sh2023Api2101.setAjdm(api1105.getAjdm());
+                sh2023Api2101.setHwdm(api1105.getHwdm());
+                sh2023Api2101.setPch(api1105.getHwdm() + sysData.getFoodYear());
+                sh2023Api2101.setBjw(bjw);
+
+                //鎸佷箙鍖栦繚瀛橈紝鍗曠嫭瀛樺叆闈炲浗鏍囨帴鍙h〃
+                ApiInfoData infoData = new ApiInfoData();
+                infoData.setId(ContextUtil.getUUID());
+                infoData.setKqdm(kqdm);
+                infoData.setInteType(Constant.API_CATEGORY_12);
+                infoData.setInteId(SH2023Constant.SH_2023_API_CODE_2101);
+                infoData.setUpdateTime(new Date());
+                infoData.setDataId(sh2023Api2101.getJjdh());
+                infoData.setRemarks("甯傚偍妫�鏂ゅ崟");
+
+                //璁剧疆鎿嶄綔鏍囧織
+                apiInfoDataList = apiInfoDataRep.getDataByDataId(infoData.getDataId());
+                if (null == apiInfoDataList || apiInfoDataList.isEmpty()) {
+                    infoData.setCzbz(Constant.CZBZ_I);
+                    sh2023Api2101.setCzbz(Constant.CZBZ_I);
+                } else {
+                    infoData.setCzbz(apiInfoDataList.get(0).getCzbz());
+                    sh2023Api2101.setCzbz(apiInfoDataList.get(0).getCzbz());
+                }
+
+                infoData.setData(JSON.toJSONString(sh2023Api2101));
+                apiInfoDataRep.save(infoData);
+
+                log.info("2101---甯傚偍妫�鏂ゅ崟-鍚屾鏁版嵁锛歿}", sh2023Api2101);
+
+            }
+
+        } catch (Exception e) {
+            log.error("---甯傚偍妫�鏂ゅ崟鍚屾鎵ц澶辫触----{}", e);
+            apiLog.setResult("鍚屾甯傚偍妫�鏂ゅ崟澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2104.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2104.java
index e5988d4..9ce5adb 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2104.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync2104.java
@@ -35,8 +35,6 @@
 @Component
 public class Fzzy40Sync2104 {
 
-    private final static String INOUT_TYPE_IN = "IN";
-
     @Autowired
     private Fzzy40Sync1202Rep fzzy40Sync1202Rep;
     @Autowired
@@ -81,21 +79,25 @@
             List<ApiInfoData> apiInfoDataList;
             List<Api1102> api1102List = api1102Rep.findPushData(kqdm);
             String bjw = "";
-            String mappingCode = "";
             if (null != api1102List && api1102List.size() > 0) {
                 bjw = ShAreaBjw.getBjw(api1102List.get(0).getXzqhdm());
             }
             for (Fz40InoutRecord sysData : list) {
-
+                List<ApiInfoData> apiInfoData = apiInfoDataRep.getDataByInteAndData(SH2023Constant.SH_2023_API_CODE_2104, sysData.getId().substring(2));
+                if (null != apiInfoData && apiInfoData.size() > 0) {
+                    continue;
+                }
                 sh2023Api2104 = new SH2023Api2104();
                 sh2023Api2104.setBydh(sysData.getId().substring(2));
                 sh2023Api2104.setKqdm(kqdm);
                 sh2023Api2104.setJzrq(sysData.getCompleteTime());
 
                 sh2023Api2104.setCch(sysData.getPlateNum());
-                sh2023Api2104.setLspzdm(sysData.getFoodVariety());
-                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, sysData.getFoodType());
+
+                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, sysData.getFoodType());
                 sh2023Api2104.setLsxzdm(mappingCode);
+                mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety());
+                sh2023Api2104.setLspzdm(mappingCode);
 
                 sh2023Api2104.setLldm(kqdm);
 
@@ -107,9 +109,10 @@
                 sh2023Api2104.setPch(api1105.getHwdm() + sysData.getFoodYear());
                 sh2023Api2104.setBjw(bjw);
 
+
                 //鎸佷箙鍖栦繚瀛橈紝鍗曠嫭瀛樺叆闈炲浗鏍囨帴鍙h〃
                 ApiInfoData infoData = new ApiInfoData();
-                infoData.setId(sh2023Api2104.getBydh());
+                infoData.setId(ContextUtil.getUUID());
                 infoData.setKqdm(kqdm);
                 infoData.setInteType(Constant.API_CATEGORY_12);
                 infoData.setInteId(SH2023Constant.SH_2023_API_CODE_2104);
@@ -130,7 +133,7 @@
                 infoData.setData(JSON.toJSONString(sh2023Api2104));
                 apiInfoDataRep.save(infoData);
 
-                log.info("2103---甯傚偍椹宠繍鍗�-鍚屾鏁版嵁锛歿}", sh2023Api2104.toString());
+                log.info("2104---甯傚偍椹宠繍鍗�-鍚屾鏁版嵁锛歿}", sh2023Api2104.toString());
 
             }
 
diff --git a/src/main/java/com/fzzy/otherview/sh2023/ShApi2101.view.xml b/src/main/java/com/fzzy/otherview/sh2023/ShApi2101.view.xml
index 241d6a5..9e62fab 100644
--- a/src/main/java/com/fzzy/otherview/sh2023/ShApi2101.view.xml
+++ b/src/main/java/com/fzzy/otherview/sh2023/ShApi2101.view.xml
@@ -253,15 +253,6 @@
         <Property></Property>
         <Property name="label">鎵规鍙�</Property>
       </PropertyDef>
-      <PropertyDef name="bizId">
-        <Property></Property>
-        <Property name="label">涓氬姟id</Property>
-        <Property name="required">false</Property>
-      </PropertyDef>
-      <PropertyDef name="syncTime">
-        <Property name="dataType">DateTime</Property>
-        <Property name="label">鍚屾鏃堕棿</Property>
-      </PropertyDef>
     </DataType>
     <DataType name="dtParam">
       <Property name="creationType">com.fzzy.api.data.ApiParam</Property>
@@ -440,10 +431,6 @@
       </DataColumn>
       <DataColumn name="zylx">
         <Property name="property">zylx</Property>
-        <Property name="align">center</Property>
-      </DataColumn>
-      <DataColumn name="khmc">
-        <Property name="property">khmc</Property>
         <Property name="align">center</Property>
       </DataColumn>
       <DataColumn name="mz">
@@ -635,16 +622,6 @@
           <AutoFormElement>
             <Property name="name">bjw</Property>
             <Property name="property">bjw</Property>
-            <Editor/>
-          </AutoFormElement>
-          <AutoFormElement>
-            <Property name="name">bizId</Property>
-            <Property name="property">bizId</Property>
-            <Editor/>
-          </AutoFormElement>
-          <AutoFormElement>
-            <Property name="name">syncTime</Property>
-            <Property name="property">syncTime</Property>
             <Editor/>
           </AutoFormElement>
         </AutoForm>
diff --git a/src/main/java/com/fzzy/otherview/sh2023/pr/SHApi2101PR.java b/src/main/java/com/fzzy/otherview/sh2023/pr/SHApi2101PR.java
index c217eea..44afe90 100644
--- a/src/main/java/com/fzzy/otherview/sh2023/pr/SHApi2101PR.java
+++ b/src/main/java/com/fzzy/otherview/sh2023/pr/SHApi2101PR.java
@@ -183,12 +183,12 @@
                 if (Constant.CZBZ_I.equals(data.getCzbz())) {
 
                     infoData = new ApiInfoData();
-                    infoData.setId(data.getBizId());
+                    infoData.setId(data.getJjdh());
                     infoData.setKqdm(data.getKqdm());
                     infoData.setInteType("21");
                     infoData.setInteId(SH2023Constant.SH_2023_API_CODE_2101);
                     infoData.setUpdateTime(new Date());
-                    infoData.setDataId(data.getBizId());
+                    infoData.setDataId(data.getJjdh());
 
                     data.setCzbz(Constant.CZBZ_U);
                     infoData.setCzbz(Constant.CZBZ_U);
diff --git a/src/main/java/com/fzzy/push/sh2023/dto/SH2023Api2101.java b/src/main/java/com/fzzy/push/sh2023/dto/SH2023Api2101.java
index 0dde683..be0b8a6 100644
--- a/src/main/java/com/fzzy/push/sh2023/dto/SH2023Api2101.java
+++ b/src/main/java/com/fzzy/push/sh2023/dto/SH2023Api2101.java
@@ -112,14 +112,4 @@
     @PropertyDef(label = "鏍囪浣�")
     private String bjw;
 
-    @JSONField(serialize = false)
-    @PropertyDef(label = "涓氬姟id")
-    @Column(name = "bizId", length = 40)
-    private String bizId;
-
-    @JSONField(serialize = false)
-    @PropertyDef(label = "鍚屾鏃堕棿", description = "浠庣伯搴撶郴缁熷悓姝ュ埌鎺ュ彛绠$悊涓績鐨勬椂闂�")
-    @Column(name = "syncTime")
-    private Date syncTime;
-
 }

--
Gitblit v1.9.3