From e669ae9c74cd808e7ca8fb066d59b47296467b0e Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 13 八月 2024 14:21:01 +0800
Subject: [PATCH] 最新版本

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsService.java                                             |   54 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsInterfaceLogService.java                                 |  100 ++++
 server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java                                    |   25 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java                            |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseResponse.java                                 |   21 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformReason.java                                       |   75 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundDetailRequest.java                          |   26 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java                                      |    6 
 server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java                                             |   14 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatWorkstatusRequest.java |   13 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java                             |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java                                          |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundNoticeRequest.java                          |   33 +
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseDataResponse.java                             |   20 
 server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java                                       |   11 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java                                          |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundNoticeRequest.java                         |   38 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformReasonService.java                                  |   97 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WmsInterfaceLog.java                                      |   99 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformStatusInfoResponse.java             |    2 
 server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java                                            |   83 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WmsInterfaceLogMapper.java                                      |   12 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WmsInterfaceLogServiceImpl.java                        |  171 ++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java  |   13 
 server/db/business.platform_reason.permissions.sql                                                                                  |    6 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/CustomBroadcastRequest.java                 |   18 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java                                         |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsBaseRequest.java                                   |   15 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/PlatformStatusRequest.java                  |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundDetailRequest.java                         |   25 +
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformReasonCloudController.java                                 |   91 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java                                |  137 +++++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java                      |    9 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java                                              |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsActionNoticeRequest.java                           |   17 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformReasonMapper.java                                       |   12 
 server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java                                     |   90 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformReasonServiceImpl.java                         |  145 +++++
 38 files changed, 1,478 insertions(+), 19 deletions(-)

diff --git a/server/db/business.platform_reason.permissions.sql b/server/db/business.platform_reason.permissions.sql
new file mode 100644
index 0000000..1904b98
--- /dev/null
+++ b/server/db/business.platform_reason.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:platformreason:create', '鏂板缓鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:platformreason:delete', '鍒犻櫎鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:platformreason:update', '淇敼鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:platformreason:query', '鏌ヨ鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:platformreason:exportExcel', '瀵煎嚭鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
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 63329d4..54e296f 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
@@ -7,6 +7,8 @@
 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.parks.EventPlatCarstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.model.ApiResponse;
 import com.doumee.service.business.impl.hksync.HkSyncDeviceServiceImpl;
@@ -93,4 +95,16 @@
          hkSyncPushService.cancelEventSub();
         return ApiResponse.success(null);
     }
+    @ApiOperation("銆愭捣搴枫�戞湀鍙板伐浣滅姸鎬佷簨浠舵帹閫�")
+    @PostMapping("/platform/workstatus")
+    public ApiResponse workstatus(@RequestBody EventPlatWorkstatusRequest param, HttpServletResponse response) {
+         hkSyncPushService.dealWorkstatusEvent(param,response);
+        return ApiResponse.success(null);
+    }
+    @ApiOperation("銆愭捣搴枫�戞湀鍙拌溅杈嗙姸鎬佷簨浠舵帹閫�")
+    @PostMapping("/platform/carstatus")
+    public ApiResponse carstatus(@RequestBody EventPlatCarstatusRequest param, HttpServletResponse response) {
+         hkSyncPushService.dealCarstatusEvent(param,response);
+        return ApiResponse.success(null);
+    }
 }
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java
new file mode 100644
index 0000000..89720ed
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/PlatformReasonController.java
@@ -0,0 +1,90 @@
+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.model.ApiResponse;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
+import com.doumee.dao.business.model.PlatformReason;
+import com.doumee.service.business.PlatformReasonService;
+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 姹熻箘韫�
+ * @date 2024/08/13 14:08
+ */
+@Api(tags = "鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�")
+@RestController
+@RequestMapping("/business/platformReason")
+public class PlatformReasonController extends BaseController {
+
+    @Autowired
+    private PlatformReasonService platformReasonService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @RequiresPermissions("business:platformreason:create")
+    public ApiResponse create(@RequestBody PlatformReason platformReason) {
+        return ApiResponse.success(platformReasonService.create(platformReason));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @RequiresPermissions("business:platformreason:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        platformReasonService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @RequiresPermissions("business:platformreason:delete")
+    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+        String [] idArray = ids.split(",");
+        List<Integer> idList = new ArrayList<>();
+        for (String id : idArray) {
+            idList.add(Integer.valueOf(id));
+        }
+        platformReasonService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @RequiresPermissions("business:platformreason:update")
+    public ApiResponse updateById(@RequestBody PlatformReason platformReason) {
+        platformReasonService.updateById(platformReason);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @RequiresPermissions("business:platformreason:query")
+    public ApiResponse<PageData<PlatformReason>> findPage (@RequestBody PageWrap<PlatformReason> pageWrap) {
+        return ApiResponse.success(platformReasonService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @RequiresPermissions("business:platformreason:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<PlatformReason> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(PlatformReason.class).export(platformReasonService.findPage(pageWrap).getRecords(), "鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @RequiresPermissions("business:platformreason:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(platformReasonService.findById(id));
+    }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/InterfaceLogController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java
similarity index 70%
rename from server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/InterfaceLogController.java
rename to server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java
index 0d8c5f9..07aa390 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/InterfaceLogController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsInterfaceLogController.java
@@ -5,11 +5,14 @@
 import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.model.PageData;
+import com.doumee.dao.business.WmsInterfaceLogMapper;
 import com.doumee.dao.business.model.InterfaceLog;
+import com.doumee.dao.business.model.WmsInterfaceLog;
 import com.doumee.service.business.InterfaceLogService;
+import com.doumee.service.business.WmsInterfaceLogService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
+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;
@@ -22,19 +25,19 @@
  * @author 姹熻箘韫�
  * @date 2023/11/30 15:33
  */
-@Api(tags = "涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍")
+@Api(tags = "WMS骞冲彴鎺ュ彛浜や簰璁板綍")
 @RestController
-@RequestMapping("/business/interfaceLog")
-public class InterfaceLogController extends BaseController {
+@RequestMapping("/business/wmsInterfaceLog")
+public class WmsInterfaceLogController extends BaseController {
 
     @Autowired
-    private InterfaceLogService interfaceLogService;
+    private WmsInterfaceLogService interfaceLogService;
 
     @PreventRepeat
     @ApiOperation("鏂板缓")
     @PostMapping("/create")
     @RequiresPermissions("business:interfacelog:create")
-    public ApiResponse create(@RequestBody InterfaceLog interfaceLog) {
+    public ApiResponse create(@RequestBody WmsInterfaceLog interfaceLog) {
         return ApiResponse.success(interfaceLogService.create(interfaceLog));
     }
 
@@ -62,7 +65,7 @@
     @ApiOperation("鏍规嵁ID淇敼")
     @PostMapping("/updateById")
     @RequiresPermissions("business:interfacelog:update")
-    public ApiResponse updateById(@RequestBody InterfaceLog interfaceLog) {
+    public ApiResponse updateById(@RequestBody WmsInterfaceLog interfaceLog) {
         interfaceLogService.updateById(interfaceLog);
         return ApiResponse.success(null);
     }
@@ -70,21 +73,21 @@
     @ApiOperation("鍒嗛〉鏌ヨ")
     @PostMapping("/page")
     @RequiresPermissions("business:interfacelog:query")
-    public ApiResponse<PageData<InterfaceLog>> findPage (@RequestBody PageWrap<InterfaceLog> pageWrap) {
+    public ApiResponse<PageData<WmsInterfaceLog>> findPage (@RequestBody PageWrap<WmsInterfaceLog> pageWrap) {
         return ApiResponse.success(interfaceLogService.findPage(pageWrap));
     }
 
     @ApiOperation("瀵煎嚭Excel")
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:interfacelog:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<InterfaceLog> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(InterfaceLog.class).export(interfaceLogService.findPage(pageWrap).getRecords(), "涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍", response);
+    public void exportExcel (@RequestBody PageWrap<WmsInterfaceLog> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(WmsInterfaceLog.class).export(interfaceLogService.findPage(pageWrap).getRecords(), "涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍", response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
     @GetMapping("/{id}")
     @RequiresPermissions("business:interfacelog:query")
-    public ApiResponse findById(@PathVariable Integer id) {
+    public ApiResponse<WmsInterfaceLog> findById(@PathVariable Integer id) {
         return ApiResponse.success(interfaceLogService.findById(id));
     }
 }
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java
new file mode 100644
index 0000000..026283a
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/WmsPushController.java
@@ -0,0 +1,83 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.pr.PreventRepeat;
+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.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 com.doumee.core.model.ApiResponse;
+import com.doumee.core.wms.model.request.WmsActionNoticeRequest;
+import com.doumee.core.wms.model.request.WmsInboundNoticeRequest;
+import com.doumee.core.wms.model.request.WmsOutboundNoticeRequest;
+import com.doumee.core.wms.model.response.WmsBaseResponse;
+import com.doumee.service.business.WmsService;
+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.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Api(tags = "WMS骞冲彴鏁版嵁鎺ㄩ�佹帴鍙�")
+@RestController
+@RequestMapping("/wms")
+public class WmsPushController extends BaseController {
+
+    @Autowired
+    private WmsService wmsService;
+
+    @PreventRepeat
+    @ApiOperation("銆怌MS銆戞帹閫佸叆搴撳崟閫氱煡浠诲姟")
+    @PostMapping("/push/inboundNotice")
+    public WmsBaseResponse inboundNotice(@RequestBody List<WmsInboundNoticeRequest> param) {
+        WmsBaseResponse result = wmsService.inboundNotice(param);
+        return result;
+    }
+
+    @PreventRepeat
+    @ApiOperation("銆怌MS銆戞帹閫佸嚭搴撳崟閫氱煡浠诲姟")
+    @PostMapping("/push/outboundNotice")
+    public WmsBaseResponse outboundNotice(@RequestBody List<WmsOutboundNoticeRequest> param) {
+        WmsBaseResponse result = wmsService.outboundNotice(param);
+        return result;
+    }
+    @PreventRepeat
+    @ApiOperation("銆怌MS銆戞帹閫佸彇娑堝叆搴撳崟閫氱煡浠诲姟")
+    @PostMapping("/push/cancelInbound")
+    public WmsBaseResponse cancelInbound(@RequestBody List<WmsActionNoticeRequest> param) {
+        WmsBaseResponse result = wmsService.cancelInbound(param);
+        return result;
+    }
+    @PreventRepeat
+    @ApiOperation("銆怌MS銆戞帹閫佸彇娑堝嚭搴撳崟閫氱煡浠诲姟")
+    @PostMapping("/push/cancelOutbound")
+    public WmsBaseResponse cancelOutbound(@RequestBody List<WmsActionNoticeRequest> param) {
+        WmsBaseResponse result = wmsService.cancelOutbound(param);
+        return result;
+    }
+    @PreventRepeat
+    @ApiOperation("銆怌MS銆戞帹閫佸嚭鍏ュ簱浣滀笟瀹屾垚閫氱煡浠诲姟")
+    @PostMapping("/push/doneTask")
+    public WmsBaseResponse doneTask(@RequestBody List<WmsActionNoticeRequest> param) {
+        WmsBaseResponse result = wmsService.doneTask(param);
+        return result;
+    }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformReasonCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformReasonCloudController.java
new file mode 100644
index 0000000..e52fe30
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformReasonCloudController.java
@@ -0,0 +1,91 @@
+package com.doumee.cloud.admin;
+
+import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.PlatformReason;
+import com.doumee.service.business.PlatformReasonService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+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 姹熻箘韫�
+ * @date 2024/08/13 14:08
+ */
+@Api(tags = "鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/platformReason")
+public class PlatformReasonCloudController extends BaseController {
+
+    @Autowired
+    private PlatformReasonService platformReasonService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @CloudRequiredPermission("business:platformreason:create")
+    public ApiResponse create(@RequestBody PlatformReason platformReason,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        return ApiResponse.success(platformReasonService.create(platformReason));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @CloudRequiredPermission("business:platformreason:delete")
+    public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        platformReasonService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @CloudRequiredPermission("business:platformreason:delete")
+    public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        String [] idArray = ids.split(",");
+        List<Integer> idList = new ArrayList<>();
+        for (String id : idArray) {
+            idList.add(Integer.valueOf(id));
+        }
+        platformReasonService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @CloudRequiredPermission("business:platformreason:update")
+    public ApiResponse updateById(@RequestBody PlatformReason platformReason,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        platformReasonService.updateById(platformReason);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @CloudRequiredPermission("business:platformreason:query")
+    public ApiResponse<PageData<PlatformReason>> findPage (@RequestBody PageWrap<PlatformReason> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+        return ApiResponse.success(platformReasonService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @CloudRequiredPermission("business:platformreason:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<PlatformReason> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        ExcelExporter.build(PlatformReason.class).export(platformReasonService.findPage(pageWrap).getRecords(), "鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @CloudRequiredPermission("business:platformreason:query")
+    public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        return ApiResponse.success(platformReasonService.findById(id));
+    }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
index cfd88f5..b7deb0a 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
@@ -106,6 +106,17 @@
         HKService.cancelEventSub(param);//鍏堝彇娑�
         HKService.eventSub(param);//闂ㄧ浜嬩欢
 
+        param.setEventDest(path+"/platform/workstatus");
+        param.setEventTypes(new Integer[]{HKConstants.EventTypes.PLATFORM_WORKSTATUS.getKey()});
+        HKService.cancelEventSub(param);//鍏堝彇娑�
+        HKService.eventSub(param);//鏈堝彴宸ヤ綔鐘舵�佷簨浠�
+
+
+        param.setEventDest(path+"/platform/carstatus");
+        param.setEventTypes(new Integer[]{HKConstants.EventTypes.PLATFORM_CAR_STATUS.getKey()});
+        HKService.cancelEventSub(param);//鍏堝彇娑�
+        HKService.eventSub(param);//鏈堝彴杞﹁締鐘舵�佷簨浠�
+
     }
     /**
      * 鍙栨秷璁㈤槄闂ㄧ浜嬩欢銆佽瀹簨浠躲�佸拰鍋滆溅鍦轰簨浠�
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
index 2b11cbb..b692f4d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
@@ -236,7 +236,9 @@
         VISIT_SIGN_IN(1392513025, "璁垮鐧昏"  ),
         VISIT_SIGN_OUT(1392513026, "璁垮绛剧"  ),
         DOOR_FACE_AUTH_FAIL(197163, "浜鸿劯璁よ瘉澶辫触"  ),
-        DOOR_FACE_AUTH_SUCCESS(196893, "浜鸿劯璁よ瘉閫氳繃"  )
+        DOOR_FACE_AUTH_SUCCESS(196893, "浜鸿劯璁よ瘉閫氳繃"  ),
+        PLATFORM_WORKSTATUS(483329, "鏈堝彴宸ヤ綔鐘舵�佷簨浠�"  ),
+        PLATFORM_CAR_STATUS(487425, "鏈堝彴杞﹁締鐘舵�佷簨浠�"  )
         ;
         // 鎴愬憳鍙橀噺
         private String name;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
index 7b55f11..b1ea5b6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
@@ -324,7 +324,7 @@
 	 * @return
 	 */
 	public static String acsDeviceTimeRangeList(String body) {
-		return startDoPostStringArtemis(HKConstants.InterfacePath.acsDeviceList,body);
+		return startDoPostStringArtemis(HKConstants.InterfacePath.acsDeviceTimeRangeList,body);
 	}
 	/**
 	 *	璁垮棰勭害
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/CustomBroadcastRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/CustomBroadcastRequest.java
new file mode 100644
index 0000000..a39da20
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/CustomBroadcastRequest.java
@@ -0,0 +1,18 @@
+package com.doumee.core.haikang.model.param.request;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class CustomBroadcastRequest {
+    private List<String> audioPointIndexCode	;//Array	true	骞挎挱鐐瑰敮涓�鏍囪瘑锛屾敮鎸佸涓�
+    private Integer playDuration;//	Number	false	鎾斁鏃堕暱锛屽崟浣嶇锛屽簲澶т簬0灏忎簬86399锛岃澶囨渶澶ф敮鎸佷负86399锛屾挱鏀炬椂闀垮彧閽堝濯掍綋鏂囦欢鎾斁妯″紡鏈夋晥
+    private String broadCastMode;//	String	true	骞挎挱妯″紡,media-闊抽鏂囦欢銆乼ts-鑷畾涔夋枃瀛楁挱鎶�
+    private String playTtsContent;//	String	false	鑷畾涔夋枃瀛楁挱鏀撅紝tts妯″紡锛宻tate涓�1鏃跺繀浼狅紝media妯″紡涓嬩笉浼狅紝鍜屽獟浣撴枃浠跺敮涓�鏍囪瘑浜岄�変竴
+    private String mediaIndexCode;//	String	false	鎾斁濯掍綋鏂囦欢鍞竴鏍囪瘑锛宮edia妯″紡涓嬪繀浼狅紝tts妯″紡涓嬩笉浼狅紝鍜岃嚜瀹氫箟鏂囧瓧浜岄�変竴
+    private Integer priority;//	Number	true	浼樺厛绾э紝1-15锛岄珮浼樺厛绾ф墦鏂綆浼樺厛绾�
+    private Integer state;//	Number	true	鎾斁/鍋滄鏍囪瘑 1-鎾斁锛�0-鍋滄
+    private String broadcastId;//	String	false	骞挎挱鎾斁浠诲姟idtts妯″紡涓媠tate涓�0鏃跺繀濉紝tts妯″紡涓嬭皟鐢ㄦ挱鏀炬椂锛屾牴鎹挱鏀炬帴鍙h繑鍥瀌ata涓殑骞挎挱浠诲姟鍞竴鏍囪瘑鏉ヨ皟鐢ㄥ仠姝㈠獟浣撴枃浠舵挱鏀炬ā寮忎笅锛屾湁杩斿洖brocastId鏃讹紝鍋滄蹇呬紶
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/PlatformStatusRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/PlatformStatusRequest.java
index 1f0970c..eedac26 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/PlatformStatusRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/PlatformStatusRequest.java
@@ -4,6 +4,6 @@
 
 @Data
 public class PlatformStatusRequest {
-    private String platformIds	;//Query	String	false	鏈堝彴ID
+    private String platformIds	;//Query	String	false	鏈堝彴ID锛屾湀鍙板簭鍙凤紝澶氫釜鏈堝彴閫楀彿闅斿紑
 
 }
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/EventPlatCarstatusRequest.java
new file mode 100644
index 0000000..2b796f3
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatCarstatusRequest.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+@Data
+public class EventPlatCarstatusRequest {
+
+//    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+    private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
+    private EventParkParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatWorkstatusRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatWorkstatusRequest.java
new file mode 100644
index 0000000..e2d21e4
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/parks/EventPlatWorkstatusRequest.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.request.event.parks;
+
+import lombok.Data;
+
+@Data
+public class EventPlatWorkstatusRequest {
+
+//    private String  parkIndexCodes	;//	string	False	鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎  澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+    private String   method	;//	String	鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ��	鏄�	16	浜嬩欢鍥哄畾OnEventNotify
+    private EventParkParamRequest params	;//	Params	浜嬩欢鍙傛暟淇℃伅	鏄�	涓嶉檺	鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformStatusInfoResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformStatusInfoResponse.java
index d2baa2c..d3c8834 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformStatusInfoResponse.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformStatusInfoResponse.java
@@ -12,7 +12,7 @@
  private String  cameraIndexcode	;//String	false	鏈堝彴鍏宠仈鐩戞帶鐐�
  private String  plateNo	;//String	false	杞︾墝鍙�
  private String  name;//	String	false	鏈堝彴鍚嶇О
- private String  status;//	Number	false	鏈堝彴鐘舵��
+ private String  status;//	Number	false	鏈堝彴鐘舵�� 0-鏃犺溅 1-鏈夎溅 2-瓒呮椂鍋滈潬 3-閿欒鍋滈潬
  private String   loadingRate	;//String	false	鏈堝彴鏈�鏂扮殑杞﹁締瑁呰浇鐜�
  private String   doorState;//	String	false	鏈堝彴浣滀笟杞﹁締鐨勫綋鍓嶅紑鍏充箞鐘舵��
  private String  workingPerson;//	Number	false	鏈堝彴鐨勫綋鍓嶄綔涓氫汉鏁�
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
index 5711c81..6f9f778 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -1097,7 +1097,7 @@
      *鐢ㄤ簬璁剧疆骞挎挱鐨勮嚜瀹氭挱鏀惧拰鍋滄
      * @return
      */
-    public  static  BaseResponse<BaseListPageResponse<LedRecordsInfoResponse>>   customBroadcast(LedRecordsRequest param){
+    public  static  BaseResponse<BaseListPageResponse<LedRecordsInfoResponse>>   customBroadcast(CustomBroadcastRequest param){
         log.info("銆愭捣搴风敤浜庤缃箍鎾殑鑷畾鎾斁鍜屽仠姝€��================寮�濮�===="+JSONObject.toJSONString(param));
         try {
             String res = HKTools.customBroadcast(JSONObject.toJSONString(param));
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsActionNoticeRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsActionNoticeRequest.java
new file mode 100644
index 0000000..399f84a
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsActionNoticeRequest.java
@@ -0,0 +1,17 @@
+package com.doumee.core.wms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("WMS浠诲姟鍙栨秷鎴栧畬鎴愰�氱煡鍗曟帹閫佽姹備俊鎭�")
+public class WmsActionNoticeRequest extends WmsBaseRequest {
+    @ApiModelProperty(value = "鍑�/濡傚簱閫氱煡鍗曞彿" ,example = "1")
+    private String ioCode;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsBaseRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsBaseRequest.java
new file mode 100644
index 0000000..397ef9f
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsBaseRequest.java
@@ -0,0 +1,15 @@
+package com.doumee.core.wms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("wms璇锋眰鍏叡鍙傛暟")
+public class WmsBaseRequest {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundDetailRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundDetailRequest.java
new file mode 100644
index 0000000..99c1a8a
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundDetailRequest.java
@@ -0,0 +1,26 @@
+package com.doumee.core.wms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/08/12 14:03
+ */
+@Data
+@ApiModel("WMS鍏ュ簱閫氱煡鍗曟槑缁嗚姹備俊鎭�")
+public class WmsInboundDetailRequest {
+    @ApiModelProperty(value = "鍏ュ簱閫氱煡鍗曞彿" ,example = "1")
+    private String ioCode;
+    @ApiModelProperty(value = "鐗╂枡鍚嶇О" ,example = "1")
+    private String materialName;
+    @ApiModelProperty(value = "渚涘簲鍟�" ,example = "1")
+    private String inRepertotyCode;
+    @ApiModelProperty(value = "璁″垝鏀惰揣鏁伴噺" ,example = "1")
+    private BigDecimal ioQty;
+    @ApiModelProperty(value = "鐗╂枡杞崲鐜�" ,example = "1")
+    private String rate;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundNoticeRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundNoticeRequest.java
new file mode 100644
index 0000000..d677f9c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsInboundNoticeRequest.java
@@ -0,0 +1,33 @@
+package com.doumee.core.wms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("WMS鍏ュ簱閫氱煡鍗曟帹閫佽姹備俊鎭�")
+public class WmsInboundNoticeRequest extends WmsBaseRequest {
+    @ApiModelProperty(value = "鍏ュ簱閫氱煡鍗曞彿" ,example = "1")
+    private String ioCode;
+    @ApiModelProperty(value = "杞︾墝鍙�" ,example = "1")
+    private String plateNumber;
+    @ApiModelProperty(value = "鍙告満鐢佃瘽" ,example = "1")
+    private String driverPhone;
+    @ApiModelProperty(value = "鍙告満濮撳悕" ,example = "1")
+    private String driverName;
+    @ApiModelProperty(value = "鎵胯繍鍟�" ,example = "1")
+    private String carrierName;
+    @ApiModelProperty(value = "鎵胯繍鍗曞彿" ,example = "1")
+    private String carrierBillCode;
+    @ApiModelProperty(value = "鍒涘缓鏃ユ湡" ,example = "1")
+    private String createDate;
+    @ApiModelProperty(value = "鍏ュ簱閫氱煡琛岄」鐩暟鎹�" ,example = "1")
+    private List<WmsInboundDetailRequest> details;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundDetailRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundDetailRequest.java
new file mode 100644
index 0000000..3e0d7e1
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundDetailRequest.java
@@ -0,0 +1,25 @@
+package com.doumee.core.wms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/08/12 14:03
+ */
+@Data
+@ApiModel("WMS鍑哄簱閫氱煡鍗曟槑缁嗚姹備俊鎭�")
+public class WmsOutboundDetailRequest {
+    @ApiModelProperty(value = "鍑哄簱閫氱煡鍗曞彿" ,example = "1")
+    private String ioCode;
+    @ApiModelProperty(value = "鐗╂枡鍚嶇О" ,example = "1")
+    private String materialName;
+    @ApiModelProperty(value = "璁″垝鏀惰揣鏁伴噺" ,example = "1")
+    private BigDecimal ioQty;
+    @ApiModelProperty(value = "鐗╂枡杞崲鐜�" ,example = "1")
+    private String rate;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundNoticeRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundNoticeRequest.java
new file mode 100644
index 0000000..5e7e3e4
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/request/WmsOutboundNoticeRequest.java
@@ -0,0 +1,38 @@
+package com.doumee.core.wms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("WMS鍑哄簱閫氱煡鍗曟帹閫佽姹備俊鎭�")
+public class WmsOutboundNoticeRequest extends WmsBaseRequest {
+    @ApiModelProperty(value = "鍑哄簱閫氱煡鍗曞彿" ,example = "1")
+    private String ioCode;
+    @ApiModelProperty(value = "鏀惰揣鍦�" ,example = "1")
+    private String repertotyAddress;
+    @ApiModelProperty(value = "鍚堝悓鍙�" ,example = "1")
+    private String contractNum;
+    @ApiModelProperty(value = "杞︾墝鍙�" ,example = "1")
+    private String plateNumber;
+    @ApiModelProperty(value = "鍙告満鐢佃瘽" ,example = "1")
+    private String driverPhone;
+    @ApiModelProperty(value = "鍙告満濮撳悕" ,example = "1")
+    private String driverName;
+    @ApiModelProperty(value = "鎵胯繍鍟�" ,example = "1")
+    private String carrierName;
+    @ApiModelProperty(value = "鎵胯繍鍗曞彿" ,example = "1")
+    private String carrierBillCode;
+    @ApiModelProperty(value = "鍒涘缓鏃ユ湡" ,example = "1")
+    private String createDate;
+
+    @ApiModelProperty(value = "鍑哄簱閫氱煡琛岄」鐩暟鎹�" ,example = "1")
+    private List<WmsOutboundDetailRequest> details;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseDataResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseDataResponse.java
new file mode 100644
index 0000000..2cb59e0
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseDataResponse.java
@@ -0,0 +1,20 @@
+package com.doumee.core.wms.model.response;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("WMS鎺ュ彛澶勭悊杩斿洖data鍙傛暟")
+public class WmsBaseDataResponse {
+
+    @ApiModelProperty(value = "鏄惁鎺ユ敹鎴愬姛 1鎴愬姛 -1 澶辫触" ,example = "1")
+    private String success;
+    @ApiModelProperty(value = "娑堟伅鎻忚堪" ,example = "1")
+    private String msgDescr;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseResponse.java
new file mode 100644
index 0000000..89f9764
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wms/model/response/WmsBaseResponse.java
@@ -0,0 +1,21 @@
+package com.doumee.core.wms.model.response;
+
+import com.doumee.core.haikang.model.param.BaseRequst;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("WMS鎺ュ彛澶勭悊杩斿洖鍙傛暟")
+public class WmsBaseResponse {
+    @ApiModelProperty(value = "杩斿洖鍙傛暟" ,example = "1")
+    private List<WmsBaseDataResponse> data;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformReasonMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformReasonMapper.java
new file mode 100644
index 0000000..bc77fbb
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformReasonMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.PlatformReason;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/08/13 14:08
+ */
+public interface PlatformReasonMapper extends BaseMapper<PlatformReason> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WmsInterfaceLogMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WmsInterfaceLogMapper.java
new file mode 100644
index 0000000..1e9a8da
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WmsInterfaceLogMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.WmsInterfaceLog;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+public interface WmsInterfaceLogMapper extends BaseMapper<WmsInterfaceLog> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
index f590794..2d89301 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
@@ -60,6 +60,10 @@
     @ExcelColumn(name="鍚嶇О")
     private String name;
 
+    @ApiModelProperty(value = "鍏宠仈瀵硅薄缂栫爜锛堟湀鍙板師鍥犲叧鑱� platform_reason琛�)")
+    @ExcelColumn(name="鍏宠仈瀵硅薄缂栫爜锛堟湀鍙板師鍥犲叧鑱� platform_reason琛�)")
+    private Integer objId;
+
     @ApiModelProperty(value = "瀹℃壒妯$増閰嶇疆鏄庣粏闆嗗悎")
     @TableField(exist = false)
     private List<ApproveParam> paramList;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformReason.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformReason.java
new file mode 100644
index 0000000..6594e1b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformReason.java
@@ -0,0 +1,75 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/08/13 14:08
+ */
+@Data
+@ApiModel("鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛�")
+@TableName("`platform_reason`")
+public class PlatformReason {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "鍘熷洜")
+    @ExcelColumn(name="鍘熷洜")
+    private String reason;
+
+    @ApiModelProperty(value = "閫氱煡鍗曞彿")
+    @ExcelColumn(name="閫氱煡鍗曞彿")
+    private String iocode;
+
+    @ApiModelProperty(value = "鍏宠仈鏈堝彴缁勭紪鐮侊紙鍏宠仈platform_group琛級", example = "1")
+    @ExcelColumn(name="鍏宠仈鏈堝彴缁勭紪鐮侊紙鍏宠仈platform_group琛級")
+    private Long groupId;
+
+    @ApiModelProperty(value = "浣滀笟闄愬埗閲�", example = "1")
+    @ExcelColumn(name="浣滀笟闄愬埗閲�")
+    private BigDecimal limitNum;
+
+    @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+    @ExcelColumn(name="鎺掑簭鐮�")
+    private Integer sortnum;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WmsInterfaceLog.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WmsInterfaceLog.java
new file mode 100644
index 0000000..108bc92
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WmsInterfaceLog.java
@@ -0,0 +1,99 @@
+package com.doumee.dao.business.model;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.doumee.core.annotation.excel.ExcelColumn;
+import com.doumee.core.model.LoginUserModel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Data
+@ApiModel("WMS骞冲彴鎺ュ彛浜や簰璁板綍")
+@TableName("`wms_interface_log`")
+public class WmsInterfaceLog extends LoginUserModel {
+
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(value = "涓婚敭", example = "1")
+    @ExcelColumn(name="涓婚敭")
+    private Integer id;
+
+    @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+    private Integer creator;
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @ExcelColumn(name="鍒涘缓鏃堕棿")
+    private Date createDate;
+
+    @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
+    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+    private Integer editor;
+
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @ExcelColumn(name="鏇存柊鏃堕棿")
+    private Date editDate;
+
+    @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+    private Integer isdeleted;
+
+    @ApiModelProperty(value = "澶囨敞")
+    @ExcelColumn(name="澶囨敞")
+    private String remark;
+
+    @ApiModelProperty(value = "绫诲瀷 0璋冪敤 1鎺ㄩ�佹帴鍙�", example = "1")
+    @ExcelColumn(name="绫诲瀷 0璋冪敤 1鎺ㄩ�佹帴鍙�")
+    private Integer type;
+
+    @ApiModelProperty(value = "鎺ュ彛鍚嶇О")
+    @ExcelColumn(name="鎺ュ彛鍚嶇О")
+    private String name;
+
+    @ApiModelProperty(value = "鍦板潃淇℃伅")
+    @ExcelColumn(name="鍦板潃淇℃伅")
+    private String url;
+
+    @ApiModelProperty(value = "璇锋眰鍙傛暟")
+    @ExcelColumn(name="璇锋眰鍙傛暟")
+    private String request;
+
+    @ApiModelProperty(value = "鍝嶅簲鍙傛暟")
+    @ExcelColumn(name="鍝嶅簲鍙傛暟")
+    private String repose;
+
+    @ApiModelProperty(value = "璋冪敤缁撴灉 0鎴愬姛 1澶辫触", example = "1")
+    @ExcelColumn(name="璋冪敤缁撴灉 0鎴愬姛 1澶辫触")
+    private Integer success;
+
+    @ApiModelProperty(value = "骞冲彴 0娴峰悍瀹夐槻骞冲彴 1ERP绯荤粺", example = "1")
+    @ExcelColumn(name="骞冲彴 0娴峰悍瀹夐槻骞冲彴 1ERP绯荤粺")
+    private Integer plat;
+
+    @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷  0缁勭粐 1浜哄憳 2闂ㄧ浜嬩欢 3璁惧", example = "1")
+    @ExcelColumn(name="鍏宠仈瀵硅薄绫诲瀷  0缁勭粐 1浜哄憳 2闂ㄧ浜嬩欢 3璁惧")
+    private Integer objType;
+
+    @ApiModelProperty(value = "鍏宠仈瀵硅薄缂栫爜锛堝涓敤鑻辨枃閫楀彿闅斿紑锛�")
+    @ExcelColumn(name="鍏宠仈瀵硅薄缂栫爜锛堝涓敤鑻辨枃閫楀彿闅斿紑锛�")
+    private String objId;
+
+
+    @ApiModelProperty(value = "寮�濮嬫椂闂�")
+    @TableField(exist = false)
+    private Date startDate;
+
+    @ApiModelProperty(value = "缁撴潫鏃堕棿")
+    @TableField(exist = false)
+    private Date endDate;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformReasonService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformReasonService.java
new file mode 100644
index 0000000..fb57f30
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformReasonService.java
@@ -0,0 +1,97 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.PlatformReason;
+import java.util.List;
+
+/**
+ * 鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/08/13 14:08
+ */
+public interface PlatformReasonService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param platformReason 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(PlatformReason platformReason);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param platformReason 瀹炰綋瀵硅薄
+     */
+    void delete(PlatformReason platformReason);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param platformReason 瀹炰綋瀵硅薄
+     */
+    void updateById(PlatformReason platformReason);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param platformReasons 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<PlatformReason> platformReasons);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return PlatformReason
+     */
+    PlatformReason findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param platformReason 瀹炰綋瀵硅薄
+     * @return PlatformReason
+     */
+    PlatformReason findOne(PlatformReason platformReason);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param platformReason 瀹炰綋瀵硅薄
+     * @return List<PlatformReason>
+     */
+    List<PlatformReason> findList(PlatformReason platformReason);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<PlatformReason>
+     */
+    PageData<PlatformReason> findPage(PageWrap<PlatformReason> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param platformReason 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(PlatformReason platformReason);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsInterfaceLogService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsInterfaceLogService.java
new file mode 100644
index 0000000..a0af04b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsInterfaceLogService.java
@@ -0,0 +1,100 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.WmsInterfaceLog;
+
+import java.util.List;
+
+/**
+ * 涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+public interface WmsInterfaceLogService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param interfaceLog 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(WmsInterfaceLog interfaceLog);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param interfaceLog 瀹炰綋瀵硅薄
+     */
+    void delete(WmsInterfaceLog interfaceLog);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param interfaceLog 瀹炰綋瀵硅薄
+     */
+    void updateById(WmsInterfaceLog interfaceLog);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param interfaceLogs 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<WmsInterfaceLog> interfaceLogs);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return InterfaceLog
+     */
+    WmsInterfaceLog findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param interfaceLog 瀹炰綋瀵硅薄
+     * @return InterfaceLog
+     */
+    WmsInterfaceLog findOne(WmsInterfaceLog interfaceLog);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param interfaceLog 瀹炰綋瀵硅薄
+     * @return List<InterfaceLog>
+     */
+    List<WmsInterfaceLog> findList(WmsInterfaceLog interfaceLog);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<InterfaceLog>
+     */
+    PageData<WmsInterfaceLog> findPage(PageWrap<WmsInterfaceLog> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param interfaceLog 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(WmsInterfaceLog interfaceLog);
+
+    void clearThreeMonthLog();
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsService.java
new file mode 100644
index 0000000..a04670b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WmsService.java
@@ -0,0 +1,54 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.wms.model.request.WmsActionNoticeRequest;
+import com.doumee.core.wms.model.request.WmsInboundNoticeRequest;
+import com.doumee.core.wms.model.request.WmsOutboundNoticeRequest;
+import com.doumee.core.wms.model.response.WmsBaseResponse;
+import com.doumee.dao.business.model.Platform;
+
+import java.util.List;
+
+/**
+ * 鏈堝彴淇℃伅琛⊿ervice瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/06/28 10:03
+ */
+public interface WmsService {
+
+    /**
+     * 鍏ュ簱鍗曟壒閲忛�氱煡
+     * @param list 鍙傛暟
+     * @return WmsBaseResponse
+     */
+    WmsBaseResponse inboundNotice(List<WmsInboundNoticeRequest> list);
+
+    /**
+     * 鍑哄簱鍗曟壒閲忛�氱煡
+     * @param list 鍙傛暟
+     * @return WmsBaseResponse
+     */
+    WmsBaseResponse outboundNotice(List<WmsOutboundNoticeRequest> list);
+
+    /**
+     * 鍙栨秷鍏ュ簱鍗曢�氱煡
+     * @param list 鍙傛暟
+     * @return WmsBaseResponse
+     */
+    WmsBaseResponse cancelInbound(List<WmsActionNoticeRequest> list);
+    /**
+     * 鍙栨秷鍑哄簱鍗曢�氱煡
+     * @param list 鍙傛暟
+     * @return WmsBaseResponse
+     */
+    WmsBaseResponse cancelOutbound(List<WmsActionNoticeRequest> list);
+    /**
+     * 鍑哄叆搴撲綔涓氬畬鎴愰�氱煡
+     * @param list 鍙傛暟
+     * @return WmsBaseResponse
+     */
+    WmsBaseResponse doneTask(List<WmsActionNoticeRequest> list);
+
+
+}
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 6779db0..411c0b6 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
@@ -3,6 +3,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.visit.EventVisitRequest;
 import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse;
 import com.doumee.dao.business.model.ParkBook;
@@ -81,4 +83,8 @@
 
     void syncMemberDelData();
     String getServiceUrl(HKGetServiceLoginUrlRequest param);
+
+    void dealWorkstatusEvent(EventPlatWorkstatusRequest param, HttpServletResponse response);
+
+    void dealCarstatusEvent(EventPlatCarstatusRequest param, HttpServletResponse response);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
index 5b03ed6..0361711 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
@@ -86,8 +86,8 @@
         }
         CardBingdingRequest param = new CardBingdingRequest();
         if(member.getStartTime() !=null && member.getEndTime()!=null){
-            param.setStartDate(DateUtil.getISO8601Timestamp(member.getStartTime()));
-            param.setEndDate(DateUtil.getISO8601Timestamp(member.getEndTime()));
+            param.setStartDate(DateUtil.getShortTime(member.getStartTime()));
+            param.setEndDate(DateUtil.getShortTime(member.getEndTime()));
         }
         CardInfoRequest cr = new CardInfoRequest();
         cr.setCardNo(memberCard.getCode());
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformReasonServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformReasonServiceImpl.java
new file mode 100644
index 0000000..67209d8
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformReasonServiceImpl.java
@@ -0,0 +1,145 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.PlatformReasonMapper;
+import com.doumee.dao.business.model.PlatformReason;
+import com.doumee.service.business.PlatformReasonService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 鏈堝彴_鍏ュ洯鍘熷洜淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2024/08/13 14:08
+ */
+@Service
+public class PlatformReasonServiceImpl implements PlatformReasonService {
+
+    @Autowired
+    private PlatformReasonMapper platformReasonMapper;
+
+    @Override
+    public Integer create(PlatformReason platformReason) {
+        platformReasonMapper.insert(platformReason);
+        return platformReason.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        platformReasonMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(PlatformReason platformReason) {
+        UpdateWrapper<PlatformReason> deleteWrapper = new UpdateWrapper<>(platformReason);
+        platformReasonMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        platformReasonMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(PlatformReason platformReason) {
+        platformReasonMapper.updateById(platformReason);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<PlatformReason> platformReasons) {
+        if (CollectionUtils.isEmpty(platformReasons)) {
+            return;
+        }
+        for (PlatformReason platformReason: platformReasons) {
+            this.updateById(platformReason);
+        }
+    }
+
+    @Override
+    public PlatformReason findById(Integer id) {
+        return platformReasonMapper.selectById(id);
+    }
+
+    @Override
+    public PlatformReason findOne(PlatformReason platformReason) {
+        QueryWrapper<PlatformReason> wrapper = new QueryWrapper<>(platformReason);
+        return platformReasonMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<PlatformReason> findList(PlatformReason platformReason) {
+        QueryWrapper<PlatformReason> wrapper = new QueryWrapper<>(platformReason);
+        return platformReasonMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<PlatformReason> findPage(PageWrap<PlatformReason> pageWrap) {
+        IPage<PlatformReason> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<PlatformReason> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(PlatformReason::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(PlatformReason::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(PlatformReason::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(PlatformReason::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getReason() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getReason, pageWrap.getModel().getReason());
+        }
+        if (pageWrap.getModel().getIocode() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getIocode, pageWrap.getModel().getIocode());
+        }
+        if (pageWrap.getModel().getGroupId() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getGroupId, pageWrap.getModel().getGroupId());
+        }
+        if (pageWrap.getModel().getLimitNum() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getLimitNum, pageWrap.getModel().getLimitNum());
+        }
+        if (pageWrap.getModel().getSortnum() != null) {
+            queryWrapper.lambda().eq(PlatformReason::getSortnum, pageWrap.getModel().getSortnum());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(platformReasonMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(PlatformReason platformReason) {
+        QueryWrapper<PlatformReason> wrapper = new QueryWrapper<>(platformReason);
+        return platformReasonMapper.selectCount(wrapper);
+    }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WmsInterfaceLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WmsInterfaceLogServiceImpl.java
new file mode 100644
index 0000000..a91675c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WmsInterfaceLogServiceImpl.java
@@ -0,0 +1,171 @@
+package com.doumee.service.business.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.WmsInterfaceLogMapper;
+import com.doumee.dao.business.model.WmsInterfaceLog;
+import com.doumee.service.business.WmsInterfaceLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * 涓夋柟骞冲彴鎺ュ彛浜や簰璁板綍Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+public class WmsInterfaceLogServiceImpl implements WmsInterfaceLogService {
+
+    @Autowired
+    private WmsInterfaceLogMapper interfaceLogMapper;
+    @Autowired
+    private SystemDictDataBiz systemDictDataBiz;
+
+    @Override
+    public Integer create(WmsInterfaceLog interfaceLog) {
+        interfaceLogMapper.insert(interfaceLog);
+        return interfaceLog.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        interfaceLogMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(WmsInterfaceLog interfaceLog) {
+        UpdateWrapper<WmsInterfaceLog> deleteWrapper = new UpdateWrapper<>(interfaceLog);
+        interfaceLogMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        interfaceLogMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(WmsInterfaceLog interfaceLog) {
+        interfaceLogMapper.updateById(interfaceLog);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<WmsInterfaceLog> interfaceLogs) {
+        if (CollectionUtils.isEmpty(interfaceLogs)) {
+            return;
+        }
+        for (WmsInterfaceLog interfaceLog: interfaceLogs) {
+            this.updateById(interfaceLog);
+        }
+    }
+
+    @Override
+    public WmsInterfaceLog findById(Integer id) {
+        return interfaceLogMapper.selectById(id);
+    }
+
+    @Override
+    public WmsInterfaceLog findOne(WmsInterfaceLog interfaceLog) {
+        QueryWrapper<WmsInterfaceLog> wrapper = new QueryWrapper<>(interfaceLog);
+        return interfaceLogMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<WmsInterfaceLog> findList(WmsInterfaceLog interfaceLog) {
+        QueryWrapper<WmsInterfaceLog> wrapper = new QueryWrapper<>(interfaceLog);
+        return interfaceLogMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<WmsInterfaceLog> findPage(PageWrap<WmsInterfaceLog> pageWrap) {
+        IPage<WmsInterfaceLog> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<WmsInterfaceLog> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(WmsInterfaceLog::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(WmsInterfaceLog::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEditor() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getEditor, pageWrap.getModel().getEditor());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(WmsInterfaceLog::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(WmsInterfaceLog::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+
+        if (pageWrap.getModel().getStartDate() != null) {
+            queryWrapper.lambda().ge(WmsInterfaceLog::getCreateDate, pageWrap.getModel().getStartDate());
+        }
+        if (pageWrap.getModel().getEndDate() != null) {
+            queryWrapper.lambda().le(WmsInterfaceLog::getCreateDate, pageWrap.getModel().getEndDate());
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getType() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getType, pageWrap.getModel().getType());
+        }
+        if (pageWrap.getModel().getName() != null) {
+            queryWrapper.lambda().like(WmsInterfaceLog::getName, pageWrap.getModel().getName());
+        }
+        if (pageWrap.getModel().getUrl() != null) {
+            queryWrapper.lambda().like(WmsInterfaceLog::getUrl, pageWrap.getModel().getUrl());
+        }
+        if (pageWrap.getModel().getRequest() != null) {
+            queryWrapper.lambda().like(WmsInterfaceLog::getRequest, pageWrap.getModel().getRequest());
+        }
+        if (pageWrap.getModel().getRepose() != null) {
+            queryWrapper.lambda().like(WmsInterfaceLog::getRepose, pageWrap.getModel().getRepose());
+        }
+        if (pageWrap.getModel().getSuccess() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getSuccess, pageWrap.getModel().getSuccess());
+        }
+        if (pageWrap.getModel().getPlat() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getPlat, pageWrap.getModel().getPlat());
+        }
+        if (pageWrap.getModel().getObjType() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getObjType, pageWrap.getModel().getObjType());
+        }
+        if (pageWrap.getModel().getObjId() != null) {
+            queryWrapper.lambda().eq(WmsInterfaceLog::getObjId, pageWrap.getModel().getObjId());
+        }
+        queryWrapper.lambda().orderByDesc(WmsInterfaceLog::getCreateDate);
+        return PageData.from(interfaceLogMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(WmsInterfaceLog interfaceLog) {
+        QueryWrapper<WmsInterfaceLog> wrapper = new QueryWrapper<>(interfaceLog);
+        return interfaceLogMapper.selectCount(wrapper);
+    }
+    @Override
+    public void clearThreeMonthLog() {
+         int days =15;
+         try {
+             days = Integer.parseInt(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.HK_LOG_DEL_DAYS_LIMIT).getCode());
+         }catch (Exception e){}
+          interfaceLogMapper.delete(new UpdateWrapper<WmsInterfaceLog>().lambda()
+                  .apply("to_days(create_date)+"+days+" < to_days(now())") );
+    }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
index 92901c9..a9ebbdc 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -80,7 +80,6 @@
     @Autowired
     private VisitEventMapper visitEventMapper;
 
-
     @Autowired
     private VisitEventJoinMapper visitEventJoinMapper;
 
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 eee6192..6ab5454 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
@@ -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.EventPlatCarstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
 import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
 import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse;
 import com.doumee.core.haikang.model.param.respose.TaskAdditionResponse;
@@ -49,6 +51,13 @@
 //    @Async
     public  void syncParkRecords(Date date){
     }
+
+    @Override
+    public  void dealWorkstatusEvent(EventPlatWorkstatusRequest param, HttpServletResponse response){
+    }
+    @Override
+    public  void dealCarstatusEvent(EventPlatCarstatusRequest param, HttpServletResponse response){
+    }
     @Override
 //    @Async
     public String syncDoors(DoorsListRequest param){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java
new file mode 100644
index 0000000..08b14c1
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java
@@ -0,0 +1,137 @@
+package com.doumee.service.business.impl.wms;
+
+import com.doumee.core.wms.model.request.WmsActionNoticeRequest;
+import com.doumee.core.wms.model.request.WmsInboundNoticeRequest;
+import com.doumee.core.wms.model.request.WmsOutboundNoticeRequest;
+import com.doumee.core.wms.model.response.WmsBaseDataResponse;
+import com.doumee.core.wms.model.response.WmsBaseResponse;
+import com.doumee.dao.business.PlatformWmsDetailMapper;
+import com.doumee.dao.business.PlatformWmsJobMapper;
+import com.doumee.dao.business.model.PlatformWmsJob;
+import com.doumee.service.business.WmsService;
+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.List;
+
+/**
+ * WMS骞冲彴瀵规帴Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+public class WmsServiceImpl implements WmsService {
+    @Autowired
+    private PlatformWmsJobMapper platformWmsJobMapper;
+    @Autowired
+    private PlatformWmsDetailMapper platformWmsDetailMapper;
+
+    /**
+     * 鍏ュ簱閫氱煡浠诲姟涓氬姟澶勭悊
+     * @param list 鍙傛暟
+     * @return
+     */
+    @Override
+    public WmsBaseResponse inboundNotice(List<WmsInboundNoticeRequest> list) {
+        //TODO-------------------澶勭悊鍏ュ簱閫氱煡涓氬姟--------------------
+        if(list ==null || list.size() ==0){
+            return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖");
+        }
+        WmsBaseResponse response = new WmsBaseResponse();
+        response.setData(new ArrayList<>());
+
+        return response;
+    }
+
+
+
+    /**
+     * 鍑哄簱閫氱煡浠诲姟涓氬姟澶勭悊
+     * @param list 鍙傛暟
+     * @return
+     */
+    @Override
+    public WmsBaseResponse outboundNotice(List<WmsOutboundNoticeRequest> list) {
+        //TODO-------------------澶勭悊鍑哄簱閫氱煡涓氬姟--------------------
+        if(list ==null || list.size() ==0){
+            return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖");
+        }
+        return null;
+    }
+    /**
+     * 鍏ュ簱鍙栨秷閫氱煡浠诲姟涓氬姟澶勭悊
+     * @param list 鍙傛暟
+     * @return
+     */
+    @Override
+    public WmsBaseResponse cancelInbound(List<WmsActionNoticeRequest> list) {
+        //TODO-------------------澶勭悊鍏ュ簱鍙栨秷閫氱煡涓氬姟--------------------
+        if(list ==null || list.size() ==0){
+            return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖");
+        }
+
+
+        return returnSuccessReuslt(null);
+    }
+    /**
+     * 鍑哄簱鍙栨秷閫氱煡浠诲姟涓氬姟澶勭悊
+     * @param list 鍙傛暟
+     * @return
+     */
+    @Override
+    public WmsBaseResponse cancelOutbound(List<WmsActionNoticeRequest> list) {
+        //TODO-------------------澶勭悊鍑哄簱鍙栨秷閫氱煡涓氬姟--------------------
+        if(list ==null || list.size() ==0){
+            return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖");
+        }
+
+        return returnSuccessReuslt(null);
+    }
+    /**
+     * 浣滀笟瀹屾垚閫氱煡浠诲姟涓氬姟澶勭悊
+     * @param list 鍙傛暟
+     * @return
+     */
+    @Override
+    public WmsBaseResponse doneTask(List<WmsActionNoticeRequest> list) {
+        //TODO-------------------澶勭悊鍑哄叆搴撲綔涓氬畬鎴愰�氱煡涓氬姟--------------------
+        if(list ==null || list.size() ==0){
+            return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖");
+        }
+
+        return returnSuccessReuslt(null);
+    }
+
+    /**
+     * 灏佽閿欒杩斿洖瀵硅薄
+     * @param msg
+     * @return
+     */
+
+    private WmsBaseResponse returnFailReuslt(String msg) {
+        WmsBaseResponse response = new WmsBaseResponse();
+        response.setData(new ArrayList<>());
+        WmsBaseDataResponse rData = new WmsBaseDataResponse();
+        rData.setMsgDescr(msg);
+        rData.setSuccess("-1");
+        response.getData().add(rData);
+        return  response;
+    }
+    /**
+     * 灏佽鎴愬姛杩斿洖瀵硅薄
+     * @param msg
+     * @return
+     */
+
+    private WmsBaseResponse returnSuccessReuslt(String msg) {
+        WmsBaseResponse response = new WmsBaseResponse();
+        response.setData(new ArrayList<>());
+        WmsBaseDataResponse rData = new WmsBaseDataResponse();
+        rData.setMsgDescr(StringUtils.defaultString(msg,"鎿嶄綔鎴愬姛"));
+        rData.setSuccess("1");
+        response.getData().add(rData);
+        return  response;
+    }
+}

--
Gitblit v1.9.3