From a1f0690d10288f9aa82b7fe96a9c4e33d9ad7661 Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期六, 23 九月 2023 18:45:47 +0800 Subject: [PATCH] 优化出入库检验数据的时间顺序 --- src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1203.java | 83 ++++++++++++++++++++++++++++------------- 1 files changed, 57 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1203.java b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1203.java index 2277270..37544c8 100644 --- a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1203.java +++ b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1203.java @@ -1,13 +1,12 @@ package com.fzzy.async.fzzy35.impl; import com.fzzy.api.Constant; -import com.fzzy.api.entity.Api1105; -import com.fzzy.api.entity.Api1203; -import com.fzzy.api.entity.ApiLog; -import com.fzzy.api.entity.GbCheckItem; +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.utils.DateUtil; +import com.fzzy.api.view.repository.Api1202Rep; import com.fzzy.api.view.repository.Api1203Rep; import com.fzzy.api.view.repository.ApiLogRep; import com.fzzy.api.view.repository.GbCheckItemRep; @@ -16,9 +15,13 @@ import com.fzzy.async.fzzy35.repository.Fzzy35Sync1202Rep; import com.fzzy.async.fzzy35.repository.Fzzy35Sync1203Rep; 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.text.SimpleDateFormat; import java.util.Date; import java.util.List; @@ -38,9 +41,10 @@ private Fzzy35Sync1202Rep fzzySync1202Rep; @Autowired private Fzzy35Sync1203Rep fzzySync1203Rep; - @Autowired private ApiTriggerService apiTriggerService; + @Autowired + private Api1202Rep api1202Rep; @Autowired private Api1203Rep api1203Rep; @Autowired @@ -86,30 +90,41 @@ String jyz; String zkj; String zkl; + List<Api1203> api1203List; + List<Api1202> api1102List; for (Fz35InoutRecord sysData : list) { + //鏌ヨ绮鍏ュ簱淇℃伅锛岃嫢涓虹┖鍒欎笉杩涜鍚屾涓婁紶 + api1102List = api1202Rep.getDataByBizId(sysData.getId()); + if(null == api1102List || api1102List.isEmpty()){ + continue; + } //鑾峰彇鍏ュ簱璐ㄦ淇℃伅 - fz35CheckItems = fzzySync1203Rep.listInoutCheckItem(sysData.getCheckId()); + fz35CheckItems = fzzySync1203Rep.listInoutCheckItem(sysData.getCheckId(), deptId.substring(0, 4)); if (null == fz35CheckItems || fz35CheckItems.isEmpty()) { log.info("-------------娌℃湁鑾峰彇鍒板綋鍓嶅叆搴撹川妫�淇℃伅--------------"); continue; } - //鑾峰彇璐т綅淇℃伅 - api1105 = commonService.getApi1105Cache(sysData.getDepotId()); - if (null == api1105) { - continue; + apiData = new Api1203(); + + apiData.setRkjydh(api1102List.get(0).getRkywdh()); + //璐т綅浠g爜 + apiData.setHwdm(api1102List.get(0).getHwdm()); + apiData.setRkywdh(api1102List.get(0).getRkywdh()); + if(null == sysData.getFullWeightTime()){ + sysData.setFullWeightTime(DateUtils.addMinutes(sysData.getRegisterTime(), 5)); } - apiData = new Api1203(); - apiData.setId(sysData.getId()); + //鍒ゆ柇涓氬姟鏃堕棿涓庡崟鎹彿鏄惁鍖归厤锛岃嫢涓嶅尮閰嶏紝鍒欐洿鏀逛笟鍔℃椂闂翠负鍗曟嵁鍙锋墍鍦ㄧ殑鏃堕棿 + SimpleDateFormat dateFormat = new SimpleDateFormat("yyMMdd"); + Date time = dateFormat.parse(apiData.getRkjydh().substring(2, 8)); + int numDay = DateUtil.difDay(DateUtil.getCurZero(sysData.getRegisterTime()), DateUtil.getCurZero(time)); + if(numDay != 0){ + sysData.setRegisterTime(DateUtils.addDays(sysData.getRegisterTime(), numDay)); + } - apiData.setRkjydh(Constant.INOUT_TYPE_14 + sysData.getId().substring(4)); - - //璐т綅浠g爜 - apiData.setHwdm(api1105.getHwdm()); - apiData.setRkywdh(apiData.getRkjydh()); - apiData.setQysj(sysData.getFullWeightTime()); + apiData.setQysj(sysData.getRegisterTime()); apiData.setQyrxm(sysData.getCheckUser()); //鎵︽牱鏂瑰紡 2-鏅鸿兘闅忔満 apiData.setQyfs("2"); @@ -125,31 +140,40 @@ if (gbCheckList == null || gbCheckList.isEmpty()) { continue; } + if (StringUtils.isEmpty(fz35CheckItem.getValue())) { + continue; + } jyxm += gbCheckList.get(0).getCode() + ","; jyz += fz35CheckItem.getValue() + ","; - zkj += "0,"; - zkl += "0,"; + zkj += ",0.0"; + zkl += ",0.0"; } apiData.setJyxm(jyxm); apiData.setJyz(jyz); - apiData.setZkj(zkj); - apiData.setZkl(zkl); - apiData.setJyjg("0"); + apiData.setZkj(zkj.substring(1)); + apiData.setZkl(zkl.substring(1)); + if("UNPASS".equals(sysData.getCheckStatus())){ + apiData.setJyjg("0"); + } + if("PASS".equals(sysData.getCheckStatus())){ + apiData.setJyjg("1"); + } apiData.setJyrxm(sysData.getCheckUser()); - apiData.setJysj(sysData.getFullWeightTime()); - //apiData.setJyjg(""); + apiData.setJysj(DateUtils.addMinutes(sysData.getRegisterTime(), 90)); //绮鍝佺 String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety()); apiData.setLspzdm(mappingCode); + + //淇濈鍛樺鏍� + apiData.setBgyfh(apiData.getJyjg()); //绮绛夌骇 mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSDJ, sysData.getFoodLevel()); apiData.setLsdd(mappingCode); //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� - apiData.setCzbz(Constant.CZBZ_I); apiData.setZhgxsj(sysData.getCompleteTime()); //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� @@ -157,6 +181,13 @@ apiData.setKqdm(kqdm); apiData.setSyncTime(new Date()); + api1203List = api1203Rep.getDataById(apiData.getRkjydh()); + if(null == api1203List || api1203List.isEmpty()){ + apiData.setCzbz(Constant.CZBZ_I); + }else { + apiData.setCzbz(api1203List.get(0).getCzbz()); + } + //淇濆瓨鏁版嵁 api1203Rep.save(apiData); log.info("1203---鍚屾鏁版嵁锛歿}", apiData.toString()); -- Gitblit v1.9.3