From 035d4961e8b3abd3a170c678517b9915ddb2ec4b Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 28 二月 2024 11:25:07 +0800
Subject: [PATCH] mrshi

---
 server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java            |    5 
 server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java           |   12 +
 server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java              |    2 
 admin/src/views/business/parkBook.vue                                                            |   10 +
 server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java                |   43 +++-----
 server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java               |   49 +--------
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java     |   13 +-
 server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.java               |   26 +++++
 server/dmvisit_service/src/main/resources/application-devYL.yml                                  |    1 
 server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java              |   12 ++
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java     |    8 
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.java |   79 +++++++--------
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java  |    7 +
 server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java               |    4 
 server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java             |    2 
 server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java                 |    2 
 admin/src/views/business/deviceEvent.vue                                                         |   19 ++-
 17 files changed, 151 insertions(+), 143 deletions(-)

diff --git a/admin/src/views/business/deviceEvent.vue b/admin/src/views/business/deviceEvent.vue
index 7e5b916..b21c70d 100644
--- a/admin/src/views/business/deviceEvent.vue
+++ b/admin/src/views/business/deviceEvent.vue
@@ -10,8 +10,7 @@
             </el-form-item>
             <el-form-item label="浜哄憳绫诲瀷" prop="personType">
                 <el-select v-model="searchForm.personType" placeholder="璇烽�夋嫨">
-                    <el-option label="鍔冲姟璁垮" value="0"></el-option>
-                    <el-option label="鏅�氳瀹�" value="1"></el-option>
+                    <el-option label="澶栨潵璁垮" value="1"></el-option>
                     <el-option label="鍐呴儴浜哄憳" value="2"></el-option>
                 </el-select>
             </el-form-item>
@@ -58,20 +57,17 @@
                         <span v-if="row.personType === 0">鍔冲姟璁垮</span>
                         <span v-if="row.personType === 1">鏅�氳瀹�</span>
                         <span v-if="row.personType === 2">鍐呴儴浜哄憳</span>
+                        <span v-if="row.personType == null">澶栨潵璁垮</span>
                     </template>
                 </el-table-column>
-                <el-table-column prop="personName" label="濮撳悕" min-width="100px"></el-table-column>
-                <el-table-column prop="personPhone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
-                <el-table-column prop="personIdcardDecode" label="璇佷欢鍙�" min-width="100px"></el-table-column>
-                <el-table-column prop="personCompanyName" label="鍏徃/缁勭粐" min-width="100px"></el-table-column>
+              <el-table-column prop="happenTime" label="浜嬩欢鏃堕棿" min-width="100px"></el-table-column>
                 <el-table-column prop="devName" label="闂ㄧ鍚嶇О" min-width="100px"></el-table-column>
                 <el-table-column prop="srcName" label="闂ㄧ鐐�" min-width="100px"></el-table-column>
                 <el-table-column prop="eventTypeName" label="浜嬩欢绫诲瀷" min-width="100px"></el-table-column>
                 <el-table-column label="鍑哄叆绫诲瀷" min-width="100px">
                     <template slot-scope="{row}">
                         <span v-if="row.extEventInOut === 1">杩�</span>
-                        <span v-if="row.extEventInOut === 0">鍑�</span>
-                        <span v-if="row.extEventInOut === -1">鏈煡</span>
+                        <span v-if="row.extEventInOut != 1">鍑�</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="鎶撴媿鐓х墖" min-width="100px">
@@ -83,7 +79,12 @@
                         </el-image>
                     </template>
                 </el-table-column>
-                <el-table-column prop="happenTime" label="浜嬩欢鏃堕棿" min-width="100px"></el-table-column>
+
+              <el-table-column prop="personName" label="濮撳悕" min-width="100px"></el-table-column>
+              <el-table-column prop="personPhone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
+              <el-table-column prop="personIdcardDecode" label="璇佷欢鍙�" min-width="100px"></el-table-column>
+              <el-table-column prop="personCompanyName" label="鍏徃/缁勭粐" min-width="100px"></el-table-column>
+
             </el-table>
             <pagination
                 @size-change="handleSizeChange"
diff --git a/admin/src/views/business/parkBook.vue b/admin/src/views/business/parkBook.vue
index a3709ff..fe1acb8 100644
--- a/admin/src/views/business/parkBook.vue
+++ b/admin/src/views/business/parkBook.vue
@@ -2,14 +2,17 @@
     <TableLayout :permissions="['business:member:query']">
         <!-- 鎼滅储琛ㄥ崟 -->
         <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="120px" inline>
-            <el-form-item label="杞︾墝鍙�" prop="code">
-                <el-input v-model="searchForm.code" placeholder="璇疯緭鍏ヨ溅鐗屽彿" @keypress.enter.native="search"></el-input>
+            <el-form-item label="杞︾墝鍙�" prop="carCode">
+                <el-input v-model="searchForm.carCode" placeholder="璇疯緭鍏ヨ溅鐗屽彿" @keypress.enter.native="search"></el-input>
             </el-form-item>
             <el-form-item label="鍛樺伐濮撳悕/鎵嬫満鍙�" prop="memberName">
                 <el-input v-model="searchForm.memberName" placeholder="璇疯緭鍏ュ憳宸ュ鍚�/鎵嬫満鍙�" @keypress.enter.native="search"></el-input>
             </el-form-item>
             <el-form-item label="閮ㄩ棬" prop="companyName">
                 <el-input v-model="searchForm.companyName" placeholder="璇疯緭鍏ラ儴闂�" @keypress.enter.native="search"></el-input>
+            </el-form-item>
+            <el-form-item label="鍋滆溅搴撳悕绉�" prop="parksName">
+                <el-input v-model="searchForm.parksName" placeholder="璇疯緭鍏ュ仠杞﹀簱鍚嶇О" @keypress.enter.native="search"></el-input>
             </el-form-item>
             <section>
                 <el-button type="primary" @click="search">鎼滅储</el-button>
@@ -109,8 +112,9 @@
     return {
       // 鎼滅储
       searchForm: {
-        code: '',
+        carCode: '',
         memberName: '',
+        parksName: '',
         companyName: ''
       }
     }
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java
index 406b086..717c587 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java
@@ -80,8 +80,8 @@
     @PostMapping("/exportExcel")
     //@RequiresPermissions("business:carevent:exportExcel")
     public void exportExcel (@RequestBody PageWrap<CarEvent> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(CarEventVo.class).exportWithFirstAndEnd (carEventService.findPageExcel(pageWrap),"鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃", null, "鍋滆溅鍦轰簨浠舵帹閫佽褰曞鍑烘姤琛�",null , response);
-//        ExcelExporter.build(CarEvent.class).export(carEventService.findPage(pageWrap).getRecords(), "鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃", response);
+//        ExcelExporter.build(CarEventVo.class).exportWithFirstAndEnd (carEventService.findPageExcel(pageWrap),"鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃", null, "鍋滆溅鍦轰簨浠舵帹閫佽褰曞鍑烘姤琛�",null , response);
+        ExcelExporter.build(CarEventDTO.class).export(carEventService.findVisitCarPage(pageWrap).getRecords(), "鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃", response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java
index f9b1493..21d7632 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java
@@ -80,8 +80,11 @@
     @PostMapping("/exportExcel")
     //@RequiresPermissions("business:deviceevent:exportExcel")
     public void exportExcel (@RequestBody PageWrap<DeviceEvent> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(DeviceEventVo.class).export(deviceEventService.findDeviceEventExcel(pageWrap), "闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃", response);
+        ExcelExporter.build(DeviceEventDTO.class).export(deviceEventService.findDeviceEventDTOPage(pageWrap).getRecords(), "闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃", response);
     }
+//    public void exportExcel (@RequestBody PageWrap<DeviceEvent> pageWrap, HttpServletResponse response) {
+//        ExcelExporter.build(DeviceEventVo.class).export(deviceEventService.findDeviceEventExcel(pageWrap), "闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃", response);
+//    }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
     @GetMapping("/{id}")
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java
index 6c7f937..250c9fc 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java
@@ -80,7 +80,7 @@
     @PostMapping("/exportExcel")
     //@RequiresPermissions("business:retention:exportExcel")
     public void exportExcel (@RequestBody PageWrap<Retention> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(RetentionVo.class).export(retentionService.findPageExcel(pageWrap), "鍦ㄥ巶浜哄憳淇℃伅 琛紙婊炵暀锛�", response);
+        ExcelExporter.build(Retention.class).export(retentionService.findTrainTimePage(pageWrap).getRecords(), "瀹炴椂鍦ㄥ満浜哄憳", response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java
index 6a629fa..fe4627e 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java
@@ -80,7 +80,7 @@
     @PostMapping("/exportExcel")
     //@RequiresPermissions("business:visitevent:exportExcel")
     public void exportExcel (@RequestBody PageWrap<VisitEvent> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(VisitEvent.class).export(visitEventService.findPageExcel(pageWrap), "璁垮浜嬩欢鎺ㄩ�佽褰曡〃", response);
+        ExcelExporter.build(VisitEvent.class).export(visitEventService.findPageExcel(pageWrap), "璁垮鍑哄叆浜嬩欢_" + System.currentTimeMillis(), response);
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
index 875640f..9e21987 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
@@ -6,6 +6,7 @@
 import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.model.PageData;
+import com.doumee.core.utils.Constants;
 import com.doumee.dao.business.model.Visits;
 import com.doumee.service.business.VisitsService;
 import com.doumee.service.business.impl.hksync.fhk.HkSyncVisitFromHKServiceImpl;
@@ -104,6 +105,7 @@
     @PostMapping("/retentionPage")
     @RequiresPermissions("business:visits:query")
     public ApiResponse<PageData<Visits>> retentionPage (@RequestBody PageWrap<Visits> pageWrap) {
+        pageWrap.getModel().setLevelStatus(Constants.ZERO);
         return ApiResponse.success(visitsService.retentionPage(pageWrap));
     }
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java
index 9017d71..1fa552a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java
@@ -1,5 +1,6 @@
 package com.doumee.dao.admin.response;
 
+import com.doumee.core.annotation.excel.ExcelColumn;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -50,7 +51,9 @@
 
     @ApiModelProperty(value = "浜嬩欢绫诲瀷")
     private Integer eventType;
+
     @ApiModelProperty(value = "浜嬩欢绫诲瀷鍚嶇О")
+    @ExcelColumn(name="浜嬩欢绫诲瀷",index = 4,width = 18)
     private String eventTypeName;
 
     @ApiModelProperty(value = "浜嬩欢鐘舵��,0-鐬椂 1-寮�濮�2-鍋滄4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-浜嬩欢鍥剧墖寮傛涓婁紶")
@@ -60,6 +63,7 @@
     private String timeout;
 
     @ApiModelProperty(value = "浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂�")
+    @ExcelColumn(name="浜嬩欢鏃堕棿",index = 10,width = 16)
     private String happenTime;
 
     @ApiModelProperty(value = "浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶�")
@@ -75,18 +79,22 @@
     private String cardNo;
     /**鍏宠仈浜哄憳淇℃伅**/
     @ApiModelProperty(value = "鎵嬫満鍙�")
+    @ExcelColumn(name="鎵嬫満鍙�",index = 8,width = 16)
     private String personPhone;
 
     @ApiModelProperty(value = "浜哄憳绫诲瀷")
+    @ExcelColumn(name="浜哄憳绫诲瀷",index = 6,width = 10,valueMapping = "0=鍔冲姟璁垮;1=鏅�氳瀹�;2=鍐呴儴浜哄憳;")
     private Integer personType;
 
     @ApiModelProperty(value = "浜哄憳韬唤璇佸彿")
     private String personIdcardDecode;
 
     @ApiModelProperty(value = "浜哄憳缁勭粐鍏徃")
+    @ExcelColumn(name="鍏徃/閮ㄩ棬",index = 9,width = 16)
     private String personCompanyName;
 
     @ApiModelProperty(value = "濮撳悕")
+    @ExcelColumn(name="濮撳悕",index = 7,width = 16)
     private String personName;
 
     @ApiModelProperty(value = "浜嬩欢鍙�,1:鍘嬬嚎浜嬩欢2:涓婁紶鍥剧墖3:鍏ュ満4:鍑哄満5:杞︾墝鐭6:鍥剧墖閲嶄紶")
@@ -99,6 +107,7 @@
     private String gateIndex;
 
     @ApiModelProperty(value = "鍑哄叆鍙e悕绉�")
+    @ExcelColumn(name="鍑哄叆鍙e悕绉�",index = 3,width = 18)
     private String gateName;
 
     @ApiModelProperty(value = "鏀捐鏉冮檺")
@@ -117,9 +126,11 @@
     private Integer releaseWay;
 
     @ApiModelProperty(value = "杩涘嚭鍦虹被鍨嬶紝0锛氳繘鍦猴紝1锛氬嚭鍦�")
+    @ExcelColumn(name="鍑哄叆绫诲瀷",index = 5,width = 10,valueMapping = "0=杩涘満;1=鍑哄満;")
     private Integer inoutType;
 
     @ApiModelProperty(value = "杞︾墝鍙�")
+    @ExcelColumn(name="杞︾墝鍙�",index = 1,width = 12)
     private String plateNos;
 
     @ApiModelProperty(value = "杞﹁締涓诲搧鐗�")
@@ -129,6 +140,7 @@
     private String parkIndex;
 
     @ApiModelProperty(value = "鍋滆溅搴撳悕绉�")
+    @ExcelColumn(name="鍋滆溅搴撳悕绉�",index = 2,width = 18)
     private String parkName;
 
     @ApiModelProperty(value = "杞︾墝棰滆壊")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java
index 7dc0ece..7e8614d 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java
@@ -14,8 +14,6 @@
 @ApiModel("闂ㄧ浜嬩欢鎺ㄩ�佽褰曡〃")
 public class DeviceEventDTO {
 
-
-
     @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�")
     private Integer creator;
 
@@ -38,6 +36,7 @@
     private String eventId;
 
     @ApiModelProperty(value = "浜嬩欢绫诲瀷 -- 197163,浜鸿劯璁よ瘉澶辫触 ; 196893,浜鸿劯璁よ瘉閫氳繃")
+    @ExcelColumn(name="浜嬩欢绫诲瀷",index = 7,width = 16,valueMapping = "197163=浜鸿劯璁よ瘉澶辫触;196893=浜鸿劯璁よ瘉閫氳繃;")
     private Integer eventType;
     @ApiModelProperty(value = "浜嬩欢绫诲瀷鍚嶇О")
     private String eventTypeName;
@@ -47,15 +46,18 @@
 
     @ApiModelProperty(value = "浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂�")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ExcelColumn(name="浜嬩欢鏃堕棿",index = 9,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
     private String happenTime;
 
     @ApiModelProperty(value = "闂ㄧ鐐瑰敮涓�鎺ュ叆缂栫爜")
     private String srcIndex;
 
     @ApiModelProperty(value = "闂ㄧ鐐瑰悕绉�")
+    @ExcelColumn(name="闂ㄧ鐐�",index = 6,width = 16)
     private String srcName;
 
     @ApiModelProperty(value = "闂ㄧ鍚嶇О")
+    @ExcelColumn(name="闂ㄧ鍚嶇О",index = 5,width = 16)
     private String devName;
 
     @ApiModelProperty(value = "浜嬩欢鐘舵��,0-鐬椂1-寮�濮�2-鍋滄4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-浜嬩欢鍥剧墖寮傛涓婁紶")
@@ -86,10 +88,10 @@
     private Integer extEventDoorID;
 
     @ApiModelProperty(value = "韬唤璇佸浘鐗嘦RL")
-    @ExcelColumn(name="韬唤璇佸浘鐗嘦RL")
     private String extEventIDCardPictureURL;
 
     @ApiModelProperty(value = "杩涘嚭鏂瑰悜 1-杩� 0-鍑� -1:鏈煡 瑕佹眰锛氳繘闂ㄨ鍗″櫒鎷ㄧ爜璁剧疆涓�1锛屽嚭闂ㄨ鍗″櫒鎷ㄧ爜璁剧疆涓�2")
+    @ExcelColumn(name="鍑哄叆绫诲瀷",index = 8,width = 8,valueMapping = "1=杩�;-1=鍑�;")
     private Integer extEventInOut;
 
     @ApiModelProperty(value = "灏卞湴鎺у埗鍣╥d")
@@ -102,18 +104,22 @@
     private String extEventPersonNo;
 
     @ApiModelProperty(value = "鍏徃/缁勭粐")
+    @ExcelColumn(name="鍏徃/缁勭粐",index = 4,width = 16)
     private String personCompanyName;
 
     @ApiModelProperty(value = "鎵嬫満鍙�")
+    @ExcelColumn(name="鎵嬫満鍙�",index = 3,width = 10)
     private String personPhone;
 
     @ApiModelProperty(value = "浜哄憳绫诲瀷")
+    @ExcelColumn(name="浜哄憳绫诲瀷",valueMapping = "0=鍔冲姟璁垮;1=鏅�氳瀹�;2=鍐呴儴浜哄憳;",index = 1,width = 10)
     private Integer personType;
 
     @ApiModelProperty(value = "浜哄憳韬唤璇佸彿")
     private String personIdcardDecode;
 
     @ApiModelProperty(value = "浜哄憳鍚嶇О")
+    @ExcelColumn(name="濮撳悕",index = 2,width = 10)
     private String personName;
     @ApiModelProperty(value = "浜哄憳缂栫爜")
     private String memberId;
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java
index 43185bf..46533db 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java
@@ -23,114 +23,96 @@
 
     @TableId(type = IdType.AUTO)
     @ApiModelProperty(value = "涓婚敭")
-    @ExcelColumn(name="涓婚敭")
     private Integer id;
 
     @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�")
-    @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
     private Integer creator;
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
-    @ExcelColumn(name="鍒涘缓鏃堕棿")
     @JsonFormat(pattern = "yyyy-MM-dd")
     private Date createDate;
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�")
-    @ExcelColumn(name="鏇存柊浜虹紪鐮�")
     private Integer editor;
 
     @ApiModelProperty(value = "鏇存柊鏃堕棿")
-    @ExcelColumn(name="鏇存柊鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
     private Date editDate;
 
     @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�")
-    @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
     private Integer isdeleted;
 
     @ApiModelProperty(value = "澶囨敞")
-    @ExcelColumn(name="澶囨敞")
     private String remark;
 
     @ApiModelProperty(value = "鎵�灞炵粍缁囩紪鐮�(鍏宠仈company琛�)")
-    @ExcelColumn(name="鎵�灞炵粍缁囩紪鐮�(鍏宠仈company琛�)")
     private Integer companyId;
 
     @ApiModelProperty(value = "浜鸿劯鐓х墖")
-    @ExcelColumn(name="浜鸿劯鐓х墖")
     private String faceImg;
+
     @ApiModelProperty(value = "鍋ュ悍鐮�")
-    @ExcelColumn(name="鍋ュ悍鐮�")
     private String imgurl;
 
     @ApiModelProperty(value = "绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴鍛樺伐 3杞﹁締淇℃伅")
-    @ExcelColumn(name="绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴鍛樺伐 3杞﹁締淇℃伅")
+    @ExcelColumn(name="浜哄憳绫诲瀷" ,index = 2, valueMapping="0=鍔冲姟璁垮;1=鏅�氳瀹�;2=鍐呴儴鍛樺伐;3=杞﹁締淇℃伅;",width = 8)
     private Integer type;
 
     @ApiModelProperty(value = "璁垮鍚嶇О")
-    @ExcelColumn(name="璁垮鍚嶇О")
+    @ExcelColumn(name="濮撳悕" ,index = 3,width = 6)
     private String name;
 
     @ApiModelProperty(value = "璁垮骞撮緞")
-    @ExcelColumn(name="璁垮骞撮緞")
     @JsonFormat(pattern = "yyyy-MM-dd")
     private Date birthday;
 
     @ApiModelProperty(value = "鎵嬫満鍙�")
-    @ExcelColumn(name="鎵嬫満鍙�")
+    @ExcelColumn(name="鎵嬫満鍙�" ,index = 4,width = 12)
     private String phone;
 
     @ApiModelProperty(value = "韬唤璇佸彿锛圡D4鍔犲瘑锛�")
-    @ExcelColumn(name="韬唤璇佸彿锛圡D4鍔犲瘑锛�")
     private String idcardNo;
 
     @ApiModelProperty(value = "璇佷欢鏄剧ず淇℃伅")
-    @ExcelColumn(name="璇佷欢鏄剧ず淇℃伅")
+    @ExcelColumn(name="韬唤璇佸彿" ,index = 5,width = 12)
     private String idcardDecode;
 
     @ApiModelProperty(value = "宸ュ彿")
-    @ExcelColumn(name="宸ュ彿")
     private String code;
 
     @ApiModelProperty(value = "鐝")
-    @ExcelColumn(name="鐝")
     private Integer classes;
+
     @ApiModelProperty(value = "娴峰悍闂ㄧ鍚嶇О")
-    @ExcelColumn(name="娴峰悍闂ㄧ鍚嶇О")
+    @ExcelColumn(name="杩涘巶闂ㄧ" ,index = 6,width = 12)
     private String deviceName;
+
     @ApiModelProperty(value = "娴峰悍闂ㄧ缂栫爜")
-    @ExcelColumn(name="娴峰悍闂ㄧ缂栫爜")
     private String deviceIndex;
+
     @ApiModelProperty(value = "鍏ュ巶鏃堕棿")
-    @ExcelColumn(name="鍏ュ巶鏃堕棿")
+    @ExcelColumn(name="杩涘満鏃堕棿" ,index = 7,width = 12,dateFormat = "yyyy-MM-dd HH:mm:ss")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date eventDate;
 
     @ApiModelProperty(value = "璁垮ID(鍏宠仈member)")
-    @ExcelColumn(name="璁垮ID(鍏宠仈member)")
     private Integer memberId;
 
     @ApiModelProperty(value = "浜嬩欢绫诲瀷鐮�")
-    @ExcelColumn(name="浜嬩欢绫诲瀷鐮�")
     private String eventCode;
 
 
     @ApiModelProperty(value = "杞︾墝鍙凤紙type=3浣跨敤锛�")
-    @ExcelColumn(name="杞︾墝鍙凤紙type=3浣跨敤锛�")
     private String carNo;
 
     @ApiModelProperty(value = "鍏徃缁勭粐")
-    @ExcelColumn(name="鍏徃缁勭粐")
     @TableField(exist = false)
     public String companyName;
 
     @ApiModelProperty(value = "璁垮缁勭粐鍚嶇О")
-    @ExcelColumn(name="璁垮缁勭粐鍚嶇О")
     @TableField(exist = false)
     public String visitCompanyName;
 
 
-    // 鏉′欢鏌ヨ鍙傛暟
     @ApiModelProperty(value = "濮撳悕/鎵嬫満鍙�")
     @TableField(exist = false)
     private String keyWords;
@@ -142,9 +124,14 @@
     @ApiModelProperty(value = "缁撴潫鏃堕棿")
     @TableField(exist = false)
     private Date endTime;
+
     @ApiModelProperty(value = "浜鸿劯鐓х墖")
     @TableField(exist = false)
     private String faceImgFull;
 
+    @ApiModelProperty(value = "瀵煎嚭鍏徃鍚嶇О",hidden = true)
+    @ExcelColumn(name="鍏徃/缁勭粐" ,index = 1,width = 12)
+    @TableField(exist = false)
+    public String excelCompanyName;
 
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.java
index b322539..62e3bf7 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.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;
@@ -31,7 +32,6 @@
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
     @ExcelColumn(name="鍒涘缓鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
     private Date createDate;
 
     @ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -63,4 +63,28 @@
     @ExcelColumn(name="鎿嶄綔鍓嶇姸鎬� 0瑙e喕 1鍐荤粨 2鎷夐粦 3鎭㈠ 4璁句负鎷滆浜� 5鍙栨秷鎷滆浜� 6璁句负楂樼骇瀹℃壒浜� 7鍙栨秷楂樼骇瀹℃壒浜� 8鎵嬪姩绂诲満 9鍒犻櫎")
     private Integer beforeStatus;
 
+    @ApiModelProperty(value = "鎿嶄綔浜哄悕绉�", example = "1")
+    @TableField(exist = false)
+    private String createName;
+
+    @ApiModelProperty(value = "浜哄憳绫诲瀷锛�0鍔冲姟璁垮 1鏅�氳瀹�  2鍐呴儴浜哄憳", example = "1")
+    @TableField(exist = false)
+    private String memberType;
+
+    @ApiModelProperty(value = "鎿嶄綔瀵硅薄", example = "1")
+    @TableField(exist = false)
+    private String memberName;
+
+    @ApiModelProperty(value = "鍏徃鍚嶇О", example = "1")
+    @TableField(exist = false)
+    private String companyName;
+
+    @ApiModelProperty(value = "璁垮鍏徃鍚嶇О", example = "1")
+    @TableField(exist = false)
+    private String visitCompanyName;
+
+    @ApiModelProperty(value = "鎵嬫満鍙�", example = "1")
+    @TableField(exist = false)
+    private String mobile;
+
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java
index 516d536..cae7ab9 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java
@@ -23,151 +23,121 @@
 
     @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 = "浜嬩欢鍞竴鏍囪瘑锛屽悓涓�浜嬩欢鑻ヤ笂鎶ュ娆★紝鍒欎笂鎶ヤ簨浠剁殑eventId鐩稿悓")
-//    @ExcelColumn(name="浜嬩欢鍞竴鏍囪瘑")
     private String eventId;
 
     @ApiModelProperty(value = "浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�")
-//    @ExcelColumn(name="浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙�")
     private String srcIndex;
 
     @ApiModelProperty(value = "浜嬩欢婧愮被鍨�")
-//    @ExcelColumn(name="浜嬩欢婧愮被鍨�")
     private String srcType;
 
     @ApiModelProperty(value = "浜嬩欢婧愬悕绉�")
-//    @ExcelColumn(name="浜嬩欢婧愬悕绉�")
     private String srcName;
 
     @ApiModelProperty(value = "浜嬩欢绫诲瀷锛堢櫥璁� 绛剧锛�")
-//    @ExcelColumn(name="浜嬩欢绫诲瀷")
     private Integer eventType;
 
     @ApiModelProperty(value = "浜嬩欢鐘舵��,0-鐬椂1-寮�濮�2-鍋滄4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-浜嬩欢鍥剧墖寮傛涓婁紶", example = "1")
-//    @ExcelColumn(name="浜嬩欢鐘舵��,0-鐬椂1-寮�濮�2-鍋滄4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-浜嬩欢鍥剧墖寮傛涓婁紶")
     private Integer status;
 
     @ApiModelProperty(value = "鑴夊啿瓒呮椂鏃堕棿")
-//    @ExcelColumn(name="鑴夊啿瓒呮椂鏃堕棿")
     private Integer timeout;
 
     @ApiModelProperty(value = "浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂�")
-//    @ExcelColumn(name="浜嬩欢鍙戠敓鏃堕棿")
+    @ExcelColumn(name="浜嬩欢鏃堕棿",index = 9,width = 16)
     private String happenTime;
 
     @ApiModelProperty(value = "浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶�")
-//    @ExcelColumn(name="浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶�")
     private String srcParentIndex;
 
     @ApiModelProperty(value = "璁垮Is锛�,瀵瑰簲璁垮鏉ヨ璁板綍涓殑orderId瀛楁")
-//    @ExcelColumn(name="璁垮Is锛�,瀵瑰簲璁垮鏉ヨ璁板綍涓殑orderId瀛楁")
     private String visitorId;
 
     @ApiModelProperty(value = "濮撳悕")
-    @ExcelColumn(name="濮撳悕")
+    @ExcelColumn(name="濮撳悕" ,index = 1,width = 10)
     private String personName;
 
     @ApiModelProperty(value = "鎬у埆 1-鐢�2-濂�", example = "1")
-//    @ExcelColumn(name="鎬у埆 1-鐢�2-濂�")
     private Integer sex;
 
     @ApiModelProperty(value = "璇佷欢绫诲瀷 111韬唤璇�")
-//    @ExcelColumn(name="璇佷欢绫诲瀷 111韬唤璇�")
     private Integer idType;
 
     @ApiModelProperty(value = "璇佷欢鍙� ")
     private String idNo;
 
     @ApiModelProperty(value = "琚闂汉濮撳悕")
-    @ExcelColumn(name="琚闂汉濮撳悕")
+    @ExcelColumn(name="琚闂汉濮撳悕",index = 6,width = 16)
     private String beVisitedPersonName;
 
     @ApiModelProperty(value = "琚闂汉鎵�灞炵粍缁�")
-    @ExcelColumn(name="琚闂汉鎵�灞炵粍缁�")
+    @ExcelColumn(name="琚闂汉缁勭粐",index = 7,width = 30)
     private String beVisitedPersonOrg;
 
     @ApiModelProperty(value = "鏉ヨ鍗曚綅")
-    @ExcelColumn(name="鏉ヨ鍗曚綅")
+    @ExcelColumn(name="鍏徃",index = 4,width = 20)
     private String visitorWorkUint;
 
     @ApiModelProperty(value = "璁垮楠岃瘉鐮�")
-//    @ExcelColumn(name="璁垮楠岃瘉鐮�")
     private String visitorCode;
 
     @ApiModelProperty(value = "鏉ヨ浜嬬敱")
-    @ExcelColumn(name="鏉ヨ浜嬬敱")
     private String purpose;
 
     @ApiModelProperty(value = "璇佷欢绛惧彂鏈哄叧")
-//    @ExcelColumn(name="璇佷欢绛惧彂鏈哄叧")
     private String signOrg;
 
     @ApiModelProperty(value = "鏉ヨ鏃堕棿")
-    @ExcelColumn(name="鏉ヨ鏃堕棿")
     private String startTime;
 
     @ApiModelProperty(value = "绂诲紑鏃堕棿")
-    @ExcelColumn(name="绂诲紑鏃堕棿")
     private String endTime;
     @ApiModelProperty(value = "鎵嬫満鍙风爜")
-    @ExcelColumn(name="鎵嬫満鍙风爜")
+    @ExcelColumn(name="鎵嬫満鍙风爜",index = 2,width = 10)
     private String phone;
 
     @ApiModelProperty(value = "杞︾墝鍙�")
-    @ExcelColumn(name="杞︾墝鍙�")
+    @ExcelColumn(name="杞︾墝鍙�",index = 5,width = 16)
     private String carNo;
 
     @ApiModelProperty(value = "鐓х墖uri")
-//    @ExcelColumn(name="鐓х墖uri")
     private String photoUrl;
 
     @ApiModelProperty(value = "鎶撴媿鍥緐ri")
-//    @ExcelColumn(name="鎶撴媿鍥緐ri")
     private String captureUrl;
 
     @ApiModelProperty(value = "鍥剧墖瀛樺偍鏈嶅姟鍣ㄥ敮涓�鏍囪瘑")
-//    @ExcelColumn(name="鍥剧墖瀛樺偍鏈嶅姟鍣ㄥ敮涓�鏍囪瘑")
     private String svrIndexCode;
 
     @ApiModelProperty(value = "琚闂汉id")
-//    @ExcelColumn(name="琚闂汉id")
     private String beVisitedPersonId;
 
     @ApiModelProperty(value = "琚闂汉鎵�灞炵粍缁噄d")
-//    @ExcelColumn(name="琚闂汉鎵�灞炵粍缁噄d")
     private String beVisitedPersonOrgId;
 
     @ApiModelProperty(value = "璇佷欢鍙�")
-    @ExcelColumn(name="璇佷欢鍙�")
+    @ExcelColumn(name="璇佷欢鍙�" ,index = 3,width = 16)
     private String idcardDecode;
 
     // 鏉′欢鏌ヨ鍙傛暟
@@ -185,11 +155,10 @@
 
     @ApiModelProperty(value = "浜嬩欢绫诲瀷鍚嶇О")
     @TableField(exist = false)
-    @ExcelColumn(name="浜嬩欢绫诲瀷")
+    @ExcelColumn(name="浜嬩欢绫诲瀷",index = 8,width = 16)
     private String eventTypeName;
 
     @ApiModelProperty(value = "鎶撴媿鍥緐ri瀹屾暣")
     @TableField(exist = false)
-//    @ExcelColumn(name="鎶撴媿鍥緐ri")
     private String captureUrlFull;
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 3f7130e..562b1e1 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -224,11 +224,11 @@
                 userAction.setCreator(loginUserInfo.getId());
                 if(Constants.equalsInteger(type,Constants.ONE)){
                     userAction.setType(Constants.ONE);
-                    userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+new Date()+"銆戯紝杩涜銆愬喕缁撱��");
+                    userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"銆戯紝杩涜銆愬喕缁撱��");
                 }
                 if(Constants.equalsInteger(type,Constants.TWO)){
                     userAction.setType(Constants.TWO);
-                    userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+new Date()+"銆戯紝杩涜銆愭媺榛戙��");
+                    userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"銆戯紝杩涜銆愭媺榛戙��");
 
                 }
                 userAction.setMemberId(id+"");
@@ -276,11 +276,11 @@
         userAction.setCreator(loginUserInfo.getId());
         if(Constants.equalsInteger(result.getType(),Constants.TWO)){
             userAction.setType(Constants.ONE);
-            userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+new Date()+"銆戯紝杩涜銆愬喕缁撱��");
+            userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"銆戯紝杩涜銆愬喕缁撱��");
         }
         if(Constants.equalsInteger(result.getType(),Constants.ZERO)){
             userAction.setType(Constants.TWO);
-            userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+new Date()+"銆戯紝杩涜銆愭媺榛戙��");
+            userAction.setRemark("鐢便��"+loginUserInfo.getUsername()+"銆戜簬銆愭搷浣滄椂闂�"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"銆戯紝杩涜銆愭媺榛戙��");
 
         }
         userAction.setMemberId(result.getId()+"");
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
index 0f2e09a..99aefd1 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
@@ -205,6 +205,13 @@
                             +dataMap.get(Constants.MEMBER_IMG).getCode()
                             +obj.getFaceImg());
                 }
+                if(Objects.nonNull(obj.getType())){
+                    if(!obj.getType().equals(Constants.memberType.visitor)){
+                        obj.setExcelCompanyName(obj.getCompanyName());
+                    }else{
+                        obj.setExcelCompanyName(obj.getVisitCompanyName());
+                    }
+                }
             });
         }
         return PageData.from(retentionIPage);
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.java
index 9069152..689fbb9 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.java
@@ -2,19 +2,28 @@
 
 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.UserActionMapper;
+import com.doumee.dao.business.join.UserActionJoinMapper;
+import com.doumee.dao.business.model.Company;
+import com.doumee.dao.business.model.Member;
+import com.doumee.dao.business.model.ParkBook;
 import com.doumee.dao.business.model.UserAction;
+import com.doumee.dao.system.model.SystemUser;
 import com.doumee.service.business.UserActionService;
 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瀹炵幇
@@ -26,6 +35,9 @@
 
     @Autowired
     private UserActionMapper userActionMapper;
+
+    @Autowired
+    private UserActionJoinMapper userActionJoinMapper;
 
     @Override
     public Integer create(UserAction userAction) {
@@ -87,48 +99,33 @@
     @Override
     public PageData<UserAction> findPage(PageWrap<UserAction> pageWrap) {
         IPage<UserAction> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
-        QueryWrapper<UserAction> queryWrapper = new QueryWrapper<>();
+        MPJLambdaWrapper<UserAction> queryWrapper = new MPJLambdaWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
-        if (pageWrap.getModel().getId() != null) {
-            queryWrapper.lambda().eq(UserAction::getId, pageWrap.getModel().getId());
-        }
-        if (pageWrap.getModel().getCreator() != null) {
-            queryWrapper.lambda().eq(UserAction::getCreator, pageWrap.getModel().getCreator());
-        }
-        if (pageWrap.getModel().getCreateDate() != null) {
-            queryWrapper.lambda().ge(UserAction::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
-            queryWrapper.lambda().le(UserAction::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
-        }
-        if (pageWrap.getModel().getEditor() != null) {
-            queryWrapper.lambda().eq(UserAction::getEditor, pageWrap.getModel().getEditor());
-        }
-        if (pageWrap.getModel().getEditDate() != null) {
-            queryWrapper.lambda().ge(UserAction::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
-            queryWrapper.lambda().le(UserAction::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
-        }
-        if (pageWrap.getModel().getIsdeleted() != null) {
-            queryWrapper.lambda().eq(UserAction::getIsdeleted, pageWrap.getModel().getIsdeleted());
-        }
-        if (pageWrap.getModel().getRemark() != null) {
-            queryWrapper.lambda().eq(UserAction::getRemark, pageWrap.getModel().getRemark());
-        }
-        if (pageWrap.getModel().getType() != null) {
-            queryWrapper.lambda().eq(UserAction::getType, pageWrap.getModel().getType());
-        }
-        if (pageWrap.getModel().getMemberId() != null) {
-            queryWrapper.lambda().eq(UserAction::getMemberId, pageWrap.getModel().getMemberId());
-        }
-        if (pageWrap.getModel().getBeforeStatus() != null) {
-            queryWrapper.lambda().eq(UserAction::getBeforeStatus, pageWrap.getModel().getBeforeStatus());
-        }
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
-            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
-                queryWrapper.orderByDesc(sortData.getProperty());
-            } else {
-                queryWrapper.orderByAsc(sortData.getProperty());
-            }
-        }
-        return PageData.from(userActionMapper.selectPage(page, queryWrapper));
+        UserAction queryModel =  pageWrap.getModel();
+        queryWrapper.selectAll(UserAction.class)
+                .leftJoin(Member.class,Member::getId,UserAction::getMemberId)
+                .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+                .leftJoin(SystemUser.class,SystemUser::getId,UserAction::getCreator)
+                .selectAs(SystemUser::getRealname,UserAction::getCreateName)
+                .selectAs(Member::getName,UserAction::getMemberName)
+                .selectAs(Company::getName,UserAction::getCompanyName)
+                .selectAs(Member::getType,UserAction::getMemberType)
+                .selectAs(Member::getPhone,UserAction::getMobile)
+                .select(" ( SELECT v.company_name FROM visits v WHERE v.member_id = t.member_id ORDER BY create_date DESC limit 1 ) as visitCompanyName ")
+                .like(StringUtils.isNotBlank(queryModel.getCreateName()),SystemUser::getRealname,queryModel.getCreateName())
+                .like(StringUtils.isNotBlank(queryModel.getMemberName()),Member::getName,queryModel.getMemberName())
+                .like(StringUtils.isNotBlank(queryModel.getMobile()),Member::getPhone,queryModel.getMobile())
+                .and(StringUtils.isNotBlank(queryModel.getCompanyName()),
+                        p-> p.like(Company::getName, queryModel.getCompanyName())
+                                .or()
+                                .exists(" select 1 from visits v where  v.member_id = t.member_id and v.company_name like '%"+pageWrap.getModel().getCompanyName()+"%' "))
+                .eq(!Objects.isNull(queryModel.getMemberType()),Member::getType,queryModel.getMemberType())
+                .eq(!Objects.isNull(queryModel.getBeforeStatus()),UserAction::getBeforeStatus,queryModel.getBeforeStatus())
+                .eq(!Objects.isNull(queryModel.getType()),UserAction::getType,queryModel.getType())
+                .orderByDesc(UserAction::getCreateDate)
+        ;
+        IPage<UserAction> result =  userActionJoinMapper.selectJoinPage(page,UserAction.class,queryWrapper);
+        return PageData.from(result);
     }
 
     @Override
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index a616c57..f36aaa1 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -694,7 +694,7 @@
         if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType())&&cardno.length()!=18
             //&&!IdcardUtil.isValidCard(cardno)
         ){
-            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
+            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇併��"+cardno+"銆戝彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
         }
         Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda()
                 .eq(Member::getType,Constants.memberType.visitor)
@@ -730,10 +730,9 @@
         }else{
             if(!Constants.equalsInteger(Constants.ZERO,member.getStatus() )){
                 //濡傛灉鐢ㄦ埛鐘舵�佸紓甯革紝鍒欐彁绀�
-                throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ヨ韩浠借瘉鍙疯绂佹璁块棶鐢宠锛屽鏈夌枒闂紝璇疯仈绯绘偍鐨勬嫓璁夸汉杩涜鏍稿疄");
+                throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿銆�"+cardno+"銆戣绂佹璁块棶鐢宠锛屽鏈夌枒闂紝璇疯仈绯绘偍鐨勬嫓璁夸汉杩涜鏍稿疄");
             }
             //鏍告煡棰勭害鐢ㄦ埛鏄惁瀛樺湪鏈绂荤殑棰勭害璁板綍
-
 //            isExsitNoOutVisisRecord(member);
 
             member.setFaceImg(visits.getFaceImg());
@@ -1034,11 +1033,9 @@
         queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
         queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
         queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getPhone,pageWrap.getModel().getName())
-                .or().like(Visits::getPhone,pageWrap.getModel().getName()))
-                .eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()))
-                .eq(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Visits::getCompanyName,pageWrap.getModel().getCompanyName())
-                .eq(Objects.nonNull(pageWrap.getModel().getStatus()),Visits::getStatus,pageWrap.getModel().getStatus());
-        queryWrapper.isNull(!Objects.nonNull(pageWrap.getModel().getLevelStatus()),Visits::getOutDate);
+                .or().like(Visits::getName,pageWrap.getModel().getName()));
+        queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()));
+        queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Visits::getCompanyName,pageWrap.getModel().getCompanyName());
         queryWrapper.orderByDesc(Visits::getEditDate);
         IPage<Visits> result = visitsJoinMapper.selectJoinPage(page, Visits.class,queryWrapper);
         if(result!=null&&result.getRecords()!=null){
diff --git a/server/dmvisit_service/src/main/resources/application-devYL.yml b/server/dmvisit_service/src/main/resources/application-devYL.yml
index 200579d..929847b 100644
--- a/server/dmvisit_service/src/main/resources/application-devYL.yml
+++ b/server/dmvisit_service/src/main/resources/application-devYL.yml
@@ -58,7 +58,6 @@
     appKey: 3AYBZ-I5R3V-2BVP3-UWBDQ-ETBM5-B2BBQ
 
 
-
 des_pwd: 123456SDFKDJF
 
 ## MQTT##

--
Gitblit v1.9.3