From b51b4406e1d0d0ab897a8a874e1f7e0f5e900236 Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期五, 20 十月 2023 17:50:01 +0800 Subject: [PATCH] 调整上海接口-船运分车上传时的照片同步 --- src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1109.java | 281 +++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 216 insertions(+), 65 deletions(-) diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1109.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1109.java index 1507f49..f326938 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1109.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1109.java @@ -2,10 +2,14 @@ import com.fzzy.api.Constant; import com.fzzy.api.entity.Api1109; +import com.fzzy.api.entity.Api1202; +import com.fzzy.api.entity.Api1205; import com.fzzy.api.entity.ApiLog; import com.fzzy.api.utils.ContextUtil; -import com.fzzy.api.utils.FileUtil; +import com.fzzy.api.utils.FileUtils; import com.fzzy.api.view.repository.Api1109Rep; +import com.fzzy.api.view.repository.Api1202Rep; +import com.fzzy.api.view.repository.Api1205Rep; import com.fzzy.api.view.repository.ApiLogRep; import com.fzzy.async.fzzy40.entity.Fz40FileInfo; import com.fzzy.async.fzzy40.entity.Fz40InoutRecord; @@ -17,6 +21,7 @@ import org.springframework.stereotype.Component; import java.util.*; +import java.util.stream.Collectors; /** * 鏂囦欢淇℃伅 @@ -44,6 +49,11 @@ private final static String BIZ_TAG_WEIGHT_EMPTY = "WEIGHT_EMPTY"; private final static String BIZ_TAG_REGISTER = "REGISTER"; private final static String BIZ_TAG_HANDLE = "HANDLE"; + /** + * 鍑哄叆搴撶被鍨� + */ + private final static String INOUT_TYPE_IN = "IN"; + private final static String INOUT_TYPE_OUT = "OUT"; @Autowired private Fzzy40Sync1109Rep fzzySync1109Rep; @@ -52,9 +62,13 @@ @Autowired private Api1109Rep api1109Rep; @Autowired + private Api1202Rep api1202Rep; + @Autowired + private Api1205Rep api1205Rep; + @Autowired private ApiLogRep apiLogRep; @Autowired - private FileUtil fileUtil; + private FileUtils fileUtil; /** * 鍚屾鏂囦欢鎺ュ彛 @@ -76,7 +90,8 @@ apiLog.setStatus(99); apiLog.setId(ContextUtil.getUUID()); try { - List<Fz40FileInfo> list = fzzySync1109Rep.listFileInfo(start, end); + //鑾峰彇鍑哄叆搴撴暟鎹� + List<Fz40InoutRecord> list = fzzySync1202Rep.listInAndOutRecord(deptId, INOUT_TYPE_IN, INOUT_TYPE_OUT, start, end); if (null == list || list.isEmpty()) { log.info("-------------娌℃湁鑾峰彇鍒版枃浠朵俊鎭�------------------"); @@ -88,74 +103,95 @@ String wjlx; String wjmc; List<Api1109> api1109List; - List<Fz40InoutRecord> listInout; - for (Fz40FileInfo sysData : list) { - if (StringUtils.isEmpty(sysData.getBizId())) { + List<Api1202> api1202List; + List<Api1205> api1205List; + String str = ""; //鍑哄叆搴撲笟鍔″崟鍙� + List<Fz40FileInfo> fileList; //鏂囦欢淇℃伅 + List<String> ids; + for (Fz40InoutRecord inoutData : list) { + if (inoutData.getRecordStatus().equals("DEL") || inoutData.getRecordStatus().equals("ERROR")) { continue; } - //鏍规嵁鍥剧墖id鏌ヨ瀵瑰簲鍑哄叆搴撲俊鎭� - listInout = fzzySync1202Rep.listInoutRecordById(sysData.getBizId()); - if (null == listInout || listInout.isEmpty()) { - continue; - } - //鑻ュ嚭鍏ュ簱淇℃伅涓哄垹闄ゆ垨鑰呴敊璇姸鎬侊紝鍒欎笉鍚屾 - if ("DEL".equals(listInout.get(0).getRecordStatus()) || "ERROR".equals(listInout.get(0).getRecordStatus())) { - continue; - } - //鑻ュ嚭鍏ュ簱淇℃伅涓叆搴撻噸閲忎负绌烘垨涓�0锛屽垯涓嶅悓姝� - if (null == listInout.get(0).getRecordWeight() || listInout.get(0).getRecordWeight() == 0) { - continue; - } - //鍙悓姝ョО閲� - if (BIZ_TAG_WEIGHT_FULL.equals(sysData.getBizTag()) || BIZ_TAG_WEIGHT_EMPTY.equals(sysData.getBizTag())) { - wjlx = ""; - wjmc = kqdm; - //鍏ュ簱鎶撴媿鍥� - if (sysData.getBizId().startsWith(IMG_START_R)) { - wjlx = IMG_TYPE_2; - wjmc += "_" + Constant.INOUT_TYPE_14 + sysData.getBizId().substring(4); - } - //鍑哄簱鎶撴媿鍥� - if (sysData.getBizId().startsWith(IMG_START_C)) { - wjlx = IMG_TYPE_3; - wjmc += "_" + Constant.INOUT_TYPE_15 + sysData.getBizId().substring(4); - } - //鑻ユ枃浠剁被鍨嬩负绌猴紝鍒欒烦杩� - if (StringUtils.isEmpty(wjlx)) { + ids = new ArrayList<>(); + wjlx = ""; + //鑾峰彇鍑哄叆搴撲笟鍔″崟鍙蜂俊鎭� + if (inoutData.getType().equals(INOUT_TYPE_IN)) { + wjlx = IMG_TYPE_2; + api1202List = api1202Rep.getDataByBizId(inoutData.getId()); + if (null == api1202List || api1202List.isEmpty()) { continue; } - - apiData = new Api1109(); - - //涓婚敭id - apiData.setId(UUID.randomUUID().toString()); - //鏂囦欢璺緞 - apiData.setWjdz(fileUtil.getInoutFilePath(sysData.getCreateTime()) + sysData.getFileName()); - - //鏂囦欢鍚嶇О - wjmc = getImgNameType(wjmc, sysData.getBizTag(), sysData.getBizId(), sysData.getFileName(), map); - apiData.setWjmc(wjmc); - //鏂囦欢绫诲瀷 - apiData.setWjlx(wjlx); - - //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� - apiData.setZhgxsj(new Date()); - - //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� - apiData.setBizId(sysData.getFileId()); - apiData.setKqdm(kqdm); - apiData.setSyncTime(new Date()); - - api1109List = api1109Rep.getDataByBizId(apiData.getBizId()); - if (null == api1109List || api1109List.isEmpty()) { - apiData.setCzbz(Constant.CZBZ_I); - } else { - apiData.setCzbz(api1109List.get(0).getCzbz()); + ids = api1202List.stream().map(Api1202::getRkywdh).collect(Collectors.toList()); + } + if (inoutData.getType().equals(INOUT_TYPE_OUT)) { + wjlx = IMG_TYPE_3; + api1205List = api1205Rep.getDataByBizId(inoutData.getId()); + if (null == api1205List || api1205List.isEmpty()) { + continue; } + ids = api1205List.stream().map(Api1205::getCkywdh).collect(Collectors.toList()); - //淇濆瓨鏁版嵁 - api1109Rep.save(apiData); - log.info("1109---鍚屾鏁版嵁锛歿}", apiData.toString()); + } + + //鑻ユ枃浠剁被鍨嬩负绌猴紝鍒欒烦杩� + if (StringUtils.isEmpty(wjlx)) { + continue; + } + + //鏍规嵁鍑哄叆搴撳崟鍙疯幏鍙栧搴旀枃浠朵俊鎭� + fileList = fzzySync1109Rep.listFileInfoByBizId(inoutData.getId()); + if (null == fileList || fileList.isEmpty()) { + continue; + } + int num = 1; + int idsNum = 0; + for (Fz40FileInfo sysData : fileList) { + //鍙悓姝ョО閲� + if (BIZ_TAG_WEIGHT_FULL.equals(sysData.getBizTag()) || BIZ_TAG_WEIGHT_EMPTY.equals(sysData.getBizTag())) { + if(num > 6){ + num = 1; + idsNum ++; + } + if(idsNum == ids.size()){ + break; + } + str = ids.get(idsNum); + + wjmc = kqdm + "_" + str; + + apiData = new Api1109(); + + //涓婚敭id + apiData.setId(UUID.randomUUID().toString()); + //鏂囦欢璺緞 + apiData.setWjdz(fileUtil.getInoutFilePath(sysData.getCreateTime()) + sysData.getFileName()); + + //鏂囦欢鍚嶇О + wjmc = getImgNameType(wjmc, sysData.getBizTag(), str, sysData.getFileName(), map); + apiData.setWjmc(wjmc); + //鏂囦欢绫诲瀷 + apiData.setWjlx(wjlx); + + //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� + apiData.setZhgxsj(sysData.getCreateTime()); + + //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� + apiData.setBizId(sysData.getFileId()); + apiData.setKqdm(kqdm); + apiData.setSyncTime(new Date()); + + api1109List = api1109Rep.getDataByBizId(apiData.getBizId()); + if (null == api1109List || api1109List.isEmpty()) { + apiData.setCzbz(Constant.CZBZ_I); + } else { + apiData.setCzbz(api1109List.get(0).getCzbz()); + } + + //淇濆瓨鏁版嵁 + api1109Rep.save(apiData); + num ++; + log.info("1109---鍚屾鏁版嵁锛歿}", apiData.toString()); + } } } } catch (Exception e) { @@ -165,6 +201,121 @@ } } + +// /** +// * 鍚屾鏂囦欢鎺ュ彛 +// * +// * @param deptId +// * @param start +// * @param end +// */ +// public void syncData(String kqdm, String deptId, Date start, Date end) { +// +// log.info("-------------1109鎺ュ彛鏁版嵁寮�濮嬪悓姝�------------------"); +// +// //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭� +// ApiLog apiLog = new ApiLog(); +// apiLog.setType(ApiLog.TYPE_SYNC); +// apiLog.setKqdm(deptId); +// apiLog.setUploadTime(new Date()); +// apiLog.setInteId(Constant.API_CODE_1109); +// apiLog.setStatus(99); +// apiLog.setId(ContextUtil.getUUID()); +// try { +// List<Fz40FileInfo> list = fzzySync1109Rep.listFileInfo(start, end); +// +// if (null == list || list.isEmpty()) { +// log.info("-------------娌℃湁鑾峰彇鍒版枃浠朵俊鎭�------------------"); +// return; +// } +// +// Map<String, Integer> map = new HashMap<>(); +// Api1109 apiData; +// String wjlx; +// String wjmc; +// List<Api1109> api1109List; +// List<Api1202> api1202List; +// List<Api1205> api1205List; +// String str = ""; +// for (Fz40FileInfo sysData : list) { +// if (StringUtils.isEmpty(sysData.getBizId())) { +// continue; +// } +// //鏍规嵁鍥剧墖id鏌ヨ瀵瑰簲鍑哄叆搴撲俊鎭� +// if(sysData.getBizId().startsWith(IMG_START_R)){ +// api1202List = api1202Rep.getDataByBizId(sysData.getBizId()); +// if (null == api1202List || api1202List.isEmpty()) { +// continue; +// } +// str = api1202List.get(0).getRkywdh(); +// } +// if(sysData.getBizId().startsWith(IMG_START_C)){ +// api1205List = api1205Rep.getDataByBizId(sysData.getBizId()); +// if (null == api1205List || api1205List.isEmpty()) { +// continue; +// } +// str = api1205List.get(0).getCkywdh(); +// } +// +// //鍙悓姝ョО閲� +// if (BIZ_TAG_WEIGHT_FULL.equals(sysData.getBizTag()) || BIZ_TAG_WEIGHT_EMPTY.equals(sysData.getBizTag())) { +// wjlx = ""; +// wjmc = kqdm; +// //鍏ュ簱鎶撴媿鍥� +// if (sysData.getBizId().startsWith(IMG_START_R)) { +// wjlx = IMG_TYPE_2; +// wjmc += "_" + Constant.INOUT_TYPE_14 + sysData.getBizId().substring(4); +// } +// //鍑哄簱鎶撴媿鍥� +// if (sysData.getBizId().startsWith(IMG_START_C)) { +// wjlx = IMG_TYPE_3; +// wjmc += "_" + Constant.INOUT_TYPE_15 + sysData.getBizId().substring(4); +// } +// //鑻ユ枃浠剁被鍨嬩负绌猴紝鍒欒烦杩� +// if (StringUtils.isEmpty(wjlx)) { +// continue; +// } +// +// apiData = new Api1109(); +// +// //涓婚敭id +// apiData.setId(UUID.randomUUID().toString()); +// //鏂囦欢璺緞 +// apiData.setWjdz(fileUtil.getInoutFilePath(sysData.getCreateTime()) + sysData.getFileName()); +// +// //鏂囦欢鍚嶇О +// wjmc = getImgNameType(wjmc, sysData.getBizTag(), str, sysData.getFileName(), map); +// apiData.setWjmc(wjmc); +// //鏂囦欢绫诲瀷 +// apiData.setWjlx(wjlx); +// +// //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� +// apiData.setZhgxsj(sysData.getCreateTime()); +// +// //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂� +// apiData.setBizId(sysData.getFileId()); +// apiData.setKqdm(kqdm); +// apiData.setSyncTime(new Date()); +// +// api1109List = api1109Rep.getDataByBizId(apiData.getBizId()); +// if (null == api1109List || api1109List.isEmpty()) { +// apiData.setCzbz(Constant.CZBZ_I); +// } else { +// apiData.setCzbz(api1109List.get(0).getCzbz()); +// } +// +// //淇濆瓨鏁版嵁 +// api1109Rep.save(apiData); +// log.info("1109---鍚屾鏁版嵁锛歿}", apiData.toString()); +// } +// } +// } catch (Exception e) { +// log.error("---鏂囦欢鍚屾鎵ц澶辫触----{}", e); +// apiLog.setResult("鍚屾鏂囦欢淇℃伅澶辫触锛�" + e.getMessage()); +// apiLogRep.save(apiLog); +// } +// } + /** * 鑾峰彇鍥剧墖鍛藉悕绫诲瀷 * -- Gitblit v1.9.3