From 70bf66a2817cd51877820ae1ec4c39647c5196e7 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 14 十二月 2023 14:00:17 +0800
Subject: [PATCH] 海康接口对接开发
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEventServiceImpl.java | 53 ++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 48 insertions(+), 5 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEventServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEventServiceImpl.java
index 9d7aed7..a3ab002 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEventServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEventServiceImpl.java
@@ -8,12 +8,14 @@
import com.doumee.core.haikang.model.param.BaseResponse;
import com.doumee.core.haikang.model.param.request.EventSubRequest;
import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
+import com.doumee.core.haikang.model.param.respose.OrgListResponse;
import com.doumee.core.haikang.model.param.respose.PrivilegeGroupInfoResponse;
import com.doumee.core.haikang.model.param.respose.PrivilegeGroupListResponse;
import com.doumee.core.haikang.service.HKService;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.DeviceRoleMapper;
import com.doumee.dao.business.model.DeviceRole;
+import com.doumee.dao.system.model.SystemDictData;
import com.hikvision.artemis.sdk.config.ArtemisConfig;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -41,9 +43,28 @@
ArtemisConfig.appKey = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_APPKEY).getCode();
ArtemisConfig.appSecret = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_APPSECRET).getCode();
HKConstants.https = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_HTTPS).getCode();
+ //鑾峰彇鏍圭粍缁囩紪鐮�
+ getRootOrgCode();
//寮�濮嬭闃呴棬绂佷簨浠躲�佽瀹簨浠躲�佸拰鍋滆溅鍦轰簨浠�
startHkEventSub();
return 0;
+ }
+ /**
+ * 鑾峰彇鏍圭粍缁囩紪鐮�
+ */
+ private void getRootOrgCode() {
+ SystemDictData org = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_ROOTORG_CODE);
+ if(org!=null){
+ String rootOrgId =org.getCode();
+ if(StringUtils.isBlank(rootOrgId)){
+ BaseResponse<OrgListResponse> res = HKService.getRootOrg(null);
+ if(res !=null && res.getData()!=null && StringUtils.isNotBlank(res.getData().getOrgIndexCode())){
+ org.setCode(res.getData().getOrgIndexCode());
+ org.setUpdateTime(new Date());
+ systemDictDataBiz.updateById( org);
+ }
+ }
+ }
}
/**
@@ -51,15 +72,37 @@
*/
public void startHkEventSub(){
EventSubRequest param = new EventSubRequest();
- param.setEventDest(systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_PUSH_URL).getCode());
+ String path =systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_PUSH_URL).getCode();
+ param.setEventDest(path+"/parks");
+ param.setEventTypes(new Integer[]{HKConstants.EventTypes.PARK_LINE_IN.getKey()
+ ,HKConstants.EventTypes.PARK_LINE_OUT.getKey()
+ ,HKConstants.EventTypes.PARK_PASS_IN.getKey()
+ ,HKConstants.EventTypes.PARK_PASS_OUT.getKey() });
+ HKService.eventSub(param);//鍋滆溅鍦轰簨浠�
+
+ param.setEventDest(path+"/visit");
+ param.setEventTypes(new Integer[]{HKConstants.EventTypes.VISIT_SIGN_OUT.getKey()
+ ,HKConstants.EventTypes.VISIT_SIGN_OUT.getKey()});
+ HKService.eventSub(param);//璁垮浜嬩欢
+
+ param.setEventDest(path+"/acs");
+ param.setEventTypes(new Integer[]{HKConstants.EventTypes.DOOR_FACE_AUTH_SUCCESS.getKey()});
+ HKService.eventSub(param);//闂ㄧ浜嬩欢
+
+ }
+ /**
+ * 鍙栨秷璁㈤槄闂ㄧ浜嬩欢銆佽瀹簨浠躲�佸拰鍋滆溅鍦轰簨浠�
+ */
+ @Override
+ public void cancelEventSub(){
+ EventSubRequest param = new EventSubRequest();
param.setEventTypes(new Integer[]{HKConstants.EventTypes.PARK_LINE_IN.getKey()
,HKConstants.EventTypes.PARK_LINE_OUT.getKey()
,HKConstants.EventTypes.PARK_PASS_IN.getKey()
,HKConstants.EventTypes.PARK_PASS_OUT.getKey()
- ,HKConstants.EventTypes.VISIT_SIGN_OUT.getKey()
- ,HKConstants.EventTypes.VISIT_SIGN_OUT.getKey()
- ,HKConstants.EventTypes.DOOR_FACE_AUTH_SUCCESS.getKey()});
- HKService.eventSub(param);
+ ,HKConstants.EventTypes.VISIT_SIGN_OUT.getKey(),
+ HKConstants.EventTypes.DOOR_FACE_AUTH_SUCCESS.getKey()});
+ HKService.cancelEventSub(param);//鍋滆溅鍦轰簨浠�
}
}
--
Gitblit v1.9.3