From cd091408dcff794e3001e43b99a6d521cfff36dc Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期一, 13 十一月 2023 21:04:04 +0800 Subject: [PATCH] 优化上海接口批次号问题 --- src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java | 265 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 223 insertions(+), 42 deletions(-) diff --git a/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java b/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java index 8e3f491..25bdc64 100644 --- a/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java +++ b/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java @@ -19,6 +19,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + import java.lang.reflect.Field; import java.util.*; @@ -42,15 +43,21 @@ @Autowired private ApiLogRep apiLogRep; @Autowired + private Api1101Rep api1101Rep; + @Autowired private Api1102Rep api1102Rep; @Autowired private Api1104Rep api1104Rep; + @Autowired + private Api1208Rep api1208Rep; @Autowired private Api1109Rep api1109Rep; @Autowired private Api1202Rep api1202Rep; @Autowired private Api1205Rep api1205Rep; + @Autowired + private Api1404Rep api1404Rep; @Override public String getProtocol() { @@ -110,7 +117,7 @@ //鑾峰彇鎸囦护id String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm()); OrderData orderData = (OrderData) redisUtil.get(key); - if (StringUtils.isEmpty(orderData.getOrderid())) { + if (null == orderData || StringUtils.isEmpty(orderData.getOrderid())) { log.error("鎸囦护id澶辨晥=" + jsonData); ResponseDto responseDto = new ResponseDto(99, "鎸囦护id澶辨晥"); apiLog.setStatus(99); @@ -135,7 +142,7 @@ reqData.setData(ShRSAUtils.encryptByPubKey(jsonData, conf.getPublicKey())); //鎽樿锛屾暟鎹富浣撶殑MD5鍊� reqData.setDigst(MyMD5Util.encrypt(jsonData)); - + log.info("涓婃姤鏁版嵁淇℃伅=" + JSON.toJSONString(reqData)); SH2023RespDto responseDto = SH2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, JSON.toJSONString(reqData), conf); apiLog.setStatus(responseDto.getCode() == 200 ? 0 : responseDto.getCode()); @@ -154,6 +161,7 @@ /** * 杞负JSON + * * @param inteId * @param data * @param code @@ -177,6 +185,7 @@ /** * 甯歌鎺ュ彛灏佽 + * * @param inteId * @param data * @param code @@ -264,7 +273,8 @@ Map<String, String> map = new HashMap<>(); map.put(apiData.getWjmc(), FileUtils.fileToByteString(apiData.getWjdz())); api1109.setWjl(JSON.toJSONString(map)); - + //涓婃捣甯傚钩鍙版枃浠跺悕绉拌鍒欙細搴撳尯缂栫爜_涓氬姟娴佹按鍙穇鍒嗙被鐮乢椤哄簭鐮�.jpg锛屼緥濡傦細91310114703439394M001_142211080101_GL_00.jpg + api1109.setWjmc(getWjmc(api1109.getWjlx(), api1109.getWjmc())); //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1109); return api1109; @@ -315,7 +325,14 @@ BeanUtils.copyProperties(data, api1201); api1201.setBjw(ShAreaBjw.getBjw(code)); api1201.setHtsfzz("0"); - + //鍚堝悓绛捐鍦扮偣涓嶈兘涓虹┖鎴栧~鏃� + if (StringUtils.isEmpty(api1201.getQddd())) { + api1201.setQddd("绛捐鍦扮偣"); + } + //鍚堝悓瀹℃牳浜轰笉鑳戒负绌烘垨濉棤 + if (StringUtils.isEmpty(api1201.getShr())) { + api1201.setShr("瀹℃壒浜�"); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1201); return api1201; @@ -325,9 +342,25 @@ Api1202 apiData = (Api1202) data; BeanUtils.copyProperties(apiData, api1202); api1202.setBjw(ShAreaBjw.getBjw(code)); - api1202.setPch(apiData.getHwdm() + apiData.getShnd()); api1202.setJzrq(apiData.getCmsj()); + if (StringUtils.isEmpty(api1202.getCddm())) { + api1202.setCddm(api1202.getHwdm().substring(2, 8)); + } + if (StringUtils.isEmpty(api1202.getRkjsdh())) { + api1202.setRkjsdh("0"); + } + //璁剧疆绮杞崲骞村害 + List<Api1404> api1404List = api1404Rep.getDataByJhmxdh(apiData.getJhmxh()); + if(null != api1404List && api1404List.size() >0){ + api1202.setLhnd(api1404List.get(0).getShnd()); + } + + //璁剧疆鎵规鍙� + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1202.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1202.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1202); return api1202; @@ -337,9 +370,24 @@ Api1203 apiData = (Api1203) data; BeanUtils.copyProperties(apiData, api1203); api1203.setBjw(ShAreaBjw.getBjw(code)); - //鏌ヨ鏀惰幏骞翠唤 - List<Api1202> api1202List = api1202Rep.getDataById(apiData.getRkywdh()); - api1203.setPch(apiData.getHwdm() + api1202List.get(0).getShnd()); + if (StringUtils.isEmpty(api1203.getJyxm())) { + api1203.setJyxm("0"); + } + if (StringUtils.isEmpty(api1203.getJyz())) { + api1203.setJyz("0"); + } + if (StringUtils.isEmpty(api1203.getZkj())) { + api1203.setZkj("0"); + } + if (StringUtils.isEmpty(api1203.getZkl())) { + api1203.setZkl("0"); + } + //璁剧疆鎵规鍙� + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1203.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1203.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } + //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1203); return api1203; @@ -349,7 +397,17 @@ Api1204 apiData = (Api1204) data; BeanUtils.copyProperties(apiData, api1204); api1204.setBjw(ShAreaBjw.getBjw(code)); - api1204.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getJssj(), "yyyy")); + + //璁剧疆鎵规鍙� + if(StringUtils.isNotEmpty(api1204.getHth())){ + List<Api1202> api1202List = api1202Rep.getDataByRkjsdh(api1204.getRkjsdh()); + if(null != api1202List && api1202List.size() > 0){ + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1202List.get(0).getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1204.setPch(api1208List.get(0).getHwdm() + api1208List.get(0).getShnd()); + } + } + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1204); @@ -361,8 +419,26 @@ Api1205 apiData = (Api1205) data; BeanUtils.copyProperties(apiData, api1205); api1205.setBjw(ShAreaBjw.getBjw(code)); - api1205.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getCmsj(), "yyyy")); + api1205.setJzrq(apiData.getCmsj()); + if (StringUtils.isEmpty(api1205.getCddm())) { + api1205.setCddm(api1205.getHwdm().substring(2, 8)); + } + if (StringUtils.isEmpty(api1205.getCkjsdh())) { + api1205.setCkjsdh("0"); + } + + //璁剧疆绮杞崲骞村害 + List<Api1404> api1404List = api1404Rep.getDataByJhmxdh(apiData.getJhmxh()); + if(null != api1404List && api1404List.size() >0){ + api1205.setLhnd(api1404List.get(0).getShnd()); + } + + //璁剧疆鎵规鍙� + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1205.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1205.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1205); @@ -373,14 +449,23 @@ Api1206 apiData = (Api1206) data; BeanUtils.copyProperties(apiData, api1206); api1206.setBjw(ShAreaBjw.getBjw(code)); - List<Api1205> api1205List = api1205Rep.getDataById(apiData.getCkjsdh()); - api1206.setPch(api1205List.get(0).getHwdm() + DateFormatUtils.format(api1205List.get(0).getCmsj(), "yyyy")); + //鎵规鍙� + if(StringUtils.isNotEmpty(api1206.getHth())){ + List<Api1205> api1205List = api1205Rep.getDataByCkjsdh(api1206.getCkjsdh()); + if(null != api1205List && api1205List.size() > 0){ + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1205List.get(0).getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1206.setPch(api1208List.get(0).getHwdm() + api1208List.get(0).getShnd()); + } + } + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1206); return api1206; } if (SH2023Constant.SH_2023_API_CODE_1207.equals(inteId)) { + //鍊掍粨鍊掑嚭 SH2023Api1207 api1207 = new SH2023Api1207(); Api1207 apiData = (Api1207) data; BeanUtils.copyProperties(apiData, api1207); @@ -388,8 +473,10 @@ api1207.setDcrq(apiData.getDcrq()); api1207.setBjw(ShAreaBjw.getBjw(code)); - api1207.setPch(apiData.getDchwdm() + DateFormatUtils.format(apiData.getDcrq(), "yyyy")); - api1207.setKddh(apiData.getDcdh().substring(21, 33)); + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1207.getDchwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1207.setPch(api1207.getDchwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1207); @@ -402,8 +489,11 @@ api1208.setZglkdm(api1208.getHwdm().substring(0, 21)); api1208.setBjw(ShAreaBjw.getBjw(code)); + //璁剧疆鎵规鍙� api1208.setPch(apiData.getHwdm() + apiData.getShnd()); - + if (StringUtils.isEmpty(api1208.getCd())) { + api1208.setCd(api1208.getHwdm().substring(2, 8)); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1208); return api1208; @@ -419,7 +509,10 @@ api1209.setZrshde(apiData.getQzzrshde()); api1209.setBjw(ShAreaBjw.getBjw(code)); api1209.setJzrq(apiData.getYwrq()); - api1209.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getYwrq(), "yyyy")); + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1209.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1209.setPch(api1209.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1209); @@ -431,7 +524,10 @@ BeanUtils.copyProperties(apiData, api1210); api1210.setBjw(ShAreaBjw.getBjw(code)); - api1210.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getHzrq(), "yyyy")); + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1210.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1210.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1210); @@ -445,7 +541,10 @@ api1211.setZglkdm(api1211.getKqdm()); api1211.setBjw(ShAreaBjw.getBjw(code)); api1211.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getYwrq(), "yyyyMM")); - api1211.setZglkdm(apiData.getKqdm()); + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1211.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1211.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1211); @@ -474,12 +573,16 @@ Api1302 apiData = (Api1302) data; BeanUtils.copyProperties(apiData, api1302); api1302.setBjw(ShAreaBjw.getBjw(code)); - api1302.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getJcsj(), "yyyy")); api1302.setCpjw(String.valueOf(apiData.getLspjw())); api1302.setCzgw(String.valueOf(apiData.getLspjw())); api1302.setCzdw(String.valueOf(apiData.getLspjw())); api1302.setGfwjw(String.valueOf(apiData.getLspjw())); api1302.setLwmx(apiData.getLswdzjh()); + + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1302.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1302.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1302); @@ -490,8 +593,10 @@ Api1303 apiData = (Api1303) data; BeanUtils.copyProperties(apiData, api1303); api1303.setBjw(ShAreaBjw.getBjw(code)); - api1303.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getJcsj(), "yyyy")); - + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1303.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1303.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1303); return api1303; @@ -501,7 +606,10 @@ Api1304 apiData = (Api1304) data; BeanUtils.copyProperties(apiData, api1304); api1304.setBjw(ShAreaBjw.getBjw(code)); - api1304.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getJcsj(), "yyyy")); + List<Api1208> api1208List = api1208Rep.findDataByHwdm(api1304.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + api1304.setPch(apiData.getHwdm() + api1208List.get(0).getShnd()); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1304); @@ -513,7 +621,12 @@ BeanUtils.copyProperties(apiData, api1305); api1305.setBjw(ShAreaBjw.getBjw(code)); api1305.setAjdm(apiData.getTfzydh().substring(0, 28)); - + //涓婃捣閫氶浣滀笟鍗曞彿锛氬粧闂翠唬鐮�+yyyyMMdd+3浣嶉『搴忓彿 + api1305.setAjdm(apiData.getTfzydh().substring(0, 28)); + api1305.setTfzydh(apiData.getTfzydh().substring(0, 28) + apiData.getTfzydh().substring(30)); + if (StringUtils.isEmpty(api1305.getTfmd())) { + api1305.setTfmd("1"); //闄嶆俯閫氶 + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1305); return api1305; @@ -524,8 +637,12 @@ BeanUtils.copyProperties(apiData, api1306); api1306.setBjw(ShAreaBjw.getBjw(code)); api1306.setPch(apiData.getXzzydh().substring(0, 30) + DateFormatUtils.format(apiData.getXzkssj(), "yyyy")); - api1306.setAjdm(apiData.getXzzydh().substring(0, 28)); - + api1306.setAjdm(apiData.getHwdm().substring(0, 28)); + //涓婃捣鐔忚捀浣滀笟鍗曞彿锛氳揣浣嶄唬鐮�+yyyyMMdd + 3浣嶉『搴忓彿 + api1306.setXzzydh(apiData.getHwdm() + apiData.getBizId()); + if (StringUtils.isEmpty(api1306.getSyff())) { + api1306.setSyff("0"); //娼В娉� + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1306); return api1306; @@ -536,8 +653,6 @@ BeanUtils.copyProperties(apiData, api1307); api1307.setBjw(ShAreaBjw.getBjw(code)); api1307.setAjdm(apiData.getHwdm().substring(0, 28)); - List<Api1109> api1109List = api1109Rep.getDataByFileId(apiData.getFileStorageId()); - api1307.setTxbh(api1109List.get(0).getWjmc()); //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1307); @@ -549,9 +664,6 @@ BeanUtils.copyProperties(apiData, api1308); api1308.setBjw(ShAreaBjw.getBjw(code)); - List<Api1109> api1109List = api1109Rep.getDataByFileId(apiData.getFileStorageId()); - api1308.setTxbh(api1109List.get(0).getWjmc()); - api1308.setSpbh(api1109List.get(0).getWjmc()); //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1308); @@ -571,14 +683,50 @@ BeanUtils.copyProperties(apiData, api1310); api1310.setBjw(ShAreaBjw.getBjw(code)); api1310.setJyrq(apiData.getJysj()); - api1310.setPch(apiData.getHwdm() + DateFormatUtils.format(apiData.getJysj(), "yyyy")); - List<Api1202> api1202List = api1202Rep.getDataByHwdm(apiData.getHwdm()); - api1310.setLspzdm(api1202List.get(0).getLspzdm()); - api1310.setLsxzdm("123"); + + if (StringUtils.isEmpty(api1310.getJyxm())) { + api1310.setJyxm("0"); + } + if (StringUtils.isEmpty(api1310.getJyxmz())) { + api1310.setJyxmz("0"); + } + String lsxzdm = "122"; + String pch = ""; + List<Api1208> api1208List = api1208Rep.getDataByHwdm(api1310.getHwdm()); + if(null != api1208List && api1208List.size() > 0){ + if(StringUtils.isNotEmpty(api1208List.get(0).getLsxzdm())){ + lsxzdm = api1208List.get(0).getLsxzdm(); + pch = apiData.getHwdm() + api1208List.get(0).getShnd(); + } + } + //璁剧疆鎵规鍙� + api1310.setPch(pch); + api1310.setLsxzdm(lsxzdm); + if (api1310.getYpsl() == 0.0){ + api1310.setYpsl(5.0); + } + if(StringUtils.isEmpty(api1310.getQyrxm())){ + api1310.setQyrxm("鎵︽牱浜�"); + } + if(StringUtils.isEmpty(api1310.getJdrxm())){ + api1310.setJdrxm("鐩戠潱浜�"); + } + if(StringUtils.isEmpty(api1310.getShrxm())){ + api1310.setShrxm("瀹℃牳浜�"); + } //璁剧疆绌哄睘鎬т负榛樿鍊� changeObject(api1310); return api1310; + } + if (SH2023Constant.SH_2023_API_CODE_1311.equals(inteId)) { + SH2023Api1311 api1311 = new SH2023Api1311(); + BeanUtils.copyProperties(data, api1311); + api1311.setBjw(ShAreaBjw.getBjw(code)); + + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(api1311); + return api1311; } if (SH2023Constant.SH_2023_API_CODE_1401.equals(inteId)) { SH2023Api1401 api1401 = new SH2023Api1401(); @@ -602,8 +750,10 @@ SH2023Api1403 api1403 = new SH2023Api1403(); Api1403 apiData = (Api1403) data; BeanUtils.copyProperties(apiData, api1403); - api1403.setJhzxdw(apiData.getJhxddw()); - api1403.setJhzxdwmc(apiData.getJhxddwmc()); + List<Api1101> api1101List = api1101Rep.findDataByDwdm(apiData.getLhjhdh().substring(0, 18)); + + api1403.setJhzxdw(api1101List.get(0).getDwdm()); + api1403.setJhzxdwmc(api1101List.get(0).getDwmc()); api1403.setBjw(ShAreaBjw.getBjw(code)); //璁剧疆绌哄睘鎬т负榛樿鍊� @@ -621,30 +771,61 @@ return api1404; } if (SH2023Constant.SH_2023_API_CODE_2101.equals(inteId)) { + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(data); return data; } if (SH2023Constant.SH_2023_API_CODE_2102.equals(inteId)) { - return data; + SH2023Api2102 apiData = new SH2023Api2102(); + BeanUtils.copyProperties(data, apiData); + List<Api1208> api1208List = api1208Rep.findDataByHwdm(apiData.getDrhwdm()); + if(null != api1208List && api1208List.size() > 0){ + apiData.setPch(apiData.getDrhwdm() + api1208List.get(0).getShnd()); + } + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(apiData); + return apiData; } if (SH2023Constant.SH_2023_API_CODE_2103.equals(inteId)) { - SH2023Api2103 api2103 = new SH2023Api2103(); - BeanUtils.copyProperties(data, api2103); - List<SH2023Api2103Item> listItems = castList(api2103.getDlqplxq(), SH2023Api2103Item.class); - api2103.setSh2023Api2103Items(listItems); - return api2103; + SH2023Api2103 apiData = new SH2023Api2103(); + BeanUtils.copyProperties(data, apiData); + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(apiData); + return apiData; } if (SH2023Constant.SH_2023_API_CODE_2104.equals(inteId)) { + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(data); return data; } if (SH2023Constant.SH_2023_API_CODE_2203.equals(inteId)) { + + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(data); return data; } if (SH2023Constant.SH_2023_API_CODE_2204.equals(inteId)) { + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(data); return data; } + //璁剧疆绌哄睘鎬т负榛樿鍊� + changeObject(data); return data; } + private String getWjmc(String wjlx, String wjmc){ + if("2".equals(wjlx) || "3".equals(wjlx) || "4".equals(wjlx) || "5".equals(wjlx)){ + if(wjmc.endsWith(".jpg")) { + wjmc = wjmc.replaceAll(".jpg", "_00.jpg"); + } + if(wjmc.endsWith(".png")) { + wjmc = wjmc.replaceAll(".png", "_00.png"); + } + } + return wjmc; + } + /** * 鑾峰彇璐㈠姟鏁版嵁json * -- Gitblit v1.9.3