From 1140f80aefef30b543c99aaed47bcbca731b24e2 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 08 十二月 2023 18:21:40 +0800
Subject: [PATCH] 海康接口对接开发

---
 server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java                                                |    3 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInResultRequest.java |    9 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java                                        |   68 ++-
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java                  |   16 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java                                        |    1 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsRequest.java            |   13 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkDataRequest.java     |    4 
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEventServiceImpl.java                   |   23 +
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java                               |   12 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/DoorsListRequest.java                     |   16 +
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/AcsDeviceInfoResponse.java                |    2 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsInfoResponse.java                    |   31 ++
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkParamRequest.java    |   24 +
 server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java                                                   |   39 ++
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java                   |  178 +++++++++++
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsParamRequest.java       |   15 +
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInfoRequest.java     |    8 
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java                    |   48 +-
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsListResponse.java                    |   15 +
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventDeviceDataRequest.java     |    6 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java        |   13 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsInfoRequest.java        |    5 
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java                    |  112 +++++++
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkRequest.java         |   13 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java                                            |   50 ++-
 server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java                                        |   20 +
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java    |   31 ++
 /dev/null                                                                                                                  |   28 -
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitInfoRequest.java    |    8 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitParamRequest.java   |    6 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventIdentityCardInfo.java   |    2 
 server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java                                           |   46 +-
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java                    |    4 
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java               |    4 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventCustomerNumInfo.java    |    2 
 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkPicRequest.java      |    4 
 36 files changed, 721 insertions(+), 158 deletions(-)

diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
index fafb7f7..79bd91b 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
@@ -1,29 +1,24 @@
 package com.doumee.api.business;
 
 import com.doumee.api.BaseController;
-import com.doumee.core.annotation.excel.ExcelExporter;
 import com.doumee.core.annotation.pr.PreventRepeat;
 import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
 import com.doumee.core.haikang.model.param.request.ParkListRequest;
-import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
+import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.model.ApiResponse;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.Device;
-import com.doumee.service.business.DeviceService;
-import com.doumee.service.business.HkSyncService;
 import com.doumee.service.business.impl.hksync.HkSyncDeviceServiceImpl;
 import com.doumee.service.business.impl.hksync.HkSyncParkServiceImpl;
 import com.doumee.service.business.impl.hksync.HkSyncPrivilegeServiceImpl;
+import com.doumee.service.business.impl.hksync.HkSyncPushServiceImpl;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.List;
 
 /**
  * @author 姹熻箘韫�
@@ -40,6 +35,8 @@
     private HkSyncParkServiceImpl hkSyncParkService;
     @Autowired
     private HkSyncPrivilegeServiceImpl hkSyncPrivilegeService;
+    @Autowired
+    private HkSyncPushServiceImpl hkSyncPushService;
 
     @PreventRepeat
     @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ラ棬绂佽澶囨帴鍙�")
@@ -58,19 +55,32 @@
         return ApiResponse.success(result);
     }
     @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ュ仠杞﹀簱鎺ュ彛")
+    @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ヨ瀹㈡潈闄愮粍鎺ュ彛")
     @PostMapping("/getPrivilege")
 //    @RequiresPermissions("business:hksync:privilege")
-    public ApiResponse getPrivilege(@RequestBody ParkListRequest param) {
-        String result = hkSyncPrivilegeService.syncHkParks(param);
+    public ApiResponse getPrivilege(@RequestBody PrivilegeGroupRequest param) {
+        String result = hkSyncPrivilegeService.syncPrivilege(param);
         return ApiResponse.success(result);
     }
     @PreventRepeat
-    @ApiOperation("銆愭捣搴枫�戜簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
-    @PostMapping("/push")
-//    @RequiresPermissions("business:hksync:privilege")
-    public ApiResponse push(@RequestBody ParkListRequest param) {
-        String result = hkSyncPrivilegeService.syncHkParks(param);
+    @ApiOperation("銆愭捣搴枫�戦棬绂佷簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
+    @PostMapping("/push/acs")
+    public ApiResponse pushAcs(@RequestBody EventAcsRequest param, HttpServletResponse response) {
+        String result = hkSyncPushService.dealAcsEvent(param,response);
+        return ApiResponse.success(result);
+    }
+    @PreventRepeat
+    @ApiOperation("銆愭捣搴枫�戣瀹簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
+    @PostMapping("/push/visit")
+    public ApiResponse pushVisit(@RequestBody EventVisitRequest param, HttpServletResponse response) {
+        String result = hkSyncPushService.dealVisitEvent(param,response);
+        return ApiResponse.success(result);
+    }
+    @PreventRepeat
+    @ApiOperation("銆愭捣搴枫�戝仠杞﹀満浜嬩欢璁㈤槄鎺ㄩ�佸鎺ュ鐞嗘帴鍙�")
+    @PostMapping("/push/parks")
+    public ApiResponse pushParks(@RequestBody EventParkRequest param, HttpServletResponse response) {
+        String result = hkSyncPushService.dealParkEvent(param,response);
         return ApiResponse.success(result);
     }
 }
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
index 60dcdcc..b785683 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
@@ -4,6 +4,7 @@
 import org.apache.shiro.session.mgt.SessionManager;
 import org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor;
 import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
+import org.apache.shiro.util.ThreadContext;
 import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
 import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -77,6 +78,7 @@
     @Bean
     public SecurityManager securityManager() {
         DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
+        ThreadContext.bind(securityManager);//鍔犱笂杩欏彞浠g爜鎵嬪姩缁戝畾
         securityManager.setRealm(shiroRealm);
         securityManager.setSessionManager(this.sessionManager());
         securityManager.setCacheManager(shiroCacheManager);
@@ -98,6 +100,7 @@
         map.put("/system/logout", "anon");
         map.put("/common/captcha", "anon");
         map.put("/statistics/**", "anon");
+        map.put("/business/hksync/push/**", "anon");
         map.put("/dingding/push", "anon");
 //        map.put("/ext/workorderExt/freshStatistics", "anon");
         map.put("/dingding/jsapiTicket", "anon");
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
index 4605753..b063441 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
@@ -49,6 +49,7 @@
         String facePicture= "/api/resource/v1/person/picture";//鎻愬彇鐢ㄦ埛浜鸿劯鐓х墖
         String privilegeGroup= "/api/visitor/v1/privilege/group";//鏌ヨ璁垮鏉冮檺缁�
         String eventSub= "/api/eventService/v1/eventSubscriptionByEventTypes";//浜嬩欢璁㈤槄
+        String doorSearch= "/api/resource/v2/door/search";//鏌ヨ闂ㄧ鐐瑰垪琛╲2
     }
 
     /**
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
index 2b7579a..19e86dc 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
@@ -13,8 +13,14 @@
 import org.apache.tomcat.util.bcel.Const;
 import org.yaml.snakeyaml.scanner.Constant;
 
+import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.net.HttpURLConnection;
+import java.net.InetSocketAddress;
+import java.net.Proxy;
+import java.net.URL;
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -26,7 +32,23 @@
 
 //	private static final Logger logger = LoggerFactory.getLogger(HKUtil.class);
 
-	public static void main(String[] args) throws ParseException {
+
+	public static void main(String[] args) throws Exception {
+//			Proxy proxy = new Proxy(Proxy.Type.DIRECT, new InetSocketAddress("127.0.0.1",Integer.valueOf("1080")));
+			URL realUrl = new URL("https://10.50.60.253/artemis/api/eventService/v1/eventSubscriptionByEventTypes");
+			HttpURLConnection con = (HttpURLConnection) realUrl.openConnection();
+		con.setRequestMethod("GET");
+//		con.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) ;Gecko/20100101 Firefox/57.0");
+		BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
+		String inputLine;
+		StringBuffer content = new StringBuffer();
+		while ((inputLine = in.readLine()) != null) {
+			content.append(inputLine);
+		}
+		in.close();
+		con.disconnect();
+
+		System.out.println(content.toString());
 
 	}
 	private static void saveInterfaceLog(String s, String result,Map<String, String> path) {
@@ -37,7 +59,7 @@
 			hkMonitoryLogDO.setCreateDate(new Date());
 			hkMonitoryLogDO.setIsdeleted(0);
 			hkMonitoryLogDO.setRequest(s);
-			hkMonitoryLogDO.setRemark(result);
+			hkMonitoryLogDO.setRepose(result);
 			hkMonitoryLogDO.setName(path.get(HKConstants.https));
 			hkMonitoryLogDO.setUrl(HKConstants.https + ArtemisConfig.host+path.get(HKConstants.https));
 			bean.create(hkMonitoryLogDO);
@@ -269,6 +291,17 @@
 		}
 	}
 	/**
+	 *	鑾峰彇闂ㄧ鐐瑰垪琛�
+	 * @param body
+	 * @return
+	 */
+	public static String doorSearch(String body) {
+		Map<String, String> path = getPath(HKConstants.InterfacePath.doorSearch);
+		String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", null);// post璇锋眰application/json绫诲瀷鍙傛暟
+		saveInterfaceLog(body,result,path);
+		return  result;
+	}
+	/**
 	 *	鑾峰彇闂ㄧ璁惧鍒楄〃
 	 * @param body
 	 * @return
@@ -360,18 +393,5 @@
 
 
 
-	/**
-     * 浼犲叆Data绫诲瀷鏃ユ湡锛岃繑鍥炲瓧绗︿覆绫诲瀷鏃堕棿锛圛SO8601鏍囧噯鏃堕棿锛�
-     * @param date
-     * @return
-     */
-    public static String getISO8601Timestamp(Date date){
-        TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai");
-        //TimeZone tz = TimeZone.getTimeZone("GMT-01");
-        DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
-        df.setTimeZone(tz);
-        String nowAsISO = df.format(date);
-        return nowAsISO;
-    }
 
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/DoorsListRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/DoorsListRequest.java
new file mode 100644
index 0000000..d687480
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/DoorsListRequest.java
@@ -0,0 +1,16 @@
+package com.doumee.core.haikang.model.param.request;
+
+import lombok.Data;
+
+@Data
+public class DoorsListRequest {
+
+ private String   name	;//string	False	鍚嶇О锛屾ā绯婃悳绱紝鏈�澶ч暱搴�32锛岃嫢鍖呭惈涓枃锛屾渶澶ч暱搴︽寚涓嶈秴杩囨寜鐓ф寚瀹氱紪鐮佺殑瀛楄妭闀垮害锛屽嵆getBytes(鈥渦tf-8鈥�).length
+    private String[]        regionIndexCodes	;//string[]	False	鍖哄煙缂栧彿,鍙互涓虹┖; String[]锛屾敮鎸佹牴鎹尯鍩熸壒閲忔煡璇紱鍖哄煙缂栧彿涓暟<=1000涓紱鍗曚釜闀垮害<=64Byte锛涳紝鍙粠鏌ヨ鍖哄煙鍒楄〃v2鎺ュ彛鑾峰彇杩斿洖鍙傛暟indexCode
+    private Boolean      isSubRegion;//	boolean	False	true鏃讹紝鎼滅储regionIndexCodes鍙婂叾瀛愬瓩鍖哄煙鐨勮祫婧愶紱  false鏃讹紝鍙悳绱� regionIndexCodes鐨勮祫婧�
+    private Integer      pageNo	;//integer	True	褰撳墠椤电爜
+    private Integer      pageSize;//	integer	True	鍒嗛〉澶у皬
+    private String[]     authCodes	;//string[]	False	鏉冮檺鐮侀泦鍚堬紝璇﹁闄勫綍A.3 璧勬簮鏉冮檺鐮佷腑闂ㄧ璁惧瀵瑰簲鐨勮祫婧愭潈闄愮爜
+   private Integer   orderBy	;//string	False	鎺掑簭瀛楁,娉ㄦ剰锛氭帓搴忓瓧娈靛繀椤绘槸鏌ヨ鏉′欢锛屽惁鍒欒繑鍥炲弬鏁伴敊璇�
+   private Integer orderType;//	string	False	闄嶅簭鍗囧簭,闄嶅簭锛歞esc 鍗囧簭锛歛sc
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkInResultRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkInResultRequest.java
deleted file mode 100644
index 55abab9..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkInResultRequest.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.doumee.core.haikang.model.param.request.event;
-
-import lombok.Data;
-
-@Data
-public class EventParkInResultRequest {
-    private EventParkRlsRequest    rlsResult	;//	鏀捐缁撴灉鏁版嵁	鏄�
-
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkRlsRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkRlsRequest.java
deleted file mode 100644
index b7e9e1a..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkRlsRequest.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.doumee.core.haikang.model.param.request.event;
-
-import lombok.Data;
-
-@Data
-public class EventParkRlsRequest {
-    private Integer   releaseAuth	;//	Number	鏀捐鏉冮檺	鏄�	64	鍙傝闄勫綍A.65 鏀捐鏉冮檺
-    private Integer releaseReason	;//	Number	鏀捐鍘熷洜	鏄�	64	鍙傝鍙傝闄勫綍A.67 鏀捐鍘熷洜
-    private Integer releaseResult	;//	Number	鏀捐缁撴灉	鏄�	64	鍙傝闄勫綍A.66 鏀捐缁撴灉
-    private Integer releaseResultEx		;//Number	鏂颁綋绯绘斁琛岀粨鏋�	鏄�	64	鍙傝闄勫綍A.68 鏂颁綋绯绘斁琛岀粨鏋�
-    private Integer releaseWay	;//	Number	鏀捐鏂瑰紡	鏄�	64	鍙傝闄勫綍A.69 鏀捐鏂瑰紡
-
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushRequest.java
deleted file mode 100644
index 1e32ff7..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushRequest.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.doumee.core.haikang.model.param.request.event;
-
-import lombok.Data;
-
-@Data
-public class EventPushRequest {
-
-//    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
-
-    private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
-    private EventPushParamRequest   params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
-
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventVisitDataRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventVisitDataRequest.java
deleted file mode 100644
index d0f751f..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventVisitDataRequest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.doumee.core.haikang.model.param.request.event;
-
-import lombok.Data;
-
-@Data
-public class EventVisitDataRequest {
-    private String   visitorId	;//String	璁垮id	鏄�	64	瀵瑰簲璁垮鏉ヨ璁板綍涓殑orderId瀛楁
-    private String   personName;//	String	濮撳悕	鏄�	32
-    private Integer  sex;//	Number	鎬у埆	鏄�		1-鐢�2-濂�
-    private Integer  idType;//	Number	璇佷欢绫诲瀷	鍚�		111锛氳韩浠借瘉
-    private String   idNo;//	String	璇佷欢鍙风爜	鍚�	64
-    private String   beVisitedPersonName;//	String	琚闂汉濮撳悕	鏄�	64
-    private String   beVisitedPersonOrg	;//String	琚闂汉鎵�灞炵粍缁�	鏄�	64
-    private String   visitorWorkUint;//	String	鏉ヨ鍗曚綅	鍚�	64
-    private String   visitorCode;//	String	璁垮楠岃瘉鐮�	鍚�	64
-    private String   purpose;//	String	鏉ヨ浜嬬敱	鍚�	64
-    private String   signOrg;//	String	璇佷欢绛惧彂鏈哄叧	鍚�	64
-    private String   startTime	;//String	鏉ヨ鏃堕棿	鍚�		ISO8601鏍煎紡锛歽yyy-MM-ddTHH:mm:ss+褰撳墠鏃跺尯    渚嬪鍖椾含鏃堕棿锛� 2018-07-26T15:00:00+08:00
-    private String   endTime;//	String	绂诲紑鏃堕棿	鍚�		ISO8601鏍煎紡锛歽yyy-MM-ddTHH:mm:ss+褰撳墠鏃跺尯    渚嬪鍖椾含鏃堕棿锛� 2018-07-26T15:00:00+08:00
-    private String   phone;//	String	鎵嬫満鍙风爜	鏄�	64
-    private String   carNo;//	String	杞︾墝鍙�	鍚�
-    private String   photoUrl;//	String	鐓х墖uri	鍚�
-    private String   captureUrl;//	String	鎶撴媿鍥剧墖uri	鍚�
-    private String   svrIndexCode;//	String	鍥剧墖瀛樺偍鏈嶅姟鍣ㄥ敮涓�鏍囪瘑	鍚�
-    private String   beVisitedPersonId;//	String	琚闂汉Id	鏄�
-    private String   beVisitedPersonOrgId;//	String	琚闂汉鎵�灞炵粍缁嘔d	鏄�
-
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsInfoRequest.java
similarity index 88%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsInfoRequest.java
index 92f2d36..f2a24d5 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsInfoRequest.java
@@ -1,10 +1,9 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.acs;
 
 import lombok.Data;
 
 @Data
-public class EventPushInfoRequest {
-
+public class EventAcsInfoRequest {
     private String  eventId;//	String	浜嬩欢鍞竴鏍囪瘑	鏄�	64
     private String  srcIndex;//	String	浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�	鏄�	64
     private String  srcType;//	String	浜嬩欢婧愮被鍨�	鏄�	16
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsParamRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsParamRequest.java
new file mode 100644
index 0000000..2efa0fd
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsParamRequest.java
@@ -0,0 +1,15 @@
+package com.doumee.core.haikang.model.param.request.event.acs;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventAcsParamRequest {
+
+
+    private String   sendTime;//	P	String	浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂�	鏄�	32	浜嬩欢鍙戦�佹椂闂�
+    private String    ability;//	P	String	浜嬩欢绫诲埆	鏄�	64	鏍囪瘑鍋滆溅鍦轰簨浠�
+    private List<EventAcsInfoRequest> events;//	P	Events[]	浜嬩欢淇℃伅	鏄�	涓嶉檺
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsRequest.java
new file mode 100644
index 0000000..d65750f
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventAcsRequest.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.request.event.acs;
+
+import lombok.Data;
+
+@Data
+public class EventAcsRequest {
+
+//    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+    private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
+    private EventAcsParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventDeviceDataRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventDeviceDataRequest.java
similarity index 92%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventDeviceDataRequest.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventDeviceDataRequest.java
index 3936f43..4a84b98 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventDeviceDataRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/EventDeviceDataRequest.java
@@ -1,11 +1,11 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.acs;
 
 import lombok.Data;
 
 @Data
-public class EventDeviceDataRequest<T> {
+public class EventDeviceDataRequest {
 
-    private ExtEventIdentityCardInfo ExtEventIdentityCardInfo;//	浜哄憳韬唤璇佷俊鎭�	鍚�	涓嶉檺
+    private  ExtEventIdentityCardInfo ExtEventIdentityCardInfo;//	浜哄憳韬唤璇佷俊鎭�	鍚�	涓嶉檺
     private ExtEventIdentityCardInfo  ExtEventCustomerNumInfo;//		閫氶亾浜嬩欢淇℃伅	鍚�	涓嶉檺
     private Integer  ExtAccessChannel	;//Number	浜哄憳閫氶亾鍙�	鍚�	32
     private Integer  ExtEventAlarmInID;//	Number	鎶ヨ杈撳叆/闃插尯閫氶亾	鍚�	32
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/ExtEventCustomerNumInfo.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventCustomerNumInfo.java
similarity index 83%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/ExtEventCustomerNumInfo.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventCustomerNumInfo.java
index 0a92924..e97e6eb 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/ExtEventCustomerNumInfo.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventCustomerNumInfo.java
@@ -1,4 +1,4 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.acs;
 
 import lombok.Data;
 
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/ExtEventIdentityCardInfo.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventIdentityCardInfo.java
similarity index 92%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/ExtEventIdentityCardInfo.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventIdentityCardInfo.java
index a23e527..6c8cf98 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/ExtEventIdentityCardInfo.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/acs/ExtEventIdentityCardInfo.java
@@ -1,4 +1,4 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.acs;
 
 import lombok.Data;
 
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkDataRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkDataRequest.java
similarity index 94%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkDataRequest.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkDataRequest.java
index 7d87dd8..13da555 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkDataRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkDataRequest.java
@@ -1,4 +1,4 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.parks;
 
 import lombok.Data;
 
@@ -14,7 +14,7 @@
     private Integer      mainLogo;//		Number	杞﹁締涓诲搧鐗�	鍚�
     private String     parkIndex	;//	String	鍋滆溅搴撶紪鍙�	鏄�	64
     private String      parkName	;//	String	鍋滆溅搴撳悕绉�	鏄�	64
-    private EventParkPicRequest  picUrl	;//Object		鍚�
+    private EventParkPicRequest picUrl	;//Object		鍚�
     private String     svrIndex;//	String	鍥剧墖鏈嶅姟鍣ㄧ紪鍙�	鍚�	32
     private Integer      plateBelieve	;//Number	杞︾墝缃俊搴�	鏄�	鍙栧�艰寖鍥达細0鈥�100
     private Integer     plateColor	;//Number	杞︾墝棰滆壊	鏄�	鍙傝闄勫綍A.15 杞︾墝棰滆壊
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInResultRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInResultRequest.java
new file mode 100644
index 0000000..4880c10
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInResultRequest.java
@@ -0,0 +1,9 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+@Data
+public class EventParkInResultRequest {
+
+        private EventParkParamRequest.EventParkRlsRequest rlsResult	;//	鏀捐缁撴灉鏁版嵁	鏄�
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInfoRequest.java
similarity index 77%
copy from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java
copy to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInfoRequest.java
index 92f2d36..dca079a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkInfoRequest.java
@@ -1,10 +1,10 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.parks;
 
+import com.doumee.core.haikang.model.param.request.event.acs.EventDeviceDataRequest;
 import lombok.Data;
 
 @Data
-public class EventPushInfoRequest {
-
+public class EventParkInfoRequest {
     private String  eventId;//	String	浜嬩欢鍞竴鏍囪瘑	鏄�	64
     private String  srcIndex;//	String	浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�	鏄�	64
     private String  srcType;//	String	浜嬩欢婧愮被鍨�	鏄�	16
@@ -14,5 +14,5 @@
     private Integer  timeout	;//Number	鑴夊啿瓒呮椂鏃堕棿	鏄�		鍗曚綅锛氱
     private String  happenTime	;//String	浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂达級	鏄�	64
     private String   srcParentIndex	;//String	浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶囩紪鍙�	鍚�	64
-    private EventDeviceDataRequest data;
+    private EventParkDataRequest data;
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkParamRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkParamRequest.java
new file mode 100644
index 0000000..2ebd21d
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkParamRequest.java
@@ -0,0 +1,24 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventParkParamRequest {
+
+
+    private String   sendTime;//	P	String	浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂�	鏄�	32	浜嬩欢鍙戦�佹椂闂�
+    private String    ability;//	P	String	浜嬩欢绫诲埆	鏄�	64	鏍囪瘑鍋滆溅鍦轰簨浠�
+    private List<EventParkInfoRequest> events;//	P	Events[]	浜嬩欢淇℃伅	鏄�	涓嶉檺
+
+    @Data
+    public static class EventParkRlsRequest {
+        private Integer   releaseAuth	;//	Number	鏀捐鏉冮檺	鏄�	64	鍙傝闄勫綍A.65 鏀捐鏉冮檺
+        private Integer releaseReason	;//	Number	鏀捐鍘熷洜	鏄�	64	鍙傝鍙傝闄勫綍A.67 鏀捐鍘熷洜
+        private Integer releaseResult	;//	Number	鏀捐缁撴灉	鏄�	64	鍙傝闄勫綍A.66 鏀捐缁撴灉
+        private Integer releaseResultEx		;//Number	鏂颁綋绯绘斁琛岀粨鏋�	鏄�	64	鍙傝闄勫綍A.68 鏂颁綋绯绘斁琛岀粨鏋�
+        private Integer releaseWay	;//	Number	鏀捐鏂瑰紡	鏄�	64	鍙傝闄勫綍A.69 鏀捐鏂瑰紡
+
+    }
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkPicRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkPicRequest.java
similarity index 75%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkPicRequest.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkPicRequest.java
index 3c73c71..e386098 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventParkPicRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkPicRequest.java
@@ -1,11 +1,9 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.parks;
 
 import lombok.Data;
 
 @Data
 public class EventParkPicRequest {
-
     private String    platePicUrl;//	String	杞︾墝鍥剧墖	鍚�	256
     private String    vehiclePicUrl;//	String	杞﹁締鍥剧墖	鍚�	256
-
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkRequest.java
new file mode 100644
index 0000000..7261041
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventParkRequest.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+@Data
+public class EventParkRequest {
+
+//    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+    private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
+    private EventParkParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java
new file mode 100644
index 0000000..8db98a6
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java
@@ -0,0 +1,31 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventVisitDataRequest {
+
+        private String   visitorId	;//String	璁垮id	鏄�	64	瀵瑰簲璁垮鏉ヨ璁板綍涓殑orderId瀛楁
+        private String   personName;//	String	濮撳悕	鏄�	32
+        private Integer  sex;//	Number	鎬у埆	鏄�		1-鐢�2-濂�
+        private Integer  idType;//	Number	璇佷欢绫诲瀷	鍚�		111锛氳韩浠借瘉
+        private String   idNo;//	String	璇佷欢鍙风爜	鍚�	64
+        private String   beVisitedPersonName;//	String	琚闂汉濮撳悕	鏄�	64
+        private String   beVisitedPersonOrg	;//String	琚闂汉鎵�灞炵粍缁�	鏄�	64
+        private String   visitorWorkUint;//	String	鏉ヨ鍗曚綅	鍚�	64
+        private String   visitorCode;//	String	璁垮楠岃瘉鐮�	鍚�	64
+        private String   purpose;//	String	鏉ヨ浜嬬敱	鍚�	64
+        private String   signOrg;//	String	璇佷欢绛惧彂鏈哄叧	鍚�	64
+        private String   startTime	;//String	鏉ヨ鏃堕棿	鍚�		ISO8601鏍煎紡锛歽yyy-MM-ddTHH:mm:ss+褰撳墠鏃跺尯    渚嬪鍖椾含鏃堕棿锛� 2018-07-26T15:00:00+08:00
+        private String   endTime;//	String	绂诲紑鏃堕棿	鍚�		ISO8601鏍煎紡锛歽yyy-MM-ddTHH:mm:ss+褰撳墠鏃跺尯    渚嬪鍖椾含鏃堕棿锛� 2018-07-26T15:00:00+08:00
+        private String   phone;//	String	鎵嬫満鍙风爜	鏄�	64
+        private String   carNo;//	String	杞︾墝鍙�	鍚�
+        private String   photoUrl;//	String	鐓х墖uri	鍚�
+        private String   captureUrl;//	String	鎶撴媿鍥剧墖uri	鍚�
+        private String   svrIndexCode;//	String	鍥剧墖瀛樺偍鏈嶅姟鍣ㄥ敮涓�鏍囪瘑	鍚�
+        private String   beVisitedPersonId;//	String	琚闂汉Id	鏄�
+        private String   beVisitedPersonOrgId;//	String	琚闂汉鎵�灞炵粍缁嘔d	鏄�
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitInfoRequest.java
similarity index 76%
copy from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java
copy to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitInfoRequest.java
index 92f2d36..94fb901 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushInfoRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitInfoRequest.java
@@ -1,10 +1,10 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.visit;
 
+import com.doumee.core.haikang.model.param.request.event.acs.EventDeviceDataRequest;
 import lombok.Data;
 
 @Data
-public class EventPushInfoRequest {
-
+public class EventVisitInfoRequest {
     private String  eventId;//	String	浜嬩欢鍞竴鏍囪瘑	鏄�	64
     private String  srcIndex;//	String	浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�	鏄�	64
     private String  srcType;//	String	浜嬩欢婧愮被鍨�	鏄�	16
@@ -14,5 +14,5 @@
     private Integer  timeout	;//Number	鑴夊啿瓒呮椂鏃堕棿	鏄�		鍗曚綅锛氱
     private String  happenTime	;//String	浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂达級	鏄�	64
     private String   srcParentIndex	;//String	浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶囩紪鍙�	鍚�	64
-    private EventDeviceDataRequest data;
+    private EventVisitDataRequest data;
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushParamRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitParamRequest.java
similarity index 67%
rename from server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushParamRequest.java
rename to server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitParamRequest.java
index 4b168fc..4cdca15 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/EventPushParamRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitParamRequest.java
@@ -1,17 +1,17 @@
-package com.doumee.core.haikang.model.param.request.event;
+package com.doumee.core.haikang.model.param.request.event.visit;
 
 import lombok.Data;
 
 import java.util.List;
 
 @Data
-public class EventPushParamRequest {
+public class EventVisitParamRequest {
 
 
     private String   sendTime;//	P	String	浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂�	鏄�	32	浜嬩欢鍙戦�佹椂闂�
     private String    ability;//	P	String	浜嬩欢绫诲埆	鏄�	64	鏍囪瘑鍋滆溅鍦轰簨浠�
     private String[] uids;//	String[]	鐢ㄦ埛id	鍚�	涓嶉檺
     private String[] clients	;//String[]	缁勪欢鏍囪瘑	鍚�	涓嶉檺
-    private List<EventPushInfoRequest> events;//	P	Events[]	浜嬩欢淇℃伅	鏄�	涓嶉檺
+    private List<EventVisitInfoRequest> events;//	P	Events[]	浜嬩欢淇℃伅	鏄�	涓嶉檺
 
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java
new file mode 100644
index 0000000..4093801
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitRequest {
+
+//    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+    private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
+    private EventVisitParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/AcsDeviceInfoResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/AcsDeviceInfoResponse.java
index 5b4d61a..976a301 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/AcsDeviceInfoResponse.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/AcsDeviceInfoResponse.java
@@ -8,7 +8,7 @@
 @Data
 public class AcsDeviceInfoResponse {
 
- private String   indexCode	;//string	False	璧勬簮鍞竴缂栫爜
+private String   indexCode	;//string	False	璧勬簮鍞竴缂栫爜
 private String   resourceType;//	string	False	璧勬簮绫诲瀷锛岃瑙侀檮褰旳.2 璧勬簮绫诲瀷
 private String   name;//	string	False	璧勬簮鍚嶇О
 private String   parentIndexCode;//	string	False	鐖剁骇璧勬簮缂栧彿
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsInfoResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsInfoResponse.java
new file mode 100644
index 0000000..bb1a753
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsInfoResponse.java
@@ -0,0 +1,31 @@
+package com.doumee.core.haikang.model.param.respose;
+
+import lombok.Data;
+
+@Data
+public class DoorsInfoResponse {
+    
+   private String   indexCode	;//string	False	璧勬簮鍞竴缂栫爜
+private String   resourceType	;//string	False	璧勬簮绫诲瀷锛岃瑙侀檮褰旳.2 璧勬簮绫诲瀷
+private String   name;//	string	False	璧勬簮鍚嶇О
+private String   doorNo;//	string	False	闂ㄧ鐐圭紪鍙�
+private String   channelNo	;//string	False	閫氶亾鍙�
+private String   parentIndexCode	;//string	False	鐖剁骇璧勬簮缂栧彿
+private String   controlOneId	;//string	False	涓�绾ф帶鍒跺櫒id
+private String   controlTwoId;//	string	False	浜岀骇鎺у埗鍣╥d
+private String   readerInId	;//string	False	璇诲崱鍣�1
+private String   readerOutId	;//string	False	璇诲崱鍣�2
+private String   treatyType	;//string	False	鎺ュ叆鍗忚锛岃瑙侀檮褰旳.6 缂栫爜璁惧鎺ュ叆鍗忚
+private String   doorSerial	;//number	False	闂ㄥ簭鍙�
+private String   regionIndexCode;//	string	False	鎵�灞炲尯鍩�
+private String   regionPath	;//string	False	鎵�灞炲尯鍩熻矾寰�,浠绗﹀彿鍒嗗壊锛屽寘鍚湰鑺傜偣
+private String   createTime	;//string	False	鍒涘缓鏃堕棿
+private String   updateTime;//	string	False	鏇存柊鏃堕棿
+private String   description;//	string	False	鎻忚堪
+private String   channelType;//	string	False	閫氶亾绫诲瀷锛宒oor锛氶棬绂佺偣
+private String   regionName	;//string	False	鍖哄煙鍚嶇О
+private String   regionPathName	;//string	False	鎵�灞炲尯鍩熻矾寰勫悕锛岀鍙�"/"杩涜鍒嗛殧
+private String   installLocation;//	string	False	瀹夎浣嶇疆锛岃瑙侀檮褰曢檮褰旳.81 瀹夎浣嶇疆
+    
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsListResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsListResponse.java
new file mode 100644
index 0000000..39f0304
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/DoorsListResponse.java
@@ -0,0 +1,15 @@
+package com.doumee.core.haikang.model.param.respose;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class DoorsListResponse {
+
+   private int total;//	number	False	鏌ヨ鏁版嵁璁板綍鎬绘暟
+   private int pageSize;//	number	False	姣忛〉璁板綍鎬绘暟
+   private int pageNo	;// number	False	褰撳墠椤电爜
+   private List<DoorsInfoResponse> list	;// object[]	False
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
index b4b788b..123e5b6 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -34,7 +34,7 @@
      * @return
      */
     public  static  BaseResponse<OrgListResponse>  getRootOrg(BaseRequst param){
-        log.error("銆愭捣搴疯幏鍙栨牴缁勭粐銆�================寮�濮�====");
+        log.info("銆愭捣搴疯幏鍙栨牴缁勭粐銆�================寮�濮�====");
         try {
             String res = HKTools.getRootOrg ();
             TypeReference typeReference =
@@ -52,7 +52,7 @@
      * @return
      */
     public  static  BaseResponse editOrg(OrgEditRequest param){
-        log.error("銆愭捣搴蜂慨鏀圭粍缁囥��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴蜂慨鏀圭粍缁囥��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
 
             String res = HKTools.editOrg(JSONObject.toJSONString(param));
@@ -71,7 +71,7 @@
      * @return
      */
     public  static  BaseResponse<OrgOrUserAddResponse>  addBatchOrg(List<OrgAddRequest> param){
-        log.error("銆愭捣搴锋柊澧炵粍缁囥��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴锋柊澧炵粍缁囥��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
 
             String res = HKTools.addBatchOrg(JSONObject.toJSONString(param));
@@ -90,7 +90,7 @@
      * @return
      */
     public  static  BaseResponse   delBatchOrg(OrgDelRequest param){
-        log.error("銆愭捣搴峰垹闄ょ粍缁囥��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴峰垹闄ょ粍缁囥��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
 
             String res = HKTools.delOrg(JSONObject.toJSONString(param));
@@ -109,7 +109,7 @@
      * @return
      */
     public  static  BaseResponse<UserAddResponse>  addUser(UserAddRequest param){
-        log.error("銆愭捣搴锋柊澧炰汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴锋柊澧炰汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.addUser(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -127,7 +127,7 @@
      * @return
      */
     public  static  BaseResponse editUser(UserAddRequest param){
-        log.error("銆愭捣搴蜂慨鏀逛汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴蜂慨鏀逛汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.editUser(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -145,7 +145,7 @@
      * @return
      */
     public  static  BaseResponse<OrgOrUserAddResponse>  addBatchUser(List<UserAddRequest> param){
-        log.error("銆愭捣搴锋壒閲忔柊澧炰汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴锋壒閲忔柊澧炰汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.addBatchUser(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -163,7 +163,7 @@
      * @return
      */
     public  static  BaseResponse<OrgOrUserAddFailureResponse>  delBatchUser(List<UserAddRequest> param){
-        log.error("銆愭捣搴锋壒閲忔柊澧炰汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴锋壒閲忔柊澧炰汉鍛樸��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.delBatchUser(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -181,7 +181,7 @@
      * @return
      */
     public  static  BaseResponse<FaceAddOrEditesponse>  addFace(List<FaceAddRequest> param){
-        log.error("銆愭捣搴锋坊鍔犱汉鑴镐俊鎭��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴锋坊鍔犱汉鑴镐俊鎭��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.addFace(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -199,7 +199,7 @@
      * @return
      */
     public  static  BaseResponse<FaceAddOrEditesponse>  editFace(List<FaceEditRequest> param){
-        log.error("銆愭捣搴风紪杈戜汉鑴镐俊鎭��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴风紪杈戜汉鑴镐俊鎭��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.editFace(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -217,7 +217,7 @@
      * @return
      */
     public  static  BaseResponse   delFace(List<FaceEditRequest> param){
-        log.error("銆愭捣搴峰垹闄や汉鑴镐俊鎭��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴峰垹闄や汉鑴镐俊鎭��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.editFace(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -235,7 +235,7 @@
      * @return
      */
     public static InputStream getFaceInputStream(FacePictureRequest param) {
-        log.error("銆愭捣搴蜂汉鑴歌闂浘鐗囨祦銆�================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴蜂汉鑴歌闂浘鐗囨祦銆�================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             InputStream res = HKTools.getFaceInputStream(JSONObject.toJSONString(param));
             log.error("銆愭捣搴蜂汉鑴歌闂浘鐗囨祦銆�================鎴愬姛====\n");
@@ -251,7 +251,7 @@
      * @return
      */
     public  static  BaseResponse<List<ParkListResponse>>   parkList(ParkListRequest param){
-        log.error("銆愭捣鑾峰彇杞﹀簱鍒楄〃鏁版嵁銆�================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣鑾峰彇杞﹀簱鍒楄〃鏁版嵁銆�================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.parkList(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -269,7 +269,7 @@
      * @return
      */
     public  static  BaseResponse<List<EntranceListResponse>>   entranceList(EntranceListRequest param){
-        log.error("銆愭捣鑾峰彇杞﹀簱鍒楄〃鏁版嵁銆�================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣鑾峰彇杞﹀簱鍒楄〃鏁版嵁銆�================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.entranceList(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -287,7 +287,7 @@
      * @return
      */
     public  static  BaseResponse   carChargeAddtion(CarChargeAddRequest param){
-        log.error("銆愭捣搴峰浐瀹氳溅杈嗗厖鍊笺��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴峰浐瀹氳溅杈嗗厖鍊笺��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.carChargeAddtion(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -305,7 +305,7 @@
      * @return
      */
     public  static  BaseResponse   carChargeDeletion(CarChargeDelRequest param){
-        log.error("銆愭捣搴峰浐瀹氳溅杈嗗彇娑堝寘鏈熴��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴峰浐瀹氳溅杈嗗彇娑堝寘鏈熴��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.carChargeDeletion(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -323,7 +323,7 @@
      * @return
      */
     public  static  BaseResponse<ParkReservationAddResponse>   parkReservationAddition(ParkReservationAddRequest param){
-        log.error("銆愭捣搴疯溅浣嶉绾︺��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯溅浣嶉绾︺��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.parkAddition(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -341,7 +341,7 @@
      * @return
      */
     public  static  BaseResponse   parkReservationDeletion(ParkReservationDelRequest param){
-        log.error("銆愭捣搴疯溅浣嶅彇娑堥绾︺��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯溅浣嶅彇娑堥绾︺��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.carChargeDeletion(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -359,7 +359,7 @@
      * @return
      */
     public  static  BaseResponse<VisitAppointmentResponse>   visitAppiontment(VisitAppointmentRequest param){
-        log.error("銆愭捣搴疯瀹㈤绾︺��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯瀹㈤绾︺��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.visitAppiontment(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -377,7 +377,7 @@
      * @return
      */
     public  static  BaseResponse   cancelVisitAppiontment(VisitAppointmentCancelRequest param){
-        log.error("銆愭捣搴疯瀹㈤绾﹀彇娑堛��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯瀹㈤绾﹀彇娑堛��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.visitCancel(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -395,7 +395,7 @@
      * @return
      */
     public  static  BaseResponse  outVisitAppiontment(VisitAppointmentOutRequest param){
-        log.error("銆愭捣搴疯瀹㈤绾︾绂汇��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯瀹㈤绾︾绂汇��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.visitOut(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -413,7 +413,7 @@
      * @return
      */
     public  static  BaseResponse<VisitAppointmentVistorResponse>   visitAppiontmentMDJ(VisitAppointmentMDJRequest param){
-        log.error("銆愭捣搴疯瀹㈠厤鐧昏棰勭害銆�================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯瀹㈠厤鐧昏棰勭害銆�================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.visitAppiontmentMDJ(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -431,7 +431,7 @@
      * @return
      */
     public  static  BaseResponse<PrivilegeGroupListResponse>   privilegeGroup(PrivilegeGroupRequest param){
-        log.error("銆愭捣搴疯瀹㈡潈闄愮粍鍒楄〃鏌ヨ銆�================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴疯瀹㈡潈闄愮粍鍒楄〃鏌ヨ銆�================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.privilegeGroup(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -445,11 +445,29 @@
         return  null;
     }
     /**
+     *娴峰悍闂ㄧ鐐规煡璇紙鍒嗛〉锛�
+     * @return
+     */
+    public  static  BaseResponse<DoorsListResponse>   doorSearch(DoorsListRequest param){
+        log.info("銆愭捣搴烽棬绂佺偣鏌ヨ銆�================寮�濮�===="+JSONObject.toJSONString(param));
+        try {
+            String res = HKTools.doorSearch(JSONObject.toJSONString(param));
+            TypeReference typeReference =
+                    new TypeReference< BaseResponse<DoorsListResponse> >(){};
+            BaseResponse<DoorsListResponse>   result = JSONObject.parseObject(res, typeReference.getType());
+            logResult(result,"娴峰悍闂ㄧ鐐规煡璇�");
+            return  result;
+        }catch (Exception e){
+            log.error("銆愭捣搴烽棬绂佺偣鏌ヨ銆�================澶辫触====锛歕n"+ e.getMessage());
+        }
+        return  null;
+    }
+    /**
      *闂ㄧ璁惧鏌ヨ锛堝垎椤碉級
      * @return
      */
     public  static  BaseResponse<AcsDeviceListResponse>   acsDeviceList(AcsDeviceListRequest param){
-        log.error("銆愭捣搴烽棬绂佽澶囨煡璇€��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴烽棬绂佽澶囨煡璇€��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.acsDeviceList(JSONObject.toJSONString(param));
             TypeReference typeReference =
@@ -467,7 +485,7 @@
      * @return
      */
     public  static  BaseResponse   eventSub(EventSubRequest param){
-        log.error("銆愭捣搴蜂簨浠惰闃呫��================寮�濮�===="+JSONObject.toJSONString(param));
+        log.info("銆愭捣搴蜂簨浠惰闃呫��================寮�濮�===="+JSONObject.toJSONString(param));
         String res = null;
         try {
             res = HKTools.eventSub(JSONObject.toJSONString(param));
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java b/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
index a878604..c9be133 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -41,6 +41,43 @@
     public DateUtil() {
     }
 
+    /**
+     * 浼犲叆Data绫诲瀷鏃ユ湡锛岃繑鍥炲瓧绗︿覆绫诲瀷鏃堕棿锛圛SO8601鏍囧噯鏃堕棿锛�
+     * @param date
+     * @return
+     */
+    public static String getISO8601Timestamp(Date date){
+        try {
+            TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai");
+            //TimeZone tz = TimeZone.getTimeZone("GMT-01");
+            DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'+'z");
+            df.setTimeZone(tz);
+            String nowAsISO = df.format(date);
+            return nowAsISO;
+        }catch (Exception e){
+        }
+        return  null;
+    }
+    public static Date getISO8601DateByStr(String date)  {
+        TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai");
+        if(date!=null ){
+            int i = date.indexOf("+");
+            if(i >0){
+                date = date.substring(0,i);
+            }
+        }
+        //TimeZone tz = TimeZone.getTimeZone("GMT-01");
+        DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
+//        DateFormat df = new SimpleDateFormat("2023-12-08 T 09:25:54.698+08:00");
+        df.setTimeZone(tz);
+        Date nowAsISO = null;
+        try {
+            nowAsISO = df.parse(date);
+        } catch (ParseException e) {
+        }
+        return nowAsISO;
+    }
+
     public static Date StringToDate2(String DATE) {
         if(StringUtils.isBlank(DATE)){
             return null;
@@ -2751,6 +2788,8 @@
     public static void main(String[] args) {
         try {
             System.out.println(RandomStringUtils.randomNumeric(3));
+            Date date = getISO8601DateByStr("2023-02-26T08:59:55.206+08:00");
+            System.out.println(getISO8601Timestamp(date));
         } catch (Exception ex) {
             ex.printStackTrace();
         }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java
index 3bafd26..eccc003 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java
@@ -1,8 +1,14 @@
 package com.doumee.service.business;
 
 import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.DoorsListRequest;
 import com.doumee.core.haikang.model.param.request.ParkListRequest;
 import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
+import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
+
+import javax.servlet.http.HttpServletResponse;
 
 /**
  * 鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃Service瀹氫箟
@@ -26,9 +32,23 @@
     String syncHkParks(ParkListRequest param);
 
     /**
+     * 鍚屾娴峰悍闂ㄧ鐐瑰垪琛ㄤ俊鎭紙鏆傛棤鐢級
+     * @param param
+     * @return
+     */
+    String syncDoors(DoorsListRequest param);
+
+    /**
      * 鍚屾娴峰悍璁垮鏉冮檺缁�
      * @param param
      * @return
      */
     String syncPrivilege(PrivilegeGroupRequest param);
+
+
+    String dealAcsEvent(EventAcsRequest param, HttpServletResponse response);
+
+    String dealVisitEvent(EventVisitRequest param, HttpServletResponse response);
+
+    String dealParkEvent(EventParkRequest param, HttpServletResponse response);
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index d41ae86..c3f0a31 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -15,6 +15,7 @@
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DESUtil;
+import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.Utils;
 import com.doumee.dao.business.DeviceRoleMapper;
 import com.doumee.dao.business.MemberMapper;
@@ -81,14 +82,11 @@
         String[] hkIds = getHkDeviceRoles(visits);
         //妫�楠屾嫓璁夸汉鏄惁鍚堟硶
         isValideVisitedUser(visits.getReceptMemberId());
-        //妫�鏌ラ殢璁夸汉鍛樻槸鍚﹀悎娉�,鐢熸垚闅忚浜哄憳鏂板闆嗗悎
-        List<Member> withUsers = isValideWithUsers(visits.getWithUserList());
-
         if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType()) &&!IdcardUtil.isValidCard(visits.getIdcardNo())){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
         }
         Date date = new Date();
-        //璁垮淇℃伅(浣跨敤韬唤璇佸彿鏌ヨ鏄惁宸插瓨鍦ㄦ敼鏅�氳瀹紝娌℃湁鍒欐柊澧烇紝瀛樺湪鍒欐洿鏂皁penid绛変俊鎭�)
+        //璁垮淇℃伅(浣跨敤韬唤璇佸彿鏌ヨ鏄惁宸插瓨鍦ㄦ敼鏅�氳瀹紝娌℃湁鍒欐柊澧烇紝瀛樺湪鍒欐洿鏂皁penid绛変俊鎭�),鍖呮嫭闅忚浜哄憳鏍¢獙鍜屽鐞�
         Member member =dealMemberAndVisits(visits);
         //鍒濆鍖栬瀹俊鎭�
         initVisitInfo(visits,date);
@@ -199,8 +197,8 @@
 
     private String visitAppiontment(Visits visits) {
         VisitAppointmentRequest param = new VisitAppointmentRequest();
-        param.setVisitStartTime(HKTools.getISO8601Timestamp(visits.getStarttime()));
-        param.setVisitEndTime(HKTools.getISO8601Timestamp(visits.getStarttime()));
+        param.setVisitStartTime(DateUtil.getISO8601Timestamp(visits.getStarttime()));
+        param.setVisitEndTime(DateUtil.getISO8601Timestamp(visits.getStarttime()));
         BaseResponse<VisitAppointmentResponse>  res = HKService.visitAppiontment(param);
         if(res==null || !StringUtils.equals(res.getCode(), HKConstants.RESPONSE_SUCCEE) || res.getData()==null){
           //濡傛灉鍙戣捣棰勭害澶辫触
@@ -215,7 +213,7 @@
     }
 
     /**
-     * 鏍¢鐢宠珛浜轰俊鎭紝鏈夊垯淇敼锛屾棤鍒欐柊澧烇紝骞剁粦瀹氭渶鏂皁penid鏁版嵁
+     * 璁垮淇℃伅(浣跨敤韬唤璇佸彿鏌ヨ鏄惁宸插瓨鍦ㄦ敼鏅�氳瀹紝娌℃湁鍒欐柊澧烇紝瀛樺湪鍒欐洿鏂皁penid绛変俊鎭�),鍖呮嫭闅忚浜哄憳鏍¢獙鍜屽鐞�
      * @param visits
      * @return
      */
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
index 0d22547..b9a7c91 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
@@ -1,34 +1,16 @@
 package com.doumee.service.business.impl.hksync;
 
-import com.doumee.biz.system.SystemDictDataBiz;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.haikang.model.HKConstants;
-import com.doumee.core.haikang.model.param.BaseResponse;
 import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
-import com.doumee.core.haikang.model.param.request.EventSubRequest;
+import com.doumee.core.haikang.model.param.request.DoorsListRequest;
 import com.doumee.core.haikang.model.param.request.ParkListRequest;
 import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
-import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse;
-import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse;
-import com.doumee.core.haikang.model.param.respose.ParkListResponse;
-import com.doumee.core.haikang.service.HKService;
-import com.doumee.core.utils.Constants;
-import com.doumee.core.utils.DateUtil;
-import com.doumee.dao.business.DeviceMapper;
-import com.doumee.dao.business.ParksMapper;
-import com.doumee.dao.business.model.Device;
-import com.doumee.dao.business.model.Parks;
+import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.service.business.HkSyncService;
-import com.hikvision.artemis.sdk.config.ArtemisConfig;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.PostConstruct;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import javax.servlet.http.HttpServletResponse;
 
 /**
  * 璁惧淇℃伅琛⊿ervice瀹炵幇
@@ -48,6 +30,11 @@
     public   String syncHkParks(ParkListRequest param){
         return null;
     }
+    @Override
+//    @Async
+    public String syncDoors(DoorsListRequest param){
+        return null;
+    }
     /**
      * 鍚屾娴峰悍闂ㄧ璁惧鏁版嵁
      * @param param
@@ -65,4 +52,19 @@
 
         return null;
     }
+
+    @Override
+    public String   dealAcsEvent(EventAcsRequest param, HttpServletResponse response){
+        return  null;
+    }
+
+    @Override
+    public String   dealVisitEvent(EventVisitRequest param, HttpServletResponse response){
+        return  null;
+    }
+
+    @Override
+    public String   dealParkEvent(EventParkRequest param, HttpServletResponse response){
+        return  null;
+    }
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
index 832bc36..285c101 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
@@ -1,5 +1,7 @@
 package com.doumee.service.business.impl.hksync;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.haikang.model.HKConstants;
@@ -57,13 +59,13 @@
             //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
             param = new AcsDeviceListRequest();
             param.setPageNo(curPage);
-            param.setPageSize(10000);
+            param.setPageSize(100);
             BaseResponse<AcsDeviceListResponse> response = HKService.acsDeviceList(param);
             if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
                 throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝娴峰悍鍚屾鏁版嵁澶辫触~");
             }
             AcsDeviceListResponse r = response.getData();
-            curTotal += 10000;
+            curTotal += 100;
             if(curTotal >= r.getTotal()){
                 hasNext = false;
             }
@@ -126,17 +128,21 @@
         model.setIsdeleted(Constants.ZERO);
         model.setIp(device.getIp());
         model.setHkDate(date);
-        model.setCreateDate(DateUtil.StringToDate2(device.getCreateTime()));
-        model.setEditDate(DateUtil.StringToDate2(device.getUpdateTime()));
-        model.setNo(device.getDeviceCode());
+        model.setCreateDate(DateUtil.getISO8601DateByStr(device.getCreateTime()));
+        model.setEditDate(DateUtil.getISO8601DateByStr(device.getUpdateTime()));
+        model.setNo(device.getDevSerialNum());
         model.setHkId(device.getIndexCode());
         model.setName(device.getName());
         model.setHkStatus(Constants.ONE);
+        model.setManufature(device.getManufacturer());
         model.setType(Constants.ZERO);
+//        model.setNo(device.getDevSerialNum());
+//        model.setChannelNo(device);
         model.setResourceType(device.getResourceType());
         model.setDevTypeCode(device.getDevTypeCode());
         model.setManufature(device.getManufacturer());
         model.setPort(device.getPort());
+        model.setRemark(JSONObject.toJSONString(device));
         return  model;
     }
 
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java
new file mode 100644
index 0000000..5ff883d
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java
@@ -0,0 +1,178 @@
+package com.doumee.service.business.impl.hksync;
+
+import com.alibaba.fastjson.JSONObject;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.param.BaseResponse;
+import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.DoorsListRequest;
+import com.doumee.core.haikang.model.param.respose.DoorsInfoResponse;
+import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse;
+import com.doumee.core.haikang.model.param.respose.DoorsInfoResponse;
+import com.doumee.core.haikang.model.param.respose.DoorsListResponse;
+import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.dao.business.DeviceMapper;
+import com.doumee.dao.business.model.Device;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 闂ㄧ鐐逛俊鎭〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+public class HkSyncDoorsServiceImpl extends HkSyncBaseServiceImpl {
+
+    @Autowired
+    private DeviceMapper deviceMapper;
+
+    /**
+     * 鍚屾娴峰悍闂ㄧ璁惧鏁版嵁
+     * @param param
+     * @return
+     */
+    @Override
+//    @Async
+    public String syncDoors(DoorsListRequest param){
+        List<Device> deleteList = new ArrayList<>();
+        List<Device> addList = new ArrayList<>();
+        List<Device> editList = new ArrayList<>();
+        List<DoorsInfoResponse> allHkList = new ArrayList<>();
+        Date date = new Date();
+        //鏌ヨ鍏ㄩ儴闂ㄧ璁惧鏁版嵁
+        List<Device> allList = deviceMapper.selectList(null);
+        boolean hasNext = true;
+        int curTotal = 0;
+        int curPage = 1;
+        while (hasNext){
+            //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
+            param = new DoorsListRequest();
+            param.setPageNo(curPage);
+            param.setPageSize(100);
+            BaseResponse<DoorsListResponse> response = HKService.doorSearch(param);
+            if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
+                throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝娴峰悍鍚屾鏁版嵁澶辫触~");
+            }
+            DoorsListResponse r = response.getData();
+            curTotal += 100;
+            if(curTotal >= r.getTotal()){
+                hasNext = false;
+            }
+            if(r.getList() == null || r.getList().size()==0){
+                hasNext =false;
+            }else{
+                allHkList.addAll(r.getList());
+            }
+            curPage++;
+        }
+        /**
+         * 鑾峰彇澧炲垹鏀规暟鎹泦鍚�
+         */
+        getDataChangeList(allList,allHkList,addList,editList,deleteList,date);
+        if(deleteList.size()>0){
+            //閫昏緫鍒犻櫎
+            for(Device d : deleteList){
+                deviceMapper.updateById(d);
+            }
+        }
+        if(addList.size()>0){
+            deviceMapper.insertBatchSomeColumn(addList);
+        }
+        if(editList.size()>0){
+            for(Device d : editList){
+                deviceMapper.updateById(d);
+            }
+        }
+        return "鍚屾鏁版嵁锛氭柊澧炪��"+addList.size()+"銆戞潯锛屾洿鏂般��"+editList.size()+"銆戞潯锛屽垹闄ゃ��"+deleteList.size()+"銆戞潯";
+    }
+
+    private void getDataChangeList(List<Device> allList, List<DoorsInfoResponse> allHkList, List<Device> addList, List<Device> editList,List<Device> deleteList, Date date) {
+        if(allHkList!=null && allHkList.size()>0){
+            for(DoorsInfoResponse device : allHkList){
+                Device model = getExistedDevice(device,allList);
+                if(model !=null){
+                    //濡傛灉宸插瓨鍦紝鍒欐洿鏂版暟鎹�
+                    model =  initDataByHkData(model,device,date);
+                    editList.add(model);
+                }else{
+                    //濡傛灉涓嶅瓨鍦紝鍒欐柊澧炴暟鎹�
+                    model = new Device();
+                    model =  initDataByHkData(model,device,date);
+                    addList.add(model);
+                }
+            }
+        }
+        //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
+        getDeleteList(allList,allHkList,deleteList,date);
+    }
+
+    /**
+     * 鍒濆鍖栨捣搴峰叆搴撴暟鎹�
+     * @param model
+     * @param device
+     * @param date
+     * @return
+     */
+    private Device initDataByHkData(Device model, DoorsInfoResponse device,Date date) {
+        model.setIsdeleted(Constants.ZERO);
+        model.setHkDate(date);
+        model.setCreateDate(DateUtil.getISO8601DateByStr(device.getCreateTime()));
+        model.setEditDate(DateUtil.getISO8601DateByStr(device.getUpdateTime()));
+        model.setNo(device.getDoorSerial());
+        model.setHkId(device.getIndexCode());
+        model.setName(device.getName());
+        model.setHkStatus(Constants.ONE);
+        model.setType(Constants.ZERO);
+        model.setChannelNo(device.getChannelNo());
+        model.setResourceType(device.getResourceType());
+        model.setRemark(JSONObject.toJSONString(device));
+        return  model;
+    }
+
+    private Device getExistedDevice(DoorsInfoResponse device, List<Device> allList) {
+        if(allList.size()>0){
+            for(Device r : allList){
+                if(StringUtils.equals(r.getHkId(), device.getIndexCode())){
+                    //琛ㄧず鏈垹闄�
+                    return  r;
+                }
+            }
+        }
+        return  null;
+    }
+
+    private void getDeleteList(List<Device> allList, List<DoorsInfoResponse> allHkList,List<Device> deleteList ,Date date) {
+        if(allList!=null && allList.size()>0){
+            for(Device device : allList){
+                if(isDeletedDevice(device,allHkList)){
+                    device.setIsdeleted(Constants.ONE);
+                    device.setEditDate(date);
+                    deleteList.add(device);
+                }
+            }
+        }
+    }
+
+    private boolean isDeletedDevice(Device device, List<DoorsInfoResponse> allHkList) {
+        if(allHkList.size()>0){
+            for(DoorsInfoResponse r : allHkList){
+                if(StringUtils.equals(device.getHkId(), r.getIndexCode())){
+                    //琛ㄧず鏈垹闄�
+                    return  false;
+                }
+            }
+        }
+        return  true;
+
+    }
+    
+}
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 46d08ba..a6e5ae8 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
@@ -43,10 +43,10 @@
         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();
-        //寮�濮嬭闃呴棬绂佷簨浠躲�佽瀹簨浠躲�佸拰鍋滆溅鍦轰簨浠�
-        startHkEventSub();
         //鑾峰彇鏍圭粍缁囩紪鐮�
         getRootOrgCode();
+        //寮�濮嬭闃呴棬绂佷簨浠躲�佽瀹簨浠躲�佸拰鍋滆溅鍦轰簨浠�
+        startHkEventSub();
         return  0;
     }
     /**
@@ -72,15 +72,22 @@
      */
     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()
-                ,HKConstants.EventTypes.VISIT_SIGN_OUT.getKey()
-                ,HKConstants.EventTypes.VISIT_SIGN_OUT.getKey()
-                ,HKConstants.EventTypes.DOOR_FACE_AUTH_SUCCESS.getKey()});
-        HKService.eventSub(param);
+                ,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);//闂ㄧ浜嬩欢
 
     }
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
index 2ec7d53..5a769c6 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -105,8 +105,8 @@
         model.setIsdeleted(Constants.ZERO);
         model.setName(device.getParkName());
         model.setHkDate(date);
-        model.setCreateDate(DateUtil.StringToDate2(device.getCreateTime()));
-        model.setEditDate(DateUtil.StringToDate2(device.getUpdateTime()));
+        model.setCreateDate(DateUtil.getISO8601DateByStr(device.getCreateTime()));
+        model.setEditDate(DateUtil.getISO8601DateByStr(device.getUpdateTime()));
         model.setHkId(device.getParkIndexCode());
         model.setHkStatus(Constants.ONE);
         return  model;
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
index 0ff9722..f8bd711 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
@@ -55,13 +55,13 @@
             //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
             param = new PrivilegeGroupRequest();
             param.setPageNo(curPage);
-            param.setPageSize(10000);
+            param.setPageSize(100);
             BaseResponse<PrivilegeGroupListResponse> response = HKService.privilegeGroup(param);
             if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
                 throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝娴峰悍鍚屾鏁版嵁澶辫触~");
             }
             PrivilegeGroupListResponse r = response.getData();
-            curTotal += 10000;
+            curTotal += 100;
             if(curTotal >= r.getTotal()){
                 hasNext = false;
             }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
new file mode 100644
index 0000000..ea07eab
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -0,0 +1,112 @@
+package com.doumee.service.business.impl.hksync;
+
+import com.alibaba.fastjson.JSONObject;
+import com.doumee.config.SpringContextUtil;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
+import com.doumee.dao.business.model.InterfaceLog;
+import com.doumee.service.business.InterfaceLogService;
+import com.hikvision.artemis.sdk.config.ArtemisConfig;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.Date;
+
+/**
+ * 璁垮鏉冮檺缁勪俊鎭〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+@Slf4j
+public class HkSyncPushServiceImpl extends HkSyncBaseServiceImpl {
+
+    @Autowired
+    private InterfaceLogService interfaceLogService;
+    /**
+     * 娴峰悍闂ㄧ浜嬩欢鎺ㄩ��
+     * @param param
+     * @param response
+     * @return
+     */
+    @Override
+    public String   dealAcsEvent(EventAcsRequest param, HttpServletResponse response){
+        log.info("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========寮�濮�=========锛歕n"+JSONObject.toJSONString(param));
+        String result = null;
+        try {
+
+
+            log.error("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========鎴愬姛=======");
+        }catch (Exception e) {
+
+            log.error("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========澶辫触=======锛歕n" + e.getMessage());
+        }finally {
+            saveInterfaceLog(param,"/business/hksync/push/acs",result);
+        }
+        return  null;
+
+    }
+    /**
+     * 娴峰悍璁垮浜嬩欢鎺ㄩ��
+     * @param param
+     * @param response
+     * @return
+     */
+    @Override
+    public String   dealVisitEvent(EventVisitRequest param, HttpServletResponse response){
+        log.info("銆愭捣搴疯瀹簨浠舵帹閫併��==========寮�濮�=======锛歕n"+JSONObject.toJSONString(param));
+        String result = null;
+        try {
+
+            log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========鎴愬姛=======");
+        }catch (Exception e){
+
+            log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========澶辫触=======锛歕n"+e.getMessage());
+        }
+        saveInterfaceLog(param,"/business/hksync/push/visit",result);
+        return  null;
+
+    }
+
+    /**
+     * 娴峰悍鍋滆溅鍦轰簨浠舵帹閫�
+     * @param param
+     * @param response
+     * @return
+     */
+    @Override
+    public String   dealParkEvent(EventParkRequest param, HttpServletResponse response){
+        String result = null;
+        log.info("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========寮�濮�=========锛歕n"+JSONObject.toJSONString(param));
+        try {
+
+            log.error("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========鎴愬姛=======");
+        }catch (Exception e){
+
+            log.error("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========澶辫触=======锛歕n"+e.getMessage());
+        }
+        saveInterfaceLog(param,"/business/hksync/push/parks",result);
+        return  null;
+    }
+
+
+    private void saveInterfaceLog(Object param, String path,String result) {
+        InterfaceLog hkMonitoryLogDO=new InterfaceLog();
+        hkMonitoryLogDO.setType(1);
+        hkMonitoryLogDO.setCreateDate(new Date());
+        hkMonitoryLogDO.setIsdeleted(0);
+        if(param!=null){
+            hkMonitoryLogDO.setRequest(JSONObject.toJSONString(param));
+        }
+        hkMonitoryLogDO.setRepose(result);
+        hkMonitoryLogDO.setName(path);
+        hkMonitoryLogDO.setUrl(path);
+        interfaceLogService.create(hkMonitoryLogDO);
+    }
+
+
+}

--
Gitblit v1.9.3