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/Fzzy61Sync1303.java | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 152 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1303.java b/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1303.java new file mode 100644 index 0000000..c9664ac --- /dev/null +++ b/src/main/java/com/fzzy/async/fzzy61/impl/Fzzy61Sync1303.java @@ -0,0 +1,152 @@ +package com.fzzy.async.fzzy61.impl; + +import com.fzzy.api.Constant; +import com.fzzy.api.entity.Api1105; +import com.fzzy.api.entity.Api1303; +import com.fzzy.api.entity.ApiLog; +import com.fzzy.api.service.ApiCommonService; +import com.fzzy.api.utils.ContextUtil; +import com.fzzy.api.view.repository.Api1303Rep; +import com.fzzy.api.view.repository.ApiLogRep; +import com.fzzy.async.fzzy61.entity.Fz61Pest; +import com.fzzy.async.fzzy61.repository.Fzzy61Sync1303Rep; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.Date; +import java.util.List; + + +/** + * 铏妫�娴嬫暟鎹悓姝� + * + * @author chen + * @date 2022-09-08 09:51 + */ +@Slf4j +@Component +public class Fzzy61Sync1303 { + + + @Autowired + private Fzzy61Sync1303Rep fzzy61Sync1303Rep; + @Autowired + private ApiCommonService commonService; + @Autowired + private Api1303Rep api1303Rep; + @Autowired + private ApiLogRep apiLogRep; + + /** + * 鍚屾骞跺皝瑁呬繚瀛樿櫕瀹虫娴嬫暟鎹� + * + * @param deptId 绯荤粺瀵瑰簲搴撳尯缂栫爜 + * @param start 璧峰鏃堕棿 + * @param end 鎴鏃堕棿 + */ + public void syncData(String kqdm, String deptId, Date start, Date end) { + + log.info("-------------1303铏妫�娴嬫暟鎹帴鍙f暟鎹紑濮嬪悓姝�------------------"); + + //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭� + ApiLog apiLog = new ApiLog(); + apiLog.setType(ApiLog.TYPE_SYNC); + apiLog.setKqdm(deptId); + apiLog.setUploadTime(new Date()); + apiLog.setInteId(Constant.API_CODE_1303); + apiLog.setStatus(99); + apiLog.setId(ContextUtil.getUUID()); + try { + + List<Fz61Pest> list = fzzy61Sync1303Rep.findPestByReceiveDate(start, end); + if (null == list || list.isEmpty()) { + return; + } + + Date syncTime = new Date(); + Api1303 api1303; + Api1105 api1105; + List<Api1303> api1303List; + for (Fz61Pest fz61Pest : list) { + //鑾峰彇璐т綅淇℃伅 + api1105 = commonService.getApi1105Cache(fz61Pest.getDepotId()); + if (null == api1105) { + continue; + } + + api1303 = new Api1303(); + api1303.setHcjcdh(api1105.getHwdm() + fz61Pest.getBatchId()); + api1303.setJcsj(fz61Pest.getReceiveDate()); + api1303.setHwdm(api1105.getHwdm()); + + //妫�鏌ュ铏柟娉曪紝0-杩滅▼銆�1-浜哄伐銆�2-鍏朵粬 + api1303.setJchcff("0"); + //鍙戠敓閮ㄤ綅锛屽潗鏍囧~鍐欙細x,y,z + api1303.setFsbw("绮潰");//闈炲繀濉瓧娈� + + //瀹宠櫕绉嶇被銆傚涓敤#闅斿紑#TODO >> 寰呬紭鍖栬皟鏁� + api1303.setHczl("21212"); + + //铏彛瀵嗗害鍊奸泦鍚� + String ckmdzjh = this.geeCkmdzjh(fz61Pest.getPestMax(), fz61Pest.getPoints()); + api1303.setCkmdzjh(ckmdzjh); + + //铏伯绛夌骇鍒ゅ畾锛�531-鍩烘湰鏃犺櫕绮��532-涓�鑸櫕绮��533涓ラ噸铏伯銆�534鍗卞铏伯 + api1303.setCldjpd("531"); + if (fz61Pest.getPestMax() > 5) { + api1303.setCldjpd("532"); + } + if (fz61Pest.getPestMax() > 30) { + api1303.setCldjpd("533"); + } + + api1303.setZhgxsj(new Date()); + + api1303.setBizId(fz61Pest.getBatchId()); + api1303.setKqdm(api1105.getKqdm()); + api1303.setSyncTime(new Date()); + api1303List = api1303Rep.getDataByHcjcdh(api1303.getHcjcdh()); + if (null == api1303List || api1303List.isEmpty()) { + api1303.setCzbz(Constant.CZBZ_I); + } else { + api1303.setCzbz(api1303List.get(0).getCzbz()); + } + api1303Rep.save(api1303); + } + + } catch (Exception e) { + log.error("---1303铏妫�娴嬫暟鎹悓姝ュけ璐�----{}", e.toString()); + apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage()); + apiLogRep.save(apiLog); + } + + } + + /** + * 澶�/kg锛屾寚绮瀹宠櫕鍊奸泦鍚堬紝涓� + * 瀹宠櫕绉嶇被椤哄簭瀵瑰簲锛岀敤鈥渱鈥濆垎 + * 闅旓紝澶氫釜鍙栨牱鐐圭敤鑻辨枃鍗婅鈥滐紝鈥� + * 鍒嗛殧锛屾寜鐓у彇鏍风偣绀烘剰鍥炬爣璇嗛『 + * 搴忔帓鍒椼�� + * + * @param pestMax + * @param points + * @return + */ + private String geeCkmdzjh(int pestMax, String points) { + + if (StringUtils.isEmpty(points)) return "0"; + + String[] attr = points.split(";"); + + String result = ""; + for (String str : attr) { + result += str.split(",")[1] + ","; + } + return result.substring(0, result.length() - 1); + } + + +} -- Gitblit v1.9.3