From ca133ed72b297141f906810f81413e15d3d66333 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 03 七月 2024 18:24:37 +0800
Subject: [PATCH] 代码初始化

---
 server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/ProjectsServiceImpl.java                      |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberRoleMapper.java                                   |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java                             |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarEventMapper.java                                     |    1 
 server/system_service/src/main/java/com/doumee/dao/system/join/NoticesJoinMapper.java                                       |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/DateIntervalVO.java                                  |    3 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java                   |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java                    |   59 +-
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java                                    |   14 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/EmpowerMapper.java                                      |    1 
 server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/MeetingApi.java                                             |   20 
 server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisPlusConfig.java                                        |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java                     |   20 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java                    |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVehicleFromHKServiceImpl.java |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java                             |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java                       |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/ERPSyncService.java                             |    2 
 server/meeting/meeting_admin/src/main/java/com/doumee/api/common/HomeController.java                                        |    4 
 server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/RoomsApi.java                                               |    1 
 server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java                      |  176 +++++++--
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java              |   15 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/VisitDetailVO.java                                  |    5 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java                         |   86 +---
 server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java                                    |    5 
 server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java                                             |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TrainTimeServiceImpl.java                      |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java                                   |    1 
 server/visits/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java                                           |    2 
 server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Bookings.java                                    |   16 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java                                   |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java                                  |   10 
 server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/BookingTime.java                                 |    4 
 server/meeting/meeting_admin/src/main/java/com/doumee/api/business/MeetingController.java                                   |   33 -
 server/system_service/src/main/java/com/doumee/dao/business/dao/CompanyMapper.java                                          |    1 
 server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java                                              |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveMapper.java                                      |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitsMapper.java                                       |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java              |   12 
 server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java                                       |   10 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java                     |    2 
 server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java                                    |    4 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java                                         |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitEventMapper.java                                   |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVisitFromHKServiceImpl.java   |    2 
 server/system_service/src/main/java/com/doumee/core/utils/Constants.java                                                    |    3 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java              |    4 
 server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java                                                 |    0 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberCardMapper.java                                   |    2 
 server/visits/openapi/src/main/java/com/doumee/api/web/ApiController.java                                                   |    9 
 server/meeting/meeting_service/src/main/java/com/doumee/service/business/BookingsService.java                               |    5 
 server/meeting/meeting_admin/src/main/resources/bootstrap.yml                                                               |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceMapper.java                                       |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java                                 |    1 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java                                 |    9 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java                                  |    3 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java                                   |    3 
 server/system_service/src/main/java/com/doumee/core/model/LoginUserInfo.java                                                |    3 
 server/system_service/src/main/java/com/doumee/config/jwt/JwtProperties.java                                                |    0 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceEventMapper.java                                  |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java                        |   99 +++--
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromHKServiceImpl.java |    4 
 server/system_service/src/main/java/com/doumee/dao/system/dto/LoginByOpenidDTO.java                                         |   20 +
 server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java                              |   51 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/RetentionMapper.java                                    |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberMapper.java                                       |    1 
 server/system_service/src/main/java/com/doumee/dao/system/dto/LoginAuthDTO.java                                             |   24 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java                   |    6 
 server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/RoomTimeServiceImpl.java                      |    1 
 server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java                                               |    6 
 server/visits/openapi/src/main/java/com/doumee/api/web/BizResourceController.java                                           |    8 
 server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/MeetingCloudController.java                               |   24 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java             |    2 
 server/system_service/src/main/java/com/doumee/core/constants/ResponseStatus.java                                           |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java                                       |    4 
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java                                    |    3 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/TrainTimeMapper.java                                    |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java  |    4 
 server/meeting/meeting_admin/src/main/resources/bootstrap-dev.yml                                                           |    2 
 /dev/null                                                                                                                   |  126 -------
 server/meeting/meeting_service/src/main/java/com/doumee/dao/web/request/MeetingPageRequest.java                             |    5 
 server/meeting/meeting_service/src/main/java/com/doumee/dao/admin/request/BusinessOverDTO.java                              |   22 +
 server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java                                           |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java         |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java                                        |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java                         |   39 +
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParkBookMapper.java                                     |    1 
 server/system_service/src/main/java/com/doumee/dao/system/SystemUserMapper.java                                             |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java            |    2 
 89 files changed, 596 insertions(+), 458 deletions(-)

diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/api/business/MeetingController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/api/business/MeetingController.java
index d7ce866..ba5284e 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/api/business/MeetingController.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/api/business/MeetingController.java
@@ -7,6 +7,7 @@
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.QrCodeUtils;
+import com.doumee.dao.admin.request.BusinessOverDTO;
 import com.doumee.dao.business.model.Bookings;
 import com.doumee.dao.web.request.BookingsRequest;
 import com.doumee.dao.web.request.MeetingPageRequest;
@@ -45,7 +46,6 @@
     @ApiOperation(value = "褰撴湀浼氳琛�", notes = "褰撴湀浼氳琛�")
     @GetMapping("/monthMeeting")
     @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
             @ApiImplicitParam(paramType = "query", dataType = "String", name = "yearMonth", value = "骞存湀  yyyy-MM", required = true)
     })
     public ApiResponse<List<MonthDataResponse>> monthDay(@RequestParam String yearMonth) {
@@ -66,9 +66,6 @@
 
     @ApiOperation("鎴戠殑浼氳鍒楄〃")
     @PostMapping("/myMeetingPage")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
     public ApiResponse<IPage<MeetingListResponse>> myMeetingPage(@RequestBody PageWrap<MeetingPageRequest> pageWrap) {
         LoginUserInfo user = getLoginUser(null);
         pageWrap.getModel().setUserId(user.getId());
@@ -81,7 +78,6 @@
     @ApiOperation("浼氳璇︽儏")
     @GetMapping("/meetingDetail")
     @ApiImplicitParams({
-//            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
             @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "浼氳涓婚敭", required = true),
     })
     public ApiResponse<MeetingDetailResponse> meetingDetail(@RequestParam Integer id) {
@@ -91,7 +87,6 @@
     @ApiOperation("鑾峰彇浼氳寮�闂ㄤ簩缁寸爜")
     @GetMapping("/getQrCode")
     @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
             @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "浼氳涓婚敭", required = true),
     })
     public ApiResponse<String> getQrCode(@RequestParam Integer id) {
@@ -102,9 +97,7 @@
     @ApiOperation("鑾峰彇浼氳寮�闂ㄤ簩缁寸爜-鍥剧墖娴�")
     @GetMapping("/getQrCodeImg")
     @ApiImplicitParams({
-//            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
             @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "浼氳涓婚敭", required = true),
-            @ApiImplicitParam(paramType = "query", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
     })
     public void getQrCodeImg(@RequestParam Integer id,@RequestParam String token, HttpServletResponse response) throws  Exception {
         LoginUserInfo user = getLoginUser(null);
@@ -117,9 +110,6 @@
 
     @ApiOperation("浼氳棰勭害")
     @PostMapping("/reservationMeeting")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-    })
     public ApiResponse<Integer> reservationMeeting(@RequestBody BookingsRequest bookingsRequest) {
         LoginUserInfo user = getLoginUser(null);
         bookingsRequest.setCreator(user.getId());
@@ -128,14 +118,21 @@
     }
 
     @ApiOperation("鍙栨秷浼氳棰勭害")
-    @GetMapping("/reservationCancel")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "浼氳涓婚敭", required = true),
-    })
-    public ApiResponse reservationCancel(@RequestParam Integer id) {
+    @PostMapping("/reservationCancel")
+    public ApiResponse reservationCancel(@RequestBody BusinessOverDTO businessOverDTO) {
         LoginUserInfo user = getLoginUser(null);
-        bookingsService.reservationCancel(id,user.getId());
+        businessOverDTO.setUserId(user.getId());
+        bookingsService.reservationCancel(businessOverDTO);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
+
+    @ApiOperation("鎻愬墠缁撴潫浼氳")
+    @PostMapping("/reservationOver")
+    public ApiResponse reservationOver(@RequestBody BusinessOverDTO businessOverDTO) {
+        LoginUserInfo user = getLoginUser(null);
+        businessOverDTO.setUserId(user.getId());
+        bookingsService.reservationOver(businessOverDTO);
         return ApiResponse.success("鎿嶄綔鎴愬姛");
     }
 
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/api/common/HomeController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/api/common/HomeController.java
index ce4d517..5555a88 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/api/common/HomeController.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/api/common/HomeController.java
@@ -60,7 +60,7 @@
         bookquery.eq(Bookings::getIsdeleted, Constants.ZERO);
         bookquery.eq(Bookings::getStatus, Constants.ZERO);
         bookquery.apply("DATE_FORMAT(t.START_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d') " );
-        Integer   todayBookingsNum= bookingsJoinMapper.selectCount(bookquery);
+        Long  todayBookingsNum= bookingsJoinMapper.selectCount(bookquery);
         json.put("todayBookingsNum",todayBookingsNum);
 
         //浠婃棩浼氳鏃堕暱锛堝皬鏃讹級
@@ -136,7 +136,7 @@
         MPJLambdaWrapper<Rooms> rm1 = new MPJLambdaWrapper<>();
         rm1.eq(Rooms::getIsdeleted, Constants.ZERO);
         rm1.eq(Rooms::getStatus, Constants.ZERO);
-        Integer roomNum=  roomsJoinMapper.selectCount(rm1);
+        Long roomNum=  roomsJoinMapper.selectCount(rm1);
         json.put("roomNum",roomNum);
 
         //鍛樺伐鏁伴噺
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/MeetingCloudController.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/MeetingCloudController.java
index 412059b..b7f9d3a 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/MeetingCloudController.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/MeetingCloudController.java
@@ -8,6 +8,7 @@
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.QrCodeUtils;
+import com.doumee.dao.admin.request.BusinessOverDTO;
 import com.doumee.dao.business.model.Bookings;
 import com.doumee.dao.web.request.BookingsRequest;
 import com.doumee.dao.web.request.MeetingPageRequest;
@@ -130,18 +131,25 @@
         return ApiResponse.success("鎿嶄綔鎴愬姛",bookingsService.reservationMeeting(bookingsRequest));
     }
 
+
     @ApiOperation("鍙栨秷浼氳棰勭害")
-    @GetMapping("/reservationCancel")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
-            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "浼氳涓婚敭", required = true),
-    })
-    public ApiResponse reservationCancel(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
-//        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+    @PostMapping("/reservationCancel")
+    public ApiResponse reservationCancel(@RequestBody BusinessOverDTO businessOverDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         LoginUserInfo user = getLoginUser(token);
-        bookingsService.reservationCancel(id,user.getId());
+        businessOverDTO.setUserId(user.getId());
+        bookingsService.reservationCancel(businessOverDTO);
         return ApiResponse.success("鎿嶄綔鎴愬姛");
     }
 
+    @ApiOperation("鎻愬墠缁撴潫浼氳")
+    @PostMapping("/reservationOver")
+    public ApiResponse reservationOver(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        LoginUserInfo user = getLoginUser(token);
+        businessOverDTO.setUserId(user.getId());
+        bookingsService.reservationOver(businessOverDTO);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
+
 
 }
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/MeetingApi.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/MeetingApi.java
index 0c70925..c72c15d 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/MeetingApi.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/MeetingApi.java
@@ -8,6 +8,7 @@
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
+import com.doumee.dao.admin.request.BusinessOverDTO;
 import com.doumee.dao.business.model.Bookings;
 import com.doumee.dao.system.vo.UserResponse;
 import com.doumee.dao.web.request.BookingsRequest;
@@ -143,16 +144,23 @@
     }
 
     @ApiOperation("鍙栨秷浼氳棰勭害")
-    @GetMapping("/reservationCancel")
-    @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "浼氳涓婚敭", required = true),
-    })
-    public ApiResponse reservationCancel(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+    @PostMapping("/reservationCancel")
+    public ApiResponse reservationCancel(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         LoginUserInfo user = getLoginUser(token);
-        bookingsService.reservationCancel(id,user.getId());
+        businessOverDTO.setUserId(user.getId());
+        bookingsService.reservationCancel(businessOverDTO);
         return ApiResponse.success("鎿嶄綔鎴愬姛");
     }
 
 
+    @ApiOperation("鎻愬墠缁撴潫浼氳")
+    @PostMapping("/reservationOver")
+    public ApiResponse reservationOver(@RequestBody BusinessOverDTO businessOverDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+        LoginUserInfo user = getLoginUser(token);
+        businessOverDTO.setUserId(user.getId());
+        bookingsService.reservationOver(businessOverDTO);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
 
 }
diff --git a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/RoomsApi.java b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/RoomsApi.java
index 2146546..b4b243e 100644
--- a/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/RoomsApi.java
+++ b/server/meeting/meeting_admin/src/main/java/com/doumee/cloud/web/RoomsApi.java
@@ -2,7 +2,6 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.doumee.api.BaseController;
-import com.doumee.config.Jwt.JwtTokenUtil;
 import com.doumee.core.annotation.trace.Trace;
 import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.LoginUserInfo;
diff --git a/server/meeting/meeting_admin/src/main/resources/bootstrap-dev.yml b/server/meeting/meeting_admin/src/main/resources/bootstrap-dev.yml
index aa4dfc5..b93e438 100644
--- a/server/meeting/meeting_admin/src/main/resources/bootstrap-dev.yml
+++ b/server/meeting/meeting_admin/src/main/resources/bootstrap-dev.yml
@@ -16,6 +16,7 @@
       config:
         server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
         namespace: dmvisit
+#        namespace: dev_renkang
         username: nacos
         password: nacos
 #        file-extension: yaml
@@ -23,6 +24,7 @@
 #        data-id: com.doumee.meeting.admin
       discovery:
         server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃
+#        namespace: dev_renkang
         namespace: dmvisit
         username: nacos
         password: nacos
diff --git a/server/meeting/meeting_admin/src/main/resources/bootstrap.yml b/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
index 17973bb..e322970 100644
--- a/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
+++ b/server/meeting/meeting_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
 spring:
   profiles:
-    active: test
+    active: dev
   application:
     name: meetingAdmin
       # 瀹夊叏閰嶇疆
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/JwtPayLoad.java b/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/JwtPayLoad.java
deleted file mode 100644
index 065a6cd..0000000
--- a/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/JwtPayLoad.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.doumee.config.Jwt;
-
-import io.swagger.models.auth.In;
-import lombok.Data;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * jwt鐨勭浜岄儴鍒�
- *
- * @author fengshuonan
- * @Date 2019/7/20 20:45
- */
-@Data
-public class JwtPayLoad {
-
-    /**
-     * 鐢ㄦ埛id
-     */
-    private Integer memberId;
-    private long expire;
-
-
-    public JwtPayLoad() {
-    }
-
-    public JwtPayLoad(Integer memberId) {
-        this.memberId = memberId;
-    }
-
-    /**
-     * payload杞寲涓簃ap褰㈠紡
-     *
-     * @author fengshuonan
-     * @Date 2019/7/20 20:50
-     */
-    public Map<String, Object> toMap() {
-        HashMap<String, Object> map = new HashMap<>();
-        map.put("memberId", this.memberId);
-        return map;
-    }
-
-    /**
-     * payload杞寲涓簃ap褰㈠紡
-     *
-     * @author fengshuonan
-     * @Date 2019/7/20 20:50
-     */
-    public static JwtPayLoad toBean(Map<String, Object> map) {
-        if (map == null || map.size() == 0) {
-            return new JwtPayLoad();
-        } else {
-            JwtPayLoad jwtPayLoad = new JwtPayLoad();
-            jwtPayLoad.setMemberId((Integer) map.get("memberId"));
-
-            return jwtPayLoad;
-        }
-    }
-
-
-
-}
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/JwtTokenUtil.java b/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/JwtTokenUtil.java
deleted file mode 100644
index e368861..0000000
--- a/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/JwtTokenUtil.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/**
- * Copyright 2018-2020 stylefeng & fengshuonan (sn93@qq.com)
- * <p>
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.doumee.config.Jwt;
-
-
-import io.jsonwebtoken.*;
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.Date;
-import java.util.Map;
-
-/**
- * <p>鍚庡彴绯荤粺jwt token宸ュ叿绫�</p>
- * <pre>
- *     jwt鐨刢laim閲屼竴鑸寘鍚互涓嬪嚑绉嶆暟鎹�:
- *         1. iss -- token鐨勫彂琛岃��
- *         2. sub -- 璇WT鎵�闈㈠悜鐨勭敤鎴�
- *         3. aud -- 鎺ユ敹璇WT鐨勪竴鏂�
- *         4. exp -- token鐨勫け鏁堟椂闂�
- *         5. nbf -- 鍦ㄦ鏃堕棿娈典箣鍓�,涓嶄細琚鐞�
- *         6. iat -- jwt鍙戝竷鏃堕棿
- *         7. jti -- jwt鍞竴鏍囪瘑,闃叉閲嶅浣跨敤
- * </pre>
- *
- * @author fengshuonan
- * @Date 2017/8/25 10:59
- */
-public class JwtTokenUtil {
-    //Header 鍚嶇О
-    public static final String HEADER_KEY = "token";
-    //鍙栧�煎悕绉�
-    public static final String UserId_Name = "AppUserId";
-    //鍔犲瘑瀵嗛挜
-    private final static String jwtSecret = "MhAjU9poLf8ko54K25XBDtonaL33vtt1";
-    //杩囨湡鏃堕棿(s) 86400L=1澶� 604800L=7澶�
-    private static final long expire = 86400L;
-
-    /**
-     * 鐢熸垚token,鏍规嵁userId鍜岄粯璁よ繃鏈熸椂闂�
-     */
-    public static String generateToken(JwtPayLoad jwtPayLoad) {
-        Long expiredSeconds = getExpireSeconds();
-        final Date expirationDate = new Date(System.currentTimeMillis() + expiredSeconds * 1000);
-        return generateToken(jwtPayLoad.getMemberId(), expirationDate, jwtPayLoad.toMap());
-    }
-
-    /**
-     * 楠岃瘉token鏄惁澶辨晥
-     */
-    public static Boolean isTokenExpired(String token) {
-        try {
-            final Date expiration = getExpirationDateFromToken(token);
-            return expiration.before(new Date());
-        } catch (ExpiredJwtException expiredJwtException) {
-            return true;
-        }
-    }
-
-    /**
-     * 鐢熸垚token,鏍规嵁userId鍜岄粯璁よ繃鏈熸椂闂�
-     */
-    public static String generateTokenOld(JwtPayLoad jwtPayLoad) {
-        Long expiredSeconds = getExpireSeconds();
-        final Date expirationDate = new Date(System.currentTimeMillis() + expiredSeconds * 1000);
-        return generateToken(jwtPayLoad.getMemberId(), expirationDate, jwtPayLoad.toMap());
-    }
-
-    /**
-     * 鑾峰彇jwt鐨刾ayload閮ㄥ垎
-     */
-    public static JwtPayLoad getJwtPayLoad(String token) {
-        Claims claimFromToken = getClaimFromToken(token);
-        return JwtPayLoad.toBean(claimFromToken);
-    }
-
-    /**
-     * 瑙f瀽token鏄惁姝g‘(true-姝g‘, false-閿欒)
-     */
-    public static Boolean checkToken(String token) {
-        try {
-            String jwtSecret = getJwtSecret();
-            Jwts.parser().setSigningKey(jwtSecret).parseClaimsJws(token).getBody();
-            return true;
-        } catch (JwtException e) {
-            return false;
-        }
-    }
-
-    /**
-     * 楠岃瘉token鏄惁澶辨晥
-     */
-    public static Boolean isTokenExpiredOld(String token) {
-        try {
-            final Date expiration = getExpirationDateFromToken(token);
-            return expiration.before(new Date());
-        } catch (ExpiredJwtException expiredJwtException) {
-            return true;
-        }
-    }
-
-    // 浠巘oken涓幏鍙栫敤鎴稩D
-    public static String getUserId(String token){
-        return getClaimFromToken(token).getSubject();
-    }
-
-    /**
-     * 鑾峰彇jwt澶辨晥鏃堕棿
-     */
-    public static Date getExpirationDateFromToken(String token) {
-        return getClaimFromToken(token).getExpiration();
-    }
-
-    /**
-     * 鐢熸垚token,鏍规嵁userId鍜岃繃鏈熸椂闂�
-     */
-    public static String generateToken(Integer userId, Date exppiredDate, Map<String, Object> claims) {
-
-        final Date createdDate = new Date();
-        String secret = getJwtSecret();
-
-        if (claims == null) {
-            return Jwts.builder()
-                    .setSubject(userId.toString())
-                    .setIssuedAt(createdDate)
-                    .setExpiration(exppiredDate)
-                    .signWith(SignatureAlgorithm.HS512, secret)
-                    .compact();
-        } else {
-            return Jwts.builder()
-                    .setClaims(claims)
-                    .setSubject(userId.toString())
-                    .setIssuedAt(createdDate)
-                    .setExpiration(exppiredDate)
-                    .signWith(SignatureAlgorithm.HS512, secret)
-                    .compact();
-        }
-    }
-
-    /**
-     * 鑾峰彇jwt鐨刾ayload閮ㄥ垎
-     */
-    public static Claims getClaimFromToken(String token) {
-        if (StringUtils.isBlank(token)) {
-            throw new IllegalArgumentException("token鍙傛暟涓虹┖锛�");
-        }
-        String jwtSecret = getJwtSecret();
-        return Jwts.parser().setSigningKey(jwtSecret).parseClaimsJws(token).getBody();
-    }
-
-    /**
-     * 鑾峰彇绯荤粺鍦板瘑閽�
-     */
-    private static String getJwtSecret() {
-        return jwtSecret;
-    }
-
-    /**
-     * 鑾峰彇绯荤粺鍦板瘑閽ヨ繃鏈熸椂闂达紙鍗曚綅锛氱锛�
-     */
-    private static Long getExpireSeconds() {
-        return expire;
-    }
-}
\ No newline at end of file
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java b/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java
deleted file mode 100644
index 70ad1ce..0000000
--- a/server/meeting/meeting_service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java
+++ /dev/null
@@ -1,109 +0,0 @@
-package com.doumee.config.Jwt;
-
-import com.doumee.config.annotation.LoginRequired;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.utils.Constants;
-import io.jsonwebtoken.JwtException;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.web.client.RestTemplate;
-import org.springframework.web.method.HandlerMethod;
-import org.springframework.web.servlet.HandlerInterceptor;
-import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-//@Configuration
-public class WebMvcConfig implements WebMvcConfigurer {
-
-
-    @Autowired
-    private JdbcTemplate dao;
-
-    /**
-     * 娣诲姞鎷︽埅鍣�
-     */
-    @Override
-    public void addInterceptors(InterceptorRegistry registry) {
-        //API鎺ュ彛JwtToken鎷︽埅鍣�
-        HandlerInterceptor TokenInterceptor = new HandlerInterceptor() {
-            @Override
-            public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-                // 濡傛灉涓嶆槸鏄犲皠鍒版柟娉曠洿鎺ラ�氳繃
-                if (!(handler instanceof HandlerMethod)) {
-                    return true;
-                }
-                HandlerMethod handlerMethod = (HandlerMethod) handler;
-
-                Class<?> beanType = handlerMethod.getBeanType();
-
-//                Method method = handlerMethod.getMethod();
-
-                // 鏈� @LoginRequired 娉ㄨВ锛岄渶瑕佺櫥褰曡璇�
-                if (beanType.isAnnotationPresent(LoginRequired.class)) {
-                    //鑾峰彇token
-                    String token = request.getHeader(JwtTokenUtil.HEADER_KEY);  // 浠� http 璇锋眰澶翠腑鍙栧嚭 token
-                    if (StringUtils.isNotBlank(token)) {
-                        checkLogin(request,response);
-                    } else {
-                        throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鏈櫥褰�");
-                    }
-                }else if (handlerMethod.hasMethodAnnotation(LoginRequired.class)){
-                    //鑾峰彇token
-                    String token = request.getHeader(JwtTokenUtil.HEADER_KEY);  // 浠� http 璇锋眰澶翠腑鍙栧嚭 token
-                    if (StringUtils.isNotBlank(token)) {
-                        checkLogin(request,response);
-                    } else {
-                        throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鏈櫥褰�");
-                    }
-                }
-                return true;
-            }
-        };
-        registry.addInterceptor(TokenInterceptor).addPathPatterns("/web/**");
-    }
-
-
-
-    public Boolean checkLogin(HttpServletRequest request, HttpServletResponse response){
-        String token = request.getHeader(JwtTokenUtil.HEADER_KEY);
-        try {
-            //鍒ゆ柇Token鏄惁瓒呮椂
-            boolean expiration = JwtTokenUtil.isTokenExpired(token);
-            if (expiration) {
-                throw new BusinessException(ResponseStatus.TOKEN_EXCEED_TIME.getCode(),"闀挎椂闂存湭鎿嶄綔,璇烽噸鏂扮櫥褰�");
-            }
-            //鑾峰彇璐﹀彿ID
-            Integer memberId = JwtTokenUtil.getJwtPayLoad(token).getMemberId();
-            Integer isDeleted = dao.queryForObject(" select COALESCE(DELETED,1)  from `system_user` where id  = ?", Integer.class, memberId);
-            if(isDeleted== Constants.ONE){
-                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸插垹闄�,璇疯仈绯荤鐞嗗憳");
-            }
-            Integer isForbidden = dao.queryForObject(" select COALESCE(STATUS,1)  from `system_user` where id  = ?", Integer.class, memberId);
-            if(isForbidden== Constants.ONE){
-                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸茬鐢�,璇疯仈绯荤鐞嗗憳");
-            }
-            Integer count = dao.queryForObject("select count(1) from `system_user` where id  = ?", Integer.class, memberId);
-            if (count != null && count > 0) {
-                request.setAttribute(JwtTokenUtil.UserId_Name, memberId);
-                return true;
-            }else{
-                throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鐢ㄦ埛淇℃伅鍑洪敊");
-            }
-        } catch (IllegalArgumentException | JwtException e) {
-            throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鏈櫥褰�");
-        }
-    }
-
-    @Bean
-    public RestTemplate getRestTemplate(){
-        return new RestTemplate();
-    }
-
-
-}
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/admin/request/BusinessOverDTO.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/admin/request/BusinessOverDTO.java
new file mode 100644
index 0000000..ac5dc37
--- /dev/null
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/admin/request/BusinessOverDTO.java
@@ -0,0 +1,22 @@
+package com.doumee.dao.admin.request;
+
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.utils.DESUtil;
+import com.doumee.dao.admin.response.DevWgResponseParam;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.StringUtils;
+
+@Data
+@ApiModel("浼氳缁撴潫璇锋眰绫�")
+public class BusinessOverDTO {
+    @ApiModelProperty(value = "涓氬姟涓婚敭")
+    private  Integer id  ;
+    @ApiModelProperty(value = "涓氬姟鎿嶄綔澶囨敞")
+    private  String businessRemark;
+    @ApiModelProperty(value = "鐢ㄦ埛涓婚敭",required = true)
+    private  Integer userId  ;
+
+}
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java
index e58228b..ac3f8c2 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/BookingsMapper.java
@@ -24,7 +24,8 @@
 
     @Select(" select a.id , a.START_TIME , a.END_TIME , b.`NAME` as roomName , a.`NAME` as meetingName  ,date_format(a.START_TIME,'%Y-%m-%d') as meetingDate , a.START_TIME as startTime, a.status ," +
             " CONCAT(date_format(a.START_TIME,'%H:%i') , ' ~ ',date_format(a.END_TIME,'%H:%i')) as meetingTime,  c.REALNAME as bookingUser ," +
-            " CASE  WHEN a.START_TIME > now() and a.`STATUS` = 0  THEN 1  WHEN a.END_TIME < now()  or a.`STATUS` = 1  THEN 3 ELSE 2  END meetingStatus , b.IMGURL as imgUrl ," +
+            " CASE WHEN a.START_TIME > now() AND a.`STATUS` = 0 THEN 1  WHEN a.END_TIME < now() AND a.`STATUS` = 0  THEN 3 WHEN a.`STATUS` = 1 THEN 5 ELSE  2  END meetingStatus ," +
+            " b.IMGURL as imgUrl ," +
             " a.remark  " +
             " from meeting_book a inner join meeting_rooms b  on a.ROOM_ID = b.ID  " +
             " inner join system_user c on a.CREATOR = c.id  " +
@@ -35,7 +36,7 @@
 
     @Select(" select a.id , a.START_TIME , a.END_TIME , b.id as roomId,  b.`NAME` as roomName , a.`NAME` as meetingName  ,date_format(a.START_TIME,'%Y骞�%m鏈�%d鏃�') as meetingDate ," +
             " CONCAT(date_format(a.START_TIME,'%H:%i') , ' ~ ',date_format(a.END_TIME,'%H:%i')) as meetingTime,  c.REALNAME as bookingUserName ," +
-            " CASE  WHEN a.START_TIME > now() and a.`STATUS` = 0  THEN 1  WHEN a.END_TIME < now()  or a.`STATUS` = 1  THEN 3 ELSE 2  END meetingStatus ," +
+            "  CASE WHEN a.START_TIME > now() AND a.`STATUS` = 0 THEN 1  WHEN a.END_TIME < now() AND a.`STATUS` = 0  THEN 3 WHEN a.`STATUS` = 1 THEN 5 ELSE  2  END meetingStatus ," +
             " a.CONTENT as meetingContent, c.MOBILE as bookingUserMobile , e.`NAME` as bookingUserDepartment , a.CREATOR as bookingUserId  , a.remark  " +
             " from meeting_book a inner join meeting_rooms b  on a.ROOM_ID = b.ID  " +
             " left join system_user c on a.CREATOR = c.id " +
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/BookingTime.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/BookingTime.java
index 771bb2d..6fe3f53 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/BookingTime.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/BookingTime.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 com.doumee.core.model.LoginUserModel;
 import io.swagger.annotations.ApiModel;
@@ -58,4 +59,7 @@
     @ExcelColumn(name="鏃堕棿娈电紪鐮侊紙鍏宠仈room_time琛級")
     private Integer timeId;
 
+    @ApiModelProperty(value = "缁撴潫鏃堕棿  HH:mm",hidden = true)
+    @TableField(exist = false)
+    private String endTime;
 }
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Bookings.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Bookings.java
index 7b1a7b2..87769ee 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Bookings.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/Bookings.java
@@ -81,7 +81,7 @@
     @ApiModelProperty(value = "浼氳鍐呭")
     private String content;
 
-    @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤")
+    @ApiModelProperty(value = "鐘舵�� 0宸查绾� 1宸叉挙閿� 2宸茬粨鏉� ")
     private Integer status;
 
     @ApiModelProperty(value = "鍙栨秷浜�")
@@ -93,7 +93,17 @@
     @ApiModelProperty(value = "鍙戦�侀�氱煡锛�0=鏈彂閫� 1=宸插彂閫�")
     private Integer sendNotice;
 
+    @ApiModelProperty(value = "鍙栨秷澶囨敞")
+    private String cancelInfo;
 
+    @ApiModelProperty(value = "鎻愬墠缁撴潫浜�")
+    private Integer doneUserId;
+
+    @ApiModelProperty(value = "鎻愬墠缁撴潫鏃堕棿")
+    private Date doneDate;
+
+    @ApiModelProperty(value = "鍙栨秷澶囨敞")
+    private String doneInfo;
 
     @ApiModelProperty(value = "棰勭害浜�")
     @TableField(exist = false)
@@ -162,4 +172,8 @@
     @ApiModelProperty(value = "weekday")
     @TableField(exist = false)
     private String weekday;
+
+    @ApiModelProperty(value = "浼氳鐘舵��: 1=鏈紑濮嬶紱2=杩涜涓紱3=宸茬粨鏉� ; 4=鍗冲皢寮�濮�; 5=宸叉挙閿�")
+    @TableField(exist = false)
+    private Integer meetingStatus;
 }
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java
index 7fdf791..eb6c94e 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/business/model/RoomTime.java
@@ -59,8 +59,8 @@
     @ExcelColumn(name="寮�鏀惧紑濮嬫椂闂�")
     private String startTime;
 
-    @ApiModelProperty(value = "寮�鍙戠粨鏉熸椂闂�")
-    @ExcelColumn(name="寮�鍙戠粨鏉熸椂闂�")
+    @ApiModelProperty(value = "寮�鏀剧粨鏉熸椂闂�")
+    @ExcelColumn(name="寮�鏀剧粨鏉熸椂闂�")
     private String endTime;
 
     @ApiModelProperty(value = "鐘舵�� 0鍙�� 1涓嶅彲閫� ", example = "1")
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/dao/web/request/MeetingPageRequest.java b/server/meeting/meeting_service/src/main/java/com/doumee/dao/web/request/MeetingPageRequest.java
index 4a13c06..75332e5 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/dao/web/request/MeetingPageRequest.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/dao/web/request/MeetingPageRequest.java
@@ -31,4 +31,9 @@
 
     @ApiModelProperty(value = "浼氳瀹や富閿�")
     private Integer roomsId;
+
+    @ApiModelProperty(value = "浼氳鐘舵��: 1=鏈紑濮嬶紱2=杩涜涓紱3=宸茬粨鏉� ; 4=鍗冲皢寮�濮�; 5=宸叉挙閿�")
+    private Integer meetingStatus;
+
+
 }
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/BookingsService.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/BookingsService.java
index 40450f7..7ea8a40 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/BookingsService.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/BookingsService.java
@@ -4,6 +4,7 @@
 import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
+import com.doumee.dao.admin.request.BusinessOverDTO;
 import com.doumee.dao.admin.response.DevWgResponseParam;
 import com.doumee.dao.business.model.Bookings;
 import com.doumee.dao.business.vo.RoomStatisticsVo;
@@ -168,7 +169,7 @@
      * @param id
      * @param userId
      */
-    void reservationCancel(Integer id,Integer userId);
+    void reservationCancel(BusinessOverDTO businessOverDTO);
 
 
     /**
@@ -207,4 +208,6 @@
     void sendBookingsNotice();
 
     IPage<UserResponse> getUserPage(PageWrap<UserPageRequest> pageWrap);
+
+    void reservationOver(BusinessOverDTO businessOverDTO);
 }
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
index d9f45e3..4baca41 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
@@ -16,6 +16,7 @@
 import com.doumee.core.utils.Utils;
 import com.doumee.core.wx.MeetConstants;
 import com.doumee.core.wx.SendWxMessage;
+import com.doumee.dao.admin.request.BusinessOverDTO;
 import com.doumee.dao.admin.request.QrOpenDoorDto;
 import com.doumee.dao.admin.response.DevWgResponseParam;
 import com.doumee.dao.business.*;
@@ -188,6 +189,7 @@
         bookquery.selectAs(BookingTime::getTimeId, Bookings::getRoomTimeId);
         bookquery.selectAs(BookingTime::getId, Bookings::getBookingTimeId);
         bookquery.eq(Bookings::getIsdeleted, MeetConstants.ZERO);
+        bookquery.eq(BookingTime::getIsdeleted, MeetConstants.ZERO);
         bookquery.eq(Bookings::getRoomId, bookings.getRoomId());
         bookquery.eq(Bookings::getStatus, MeetConstants.ZERO);
         //bookquery.ge(Bookings::getStartTime, bookings.getStartTime());
@@ -251,14 +253,13 @@
 
 
         bookings.getBookingTimeList().stream().forEach(s -> {
+            s.setId(null);
             s.setCreator(user.getId());
             s.setCreateDate(new Date());
             s.setIsdeleted(MeetConstants.ZERO);
             s.setBookingId(bookings.getId());
             bookingTimeJoinMapper.insert(s);
         });
-
-
     }
 
     public void updateManager(Bookings bookings, LoginUserInfo user) {
@@ -271,16 +272,18 @@
             userRel.setIsdeleted(MeetConstants.ONE);
             userRelJoinMapper.update(userRel, updateWrapper);
         }
-        bookings.getSysList().stream().forEach(s -> {
-            s.setIsdeleted(MeetConstants.ZERO);
-            s.setCreateDate(new Date());
-            s.setCreator(user.getId());
-            s.setUserId(s.getUserId());
-            s.setObjId(bookings.getId());
-            s.setObjType(MeetConstants.ONE);
-            userRelJoinMapper.insert(s);
-        });
-
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(bookings.getSysList())){
+            bookings.getSysList().stream().forEach(s -> {
+                s.setId(null);
+                s.setIsdeleted(MeetConstants.ZERO);
+                s.setCreateDate(new Date());
+                s.setCreator(user.getId());
+                s.setUserId(s.getUserId());
+                s.setObjId(bookings.getId());
+                s.setObjType(MeetConstants.ONE);
+                userRelJoinMapper.insert(s);
+            });
+        }
     }
 
     public void updateProjectRel(Bookings rooms, LoginUserInfo user) {
@@ -294,7 +297,7 @@
             projectRelJoinMapper.update(projectRel, updateWrapper);
 
             rooms.getProjectList().stream().forEach(s -> {
-
+                s.setId(null);
                 s.setIsdeleted(MeetConstants.ZERO);
                 s.setCreateDate(new Date());
                 s.setCreator(user.getId());
@@ -472,7 +475,7 @@
         queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getName()), Bookings::getName, pageWrap.getModel().getName());
         queryWrapper.eq(pageWrap.getModel().getStatus() != null, Bookings::getStatus, pageWrap.getModel().getStatus());
         queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getRealName()), SystemUser::getRealname, pageWrap.getModel().getRealName());
-        queryWrapper.eq(pageWrap.getModel().getDepartmentId() != null, SystemUser::getId, pageWrap.getModel().getDepartmentId());
+        queryWrapper.eq(pageWrap.getModel().getDepartmentId() != null, Company::getId, pageWrap.getModel().getDepartmentId());
 
         if (pageWrap.getModel().getStartTime() != null) {
             queryWrapper.ge(Bookings::getStartTime, pageWrap.getModel().getStartTime());
@@ -489,6 +492,13 @@
         SimpleDateFormat format1 = new SimpleDateFormat("HH:mm");
         IPage<Bookings> result = bookingsJoinMapper.selectJoinPage(page, Bookings.class, queryWrapper);
         result.getRecords().stream().forEach(s -> {
+            if(s.getStartTime().getTime()>System.currentTimeMillis()&&s.getStatus().equals(Constants.ZERO)){
+                s.setMeetingStatus(Constants.ONE);
+            }else if(s.getEndTime().getTime()<System.currentTimeMillis()||Constants.equalsInteger(s.getStatus(),Constants.ONE) || Constants.equalsInteger(s.getStatus(),Constants.TWO) ){
+                s.setMeetingStatus(Constants.THREE);
+            }else{
+                s.setMeetingStatus(Constants.TWO);
+            }
             MPJLambdaWrapper<Multifile> bookquery = new MPJLambdaWrapper<>();
             bookquery.eq(Multifile::getIsdeleted, MeetConstants.ZERO);
             bookquery.eq(Multifile::getObjId, s.getId());
@@ -764,38 +774,59 @@
      */
     @Override
     public IPage<MeetingListResponse> getMyMeetingPage(PageWrap<MeetingPageRequest> pageWrap) {
-        IPage<MeetingListResponse> page = bookingsMapper.myMeetingPage(pageWrap.toPage(), new QueryWrapper<MeetingListResponse>()
+
+        QueryWrapper queryWrapper = new QueryWrapper<MeetingListResponse>()
                 .and(StringUtils.isNotBlank(pageWrap.getModel().getRoomsName()),
                         j -> j.like("a.NAME",pageWrap.getModel().getRoomsName()).or()
                                 .like(" b.NAME", pageWrap.getModel().getRoomsName()))
-                        .exists(pageWrap.getModel().getQueryType().equals(MeetConstants.ONE) && !Objects.isNull(pageWrap.getModel().getUserId()),
-                                " select 1 from meeting_user_rel u where a.id = u.OBJ_ID and  u.USER_ID = '" + pageWrap.getModel().getUserId() + "' and u.ISDELETED = 0 and OBJ_TYPE = 1  ")
-                        .eq(pageWrap.getModel().getQueryType().equals(MeetConstants.TWO) && !Objects.isNull(pageWrap.getModel().getUserId()), "a.CREATOR", pageWrap.getModel().getUserId())
-                        .like(StringUtils.isNotBlank(pageWrap.getModel().getQueryDate()), "a.START_TIME", pageWrap.getModel().getQueryDate())
-                        .eq(!Objects.isNull(pageWrap.getModel().getRoomsId()), "b.id", pageWrap.getModel().getRoomsId())
-                        .apply(!Objects.isNull(pageWrap.getModel().getStatus()) && pageWrap.getModel().getStatus().equals(MeetConstants.ONE), " now() < a.END_TIME and a.STATUS = 0   ")
-                        .and(!Objects.isNull(pageWrap.getModel().getStatus()) && pageWrap.getModel().getStatus().equals(MeetConstants.TWO),
-                                j -> j.apply("now() >= a.END_TIME ").or()
-                                        .eq(" a.STATUS", MeetConstants.ONE))
-                        .eq("b.ISDELETED",MeetConstants.ZERO)
-                        .eq("b.STATUS",MeetConstants.ZERO)
-                        .eq("a.ISDELETED",MeetConstants.ZERO)
-                        .orderByDesc(!Objects.isNull(pageWrap.getModel().getStatus())&&pageWrap.getModel().getStatus().equals(MeetConstants.TWO),"a.START_TIME")
-                        .orderByAsc(Objects.isNull(pageWrap.getModel().getStatus())||pageWrap.getModel().getStatus().equals(MeetConstants.ONE),"a.START_TIME")
-        );
+                .exists(pageWrap.getModel().getQueryType().equals(MeetConstants.ONE) && !Objects.isNull(pageWrap.getModel().getUserId()),
+                        " select 1 from meeting_user_rel u where a.id = u.OBJ_ID and  u.USER_ID = '" + pageWrap.getModel().getUserId() + "' and u.ISDELETED = 0 and OBJ_TYPE = 1  ")
+                .eq(pageWrap.getModel().getQueryType().equals(MeetConstants.TWO) && !Objects.isNull(pageWrap.getModel().getUserId()), "a.CREATOR", pageWrap.getModel().getUserId())
+                .like(StringUtils.isNotBlank(pageWrap.getModel().getQueryDate()), "a.START_TIME", pageWrap.getModel().getQueryDate())
+                .eq(!Objects.isNull(pageWrap.getModel().getRoomsId()), "b.id", pageWrap.getModel().getRoomsId())
+                .apply(!Objects.isNull(pageWrap.getModel().getStatus()) && pageWrap.getModel().getStatus().equals(MeetConstants.ONE), " now() < a.END_TIME and a.STATUS = 0   ")
+                .and(!Objects.isNull(pageWrap.getModel().getStatus()) && pageWrap.getModel().getStatus().equals(MeetConstants.TWO),
+                        j -> j.apply("now() >= a.END_TIME ").or()
+                                .eq(" a.STATUS", MeetConstants.ONE))
+                .eq("b.ISDELETED",MeetConstants.ZERO)
+                .eq("b.STATUS",MeetConstants.ZERO)
+                .eq("a.ISDELETED",MeetConstants.ZERO)
+                .apply(Objects.nonNull(pageWrap.getModel().getMeetingStatus())
+                        &&Constants.equalsInteger(pageWrap.getModel().getMeetingStatus(),Constants.ONE),
+                        " now() > a.START_TIME and a.status = 0 "
+                )
+                .apply(Objects.nonNull(pageWrap.getModel().getMeetingStatus())
+                                &&Constants.equalsInteger(pageWrap.getModel().getMeetingStatus(),Constants.TWO),
+                        " now() >= a.START_TIME and a.END_TIME >= now() "
+                )
+                .apply(Objects.nonNull(pageWrap.getModel().getMeetingStatus())
+                                &&Constants.equalsInteger(pageWrap.getModel().getMeetingStatus(),Constants.THREE),
+                        " now() > a.END_TIME or a.status  = 2 "
+                )
+                .apply(Objects.nonNull(pageWrap.getModel().getMeetingStatus())
+                                &&Constants.equalsInteger(pageWrap.getModel().getMeetingStatus(),Constants.FOUR),
+                        " now() > a.START_TIME  and   SUBDATE(NOW(), INTERVAL 120 MINUTE) > a.START_TIME "
+                )
+                .apply(Objects.nonNull(pageWrap.getModel().getMeetingStatus())
+                                &&Constants.equalsInteger(pageWrap.getModel().getMeetingStatus(),Constants.FIVE),
+                        " a.STATUS = 1  "
+                )
+//                        .orderByDesc(!Objects.isNull(pageWrap.getModel().getStatus())&&pageWrap.getModel().getStatus().equals(MeetConstants.TWO),"a.START_TIME")
+//                        .orderByAsc(Objects.isNull(pageWrap.getModel().getStatus())||pageWrap.getModel().getStatus().equals(MeetConstants.ONE),"a.START_TIME")
+                .orderByDesc( Constants.equalsInteger(pageWrap.getModel().getQueryType(),MeetConstants.TWO),"a.CREATE_DATE")
+                .orderByAsc(Constants.equalsInteger(pageWrap.getModel().getQueryType(),MeetConstants.ONE),"a.START_TIME");
+
+        IPage<MeetingListResponse> page = bookingsMapper.myMeetingPage(pageWrap.toPage(), queryWrapper);
         String path = systemDictDataBiz.queryByCode(MeetConstants.FTP, MeetConstants.FTP_RESOURCE_PATH).getCode() + systemDictDataBiz.queryByCode(MeetConstants.FTP, MeetConstants.PROJECTS).getCode();
         page.getRecords().forEach(i -> {
             i.setPrefixUrl(path);
             if(i.getMeetingStatus().equals(Constants.ZERO)){
-                if(i.getStatus()==Constants.ONE){
-                    i.setMeetingStatus(5);
-                }else{
-                    //寮�濮嬪墠5鍒嗛挓 澶т簬褰撳墠鏃堕棿 鍒欐樉绀哄嵆灏嗗紑濮�
-                    if(DateUtil.afterMinutesDate(i.getStartTime(),-5).getTime()>System.currentTimeMillis()){
+                if(i.getMeetingStatus()==Constants.ONE){
+                    //寮�濮嬪墠120鍒嗛挓 澶т簬褰撳墠鏃堕棿 鍒欐樉绀哄嵆灏嗗紑濮�
+                    if(DateUtil.afterMinutesDate(i.getStartTime(),-120).getTime()>System.currentTimeMillis()){
                         i.setMeetingStatus(4);
                     }
                 }
-
             }
 
         });
@@ -934,18 +965,15 @@
 
     /**
      * 浼氳棰勭害璁板綍鍙栨秷
-     *
-     * @param id
-     * @param userId
      */
     @Override
     @Transactional(rollbackFor = {Exception.class,BusinessException.class})
-    public void reservationCancel(Integer id, Integer userId) {
-        Bookings bookings = bookingsMapper.selectById(id);
+    public void reservationCancel(BusinessOverDTO businessOverDTO) {
+        Bookings bookings = bookingsMapper.selectById(businessOverDTO.getId());
         if (Objects.isNull(bookings)) {
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "鏈煡璇㈠埌棰勭害璁板綍");
         }
-        if (!bookings.getCreator().equals(userId)) {
+        if (!bookings.getCreator().equals(businessOverDTO.getUserId())) {
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "闈炰綘鐨勯绾﹁褰�,鏃犳硶杩涜鍙栨秷");
         }
         if (System.currentTimeMillis() > bookings.getStartTime().getTime()) {
@@ -955,10 +983,11 @@
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鏈鎿嶄綔澶辫触,棰勭害鐘舵�佸凡娴佽浆");
         }
         bookings.setCancelTime(new Date());
-        bookings.setCancelUser(userId);
+        bookings.setCancelUser(businessOverDTO.getUserId());
+        bookings.setCancelInfo(businessOverDTO.getBusinessRemark());
         bookings.setStatus(MeetConstants.ONE);
         bookings.setEditDate(new Date());
-        bookings.setEditor(userId);
+        bookings.setEditor(businessOverDTO.getUserId());
         bookingsMapper.updateById(bookings);
         //鍙栨秷浼氳 鍙戦�佸彇娑堥�氱煡
         this.sendNotice(bookings, 3);
@@ -966,6 +995,63 @@
         sendWxMessage.bookingsCancel(systemUserMapper.selectById(bookings.getCreator()), bookings, roomsMapper.selectById(bookings.getRoomId()));
     }
 
+
+    @Override
+    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+    public void reservationOver(BusinessOverDTO businessOverDTO) {
+        if(Objects.isNull(businessOverDTO)
+            || Objects.isNull(businessOverDTO.getUserId())
+            || Objects.isNull(businessOverDTO.getId())
+        ){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        Bookings bookings = bookingsMapper.selectById(businessOverDTO.getId());
+        if (Objects.isNull(bookings)) {
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "鏈煡璇㈠埌棰勭害璁板綍");
+        }
+        Long userRelList = userRelMapper.selectCount(new QueryWrapper<UserRel>().lambda()
+                .eq(UserRel::getIsdeleted,Constants.ZERO)
+                .eq(UserRel::getObjId,bookings.getRoomId())
+                .eq(UserRel::getObjType,Constants.ONE)
+                .eq(UserRel::getUserId,businessOverDTO.getUserId()));
+
+        if (!bookings.getCreator().equals(businessOverDTO.getUserId()) && userRelList <= 0) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "闈炰綘鐨勯绾﹁褰�,鏃犳硶杩涜璇ユ搷浣�");
+        }
+        if (System.currentTimeMillis() < bookings.getStartTime().getTime()) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "浼氳鏈紑濮�,鏃犳硶杩涜缁撴潫锛屽闇�璇ユ搷浣滆浣跨敤鍙栨秷鍔熻兘");
+        }
+        if (System.currentTimeMillis() > bookings.getEndTime().getTime()) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "浼氳宸茬粨鏉燂紝鏃犳硶杩涜璇ユ搷浣�");
+        }
+        if(!bookings.getStatus().equals(MeetConstants.ZERO)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鏈鎿嶄綔澶辫触,浼氳鐘舵�佸凡娴佽浆");
+        }
+        bookings.setDoneDate(new Date());
+        bookings.setDoneUserId(businessOverDTO.getUserId());
+        bookings.setStatus(MeetConstants.TWO);
+        bookings.setEditDate(new Date());
+        bookings.setEditor(businessOverDTO.getUserId());
+        bookingsMapper.updateById(bookings);
+
+        //鏌ヨ鎵�鏈夌殑棰勭害鏃堕棿
+        List<BookingTime> bookingTimeList = bookingTimeJoinMapper.selectJoinList(BookingTime.class,
+                new MPJLambdaWrapper<BookingTime>()
+                        .selectAll(BookingTime.class)
+                        .selectAs(RoomTime::getEndTime,BookingTime::getEndTime)
+                        .leftJoin(RoomTime.class,RoomTime::getId,BookingTime::getTimeId)
+                        .eq(BookingTime::getBookingId,bookings.getId()));
+        //鑾峰彇褰撳ぉ  鍙湁褰撳ぉ鏃ユ湡鍐呭彲浠ュ鐞�
+        String today = DateUtil.dateToString(new Date(),"yyyy-mm-dd");
+        //寰幆鏍囪鏁版嵁涓哄凡鍒犻櫎 涓嶅啀鍗犵敤
+        for (BookingTime bookingTime:bookingTimeList) {
+            if(DateUtil.getDateFromString(today + " " + bookingTime.getEndTime() +":00").getTime()>System.currentTimeMillis()){
+                bookingTime.setIsdeleted(Constants.ZERO);
+                bookingTimeJoinMapper.updateById(bookingTime);
+            }
+        }
+
+    }
 
     /**
      * 瀹氭椂鍙戦�佷細璁� 鍗冲皢寮�濮嬮�氱煡
@@ -1026,7 +1112,7 @@
         Notices notices = new Notices(noticeObjectType,bookings.getId(),noticeObjectType.getInfo(),bookings.getCreator(), Constants.ZERO);
         noticeList.add(notices);
         if(noticeList.size()>0){
-            noticesMapper.insertBatchSomeColumn(noticeList);
+            noticesMapper.insert(noticeList);
         }
     }
 
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/ProjectsServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/ProjectsServiceImpl.java
index 16806fc..dd087e4 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/ProjectsServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/ProjectsServiceImpl.java
@@ -3,6 +3,7 @@
 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.core.wx.MeetConstants;
 import com.doumee.dao.business.ProjectsMapper;
@@ -39,6 +40,7 @@
     public Integer create(Projects projects) {
 
         Projects insert = new Projects();
+        insert.setIsdeleted(Constants.ZERO);
         insert.setCreator(projects.getCreator());
         insert.setEditor(projects.getEditor());
         insert.setName(projects.getName());
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/RoomTimeServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/RoomTimeServiceImpl.java
index f4b43de..7a608f2 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/RoomTimeServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/RoomTimeServiceImpl.java
@@ -127,6 +127,7 @@
         bookquery.selectAs(BookingTime::getTimeId, Bookings::getRoomTimeId);
         bookquery.selectAs(BookingTime::getId, Bookings::getBookingTimeId);
         bookquery.eq(Bookings::getIsdeleted, Constants.ZERO);
+        bookquery.eq(BookingTime::getIsdeleted, Constants.ZERO);
         bookquery.eq(Bookings::getRoomId, roomTime.getRoomId());
         bookquery.eq(Bookings::getStatus,Constants.ZERO);
         bookquery.apply("DATE_FORMAT(t.START_TIME,'%Y-%m-%d') = DATE_FORMAT('" + DateUtil.dateToString(roomTime.getYudingDate(), "yyyy-MM-dd") + "','%Y-%m-%d') ");
diff --git a/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java b/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
index 73b0de7..15152c8 100644
--- a/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
+++ b/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
@@ -14,7 +14,6 @@
 import com.doumee.service.system.SystemLoginService;
 import com.doumee.service.system.SystemUserService;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.server.reactive.ServerHttpRequest;
diff --git a/server/system_gateway/src/main/java/com/doumee/config/jwt/JwtProperties.java b/server/system_service/src/main/java/com/doumee/config/jwt/JwtProperties.java
similarity index 100%
rename from server/system_gateway/src/main/java/com/doumee/config/jwt/JwtProperties.java
rename to server/system_service/src/main/java/com/doumee/config/jwt/JwtProperties.java
diff --git a/server/system_gateway/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java b/server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
similarity index 100%
rename from server/system_gateway/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
rename to server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
diff --git a/server/system_service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java b/server/system_service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java
deleted file mode 100644
index 1e97d85..0000000
--- a/server/system_service/src/main/java/com/doumee/config/mybatis/EasySqlInjector.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.doumee.config.mybatis;
-
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.core.injector.AbstractMethod;
-import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
-import com.baomidou.mybatisplus.core.metadata.TableInfo;
-import com.baomidou.mybatisplus.extension.injector.methods.InsertBatchSomeColumn;
-import com.github.yulichang.injector.MPJSqlInjector;
-
-import java.util.List;
-
-public class EasySqlInjector extends MPJSqlInjector {
-    @Override
-    public List<AbstractMethod> getMethodList(Class<?> mapperClass ) {
-        // 娉ㄦ剰锛氭SQL娉ㄥ叆鍣ㄧ户鎵夸簡DefaultSqlInjector(榛樿娉ㄥ叆鍣�)锛岃皟鐢ㄤ簡DefaultSqlInjector鐨刧etMethodList鏂规硶锛屼繚鐣欎簡mybatis-plus鐨勮嚜甯︽柟娉�
-        List<AbstractMethod> methodList = super.getMethodList(mapperClass);
-        methodList.add(new InsertBatchSomeColumn(i -> i.getFieldFill() != FieldFill.UPDATE));
-        return methodList;
-    }
-
-}
\ No newline at end of file
diff --git a/server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisPlusConfig.java b/server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisPlusConfig.java
index e91bb1e..ace8365 100644
--- a/server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisPlusConfig.java
+++ b/server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisPlusConfig.java
@@ -20,9 +20,5 @@
         interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
         return interceptor;
     }
-    @Bean
-    public EasySqlInjector sqlInjector() {
-        return new EasySqlInjector();
-    }
 
 }
diff --git a/server/system_service/src/main/java/com/doumee/core/constants/ResponseStatus.java b/server/system_service/src/main/java/com/doumee/core/constants/ResponseStatus.java
index b686a17..4796b3f 100644
--- a/server/system_service/src/main/java/com/doumee/core/constants/ResponseStatus.java
+++ b/server/system_service/src/main/java/com/doumee/core/constants/ResponseStatus.java
@@ -27,6 +27,7 @@
     NOT_ALLOWED(5110, "涓嶅厑璁哥殑鎿嶄綔"),
     TOKEN_EXCEED_TIME(5111, "TOKEN杩囨湡"),
     NO_LOGIN(5112, "鏈櫥褰�"),
+    NO_ALLOW_LOGIN(5113, "璇ョ被鐢ㄦ埛涓嶅厑璁哥櫥褰�"),
     ;
 
     private int code;
diff --git a/server/system_service/src/main/java/com/doumee/core/model/LoginUserInfo.java b/server/system_service/src/main/java/com/doumee/core/model/LoginUserInfo.java
index aeb2b8b..6d84788 100644
--- a/server/system_service/src/main/java/com/doumee/core/model/LoginUserInfo.java
+++ b/server/system_service/src/main/java/com/doumee/core/model/LoginUserInfo.java
@@ -4,6 +4,7 @@
 import com.doumee.dao.system.model.SystemPermission;
 import com.doumee.dao.system.model.SystemRole;
 import com.doumee.dao.system.model.SystemUser;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
 
@@ -38,6 +39,8 @@
     private String sessionId;
 
     private Date loginDate;
+    @ApiModelProperty(value = "璐︽埛鏉ユ簮锛�0=鍚庡彴娣诲姞 锛� 2=鍙告満娉ㄥ唽")
+    private Integer source;
 
     private List<String> roles;
 
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 6ba808c..42bbf6a 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
@@ -94,6 +94,7 @@
     public static final String ERP ="ERP" ;
     public static final Integer THREE =3 ;
     public static final Integer FOUR =4 ;
+    public static final Integer FIVE =5 ;
     public static final String ORG_USER_ORIGIN = "ORG_USER_ORIGIN";
     public static final String VIRTUAL_CARD_INDEX = "02098469790";
     public static final String RETRY_CONNECT_NUM ="RETRY_CONNECT_NUM" ;
@@ -404,7 +405,7 @@
 
 
 public interface  memberType{
-    int lw_visitor = 0;//鍔冲姟璁垮
+    int driver = 0;//鍙告満浜哄憳
     int visitor = 1;//鏅�氳瀹�
     int internal = 2;//鍐呴儴浜哄憳
 }
diff --git a/server/system_service/src/main/java/com/doumee/dao/business/dao/CompanyMapper.java b/server/system_service/src/main/java/com/doumee/dao/business/dao/CompanyMapper.java
index 9765f4d..bbf64fd 100644
--- a/server/system_service/src/main/java/com/doumee/dao/business/dao/CompanyMapper.java
+++ b/server/system_service/src/main/java/com/doumee/dao/business/dao/CompanyMapper.java
@@ -11,5 +11,4 @@
  */
 public interface CompanyMapper extends BaseMapper<Company> {
 
-    void insertBatchSomeColumn(List<Company> addList);
 }
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java b/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java
index 6b5e635..1b1d62b 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/MultifileMapper.java
@@ -11,5 +11,4 @@
  */
 public interface MultifileMapper extends BaseMapper<Multifile> {
 
-    void insertBatchSomeColumn(List<Multifile> fileList);
 }
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/SystemUserMapper.java b/server/system_service/src/main/java/com/doumee/dao/system/SystemUserMapper.java
index f0ba404..d4cec01 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/SystemUserMapper.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/SystemUserMapper.java
@@ -26,7 +26,6 @@
     List<SystemUserListVO> selectManageList(@Param("dto") QuerySystemUserDTO dto, @Param("orderByClause") String orderByClause);
 
 
-    void insertBatchSomeColumn(List<SystemUser> userList);
 
 
 
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/dto/LoginAuthDTO.java b/server/system_service/src/main/java/com/doumee/dao/system/dto/LoginAuthDTO.java
new file mode 100644
index 0000000..e328a6c
--- /dev/null
+++ b/server/system_service/src/main/java/com/doumee/dao/system/dto/LoginAuthDTO.java
@@ -0,0 +1,24 @@
+package com.doumee.dao.system.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * @author Eva.Caesar Liu
+ * @date 2023/05/04 18:21
+ */
+@Data
+@ApiModel("寰俊鐧诲綍鎺堟潈鍙傛暟")
+public class LoginAuthDTO implements Serializable {
+
+    @ApiModelProperty(value = "缂栫爜")
+    private String code;
+
+    @ApiModelProperty(value = "绫诲瀷")
+    private Integer soucre;
+
+}
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/dto/LoginByOpenidDTO.java b/server/system_service/src/main/java/com/doumee/dao/system/dto/LoginByOpenidDTO.java
new file mode 100644
index 0000000..378715b
--- /dev/null
+++ b/server/system_service/src/main/java/com/doumee/dao/system/dto/LoginByOpenidDTO.java
@@ -0,0 +1,20 @@
+package com.doumee.dao.system.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * @author Eva.Caesar Liu
+ * @date 2023/05/04 18:21
+ */
+@Data
+@ApiModel("鍏紬鍙风櫥褰曞弬鏁�")
+public class LoginByOpenidDTO implements Serializable {
+
+    @ApiModelProperty(value = "userId" , hidden = true)
+    private Integer userId;
+}
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java b/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java
index d08a08c..7e7ae5b 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java
@@ -1,8 +1,10 @@
 package com.doumee.dao.system.dto;
 
 import com.doumee.core.annotation.excel.ExcelColumn;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import java.util.Date;
 
@@ -22,9 +24,13 @@
     private Integer queryType;
 
     @ApiModelProperty(value = "寮�濮嬫棩鏈�")
+    @JsonFormat(pattern="yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date startDate;
 
     @ApiModelProperty(value = "缁撴潫鏃ユ湡")
+    @JsonFormat(pattern="yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date endDate;
 
     @ApiModelProperty(value = "0璁垮瀹℃壒 1璁垮鎶ュ 2鐢ㄨ溅瀹℃壒 3闅愭偅澶勭悊 4鐗╂祦杞﹀鎵� 5绯荤粺绯荤粺")
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/join/NoticesJoinMapper.java b/server/system_service/src/main/java/com/doumee/dao/system/join/NoticesJoinMapper.java
index 3588b69..dd4650f 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/join/NoticesJoinMapper.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/join/NoticesJoinMapper.java
@@ -11,5 +11,4 @@
  */
 public interface NoticesJoinMapper extends MPJJoinMapper<Notices> {
 
-    void insertBatchSomeColumn(List<Notices> noticeList);
 }
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java
index 09c5017..196e1e6 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java
@@ -104,7 +104,9 @@
     private Integer status;
     @ApiModelProperty(value = "浼佷笟缂栫爜锛堝叧鑱攃ompany锛�")
     private Integer companyId;
-    @ApiModelProperty(value = "0 鍚敤 1 绂佺敤")
+    @ApiModelProperty(value = "璐︽埛鏉ユ簮锛�0=鍚庡彴娣诲姞 锛� 2=鍙告満娉ㄥ唽")
+    private Integer source;
+    @ApiModelProperty(value = "鍏徃鍚嶇О")
     @TableField(exist = false)
     private String companyName;
     @ApiModelProperty(value = "鏁版嵁鏉冮檺鍐呴儴闂ㄧ紪鐮侀泦鍚�")
diff --git a/server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java b/server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java
index a413735..15316fd 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java
@@ -1,6 +1,7 @@
 package com.doumee.service.system;
 
 import com.doumee.core.model.LoginUserInfo;
+import com.doumee.dao.system.dto.LoginByOpenidDTO;
 import com.doumee.dao.system.dto.LoginDTO;
 import org.springframework.http.server.reactive.ServerHttpRequest;
 
@@ -19,5 +20,14 @@
      * @date 2023/03/21 14:49
      */
     String loginByPassword (LoginDTO dto, HttpServletRequest request);
+
     LoginUserInfo loginByPasswordNew (LoginDTO dto, ServerHttpRequest request);
+
+    /**
+     * 鏍规嵁 openId鐧诲綍
+     * @param userId
+     * @param request
+     * @return
+     */
+    String loginByUserId(Integer userId);
 }
diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
index e54e578..452cc27 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -1,15 +1,19 @@
 package com.doumee.service.system.impl;
 
+import com.doumee.config.jwt.JwtTokenUtil;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.Utils;
 import com.doumee.dao.business.dao.CompanyMapper;
 import com.doumee.dao.business.model.Company;
+import com.doumee.dao.system.dto.LoginByOpenidDTO;
 import com.doumee.dao.system.dto.LoginDTO;
 import com.doumee.dao.system.model.*;
 import com.doumee.service.common.CaptchaService;
 import com.doumee.service.system.*;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
@@ -22,6 +26,7 @@
 import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.Date;
 import java.util.List;
@@ -58,6 +63,11 @@
 
     @Autowired
     private CompanyMapper companyMapper;
+
+    @Resource
+    private JwtTokenUtil jwtTokenUtil;
+
+
 
     @Override
     public String loginByPassword(LoginDTO dto, HttpServletRequest request) {
@@ -127,7 +137,6 @@
                 throw new BusinessException(ResponseStatus.ACCOUNT_INCORRECT.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佷笉姝g‘锛�");
             }
         }
-
         // 鏍规嵁鐢ㄦ埛鍚嶆煡璇㈢敤鎴峰璞�
         SystemUser queryDto = new SystemUser();
         queryDto.setUsername(dto.getUsername());
@@ -135,6 +144,9 @@
         SystemUser user = systemUserService.findOne(queryDto);
         if (user == null) {
             throw new BusinessException(ResponseStatus.ACCOUNT_INCORRECT);
+        }
+        if(!Constants.equalsInteger(user.getSource(),Constants.ZERO)){
+            throw new BusinessException(ResponseStatus.NO_ALLOW_LOGIN);
         }
         String pwd = Utils.Secure.encryptPassword(new String(dto.getPassword()), user.getSalt());
         // 姣旇緝瀵嗙爜
@@ -158,4 +170,41 @@
         return  userInfo;
     }
 
+
+    /**
+     * 鍐呴儴浜哄憳 涓� 鍙告満 鏍规嵁code鏌ヨopenId鍚庤繘琛岀櫥褰曟帴鍙�
+     * @return
+     */
+    @Override
+    public String loginByUserId(Integer userId) {
+        SystemLoginLog loginLog = new SystemLoginLog();
+        loginLog.setLoginTime(new Date());
+        loginLog.setSystemVersion(systemVersion);
+        loginLog.setLocation(Utils.Location.getLocationString(loginLog.getIp()));
+        loginLog.setServerIp(Utils.Server.getIP());
+
+        // 鏍规嵁鐢ㄦ埛鍚嶆煡璇㈢敤鎴峰璞�
+        SystemUser user = systemUserService.findById(userId);
+        if (user == null) {
+            throw new BusinessException(ResponseStatus.ACCOUNT_INCORRECT);
+        }
+        Company company = new Company();
+        if(Objects.nonNull(user.getCompanyId())){
+            company = companyMapper.selectById(user.getCompanyId());
+        }
+        // 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
+        List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
+        List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId());
+
+        SystemRole rt = new SystemRole();
+        rt.setDeleted(Boolean.FALSE);
+        //鏁版嵁閮ㄩ棬鏉冮檺闆嗗悎
+        user.setCompanyIdList(systemDataPermissionService.selectHighRole(new SystemDataPermission(),rt,user));
+
+        LoginUserInfo userInfo = LoginUserInfo.from(user, roles, permissions,company,null);
+        String token = jwtTokenUtil.generateToken(userInfo);
+
+        return  token;
+    }
+
 }
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java
index ff53508..8e69cbf 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java
@@ -97,7 +97,7 @@
     @PostMapping("/page")
     @CloudRequiredPermission("business:visits:query")
     public ApiResponse<PageData<Visits>> findPage (@RequestBody PageWrap<Visits> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
-        pageWrap.getModel().setMemberId(getLoginUser(token).getMemberId());
+        pageWrap.getModel().setReceptMemberId(getLoginUser(token).getMemberId());
         return ApiResponse.success(visitsService.findPage(pageWrap));
     }
 
@@ -124,6 +124,13 @@
         return ApiResponse.success(visitsService.retentionPage(pageWrap));
     }
 
+    @ApiOperation(value = "PC绔瀹㈣褰曟彁浜�", notes = "璁垮鎻愪氦")
+    @PostMapping("/createFk")
+    public ApiResponse createFk(@RequestBody Visits visits) {
+        visits.setSourceType(Constants.ZERO);
+        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false,Constants.ONE));
+    }
+
 
 
     @ApiOperation(value = "璁垮鎶ュ", notes = "璁垮鎶ュ")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ApiController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ApiController.java
deleted file mode 100644
index 5b84557..0000000
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ApiController.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.doumee.cloud.web;
-
-import com.doumee.config.Jwt.JwtTokenUtil;
-import com.doumee.dao.business.model.Member;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-
-import javax.servlet.http.HttpServletRequest;
-
-/**
- * Controller鍩虹被
- * @author Eva.Caesar Liu
- * @date 2022/03/15 09:54
- */
-@Slf4j
-public class ApiController {
-
-
-    /**
-     * 寰楀埌request瀵硅薄
-     *
-     * @return
-     */
-    public HttpServletRequest getRequest() {
-        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
-        return request;
-    }
-
-    /**
-     * 鑾峰彇鐢ㄦ埛ID
-     *
-     * @return
-     */
-    protected Integer getMemberId() {
-        Object obj = this.getRequest().getAttribute(JwtTokenUtil.UserId_Name);
-        return obj != null ? Integer.valueOf( obj.toString() ): null;
-    }
-    /**
-     * 鑾峰彇鐢ㄦ埛
-     *
-     * @return
-     */
-    protected Member getMember() {
-        Member member = (Member) this.getRequest().getAttribute(JwtTokenUtil.MEMBER);
-        return member != null ? member : null;
-    }
-}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
index e0e31ec..45e0748 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
@@ -1,7 +1,6 @@
 package com.doumee.cloud.web;
 
 import com.doumee.api.BaseController;
-import com.doumee.cloud.web.ApiController;
 import com.doumee.config.annotation.LoginNoRequired;
 import com.doumee.core.annotation.pr.PreventRepeat;
 import com.doumee.core.annotation.trace.Trace;
@@ -95,7 +94,7 @@
     @PostMapping("/createVisit")
     public ApiResponse createVisit(@RequestBody Visits visits,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
         visits.setCreateMemberId(getLoginUser(token).getMemberId());
-        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false));
+        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false,Constants.ZERO));
     }
 
     @ApiOperation(value = "瀹℃壒娴佽褰曞鎵�", notes = "鍐呴儴浜哄憳")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java
index c7ffcb1..d258b5e 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/ProblemWebController.java
@@ -1,6 +1,5 @@
 package com.doumee.cloud.web;
 
-import com.doumee.cloud.web.ApiController;
 import com.doumee.config.annotation.LoginNoRequired;
 import com.doumee.core.annotation.trace.Trace;
 import com.doumee.core.model.ApiResponse;
@@ -33,7 +32,7 @@
 @LoginNoRequired
 @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/problem")
 @Slf4j
-public class ProblemWebController extends ApiController {
+public class ProblemWebController {
 
     @Autowired
     private ProblemsService problemsService;
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
index 26c00bd..2ac7672 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
@@ -29,9 +29,11 @@
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.server.ServerWebExchange;
 
 import javax.validation.Valid;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * Created by IntelliJ IDEA.
@@ -60,10 +62,11 @@
     @ApiOperation(value = "璁垮寰俊鎺堟潈", notes = "璁垮寰俊鎺堟潈鑾峰彇openId")
     @GetMapping("/wxAuthorize")
     @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "String", name = "code", value = "鎺堟潈鐮�", required = true)
+            @ApiImplicitParam(paramType = "query", dataType = "String", name = "code", value = "鎺堟潈鐮�", required = true),
+            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "source", value = "鏉ユ簮:0=鍙告満锛�1=璁垮锛�2=鍐呴儴鍛樺伐", required = true)
     })
-    public ApiResponse<WxAuthorizeVO> wxAuthorize(@RequestParam String code) {
-        WxAuthorizeVO wxAuthorizeVO =  memberService.wxAuthorize(code);
+    public ApiResponse<WxAuthorizeVO> wxAuthorize(@RequestParam String code,@RequestParam Integer source) {
+        WxAuthorizeVO wxAuthorizeVO =  memberService.wxAuthorize(code,source);
         return ApiResponse.success("鏌ヨ鎴愬姛",wxAuthorizeVO);
     }
 
@@ -79,7 +82,7 @@
     @PostMapping("/createFk")
     public ApiResponse createFk(@RequestBody Visits visits) {
         visits.setSourceType(Constants.ZERO);
-        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false));
+        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.createFk(visits,false,Constants.ZERO));
     }
 
 
@@ -94,7 +97,8 @@
     @ApiOperation(value = "璁垮璁板綍璇︽儏", notes = "璁垮璁板綍璇︽儏")
     @GetMapping("/detail")
     public ApiResponse<VisitDetailVO> detail(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
-        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.getVisitDetail(id,getLoginUser(token).getMemberId()));
+        LoginUserInfo loginUserInfo = getLoginUser(token);
+        return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.getVisitDetail(id, Objects.isNull(loginUserInfo)?null:loginUserInfo.getMemberId()));
     }
 
 
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/JwtPayLoad.java b/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/JwtPayLoad.java
deleted file mode 100644
index 93c6ad9..0000000
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/JwtPayLoad.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.doumee.config.Jwt;
-
-import lombok.Data;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * jwt鐨勭浜岄儴鍒�
- *
- * @author fengshuonan
- * @Date 2019/7/20 20:45
- */
-@Data
-public class JwtPayLoad {
-
-    /**
-     * 鐢ㄦ埛id
-     */
-    private String memberId;
-    private long expire;
-
-
-    public JwtPayLoad() {
-    }
-
-    public JwtPayLoad(String memberId) {
-        this.memberId = memberId;
-    }
-
-    /**
-     * payload杞寲涓簃ap褰㈠紡
-     *
-     * @author fengshuonan
-     * @Date 2019/7/20 20:50
-     */
-    public Map<String, Object> toMap() {
-        HashMap<String, Object> map = new HashMap<>();
-        map.put("memberId", this.memberId);
-        return map;
-    }
-
-    /**
-     * payload杞寲涓簃ap褰㈠紡
-     *
-     * @author fengshuonan
-     * @Date 2019/7/20 20:50
-     */
-    public static JwtPayLoad toBean(Map<String, Object> map) {
-        if (map == null || map.size() == 0) {
-            return new JwtPayLoad();
-        } else {
-            JwtPayLoad jwtPayLoad = new JwtPayLoad();
-            jwtPayLoad.setMemberId((String) map.get("memberId"));
-
-            return jwtPayLoad;
-        }
-    }
-
-
-
-}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/JwtTokenUtil.java b/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/JwtTokenUtil.java
deleted file mode 100644
index abf47d7..0000000
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/JwtTokenUtil.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/**
- * Copyright 2018-2020 stylefeng & fengshuonan (sn93@qq.com)
- * <p>
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.doumee.config.Jwt;
-
-
-import io.jsonwebtoken.*;
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.Date;
-import java.util.Map;
-
-/**
- * <p>鍚庡彴绯荤粺jwt token宸ュ叿绫�</p>
- * <pre>
- *     jwt鐨刢laim閲屼竴鑸寘鍚互涓嬪嚑绉嶆暟鎹�:
- *         1. iss -- token鐨勫彂琛岃��
- *         2. sub -- 璇WT鎵�闈㈠悜鐨勭敤鎴�
- *         3. aud -- 鎺ユ敹璇WT鐨勪竴鏂�
- *         4. exp -- token鐨勫け鏁堟椂闂�
- *         5. nbf -- 鍦ㄦ鏃堕棿娈典箣鍓�,涓嶄細琚鐞�
- *         6. iat -- jwt鍙戝竷鏃堕棿
- *         7. jti -- jwt鍞竴鏍囪瘑,闃叉閲嶅浣跨敤
- * </pre>
- *
- * @author fengshuonan
- * @Date 2017/8/25 10:59
- */
-public class JwtTokenUtil {
-    //Header 鍚嶇О
-    public static final String HEADER_KEY = "token";
-    //鍙栧�煎悕绉�
-    public static final String UserId_Name = "AppUserId";
-    //鍙栧�煎悕绉�
-    public static final String MEMBER = "MEMBER";
-    //鍔犲瘑瀵嗛挜
-    private final static String jwtSecret = "MhAjU9poLf8ko54K25XBDtonaL33vtt1";
-    //杩囨湡鏃堕棿(s) 86400L=1澶� 604800L=7澶�
-    private static final long expire = 86400L;
-
-    /**
-     * 鐢熸垚token,鏍规嵁userId鍜岄粯璁よ繃鏈熸椂闂�
-     */
-    public static String generateToken(JwtPayLoad jwtPayLoad) {
-        Long expiredSeconds = getExpireSeconds();
-        final Date expirationDate = new Date(System.currentTimeMillis() + expiredSeconds * 1000);
-        return generateToken(jwtPayLoad.getMemberId(), expirationDate, jwtPayLoad.toMap());
-    }
-
-    /**
-     * 楠岃瘉token鏄惁澶辨晥
-     */
-    public static Boolean isTokenExpired(String token) {
-        try {
-            final Date expiration = getExpirationDateFromToken(token);
-            return expiration.before(new Date());
-        } catch (ExpiredJwtException expiredJwtException) {
-            return true;
-        }
-    }
-
-    /**
-     * 鐢熸垚token,鏍规嵁userId鍜岄粯璁よ繃鏈熸椂闂�
-     */
-    public static String generateTokenOld(JwtPayLoad jwtPayLoad) {
-        Long expiredSeconds = getExpireSeconds();
-        final Date expirationDate = new Date(System.currentTimeMillis() + expiredSeconds * 1000);
-        return generateToken(jwtPayLoad.getMemberId(), expirationDate, jwtPayLoad.toMap());
-    }
-
-    /**
-     * 鑾峰彇jwt鐨刾ayload閮ㄥ垎
-     */
-    public static JwtPayLoad getJwtPayLoad(String token) {
-        Claims claimFromToken = getClaimFromToken(token);
-        return JwtPayLoad.toBean(claimFromToken);
-    }
-
-    /**
-     * 瑙f瀽token鏄惁姝g‘(true-姝g‘, false-閿欒)
-     */
-    public static Boolean checkToken(String token) {
-        try {
-            String jwtSecret = getJwtSecret();
-            Jwts.parser().setSigningKey(jwtSecret).parseClaimsJws(token).getBody();
-            return true;
-        } catch (JwtException e) {
-            return false;
-        }
-    }
-
-    /**
-     * 楠岃瘉token鏄惁澶辨晥
-     */
-    public static Boolean isTokenExpiredOld(String token) {
-        try {
-            final Date expiration = getExpirationDateFromToken(token);
-            return expiration.before(new Date());
-        } catch (ExpiredJwtException expiredJwtException) {
-            return true;
-        }
-    }
-
-    // 浠巘oken涓幏鍙栫敤鎴稩D
-    public static String getUserId(String token){
-        return getClaimFromToken(token).getSubject();
-    }
-
-    /**
-     * 鑾峰彇jwt澶辨晥鏃堕棿
-     */
-    public static Date getExpirationDateFromToken(String token) {
-        return getClaimFromToken(token).getExpiration();
-    }
-
-    /**
-     * 鐢熸垚token,鏍规嵁userId鍜岃繃鏈熸椂闂�
-     */
-    public static String generateToken(String userId, Date exppiredDate, Map<String, Object> claims) {
-
-        final Date createdDate = new Date();
-        String secret = getJwtSecret();
-
-        if (claims == null) {
-            return Jwts.builder()
-                    .setSubject(userId.toString())
-                    .setIssuedAt(createdDate)
-                    .setExpiration(exppiredDate)
-                    .signWith(SignatureAlgorithm.HS512, secret)
-                    .compact();
-        } else {
-            return Jwts.builder()
-                    .setClaims(claims)
-                    .setSubject(userId.toString())
-                    .setIssuedAt(createdDate)
-                    .setExpiration(exppiredDate)
-                    .signWith(SignatureAlgorithm.HS512, secret)
-                    .compact();
-        }
-    }
-
-    /**
-     * 鑾峰彇jwt鐨刾ayload閮ㄥ垎
-     */
-    public static Claims getClaimFromToken(String token) {
-        if (StringUtils.isBlank(token)) {
-            throw new IllegalArgumentException("token鍙傛暟涓虹┖锛�");
-        }
-        String jwtSecret = getJwtSecret();
-        return Jwts.parser().setSigningKey(jwtSecret).parseClaimsJws(token).getBody();
-    }
-
-    /**
-     * 鑾峰彇绯荤粺鍦板瘑閽�
-     */
-    private static String getJwtSecret() {
-        return jwtSecret;
-    }
-
-    /**
-     * 鑾峰彇绯荤粺鍦板瘑閽ヨ繃鏈熸椂闂达紙鍗曚綅锛氱锛�
-     */
-    private static Long getExpireSeconds() {
-        return expire;
-    }
-}
\ No newline at end of file
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java b/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java
deleted file mode 100644
index ae63836..0000000
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/config/Jwt/WebMvcConfig.java
+++ /dev/null
@@ -1,126 +0,0 @@
-package com.doumee.config.Jwt;
-
-import com.doumee.biz.system.SystemDictDataBiz;
-import com.doumee.config.annotation.ErpLoginRequired;
-import com.doumee.config.annotation.LoginRequired;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.utils.Constants;
-import com.doumee.core.utils.redis.RedisUtil;
-import com.doumee.dao.business.model.Member;
-import io.jsonwebtoken.JwtException;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.jdbc.core.BeanPropertyRowMapper;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.web.client.RestTemplate;
-import org.springframework.web.method.HandlerMethod;
-import org.springframework.web.servlet.HandlerInterceptor;
-import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.util.Objects;
-
-@Configuration
-public class WebMvcConfig implements WebMvcConfigurer {
-
-
-    @Autowired
-    private JdbcTemplate dao;
-
-    @Autowired
-    private SystemDictDataBiz systemDictDataBiz;
-
-    @Autowired
-    private RedisTemplate<String,Object> redisTemplate;
-
-    /**
-     * 娣诲姞鎷︽埅鍣�
-     */
-    @Override
-    public void addInterceptors(InterceptorRegistry registry) {
-        //API鎺ュ彛JwtToken鎷︽埅鍣�
-        HandlerInterceptor TokenInterceptor = new HandlerInterceptor() {
-            @Override
-            public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-                // 濡傛灉涓嶆槸鏄犲皠鍒版柟娉曠洿鎺ラ�氳繃
-                if (!(handler instanceof HandlerMethod)) {
-                    return true;
-                }
-                HandlerMethod handlerMethod = (HandlerMethod) handler;
-
-                Class<?> beanType = handlerMethod.getBeanType();
-
-//                Method method = handlerMethod.getMethod();
-
-                // 鏈� @LoginRequired 娉ㄨВ锛岄渶瑕佺櫥褰曡璇�
-                if (beanType.isAnnotationPresent(LoginRequired.class) || handlerMethod.hasMethodAnnotation(LoginRequired.class)) {
-                    //鑾峰彇token
-                    String token = request.getHeader(JwtTokenUtil.HEADER_KEY);  // 浠� http 璇锋眰澶翠腑鍙栧嚭 token
-                    if (StringUtils.isNotBlank(token)) {
-                        checkLogin(request,response);
-                    } else {
-                        throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鏈櫥褰�");
-                    }
-                } else if(beanType.isAnnotationPresent(ErpLoginRequired.class) || handlerMethod.hasMethodAnnotation(ErpLoginRequired.class)){
-                    try {
-                        //ERP 涓氬姟娉ㄨВ
-                        String token = request.getHeader(JwtTokenUtil.HEADER_KEY);
-                        String redisToken = RedisUtil.getObject(redisTemplate,Constants.RedisKeys.ERP_TOKEN,String.class);
-                        if(StringUtils.isBlank(redisToken)||!token.equals(redisToken)){
-                            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎺堟潈宸插け鏁�");
-                        }
-                        request.setAttribute(JwtTokenUtil.HEADER_KEY,token);
-                    } catch (IllegalArgumentException | JwtException e) {
-                        throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鎺堟潈宸插け鏁�");
-                    }
-//                    request.setAttribute("token", token);
-                }
-                return true;
-            }
-        };
-        registry.addInterceptor(TokenInterceptor).addPathPatterns("/web/**","/visitbiz/**");
-    }
-
-
-
-    public Boolean checkLogin(HttpServletRequest request, HttpServletResponse response){
-        String token = request.getHeader(JwtTokenUtil.HEADER_KEY);
-        try {
-            //鍒ゆ柇Token鏄惁瓒呮椂
-            boolean expiration = JwtTokenUtil.isTokenExpired(token);
-            if (expiration) {
-                throw new BusinessException(ResponseStatus.TOKEN_EXCEED_TIME.getCode(),"闀挎椂闂存湭鎿嶄綔,璇烽噸鏂扮櫥褰�");
-            }
-            //鑾峰彇璐﹀彿ID
-            String memberId = JwtTokenUtil.getJwtPayLoad(token).getMemberId();
-            Member member = dao.queryForObject(" select  *  from `member` where id  = ?  limit 1  ", new BeanPropertyRowMapper<>(Member.class),memberId );
-            if(Objects.isNull(member)){
-                throw new BusinessException(ResponseStatus.DATA_EMPTY);
-            }
-            if(member.getIsdeleted()== Constants.ONE){
-                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸插垹闄�,璇疯仈绯荤鐞嗗憳");
-            }
-            if(member.getStatus() != Constants.ZERO){
-                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸茬鐢�,璇疯仈绯荤鐞嗗憳");
-            }
-            request.setAttribute(JwtTokenUtil.UserId_Name, memberId);
-            request.setAttribute(JwtTokenUtil.MEMBER, member);
-            return true;
-        } catch (IllegalArgumentException | JwtException e) {
-            throw new BusinessException(ResponseStatus.NO_LOGIN.getCode(),"鏈櫥褰�");
-        }
-    }
-
-    @Bean
-    public RestTemplate getRestTemplate(){
-        return new RestTemplate();
-    }
-
-
-}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveMapper.java
index 4a829af..a2847db 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveMapper.java
@@ -12,7 +12,6 @@
  */
 public interface ApproveMapper extends BaseMapper<Approve> {
 
-    void insertBatchSomeColumn(List<Approve> list);
 
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java
index 0dfa3e2..f1b1bcc 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java
@@ -11,5 +11,4 @@
  */
 public interface ApproveParamMapper extends BaseMapper<ApproveParam> {
 
-    void insertBatchSomeColumn(List<ApproveParam> paramList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarEventMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarEventMapper.java
index f502dbe..42c0607 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarEventMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarEventMapper.java
@@ -11,5 +11,4 @@
  */
 public interface CarEventMapper extends BaseMapper<CarEvent> {
 
-    void insertBatchSomeColumn(List<CarEvent> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java
index 3c37d8a..aedf353 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/CarsMapper.java
@@ -11,5 +11,4 @@
  */
 public interface CarsMapper extends BaseMapper<Cars> {
 
-    void insertBatchSomeColumn(List<Cars> allHkList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceEventMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceEventMapper.java
index c1f1f90..1675b89 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceEventMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceEventMapper.java
@@ -11,5 +11,4 @@
  * @date 2023/11/30 15:33
  */
 public interface DeviceEventMapper extends BaseMapper<DeviceEvent> {
-    void insertBatchSomeColumn(List<DeviceEvent> addList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceMapper.java
index 1bb0a15..d01fd13 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceMapper.java
@@ -11,6 +11,4 @@
  */
 public interface DeviceMapper extends BaseMapper<Device> {
 
-    Integer insertBatchSomeColumn(Collection<Device> entityList);
-
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java
index 0f4f984..9231588 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java
@@ -11,5 +11,4 @@
  */
 public interface DeviceRoleMapper extends BaseMapper<DeviceRole> {
 
-    void insertBatchSomeColumn(List<DeviceRole> addList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/EmpowerMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/EmpowerMapper.java
index bea29ec..7e1b31c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/EmpowerMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/EmpowerMapper.java
@@ -11,5 +11,4 @@
  */
 public interface EmpowerMapper extends BaseMapper<Empower> {
 
-    void insertBatchSomeColumn(List<Empower> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberCardMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberCardMapper.java
index 0032769..5954790 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberCardMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberCardMapper.java
@@ -11,6 +11,4 @@
  * @date 2023/11/30 15:33
  */
 public interface MemberCardMapper extends BaseMapper<MemberCard> {
-
-    void insertBatchSomeColumn(List<MemberCard> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberMapper.java
index a0bf352..f0cb9ad 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberMapper.java
@@ -17,5 +17,4 @@
  */
 public interface MemberMapper extends MPJBaseMapper<Member> {
 
-    void insertBatchSomeColumn(List<Member> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberRoleMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberRoleMapper.java
index cff3a2e..419b97b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberRoleMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/MemberRoleMapper.java
@@ -12,6 +12,5 @@
  */
 public interface MemberRoleMapper extends BaseMapper<MemberRole> {
 
-    void insertBatchSomeColumn(List<MemberRole> list);
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParkBookMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParkBookMapper.java
index 1357775..021bb94 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParkBookMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParkBookMapper.java
@@ -12,5 +12,4 @@
  */
 public interface ParkBookMapper extends BaseMapper<ParkBook> {
 
-    void insertBatchSomeColumn(List<ParkBook> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java
index c9b7e2e..aebe554 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java
@@ -11,5 +11,4 @@
  */
 public interface ParksMapper extends BaseMapper<Parks> {
 
-    void insertBatchSomeColumn(List<Parks> addList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/RetentionMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/RetentionMapper.java
index ff7693c..edc3988 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/RetentionMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/RetentionMapper.java
@@ -10,6 +10,4 @@
  * @date 2023/11/30 15:33
  */
 public interface RetentionMapper extends BaseMapper<Retention> {
-
-    void insertBatchSomeColumn(List<Retention> retentionList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/TrainTimeMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/TrainTimeMapper.java
index 3602f89..b10839f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/TrainTimeMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/TrainTimeMapper.java
@@ -11,5 +11,4 @@
  */
 public interface TrainTimeMapper extends BaseMapper<TrainTime> {
 
-    void insertBatchSomeColumn(List<TrainTime> newList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitEventMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitEventMapper.java
index b802f66..d667c84 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitEventMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitEventMapper.java
@@ -11,5 +11,4 @@
  */
 public interface VisitEventMapper extends BaseMapper<VisitEvent> {
 
-    void insertBatchSomeColumn(List<VisitEvent> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitsMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitsMapper.java
index 977569f..cd622be 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitsMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/VisitsMapper.java
@@ -11,5 +11,4 @@
  */
 public interface VisitsMapper extends BaseMapper<Visits> {
 
-    void insertBatchSomeColumn(List<Visits> withUserList);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java
index 86d86d7..650aaf6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java
@@ -12,7 +12,5 @@
  */
 public interface ApproveJoinMapper extends MPJJoinMapper<Approve> {
 
-    void insertBatchSomeColumn(List<Approve> list);
-
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java
index f920075..d59bbc1 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/EmpowerJoinMapper.java
@@ -11,5 +11,4 @@
  * @date 2023/11/30 15:33
  */
 public interface EmpowerJoinMapper extends MPJJoinMapper<Empower> {
-    void insertBatchSomeColumn(List<Empower> list);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
index 49deff2..48c6832 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
@@ -134,8 +134,8 @@
     @ExcelColumn(name="鐢宠浜虹紪鐮�(鍏宠仈member)")
     private Integer memberId;
 
-    @ApiModelProperty(value = "鍙告満缂栫爜锛堝叧鑱攃ar_driver锛�", example = "1")
-    @ExcelColumn(name="鍙告満缂栫爜锛堝叧鑱攃ar_driver锛�")
+    @ApiModelProperty(value = "鍙告満缂栫爜锛堝叧鑱攎emberId锛�", example = "1")
+    @ExcelColumn(name="鍙告満缂栫爜锛堝叧鑱攎emberId锛�")
     private Integer driverId;
 
     @ApiModelProperty(value = "鍙告満濮撳悕", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
index d90363d..7056886 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -75,8 +75,8 @@
     @ExcelColumn(name="鍋ュ悍鐮�")
     private String imgurl;
 
-    @ApiModelProperty(value = "绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹�  2鍐呴儴浜哄憳", example = "1")
-    @ExcelColumn(name="绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
+    @ApiModelProperty(value = "绫诲瀷 0鍙告満浜哄憳 1鏅�氳瀹�  2鍐呴儴浜哄憳", example = "1")
+    @ExcelColumn(name="绫诲瀷 0鍙告満浜哄憳 1鏅�氳瀹� 2鍐呴儴浜哄憳")
     private Integer type;
 
     @ApiModelProperty(value = "璁垮鍚嶇О/鍐呴儴浜哄憳")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/DateIntervalVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/DateIntervalVO.java
index db66388..727a985 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/DateIntervalVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/DateIntervalVO.java
@@ -28,4 +28,7 @@
     @ApiModelProperty(value = "鏄惁鍗犵敤")
     private Integer isUse;
 
+    @ApiModelProperty(value = "鐢ㄨ溅璁板綍涓婚敭")
+    private Integer carUseBookId;
+
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/VisitDetailVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/VisitDetailVO.java
index 3796270..74fc2e3 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/VisitDetailVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/VisitDetailVO.java
@@ -7,6 +7,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -17,6 +18,8 @@
  */
 @Data
 public class VisitDetailVO {
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    private Date createTime;
 
     @ApiModelProperty(value = "瀹℃壒鐘舵��")
     private Integer status;
@@ -76,6 +79,8 @@
     @ApiModelProperty(value = "瀹℃壒淇℃伅鏁版嵁")
     private ApproveDataVO approveDateVO;
 
+    @ApiModelProperty(value = "璇佷欢绫诲瀷 0韬唤璇� 1娓境璇佷欢 2鎶ょ収", example = "1")
+    private Integer idcardType;
 
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
index 03fd6bc..24554db 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
@@ -16,6 +16,7 @@
 import com.doumee.dao.web.reqeust.VisitMemberDTO;
 import com.doumee.dao.web.response.MemberVO;
 import com.doumee.dao.web.response.WxAuthorizeVO;
+import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
@@ -173,20 +174,13 @@
      * @param code
      * @return
      */
-    WxAuthorizeVO wxAuthorize(String code);
+    WxAuthorizeVO wxAuthorize(String code,Integer source);
 
 
 
     List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO);
 
 
-    /**
-     * 璐﹀彿瀵嗙爜
-     * 鍐呴儴浜哄憳/鍔冲姟璁垮鐧诲綍
-     * @param accountLoginDTO
-     * @return
-     */
-    WxAuthorizeVO accountLogin(AccountLoginDTO accountLoginDTO);
 
     /**
      * 鍐呴儴鍙嫓璁夸汉鍛樺垎椤�
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java
index 35fdec6..569c7ca 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java
@@ -9,6 +9,7 @@
 import com.doumee.dao.web.reqeust.VisitRecordDTO;
 import com.doumee.dao.web.response.VisitDetailVO;
 import com.doumee.dao.web.response.VisitRecordVO;
+import io.swagger.models.auth.In;
 
 import java.util.List;
 
@@ -27,7 +28,7 @@
      */
     Integer create(Visits visits);
 
-    Integer createFk(Visits visits,Boolean isERP);
+    Integer createFk(Visits visits, Boolean isERP, Integer source);
 
     /**
      * 璁垮鎶ュ
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/ERPSyncService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/ERPSyncService.java
index 261c650..72c55b6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/ERPSyncService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/ERPSyncService.java
@@ -53,7 +53,7 @@
      * @param accessSecret
      * @return
      */
-    AccessTokenResponse createERPToken(String accessKey, String accessSecret);
+//    AccessTokenResponse createERPToken(String accessKey, String accessSecret);
 
 
     /**
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
index daffdbf..384cdcc 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -36,6 +36,7 @@
 import org.apache.xpath.operations.Bool;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -257,17 +258,19 @@
                                 &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
                         ).count()
                 );
+                //宸插鐞嗘暟鎹�
                 internalHomeVO.setNoticeDealNum(
                         noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
+                                &&StringUtils.equals(i.getParam4(),i.getUserId().toString())
                                 &&Constants.equalsInteger(i.getStatus(),Constants.ONE)
                                 &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
                         ).count()
                 );
-
+                //鎴戝彂璧风殑鏁版嵁
                 internalHomeVO.setNoticeCreateNum(
                         noticesJoinMapper.selectCount(new QueryWrapper<Notices>().lambda().eq(Notices::getParam3,memberId))
                 );
-
+                //鎶勯�佹垜鐨勬暟鎹�
                 internalHomeVO.setNoticeCopyNum(
                         noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
                                 &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE)
@@ -374,7 +377,8 @@
         if(CollectionUtils.isNotEmpty(approveCopyList)){
             this.organizeApproveCopyData(approveTempl,approveParamList,businessId,approveList);
         }
-        approveMapper.insertBatchSomeColumn(approveList);
+        approveJoinMapper.insert(approveList);
+//        approveJoinMapper.insert(approveList);
 
     }
 
@@ -396,6 +400,7 @@
         createUserApprove.setIsdeleted(Constants.ZERO);
         createUserApprove.setTemplatId(approveTempl.getId());
         createUserApprove.setChekorId(createMember.getId());
+        createUserApprove.setCheckDate(createUserApprove.getCreateDate());
         createUserApprove.setStatus(Constants.approveStatus.pass);
         createUserApprove.setTitle("鍙戣捣鐢宠");
         createUserApprove.setStatusInfo("");
@@ -467,6 +472,7 @@
                 approve.setChekorId(memberId);
                 approve.setStatus(i==0?Constants.ONE:Constants.ZERO);
                 approve.setStatusInfo(i==0?"瀹℃壒涓�":"寰呭鎵�");
+                approve.setTitle("瀹℃壒浜�");
                 approve.setIsEndCheck((i+1) == approveParamList.size()?Constants.ONE:Constants.ZERO);
                 approve.setObjId(businessId);
                 approve.setLevel(i+1);
@@ -684,11 +690,6 @@
             for(Approve level:levelList){
                 List<Approve> tlist = getLevelInfoFromList(level,approveGroupList);
                 approveDateVO.getApproveList().addAll(tlist);
-                if(tlist.size() ==0
-                        ||Constants.equalsInteger(Constants.approveStatus.unPass,  tlist.get(0).getStatus())
-                        ||Constants.equalsInteger(Constants.approveStatus.cancel,  tlist.get(0).getStatus())){
-                    break;
-                }
             }
         }
 
@@ -702,6 +703,7 @@
             waitModel.setApproveList(copyList);
             approveDateVO.getApproveList().add(waitModel);
         }
+        System.out.println(JSONObject.toJSONString(approveDateVO));
         return approveDateVO;
     }
 
@@ -781,19 +783,14 @@
                 if(CollectionUtils.isNotEmpty(approveList)){
                     waitModel.setCreateDate(approveList.get(Constants.ZERO).getCreateDate());
                 }
-                waitModel.setMemberName("宸叉妱閫�"+ approveList.size() +"浜�");
+                if(Constants.equalsInteger(waitModel.getStatus(),Constants.approveStatus.pass)){
+                    waitModel.setMemberName("宸叉妱閫�"+ approveList.size() +"浜�");
+                }else if(Constants.equalsInteger(waitModel.getStatus(),Constants.approveStatus.wait)){
+                    waitModel.setMemberName("澶勭悊涓�");
+                }
                 waitModel.setApproveList(approveList);
                 list.add(waitModel);
             }
-            //濡傛灉鏄垨绛�
-//            if(otherPassList.size()>0){
-//                Approve waitModel = new Approve();
-//                waitModel.setApproveType(Constants.ONE);
-//                waitModel.setStatusInfo(StringUtils.defaultString(level.getTitle(),"瀹℃壒浜�")+"锛堟妱閫佹垨绛惧鎵逛汉锛�");
-//                waitModel.setStatus(Constants.ONE);
-//                waitModel.setApproveList(otherPassList);
-//                list.add(waitModel);
-//            }
         }
 
 
@@ -816,7 +813,7 @@
             }else if(Constants.equalsInteger(Constants.approveStatus.auditIng,approve.getStatus())||Constants.equalsInteger(Constants.approveStatus.wait,approve.getStatus())){
                 waitList.add(approve);
             }else if(Constants.equalsInteger(Constants.approveStatus.unPass,approve.getStatus())){
-                refuseModel = approve;
+                BeanUtils.copyProperties(approve,refuseModel);
             }
         }
     }
@@ -1009,6 +1006,7 @@
                 .eq(Notices::getUserId,approve.getChekorId())
                 .eq(Notices::getSendacopy,Constants.ZERO)
                 .eq(Notices::getIsdeleted,Constants.ZERO)
+                .last(" limit 1 ")
         );
         if(Objects.isNull(notices)){
             log.info("鏈煡璇㈠埌閫氱煡璁板綍");
@@ -1020,7 +1018,7 @@
         approve.setCheorId(approveDTO.getLoginUserInfo().getMemberId().toString());
         approve.setCheckorName(approveDTO.getLoginUserInfo().getRealname());
         approve.setCheckDate(new Date());
-        approve.setStatusInfo(approveDTO.getStatus()==Constants.TWO?"宸插悓鎰�":approveDTO.getCheckInfo());
+        approve.setStatusInfo(approveDTO.getStatus()==Constants.TWO?"宸插悓鎰�":"宸查┏鍥�");
         //鏈骇鎵�鏈� 寰呭鎵硅褰�
         List<Approve> approveList = approveJoinMapper.selectJoinList(Approve.class,
                 new MPJLambdaWrapper<Approve>()
@@ -1048,10 +1046,12 @@
         Boolean dealBusinessBean = false;
         //瀹℃壒椹冲洖鎯呭喌
         if(approveDTO.getStatus().equals(Constants.THREE)){
+            dealBusinessBean = true;
             //淇敼鍏朵粬鎵�鏈夊緟瀹℃壒鍜屽鎵逛腑璁板綍鏁版嵁
             approveJoinMapper.update(null,new UpdateWrapper<Approve>()
                     .lambda()
                     .set(Approve::getStatus,Constants.approveStatus.otherUnPass)
+                    .set(Approve::getCheckDate,new Date())
                     .in(Approve::getStatus,Constants.approveStatus.auditIng,Constants.approveStatus.wait)
                     .eq(Approve::getObjId,approve.getObjId())
                     .eq(Approve::getObjType,approve.getObjType())
@@ -1081,7 +1081,6 @@
                     );
                 }
             }
-            return;
         }else{
             //澶勭悊鍏朵粬涓氬姟鏁版嵁
             if((Constants.equalsInteger(approve.getApproveType(),Constants.ZERO)
@@ -1091,6 +1090,7 @@
                     approveJoinMapper.update(null,new UpdateWrapper<Approve>()
                             .lambda()
                             .set(Approve::getStatus,Constants.approveStatus.otherDeal)
+                            .set(Approve::getCheckDate,new Date())
                             .in(Approve::getId,approveList.stream().map(m->m.getId()).collect(Collectors.toList())));
                 }
                 dealBusinessBean = true;
@@ -1102,17 +1102,24 @@
                     approveJoinMapper.update(null,new UpdateWrapper<Approve>()
                             .lambda()
                             .set(Approve::getStatus,Constants.approveStatus.otherDeal)
+                            .set(Approve::getCheckDate,new Date())
                             .in(Approve::getId,approveList.stream().map(m->m.getId()).collect(Collectors.toList())));
                 }
                 /**寮�鍚笅涓�绾у埆鐨勬暟鎹负寰呭鏍�**/
                 approveJoinMapper.update(null,new UpdateWrapper<Approve>()
                         .lambda()
                         .set(Approve::getStatus,Constants.approveStatus.auditIng)
+                        .set(Approve::getTitle,"瀹℃壒浜�")
+                        .set(Approve::getCheckDate,new Date())
                         .eq(Approve::getStatus,Constants.approveStatus.wait)
                         .eq(Approve::getObjId,approve.getObjId())
                         .eq(Approve::getObjType,approve.getObjType())
                         .eq(Approve::getLevel,(approve.getLevel()+1))
                 );
+                if(approveDTO.getObjType().equals(Constants.approveObjectType.cityUseCar)||approveDTO.getObjType().equals(
+                        Constants.approveObjectType.unCityUseCar)){
+                    this.updDriver(approveDTO,approve,false);
+                }
             }else if(approve.getApproveType().equals(Constants.ONE)){
                 //浼氱 涓旂粓瀹�
                 //鏃犱粬浜哄鎵圭殑鎯呭喌 鍒欎慨鏀规暟鎹姸鎬�
@@ -1215,7 +1222,7 @@
                 .eq(Approve::getType,Constants.ZERO)
                 .eq(Approve::getLevel,(approve.getLevel() + Constants.ONE))
         );
-        if(CollectionUtils.isNotEmpty(nextApproveList)){
+        if(CollectionUtils.isEmpty(nextApproveList)){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴佹暟鎹紓甯�");
         }
         Notices newNotices = new Notices();
@@ -1255,23 +1262,7 @@
             visitsMapper.updateById(visits);
         }else if(approveDTO.getObjType().equals(Constants.approveObjectType.cityUseCar)||approveDTO.getObjType().equals(
                 Constants.approveObjectType.unCityUseCar)){
-            // 甯傚唴澶栫敤杞︾敵璇�
-            CarUseBook carUseBook = carUseBookMapper.selectById(approveDTO.getObjId());
-            if(Objects.isNull(carUseBook)){
-                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌鐢ㄨ溅璁板綍");
-            }
-            carUseBook.setStatus(approveDTO.getStatus());
-            carUseBook.setEditDate(new Date());
-            carUseBook.setEditor(approveDTO.getLoginUserInfo().getMemberId());
-            //濡傛灉閰嶇疆淇敼鍙告満 涓� 鍏ュ弬浜嗘洿鎹㈠悗鍙告満淇℃伅
-            if(approveDTO.getStatus()==Constants.TWO&&Constants.equalsInteger(approve.getDriverParam(),Constants.ONE)){
-                CarDriver carDriver = carDriverMapper.selectById(approveDTO.getDriverId());
-                if(Objects.isNull(carDriver)){
-                    throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌鍙告満淇℃伅");
-                }
-                carUseBook.setDriverId(carDriver.getId());
-            }
-            carUseBookMapper.updateById(carUseBook);
+            this.updDriver(approveDTO,approve,true);
         }else if(approveDTO.getObjType().equals(Constants.approveObjectType.logisticsCarUse)){
             //TODO  鐗╂祦杞﹂绾�
 
@@ -1281,4 +1272,34 @@
     }
 
 
+    public void updDriver(ApproveDTO approveDTO,Approve approve,Boolean dealBusinessBean){
+        // 甯傚唴澶栫敤杞︾敵璇�
+        CarUseBook carUseBook = carUseBookMapper.selectById(approveDTO.getObjId());
+        if(Objects.isNull(carUseBook)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌鐢ㄨ溅璁板綍");
+        }
+        if(dealBusinessBean){
+            carUseBook.setStatus(approveDTO.getStatus());
+        }else{
+            if(Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)){
+                carUseBook.setStatus(Constants.ONE);
+            }
+        }
+        carUseBook.setEditDate(new Date());
+        carUseBook.setEditor(approveDTO.getLoginUserInfo().getMemberId());
+        //濡傛灉閰嶇疆淇敼鍙告満 涓� 鍏ュ弬浜嗘洿鎹㈠悗鍙告満淇℃伅
+        if(approveDTO.getStatus()==Constants.TWO&&Constants.equalsInteger(approve.getDriverParam(),Constants.ONE)){
+            CarDriver carDriver = carDriverMapper.selectOne(new QueryWrapper<CarDriver>().lambda()
+                    .eq(CarDriver::getIsdeleted,Constants.ZERO)
+                    .eq(CarDriver::getStatus,Constants.ZERO)
+                    .eq(CarDriver::getMemberId,approveDTO.getDriverId()));
+            if(Objects.isNull(carDriver)){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌鍙告満淇℃伅");
+            }
+             carUseBook.setDriverId(carDriver.getMemberId());
+        }
+        carUseBookMapper.updateById(carUseBook);
+    }
+
+
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
index 7b9bfbb..f1b227b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
@@ -9,10 +9,8 @@
 import com.doumee.core.utils.Utils;
 import com.doumee.dao.business.ApproveParamMapper;
 import com.doumee.dao.business.ApproveTemplMapper;
-import com.doumee.dao.business.MemberMapper;
 import com.doumee.dao.business.join.MemberJoinMapper;
 import com.doumee.dao.business.model.*;
-import com.doumee.dao.business.vo.ApproveParamDataVO;
 import com.doumee.service.business.ApproveTemplService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -28,8 +26,6 @@
 
 import java.util.Date;
 import java.util.List;
-import java.util.Optional;
-import java.util.stream.Collectors;
 
 /**
  * 瀹℃壒妯$増淇℃伅琛⊿ervice瀹炵幇
@@ -94,7 +90,7 @@
             approveParamMapper.delete(new UpdateWrapper<ApproveParam>().lambda()
                     .eq(ApproveParam::getTemplId,template.getId()));
             //鎵归噺鎻掑叆鏂扮殑閰嶇疆
-            approveParamMapper.insertBatchSomeColumn(model.getParamList());
+            approveParamMapper.insert(model.getParamList());
         }
         return 1;
     }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
index ef865c4..5befe39 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
@@ -83,7 +83,6 @@
                 || Objects.isNull(carUseBook.getStartTime())
                 || Objects.isNull(carUseBook.getEndTime())
                 || Objects.isNull(carUseBook.getCreator())
-                || Objects.isNull(carUseBook.getMemberId())
                 || Objects.isNull(carUseBook.getPlanUseDate())
                 || Objects.isNull(carUseBook.getType())
                 || StringUtils.isEmpty(carUseBook.getMemberIds())
@@ -92,6 +91,9 @@
                 || StringUtils.isEmpty(carUseBook.getAddr())
         ){
             throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        if(Objects.nonNull(carUseBook.getCreator())&&Objects.isNull(carUseBook.getMemberId())){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠鐧诲綍鐢ㄦ埛鏃犳硶杩涜璇ユ搷浣�!");
         }
         if(carUseBook.getEndTime().getTime()<=System.currentTimeMillis()){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"閫夋嫨鏃ユ湡寮傚父[缁撴潫鏃堕棿灏忎簬褰撳墠鏃堕棿],璇峰埛鏂伴噸璇�");
@@ -108,6 +110,7 @@
         if(Objects.isNull(cars)||!cars.getType().equals(Constants.ONE)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"杞﹁締淇℃伅寮傚父");
         }
+        carUseBook.setCarCode(cars.getCode());
         //鏍规嵁杞﹁締鏌ヨ鍙告満淇℃伅
         CarDriver carDriver = carDriverMapper.selectOne(new QueryWrapper<CarDriver>().lambda()
                 .eq(CarDriver::getCarId,cars.getId())
@@ -124,7 +127,6 @@
         }
         carUseBookMapper.insert(carUseBook);
         //鐢ㄨ溅鐢宠 瀹℃壒璁板綍鍒涘缓
-
         approveService.createApproveFlow(carUseBook.getType()==0?3:4,carUseBook.getId(),carUseBook.getMemberId());
         return carUseBook.getId();
     }
@@ -207,6 +209,7 @@
                 }
             }
             approve.setCheckInfo(model.getCancelInfo());
+            approve.setCheckDate(model.getCancelTime());
             approveList.add(approve);
         }
         model.setApproveDateVO(approveDataVO);
@@ -372,11 +375,6 @@
                         .or().apply("  START_TIME < '"+dateDay+" 00:00:00' and END_TIME  > '"+dateDay+" 23:59:59'  "))
         );
         for (DateIntervalVO dateIntervalVO:dateIntervalVOList) {
-            //鍒ゆ柇鏃堕棿鏄惁澶т簬褰撳墠
-            if(DateUtil.getDateFromString(dateIntervalVO.getEndTime()).getTime()<=System.currentTimeMillis()){
-                dateIntervalVO.setIsUse(Constants.ONE);
-                continue;
-            }
             if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(carUseBookList)){
                 for (CarUseBook i:carUseBookList  ) {
                     if(
@@ -389,10 +387,16 @@
                                     (DateUtil.getDateFromString(dateIntervalVO.getStartTime()).getTime() >= i.getStartTime().getTime() &&
                                             DateUtil.getDateFromString(dateIntervalVO.getEndTime()).getTime() <= i.getEndTime().getTime())
                     ){
+                        dateIntervalVO.setCarUseBookId(i.getId());
                         dateIntervalVO.setIsUse(Constants.ONE);
                         break;
                     }
                 }
+            }
+            //鍒ゆ柇鏃堕棿鏄惁澶т簬褰撳墠
+            if(Constants.equalsInteger(dateIntervalVO.getIsUse(),Constants.ZERO)  && DateUtil.getDateFromString(dateIntervalVO.getEndTime()).getTime()<=System.currentTimeMillis()){
+                dateIntervalVO.setIsUse(Constants.ONE);
+                continue;
             }
         }
         return dateIntervalVOList;
@@ -436,7 +440,7 @@
        carUseBook.setCancelTime(new Date());
        carUseBook.setCancelStatus(Constants.ONE);
        carUseBook.setStatus(Constants.FOUR);
-       carUseBook.setCancelUser(loginUserInfo.getId());
+       carUseBook.setCancelUser(loginUserInfo.getMemberId());
        carUseBook.setCancelType(Constants.ONE);
        if(loginUserInfo.getId().equals(carUseBook.getCreator())){
            carUseBook.setCancelType(Constants.ZERO);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
index 99d30ff..696ce97 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
@@ -47,6 +47,13 @@
         if(loginUserInfo == null){
             loginUserInfo = model.getLoginUserInfo();
         }
+        if(hiddenDangerParamMapper.selectCount(new QueryWrapper<HiddenDangerParam>().lambda()
+                .eq(HiddenDangerParam::getType,model.getType())
+                .eq(HiddenDangerParam::getName,model.getName())
+                .eq(HiddenDangerParam::getIsdeleted,Constants.ZERO)
+        )>Constants.ZERO){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ュ悕绉板凡瀛樺湪!");
+        }
         if(Constants.equalsInteger(model.getType(),Constants.ZERO)){
             //濡傛灉鏄尯鍩熼厤缃�
             List<Integer> ids = model.getMemberIdList();
@@ -122,6 +129,14 @@
         if(hiddenDangerParam == null || Constants.equalsInteger(hiddenDangerParam.getIsdeleted(),Constants.ONE)){
             throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇ラ厤缃俊鎭笉瀛樺湪锛岃杩斿洖鍒锋柊椤甸潰閲嶈瘯锛�");
         }
+        if(hiddenDangerParamMapper.selectCount(new QueryWrapper<HiddenDangerParam>().lambda()
+                .eq(HiddenDangerParam::getType,model.getType())
+                .eq(HiddenDangerParam::getName,model.getName())
+                .eq(HiddenDangerParam::getIsdeleted,Constants.ZERO)
+                .ne(HiddenDangerParam::getId,model.getId())
+        )>Constants.ZERO){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ュ悕绉板凡瀛樺湪!");
+        }
         if(Constants.equalsInteger(hiddenDangerParam.getType(),Constants.ZERO)){
             //濡傛灉鏄尯鍩熼厤缃�,鏍¢獙瀹夊叏鍛樹俊鎭槸鍚︽纭�
             List<Integer> ids =model.getMemberIdList();
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
index f0024a9..87dfe19 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -84,6 +84,7 @@
         if(Objects.isNull(hiddenDangerParam)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鍖哄煙");
         }
+
         HiddenDangerParam hiddenDangerCate = hiddenDangerParamMapper.selectById(hiddenDanger.getCateId());
         if(Objects.isNull(hiddenDangerCate)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅绫诲瀷");
@@ -317,6 +318,7 @@
                 .eq(pageWrap.getModel().getCheckInfo() != null, HiddenDanger::getCheckInfo, pageWrap.getModel().getCheckInfo())
                 .eq(pageWrap.getModel().getCheckUserId() != null, HiddenDanger::getCheckUserId, pageWrap.getModel().getCheckUserId())
                 .eq(pageWrap.getModel().getAreaName() != null, HiddenDanger::getAreaName, pageWrap.getModel().getAreaName())
+                .like(pageWrap.getModel().getCompanyName() != null,"t4.company_name_path",pageWrap.getModel().getCompanyName())
 
                 .and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getName,pageWrap.getModel().getMemberName())
                         .or().like(Member::getPhone,pageWrap.getModel().getMemberName()))
@@ -448,7 +450,7 @@
             }
         }
         if(fileList.size()>0){
-            multifileMapper.insertBatchSomeColumn(fileList);
+            multifileMapper.insert(fileList);
         }
     }
 
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 57e507d..e9619f0 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
@@ -2,6 +2,7 @@
 
 import cn.hutool.core.util.IdcardUtil;
 import cn.hutool.core.util.PhoneUtil;
+import cn.hutool.http.HttpRequest;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -9,8 +10,6 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.config.DataSyncConfig;
-import com.doumee.config.Jwt.JwtPayLoad;
-import com.doumee.config.Jwt.JwtTokenUtil;
 import com.doumee.core.annotation.excel.ExcelImporter;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
@@ -64,10 +63,12 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
 import java.util.Date;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -128,6 +129,9 @@
     @Lazy
     private SmsEmailService smsEmailService;
 
+    @Autowired
+    private SystemLoginService systemLoginService; 
+    
     @Value("${debug_model}")
     private Boolean isDebug;
     @Override
@@ -740,7 +744,7 @@
                     memberRole.setRoleId(deviceRole.getId());
                     memberRoleList.add(memberRole);
                 }
-                memberRoleMapper.insertBatchSomeColumn(memberRoleList);
+                memberRoleMapper.insert(memberRoleList);
             }
             member.setRoleId(ids);
             return  1;
@@ -1112,6 +1116,7 @@
             queryWrapper.eq(Member::getCompanyId,member.getCompanyId());
         }
         queryWrapper.eq(Member::getIsdeleted,Constants.ZERO);
+        queryWrapper.eq(Member::getWorkStatus,Constants.ZERO);
         List<Member> list =  memberJoinMapper.selectJoinList(Member.class,queryWrapper);
 //        if(list!=null){
 //            for(Member m : list){
@@ -1551,7 +1556,7 @@
                         list.add(model);
                     }
                     //瀵煎叆鏂板鐨勬巿鏉冧俊鎭�
-                    empowerMapper.insertBatchSomeColumn(list);
+                    empowerMapper.insert(list);
                 }
             }
         }
@@ -1621,7 +1626,10 @@
      * @return
      */
     @Override
-    public WxAuthorizeVO wxAuthorize(String code){
+    public WxAuthorizeVO wxAuthorize(String code, Integer source){
+        if(StringUtils.isBlank(code)||Objects.isNull(source)){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
         String appId = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_APPID).getCode();
         String appSecret = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_SECRET).getCode();
         String getTokenUrl = WXConstant.GET_USER_INFO_URL.replace("CODE", code)
@@ -1640,6 +1648,7 @@
                 .selectAs(Company::getName,Member::getCompanyName)
                 .leftJoin(Company.class,Company::getId,Member::getCompanyId)
                 .eq(Member::getOpenid,openId)
+                .eq(Member::getType,source)
                 .eq(Member::getIsdeleted,Constants.ZERO)
                 .orderByDesc(Member::getCreateDate)
                 .last(" limit 1 ")
@@ -1658,12 +1667,16 @@
             String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
                     systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode();
             member.setPrefixUrl(prefixUrl);
-//            JwtPayLoad payLoad = new JwtPayLoad(Integer.toString(member.getId()));
-//            String token = JwtTokenUtil.generateToken(payLoad);
-//            //瀛樺偍token鑷硆edis
-//            RedisUtil.addObject(redisTemplate,Constants.RedisKeys.INTERNAL_TOKEN+"_"+member.getId(),token,Constants.RedisKeys.EXPIRE_TIME);
-//            wxAuthorizeVO.setToken(token);
             wxAuthorizeVO.setMember(member);
+            //鍙告満 涓� 鍐呴儴浜哄憳 鎻愪緵token
+            if(Constants.equalsInteger(source,Constants.ZERO)||Constants.equalsInteger(source,Constants.TWO)){
+                SystemUser systemUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda().eq(SystemUser::getMemberId,member.getId())
+                        .eq(SystemUser::getStatus,Constants.ZERO).last(" limit 1 "));
+                if(Objects.nonNull(systemUser)){
+                    String token = systemLoginService.loginByUserId(systemUser.getId());
+                    wxAuthorizeVO.setToken(token);
+                }
+            }
         }
         return wxAuthorizeVO;
     }
@@ -1734,51 +1747,6 @@
 
 
 
-    @Override
-    public WxAuthorizeVO accountLogin(AccountLoginDTO accountLoginDTO){
-        System.out.println(DESUtil.decrypt(Constants.EDS_PWD,"eIaPD5AR5DBuTBE9MW14QRG07IDKXCdh"));
-        if(accountLoginDTO.getAccount().length()!=18
-            //&&!IdcardUtil.isValidCard(accountLoginDTO.getAccount())
-        ){
-            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
-        }
-        Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda()
-                .eq(Member::getIdcardNo, DESUtil.encrypt(Constants.EDS_PWD, accountLoginDTO.getAccount()))
-                .ne(Member::getType,Constants.memberType.visitor)
-        );
-        if(Objects.isNull(member)){
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌鐢ㄦ埛,璇疯仈绯荤鐞嗗憳");
-        }
-        if(member.getIsdeleted() == Constants.ONE){
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸插垹闄�,璇疯仈绯荤鐞嗗憳");
-        }
-        if(member.getStatus() != Constants.ZERO){
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸茬鐢�,璇疯仈绯荤鐞嗗憳");
-        }
-        String md5Password = DESUtil.encrypt(Constants.EDS_PWD, accountLoginDTO.getPassword());
-        if(!md5Password.equals(member.getPassward())){
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璐︽埛瀵嗙爜閿欒!");
-        }
-        if(StringUtils.isNotBlank(accountLoginDTO.getOpenId())){
-            //鍏堟竻绌哄師鏈夎瀹㈢殑openid缁戝畾鍏崇郴
-            memberMapper.update(null, new UpdateWrapper<Member>().lambda()
-                    .ne(Member::getType,Constants.memberType.visitor)
-                    .eq(Member::getOpenid,accountLoginDTO.getOpenId())
-                    .set(Member::getOpenid,null)
-            );
-            //鏇存柊褰撳墠鐧诲綍鐢ㄦ埛 openId
-            member.setOpenid(accountLoginDTO.getOpenId());
-            memberMapper.updateById(member);
-        }
-        WxAuthorizeVO wxAuthorizeVO = new WxAuthorizeVO();
-        JwtPayLoad payLoad = new JwtPayLoad(Integer.toString(member.getId()));
-        String token = JwtTokenUtil.generateToken(payLoad);
-        //瀛樺偍token鑷硆edis
-        RedisUtil.addObject(redisTemplate,Constants.RedisKeys.INTERNAL_TOKEN+"_"+member.getId(),token,Constants.RedisKeys.EXPIRE_TIME);
-        wxAuthorizeVO.setToken(token);
-        return wxAuthorizeVO;
-    }
-
 
 
     @Override
@@ -1787,7 +1755,7 @@
         List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda().eq(Member::getIsdeleted,Constants.ZERO));
         if(CollectionUtils.isNotEmpty(memberList)){
             stagingHeadVO.setWorkerCount(memberList.stream().filter(m->m.getType().equals(Constants.memberType.internal)).count());
-            stagingHeadVO.setLwCount(memberList.stream().filter(m->m.getType().equals(Constants.memberType.lw_visitor)).count());
+            stagingHeadVO.setLwCount(memberList.stream().filter(m->m.getType().equals(Constants.memberType.driver)).count());
             stagingHeadVO.setVisitorCount(memberList.stream().filter(m->m.getType().equals(Constants.memberType.visitor)).count());
         }
         //鍦ㄥ満杞﹁締
@@ -1811,7 +1779,7 @@
                 new MPJLambdaWrapper<Member>()
                         .select("count(1) as memberCount, t1.name as companyName")
                         .leftJoin(Company.class,Company::getId,Member::getCompanyId)
-                        .eq(Member::getType,Constants.memberType.lw_visitor)
+                        .eq(Member::getType,Constants.memberType.driver)
                         .groupBy(Company::getId,Company::getName)
         );
         List<Map<String,Object>> retentionMaps = retentionJoinMapper.selectMaps(new MPJLambdaWrapper<Retention>()
@@ -1886,7 +1854,7 @@
                     throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅銆�"+insert.getName()+"銆戝悓姝ュ畨闃插钩鍙板け璐ワ紝璇风◢鍚庨噸璇曪紒");
                 }
             }
-            memberMapper.insertBatchSomeColumn(newList);
+            memberMapper.insert(newList);
             List<SystemUser> userList = new ArrayList<>();
             for(Member insert: newList){
                 //鍒涘缓绯荤粺鐧婚檰璐﹀彿锛堥粯璁ゆ棤浠讳綍瑙掕壊锛�
@@ -1896,7 +1864,7 @@
                 }
             }
             if(userList.size()>0){
-                systemUserMapper.insertBatchSomeColumn(userList);
+                systemUserMapper.insert(userList);
             }
         }catch (Exception e){
             //濡傛灉鍙戠敓寮傚父锛屽垹闄ゅ凡缁忓垱寤虹殑浜哄憳淇℃伅
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java
index e2b08a6..40f01f6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ParkBookServiceImpl.java
@@ -222,7 +222,7 @@
                 parkBook.setRemark("寰呭悓姝ュ畨闃插钩鍙�");
                 parkBookList.add(parkBook);
             }
-            parkBookMapper.insertBatchSomeColumn(parkBookList);
+            parkBookMapper.insert(parkBookList);
         }
         return 0;
     }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
index 0392a44..7c16f43 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemLogServiceImpl.java
@@ -183,7 +183,7 @@
             if(Objects.isNull(member)){
                 throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鍔冲姟浜哄憳");
             }
-            if(!member.getType().equals(Constants.memberType.lw_visitor)){
+            if(!member.getType().equals(Constants.memberType.driver)){
                 throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲姵鍔′汉鍛樼被鍨嬶紝绛旈澶辫触");
             }
             if(!member.getStatus().equals(Constants.ZERO)){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TrainTimeServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TrainTimeServiceImpl.java
index aa6d84b..ee00da0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TrainTimeServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TrainTimeServiceImpl.java
@@ -231,7 +231,7 @@
             if(newList == null || newList.size() ==0){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝褰曞叆鏈夋晥鏁版嵁涓虹┖锛�");
             }
-            trainTimeMapper.insertBatchSomeColumn(newList);
+            trainTimeMapper.insert(newList);
             return "瀵煎叆鎴愬姛";
         }catch (BusinessException e){
             throw e;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java
index e21b168..e34a01b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java
@@ -47,6 +47,7 @@
         update.setEditor(userInfo.getId());
         update.setEditDate(new Date());
         update.setIsdeleted(Constants.ONE);
+        update.setId(id);
         visitReasonMapper.updateById(update);
 
     }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index 77730ce..2c3918d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -170,7 +170,7 @@
                 }
                 visits.setWithUserList(visitsList);
             }
-            this.createFk(visits,true);
+            this.createFk(visits,true,Constants.ONE);
     }
 
     @Transactional(propagation = Propagation.NOT_SUPPORTED)
@@ -197,16 +197,15 @@
      */
     @Override
     @Transactional(rollbackFor = {BusinessException.class,Exception.class})
-    public Integer createFk(Visits visits,Boolean isERP) {
+    public Integer createFk(Visits visits,Boolean isERP,Integer source) {
         isValidBaseParam(visits);
         //妫�鏌ユ槸鍚﹀繀椤荤瓟棰橈紝骞朵笖绗﹀悎绛旈瑕佹眰
-        ProblemLog problemLog = isValidProblemLog(visits);
+        ProblemLog problemLog = isValidProblemLog(visits,source);
         //鑾峰彇鐢宠鐨勬捣搴疯闂棬绂佺粍淇℃伅
         getHkDeviceRoles(visits,isERP);
         //妫�楠屾嫓璁夸汉鏄惁鍚堟硶
         Member visitMember = isValideVisitedUser(visits.getReceptMemberId());
         if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType())&&visits.getIdcardNo().length()!=18
-//            &&!IdcardUtil.isValidCard(visits.getIdcardNo())
         ){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
         }
@@ -454,7 +453,7 @@
                 approve.setObjId(visitId);
                 approveList.add(approve);
             }
-            approveMapper.insertBatchSomeColumn(approveList);
+            approveMapper.insert(approveList);
         }
     }
 
@@ -481,7 +480,7 @@
                 approve.setObjId(visitId);
                 approveList.add(approve);
             }
-            approveMapper.insertBatchSomeColumn(approveList);
+            approveMapper.insert(approveList);
         }
     }
 
@@ -634,11 +633,11 @@
         }else if(visits.getType().equals(Constants.ONE) && StringUtils.isBlank(visits.getConstructionReason())){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鏈~鍐欐柦宸ヤ簨鐢憋紒");
         }
-        if(visits.getEndtime().getTime() < System.currentTimeMillis()){
-            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鍏ュ巶鏃堕棿蹇呴』澶т簬褰撳墠鏃堕棿锛�");//
-        }
         if(visits.getEndtime().getTime() <= visits.getStarttime().getTime()){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝绂诲巶鏃堕棿蹇呴』澶т簬鍏ュ巶鏃堕棿锛�");//
+        }
+        if(visits.getEndtime().getTime() <= System.currentTimeMillis()){
+            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鍏ュ巶鏃堕棿蹇呴』澶т簬褰撳墠鏃堕棿锛�");//
         }
         if(!DateUtil.getDateLong(visits.getEndtime()).equals(DateUtil.getDateLong(visits.getStarttime()))){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝棰勭害鏃ユ湡涓嶅彲浠ヨ法澶╋紒");
@@ -722,7 +721,7 @@
                 v.setSourceType(visits.getSourceType());
             }
             //鎵归噺鎻掑叆鏁版嵁
-            visitsMapper.insertBatchSomeColumn(visits.getWithUserList());
+            visitsMapper.insert(visits.getWithUserList());
         }
     }
 
@@ -891,7 +890,6 @@
             }
             //鏍告煡棰勭害鐢ㄦ埛鏄惁瀛樺湪鏈绂荤殑棰勭害璁板綍
 //            isExsitNoOutVisisRecord(member);
-
             member.setFaceImg(visits.getFaceImg());
             member.setImgurl(StringUtils.isNotBlank(visits.getImgurl())?visits.getImgurl():null);
             member.setEditDate(visits.getCreateDate());
@@ -997,7 +995,16 @@
         return  member;
     }
 
-    private ProblemLog isValidProblemLog(Visits visits) {
+    /**
+     * 鏄惁闇�瑕佺瓟棰�
+     * @param visits
+     * @param source
+     * @return
+     */
+    private ProblemLog isValidProblemLog(Visits visits,Integer source) {
+        if(!Constants.equalsInteger(source,Constants.ZERO)){
+            return null;
+        }
         String required = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.PROBLEM_VISIT_REQUIRED).getCode();
         if(StringUtils.equals(required,Constants.ONE+"")&&visits.getSourceType()==Constants.ZERO&&!visits.getType().equals(Constants.TWO)){
             //濡傛灉蹇呴』绛旈锛屾煡鎵剧瓟棰樿褰�
@@ -1162,8 +1169,10 @@
         queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
 
         queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
-        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
+        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType())&&Constants.equalsInteger(pageWrap.getModel().getType(),Constants.TWO),Visits::getType,pageWrap.getModel().getType());
+        queryWrapper.ne(Objects.nonNull(pageWrap.getModel().getType())&&!Constants.equalsInteger(pageWrap.getModel().getType(),Constants.TWO),Visits::getType,Constants.TWO);
         queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getOpenid()),Visits::getOpenid,pageWrap.getModel().getOpenid());
+        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCarNos()),Visits::getCarNos,pageWrap.getModel().getCarNos());
 //        queryWrapper.eq(StringUtils.isBlank(pageWrap.getModel().getOpenid()),"1","2");
         queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getName,pageWrap.getModel().getName())
                 .or().like(Visits::getPhone,pageWrap.getModel().getName()))
@@ -1172,6 +1181,7 @@
                 .eq(Objects.nonNull(pageWrap.getModel().getStatus()),Visits::getStatus,pageWrap.getModel().getStatus());
         queryWrapper.isNull(Visits::getParentId);
         queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getMemberId()),Visits::getMemberId,pageWrap.getModel().getMemberId());
+        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getReceptMemberId()),Visits::getReceptMemberId,pageWrap.getModel().getReceptMemberId());
         queryWrapper.orderByDesc(Visits::getCreateDate);
         IPage<Visits> result = visitsJoinMapper.selectJoinPage(page, Visits.class,queryWrapper);
 
@@ -1247,12 +1257,14 @@
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌琚鍛樺伐淇℃伅");
         }
         VisitDetailVO visitDetailVO = new VisitDetailVO();
+        visitDetailVO.setCreateTime(visits.getCreateDate());
         visitDetailVO.setStatus(visits.getStatus());
         visitDetailVO.setCarNos(visits.getCarNos());
         visitDetailVO.setPhone(visits.getPhone());
         visitDetailVO.setVisitUserName(member.getName());
         visitDetailVO.setVisitReason(visits.getReason());
         visitDetailVO.setQrcode(visits.getQrcode());
+        visitDetailVO.setIdcardType(visits.getIdcardType());
         visitDetailVO.setVisitTime(DateUtil.DateToStr(visits.getStarttime(),"yyyy-MM-dd HH:mm") + " 鑷� " + DateUtil.DateToStr(visits.getEndtime(),"yyyy-MM-dd HH:mm") );
         //琚浜哄憳閮ㄩ棬
         Company company = companyMapper.selectById(member.getCompanyId());
@@ -1266,6 +1278,7 @@
         visitDetailVO.setConstructionReason(visits.getConstructionReason());
         visitDetailVO.setImgUrl(visits.getImgurl());
         visitDetailVO.setIdCardDecode(visits.getIdcardDecode());
+        visitDetailVO.setFaceImg(visits.getFaceImg());
         visitDetailVO.setPrefix(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
                 systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode());
         if(StringUtils.isNotBlank(visits.getDoors())){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
index ebaf70d..92901c9 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -7,8 +7,6 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.config.DataSyncConfig;
-import com.doumee.config.Jwt.JwtPayLoad;
-import com.doumee.config.Jwt.JwtTokenUtil;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.erp.ErpConstants;
 import com.doumee.core.erp.ErpTool;
@@ -153,7 +151,7 @@
             List<Company>  allList = companyMapper.selectList(new QueryWrapper<Company>().lambda().eq(Company::getType,Constants.ONE));
             dealCompanyChangeList(list,addList,updateList,delIds,allList);
             if(addList.size()>0){
-                companyMapper.insertBatchSomeColumn(addList);
+                companyMapper.insert(addList);
             }
             if(updateList.size()>0){
                 for(Company c : updateList){
@@ -306,7 +304,7 @@
                     .eq(Member::getType, Constants.memberType.internal));
             dealUserChangeList(list,addList,updateList,delList,allList,param);
             if(addList.size()>0){
-                memberMapper.insertBatchSomeColumn(addList);
+                memberMapper.insert(addList);
                /* for (Member member:addList) {
                     dealRoleEmpower(member );
                 }*/
@@ -474,31 +472,30 @@
         return  false;
     }
 
-    @Override
-    public AccessTokenResponse createERPToken(String accessKey, String accessSecret){
-        AccessTokenResponse result = new AccessTokenResponse();
-        try{
-            String erpAccessKey = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_KEY).getCode();
-            String erpAccessSecret = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_SECRET).getCode();
-            if(!(accessKey.equals(erpAccessKey)&&erpAccessSecret.equals(accessSecret))){
-                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绉橀挜鍖归厤澶辫触");
-            }
-            JwtPayLoad payLoad = new JwtPayLoad(erpAccessKey+"-"+erpAccessSecret);
-            String token = JwtTokenUtil.generateToken(payLoad);
-            RedisUtil.addObject(redisTemplate,Constants.RedisKeys.ERP_TOKEN,token,Constants.RedisKeys.EXPIRE_TIME);
-            result.setToken(token);
-            result.setExpireTime(Constants.RedisKeys.EXPIRE_TIME);
-            return result;
-        }catch (BusinessException e){
-            throw e;
-        }finally {
-            Map<String,String> param = new HashMap<>();
-            param.put("accessKey",accessKey);
-            param.put("accessSecret",accessSecret);
-            saveInterfaceLog(param,"/visitBiz/accesstoken",JSONObject.toJSONString(result),Constants.ZERO);
-        }
-
-    }
+//    @Override
+//    public AccessTokenResponse createERPToken(String accessKey, String accessSecret){
+//        AccessTokenResponse result = new AccessTokenResponse();
+//        try{
+//            String erpAccessKey = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_KEY).getCode();
+//            String erpAccessSecret = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_SECRET).getCode();
+//            if(!(accessKey.equals(erpAccessKey)&&erpAccessSecret.equals(accessSecret))){
+//                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绉橀挜鍖归厤澶辫触");
+//
+//            String token = JwtTokenUtil.generateToken(payLoad);
+//            RedisUtil.addObject(redisTemplate,Constants.RedisKeys.ERP_TOKEN,token,Constants.RedisKeys.EXPIRE_TIME);
+//            result.setToken(token);
+//            result.setExpireTime(Constants.RedisKeys.EXPIRE_TIME);
+//            return result;
+//        }catch (BusinessException e){
+//            throw e;
+//        }finally {
+//            Map<String,String> param = new HashMap<>();
+//            param.put("accessKey",accessKey);
+//            param.put("accessSecret",accessSecret);
+//            saveInterfaceLog(param,"/visitBiz/accesstoken",JSONObject.toJSONString(result),Constants.ZERO);
+//        }
+//
+//    }
 
     /**
      * 闂ㄧ缁勫叏閲忔帴鍙�
@@ -926,7 +923,7 @@
                 }
             }
             if(memberCardList.size()>0){
-                memberCardMapper.insertBatchSomeColumn(memberCardList);
+                memberCardMapper.insert(memberCardList);
             }
         }
     }
@@ -1010,7 +1007,7 @@
                         parkBook.setRemark("寰呭悓姝ュ畨闃插钩鍙�");
                         parkBookList.add(parkBook);
                     }
-                    parkBookMapper.insertBatchSomeColumn(parkBookList);
+                    parkBookMapper.insert(parkBookList);
                 }else{
                     throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鍋滆溅搴撲俊鎭笉瀛樺湪锛屾巿鏉冨け璐�");
                 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
index 0268516..4e05b11 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
@@ -71,7 +71,7 @@
                 }
             }
             if(addList.size()>0){
-                deviceMapper.insertBatchSomeColumn(addList);
+                deviceMapper.insert(addList);
             }
             if(editList.size()>0){
                 for(Device d : editList){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java
index cd1be6c..334dce7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDoorsServiceImpl.java
@@ -88,7 +88,7 @@
                 }
             }
             if(addList.size()>0){
-                deviceMapper.insertBatchSomeColumn(addList);
+                deviceMapper.insert(addList);
             }
             if(editList.size()>0){
                 for(Device d : editList){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
index b68b0b4..7710cd4 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -228,7 +228,7 @@
                 }
             }
             if(addList.size()>0){
-                parksMapper.insertBatchSomeColumn(addList);
+                parksMapper.insert(addList);
             }
             if(editList.size()>0){
                 for(Parks d : editList){
@@ -367,7 +367,7 @@
 
                     List<CarEvent> sublist = allHkList.subList(startIndex, endIndex);
                     if(sublist.size()>0){
-                        carEventMapper.insertBatchSomeColumn(sublist);//鎻掑叆鏂版暟鎹�
+                        carEventMapper.insert(sublist);//鎻掑叆鏂版暟鎹�
                     }
                     startIndex = endIndex;
                     endIndex += sublistSize;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
index 6e23fda..03abcc6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
@@ -96,7 +96,7 @@
                 }
             }
             if(addList.size()>0){
-                DeviceRoleMapper.insertBatchSomeColumn(addList);
+                DeviceRoleMapper.insert(addList);
             }
             if(editList.size()>0){
                 for(DeviceRole d : editList){
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 a68cbb0..e34a2ef 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
@@ -99,7 +99,7 @@
             }
             if(list.size()>0){
                 //鎻掑叆闂ㄧ璁板綍
-                deviceEventMapper.insertBatchSomeColumn(list);
+                deviceEventMapper.insert(list);
             }
             if(delRetentionLis.size()>0){
                 //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鍐呴儴浜哄憳锛�
@@ -109,7 +109,7 @@
             }
             if(retentionList.size()>0){
                 //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
-                retentionMapper.insertBatchSomeColumn(retentionList);
+                retentionMapper.insert(retentionList);
             }
             log.error("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========鎴愬姛=======");
         }catch (Exception e) {
@@ -289,7 +289,7 @@
             }
             if(list.size()>0){
                 //鎻掑叆闂ㄧ璁板綍
-                visitEventMapper.insertBatchSomeColumn(list);
+                visitEventMapper.insert(list);
             }
             if(delRetentionLis.size()>0){
                 //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鏅�氳瀹級
@@ -299,7 +299,7 @@
             }
             if(retentionList.size()>0){
                 //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
-                retentionMapper.insertBatchSomeColumn(retentionList);
+                retentionMapper.insert(retentionList);
             }
             log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========鎴愬姛=======");
         }catch (Exception e){
@@ -461,7 +461,7 @@
             }
             if(list.size()>0){
                 //鎻掑叆闂ㄧ璁板綍
-                carEventMapper.insertBatchSomeColumn(list);
+                carEventMapper.insert(list);
             }
             if(delRetentionList.size()>0){
                 //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鍐呴儴浜哄憳锛�
@@ -471,7 +471,7 @@
             }
             if(retentionList.size()>0){
                 //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
-                retentionMapper.insertBatchSomeColumn(retentionList);
+                retentionMapper.insert(retentionList);
             }
             log.error("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========鎴愬姛=======");
         }catch (Exception e){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
index a8ab55b..09da7f9 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
@@ -518,7 +518,7 @@
                         .eq(Empower::getMemberId,member.getId())
                         .eq(Empower::getIsdeleted,Constants.ZERO)
                         .in(Empower::getDeviceId,deviceIds) );
-                empowerMapper.insertBatchSomeColumn(list);
+                empowerMapper.insert(list);
             }
         }
     }
@@ -577,7 +577,7 @@
                     .eq(Empower::getMemberId,member.getId())
                     .eq(Empower::getIsdeleted,Constants.ZERO)
                     .in(Empower::getDeviceId,deviceIds) );
-            empowerMapper.insertBatchSomeColumn(list);
+            empowerMapper.insert(list);
         }
     }
 
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromHKServiceImpl.java
index df05a04..f471370 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromHKServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromHKServiceImpl.java
@@ -101,7 +101,7 @@
                 throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈悓姝ュ埌浠讳綍缁勭粐淇℃伅锛�");
             }
             companyMapper.delete(new UpdateWrapper<>());//娓呯┖鍘熸湁鏁版嵁
-            companyMapper.insertBatchSomeColumn(allHkList);//鎻掑叆鏂版暟鎹�
+            companyMapper.insert(allHkList);//鎻掑叆鏂版暟鎹�
         }catch (BusinessException e){
             throw  e;
         }catch (Exception e){
@@ -190,7 +190,7 @@
                 throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈悓姝ュ埌浠讳綍缁勭粐淇℃伅锛�");
             }
             memberMapper.delete(new UpdateWrapper<>());//娓呯┖鍘熸湁鏁版嵁
-            memberMapper.insertBatchSomeColumn(allHkList);//鎻掑叆鏂版暟鎹�
+            memberMapper.insert(allHkList);//鎻掑叆鏂版暟鎹�
         }catch (BusinessException e){
             throw  e;
         }catch (Exception e){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVehicleFromHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVehicleFromHKServiceImpl.java
index 0ef439e..e4992e8 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVehicleFromHKServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVehicleFromHKServiceImpl.java
@@ -99,7 +99,7 @@
             }
             //娓呯┖鍘熸湁鐨勬暟鎹�
             carsMapper.delete(new UpdateWrapper<>());
-            carsMapper.insertBatchSomeColumn(allHkList);//鎻掑叆鏂版暟鎹�
+            carsMapper.insert(allHkList);//鎻掑叆鏂版暟鎹�
         }catch (BusinessException e){
             throw  e;
         }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVisitFromHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVisitFromHKServiceImpl.java
index 4679a06..188e7f4 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVisitFromHKServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncVisitFromHKServiceImpl.java
@@ -108,7 +108,7 @@
                     .ge(Visits::getStarttime,start)
                     .eq(Visits::getType,Constants.ONE)
                     .le(Visits::getStarttime,end));
-            visitsMapper.insertBatchSomeColumn(allHkList);//鎻掑叆鏂版暟鎹�
+            visitsMapper.insert(allHkList);//鎻掑叆鏂版暟鎹�
         }catch (BusinessException e){
             throw  e;
         }
diff --git a/server/visits/openapi/src/main/java/com/doumee/api/web/ApiController.java b/server/visits/openapi/src/main/java/com/doumee/api/web/ApiController.java
index ecceb79..1a02b2a 100644
--- a/server/visits/openapi/src/main/java/com/doumee/api/web/ApiController.java
+++ b/server/visits/openapi/src/main/java/com/doumee/api/web/ApiController.java
@@ -1,6 +1,5 @@
 package com.doumee.api.web;
 
-import com.doumee.config.Jwt.JwtTokenUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.context.request.RequestContextHolder;
 import org.springframework.web.context.request.ServletRequestAttributes;
@@ -26,10 +25,10 @@
         return request;
     }
 
-    protected String getToken() {
-        Object obj = this.getRequest().getAttribute(JwtTokenUtil.HEADER_KEY);
-        return obj != null ? obj.toString() : null;
-    }
+//    protected String getToken() {
+//        Object obj = this.getRequest().getAttribute(JwtTokenUtil.HEADER_KEY);
+//        return obj != null ? obj.toString() : null;
+//    }
 
 
 }
diff --git a/server/visits/openapi/src/main/java/com/doumee/api/web/BizResourceController.java b/server/visits/openapi/src/main/java/com/doumee/api/web/BizResourceController.java
index c077a10..bca5a78 100644
--- a/server/visits/openapi/src/main/java/com/doumee/api/web/BizResourceController.java
+++ b/server/visits/openapi/src/main/java/com/doumee/api/web/BizResourceController.java
@@ -39,7 +39,7 @@
 @RestController
 @RequestMapping("/visitbiz")
 @Slf4j
-public class BizResourceController extends ApiController {
+public class BizResourceController{
 
     @Autowired
     private ERPSyncService erpSyncService;
@@ -51,7 +51,7 @@
     private VisitsService visitsService;
 
 
-    @ApiOperation(value = "璋冪敤鍑嵁鑾峰彇鎺ュ彛", notes = "璁垮绔彁渚涳紝渚汦RP绔皟鐢紝鍚慐RP鎻愪緵缁熸帴鍙h皟鐢ㄥ嚟璇�")
+   /* @ApiOperation(value = "璋冪敤鍑嵁鑾峰彇鎺ュ彛", notes = "璁垮绔彁渚涳紝渚汦RP绔皟鐢紝鍚慐RP鎻愪緵缁熸帴鍙h皟鐢ㄥ嚟璇�")
     @GetMapping("/accesstoken")
     @ApiImplicitParams({
             @ApiImplicitParam(paramType = "query", dataType = "String", name = "accessKey", value = "璁块棶key锛岀敱璁垮绔彁渚�", required = true),
@@ -60,7 +60,7 @@
     public ApiResponse<AccessTokenResponse> accesstoken(@RequestParam  String accessKey, @RequestParam  String accessSecret) {
         ApiResponse response = ApiResponse.success(null);
         try {
-            response.setData(erpSyncService.createERPToken(accessKey,accessSecret));
+//            response.setData(erpSyncService.createERPToken(accessKey,accessSecret));
         }catch (BusinessException e){
             response = ApiResponse.failed(e.getCode(), e.getMessage());
         }catch (Exception e){
@@ -317,7 +317,7 @@
         map.put("FTP璧勬簮璁块棶鏄犲皠鍦板潃",
         systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode());
         return  ApiResponse.success(map);
-    }
+    }*/
 
 
 
diff --git a/server/visits/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java b/server/visits/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java
index fcb986a..c8f4f5e 100644
--- a/server/visits/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java
+++ b/server/visits/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java
@@ -36,7 +36,7 @@
 @RestController
 @RequestMapping("/erp/resource")
 @Slf4j
-public class ErpResourceController extends ApiController {
+public class ErpResourceController{
     @ApiOperation(value = "鍏ㄩ噺缁勭粐淇℃伅鎺ュ彛", notes = "ERP绔彁渚涳紝渚涜瀹㈢鎷夊彇鍏ㄩ儴缁勭粐淇℃伅锛岀敤浜庡垵濮嬪寲鍙婂懆鏈熸�ф暟鎹牳鏌�")
     @PostMapping("/org/list")
     public ERPApiResponse<PageData<ErpOrgListResponse>> orgList (@RequestBody PageWrap<OrgListRequest> pageWrap) {

--
Gitblit v1.9.3