From 221685c6ce46a87f9820eb074a61cedbbf25351c Mon Sep 17 00:00:00 2001 From: YYC <1833023622@qq.com> Date: 星期五, 14 三月 2025 08:57:09 +0800 Subject: [PATCH] 合同与入库代码同步修改 --- src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java | 390 +++++++++++++++++++++++++++++++------------------------ 1 files changed, 221 insertions(+), 169 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 1fc0158..963afa1 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1205.java @@ -18,6 +18,7 @@ import org.apache.commons.lang.time.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; + import java.util.*; /** @@ -44,6 +45,10 @@ @Autowired private Api1205Rep api1205Rep; @Autowired + private Api1206Rep api1206Rep; + @Autowired + private Api1310Rep api1310Rep; + @Autowired private Api1404Rep api1404Rep; @Autowired private ApiCommonService commonService; @@ -57,7 +62,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鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------"); @@ -70,185 +75,232 @@ apiLog.setStatus(99); apiLog.setId(ContextUtil.getUUID()); try { - //鑾峰彇绮鍑哄簱淇℃伅锛屾牴鎹祦绋嬪畬鎴愭椂闂磋幏鍙� - List<Fz40InoutRecord> list = fzzySync1202Rep.listInoutRecord(deptId, INOUT_TYPE_OUT, start, end); + //鑾峰彇绮鍑哄簱淇℃伅锛屾牴鎹祦绋嬪畬鎴愭椂闂磋幏鍙� + List<Fz40InoutRecord> list = fzzySync1202Rep.listInoutRecord(deptId, INOUT_TYPE_OUT, start, end); - if (null == list || list.isEmpty()) { - log.info("-------------娌℃湁鑾峰彇鍒扮伯椋熷嚭搴撲俊鎭�------------------"); - return; - } - - Api1205 apiData; - Api1105 api1105; - List<Fz40InoutNoticeOut> listInoutNotice; - List<Api1205> api1205List; - 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()); - } - //鍒ゆ柇鍑�閲嶆槸鍚﹀ぇ浜�0锛岀瓑浜�0琛ㄧず涓嶅悎鏍硷紝涓嶈繘琛屽悓姝ヤ笂浼� - if(null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0){ - continue; - } - //鑾峰彇璐т綅淇℃伅 - api1105 = commonService.getApi1105Cache(sysData.getDepotId()); - if(null == api1105){ - continue; - } - apiData = new Api1205(); - apiData.setCkywdh(Constant.INOUT_TYPE_15 + sysData.getId().substring(4)); - - //璐т綅浠g爜 - apiData.setHwdm(api1105.getHwdm()); - apiData.setYwlx(Constant.INOUT_TYPE_1); - apiData.setYwrq(DateUtils.parseDate(sysData.getId().substring(2, 10), new String[] { "yyyyMMdd" })); - apiData.setCyr(sysData.getUserName()); - - //榛樿涓�涓殢渚垮�� - apiData.setLxdh(StringUtils.isEmpty(sysData.getUserContact()) ? "13012345678" : sysData.getUserContact().trim()); - - if(StringUtils.isEmpty(sysData.getUserId()) || sysData.getUserId().length() != 18){ - sysData.setUserId("410183199003187055"); + if (null == list || list.isEmpty()) { + log.info("-------------娌℃湁鑾峰彇鍒扮伯椋熷嚭搴撲俊鎭�------------------"); + return; } - //閫氱煡鍗曞彿 - apiData.setCktzdh(sysData.getNoticeId()); - //鑾峰彇鍚堝悓鍙� - listInoutNotice = fzzySyncNoticeOutRep.listInoutNoticeOutById(sysData.getNoticeId()); - 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.getDataByBizIdAndKqdm(listInoutNotice.get(0).getPlanId(), kqdm); - 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()); - apiData.setDjsj(sysData.getRegisterTime()); - - //绮鍝佺 - String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety().substring(0, 3)); - apiData.setLspzdm(mappingCode); - - //绮绛夌骇 - mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSDJ, sysData.getFoodLevel()); - apiData.setLsdjdm(mappingCode); - - //绮鎬ц川 - mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, sysData.getFoodType()); - apiData.setLsxzdm(mappingCode); - - apiData.setShnd(StringUtils.isEmpty(sysData.getFoodYear())? DateFormatUtils.format(new Date(), "yyyy") :sysData.getFoodYear()); - - //浜у湴浠g爜 - 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()); - if(!sysData.getCompleteTime().after(sysData.getFullWeightTime())){ - sysData.setCompleteTime(DateUtils.addMinutes(sysData.getFullWeightTime(), 10)); - } - apiData.setCmsj(sysData.getCompleteTime()); - if(StringUtils.isNotEmpty(sysData.getSettleId())){ - apiData.setCkjsdh(kqdm + sysData.getSettleId()); - } - - //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� - apiData.setZhgxsj(sysData.getUpdateTime()); - - //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� - apiData.setBizId(sysData.getId()); - apiData.setKqdm(kqdm); - apiData.setSyncTime(new Date()); - log.info("1201---鍚屾鏁版嵁锛歿}",apiData.toString()); - - //鍒ゆ柇鏄惁涓鸿埞杩� - if(StringUtils.isNotEmpty(sysData.getTransType()) && sysData.getTransType().equals("3")){ - listInoutRecordItem = fzzy40SyncInoutRecordItemRep.findDataByRecordId(sysData.getId()); - if(null == listInoutRecordItem || listInoutRecordItem.isEmpty()){ - api1205Rep.save(apiData); + Api1205 apiData; + Api1105 api1105; + List<Fz40InoutNoticeOut> listInoutNotice; + List<Api1205> api1205List; + List<Api1206> api1206List; + List<Fz40InoutRecordItem> listInoutRecordItem; + for (Fz40InoutRecord sysData : list) { + if (sysData.getRecordStatus().equals("DEL") || sysData.getRecordStatus().equals("ERROR")) { continue; } - - int idNum = Integer.valueOf(sysData.getId().substring(12))*100 + 10001; - for (Fz40InoutRecordItem fz40InoutRecordItem : listInoutRecordItem) { - if ("DEL".equals(fz40InoutRecordItem.getRecordStatus())) { - continue; - } - 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()); - apiData.setMzjlsj(fz40InoutRecordItem.getFullWeightTime()); - apiData.setPzjlsj(fz40InoutRecordItem.getEmptyWeightTime()); - - 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 ++; + if (null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0) { + sysData.setRecordWeight(sysData.getSettleWeight()); } - }else { + //鍒ゆ柇鍑�閲嶆槸鍚﹀ぇ浜�0锛岀瓑浜�0琛ㄧず涓嶅悎鏍硷紝涓嶈繘琛屽悓姝ヤ笂浼� + if (null == sysData.getRecordWeight() || sysData.getRecordWeight() == 0) { + continue; + } + //鑾峰彇璐т綅淇℃伅 + api1105 = commonService.getApi1105Cache(sysData.getDepotId()); + if (null == api1105) { + continue; + } + apiData = new Api1205(); + apiData.setCkywdh(Constant.INOUT_TYPE_15 + sysData.getId().substring(4)); + + //璐т綅浠g爜 + apiData.setHwdm(api1105.getHwdm()); + apiData.setYwlx(Constant.INOUT_TYPE_1); + apiData.setYwrq(DateUtils.parseDate(sysData.getId().substring(2, 10), new String[]{"yyyyMMdd"})); + + //榛樿涓�涓殢渚垮�� + apiData.setLxdh(StringUtils.isEmpty(sysData.getUserContact()) ? "13012345678" : sysData.getUserContact().trim()); + + if (StringUtils.isEmpty(sysData.getUserId()) || sysData.getUserId().length() != 18) { + sysData.setUserId("410183199003187055"); + } + apiData.setSfzh(sysData.getUserId()); + + //閫氱煡鍗曞彿 + apiData.setCktzdh(sysData.getNoticeId()); + //鑾峰彇鍚堝悓鍙� + listInoutNotice = fzzySyncNoticeOutRep.listInoutNoticeOutById(sysData.getNoticeId()); + 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.getDataByBizIdAndKqdm(listInoutNotice.get(0).getPlanId(), kqdm); + if (null != api1404List && api1404List.size() > 0) { + apiData.setJhmxh(api1404List.get(0).getJhmxdh()); + if (StringUtils.isEmpty(sysData.getFoodYear())) { + sysData.setFoodYear(api1404List.get(0).getShnd()); + } + } + } + } + + //杩愯緭宸ュ叿锛岃嫢涓虹┖锛屽垯榛樿缁�1-姹借溅 + apiData.setYsgj(StringUtils.isEmpty(sysData.getTransType()) ? "1" : sysData.getTransType()); + + //杞﹁埞鍙� + apiData.setCch(sysData.getPlateNum()); + apiData.setDjsj(sysData.getRegisterTime()); + + //绮鍝佺 + String mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSPZ, sysData.getFoodVariety().substring(0, 3)); + apiData.setLspzdm(mappingCode); + + //绮绛夌骇 + mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSDJ, sysData.getFoodLevel()); + apiData.setLsdjdm(mappingCode); + + //璐ㄦ鎶ュ憡鍗曞彿 + List<Api1310> dataByHwdm = api1310Rep.getDataByHwdm(apiData.getHwdm(), "02"); + if (null != dataByHwdm && dataByHwdm.size() > 0) { + apiData.setZjbgdh(dataByHwdm.get(0).getZjbgdh()); + } + + //鐢熸垚鏂瑰紡 + apiData.setScfs(1); + if (StringUtils.isNotEmpty(sysData.getRecordStatus()) && sysData.getRecordStatus().equals("ADD")) { + apiData.setScfs(2); + apiData.setSdblyy("搴撳尯鍋滅數瀵艰嚧鏃犳硶鎸夋祦绋嬭繘琛屽嚭搴�"); + } + + //绮鎬ц川 + mappingCode = apiTriggerService.getMappingCode(Constant.TRIGGER_P_LSXZ, sysData.getFoodType()); + apiData.setLsxzdm(mappingCode); + + apiData.setShnd(StringUtils.isEmpty(sysData.getFoodYear()) ? DateFormatUtils.format(sysData.getRegisterTime(), "yyyy") : sysData.getFoodYear()); + + //浜у湴浠g爜 + 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(StringUtils.isEmpty(sysData.getEmptyWeightUser()) ? "鐩戠鍛�" : sysData.getEmptyWeightUser()); + apiData.setPzjly(StringUtils.isEmpty(sysData.getEmptyWeightUser()) ? "璁¢噺鍛�" : sysData.getEmptyWeightUser()); + + //姣涢噸淇℃伅 + apiData.setMz(sysData.getFullWeight()); + apiData.setKzl(0 - sysData.getDeCheck() + sysData.getAddCheck() - sysData.getDeHandle() - sysData.getDePackage() - sysData.getDeOther()); + 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(StringUtils.isEmpty(sysData.getFullWeightUser()) ? "鐩戠鍛�" : sysData.getFullWeightUser()); + apiData.setMzjly(StringUtils.isEmpty(sysData.getFullWeightUser()) ? "璁¢噺鍛�" : sysData.getFullWeightUser()); + + //鍑�閲� + apiData.setJz(sysData.getRecordWeight()); + if (!sysData.getCompleteTime().after(sysData.getFullWeightTime())) { + sysData.setCompleteTime(DateUtils.addMinutes(sysData.getFullWeightTime(), 10)); + } + apiData.setCmsj(sysData.getCompleteTime()); + //缁撶畻鍗曞彿 + if (StringUtils.isNotEmpty(sysData.getSettleId())) { + apiData.setCkjsdh(kqdm + sysData.getSettleId()); + } + if (StringUtils.isNotEmpty(apiData.getHth())) { + api1206List = api1206Rep.getDataByHthAndHwdm(apiData.getHth(), apiData.getHwdm()); + if (null == api1206List || api1206List.isEmpty()) { + api1206List = api1206Rep.getDataByHth(apiData.getHth()); + if (null != api1206List && api1206List.size() > 0) { + apiData.setCkjsdh(api1206List.get(0).getCkjsdh()); + } + } else { + apiData.setCkjsdh(api1206List.get(0).getCkjsdh()); + } + } + + apiData.setCchlx("01"); + apiData.setXldd("搴撳唴"); + apiData.setBz(StringUtils.isEmpty(sysData.getRemarks()) ? "鏆傛棤澶囨敞淇℃伅" : sysData.getRemarks()); + apiData.setBzbdbz(25); + apiData.setBzbjs(0); + apiData.setBzw(StringUtils.isEmpty(sysData.getBzw()) ? "9" : sysData.getBzw()); + apiData.setCmqrmgryxm(StringUtils.isEmpty(sysData.getRegisterUser()) ? "闂ㄥ矖浜�" : sysData.getRegisterUser()); + apiData.setDjmgryxm(StringUtils.isEmpty(sysData.getRegisterUser()) ? "鐧昏浜�" : sysData.getRegisterUser()); + apiData.setZcbgyxm(StringUtils.isEmpty(sysData.getHandleUser()) ? "鍊间粨鍛�" : sysData.getHandleUser()); + apiData.setZxzydw("澶栬仒鍗曚綅"); + apiData.setKzlyy("鎵o紙澧烇級閲忓師鍥�"); + + //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� + apiData.setZhgxsj(sysData.getUpdateTime()); + + //鎵胯繍浜� 韬唤璇佸彿 鐢佃瘽 + apiData.setSfzh(sysData.getUserId()); + apiData.setCyr(sysData.getUserName().trim()); + apiData.setLxdh(sysData.getUserContact()); + + + //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� + apiData.setBizId(sysData.getId()); + apiData.setKqdm(kqdm); + apiData.setSyncTime(new Date()); + log.info("1205---鍚屾鏁版嵁锛歿}", apiData.toString()); api1205List = api1205Rep.getDataById(apiData.getCkywdh()); - if(null == api1205List || api1205List.isEmpty()){ + if (null == api1205List || api1205List.isEmpty()) { apiData.setCzbz(Constant.CZBZ_I); - }else { + } else { apiData.setCzbz(api1205List.get(0).getCzbz()); } - //淇濆瓨鏁版嵁 - api1205Rep.save(apiData); + //鍒ゆ柇鏄惁涓鸿埞杩� + 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 ("DEL".equals(fz40InoutRecordItem.getRecordStatus())) { + continue; + } + 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()); + apiData.setMzjlsj(fz40InoutRecordItem.getFullWeightTime()); + apiData.setPzjlsj(fz40InoutRecordItem.getEmptyWeightTime()); + apiData.setKzl(0 - fz40InoutRecordItem.getDe()); + 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 { + //淇濆瓨鏁版嵁 + api1205Rep.save(apiData); + } } - } } catch (Exception e) { log.error("---鍚屾澶辫触----{}", e); apiLog.setResult("鍚屾澶辫触锛�" + e.getMessage()); -- Gitblit v1.9.3