From 029de836702607a95ccb0a69a74efcea52ddc451 Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期四, 25 九月 2025 19:35:38 +0800
Subject: [PATCH] 上海对农数据接口调整2

---
 src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1023.java |  231 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 231 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1023.java b/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1023.java
new file mode 100644
index 0000000..a5d5d81
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1023.java
@@ -0,0 +1,231 @@
+package com.fzzy.async.fzzy61.impl;
+
+import com.alibaba.fastjson.JSON;
+import com.fzzy.api.Constant;
+import com.fzzy.api.data.PushProtocol;
+import com.fzzy.api.entity.*;
+import com.fzzy.api.service.ApiCommonService;
+import com.fzzy.api.service.ApiTriggerService;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.*;
+import com.fzzy.async.fzzy61.entity.Fz61DrugLogApply;
+import com.fzzy.async.fzzy61.entity.Fz61DrugLogDtl;
+import com.fzzy.async.fzzy61.entity.Fz61DrugLogPeople;
+import com.fzzy.async.fzzy61.repository.Fzzy61Sync1023Rep;
+import com.fzzy.async.fzzy61.repository.Fzzy61SyncDrugLogDtlRep;
+import com.fzzy.async.fzzy61.repository.Fzzy61SyncDrugLogPeopleRep;
+import com.fzzy.async.fzzy61.repository.Fzzy61SyncDrugLogWayRep;
+import com.fzzy.push.gd2022.ApiCodeConstant;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Dtl;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023People;
+import com.fzzy.push.gd2022.dto.Gd2022Api1023Way;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 鐔忚捀澶囨淇℃伅
+ *
+ * @Author:YAN
+ */
+@Slf4j
+@Component
+public class Fzzy61Sync1023 {
+    @Autowired
+    private Api1101Rep api1101Rep;
+    @Autowired
+    private Api1102Rep api1102Rep;
+    @Autowired
+    private Api1105Rep api1105Rep;
+    @Autowired
+    private Fzzy61Sync1023Rep fzzy61Sync1023Rep;
+    @Autowired
+    private Fzzy61SyncDrugLogPeopleRep drugLogPeopleRep;
+    @Autowired
+    private Fzzy61SyncDrugLogWayRep drugLogWayRep;
+    @Autowired
+    private Fzzy61SyncDrugLogDtlRep drugLogDtlRep;
+    @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("-------------1023鎺ュ彛鐔忚捀澶囨淇℃伅寮�濮嬪悓姝�------------------");
+
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(deptId);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(ApiCodeConstant.API_9201);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz61DrugLogApply> list = fzzy61Sync1023Rep.listDrugLogApply(deptId, start, end);
+
+            if (null == list || list.isEmpty()) {
+                log.info("-------------娌℃湁鑾峰彇鍒扮啅钂稿妗堜俊鎭�------------------");
+                return;
+            }
+            List<Gd2022Api1023Dtl> dtlList;
+            List<Gd2022Api1023Way> wayList;
+            List<Gd2022Api1023People> peopleList;
+
+
+            Gd2022Api1023 GD2022Api1023;
+            Gd2022Api1023Dtl gd2022Api1023Dtl;
+            Gd2022Api1023Way gd2022Api1023Way;
+            Gd2022Api1023People gd2022Api1023People;
+
+            List<ApiInfoData> apiInfoList;
+            ApiInfoData infoData;
+            for (Fz61DrugLogApply data : list) {
+
+                GD2022Api1023 = new Gd2022Api1023();
+                BeanUtils.copyProperties(data, GD2022Api1023);
+                GD2022Api1023.setXzbm(data.getXzbm().substring(8));
+                GD2022Api1023.setKqdm(kqdm);
+                List<Api1102> api1102List = api1102Rep.findPushData(kqdm);
+                if (null != api1102List && api1102List.size() > 0) {
+                    GD2022Api1023.setKqmc(api1102List.get(0).getKqmc());
+                }
+
+                GD2022Api1023.setDwdm(kqdm.substring(0, 18));
+                List<Api1101> api1101List = api1101Rep.findPushData(kqdm);
+                if (null != api1101List && api1101List.size() > 0) {
+                    GD2022Api1023.setDwmc(api1101List.get(0).getDwmc());
+                }
+                GD2022Api1023.setYjmc(data.getDrugName());
+                GD2022Api1023.setYjlx(data.getDrugType());
+                GD2022Api1023.setLqrq(data.getLqsj());
+                GD2022Api1023.setZhgxsj(data.getUpdateTime());
+                if (data.getLqr().contains("銆�")) {
+                    GD2022Api1023.setLqr(data.getLqr().replace('銆�', '|'));
+                }
+
+                //鍌ㄧ伯绮儏鏄庣粏琛�
+                List<Fz61DrugLogDtl> dtls = drugLogDtlRep.listDrugLogDtl(data.getXzbm());
+                Api1105 api1105 = commonService.getApi1105Cache(data.getDepotId());
+                gd2022Api1023Dtl = new Gd2022Api1023Dtl();
+                BeanUtils.copyProperties(data, gd2022Api1023Dtl);
+                if (null != api1105) {
+                    gd2022Api1023Dtl.setCfmc(api1105.getHwmc());
+                    gd2022Api1023Dtl.setCfdm(api1105.getHwdm().substring(0, 25));
+                }
+
+                //绮鍝佺
+                String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, data.getFoodVariety());
+                gd2022Api1023Dtl.setLspzdm(mappingCode);
+                gd2022Api1023Dtl.setLsxzdm(data.getFoodType());
+                gd2022Api1023Dtl.setLsdjdm(data.getFoodLevel());
+                gd2022Api1023Dtl.setLssl(data.getNumber());
+                gd2022Api1023Dtl.setSf(data.getPerWet());
+                gd2022Api1023Dtl.setZz(data.getPerImpurity());
+
+
+                dtlList = new ArrayList<>();
+                dtlList.add(gd2022Api1023Dtl);
+                GD2022Api1023.setDtls(dtlList);
+//                if (null != dtls && dtls.size() > 0) {
+//                    dtlList = new ArrayList<>();
+//                    for (Fz61DrugLogDtl dtl : dtls) {
+//                        gdApi1023Dtl = new GdApi1023Dtl();
+//                        BeanUtils.copyProperties(dtl, gdApi1023Dtl);
+//                        gdApi1023Dtl.setCfdm(dtl.getDepotId());
+//                        gdApi1023Dtl.setLspzdm(dtl.getFoodVariety());
+//                        gdApi1023Dtl.setLsxzdm(dtl.getFoodType());
+//                        gdApi1023Dtl.setLsdjdm(dtl.getFoodLevel());
+//                        gdApi1023Dtl.setLssl(dtl.getNumber());
+//                        gdApi1023Dtl.setSf(dtl.getPerWet());
+//                        gdApi1023Dtl.setZz(dtl.getPerImpurity());
+//                        dtlList.add(gdApi1023Dtl);
+//                    }
+//                    gdApi1023.setDtls(dtlList);
+//                }
+
+
+                gd2022Api1023Way = new Gd2022Api1023Way();
+                BeanUtils.copyProperties(data, gd2022Api1023Way);
+                wayList = new ArrayList<>();
+                wayList.add(gd2022Api1023Way);
+                GD2022Api1023.setWays(wayList);
+//                List<Fz61DrugLogWay> ways = drugLogWayRep.listDrugLogWay(data.getXzbm());
+//                if (null != ways && ways.size() > 0) {
+//                    wayList = new ArrayList<>();
+//                    for (Fz61DrugLogWay way : ways) {
+//                        gdApi1023Way = new GdApi1023Way();
+//                        BeanUtils.copyProperties(way, gdApi1023Way);
+//                        wayList.add(gdApi1023Way);
+//                    }
+//                    gdApi1023.setWays(wayList);
+//                }
+
+                List<Fz61DrugLogPeople> peoples = drugLogPeopleRep.listDrugLogPeople(data.getXzbm());
+                if (null != peoples && peoples.size() > 0) {
+                    peopleList = new ArrayList<>();
+                    for (Fz61DrugLogPeople people : peoples) {
+                        gd2022Api1023People = new Gd2022Api1023People();
+                        BeanUtils.copyProperties(people, gd2022Api1023People);
+                        gd2022Api1023People.setXm(people.getMx());
+                        if (StringUtils.isEmpty(people.getZyzg())) {
+                            gd2022Api1023People.setZyzg("涓骇");
+                        }
+                        peopleList.add(gd2022Api1023People);
+                    }
+                    GD2022Api1023.setPeoples(peopleList);
+                }
+                //鎸佷箙鍖栦繚瀛橈紝鍗曠嫭瀛樺叆闈炲浗鏍囨帴鍙h〃
+                infoData = new ApiInfoData();
+
+                infoData.setKqdm(kqdm);
+                infoData.setInteType(Constant.API_CATEGORY_13);
+                infoData.setInteId(ApiCodeConstant.API_9201);
+                infoData.setBizType(PushProtocol.SB_GD_2023.getCode());
+                infoData.setUpdateTime(new Date());
+                infoData.setDataId(data.getXzbm());
+                apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_9201, data.getXzbm(), kqdm);
+
+                if (null == apiInfoList || apiInfoList.isEmpty()) {
+                    GD2022Api1023.setCzbz(Constant.CZBZ_I);
+                    infoData.setCzbz(Constant.CZBZ_I);
+                    infoData.setId(ContextUtil.getUUID());
+                } else {
+                    GD2022Api1023.setCzbz(apiInfoList.get(0).getCzbz());
+                    infoData.setCzbz(apiInfoList.get(0).getCzbz());
+                    infoData.setId(apiInfoList.get(0).getId());
+                }
+
+                infoData.setData(JSON.toJSONString(GD2022Api1023));
+
+                //淇濆瓨鏁版嵁
+                apiInfoDataRep.save(infoData);
+                log.info("1023---鍚屾鏁版嵁锛歿}", GD2022Api1023.toString());
+            }
+
+        } catch (Exception e) {
+            log.error("---鐔忚捀澶囨鍚屾鎵ц澶辫触----{}", e.toString());
+            apiLog.setResult("鐔忚捀澶囨淇℃伅鍚屾鎵ц澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+}

--
Gitblit v1.9.3