From 42f57295f5fe64132c11a25f55cd25c3c8acf167 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 28 八月 2024 15:35:55 +0800
Subject: [PATCH] 最新版本

---
 server/system_service/src/main/java/com/doumee/core/utils/Constants.java                                                                    |    6 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsDataRequest.java       |   28 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformDataInfoRequest.java                                     |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformNumByStatusRequest.java                                  |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformRequest.java               |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsInfoRequest.java       |   20 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsParamRequest.java      |   17 +
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventImageInfoRequest.java              |   11 +
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformInfoRequest.java           |   20 ++
 server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java                                                      |    3 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformLastMonthListResponse.java                              |   22 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformParamRequest.java          |   17 +
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java                                |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java                                              |   10 
 server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java                                                     |   16 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformAttrInfoRequest.java       |   14 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java                              |  184 ++++++++++++++++++++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java                                                 |   27 ++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java                                                 |   16 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java                              |   19 +-
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformStatusInfoRequest.java     |   18 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformDataRequest.java           |   28 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsStatusInfoRequest.java |   18 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsRequest.java           |    4 
 24 files changed, 462 insertions(+), 46 deletions(-)

diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
index 43106c6..7d0eb08 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -154,12 +154,6 @@
     // 瓒呮椂棰勮閰嶇疆
     public static final String TIMEOUT_WARNING = "TIMEOUT_WARNING";
     // FTP鏂囦欢鏈嶅姟鍣ㄨ祫婧愯闂湴鍧�
-    //鏈堝彴棰勭害鎸囧崡
-    public static final String PLATFORM_BOOKING_TIPS = "PLATFORM_BOOKING_TIPS";
-    //鏈堝彴瀵艰鍥�
-    public static final String PLATFORM_GUIDEMAP = "PLATFORM_GUIDEMAP";
-
-
     public static String getRandom6Num( ) {
         Random random = new Random();
         StringBuilder sb = new StringBuilder();
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
index 144d6dc..582ed58 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
@@ -4,8 +4,8 @@
 import com.doumee.core.haikang.model.param.request.*;
 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.parks.EventPlatCarstatusRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformCarsRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.model.ApiResponse;
 import com.doumee.dao.business.model.Device;
@@ -108,15 +108,15 @@
         return ApiResponse.success(null);
     }
     @ApiOperation("銆愭捣搴枫�戞湀鍙板伐浣滅姸鎬佷簨浠舵帹閫�")
-    @PostMapping("/platform/workstatus")
-    public ApiResponse workstatus(@RequestBody EventPlatWorkstatusRequest param, HttpServletResponse response) {
-         hkSyncPushService.dealWorkstatusEvent(param,response);
+    @PostMapping("/push/platform/workstatus")
+    public ApiResponse pushPlatformStatus(@RequestBody EventPlatformRequest param, HttpServletResponse response) {
+         hkSyncPushService.dealPlatformStatusEvent(param,response);
         return ApiResponse.success(null);
     }
     @ApiOperation("銆愭捣搴枫�戞湀鍙拌溅杈嗙姸鎬佷簨浠舵帹閫�")
-    @PostMapping("/platform/carstatus")
-    public ApiResponse carstatus(@RequestBody EventPlatCarstatusRequest param, HttpServletResponse response) {
-         hkSyncPushService.dealCarstatusEvent(param,response);
+    @PostMapping("/push/platform/carstatus")
+    public ApiResponse pushPlatformCarStatus(@RequestBody EventPlatformCarsRequest param, HttpServletResponse response) {
+         hkSyncPushService.dealPlatformCarsEvent(param,response);
         return ApiResponse.success(null);
     }
 }
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
index 9118d7a..847cb74 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
@@ -7,6 +7,8 @@
 import com.doumee.core.haikang.model.param.request.*;
 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.parks.EventPlatformCarsRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.model.ApiResponse;
@@ -130,6 +132,20 @@
         String result = hkSyncPushService.dealParkEvent(param,response);
         return ApiResponse.success(result);
     }
+    @ApiOperation("銆愭捣搴枫�戞湀鍙板伐浣滅姸鎬佷簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
+    @PostMapping("/push/platform/workstatus")
+    @LoginNoRequired
+    public ApiResponse pushPlatformStatus(@RequestBody EventPlatformRequest param, HttpServletResponse response ){
+        String result = hkSyncPushService.dealPlatformStatusEvent(param,response);
+        return ApiResponse.success(result);
+    }
+    @ApiOperation("銆愭捣搴枫�戞湀鍙拌溅杈嗙姸鎬佷簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
+    @PostMapping("/push/platform/carstatus")
+    @LoginNoRequired
+    public ApiResponse pushPlatformCarStatus(@RequestBody EventPlatformCarsRequest param, HttpServletResponse response ){
+        String result = hkSyncPushService.dealPlatformCarsEvent(param,response);
+        return ApiResponse.success(result);
+    }
     @PreventRepeat
     @ApiOperation("銆愭捣搴枫�戝彇娑堣闃呬簨浠�")
     @PostMapping("/cancelEventSub")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java
index a1af0d7..6342791 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java
@@ -34,6 +34,19 @@
         return ApiResponse.success(new WaterByMonthResponse());
     }
     @PreventRepeat
+    @ApiOperation("銆愮敤姘撮噺銆戣繎12涓湀鐢ㄦ按閲忎俊鎭垪琛�")
+    @PostMapping("/water/lastMonthsDataList")
+    @LoginNoRequired
+    public ApiResponse<List<PlatformLastMonthListResponse>> lastMonthsWaterList( ) {
+        return ApiResponse.success(new ArrayList<>());
+    }
+    @ApiOperation("銆愮敤姘旈噺銆戣繎12涓湀鐢ㄦ皵閲忎俊鎭垪琛�")
+    @PostMapping("/gas/lastMonthsDataList")
+    @LoginNoRequired
+    public ApiResponse<List<PlatformLastMonthListResponse>> lastMonthsGasList () {
+        return ApiResponse.success(new ArrayList<>());
+    }
+    @PreventRepeat
     @ApiOperation("銆愮敤姘旈噺銆戞湰鏈堛�佷笂鏈堝拰鍘诲勾鍚屾湀")
     @PostMapping("/gas/dataByMonth")
     @LoginNoRequired
@@ -48,31 +61,31 @@
         return ApiResponse.success(new PlatformOrderNumByDateResponse());
     }
     @PreventRepeat
-    @ApiOperation("銆愭湀鍙般�戞湀鍙颁釜鐘舵�佹暟閲忕粺璁�")
+    @ApiOperation("銆愭湀鍙般�戞湀鍙板悇鐘舵�佹暟閲忕粺璁�")
     @PostMapping("/platform/totalNumByStatus")
     @LoginNoRequired
-    public ApiResponse<PlatformNumByStatusResponse> totalNumByStatus(@RequestBody PlatformNumByStatusRequest param) {
+    public ApiResponse<PlatformNumByStatusResponse> totalNumByStatus( ) {
         return ApiResponse.success(new PlatformNumByStatusResponse());
     }
     @PreventRepeat
     @ApiOperation("銆愭湀鍙般�戞湀鍙板綋鍓嶄綔涓氫俊鎭垪琛�")
     @PostMapping("/platform/workingDataList")
     @LoginNoRequired
-    public ApiResponse<List<PlatformDataListResponse>> platformWorkingDataList(@RequestBody PlatformDataListRequest param) {
+    public ApiResponse<List<PlatformDataListResponse>> platformWorkingDataList( ) {
         return ApiResponse.success(new ArrayList<>());
     }
     @PreventRepeat
     @ApiOperation("銆愭湀鍙般�戞湀鍙颁綔涓氳鎯呬俊鎭�")
     @PostMapping("/platform/workDataInfo")
     @LoginNoRequired
-    public ApiResponse<PlatformDataInfoResponse> platformWorkingDataList(@RequestBody PlatformDataInfoRequest param) {
+    public ApiResponse<PlatformDataInfoResponse> platformWorkingDataInfo(@RequestBody PlatformDataInfoRequest param) {
         return ApiResponse.success(new PlatformDataInfoResponse());
     }
     @PreventRepeat
     @ApiOperation("銆愭湀鍙般�戝綋鍓嶈溅杈嗙姸鎬佹暟閲忕粺璁�")
     @PostMapping("/platform/carStatusNum")
     @LoginNoRequired
-    public ApiResponse<CarNumByStatusResponse> carStatusNum(@RequestBody CarNumByStatusRequest param) {
+    public ApiResponse<CarNumByStatusResponse> carStatusNum( ) {
         return ApiResponse.success(new CarNumByStatusResponse());
     }
 
@@ -87,7 +100,7 @@
     @ApiOperation("銆愭湀鍙般�戞帓闃熼槦鍒楀垪琛ㄩ泦鍚�")
     @PostMapping("/platform/queueList")
     @LoginNoRequired
-    public ApiResponse< PlatformQueuingListResponse> carLogsList(@RequestBody PlatformQueuingListRequest param) {
+    public ApiResponse< PlatformQueuingListResponse> queueList( ) {
         return ApiResponse.success(new PlatformQueuingListResponse());
     }
 
@@ -95,7 +108,7 @@
     @ApiOperation("銆愭湀鍙般�戦璀︿簨浠堕泦鍚堝垪琛�")
     @PostMapping("/platform/warningEventList")
     @LoginNoRequired
-    public ApiResponse<List<CarLogsListResponse>> carLogsList(@RequestBody PlatformWarnEventListRequest param) {
+    public ApiResponse<List<CarLogsListResponse>> warningEventList( ) {
         return ApiResponse.success(new ArrayList<>());
     }
 }
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java
index 1be6534..1b99528 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java
@@ -52,7 +52,8 @@
                 .apiInfo(this.getApiInfo()).groupName("default")
                 .host(host)
                 .select()
-                .apis( basePackage("com.doumee.cloud;com.doumee.api.common"))
+//                .apis( basePackage("com.doumee.cloud.openapi;com.doumee.api.common"))
+                .apis( basePackage("com.doumee.cloud.openapi;"))
                 // 璁剧疆闇�瑕佽鎵弿鐨勭被锛岃繖閲岃缃负娣诲姞浜咢Api娉ㄨВ鐨勭被
 //                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
                 .paths(PathSelectors.any())
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventImageInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventImageInfoRequest.java
new file mode 100644
index 0000000..51216fe
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventImageInfoRequest.java
@@ -0,0 +1,11 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventImageInfoRequest {
+    private String  resourcesContentType;//: "binary",
+    private String  resourcesContent;//: "backgroundImage"
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformAttrInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformAttrInfoRequest.java
new file mode 100644
index 0000000..07032d1
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformAttrInfoRequest.java
@@ -0,0 +1,14 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class EventPlatformAttrInfoRequest {
+   private String cameraIndexCode;//: "90a3caf18fb449339405099a816c3b2d",
+   private String deviceIndexCode;//: "5a939a9cf1ee4e268eac6671ec3527ef",
+   private String imageServerCode;//: "bfe11307-3286-49ca-b9ee-9efb34b3f555",
+   private String picServerIndexCode;//: "bfe11307-3286-49ca-b9ee-9efb34b3f555"
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsDataRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsDataRequest.java
new file mode 100644
index 0000000..622cd5a
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsDataRequest.java
@@ -0,0 +1,28 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventPlatformCarsDataRequest {
+    private List<EventPlatformCarsStatusInfoRequest> HPVehicleStatus;//
+    private List<EventPlatformAttrInfoRequest> targetAttrs;//
+   private String dataType;//HPVehicleStatus
+        private String sendTime;//2017-04-22T15:39:01.000+08:00
+        private String dateTime;//2004-05-03T17:30:08.000+08:00
+        private String ipAddress;//172.6.64.7
+        private String ipv6Address;//null
+        private Integer portNo;//private;//   80,
+        private String protocol;//HTTP
+        private String macAddress;//01:17:24:45:D9:F4
+        private Integer channelID;//private ;//String : 1,
+        private Integer activePostCount;//private String : 1,
+        private String eventType;//HPVehicleStatus
+        private String eventState;//active
+        private String eventDescription;//handingPlatform vehicle status
+        private String channelName;//ABC
+        private String deviceID;//test0123
+        private String eventId;//205F7A23-BF3F-C346-A02E-08DAF55EEA15
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsInfoRequest.java
new file mode 100644
index 0000000..1ae038c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsInfoRequest.java
@@ -0,0 +1,20 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventPlatformCarsInfoRequest {
+    private String  eventId;//	String	浜嬩欢鍞竴鏍囪瘑	鏄�	64
+    private String  srcIndex;//	String	浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�	鏄�	64
+    private String  dateTime;//
+    private String  srcType;//	String	浜嬩欢婧愮被鍨�	鏄�	16
+    private Integer  eventType	;//Number	浜嬩欢绫诲瀷	鏄�
+    private String  srcName;//	String	浜嬩欢婧愬悕绉�	鍚�	64
+    private Integer   status	;//Number	浜嬩欢鐘舵��	鏄�		0-鐬椂1-寮�濮�2-鍋滄3-浜嬩欢鑴夊啿4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-寮傛鍥剧墖涓婁紶
+    private Integer  timeout	;//Number	鑴夊啿瓒呮椂鏃堕棿	鏄�		鍗曚綅锛氱
+    private String  happenTime	;//String	浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂达級	鏄�	64
+    private String   srcParentIndex	;//String	浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶囩紪鍙�	鍚�	64
+    private List<EventPlatformCarsDataRequest> data;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsParamRequest.java
new file mode 100644
index 0000000..e5f97e9
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsParamRequest.java
@@ -0,0 +1,17 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventPlatformCarsParamRequest {
+
+
+    private String   sendTime;//	P	String	浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂�	鏄�	32	浜嬩欢鍙戦�佹椂闂�
+    private String    ability;//	P	String	浜嬩欢绫诲埆	鏄�	64	鏍囪瘑鍋滆溅鍦轰簨浠�
+    private List<String>  uids;//
+    private List<String>  clients;//
+    private Integer  dataProcInterval;//
+    private List<EventPlatformCarsInfoRequest> events;//	P	Events[]	浜嬩欢淇℃伅	鏄�	涓嶉檺
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsRequest.java
similarity index 69%
copy from server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java
copy to server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsRequest.java
index 2b796f3..9382d63 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsRequest.java
@@ -3,11 +3,11 @@
 import lombok.Data;
 
 @Data
-public class EventPlatCarstatusRequest {
+public class EventPlatformCarsRequest {
 
 //    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
 
     private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
-    private EventParkParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+    private EventPlatformCarsParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsStatusInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsStatusInfoRequest.java
new file mode 100644
index 0000000..177a789
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformCarsStatusInfoRequest.java
@@ -0,0 +1,18 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class EventPlatformCarsStatusInfoRequest {
+    private Integer HPNo;// 1,杞﹂亾鍙�
+    private Integer plateScore;//: 80杞︾墝璇勫垎
+    private String motionStatus;//'leave',杩愬姩鐘舵��  enter#杩涘叆,leave#绂诲紑
+    private String plateNo;//'A12345',杞︾墝鍙�
+    private String vehicleDoorStatus;//'open',杞﹂棬鐘舵�伮� open-寮�闂紝close-鍏抽棬
+    private String stockStatus;//'rear',杞﹀ご杞﹀熬鐘舵�伮� 聽front#杞﹀ご,rear#杞﹀熬
+    private EventImageInfoRequest BackgroundImage;//鏈堝彴鑳屾櫙澶у浘
+    private EventImageInfoRequest PlatePicture;//杞︾墝鍥�
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformDataRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformDataRequest.java
new file mode 100644
index 0000000..a8a65e6
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformDataRequest.java
@@ -0,0 +1,28 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+public class EventPlatformDataRequest {
+    private List<EventPlatformStatusInfoRequest> HPWorkingStatus;//
+    private List<EventPlatformAttrInfoRequest> targetAttrs;//
+   private Integer activePostCount;//1,
+   private Integer channelID;//1,
+   private String dataProcInterval;// 3private String ,
+   private String dataType;// HPWorkingStatusprivate String ,
+   private String dateTime;// 2021-07-16T18:57:22.000+08:00private String ,
+   private String deviceID;// 88private String ,
+   private String eventDescription;// handingPlatform working statusprivate String ,
+   private String eventState;// activeprivate String ,
+   private String eventType;// HPWorkingStatusprivate String ,
+   private String ipAddress;// 10.18.99.179private String ,
+   private String macAddress;// 58:50:ed:6d:f2:73private String ,
+   private String picUploadInterval;// 0private String ,
+   private String portNo;//8000,
+   private String recvTime;// 2021-07-16T18:56:18.645+08:00private String ,
+   private String sendTime;// 2021-07-16T18:56:18.648+08:00private String ,
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformInfoRequest.java
new file mode 100644
index 0000000..c1b4ab5
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformInfoRequest.java
@@ -0,0 +1,20 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventPlatformInfoRequest {
+    private String  eventId;//	String	浜嬩欢鍞竴鏍囪瘑	鏄�	64
+    private String  srcIndex;//	String	浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�	鏄�	64
+    private String  dateTime;//
+    private String  srcType;//	String	浜嬩欢婧愮被鍨�	鏄�	16
+    private Integer  eventType	;//Number	浜嬩欢绫诲瀷	鏄�
+    private String  srcName;//	String	浜嬩欢婧愬悕绉�	鍚�	64
+    private Integer   status	;//Number	浜嬩欢鐘舵��	鏄�		0-鐬椂1-寮�濮�2-鍋滄3-浜嬩欢鑴夊啿4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-寮傛鍥剧墖涓婁紶
+    private Integer  timeout	;//Number	鑴夊啿瓒呮椂鏃堕棿	鏄�		鍗曚綅锛氱
+    private String  happenTime	;//String	浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂达級	鏄�	64
+    private String   srcParentIndex	;//String	浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶囩紪鍙�	鍚�	64
+    private List<EventPlatformDataRequest> data;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformParamRequest.java
new file mode 100644
index 0000000..ce673a6
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformParamRequest.java
@@ -0,0 +1,17 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventPlatformParamRequest {
+
+
+    private String   sendTime;//	P	String	浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂�	鏄�	32	浜嬩欢鍙戦�佹椂闂�
+    private String    ability;//	P	String	浜嬩欢绫诲埆	鏄�	64	鏍囪瘑鍋滆溅鍦轰簨浠�
+    private List<String>  uids;//
+    private List<String>  clients;//
+    private Integer  dataProcInterval;//
+    private List<EventPlatformInfoRequest> events;//	P	Events[]	浜嬩欢淇℃伅	鏄�	涓嶉檺
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformRequest.java
similarity index 70%
rename from server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java
rename to server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformRequest.java
index 2b796f3..7cc950e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformRequest.java
@@ -3,11 +3,11 @@
 import lombok.Data;
 
 @Data
-public class EventPlatCarstatusRequest {
+public class EventPlatformRequest {
 
 //    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
 
     private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
-    private EventParkParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+    private EventPlatformParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformStatusInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformStatusInfoRequest.java
new file mode 100644
index 0000000..a8e2939
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatformStatusInfoRequest.java
@@ -0,0 +1,18 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class EventPlatformStatusInfoRequest {
+   private Integer HPNo;// 1,杞﹂亾杞﹂亾鍙�
+   private Integer operationPeopleNum;// 0,浜烘暟缁熻
+   private String operationStatus;//  no ,浣滀笟鐘舵�� loading-瑁呰揣锛� unloading-鍗歌揣
+   private String parkingSpaceStatus;// 杞︿綅鐘舵�� no鏃犺溅 norma姝e父鏈夎溅
+   private String plateNo;// ,杞︾墝鍙�
+   private Integer rate;// 0,瑁呰浇鐜�
+   private String vehicleDoorStatus;// open,杞﹂棬鐘舵��  open-寮�闂紝close-鍏抽棬
+   private BigDecimal plateScore;// 90杞︾墝璇勫垎
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformDataInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformDataInfoRequest.java
index f180ed7..dbbedf9 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformDataInfoRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformDataInfoRequest.java
@@ -11,7 +11,7 @@
  * @create 2023/12/7 11:19
  */
 @Data
-@ApiModel("銆愭湀鍙般�戞湀鍙板綋鍓嶄綔涓氫俊鎭垪琛ㄨ姹傚弬鏁�")
+@ApiModel("銆愭湀鍙般�戞湀鍙板綋鍓嶄綔涓氫俊鎭鎯呰姹傚弬鏁�")
 public class PlatformDataInfoRequest {
     @ApiModelProperty(value = "瀹夐槻骞冲彴鏈堝彴涓婚敭", example = "1")
     private String id;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformNumByStatusRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformNumByStatusRequest.java
index 099ded7..0a46828 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformNumByStatusRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformNumByStatusRequest.java
@@ -13,7 +13,7 @@
  * @create 2023/12/7 11:19
  */
 @Data
-@ApiModel("銆愭湀鍙般�戞寜澶╃粺璁¤繍鍗曡姹傚弬鏁�")
+@ApiModel("銆愭湀鍙般�戞湀鍙板悇鐘舵�佹暟閲忕粺璁¤姹傚弬鏁�")
 public class PlatformNumByStatusRequest {
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformLastMonthListResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformLastMonthListResponse.java
new file mode 100644
index 0000000..1b3b5cb
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformLastMonthListResponse.java
@@ -0,0 +1,22 @@
+package com.doumee.dao.openapi.response;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2023/12/7 11:19
+ */
+@Data
+@ApiModel("銆愭湀鍙般�戣繎12涓湀淇℃伅鍒楄〃")
+public class PlatformLastMonthListResponse {
+    @ApiModelProperty(value = "鏃堕棿 鏍煎紡锛歽yyy-MM", example = "2024-12")
+    private String timeInfo;
+    @ApiModelProperty(value = "鐢ㄩ噺", example = "1")
+    private BigDecimal num;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java
index 5112567..a47ba90 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java
@@ -11,7 +11,7 @@
  * @create 2023/12/7 11:19
  */
 @Data
-@ApiModel("銆愭湀鍙般�戞寜鐘舵�佺粺璁℃湀鍙版暟閲�")
+@ApiModel("銆愭湀鍙般�戞湀鍙板悇鐘舵�佹暟閲忕粺璁¤繑鍥炲弬鏁�")
 public class PlatformNumByStatusResponse {
     @ApiModelProperty(value = "浣跨敤涓暟閲�", example = "1")
     private int usingNum;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
index 4802f9f..1bbc12c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
@@ -2,9 +2,7 @@
 
 import com.doumee.core.haikang.model.param.request.*;
 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.parks.EventPlatCarstatusRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.*;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse;
@@ -90,13 +88,13 @@
     void syncMemberDelData();
     String getServiceUrl(HKGetServiceLoginUrlRequest param);
 
-    void dealWorkstatusEvent(EventPlatWorkstatusRequest param, HttpServletResponse response);
-
-    void dealCarstatusEvent(EventPlatCarstatusRequest param, HttpServletResponse response);
 
     String syncHkLed(Device param);
 
     String syncHkBroadcast(Device param);
     String dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response);
 
+    String dealPlatformStatusEvent(EventPlatformRequest param, HttpServletResponse response);
+
+    String dealPlatformCarsEvent(EventPlatformCarsRequest param, HttpServletResponse response);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
index c07db90..64ed8c0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
@@ -6,9 +6,7 @@
 import com.doumee.core.haikang.model.param.BaseResponse;
 import com.doumee.core.haikang.model.param.request.*;
 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.parks.EventPlatCarstatusRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.*;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse;
@@ -55,12 +53,6 @@
     }
 
     @Override
-    public  void dealWorkstatusEvent(EventPlatWorkstatusRequest param, HttpServletResponse response){
-    }
-    @Override
-    public  void dealCarstatusEvent(EventPlatCarstatusRequest param, HttpServletResponse response){
-    }
-    @Override
 //    @Async
     public String syncDoors(DoorsListRequest param){
         return null;
@@ -95,6 +87,15 @@
     public String dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response){
         return  null;
     }
+
+    @Override
+    public String dealPlatformStatusEvent(EventPlatformRequest param, HttpServletResponse response){
+        return  null;
+    }
+    @Override
+    public  String dealPlatformCarsEvent(EventPlatformCarsRequest param, HttpServletResponse response){
+        return  null;
+    }
     @Override
     public String   dealAcsEvent(EventAcsRequest param, HttpServletResponse response){
         return  null;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
index b190e72..09d273b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -9,8 +9,7 @@
 import com.doumee.core.haikang.model.param.request.event.acs.EventAcsInfoRequest;
 import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
 import com.doumee.core.haikang.model.param.request.event.acs.EventDeviceDataRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventParkInfoRequest;
-import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.*;
 import com.doumee.core.haikang.model.param.request.event.visit.*;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DESUtil;
@@ -66,6 +65,12 @@
     private VisitsJoinMapper visitsMapper;
     @Autowired
     private RetentionMapper retentionMapper;
+    @Autowired
+    private PlatformMapper platformMapper;
+    @Autowired
+    private PlatformDeviceMapper platformDeviceMapper;
+    private PlatformJobMapper platformJobMapper;
+    private PlatformLogMapper platformLogMapper;
     /**
      * 娴峰悍闂ㄧ浜嬩欢鎺ㄩ��
      * @param param
@@ -308,6 +313,7 @@
         return  null;
 
     }
+
     /**
      * 娴峰悍璁垮浜嬩欢鎺ㄩ��
      * @param param
@@ -769,5 +775,179 @@
         interfaceLogMapper.insert(hkMonitoryLogDO);
     }
 
+    /**
+     * 澶勭悊鏈堝彴宸ヤ綔鐘舵�佷簨浠惰闃呭悗鎺ㄩ�佹暟鎹�昏緫閫昏緫
+     * @param param
+     * @param response
+     * @return
+     */
+    @Override
+    public String dealPlatformStatusEvent(EventPlatformRequest param, HttpServletResponse response){
+        log.info("銆愭捣搴锋湀鍙板伐浣滅姸鎬佷簨浠舵帹閫併��========寮�濮�=========锛歕n"+JSONObject.toJSONString(param));
+        String result = null;
+        try {
+            if(param == null || param.getParams() == null || param.getParams().getEvents()==null){
+                return null;
+            }
+            //闂ㄧ浜嬩欢闆嗗悎
+            List<EventPlatformInfoRequest> events  = param.getParams().getEvents();
+            List<Platform> list = new ArrayList<>();
+            for(EventPlatformInfoRequest request : events){
+                List<EventPlatformDataRequest>  dataList = request.getData();
+                if(dataList ==null || dataList.size()==0){
+                    continue;
+                }
+                Integer  workStatus = 0;
+                for(EventPlatformDataRequest data : dataList){
+                    if( data.getHPWorkingStatus() ==null ||  data.getHPWorkingStatus().size() ==0){
+                        continue;//濡備綍鎺ㄩ�佺姸鎬侀泦鍚堜负绌猴紝涓嶅鐞嗚烦杩�
+                    }
+                    PlatformDevice model = platformDeviceMapper.selectOne(new QueryWrapper<PlatformDevice>().lambda()
+                            .eq(PlatformDevice::getDeviceId,request.getSrcIndex())
+                            .eq(PlatformDevice::getIsdeleted,Constants.ZERO)
+                            .last("limit 1"));
+                    if(model ==null){
+                        continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞�
 
+                    }
+                    //鍚勮溅閬撹溅杈嗙姸鎬�
+                    for(EventPlatformStatusInfoRequest status : data.getHPWorkingStatus()){
+
+
+                    }
+                    break;//鍙鐞嗙涓�涓暟鎹姸鎬�
+                }
+            }
+            result = "鎴愬姛";
+            log.error("銆愭捣搴锋湀鍙板伐浣滅姸鎬佷簨浠舵帹閫併��========鎴愬姛=======");
+        }catch (Exception e) {
+            result = "澶辫触"+e.getMessage();
+            log.error("銆愭捣搴锋湀鍙板伐浣滅姸鎬佷簨浠舵帹閫併��========澶辫触=======锛歕n" + e.getMessage());
+        }finally {
+            saveInterfaceLog(param,"/business/hksync/push/platform/workstatus",result,false);//涓嶈鏃ュ織
+        }
+        return  null;
+    }
+    /**
+     * 澶勭悊鏈堝彴杞﹁締鐘舵�佷簨浠惰闃呭悗鎺ㄩ�佹暟鎹�昏緫閫昏緫
+     * @param param
+     * @param response
+     * @return
+     */
+    @Override
+    public  String dealPlatformCarsEvent(EventPlatformCarsRequest param, HttpServletResponse response){
+        log.info("銆愭捣搴锋湀鍙拌溅杈嗙姸鎬佷簨浠舵帹閫併��========寮�濮�=========锛歕n"+JSONObject.toJSONString(param));
+        String result = null;
+        try {
+            if(param == null || param.getParams() == null || param.getParams().getEvents()==null){
+                return null;
+            }
+            //闂ㄧ浜嬩欢闆嗗悎
+            List<EventPlatformCarsInfoRequest> events  = param.getParams().getEvents();
+            for(EventPlatformCarsInfoRequest request : events){
+                if( request.getData() ==null ||  request.getData().size()==0){
+                    continue;
+                }
+                Integer  workStatus = 0;
+                for(EventPlatformCarsDataRequest data :  request.getData()){
+                    if( data.getHPVehicleStatus() ==null ||  data.getHPVehicleStatus().size() ==0){
+                        continue;//濡備綍鎺ㄩ�佺姸鎬侀泦鍚堜负绌猴紝涓嶅鐞嗚烦杩�
+                    }
+                    PlatformDevice model = platformDeviceMapper.selectOne(new QueryWrapper<PlatformDevice>().lambda()
+                            .eq(PlatformDevice::getDeviceId,request.getSrcIndex())
+                            .eq(PlatformDevice::getIsdeleted,Constants.ZERO)
+                            .last("limit 1"));
+                    if(model ==null){
+                        continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞�
+
+                    }
+                    //鍚勮溅閬撹溅杈嗙姸鎬�
+                    for(EventPlatformCarsStatusInfoRequest status : data.getHPVehicleStatus()){
+                        if(StringUtils.isBlank(status.getPlateNo())){
+                            continue;//濡傛灉杞﹁締淇℃伅涓虹┖锛屼笉澶勭悊鐩存帴璺宠繃
+                        }
+                        PlatformJob job = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>().lambda()
+                                .eq(StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeFront,status.getPlateNo() )//鍓嶈溅鐗屽彿
+                                .eq(!StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeBack,status.getPlateNo() )//鍚庤溅鐗屽彿
+                                .eq(PlatformJob::getIsdeleted,Constants.ZERO )
+                                .last("limit 1 "));
+                        PlatformJob update = new PlatformJob();
+                        update.setId(job.getId());
+                        update.setEditDate(new Date());
+                        if(StringUtils.equals(status.getMotionStatus(),"leave")){
+                            //濡傛灉鏄溅杈嗙寮�
+                            if(job ==null && !Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){
+                                continue;//濡傛灉娌℃煡鍒板搴旂殑浣滀笟鎴栬�呬綔涓氬苟闈炰綔涓氫腑锛屼笉鍋氫笟鍔″鐞�
+                            }
+                            //濡傛灉鏄鍦ㄤ綔涓氱殑鐘舵�侊紝鏍囪浣滀笟宸插畬鎴�
+                            update.setStatus(Constants.PlatformJobStatus.DONE.getKey());//浣滀笟宸插畬鎴�
+                            update.setDoneDate(update.getEditDate());
+
+                        }else  if(StringUtils.equals(status.getMotionStatus(),"enter")){
+                            //濡傛灉鏄溅杈嗚繘鍏�
+                            if(job ==null || !Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())){
+                                //璇存槑杞﹁締杩涢敊鏈堝彴 鎴栬�呰繕鏈彨鍙风姸鎬侊紝鍙戣捣璀﹀憡
+                                dealCarsInErrorPlatformBiz(job,status);
+                            }
+                            update.setStatus(Constants.PlatformJobStatus.WORKING.getKey());//寮�濮嬩綔涓�
+                        }else{
+                            continue;//鍏朵粬鐘舵�佷笉澶勭悊锛岃烦杩�
+                        }
+                        platformJobMapper.updateById(update);//鏇存柊浣滀笟鐘舵��
+                        dealPlatformJobLogBiz(update,status);//璁板綍浣滀笟鏃ュ織
+                    }
+                    break;//鍙鐞嗙涓�涓暟鎹姸鎬�
+                }
+            }
+            result = "鎴愬姛";
+            log.error("銆愭捣搴锋湀鍙拌溅杈嗙姸鎬佷簨浠舵帹閫併��========鎴愬姛=======");
+        }catch (Exception e) {
+            result = "澶辫触"+e.getMessage();
+            log.error("銆愭捣搴锋湀鍙拌溅杈嗙姸鎬佷簨浠舵帹閫併��========澶辫触=======锛歕n" + e.getMessage());
+        }finally {
+            saveInterfaceLog(param,"/business/hksync/push/platform/workstatus",result,false);//涓嶈鏃ュ織
+        }
+        return  null;
+    }
+
+    /**
+     * 璁板綍鏈堝彴浣滀笟鏃ュ織
+     * @param job
+     * @param status
+     */
+    private void dealPlatformJobLogBiz(PlatformJob job,EventPlatformCarsStatusInfoRequest status) {
+        PlatformLog log = new PlatformLog();
+        log.setIsdeleted(Constants.ZERO);
+        log.setCreateDate(new Date());
+        log.setEditDate(log.getCreateDate());
+        log.setJobId(job.getId());
+        log.setObjId(job.getId()+"");
+        if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey())){
+            //濡傛灉鏄綔涓氬畬鎴�
+//            log.setObjType(Constants.LOg);
+            //鏌ヨ鏈�鍚庝竴娆″紑濮嬩綔涓氱殑鏃ュ織
+            PlatformLog lastBeginPlatform = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda()
+                    .eq(PlatformLog::getIsdeleted,Constants.ZERO)
+                    .eq(PlatformLog::getObjType,Constants.PlatformJobStatus.WORKING.getKey())
+                    .eq(PlatformLog::getJobId,job.getJobId())
+                    .orderByDesc(PlatformLog::getCreateDate)
+                    .last(" limit 1");
+
+        }else{
+            //濡傛灉鏄綔涓氫腑
+            log.setParam1(DateUtil.getDate(lastBeginPlatform.getCreateDate(),"yyyy-MM-dd HH:mm:ss"));
+//            log.setObjType(Constants.Jobl);
+        }
+
+        platformLogMapper.insert(log);
+    }
+
+    /**
+     * 澶勭悊杞﹁締杩涘叆閿欒鏈堝彴涓氬姟閫昏緫
+     * @param model (鏈堝彴璁惧鍏宠仈淇℃伅锛�
+     * @param status
+     */
+    private void dealCarsInErrorPlatformBiz( PlatformJob model,EventPlatformCarsStatusInfoRequest status) {
+        //TODO-----------------澶勭悊杞﹁締杩涘叆閿欒鏈堝彴涓氬姟閫昏緫
+    }
 }

--
Gitblit v1.9.3