From e3db5176ba2ce38965bdea37f789d2374c9ef3d6 Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 10:59:00 +0800 Subject: [PATCH 1/9] fix --- .../main/java/com/iformall/schedule/OrderExpiringSchedule.java | 1 - 1 file changed, 1 deletion(-) diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java index 746fe2ebe..11045ef63 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java @@ -344,7 +344,6 @@ public class OrderExpiringSchedule { return false; } - @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public void orderExpired(WxOrder order,boolean checkRealPay) throws MallinkException, Exception { if (checkRealPay) { From f2064467bb643c7b1312e4e7d11689d5fa65a668 Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 15:09:52 +0800 Subject: [PATCH 2/9] fix dahua car --- .../java/com/iformall/service/park/impl/dahua/DaHuaUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaUtil.java b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaUtil.java index 1ed98db8f..ad98eed98 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaUtil.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaUtil.java @@ -144,7 +144,7 @@ public class DaHuaUtil { /*token认证登陆**/ private static String ProcLogin(String clientId,String clientSecret) { - String url = TOKEN_URL +"grant_type=client_credentials&scope=server&client_id="+clientId+"&client_secret="+clientSecret; + String url = TOKEN_URL +"?grant_type=client_credentials&scope=server&client_id="+clientId+"&client_secret="+clientSecret; return Proc(url,content_type_token,null,null); } From e3457af0aaff31b8aaab33b3af0f2c4d710d345c Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 15:40:12 +0800 Subject: [PATCH 3/9] fix bug --- .../car/dahua/WxCarDaHuaCallBackController.java | 16 ++++++++-------- .../main/java/com/iformall/enums/EnumCarCmd.java | 10 +++++++++- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java index 127e8cf7b..cc25d96e1 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java @@ -75,9 +75,9 @@ public class WxCarDaHuaCallBackController extends WxParkCallBackBaseController { **/ @PostMapping(value = "/PostCarInInfo") public Result parkInCallback(@RequestBody Map paramMap) { - log.info("["+getIpAddr()+"] keTuoCarCallback parkIn: " + paramMap.toString()); + log.info("["+getIpAddr()+"] daHuaCarCallback parkIn: " + paramMap.toString()); //解析车易付参数 - return super.parkInCallBack(EnumCarVendor.CAR_KETUO, EnumCarCmd.CAR_KETUO_CALLBACK_PARK_IN, paramMap); + return super.parkInCallBack(EnumCarVendor.CAR_DAHUA, EnumCarCmd.CAR_DAHUA_CALLBACK_PARK_IN, paramMap); } @@ -90,22 +90,22 @@ public class WxCarDaHuaCallBackController extends WxParkCallBackBaseController { **/ @PostMapping(value = "/PostCarOutInfo") public Result parkOutCallback(@RequestBody Map paramMap) { - log.info("["+getIpAddr()+"] keTuoCarCallback parkOut: " + paramMap.toString()); - return super.parkOutCallBack(EnumCarVendor.CAR_KETUO, EnumCarCmd.CAR_KETUO_CALLBACK_PARK_OUT, paramMap); + log.info("["+getIpAddr()+"] daHuaCarCallback parkOut: " + paramMap.toString()); + return super.parkOutCallBack(EnumCarVendor.CAR_DAHUA, EnumCarCmd.CAR_DAHUA_CALLBACK_PARK_OUT, paramMap); } @PostMapping(value = "/unbind") public Result unbindCallback(@RequestBody Map paramMap) { - log.info("["+getIpAddr()+"] keTuoCarCallback unbind: " + paramMap.toString()); + log.info("["+getIpAddr()+"] daHuaCarCallback unbind: " + paramMap.toString()); //解析车易付参数 - return super.unbindCarCallBack(EnumCarVendor.CAR_KETUO, EnumCarCmd.CAR_KETUO_CALLBACK_UNBIND, paramMap); + return super.unbindCarCallBack(EnumCarVendor.CAR_DAHUA, EnumCarCmd.CAR_DAHUA_CALLBACK_UNBIND, paramMap); } @PostMapping(value = "/PostPayFeeInfo") public Result paidCallback(@RequestBody Map paramMap) { - log.info("["+getIpAddr()+"] keTuoCarCallback paid: " + paramMap.toString()); + log.info("["+getIpAddr()+"] daHuaCarCallback paid: " + paramMap.toString()); //解析车易付参数 - return super.paidCallback(EnumCarVendor.CAR_KETUO, EnumCarCmd.CAR_KETUO_CALLBACK_PAID, paramMap); + return super.paidCallback(EnumCarVendor.CAR_DAHUA, EnumCarCmd.CAR_DAHUA_CALLBACK_PAID, paramMap); } } diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java b/mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java index 572abe88a..baeb243db 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java @@ -49,7 +49,12 @@ public enum EnumCarCmd { CAR_KETUO_CALLBACK_PARK_IN(640,"科拓进场通知"), CAR_KETUO_CALLBACK_PARK_OUT(641,"科拓出场通知"), CAR_KETUO_CALLBACK_UNBIND(642,"科拓解绑车牌通知"), - CAR_KETUO_CALLBACK_PAID(643,"科拓支付通知") + CAR_KETUO_CALLBACK_PAID(643,"科拓支付通知"), + + CAR_DAHUA_CALLBACK_PARK_IN(644,"大华进场通知"), + CAR_DAHUA_CALLBACK_PARK_OUT(645,"大华出场通知"), + CAR_DAHUA_CALLBACK_UNBIND(646,"大华解绑车牌通知"), + CAR_DAHUA_CALLBACK_PAID(647,"大华支付通知") ; public static EnumCarCmd getEnum(Integer code) { @@ -72,6 +77,7 @@ public enum EnumCarCmd { list.add(CAR_FUTE_CALLBACK_PARK_IN.getCode()); list.add(CAR_LIFANG_CALLBACK_PARK_IN.getCode()); list.add(CAR_KETUO_CALLBACK_PARK_IN.getCode()); + list.add(CAR_DAHUA_CALLBACK_PARK_IN.getCode()); return list; } @@ -86,6 +92,7 @@ public enum EnumCarCmd { list.add(CAR_FUTE_CALLBACK_PARK_OUT.getCode()); list.add(CAR_LIFANG_CALLBACK_PARK_OUT.getCode()); list.add(CAR_KETUO_CALLBACK_PARK_OUT.getCode()); + list.add(CAR_DAHUA_CALLBACK_PARK_OUT.getCode()); return list; } @@ -100,6 +107,7 @@ public enum EnumCarCmd { list.add(CAR_FUTE_CALLBACK_PAID.getCode()); list.add(CAR_LIFANG_CALLBACK_PAID.getCode()); list.add(CAR_KETUO_CALLBACK_PAID.getCode()); + list.add(CAR_DAHUA_CALLBACK_PAID.getCode()); return list; } From 5d514698a8d84330c98cf051501acf473b94948e Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 15:44:24 +0800 Subject: [PATCH 4/9] fix bug --- .../callback/car/dahua/WxCarDaHuaCallBackController.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java index cc25d96e1..96162141e 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/car/dahua/WxCarDaHuaCallBackController.java @@ -73,7 +73,7 @@ public class WxCarDaHuaCallBackController extends WxParkCallBackBaseController { * @Author furunxin * @Date 2020/7/8 上午8:27 **/ - @PostMapping(value = "/PostCarInInfo") + @PostMapping(value = "/carIn") public Result parkInCallback(@RequestBody Map paramMap) { log.info("["+getIpAddr()+"] daHuaCarCallback parkIn: " + paramMap.toString()); //解析车易付参数 @@ -88,7 +88,7 @@ public class WxCarDaHuaCallBackController extends WxParkCallBackBaseController { * @Author furunxin * @Date 2020/7/12 上午9:00 **/ - @PostMapping(value = "/PostCarOutInfo") + @PostMapping(value = "/carOut") public Result parkOutCallback(@RequestBody Map paramMap) { log.info("["+getIpAddr()+"] daHuaCarCallback parkOut: " + paramMap.toString()); return super.parkOutCallBack(EnumCarVendor.CAR_DAHUA, EnumCarCmd.CAR_DAHUA_CALLBACK_PARK_OUT, paramMap); @@ -102,7 +102,7 @@ public class WxCarDaHuaCallBackController extends WxParkCallBackBaseController { return super.unbindCarCallBack(EnumCarVendor.CAR_DAHUA, EnumCarCmd.CAR_DAHUA_CALLBACK_UNBIND, paramMap); } - @PostMapping(value = "/PostPayFeeInfo") + @PostMapping(value = "/paid") public Result paidCallback(@RequestBody Map paramMap) { log.info("["+getIpAddr()+"] daHuaCarCallback paid: " + paramMap.toString()); //解析车易付参数 From 45f28a7f10f477b57f5e4c582c8b352f9c2fa948 Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 15:48:27 +0800 Subject: [PATCH 5/9] fix car --- .../src/main/java/com/iformall/config/ShiroConfig.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mallinkCallback/src/main/java/com/iformall/config/ShiroConfig.java b/mallinkCallback/src/main/java/com/iformall/config/ShiroConfig.java index 751a042c9..ea2e6f54e 100644 --- a/mallinkCallback/src/main/java/com/iformall/config/ShiroConfig.java +++ b/mallinkCallback/src/main/java/com/iformall/config/ShiroConfig.java @@ -125,7 +125,8 @@ public class ShiroConfig { filterChainDefinitionMap.put("/futeCarCallback/**", "anon"); filterChainDefinitionMap.put("/carPaidCallback/**", "anon"); filterChainDefinitionMap.put("/keTuoCarCallback/**", "anon"); - + filterChainDefinitionMap.put("/daHuaCarCallback/**", "anon"); + // static files filterChainDefinitionMap.put("/css/**", "anon"); filterChainDefinitionMap.put("/js/**", "anon"); From b66f37599e8c6e5d0970692e83a4288270d6a90a Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 16:06:42 +0800 Subject: [PATCH 6/9] fix bug --- .../com/iformall/service/park/impl/dahua/DaHuaParkService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java index 77103c508..aa93c6aa5 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java @@ -168,7 +168,7 @@ public class DaHuaParkService extends BaseParkService implements ParkAdapterServ Integer freeMinute = (Integer)park.getVendorParamsByKey("freeMinute"); Date createTime = DateUtils.string2Date(attribute.getString("carInTime"),DateUtils.DATE_TIME_PATTERN).getTime();//计费时间,格式为“yyyy-MM-dd HH:mi:ss” - Long seconds = attribute.getLong("duration")*60;//停车时长秒 + Long seconds = attribute.getLong("duration");//停车时长秒 Date endTime = DateUtils.getSecondsTimeAfter(seconds, createTime);//离场时间,格式为“yyyy-MM-dd HH:mi:ss” String payPath = "pages/parkingOrder/parkingOrder?carNum="+carNumber+"&isFromPay=1&filterRoadsideInParking=0"; return new ParkStopFee(parkOrderId,createTime,endTime, From 38f5ac1f6e146966d5cf9431f0cbe9a89ef2885e Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 16:21:58 +0800 Subject: [PATCH 7/9] fix car bug --- .../iformall/service/park/ParkFactory.java | 2 +- .../impl/dahua/DaHuaParkCallbackService.java | 104 ++++-------------- 2 files changed, 23 insertions(+), 83 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/park/ParkFactory.java b/mallinkService/src/main/java/com/iformall/service/park/ParkFactory.java index b40207fed..01e7cd479 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/ParkFactory.java +++ b/mallinkService/src/main/java/com/iformall/service/park/ParkFactory.java @@ -119,6 +119,7 @@ public class ParkFactory { callBackServiceMap.put(EnumCarVendor.CAR_FUTE.getCode(), futeParkCallbackService); callBackServiceMap.put(EnumCarVendor.CAR_LIFANG.getCode(), lifangParkCallbackService); callBackServiceMap.put(EnumCarVendor.CAR_KETUO.getCode(), keTuoParkCallbackService); + callBackServiceMap.put(EnumCarVendor.CAR_DAHUA.getCode(), dahuaCallbackService); return callBackServiceMap; } @@ -130,7 +131,6 @@ public class ParkFactory { batchCallBackServiceMap.put(EnumCarVendor.CAR_JIESHUN.getCode(), jieshunCallBackService); batchCallBackServiceMap.put(EnumCarVendor.CAR_JIESHUN_V2.getCode(), jieshunV2CallBackService); batchCallBackServiceMap.put(EnumCarVendor.CAR_HAIKANGWEISHI.getCode(), haikangWeishiCallBackService); - batchCallBackServiceMap.put(EnumCarVendor.CAR_DAHUA.getCode(), dahuaCallbackService); return batchCallBackServiceMap; } diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java index 484a795e5..673f9e97c 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java @@ -31,7 +31,7 @@ import lombok.extern.slf4j.Slf4j; @Slf4j @Service -public class DaHuaParkCallbackService extends BaseParkService implements ParkBatchCallBackAdapterService { +public class DaHuaParkCallbackService extends BaseParkService implements ParkCallBackAdapterService { @Autowired @@ -54,34 +54,17 @@ public class DaHuaParkCallbackService extends BaseParkService implements ParkBat } /** - * {dataItems=[{"inTime":"2020-12-09 11:21:15","carNumber":"浙-AF81797","inCarPhoto":"p201127315/NISSP_IMG_PARK_IN/20201209/a9f1130651b9493f8eab64f14afbdd47","isReal":0,"itemId":"a9f1130651b9493f8eab64f14afbdd47","inOperator":"超级管理员","equipName":"东门入口","parkName":"杭州东站西子国际","vehicleInfo":"{\"plateNo\":\"浙-AF81797\",\"plateColor\":\"GREEN\",\"plateBackColor\":0,\"plateWordColor\":0,\"vehicleColor\":null,\"vehicleLogo\":null,\"vehicleModel\":null,\"mainModel\":0,\"subModel\":0,\"vehicleModelTrust\":0,\"mainModelTrust\":0,\"subModelTrust\":0,\"plateNoTrust\":1,\"vehicleLogoTrust\":0,\"vehicleColorTrust\":0}","equipCode":"208202496","parkCode":"p201127315"}], pno=dzxzgj, sn=6C958D99D2769AA16F3A3F06E962263F, tn=-2, ts=20201209112118886, ve=1.0} + * {parkingLotCode=10005, carInTime=2023-07-24 16:03:25, parkingRecordId=20230724GIBgulTLyuqX07XBMbMRK, carNum=皖MNT597, carInChnId=1000874$14$0$0, parkingLotName=玲珑湾西院} */ @Override - public List parseInNoticyParam(Object param) { + public ParkNotifyParam parseInNoticyParam(Object param) { Map paramm = (Map) param; - String liststr = (String) paramm.get("dataItems"); - JSONArray list = JSONArray.parseArray(liststr); - if (null != list && list.size() > 0 ) { - List retList = new ArrayList(); - for (int i = 0 ; i < list.size() ; i ++) { - Map map = (Map) list.get(i); - ParkNotifyParam ret = parseInNoticyParamSingle(map); - if (null != ret ) { - retList.add(ret); - } - } - return retList; - } - return null; - } - - private ParkNotifyParam parseInNoticyParamSingle(Map paramMap) { - String carNumber = paramMap.get("carNumber").toString(); - String parkCode = paramMap.get("parkCode").toString(); - String parkName = paramMap.get("parkName").toString(); + String carNumber = paramm.get("carNum").toString(); + String parkCode = paramm.get("parkingLotCode").toString(); + String parkName = paramm.get("parkingLotName").toString(); - String synId = paramMap.get("itemId").toString(); - String entranceTime = paramMap.get("inTime").toString(); + String synId = paramm.get("parkingRecordId").toString(); + String entranceTime = paramm.get("carInTime").toString(); ParkNotifyParam p = new ParkNotifyParam(); String realCarNumber = handleCarNumber(carNumber); @@ -98,33 +81,18 @@ public class DaHuaParkCallbackService extends BaseParkService implements ParkBat return p; } + /** + * {parkingLotCode=10005, parkingRecordId=20230724h9XljrQ6hfvPL4tWOO5Yc, carNum=皖MM5823, carOutChnId=1000877$14$0$0, parkingLotName=玲珑湾西院, carOutTime=2023-07-24 16:08:10} + */ @Override - public List parseOutNoticyParam(Object param) { + public ParkNotifyParam parseOutNoticyParam(Object param) { Map paramm = (Map) param; - String liststr = (String) paramm.get("dataItems"); - JSONArray list = JSONArray.parseArray(liststr); - if (null != list && list.size() > 0 ) { - List retList = new ArrayList(); - for (int i = 0 ; i < list.size() ; i ++) { - Map map = (Map) list.get(i); - ParkNotifyParam ret = parseOutNoticyParamSingle(map); - if (null != ret ) { - retList.add(ret); - } - } - return retList; - } - return null; - } - - - private ParkNotifyParam parseOutNoticyParamSingle(Map paramMap) { - String carNumber = paramMap.get("carNumber").toString(); - String parkCode = paramMap.get("parkCode").toString(); - String parkName = paramMap.get("parkName").toString(); + String carNumber = paramm.get("carNum").toString(); + String parkCode = paramm.get("parkingLotCode").toString(); + String parkName = paramm.get("parkingLotName").toString(); - String synId = paramMap.get("itemId").toString(); - String entranceTime = paramMap.get("outTime").toString(); + String synId = paramm.get("parkingRecordId").toString(); + String entranceTime = paramm.get("carOutTime").toString(); String realCarNumber = handleCarNumber(carNumber); ParkNotifyParam p = new ParkNotifyParam(); @@ -144,47 +112,19 @@ public class DaHuaParkCallbackService extends BaseParkService implements ParkBat log.error("cyf outTime format error",e); return null; } - p.setFee(String.valueOf(paramMap.get("ssMoney"))); + p.setFee(String.valueOf(paramm.get("ssMoney"))); return p; } - + @Override - public List parseUnbindNoticyParam(Object param) { + public ParkNotifyParam parseUnbindNoticyParam(Object param) { return null; } @Override - public List parsePaidNoticyParam(Object param) { - Map paramm = (Map) param; - String liststr = (String) paramm.get("dataItems"); - JSONArray list = JSONArray.parseArray(liststr); - if (null != list && list.size() > 0 ) { - List retList = new ArrayList(); - for (int i = 0 ; i < list.size() ; i ++) { - Map map = (Map) list.get(i); - ParkNotifyParam ret = parsePaidNoticyParamSingle(map); - if (null != ret ) { - retList.add(ret); - } - } - return retList; - } + public ParkNotifyParam parsePaidNoticyParam(Object param) { return null; } - DaHuaUtil jieshun = new DaHuaUtil(); - private ParkNotifyParam parsePaidNoticyParamSingle(Map vo) { - ParkNotifyParam p = new ParkNotifyParam(); - p.setCarNumber(handleCarNumber((String) vo.get("carNumber"))); - p.setParkId(String.valueOf(vo.get("parkCode"))); - p.setParkOrderId((String) vo.get("itemId")); - p.setSynId((String) vo.get("itemId")); - p.setFee(vo.get("ssMoney").toString()); - try { - p.setPayTime(jieshun.utcToLocal((String)vo.get("feesTime"))); - } catch (ParseException e) { - e.printStackTrace(); - } - return p; - } + } From 7ad1940d1740dd4c843d282352071c0c903ced01 Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 16:36:52 +0800 Subject: [PATCH 8/9] fix bug --- .../service/park/impl/dahua/DaHuaParkService.java | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java index aa93c6aa5..963a830b2 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkService.java @@ -64,7 +64,6 @@ public class DaHuaParkService extends BaseParkService implements ParkAdapterServ @Autowired WxCarJSOrderMapper wxCarJSOrderMapper; - DaHuaUtil dahua = new DaHuaUtil(); @@ -98,22 +97,8 @@ public class DaHuaParkService extends BaseParkService implements ParkAdapterServ } /** - * 先去捷顺注册,调用登陆获取令牌,然后根据令牌调用别的接口 - * http://ap.jieshun.cn:9088/apply/ 注册信息地址 fumao/iformall2020 - * - * 捷顺商户平台:http://merchant.jslife.com.cn/merchant/index.html#/auth/login - * 捷顺门店平台:http://merchant.jslife.com.cn/store/index.html#/auth/login - * 门店商户号 000000008032172000003 密码 ycHqp61Acudxz * - * - * API对接注意事项: - 1、token有效期两个小时,每两小时内登录一次获取token,调业务接口不需要频繁登录用,建议获取一次token存本地缓存,之后从本地获取,两小时内刷新一次, - 为避免调业务接口时刚好token被刷新,导致token失效(无效的令牌或令牌已过期),可以做下容错,重新登录获取token或用最新token重新调业务接口。 - 2、token是和ip是一对一绑定,新的ip服务器调捷顺的接口会出现ip不合法,需把ip提供捷顺方,添加白名单。多个服务调捷顺接口共用一个ip情况下,只能共用一套登录获取token机制,各自登录会冲突。 - 3、所有接口要带车牌的一律带横杠。格式如:粤-B12345。 - 4、无效的数据签名是指sn加密方式不对。sn加密方式是对p+signkey进行Md5加密,加密后的字符串大写。 */ - @Override public ResultData parkInitConfig(WxPark park) throws Exception { // TODO Auto-generated method stub From 2848ed437666aad1907009b26a9a64d220a6a392 Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Mon, 24 Jul 2023 17:15:28 +0800 Subject: [PATCH 9/9] fix car bug --- .../car/WxParkCallBackBaseController.java | 17 ++++++++++++++++- .../impl/dahua/DaHuaParkCallbackService.java | 7 +++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/car/WxParkCallBackBaseController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/car/WxParkCallBackBaseController.java index e586b1df0..3747d80ea 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/car/WxParkCallBackBaseController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/car/WxParkCallBackBaseController.java @@ -181,6 +181,9 @@ public class WxParkCallBackBaseController extends BaseController { } private Result handleSingleParkInCallBack(EnumCarVendor vendor,EnumCarCmd cmdType,ParkNotifyParam param ,Object sourceParam) { + if (null == param) { + return new Result(); + } String carNumber = param.getCarNumber(); @@ -250,6 +253,10 @@ public class WxParkCallBackBaseController extends BaseController { } private Result handleParkOutCallBackSingle(EnumCarVendor vendor,EnumCarCmd cmdType,ParkNotifyParam param,Object sourceParam) { + if (null == param) { + return new Result(); + } + ParkCacheUtils.removeCache(redisTemplate, vendor.getMessage(), param.getCarNumber()); WxCarCmdLog wxCarCmdLog = null; @@ -286,7 +293,11 @@ public class WxParkCallBackBaseController extends BaseController { } private Result handleUnbindCarCallBackSingle(EnumCarVendor vendor,EnumCarCmd cmdType,ParkNotifyParam param,Object sourceParam) { - WxCarCmdLog wxCarCmdLog = null; + if (null == param) { + return new Result(EnumETCPCode.SUCCESS.getCode(), EnumETCPCode.SUCCESS.getMessage()); + } + + WxCarCmdLog wxCarCmdLog = null; try { wxCarCmdLog = saveWxCarCmdLog(vendor, cmdType, sourceParam, param); }catch(MallinkException e) { @@ -325,6 +336,10 @@ public class WxParkCallBackBaseController extends BaseController { private Result handlePaidCallbackSingle(EnumCarVendor vendor,EnumCarCmd cmdType,ParkNotifyParam param,Object sourceParam) { + if (null == param) { + return new Result(EnumETCPCode.SUCCESS.getCode(), EnumETCPCode.SUCCESS.getMessage()); + } + WxCarCmdLog carCmdLogQ = new WxCarCmdLog(); String parkId = param.getParkId(); WxPark parkQ = new WxPark(); diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java index 673f9e97c..c8b8108cd 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/dahua/DaHuaParkCallbackService.java @@ -44,8 +44,8 @@ public class DaHuaParkCallbackService extends BaseParkService implements ParkCal WxCarJSOrderMapper wxCarJSOrderMapper; private String handleCarNumber(String carNumber) { - if (StringUtils.isBlank(carNumber)) { - return "空车牌"; + if (StringUtils.isBlank(carNumber) || "无牌车".equals(carNumber)) { + return null; } if (carNumber.contains("-")) { carNumber = carNumber.replaceAll("-", ""); @@ -68,6 +68,9 @@ public class DaHuaParkCallbackService extends BaseParkService implements ParkCal ParkNotifyParam p = new ParkNotifyParam(); String realCarNumber = handleCarNumber(carNumber); + if (StringUtils.isBlank(realCarNumber)) { + return null; + } p.setCarNumber(realCarNumber); p.setParkId(parkCode); p.setParkName(parkName);