From 111f952ebe91c261fa418be96226e1fa01865e3b Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期六, 11 十一月 2023 20:37:52 +0800 Subject: [PATCH] 优化上海接口信息 --- src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java | 128 +++++++++++++++++++++++++++++++----------- 1 files changed, 94 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java index 29cd89c..f2c482d 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java @@ -1,27 +1,24 @@ package com.fzzy.async.fzzy40.impl; import com.fzzy.api.Constant; -import com.fzzy.api.entity.Api1105; -import com.fzzy.api.entity.Api1205; -import com.fzzy.api.entity.ApiLog; +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.Api1205Rep; -import com.fzzy.api.view.repository.ApiLogRep; +import com.fzzy.api.view.repository.*; import com.fzzy.async.fzzy40.entity.Fz40InoutNoticeOut; import com.fzzy.async.fzzy40.entity.Fz40InoutRecord; +import com.fzzy.async.fzzy40.entity.Fz40InoutRecordItem; import com.fzzy.async.fzzy40.repository.Fzzy40Sync1202Rep; +import com.fzzy.async.fzzy40.repository.Fzzy40SyncInoutRecordItemRep; import com.fzzy.async.fzzy40.repository.Fzzy40SyncNoticeOutRep; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.time.DateFormatUtils; +import org.apache.commons.lang.time.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; - -import java.util.Calendar; -import java.util.Date; -import java.util.List; +import java.util.*; /** * 绮鍑哄簱淇℃伅 @@ -37,11 +34,17 @@ @Autowired private Fzzy40Sync1202Rep fzzySync1202Rep; @Autowired + private Fzzy40SyncInoutRecordItemRep fzzy40SyncInoutRecordItemRep; + @Autowired private Fzzy40SyncNoticeOutRep fzzySyncNoticeOutRep; @Autowired private ApiTriggerService apiTriggerService; @Autowired + private Api1201Rep api1201Rep; + @Autowired private Api1205Rep api1205Rep; + @Autowired + private Api1404Rep api1404Rep; @Autowired private ApiCommonService commonService; @Autowired @@ -54,7 +57,7 @@ * @param start * @param end */ - public void syncData(String kqdm, String deptId, Date start, Date end) { + public void syncData(String kqdm, String deptId, Date start, Date end) { log.info("-------------1205鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------"); @@ -79,8 +82,11 @@ Api1105 api1105; List<Fz40InoutNoticeOut> listInoutNotice; List<Api1205> api1205List; - Calendar c = Calendar.getInstance(); + List<Fz40InoutRecordItem> listInoutRecordItem; for (Fz40InoutRecord sysData : list) { + if(sysData.getRecordStatus().equals("DEL") || sysData.getRecordStatus().equals("ERROR")){ + continue; + } if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){ sysData.setRecordWeight(sysData.getSettleWeight()); } @@ -96,7 +102,6 @@ apiData = new Api1205(); apiData.setCkywdh(Constant.INOUT_TYPE_15 + sysData.getId().substring(4)); - //璐т綅浠g爜 apiData.setHwdm(api1105.getHwdm()); apiData.setYwlx(Constant.INOUT_TYPE_1); @@ -104,28 +109,35 @@ //閫氱煡鍗曞彿 apiData.setCktzdh(sysData.getNoticeId()); - apiData.setYwrq(sysData.getRegisterTime()); + apiData.setYwrq(DateUtils.parseDate(sysData.getId().substring(2, 10), new String[] { "yyyyMMdd" })); //鑾峰彇鍚堝悓鍙� listInoutNotice = fzzySyncNoticeOutRep.listInoutNoticeOutById(sysData.getNoticeId()); - if(null != listInoutNotice && listInoutNotice.size() >0){ - apiData.setHth(api1105.getHwdm().substring(0,18) + listInoutNotice.get(0).getContractId()); - }else { - apiData.setHth(api1105.getHwdm().substring(0,18) + apiData.getCkywdh()); + if (null != listInoutNotice && listInoutNotice.size() > 0) { + //鍚堝悓鍙� + if (StringUtils.isNotEmpty(listInoutNotice.get(0).getContractId())) { + List<Api1201> api1201List = api1201Rep.getDataByBizId(listInoutNotice.get(0).getContractId()); + if(null != api1201List && api1201List.size() > 0){ + apiData.setHth(api1201List.get(0).getHth()); + } + } + if (StringUtils.isNotEmpty(listInoutNotice.get(0).getPlanId())) { + List<Api1404> api1404List = api1404Rep.getDataByBizId(listInoutNotice.get(0).getPlanId()); + if(null != api1404List && api1404List.size() > 0){ + apiData.setJhmxh(api1404List.get(0).getJhmxdh()); + } + } } - //杩愯緭宸ュ叿锛岃嫢涓虹┖锛屽垯榛樿缁�1-姹借溅 apiData.setYsgj(StringUtils.isEmpty(sysData.getTransType()) ? "1":sysData.getTransType()); //杞﹁埞鍙� apiData.setCch(sysData.getPlateNum()); - c.setTime(sysData.getRegisterTime()); - c.add(Calendar.MINUTE,-3); - apiData.setDjsj(c.getTime()); + apiData.setDjsj(sysData.getRegisterTime()); //绮鍝佺 - String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety()); + String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety().substring(0, 3)); apiData.setLspzdm(mappingCode); //绮绛夌骇 @@ -139,29 +151,48 @@ apiData.setShnd(StringUtils.isEmpty(sysData.getFoodYear())? DateFormatUtils.format(new Date(), "yyyy") :sysData.getFoodYear()); //浜у湴浠g爜 - String cddm = commonService.getFoodLocationIdFromCache(sysData.getFoodLocation()); - apiData.setCddm(cddm); + mappingCode = commonService.getFoodLocationIdFromCache(sysData.getFoodLocation()); + if(StringUtils.isEmpty(mappingCode)){ + mappingCode = apiData.getHwdm().substring(2,8); + } + apiData.setCddm(mappingCode); //鐨噸淇℃伅 apiData.setPz(sysData.getEmptyWeight()); + if (null == sysData.getEmptyWeightTime()) { + sysData.setEmptyWeightTime(DateUtils.addMinutes(sysData.getRegisterTime(), 25)); + } + if(!sysData.getEmptyWeightTime().after(sysData.getRegisterTime())){ + sysData.setEmptyWeightTime(DateUtils.addMinutes(sysData.getRegisterTime(), 25)); + } apiData.setPzjlsj(sysData.getEmptyWeightTime()); apiData.setPzjby(sysData.getEmptyWeightUser()); apiData.setPzjly(sysData.getEmptyWeightUser()); //姣涢噸淇℃伅 apiData.setMz(sysData.getFullWeight()); + if (null == sysData.getFullWeightTime()) { + sysData.setFullWeightTime(DateUtils.addMinutes(sysData.getEmptyWeightTime(), 60)); + } + if(!sysData.getFullWeightTime().after(sysData.getEmptyWeightTime())){ + sysData.setFullWeightTime(DateUtils.addMinutes(sysData.getEmptyWeightTime(), 60)); + } apiData.setMzjlsj(sysData.getFullWeightTime()); apiData.setMzjby(sysData.getFullWeightUser()); apiData.setMzjly(sysData.getFullWeightUser()); //鍑�閲� apiData.setJz(sysData.getRecordWeight()); - c.setTime(sysData.getCompleteTime()); - c.add(Calendar.MINUTE,3); - apiData.setCmsj(c.getTime()); + if(!sysData.getCompleteTime().after(sysData.getFullWeightTime())){ + sysData.setCompleteTime(DateUtils.addMinutes(sysData.getFullWeightTime(), 10)); + } + apiData.setCmsj(sysData.getCompleteTime()); + if(StringUtils.isNotEmpty(sysData.getSettleId())){ + apiData.setCkjsdh(sysData.getSettleId()); + } //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� - apiData.setZhgxsj(c.getTime()); + apiData.setZhgxsj(sysData.getUpdateTime()); //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� apiData.setBizId(sysData.getId()); @@ -169,14 +200,43 @@ apiData.setSyncTime(new Date()); log.info("1201---鍚屾鏁版嵁锛歿}",apiData.toString()); - api1205List = api1205Rep.getDataById(apiData.getCkywdh()); - if(null == api1205List || api1205List.isEmpty()){ - apiData.setCzbz(Constant.CZBZ_I); + //鍒ゆ柇鏄惁涓鸿埞杩� + if(StringUtils.isNotEmpty(sysData.getTransType()) && sysData.getTransType().equals("3")){ + listInoutRecordItem = fzzy40SyncInoutRecordItemRep.findDataByRecordId(sysData.getId()); + if(null == listInoutRecordItem || listInoutRecordItem.isEmpty()){ + api1205Rep.save(apiData); + continue; + } + + int idNum = Integer.valueOf(sysData.getId().substring(12))*100 + 10001; + for (Fz40InoutRecordItem fz40InoutRecordItem : listInoutRecordItem) { + if(fz40InoutRecordItem.getSettleWeight() <= 0){ + continue; + } + apiData.setCkywdh(Constant.INOUT_TYPE_15 + sysData.getId().substring(4,10) + String.valueOf(idNum).substring(1)); + apiData.setMz(fz40InoutRecordItem.getFullWeight()); + apiData.setPz(fz40InoutRecordItem.getEmptyWeight()); + apiData.setJz(fz40InoutRecordItem.getSettleWeight()); + + api1205List = api1205Rep.getDataById(apiData.getCkywdh()); + if(null == api1205List || api1205List.isEmpty()){ + apiData.setCzbz(Constant.CZBZ_I); + }else { + apiData.setCzbz(api1205List.get(0).getCzbz()); + } + api1205Rep.save(apiData); + idNum ++; + } }else { - apiData.setCzbz(api1205List.get(0).getCzbz()); + api1205List = api1205Rep.getDataById(apiData.getCkywdh()); + if(null == api1205List || api1205List.isEmpty()){ + apiData.setCzbz(Constant.CZBZ_I); + }else { + apiData.setCzbz(api1205List.get(0).getCzbz()); + } + //淇濆瓨鏁版嵁 + api1205Rep.save(apiData); } - //淇濆瓨鏁版嵁 - api1205Rep.save(apiData); } } catch (Exception e) { log.error("---鍚屾澶辫触----{}", e); -- Gitblit v1.9.3