Browse Source

fix

release_toaliyun_real
winter 2 years ago
parent
commit
1ed1d9d7be
3 changed files with 220 additions and 2 deletions
  1. +214
    -0
      mallinkCallback/src/main/java/com/iformall/controller/callback/car/haikangweishi/WxCarHaiKangWeiShiV2CallBackController.java
  2. +6
    -1
      mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java
  3. +0
    -1
      mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiParkService.java

+ 214
- 0
mallinkCallback/src/main/java/com/iformall/controller/callback/car/haikangweishi/WxCarHaiKangWeiShiV2CallBackController.java View File

@@ -0,0 +1,214 @@
package com.iformall.controller.callback.car.haikangweishi;

import com.iformall.common.Result;
import com.iformall.controller.callback.car.WxParkCallBackBaseController;
import com.iformall.enums.EnumCarCmd;
import com.iformall.enums.EnumCarVendor;
import com.iformall.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

/**
* @author: furunxin
* @Date: 2020/7/6 15:29
* @Description: 海康威视回调接口
*/

@Slf4j
@RestController
@RequestMapping("/hkwsv2CarCallback")
public class WxCarHaiKangWeiShiV2CallBackController extends WxParkCallBackBaseController {

@Autowired
WxParkService wxParkService;

@Autowired
WxCarCmdLogService wxCarCmdLogService;

@Autowired
WxCUserService wxCUserService;

@Autowired
WxCUserCarService wxCUserCarService;

@Autowired
WxCouponSendService wxCouponSendService;

@Autowired
WxCarPayRecordService wxCarPayRecordService;

@Autowired
WxCUserBasicInfoService wxCUserBasicInfoService;
/**
* 入场事件:

{
"method":"OnEventNotify",
"params":{
"ability":"vehicle_pass_in_event",
"eventType":771760131,
"events":[
{
"crossTime":"2021-07-01T17:29:27+08:00",
"crossType":1,
"eventIndexCode":"74b64514-4888-4f42-8cf7-22fed37d5dc8",
"eventType":3,
"resource":{
"deviceId":"3715149265421676",
"deviceSerial":"R20150664",
"direction":0,
"entranceId":"2063867554789264",
"entranceName":"前门1",
"parkId":"2064637172217744",
"parkName":"车库",
"resType":"roadway",
"roadWayId":"2064272439342992",
"roadWayName":"前门入口"
},
"stopType":11,
"vehicle":{
"plateColor":12,
"plateNo":"苏A23658",
"plateType":8,
"vehicleColor":12,
"vehicleType":12
}
}
],
"sendTime":"2021-07-01T17:29:29.315+08:00"
}
}

3 出场事件:

{
"method":"OnEventNotify",
"params":{
"ability":"vehicle_pass_out_event",
"eventType":771760134,
"events":[
{
"crossTime":"2021-07-01T17:31:17+08:00",
"crossType":1,
"eventIndexCode":"a5464f46-ba7b-4059-b657-5ebc2f3774a9",
"eventType":4,
"resource":{
"deviceId":"370573791833424",
"deviceSerial":"9b1037b5-8a95-4657-81f0-edf27f71d92f",
"direction":1,
"entranceId":"2063867554789264",
"entranceName":"前门1",
"parkId":"2064637172217744",
"parkName":"车库",
"resType":"roadway",
"roadWayId":"2064664422217616",
"roadWayName":"前门出口test"
},
"stopType":11,
"vehicle":{
"plateColor":12,
"plateNo":"苏A23658",
"plateType":8,
"vehicleColor":12,
"vehicleType":12
}
}
],
"sendTime":"2021-07-01T17:31:17.337+08:00"
}
}

4 图片事件:
{
"method":"OnEventNotify",
"params":{
"ability":"vehicle_pass_out_event",
"eventType":771760144,
"events":[
{
"crossTime":"2021-07-01T17:31:17+08:00",
"crossType":1,
"eventIndexCode":"a5464f46-ba7b-4059-b657-5ebc2f3774a9",
"eventType":4,
"resource":{
"deviceId":"370573791833424",
"deviceSerial":"9b1037b5-8a95-4657-81f0-edf27f71d92f",
"direction":1,
"entranceId":"2063867554789264",
"entranceName":"前门1",
"parkId":"2064637172217744",
"parkName":"车库",
"resType":"roadway",
"roadWayId":"2064664422217616",
"roadWayName":"前门出口test"
},
"stopType":11,
"vehicle":{
"plateColor":12,
"plateNo":"苏A23658",
"plateNoPicUrl":"62834762",
"plateType":8,
"vehicleColor":12,
"vehiclePicUrl":"62834762",
"vehicleType":12
}
}
],
"sendTime":"2021-07-01T17:31:19.659+08:00"
}
}
* @param paramMap
* @return
*
* 这个接口需要你们实现的时候规定下:
1、POST格式,
2、接口返回参数JSON格式:{errcode:0, errmsg: "success",data:null}
3、接口建议接收到过车事件,立即返回接收成功
*
*/
@PostMapping(value = "/notify")
public Map notify(@RequestBody Map<String, Object> paramMap) {
Map retMap = new HashMap();
try {
log.info("["+getIpAddr()+"] hkwsv2CarCallback notify: " + paramMap.toString());
Map params = (Map)paramMap.get("params");
String eventType = params.get("eventType").toString();
Result result = null;
if ("771760131".equals(eventType)) {
//解析车易付参数
result = super.parkInCallBack(EnumCarVendor.CAR_HAIKANGWEISHI_V2, EnumCarCmd.CAR_HAIKANGWEISHI_V2_CALLBACK_PARK_IN, paramMap);
}else if ("771760134".equals(eventType)) {
result = super.parkOutCallBack(EnumCarVendor.CAR_HAIKANGWEISHI_V2, EnumCarCmd.CAR_HAIKANGWEISHI_V2_CALLBACK_PARK_OUT, paramMap);
}
int errcode = 0;
String msg = "success";
if (null != result) {
if (result.code != Result.SUCCESS) {
errcode = result.code;
msg = result.message;
}
}else {
errcode = Result.ERROR;
msg = "no result.eventType["+eventType+"]";
}
retMap.put("errcode", errcode);
retMap.put("errmsg", msg);
} catch(Exception e) {
retMap.put("errcode", Result.ERROR);
retMap.put("errmsg", "notify error."+e.getLocalizedMessage());
log.error("haikangweishiv2 notity error "+paramMap.toString(),e);
}
retMap.put("data", null);
return retMap;
}
}

+ 6
- 1
mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java View File

@@ -54,7 +54,12 @@ public enum EnumCarCmd {
CAR_DAHUA_CALLBACK_PARK_IN(644,"大华进场通知"),
CAR_DAHUA_CALLBACK_PARK_OUT(645,"大华出场通知"),
CAR_DAHUA_CALLBACK_UNBIND(646,"大华解绑车牌通知"),
CAR_DAHUA_CALLBACK_PAID(647,"大华支付通知")
CAR_DAHUA_CALLBACK_PAID(647,"大华支付通知"),
CAR_HAIKANGWEISHI_V2_CALLBACK_PARK_IN(648,"海康v2进场通知"),
CAR_HAIKANGWEISHI_V2_CALLBACK_PARK_OUT(649,"海康v2出场通知"),
CAR_HAIKANGWEISHI_V2_CALLBACK_UNBIND(650,"海康v2解绑车牌通知"),
CAR_HAIKANGWEISHI_V2_CALLBACK_PAID(651,"海康v2支付通知"),
;

public static EnumCarCmd getEnum(Integer code) {


+ 0
- 1
mallinkService/src/main/java/com/iformall/service/park/impl/haikangweishi/HaiKangWeiShiParkService.java View File

@@ -153,7 +153,6 @@ public class HaiKangWeiShiParkService extends BaseParkService implements ParkAda
String _createTime = attribute.getString("entranceTime");//计费时间,格式为“yyyy-MM-dd HH:mi:ss”
String _endTime = attribute.getString("costTime");//离场时间,格式为“yyyy-MM-dd HH:mi:ss”
String payPath = "";
Integer freeMinute = (Integer)park.getVendorParamsByKey("freeMinute");
return new ParkStopFee(parkOrderId,haikang.utcToLocal(_createTime),haikang.utcToLocal(_endTime),
String.valueOf(attribute.getDouble("shouldCost")),appId,payPath,null,null,"0元请勿使用优惠券,无法退回。支付后15分钟内离场");
}


Loading…
Cancel
Save