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/Fzzy61Sync9201.java |  211 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 211 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync9201.java b/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync9201.java
new file mode 100644
index 0000000..ee6283d
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync9201.java
@@ -0,0 +1,211 @@
+package com.fzzy.async.fzzy61.impl;
+
+import com.alibaba.fastjson2.JSON;
+import com.fzzy.api.Constant;
+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.Api1101Rep;
+import com.fzzy.api.view.repository.Api1102Rep;
+import com.fzzy.api.view.repository.Api9201Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+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.Fzzy61Sync9201Rep;
+import com.fzzy.async.fzzy61.repository.Fzzy61SyncDrugLogDtlRep;
+import com.fzzy.async.fzzy61.repository.Fzzy61SyncDrugLogPeopleRep;
+import com.fzzy.push.gd2022.ApiCodeConstant;
+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 Fzzy61Sync9201 {
+    @Autowired
+    private Api1101Rep api1101Rep;
+    @Autowired
+    private Api1102Rep api1102Rep;
+    @Autowired
+    private Fzzy61Sync9201Rep fzzy61Sync9201Rep;
+    @Autowired
+    private Fzzy61SyncDrugLogPeopleRep drugLogPeopleRep;
+    @Autowired
+    private Fzzy61SyncDrugLogDtlRep drugLogDtlRep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+    @Autowired
+    private ApiCommonService commonService;
+    @Autowired
+    private ApiTriggerService apiTriggerService;
+
+    @Autowired
+    private Api9201Rep api9201Rep;
+
+
+    /**
+     * 鍚屾鐔忚捀澶囨淇℃伅
+     *
+     * @param deptId
+     * @param start
+     * @param end
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+        log.info("-------------9201鎺ュ彛鐔忚捀澶囨淇℃伅寮�濮嬪悓姝�------------------");
+
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        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 = fzzy61Sync9201Rep.listDrugLogApply(deptId, start, end);
+
+            if (null == list || list.isEmpty()) {
+                log.info("-------------娌℃湁鑾峰彇鍒扮啅钂稿妗堜俊鎭�------------------");
+                return;
+            }
+            List<Gd2022Api1023Dtl> dtlList;
+            List<Gd2022Api1023Way> wayList;
+            List<Gd2022Api1023People> peopleList;
+
+            List<Api9201> api9201List;
+
+            Api1105 api1105;
+            Api9201 api9201;
+            Gd2022Api1023Dtl api9201Dtl;
+            Gd2022Api1023Way api9201Way;
+            Gd2022Api1023People api9201People;
+
+            for (Fz61DrugLogApply data : list) {
+
+                api9201 = new Api9201();
+                BeanUtils.copyProperties(data, api9201);
+                api9201.setBizId(data.getXzbm());
+                api9201.setId(data.getXzbm());
+                api9201.setXzbm(data.getXzbm().substring(8));
+                api9201.setKqdm(kqdm);
+                List<Api1102> api1102List = api1102Rep.findPushData(kqdm);
+                if (null != api1102List && api1102List.size() > 0) {
+                    api9201.setKqmc(api1102List.get(0).getKqmc());
+                }
+
+                api9201.setDwdm(kqdm.substring(0, 18));
+                List<Api1101> api1101List = api1101Rep.findPushData(kqdm);
+                if (null != api1101List && api1101List.size() > 0) {
+                    api9201.setDwmc(api1101List.get(0).getDwmc());
+                }
+                api9201.setYjmc(data.getDrugName().trim());
+                api9201.setYjlx(data.getDrugType().trim());
+                api9201.setLqrq(data.getLqsj());
+                api9201.setZhgxsj(data.getUpdateTime());
+                api9201.setXcfzr(data.getXcfzr().trim());
+                if (data.getLqr().contains("銆�")) {
+                    api9201.setLqr(data.getLqr().replace('銆�', '|').trim());
+                }
+
+                //鍌ㄧ伯绮儏鏄庣粏琛�
+                List<Fz61DrugLogDtl> dtls = drugLogDtlRep.listDrugLogDtl(data.getXzbm());
+
+                if (null != dtls && dtls.size() > 0) {
+                    dtlList = new ArrayList<>();
+                    for (Fz61DrugLogDtl dtl : dtls) {
+                        api9201Dtl = new Gd2022Api1023Dtl();
+                        BeanUtils.copyProperties(dtl, api9201Dtl);
+                        api1105 = commonService.getApi1105Cache(dtl.getDepotId());
+                        if (null != api1105) {
+                            api9201Dtl.setCfmc(api1105.getHwmc());
+                            api9201Dtl.setCfdm(api1105.getHwdm().substring(0, 25));
+                        }
+
+                        //绮鍝佺
+                        String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, dtl.getFoodVariety());
+                        api9201Dtl.setLspzdm(mappingCode);
+                        mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, dtl.getFoodType());
+                        api9201Dtl.setLsxzdm(mappingCode);
+                        api9201Dtl.setLsdjdm(dtl.getFoodLevel());
+                        api9201Dtl.setLssl(dtl.getNumber());
+                        api9201Dtl.setSf(dtl.getPerWet());
+                        api9201Dtl.setZz(dtl.getPerImpurity());
+                        dtlList.add(api9201Dtl);
+                    }
+                    api9201.setDtl(JSON.toJSONString(dtlList));
+                    api9201List = api9201Rep.getDataByBizId(api9201.getBizId());
+                    if (null == api9201List || api9201List.isEmpty()) {
+                        api9201.setCzbz(Constant.CZBZ_I);
+                    } else {
+                        api9201.setCzbz(api9201List.get(0).getCzbz());
+                    }
+                }
+//                BeanUtils.copyProperties(data, api9201Dtl);
+//                dtlList = new ArrayList<>();
+//                dtlList.add(api9201Dtl);
+//                api9201.setDtl(JSON.toJSONString(dtlList));
+
+
+                api9201Way = new Gd2022Api1023Way();
+                BeanUtils.copyProperties(data, api9201Way);
+                wayList = new ArrayList<>();
+                api9201Way.setSqfs(data.getSqfs().trim());
+                api9201Way.setXzfs(data.getXzfs().trim());
+                wayList.add(api9201Way);
+                api9201.setWay(JSON.toJSONString(wayList));
+
+                List<Fz61DrugLogPeople> peoples = drugLogPeopleRep.listDrugLogPeople(data.getXzbm());
+                if (null != peoples && peoples.size() > 0) {
+                    peopleList = new ArrayList<>();
+                    for (Fz61DrugLogPeople people : peoples) {
+                        api9201People = new Gd2022Api1023People();
+                        BeanUtils.copyProperties(people, api9201People);
+                        api9201People.setXm(people.getMx().trim());
+                        api9201People.setZw(people.getZw().trim());
+                        api9201People.setXzrwfg(people.getXzrwfg().trim());
+                        api9201People.setStzk(people.getStzk().trim());
+                        if (StringUtils.isEmpty(people.getZyzg())) {
+                            people.setZyzg("鍩硅鍚堟牸");
+                        }
+                        if (StringUtils.isEmpty(people.getSfwb())) {
+                            people.setSfwb("鍚�");
+                        }
+                        api9201People.setZyzg(people.getZyzg().trim());
+                        peopleList.add(api9201People);
+                    }
+                    api9201.setPeople(JSON.toJSONString(peopleList));
+
+                    api9201List = api9201Rep.getDataByBizId(api9201.getBizId());
+                    if (null == api9201List || api9201List.isEmpty()) {
+                        api9201.setCzbz(Constant.CZBZ_I);
+                    } else {
+                        api9201.setCzbz(api9201List.get(0).getCzbz());
+                    }
+                }
+                api9201Rep.save(api9201);
+                log.info("9201---鍚屾鏁版嵁锛歿}", api9201.toString());
+            }
+
+        } catch (Exception e) {
+            log.error("---鐔忚捀澶囨鍚屾鎵ц澶辫触----{}", e);
+            apiLog.setResult("鐔忚捀澶囨淇℃伅鍚屾鎵ц澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+}

--
Gitblit v1.9.3