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/Fzzy35Sync1202.java | 70 +++++++++++++++++++++++------------ 1 files changed, 46 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java index d369ba9..198a7ea 100644 --- a/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java +++ b/src/main/java/com/fzzy/async/fzzy35/impl/Fzzy35Sync1202.java @@ -7,6 +7,7 @@ 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.ApiLogRep; import com.fzzy.async.fzzy35.entity.Fz35InoutNoticeIn; @@ -16,12 +17,11 @@ 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.text.SimpleDateFormat; +import java.util.*; /** * 绮鍏ュ簱淇℃伅 @@ -78,8 +78,15 @@ Api1202 apiData; Api1105 api1105; List<Fz35InoutNoticeIn> listInoutNotice; - Calendar c = Calendar.getInstance(); + List<Api1202> api1202List; for (Fz35InoutRecord sysData : list) { + if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){ + sysData.setRecordWeight(sysData.getSettleWeight()); + } + //鍒ゆ柇鍑�閲嶆槸鍚﹀ぇ浜�0锛岀瓑浜�0琛ㄧず涓嶅悎鏍硷紝涓嶈繘琛屽悓姝ヤ笂浼� + if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){ + continue; + } //鑾峰彇璐т綅淇℃伅 api1105 = commonService.getApi1105Cache(sysData.getDepotId()); if (null == api1105) { @@ -87,9 +94,17 @@ } apiData = new Api1202(); - apiData.setId(sysData.getId()); - apiData.setRkywdh(Constant.INOUT_TYPE_14 + sysData.getId().substring(4)); + + //鍒ゆ柇涓氬姟鏃堕棿涓庡崟鎹彿鏄惁鍖归厤锛岃嫢涓嶅尮閰嶏紝鍒欐洿鏀逛笟鍔℃椂闂翠负鍗曟嵁鍙锋墍鍦ㄧ殑鏃堕棿 + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd"); + Date time = dateFormat.parse(sysData.getId().substring(2, 10)); + int numDay = DateUtil.difDay(DateUtil.getCurZero(sysData.getCompleteTime()), DateUtil.getCurZero(time)); + if(numDay != 0){ + sysData.setFullWeightTime(DateUtils.addDays(sysData.getFullWeightTime(), numDay)); + sysData.setEmptyWeightTime(DateUtils.addDays(sysData.getEmptyWeightTime(), numDay)); + sysData.setCompleteTime(DateUtils.addDays(sysData.getCompleteTime(), numDay)); + } //璐т綅浠g爜 apiData.setHwdm(api1105.getHwdm()); @@ -100,7 +115,7 @@ //榛樿涓�涓殢渚垮�� apiData.setLxdh(StringUtils.isEmpty(sysData.getUserContact()) ? "13012345678" : sysData.getUserContact()); - apiData.setSfzh(null == sysData.getUserId() ? "410183200010100000" : sysData.getUserId()); + apiData.setSfzh(null == sysData.getUserId() ? "410183200010100000" : sysData.getUserId().trim()); //鑾峰彇鍚堝悓鍙� listInoutNotice = fzzy35SyncNoticeInRep.listInoutNoticeInById(sysData.getNoticeId()); @@ -112,14 +127,12 @@ apiData.setXxdz(sysData.getUserAddress()); - //杩愯緭宸ュ叿锛岄粯璁ゆ苯杞︼紝TODO>> 寰呰皟鏁翠负鏍规嵁鏁版嵁搴撹幏鍙� - apiData.setYsgj("1"); + //杩愯緭宸ュ叿锛岃嫢涓虹┖锛屽垯榛樿缁�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()); @@ -140,6 +153,9 @@ //姣涢噸淇℃伅 apiData.setMz(sysData.getFullWeight()); + if(!sysData.getFullWeightTime().after(sysData.getRegisterTime())){ + sysData.setFullWeightTime(DateUtils.addMinutes(sysData.getRegisterTime(), 25)); + } apiData.setMzjlsj(sysData.getFullWeightTime()); apiData.setMzjby(sysData.getFullWeightUser()); apiData.setMzjly(sysData.getFullWeightUser()); @@ -148,6 +164,9 @@ //鐨噸淇℃伅 apiData.setPz(sysData.getEmptyWeight()); + if(!sysData.getEmptyWeightTime().after(sysData.getFullWeightTime())){ + sysData.setEmptyWeightTime(DateUtils.addMinutes(sysData.getFullWeightTime(), 60)); + } apiData.setPzjlsj(sysData.getEmptyWeightTime()); apiData.setPzjby(sysData.getEmptyWeightUser()); apiData.setPzjly(sysData.getEmptyWeightUser()); @@ -164,25 +183,28 @@ //鍊间粨 鐜板満鎵i噸 apiData.setXckl( 0 - sysData.getDeHandle()); + apiData.setJz(sysData.getRecordWeight()); + if(!sysData.getCompleteTime().after(sysData.getEmptyWeightTime())){ + sysData.setCompleteTime(DateUtils.addMinutes(sysData.getEmptyWeightTime(), 10)); + } + apiData.setCmsj(sysData.getCompleteTime()); - apiData.setJz(sysData.getSettleWeight()); - c.setTime(sysData.getCompleteTime()); - c.add(Calendar.MINUTE,3); - apiData.setCmsj(c.getTime()); - - - //鍏ュ簱缁撶畻鍗曞彿 - apiData.setRkjsdh(kqdm + sysData.getId().substring(2)); + //鍏ュ簱缁撶畻鍗曞彿,榛樿缁熶竴缁撶畻锛屼笉璁剧疆缁撶畻鍗曞彿 + //apiData.setRkjsdh(kqdm + sysData.getId().substring(2)); //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� - apiData.setCzbz(Constant.CZBZ_I); - apiData.setZhgxsj(c.getTime()); + apiData.setZhgxsj(sysData.getCompleteTime()); //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� apiData.setBizId(sysData.getId()); apiData.setKqdm(kqdm); apiData.setSyncTime(new Date()); - + api1202List = api1202Rep.getDataById(apiData.getRkywdh()); + if(null == api1202List || api1202List.isEmpty()){ + apiData.setCzbz(Constant.CZBZ_I); + }else { + apiData.setCzbz(api1202List.get(0).getCzbz()); + } //淇濆瓨鏁版嵁 api1202Rep.save(apiData); log.info("1202---鍚屾鏁版嵁锛歿}", apiData.toString()); -- Gitblit v1.9.3