From dbef4eea6194ffba3bd25f978b33e09d65f5a6de Mon Sep 17 00:00:00 2001 From: czt <czt18638530771@163.com> Date: 星期五, 01 十一月 2024 14:07:21 +0800 Subject: [PATCH] 根据国家局接口,调整基础表字段 --- src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1109.java | 243 +++++++++++++++++++++++++++++++++++------------- 1 files changed, 178 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..2f3615f 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; @@ -13,10 +17,14 @@ import com.fzzy.async.fzzy40.repository.Fzzy40Sync1202Rep; 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.ParseException; import java.util.*; +import java.util.stream.Collectors; /** * 鏂囦欢淇℃伅 @@ -43,7 +51,12 @@ private final static String BIZ_TAG_WEIGHT_FULL = "WEIGHT_FULL"; 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 BIZ_TAG_CARD_BACK = "CARD_BACK"; + /** + * 鍑哄叆搴撶被鍨� + */ + private final static String INOUT_TYPE_IN = "IN"; + private final static String INOUT_TYPE_OUT = "OUT"; @Autowired private Fzzy40Sync1109Rep fzzySync1109Rep; @@ -52,9 +65,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 +93,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,55 +106,107 @@ 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; } + 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()); + } + + //鑻ユ枃浠剁被鍨嬩负绌猴紝鍒欒烦杩� + if (StringUtils.isEmpty(wjlx)) { + continue; + } + + //鏍规嵁鍑哄叆搴撳崟鍙疯幏鍙栧搴旀枃浠朵俊鎭� + fileList = fzzySync1109Rep.listFileInfoByBizId(inoutData.getId()); + if (null == fileList || fileList.isEmpty()) { + continue; + } + int num = 1; + int idsNum = 0; + String bizTag = null; + for (Fz40FileInfo sysData : fileList) { apiData = new Api1109(); //涓婚敭id - apiData.setId(UUID.randomUUID().toString()); + apiData.setId(sysData.getFileId()); //鏂囦欢璺緞 apiData.setWjdz(fileUtil.getInoutFilePath(sysData.getCreateTime()) + sysData.getFileName()); + //鐧昏 + if (BIZ_TAG_REGISTER.equals(sysData.getBizTag()) || BIZ_TAG_CARD_BACK.equals(sysData.getBizTag())) { + str = ids.get(0); + wjmc = kqdm + "_" + str; + //鏂囦欢鍚嶇О + wjmc = getImgNameType(wjmc, sysData.getBizTag(), str, sysData.getFileName(), map); + apiData.setWjmc(wjmc); + //鏂囦欢绫诲瀷 + apiData.setWjlx(wjlx); + } + //绉伴噸 + if (BIZ_TAG_WEIGHT_FULL.equals(sysData.getBizTag()) || BIZ_TAG_WEIGHT_EMPTY.equals(sysData.getBizTag())) { + bizTag = sysData.getBizTag(); + if(StringUtils.isNotEmpty(inoutData.getTransType()) && inoutData.getTransType().equals("3")){ + if(num > 6){ + num = 1; + idsNum ++; + } + }else { + if(num > 8){ + num = 1; + idsNum ++; + } + } + //2024-05-23 姝ゅ鏆傛椂璁剧疆鍚嶇О闀垮害闄愬埗锛屽悗鏈熻皟鏁村悗鍙垹闄� + if(sysData.getCreateTime().after(DateUtils.parseDate("2024-04-18",new String[]{"yyyy-MM-dd"}))){ + if(StringUtils.isNotEmpty(inoutData.getTransType()) && inoutData.getTransType().equals("3")){ + bizTag = sysData.getBizTag(); + }else { + bizTag = null; + } + } + if(idsNum == ids.size()){ + break; + } + str = ids.get(idsNum); - //鏂囦欢鍚嶇О - wjmc = getImgNameType(wjmc, sysData.getBizTag(), sysData.getBizId(), sysData.getFileName(), map); - apiData.setWjmc(wjmc); - //鏂囦欢绫诲瀷 - apiData.setWjlx(wjlx); + wjmc = kqdm + "_" + str; + + //鏂囦欢鍚嶇О + wjmc = getImgNameType(wjmc, bizTag, str, sysData.getFileName(), map); + apiData.setWjmc(wjmc); + apiData.setWjlx(wjlx); + if (wjmc.indexOf(Constant.IMG_NAME_TYPE_IVG) >= 0 || wjmc.indexOf(Constant.IMG_NAME_TYPE_IVT) >= 0) { + apiData.setWjlx(IMG_TYPE_4); + } + if (wjmc.indexOf(Constant.IMG_NAME_TYPE_OVG) >= 0 || wjmc.indexOf(Constant.IMG_NAME_TYPE_OVT) >= 0) { + apiData.setWjlx(IMG_TYPE_5); + } + num ++; + } //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂� apiData.setZhgxsj(new Date()); @@ -176,30 +246,54 @@ * @return */ private String getImgNameType(String wjmc, String bizTag, String bizId, String fileName, Map<String, Integer> map) { - if (fileName.indexOf(Constant.IMG_NAME_TYPE_GL) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_GL + ".jpg"; + if(null == bizTag){ + if (fileName.indexOf(Constant.IMG_NAME_TYPE_DJ) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_DJ + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_RK) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_RK + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_CK) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_CK + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_GL) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_GL + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_GR) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_GR + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_GT) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_GT + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_TL) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_TL + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_TR) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_TR + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_TT) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_TT + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_SL) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_SL + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_SF) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_SF + ".jpg"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_IVG) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_IVG + ".mp4"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_IVT) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_IVT + ".mp4"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_OVG) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_OVG + ".mp4"; + } + if (fileName.indexOf(Constant.IMG_NAME_TYPE_OVT) >= 0) { + return wjmc + "_" + Constant.IMG_NAME_TYPE_OVT + ".mp4"; + } } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_GR) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_GR + ".jpg"; - } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_GT) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_GT + ".jpg"; - } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_TL) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_TL + ".jpg"; - } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_TR) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_TR + ".jpg"; - } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_TT) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_TT + ".jpg"; - } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_SL) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_SL + ".jpg"; - } - if (fileName.indexOf(Constant.IMG_NAME_TYPE_SF) >= 0) { - return wjmc + "_" + Constant.IMG_NAME_TYPE_SF + ".jpg"; - } + Integer num = 0; //姣涢噸 if (BIZ_TAG_WEIGHT_FULL.equals(bizTag)) { @@ -239,6 +333,25 @@ map.remove(bizId + "_" + bizTag); } } + //鍏ュ簱鐧昏 + if (BIZ_TAG_REGISTER.equals(bizTag)) { + if (null == map.get(bizId + "_" + bizTag)) { + map.put(bizId + "_" + bizTag, 1); + } + num = map.get(bizId + "_" + bizTag); + if (num == 1) { + wjmc += "_" + Constant.IMG_NAME_TYPE_DJ; + map.put(bizId + "_" + bizTag, 2); + } + if (num == 2) { + wjmc += "_" + Constant.IMG_NAME_TYPE_RK; + map.remove(bizId + "_" + bizTag); + } + } + //鍑哄簱鐓х墖 + if (BIZ_TAG_CARD_BACK.equals(bizTag)) { + wjmc += "_" + Constant.IMG_NAME_TYPE_CK; + } return wjmc + ".jpg"; } } -- Gitblit v1.9.3