From 237904bd9a81280a9780e59454b4bcf36a5bd4df Mon Sep 17 00:00:00 2001 From: xiaohanzi Date: Wed, 8 Dec 2021 16:18:36 +0800 Subject: [PATCH] fix haikangweishi --- .../iformall/controller/WxCarController.java | 16 +++++++++++++++ .../service/park/ParkAdapterService.java | 2 ++ .../park/impl/bolink/BoLinkParkService.java | 6 ++++++ .../service/park/impl/cyf/CYFParkService.java | 5 +++++ .../park/impl/dahua/DaHuaParkService.java | 6 ++++++ .../HaiKangWeiShiParkService.java | 20 +++++++++++++++++++ .../impl/haikangweishi/HaiKangWeiShiUtil.java | 15 ++++++++++---- .../park/impl/jieshun/JieShunParkService.java | 8 +++++++- .../park/impl/shangan/ShangAnParkService.java | 5 +++++ .../service/park/impl/tjd/TJDParkService.java | 6 +++++- 10 files changed, 83 insertions(+), 6 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCarController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCarController.java index 581e47643..284019543 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCarController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCarController.java @@ -85,6 +85,22 @@ public class WxCarController extends BaseController { return wxPark; } + @ApiOperation(value = "车厂初始化配置", notes = "返回\n{\"vendor\":integer}") + @GetMapping("/parkInitConfig") + public ResultData parkInitConfig() { + // 1, get mall's park + WxPark park = getCurrentPark(getTenantInfo()); + if (park.getVendorType().equals(EnumCarVendor.CAR_ETCP.getCode())) { + return new ResultData(); + }else { + try { + return parkFactory.getParkService(park.getVendorType()).parkInitConfig(park); + } catch (Exception e) { + return new ResultData(Result.ERROR,"车厂初始化配置失败。"+e.getMessage()); + } + } + } + @ApiOperation(value = "获取车场支持的厂家", notes = "返回\n{\"vendor\":integer}") @GetMapping("/getVendor") public ResultData getVendor() { diff --git a/mallinkService/src/main/java/com/iformall/service/park/ParkAdapterService.java b/mallinkService/src/main/java/com/iformall/service/park/ParkAdapterService.java index 0be887611..f032410e2 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/ParkAdapterService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/ParkAdapterService.java @@ -15,6 +15,8 @@ import com.iformall.domain.vo.WxCouponOrderCarCVo; */ public interface ParkAdapterService { + ResultData parkInitConfig(WxPark park) throws Exception; + /** * 停车场初始化登陆 * @param paramMap diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/bolink/BoLinkParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/bolink/BoLinkParkService.java index e0655dcad..930b4c757 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/bolink/BoLinkParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/bolink/BoLinkParkService.java @@ -21,6 +21,12 @@ import com.iformall.service.park.impl.BaseParkService; @Service public class BoLinkParkService extends BaseParkService implements ParkAdapterService { + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + // TODO Auto-generated method stub + return null; + } + @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) { return null; diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/cyf/CYFParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/cyf/CYFParkService.java index b7e01b111..b10b25733 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/cyf/CYFParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/cyf/CYFParkService.java @@ -37,6 +37,11 @@ public class CYFParkService extends BaseParkService implements ParkAdapterServic CYFUtil cyf = new CYFUtil(); + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + // TODO Auto-generated method stub + return null; + } @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) throws Exception{ 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 f3e592338..051965ac4 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 @@ -21,6 +21,12 @@ public class DaHuaParkService extends BaseParkService implements ParkAdapterServ private final Logger logger = LoggerFactory.getLogger(this.getClass()); + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + // TODO Auto-generated method stub + return null; + } + @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) { return null; diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiParkService.java index d2446cde0..2bdefa03d 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiParkService.java @@ -17,6 +17,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; +import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.domain.po.WxCarJSOrder; @@ -90,6 +91,24 @@ public class HaiKangWeiShiParkService extends BaseParkService implements ParkAda RedisCacheUtils.cache(redisTemplate, "carStop:haikangtoken:"+park.getId(), token, 36000); } + + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + Map retMap = new HashMap(); + try { + JSONObject retObj = haikang.subscription(park, getCacheToken(park)); + if (retObj.getIntValue("code") == 0){ + return new ResultData(); + }else { + logger.error("haikangweishi parkInitConfig error. haikangResult: {}",retObj); + String msg = retObj.getString("msg"); + return new ResultData(retObj.getIntValue("code"), "当前海康威视停车场初始化配置失败:"+msg); + } + }catch(Exception e) { + return new ResultData(Result.ERROR, "当前海康威视停车场初始化配置失败:"+e.getMessage()); + } + } + @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) throws Exception{ return null; @@ -177,5 +196,6 @@ public class HaiKangWeiShiParkService extends BaseParkService implements ParkAda public ResultData getParkStatus(WxPark park) throws Exception{ return new ResultData(); } + } diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiUtil.java b/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiUtil.java index d245a1c95..1ad2b54d7 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiUtil.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiUtil.java @@ -148,26 +148,33 @@ public class HaiKangWeiShiUtil { /** * 消息订阅 3.1.8 + * * 这个接口需要你们实现的时候规定下: +1、POST格式, +2、接口返回参数JSON格式:{errcode:0, errmsg: "success",data:null} +3、接口建议接收到过车事件,立即返回接收成功 + +我这边根据这个 0 状态来判断你们是否接收成功,如果没成功,我这边会重发3次的 + * * @param clientId * @param clientSecret * @return */ - public JSONObject subscription(WxPark wxPark,String couponNo,String carNumber,String orderNo,String token){ + public JSONObject subscription(WxPark wxPark,String token){ String vendroParams = wxPark.getVendorParams(); JSONObject vp = JSON.parseObject(vendroParams); ArrayList list = new ArrayList(); list.add(new BasicNameValuePair("partnerAppKey", vp.getString("AppKey")));//商户编号 list.add(new BasicNameValuePair("projectId", vp.getString("projectId"))); - list.add(new BasicNameValuePair("eventTypes", carNumber)); + list.add(new BasicNameValuePair("eventTypes", "[\"771760131\",\"771760134\"]")); list.add(new BasicNameValuePair("subUrl", vp.getString("subUrl"))); String retCode = ProcBussiness(SUBSCRIPTION, list,token); if (StringUtils.isBlank(retCode)) { - throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(), "haikang useCoupon error. has no result"); + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(), "haikang subscription error. has no result"); } JSONObject result = JSON.parseObject(retCode); if (result.getInteger("code") != 0 ) { String message = result.getString("msg"); - throw new MallinkException(result.getInteger("code"), "haikang useCoupon error."+message); + throw new MallinkException(result.getInteger("code"), "haikang subscription error."+message); } return result; } diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/jieshun/JieShunParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/jieshun/JieShunParkService.java index d02705287..0bad0cd8d 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/jieshun/JieShunParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/jieshun/JieShunParkService.java @@ -101,7 +101,6 @@ public class JieShunParkService extends BaseParkService implements ParkAdapterSe RedisCacheUtils.cache(redisTemplate, "carStop:jieshuntoken:"+park.getId(), token, 3600); } - /** * 先去捷顺注册,调用登陆获取令牌,然后根据令牌调用别的接口 * http://ap.jieshun.cn:9088/apply/ 注册信息地址 fumao/iformall2020 @@ -117,6 +116,13 @@ public class JieShunParkService extends BaseParkService implements ParkAdapterSe 3、所有接口要带车牌的一律带横杠。格式如:粤-B12345。 4、无效的数据签名是指sn加密方式不对。sn加密方式是对p+signkey进行Md5加密,加密后的字符串大写。 */ + + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + // TODO Auto-generated method stub + return null; + } + @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) throws Exception{ return null; diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/shangan/ShangAnParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/shangan/ShangAnParkService.java index 15bcd427d..78b54f9ee 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/shangan/ShangAnParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/shangan/ShangAnParkService.java @@ -29,6 +29,11 @@ public class ShangAnParkService extends BaseParkService implements ParkAdapterSe @Autowired WxCouponOrderService wxCouponOrderService; + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + // TODO Auto-generated method stub + return null; + } @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) { diff --git a/mallinkService/src/main/java/com/iformall/service/park/impl/tjd/TJDParkService.java b/mallinkService/src/main/java/com/iformall/service/park/impl/tjd/TJDParkService.java index 03f3fbc4f..ac40928a3 100644 --- a/mallinkService/src/main/java/com/iformall/service/park/impl/tjd/TJDParkService.java +++ b/mallinkService/src/main/java/com/iformall/service/park/impl/tjd/TJDParkService.java @@ -55,6 +55,11 @@ public class TJDParkService extends BaseParkService implements ParkAdapterServic @Autowired WxCouponService couponService; + @Override + public ResultData parkInitConfig(WxPark park) throws Exception { + // TODO Auto-generated method stub + return null; + } @Override public String initLogin(Map paramMap, WxPark park, WxCUserBasicInfo member) { @@ -249,5 +254,4 @@ public class TJDParkService extends BaseParkService implements ParkAdapterServic public ResultData getParkStatus(WxPark park) { return null; } - }