From c5cc7da07c7f202f336468c0cd0d2789b4775b03 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 09 十月 2024 11:31:15 +0800
Subject: [PATCH] 最新版本

---
 server/system_service/src/main/java/com/doumee/core/utils/Constants.java                                                |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformEvent.java                            |   24 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java                     |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformEventMapper.java                            |    3 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformCameraInfoResponse.java |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java           |   36 +++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformEventCloudController.java                      |   91 ++++++++++
 server/system_service/src/main/java/com/doumee/core/utils/HttpsUtil.java                                                |   36 ++++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformDeviceCloudController.java                     |   28 +-
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java          |   15 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformEventServiceImpl.java              |  111 +++++++-----
 admin/src/views/business/platformEvent.vue                                                                              |  161 +++++++++++++++++
 admin/src/api/business/platformEvent.js                                                                                 |   18 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPlatformsServiceImpl.java     |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncLoginAuthServiceImpl.java     |    2 
 15 files changed, 459 insertions(+), 72 deletions(-)

diff --git a/admin/src/api/business/platformEvent.js b/admin/src/api/business/platformEvent.js
new file mode 100644
index 0000000..8dc388c
--- /dev/null
+++ b/admin/src/api/business/platformEvent.js
@@ -0,0 +1,18 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+  return request.post('/visitsAdmin/cloudService/business/platformEvent/page', data, {
+    trim: true
+  })
+}
+
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+  return request.post('/visitsAdmin/cloudService/business/platformEvent/exportExcel', data, {
+    trim: true,
+    download: true
+  })
+}
+
+
diff --git a/admin/src/views/business/platformEvent.vue b/admin/src/views/business/platformEvent.vue
new file mode 100644
index 0000000..d0b6bc8
--- /dev/null
+++ b/admin/src/views/business/platformEvent.vue
@@ -0,0 +1,161 @@
+<template>
+    <TableLayout :permissions="['business:interfacelog:query']">
+        <!-- 鎼滅储琛ㄥ崟 -->
+        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+          <el-form-item label="" prop="platformName">
+            <el-input v-model="searchForm.platformName" placeholder="璇疯緭鍏ユ湀鍙板悕绉�" @keypress.enter.native="search"></el-input>
+          </el-form-item>
+          <el-form-item label="" prop="channelName">
+            <el-input v-model="searchForm.channelName" placeholder="璇疯緭鍏ョ洃鎺х偣鍚嶇О" @keypress.enter.native="search"></el-input>
+          </el-form-item>
+          <el-form-item label="" prop="plateNo">
+            <el-input v-model="searchForm.plateNo" placeholder="璇疯緭鍏ヨ溅鐗屽彿" @keypress.enter.native="search"></el-input>
+          </el-form-item>
+          <el-form-item label="" prop="eventType">
+            <el-select v-model="searchForm.motionStatus" placeholder="璇烽�夋嫨杩涘嚭绫诲瀷">
+              <el-option label="绂诲紑" value="leave"></el-option>
+              <el-option label="杩涘叆" value="enter"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="璧锋鏃堕棿" prop="startDate">
+                <el-date-picker
+                    @change="seleTime"
+                    v-model="time"
+                    type="datetimerange"
+                    format="yyyy-MM-dd HH:mm:ss"
+                    value-format="yyyy-MM-dd HH:mm:ss"
+                    range-separator="鑷�"
+                    start-placeholder="寮�濮嬫椂闂�"
+                    end-placeholder="缁撴潫鏃堕棿">
+                </el-date-picker>
+            </el-form-item>
+            <el-radio-group v-model="searchForm.radio" size="small" @input="changeRadio">
+                <el-radio-button label="0">褰撳ぉ</el-radio-button>
+                <el-radio-button label="1">杩�7澶�</el-radio-button>
+                <el-radio-button label="2">杩�30澶�</el-radio-button>
+            </el-radio-group>
+            <section>
+                <el-button type="primary" @click="search">鎼滅储</el-button>
+                <el-button @click="reset">閲嶇疆</el-button>
+            </section>
+        </el-form>
+        <!-- 琛ㄦ牸鍜屽垎椤� -->
+        <template v-slot:table-wrap>
+            <el-table
+                v-loading="isWorking.search"
+                :data="tableData.list"
+                stripe
+            >
+                <el-table-column prop="platformName" label="鏈堝彴鍚嶇О" min-width="180px"></el-table-column>
+                <el-table-column prop="channelName" label="鐩戞帶鐐瑰悕绉�" min-width="180px"></el-table-column>
+                <el-table-column prop="plateNo" label="杞︾墝鍙�" min-width="180px"></el-table-column>
+                <el-table-column   label="杞﹁締杩涘嚭绫诲瀷" min-width="180px">
+                  <template slot-scope="{row}">
+                    <span v-if="row.motionStatus == 'enter'">杩涘叆span>
+                    <span v-if="row.motionStatus == 'leave'">绂诲紑</span>
+                    <span v-if="row.motionStatus != 'leave' && row.motionStatus != 'enter'">{{ row.motionStatus }}</span>
+                  </template>
+                </el-table-column>
+                <el-table-column   label="鍓嶅悗鏍囪瘑" min-width="180px">
+                  <template slot-scope="{row}">
+                    <span v-if="row.stockStatus == 'rear'">杞﹀熬</span>
+                    <span v-if="row.stockStatus == 'front'">杞﹀ご</span>
+                    <span v-if="row.stockStatus != 'rear' && row.stockStatus != 'front'">{{ row.stockStatus }}</span>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="stockStatus" label="杞﹂棬鐘舵��" min-width="180px"></el-table-column>
+                <el-table-column label="杞﹂棬鐘舵��" min-width="100px">
+                    <template slot-scope="{row}">
+                        <span v-if="row.vehicleDoorStatus == 'open'">寮�闂�</span>
+                        <span v-if="row.vehicleDoorStatus == 'close'">鍏抽棬</span>
+                        <span v-if="row.vehicleDoorStatus != 'open' && row.vehicleDoorStatus != 'close'">{{ row.vehicleDoorStatus }}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="deviceId" label="璁惧缂栫爜" min-width="150px"></el-table-column>
+                <el-table-column prop="ipAddress" label="IP鍦板潃" min-width="100px"></el-table-column>
+                <el-table-column prop="portNo" label="绔彛" min-width="100px"></el-table-column>
+                <el-table-column fixed="right" label="鎶撴媿鍥�" min-width="100px">
+                  <template slot-scope="{row}">
+                    <el-image v-if="row.backgroundImageDown" style="width: 60px; height: 60px" :src="row.backgroundImageDown"
+                              :preview-src-list="[row.backgroundImageDown]">
+                    </el-image>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
+            </el-table>
+            <pagination
+                @size-change="handleSizeChange"
+                @current-change="handlePageChange"
+                :pagination="tableData.pagination"
+            >
+            </pagination>
+        </template>
+    </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import { timeForMat } from '@/utils/util'
+export default {
+  name: 'platformEvent',
+  extends: BaseTable,
+  components: { TableLayout, Pagination },
+  data () {
+    return {
+      // 鎼滅储
+      searchForm: {
+        plateNo: '',
+        motionStatus: '',
+        channelName: '',
+        platformName: '',
+        endDate: '',
+        startDate: '',
+        radio: '0'
+      },
+      time: []
+    }
+  },
+  created () {
+    this.config({
+      module: '鏈堝彴杞﹁締鐘舵�佷簨浠朵氦浜掕褰�',
+      api: '/business/platformEvent',
+      'field.id': 'id',
+      'field.main': 'id'
+    })
+    this.changeRadio('0')
+  },
+  methods: {
+    changeRadio (e) {
+      if (e === '0') {
+        this.searchForm.startDate = timeForMat(0)[0]
+        this.searchForm.endDate = timeForMat(0)[1]
+        this.time = timeForMat(0)
+      } else if (e === '1') {
+        this.searchForm.startDate = timeForMat(6)[0]
+        this.searchForm.endDate = timeForMat(6)[1]
+        this.time = timeForMat(6)
+      } else if (e === '2') {
+        this.searchForm.startDate = timeForMat(29)[0]
+        this.searchForm.endDate = timeForMat(29)[1]
+        this.time = timeForMat(29)
+      }
+      this.search()
+    },
+    seleTime (e) {
+      this.searchForm.startDate = e[0]
+      this.searchForm.endDate = e[1]
+      this.searchForm.radio = null
+      this.search()
+    },
+    reset () {
+      this.$refs.searchForm.resetFields()
+      this.searchForm.startDate = ''
+      this.searchForm.endDate = ''
+      this.time = []
+      this.search()
+    }
+  }
+}
+</script>
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 1c38558..8417fc0 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
@@ -71,6 +71,7 @@
     // 璁垮鏉ヨ閰嶇疆
     public static final String VISIT_CONFIG = "VISIT_CONFIG";
     public static final String MEMBER_IMG = "MEMBER_IMG";
+    public static final String PLATFORM_EVENT_IMG = "PLATFORM_EVENT_IMG";
     public static final String VISIT_NOTICE = "VISIT_NOTICE";
     //鍋ュ悍璇侀厤缃�
     public static final String LW_HEALTH_CARD = "LW_HEALTH_CARD";
diff --git a/server/system_service/src/main/java/com/doumee/core/utils/HttpsUtil.java b/server/system_service/src/main/java/com/doumee/core/utils/HttpsUtil.java
index c74af73..d0025db 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/HttpsUtil.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/HttpsUtil.java
@@ -1,5 +1,7 @@
 package com.doumee.core.utils;
 
+import org.springframework.http.HttpMethod;
+
 import javax.net.ssl.*;
 import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
@@ -87,6 +89,40 @@
         }
         return null;
     }
+    public static InputStream connectionInputsteam(String url,String method,String data,String contentType ){
+        HttpURLConnection connection = null;
+        try {
+            URL _url = new URL(url);
+            connection = (HttpURLConnection) _url.openConnection();
+            connection.setRequestMethod(method);
+            connection.setDoOutput(true);
+            connection.setDoInput(true);
+            connection.setUseCaches(false);
+            if(contentType != null){
+                connection.setRequestProperty("Content-Type", contentType);
+            }
+
+            connection.connect();
+
+            if(data != null){
+                OutputStream outputStream = connection.getOutputStream();
+                outputStream.write(data.getBytes("utf-8"));
+                outputStream.close();
+            }
+
+            int responseCode = connection.getResponseCode();
+            if (responseCode == HttpsURLConnection.HTTP_OK) {
+               return  connection.getInputStream();
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            if(connection != null){
+                connection.disconnect();
+            }
+        }
+        return null;
+    }
     public static String connectionHttp(String url,String method,String data,String contentType ){
         HttpURLConnection connection = null;
         try {
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformDeviceCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformDeviceCloudController.java
index 4104693..986896f 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformDeviceCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformDeviceCloudController.java
@@ -1,21 +1,21 @@
 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.PageWrap;
 import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
 import com.doumee.dao.business.model.PlatformDevice;
 import com.doumee.service.business.PlatformDeviceService;
 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 javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -34,14 +34,14 @@
     @PreventRepeat
     @ApiOperation("鏂板缓")
     @PostMapping("/create")
-    @RequiresPermissions("business:platformdevice:create")
+    @CloudRequiredPermission("business:platformdevice:create")
     public ApiResponse create(@RequestBody PlatformDevice platformDevice) {
         return ApiResponse.success(platformDeviceService.create(platformDevice));
     }
 
     @ApiOperation("鏍规嵁ID鍒犻櫎")
     @GetMapping("/delete/{id}")
-    @RequiresPermissions("business:platformdevice:delete")
+    @CloudRequiredPermission("business:platformdevice:delete")
     public ApiResponse deleteById(@PathVariable Integer id) {
         platformDeviceService.deleteById(id);
         return ApiResponse.success(null);
@@ -49,7 +49,7 @@
 
     @ApiOperation("鎵归噺鍒犻櫎")
     @GetMapping("/delete/batch")
-    @RequiresPermissions("business:platformdevice:delete")
+    @CloudRequiredPermission("business:platformdevice:delete")
     public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
         String [] idArray = ids.split(",");
         List<Integer> idList = new ArrayList<>();
@@ -62,30 +62,30 @@
 
     @ApiOperation("鏍规嵁ID淇敼")
     @PostMapping("/updateById")
-    @RequiresPermissions("business:platformdevice:update")
-    public ApiResponse updateById(@RequestBody PlatformDevice platformDevice) {
+    @CloudRequiredPermission("business:platformdevice:update")
+    public ApiResponse updateById(@RequestBody PlatformDevice platformDevice,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         platformDeviceService.updateById(platformDevice);
         return ApiResponse.success(null);
     }
 
     @ApiOperation("鍒嗛〉鏌ヨ")
     @PostMapping("/page")
-    @RequiresPermissions("business:platformdevice:query")
-    public ApiResponse<PageData<PlatformDevice>> findPage (@RequestBody PageWrap<PlatformDevice> pageWrap) {
+    @CloudRequiredPermission("business:platformdevice:query")
+    public ApiResponse<PageData<PlatformDevice>> findPage (@RequestBody PageWrap<PlatformDevice> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         return ApiResponse.success(platformDeviceService.findPage(pageWrap));
     }
 
     @ApiOperation("瀵煎嚭Excel")
     @PostMapping("/exportExcel")
-    @RequiresPermissions("business:platformdevice:exportExcel")
-    public void exportExcel (@RequestBody PageWrap<PlatformDevice> pageWrap, HttpServletResponse response) {
+    @CloudRequiredPermission("business:platformdevice:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<PlatformDevice> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         ExcelExporter.build(PlatformDevice.class).export(platformDeviceService.findPage(pageWrap).getRecords(), "鏈堝彴_鍏宠仈鐩戞帶鐐筁ED鍜屽箍鎾俊鎭〃", response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
     @GetMapping("/{id}")
-    @RequiresPermissions("business:platformdevice:query")
-    public ApiResponse findById(@PathVariable Integer id) {
+    @CloudRequiredPermission("business:platformdevice:query")
+    public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         return ApiResponse.success(platformDeviceService.findById(id));
     }
 }
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformEventCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformEventCloudController.java
new file mode 100644
index 0000000..90ad9d4
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformEventCloudController.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.PlatformEvent;
+import com.doumee.service.business.PlatformEventService;
+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/28 17:24
+ */
+@Api(tags = "鏈堝彴_杞﹁締杩涘嚭浜嬩欢鎺ㄩ�佽褰曡〃")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business//platformEvent")
+public class PlatformEventCloudController extends BaseController {
+
+    @Autowired
+    private PlatformEventService platformEventService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @CloudRequiredPermission("business:platformevent:create")
+    public ApiResponse create(@RequestBody PlatformEvent platformEvent,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        return ApiResponse.success(platformEventService.create(platformEvent));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @CloudRequiredPermission("business:platformevent:delete")
+    public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        platformEventService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @CloudRequiredPermission("business:platformevent: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));
+        }
+        platformEventService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @CloudRequiredPermission("business:platformevent:update")
+    public ApiResponse updateById(@RequestBody PlatformEvent platformEvent,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        platformEventService.updateById(platformEvent);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @CloudRequiredPermission("business:platformevent:query")
+    public ApiResponse<PageData<PlatformEvent>> findPage (@RequestBody PageWrap<PlatformEvent> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        return ApiResponse.success(platformEventService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @CloudRequiredPermission("business:platformevent:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<PlatformEvent> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        ExcelExporter.build(PlatformEvent.class).export(platformEventService.findPage(pageWrap).getRecords(), "鏈堝彴杞﹁締杩涘嚭浜嬩欢鎺ㄩ�佽褰曡〃", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @CloudRequiredPermission("business:platformevent:query")
+    public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        return ApiResponse.success(platformEventService.findById(id));
+    }
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformCameraInfoResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformCameraInfoResponse.java
index 993861a..c02b729 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformCameraInfoResponse.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PlatformCameraInfoResponse.java
@@ -6,6 +6,6 @@
 public class PlatformCameraInfoResponse {
 
 
- private String  cameraIdompan;//	String	false	鐩戞帶鐐笽D
+ private String  cameraId;//	String	false	鐩戞帶鐐笽D
  private String  cameraName	;//String	false	鐩戞帶鐐瑰悕绉�
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformEventMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformEventMapper.java
index a7ebd19..17ff953 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformEventMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformEventMapper.java
@@ -2,11 +2,12 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.doumee.dao.business.model.PlatformEvent;
+import com.github.yulichang.base.MPJBaseMapper;
 
 /**
  * @author 姹熻箘韫�
  * @date 2024/08/28 17:24
  */
-public interface PlatformEventMapper extends BaseMapper<PlatformEvent> {
+public interface PlatformEventMapper extends MPJBaseMapper<PlatformEvent> {
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformEvent.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformEvent.java
index 3f39246..ade66f6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformEvent.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformEvent.java
@@ -1,5 +1,6 @@
 package com.doumee.dao.business.model;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.doumee.core.annotation.excel.ExcelColumn;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -46,6 +47,9 @@
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
     @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
     private Integer isdeleted;
+    @ApiModelProperty(value = "鏈堝彴缂栫爜,鍏宠仈platform琛�", example = "1")
+    @ExcelColumn(name="鏈堝彴缂栫爜,鍏宠仈platform琛�")
+    private Integer platformId;
 
     @ApiModelProperty(value = "澶囨敞")
     @ExcelColumn(name="澶囨敞")
@@ -158,8 +162,8 @@
     @ExcelColumn(name="杞﹂棬鐘舵�伮� open-寮�闂紝close-鍏抽棬")
     private String vehicleDoorStatus;
 
-    @ApiModelProperty(value = "杞﹀ご杞﹀熬鐘舵�伮� 聽front#杞﹀ご,rear#杞﹀熬", example = "1")
-    @ExcelColumn(name="杞﹀ご杞﹀熬鐘舵�伮� 聽front#杞﹀ご,rear#杞﹀熬")
+    @ApiModelProperty(value = "杞﹀ご杞﹀熬鐘舵�乫ront#杞﹀ご,rear#杞﹀熬", example = "1")
+    @ExcelColumn(name="杞﹀ご杞﹀熬鐘舵�乫ront#杞﹀ご,rear#杞﹀熬")
     private String stockStatus;
 
     @ApiModelProperty(value = "杞︾墝璇勫垎[0-100]", example = "1")
@@ -173,5 +177,21 @@
     @ApiModelProperty(value = "杞︾墝鍥�", example = "1")
     @ExcelColumn(name="杞︾墝鍥�")
     private String platePictureContent;
+    @ApiModelProperty(value = "鏈堝彴鑳屾櫙澶у浘鏈湴涓嬭浇", example = "1")
+    @ExcelColumn(name="鏈堝彴鑳屾櫙澶у浘鏈湴涓嬭浇")
+    private String backgroundImageDown;
 
+    @ApiModelProperty(value = "杞︾墝鍥炬湰鍦颁笅杞�", example = "1")
+    @ExcelColumn(name="杞︾墝鍥炬湰鍦颁笅杞�")
+    private String platePictureDown;
+    @ApiModelProperty(value = "鏈堝彴鍚嶇ū", example = "1")
+    @TableField(exist = false)
+    private String  platformName;
+
+    @ApiModelProperty(value = "寮�濮嬫椂闂�")
+    @TableField(exist = false)
+    private String startDate;
+    @ApiModelProperty(value = "缁撴潫鏃堕棿")
+    @TableField(exist = false)
+    private String endDate;
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index f71435f..7a0a0f7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -154,6 +154,7 @@
             }
         }catch (Exception e){
             //濡傛灉鍙戠敓寮傚父锛屽垹闄ゅ凡缁忓垱寤虹殑浜哄憳淇℃伅
+            e.printStackTrace();
             deleteHkUserBiz(new String[]{insert.getHkId()});
             throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅鏂板缓澶辫触锛岃绋嶅悗閲嶈瘯锛�");
         }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformEventServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformEventServiceImpl.java
index cddc0f2..1b631ea 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformEventServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformEventServiceImpl.java
@@ -1,20 +1,27 @@
 package com.doumee.service.business.impl;
 
+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.PlatformEventMapper;
+import com.doumee.dao.business.model.Empower;
+import com.doumee.dao.business.model.Platform;
 import com.doumee.dao.business.model.PlatformEvent;
 import com.doumee.service.business.PlatformEventService;
 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.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 鏈堝彴杞﹁締杩涘嚭浜嬩欢鎺ㄩ�佽褰曡〃Service瀹炵幇
@@ -24,6 +31,8 @@
 @Service
 public class PlatformEventServiceImpl implements PlatformEventService {
 
+    @Autowired
+    private SystemDictDataBiz systemDictDataBiz;
     @Autowired
     private PlatformEventMapper platformEventMapper;
 
@@ -87,129 +96,139 @@
     @Override
     public PageData<PlatformEvent> findPage(PageWrap<PlatformEvent> pageWrap) {
         IPage<PlatformEvent> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
-        QueryWrapper<PlatformEvent> queryWrapper = new QueryWrapper<>();
+        MPJLambdaWrapper<PlatformEvent> queryWrapper = new MPJLambdaWrapper<>();
+        queryWrapper.selectAll(PlatformEvent.class)
+                .selectAs(Platform::getName,PlatformEvent::getPlatformName)
+                .leftJoin(Platform.class, Platform::getId,PlatformEvent::getPlatformId);
         Utils.MP.blankToNull(pageWrap.getModel());
         if (pageWrap.getModel().getId() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getId, pageWrap.getModel().getId());
+            queryWrapper.eq(PlatformEvent::getId, pageWrap.getModel().getId());
         }
         if (pageWrap.getModel().getCreator() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getCreator, pageWrap.getModel().getCreator());
+            queryWrapper.eq(PlatformEvent::getCreator, pageWrap.getModel().getCreator());
         }
         if (pageWrap.getModel().getCreateDate() != null) {
-            queryWrapper.lambda().ge(PlatformEvent::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
-            queryWrapper.lambda().le(PlatformEvent::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+            queryWrapper.ge(PlatformEvent::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.le(PlatformEvent::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
         }
         if (pageWrap.getModel().getEditor() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getEditor, pageWrap.getModel().getEditor());
+            queryWrapper.eq(PlatformEvent::getEditor, pageWrap.getModel().getEditor());
         }
         if (pageWrap.getModel().getEditDate() != null) {
-            queryWrapper.lambda().ge(PlatformEvent::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
-            queryWrapper.lambda().le(PlatformEvent::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+            queryWrapper.ge(PlatformEvent::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.le(PlatformEvent::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
         }
         if (pageWrap.getModel().getIsdeleted() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getIsdeleted, pageWrap.getModel().getIsdeleted());
+            queryWrapper.eq(PlatformEvent::getIsdeleted, pageWrap.getModel().getIsdeleted());
         }
         if (pageWrap.getModel().getRemark() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getRemark, pageWrap.getModel().getRemark());
+            queryWrapper.eq(PlatformEvent::getRemark, pageWrap.getModel().getRemark());
         }
         if (pageWrap.getModel().getEventId() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getEventId, pageWrap.getModel().getEventId());
+            queryWrapper.eq(PlatformEvent::getEventId, pageWrap.getModel().getEventId());
         }
         if (pageWrap.getModel().getEventType() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getEventType, pageWrap.getModel().getEventType());
+            queryWrapper.eq(PlatformEvent::getEventType, pageWrap.getModel().getEventType());
         }
         if (pageWrap.getModel().getSrcType() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getSrcType, pageWrap.getModel().getSrcType());
+            queryWrapper.eq(PlatformEvent::getSrcType, pageWrap.getModel().getSrcType());
         }
         if (pageWrap.getModel().getHappenTime() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getHappenTime, pageWrap.getModel().getHappenTime());
+            queryWrapper.eq(PlatformEvent::getHappenTime, pageWrap.getModel().getHappenTime());
         }
         if (pageWrap.getModel().getSrcIndex() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getSrcIndex, pageWrap.getModel().getSrcIndex());
+            queryWrapper.eq(PlatformEvent::getSrcIndex, pageWrap.getModel().getSrcIndex());
         }
         if (pageWrap.getModel().getSrcName() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getSrcName, pageWrap.getModel().getSrcName());
+            queryWrapper.eq(PlatformEvent::getSrcName, pageWrap.getModel().getSrcName());
         }
         if (pageWrap.getModel().getStatus() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getStatus, pageWrap.getModel().getStatus());
+            queryWrapper.eq(PlatformEvent::getStatus, pageWrap.getModel().getStatus());
         }
         if (pageWrap.getModel().getTimeout() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getTimeout, pageWrap.getModel().getTimeout());
+            queryWrapper.eq(PlatformEvent::getTimeout, pageWrap.getModel().getTimeout());
         }
         if (pageWrap.getModel().getDataType() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getDataType, pageWrap.getModel().getDataType());
+            queryWrapper.eq(PlatformEvent::getDataType, pageWrap.getModel().getDataType());
         }
         if (pageWrap.getModel().getSendTime() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getSendTime, pageWrap.getModel().getSendTime());
+            queryWrapper.eq(PlatformEvent::getSendTime, pageWrap.getModel().getSendTime());
         }
         if (pageWrap.getModel().getDateTime() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getDateTime, pageWrap.getModel().getDateTime());
+            queryWrapper.eq(PlatformEvent::getDateTime, pageWrap.getModel().getDateTime());
         }
         if (pageWrap.getModel().getIpAddress() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getIpAddress, pageWrap.getModel().getIpAddress());
+            queryWrapper.eq(PlatformEvent::getIpAddress, pageWrap.getModel().getIpAddress());
         }
         if (pageWrap.getModel().getIpv6Address() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getIpv6Address, pageWrap.getModel().getIpv6Address());
+            queryWrapper.eq(PlatformEvent::getIpv6Address, pageWrap.getModel().getIpv6Address());
         }
         if (pageWrap.getModel().getPortNo() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getPortNo, pageWrap.getModel().getPortNo());
+            queryWrapper.eq(PlatformEvent::getPortNo, pageWrap.getModel().getPortNo());
         }
         if (pageWrap.getModel().getProtocol() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getProtocol, pageWrap.getModel().getProtocol());
+            queryWrapper.eq(PlatformEvent::getProtocol, pageWrap.getModel().getProtocol());
         }
         if (pageWrap.getModel().getMacAddress() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getMacAddress, pageWrap.getModel().getMacAddress());
+            queryWrapper.eq(PlatformEvent::getMacAddress, pageWrap.getModel().getMacAddress());
         }
         if (pageWrap.getModel().getChannelId() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getChannelId, pageWrap.getModel().getChannelId());
+            queryWrapper.eq(PlatformEvent::getChannelId, pageWrap.getModel().getChannelId());
         }
         if (pageWrap.getModel().getActivePostCount() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getActivePostCount, pageWrap.getModel().getActivePostCount());
+            queryWrapper.eq(PlatformEvent::getActivePostCount, pageWrap.getModel().getActivePostCount());
         }
         if (pageWrap.getModel().getEventState() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getEventState, pageWrap.getModel().getEventState());
+            queryWrapper.eq(PlatformEvent::getEventState, pageWrap.getModel().getEventState());
         }
         if (pageWrap.getModel().getEventDescription() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getEventDescription, pageWrap.getModel().getEventDescription());
+            queryWrapper.eq(PlatformEvent::getEventDescription, pageWrap.getModel().getEventDescription());
         }
         if (pageWrap.getModel().getChannelName() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getChannelName, pageWrap.getModel().getChannelName());
+            queryWrapper.like(PlatformEvent::getChannelName, pageWrap.getModel().getChannelName());
         }
         if (pageWrap.getModel().getDeviceId() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getDeviceId, pageWrap.getModel().getDeviceId());
+            queryWrapper.eq(PlatformEvent::getDeviceId, pageWrap.getModel().getDeviceId());
         }
         if (pageWrap.getModel().getHpno() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getHpno, pageWrap.getModel().getHpno());
+            queryWrapper.eq(PlatformEvent::getHpno, pageWrap.getModel().getHpno());
         }
         if (pageWrap.getModel().getMotionStatus() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getMotionStatus, pageWrap.getModel().getMotionStatus());
+            queryWrapper.eq(PlatformEvent::getMotionStatus, pageWrap.getModel().getMotionStatus());
         }
         if (pageWrap.getModel().getPlateNo() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getPlateNo, pageWrap.getModel().getPlateNo());
+            queryWrapper.like(PlatformEvent::getPlateNo, pageWrap.getModel().getPlateNo());
         }
         if (pageWrap.getModel().getVehicleDoorStatus() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getVehicleDoorStatus, pageWrap.getModel().getVehicleDoorStatus());
+            queryWrapper.eq(PlatformEvent::getVehicleDoorStatus, pageWrap.getModel().getVehicleDoorStatus());
         }
         if (pageWrap.getModel().getStockStatus() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getStockStatus, pageWrap.getModel().getStockStatus());
+            queryWrapper.eq(PlatformEvent::getStockStatus, pageWrap.getModel().getStockStatus());
         }
         if (pageWrap.getModel().getPlateScore() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getPlateScore, pageWrap.getModel().getPlateScore());
+            queryWrapper.eq(PlatformEvent::getPlateScore, pageWrap.getModel().getPlateScore());
         }
         if (pageWrap.getModel().getBackgroundImageContent() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getBackgroundImageContent, pageWrap.getModel().getBackgroundImageContent());
+            queryWrapper.eq(PlatformEvent::getBackgroundImageContent, pageWrap.getModel().getBackgroundImageContent());
         }
         if (pageWrap.getModel().getPlatePictureContent() != null) {
-            queryWrapper.lambda().eq(PlatformEvent::getPlatePictureContent, pageWrap.getModel().getPlatePictureContent());
+            queryWrapper.eq(PlatformEvent::getPlatePictureContent, pageWrap.getModel().getPlatePictureContent());
         }
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
-            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
-                queryWrapper.orderByDesc(sortData.getProperty());
-            } else {
-                queryWrapper.orderByAsc(sortData.getProperty());
+        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getPlatformName()), Platform::getName,pageWrap.getModel().getPlatformName());
+        queryWrapper.ge(Objects.nonNull(pageWrap.getModel().getStartDate()), PlatformEvent::getCreateDate,pageWrap.getModel().getStartDate());
+        queryWrapper.le(Objects.nonNull(pageWrap.getModel().getEndDate()),PlatformEvent::getCreateDate,pageWrap.getModel().getEndDate());
+        queryWrapper.orderByDesc(PlatformEvent::getCreateDate);
+        PageData<PlatformEvent> result = PageData.from(platformEventMapper.selectJoinPage(page, PlatformEvent.class,queryWrapper));
+        if(result!=null && result.getRecords()!=null){
+            String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
+                    systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode();
+            for(PlatformEvent model : result.getRecords()){
+                if(StringUtils.isNotBlank(model.getBackgroundImageContent())){
+                    model.setBackgroundImageDown(prefixUrl + model.getBackgroundImageContent());
+                }
             }
         }
-        return PageData.from(platformEventMapper.selectPage(page, queryWrapper));
+        return  result;
     }
 
     @Override
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java
index 302bf9b..d37efcd 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java
@@ -8,6 +8,7 @@
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.FtpUtil;
+import com.doumee.core.utils.HttpsUtil;
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.model.*;
 import lombok.extern.slf4j.Slf4j;
@@ -34,6 +35,8 @@
     @Autowired
     private MemberMapper memberMapper;
     @Autowired
+    private PlatformEventMapper platformEventMapper;
+    @Autowired
     private DeviceEventMapper deviceEventMapper;
     @Autowired
     private VisitEventMapper visitEventMapper;
@@ -54,6 +57,8 @@
             startDealDeviceImg();
             //鏌ヨ鎵�鏈変汉鍛樹汉鑴哥収鐗�
             startDealMemberImg();
+            //鏌ヨ鎵�鏈夋湀鍙颁簨浠朵腑鎶撴媿鍥剧収鐗�
+            startDealPlatformEventImg();
         }catch (Exception e){
             e.printStackTrace();
         }finally {
@@ -87,6 +92,33 @@
                     }
                 }
                 memberMapper.updateById(event);
+            }
+        }
+
+    }
+    private void startDealPlatformEventImg() {
+        List<PlatformEvent> list = platformEventMapper.selectList(new QueryWrapper<PlatformEvent>().lambda()
+                .eq(PlatformEvent::getIsdeleted,Constants.ZERO)
+                .isNotNull(PlatformEvent::getBackgroundImageContent)
+                .notLikeRight(PlatformEvent::getBackgroundImageContent, HKConstants.IMG_INDEX_ERROR)
+                .isNull(PlatformEvent::getBackgroundImageDown));
+        Date date= new Date();
+        if(list !=null && list.size()>0){
+            for(PlatformEvent model:list){
+                String rs1 = null;
+                PlatformEvent event = new PlatformEvent();
+                event.setId(model.getId());
+                event.setEditDate(date);
+                if(StringUtils.isNotBlank(model.getBackgroundImageContent())){
+                    String img1 = model.getBackgroundImageContent();
+                    rs1 = downHkImgToFtp(img1,"",Constants.PLATFORM_EVENT_IMG);
+                    if(StringUtils.isNotBlank(rs1)){
+                        event.setBackgroundImageDown(rs1);
+                    }else{
+                        event.setBackgroundImageContent(HKConstants.IMG_INDEX_ERROR+model.getBackgroundImageContent());
+                    }
+                }
+                platformEventMapper.updateById(event);
             }
         }
 
@@ -251,11 +283,13 @@
             param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,""));
             param.setServerIndexCode(serverIndex);
             is = HKService.getFaceInputStream(param);
+        }else if(StringUtils.equals(folder_code,Constants.PLATFORM_EVENT_IMG)){
+            //鏈堝彴浜嬩欢鍥剧墖
+            is = HttpsUtil.connectionInputsteam(img1,"GET",null,null);
         }
         if(is ==null){
             return  null;
         }
-
         try {
             if(ftp == null){
                  ftp = new FtpUtil(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_HOST).getCode(),
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncLoginAuthServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncLoginAuthServiceImpl.java
index d971291..c6cadc8 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncLoginAuthServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncLoginAuthServiceImpl.java
@@ -27,7 +27,6 @@
 
     @Autowired
     private DeviceMapper deviceMapper;
-
     @Autowired
     private RedisTemplate<String, Object> redisTemplate;
     @Autowired
@@ -76,7 +75,6 @@
                 }catch (Exception e){
                     throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鐧诲綍缁勪欢澶辫触锛岃绋嶅悗閲嶈瘯锛�");
                 }
-               
             }else{
                 throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鐧诲綍缁勪欢澶辫触锛岃绋嶅悗閲嶈瘯锛�");
             }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPlatformsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPlatformsServiceImpl.java
index b418e56..10e2a89 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPlatformsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPlatformsServiceImpl.java
@@ -188,7 +188,7 @@
                 d.setCreateDate(model.getCreateDate());
                 d.setPlatformId(model.getId());
                 d.setIsdeleted(Constants.ZERO);
-                d.setDeviceId(param.getCameraIdompan());
+                d.setDeviceId(param.getCameraId());
                 d.setName(param.getCameraName());
                 d.setType(Constants.ONE);
                 list.add(d);
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 5c6c73d..6800469 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
@@ -867,8 +867,9 @@
                 }
                 //鍚勮溅閬撹溅杈嗙姸鎬�
                 EventPlatformCarsStatusInfoRequest status = data.getHPVehicleStatus();
-                eventList.add(initPlatformEventModel(request,data,status));//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級
+                PlatformEvent event = initPlatformEventModel(request,data,status);
                 if(StringUtils.isBlank(status.getPlateNo())){
+                    eventList.add(event);//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級
                     continue;//濡傛灉杞﹁締淇℃伅涓虹┖锛屼笉澶勭悊鐩存帴璺宠繃
                 }
                 PlatformDevice model = platformDeviceMapper.selectOne(new QueryWrapper<PlatformDevice>().lambda()
@@ -876,10 +877,13 @@
                         .eq(PlatformDevice::getIsdeleted,Constants.ZERO)
                         .last("limit 1"));
                 if(model ==null){
+                    eventList.add(event);//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級
                     continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞�
                 }
-                //鎴帀绗竴涓鑹叉眽瀛�
-                status.setPlateNo(status.getPlateNo().substring(1,status.getPlateNo().length()));
+                event.setPlatformId(model.getPlatformId());//鏈堝彴缂栫爜
+                eventList.add(event);//灏佽浜嬩欢锛堝凡鏈堝彴閫氶亾涓虹淮搴︼級
+                //鎴帀绗竴涓鑹叉眽瀛�,鍘绘帀鈥滄寕鈥濆瓧
+                status.setPlateNo(status.getPlateNo().substring(1,status.getPlateNo().length()).replace("鎸�",""));
                 PlatformJob job = platformJobMapper.selectJoinOne(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>()
                         .selectAll(PlatformJob.class)
                         .selectAs(Platform::getName,PlatformJob::getPlatformName)
@@ -888,12 +892,15 @@
                         .eq(!StringUtils.equals(status.getStockStatus(),"front"),PlatformJob::getCarCodeBack,status.getPlateNo() )//鍚庤溅鐗屽彿
                         .eq(PlatformJob::getIsdeleted,Constants.ZERO )
                         .last("limit 1 "));
+                if(job == null){
+                    continue;//濡傛灉浣滀笟涓虹┖锛岃烦杩囧鐞�
+                }
                 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())){
+                   /* if(job ==null && !Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){
                         continue;//濡傛灉娌℃煡鍒板搴旂殑浣滀笟鎴栬�呬綔涓氬苟闈炰綔涓氫腑锛屼笉鍋氫笟鍔″鐞�
                     }
                     if(Constants.equalsInteger(job.getType(), Constants.THREE) || Constants.equalsInteger(job.getType(), Constants.TWO)){

--
Gitblit v1.9.3