From 9958c9393c8c3a5e2350fa9023e14cbbf74b0d9a Mon Sep 17 00:00:00 2001
From: weimingfei <fei_gaming@sina.com>
Date: 星期五, 31 十月 2025 12:05:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao
---
server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkVersion.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OpenGridDriverDTO.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/QueryUserByCodeDTO.java | 22 ++
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkKeys.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetLogServiceImpl.java | 80 ++++++++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkKeysServiceImpl.java | 17 +
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkCabinetLogService.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseInfoRequest.java | 19 ++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java | 148 ++++++++++++++--
server/visits/admin_timer/src/main/java/com/doumee/api/JkCabinetTimerController.java | 40 ++++
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WarningPush.java | 11 +
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OptGridDTO.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AlcoholTestAlarmDTO.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkIccardService.java | 3
server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java | 10
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseRequest.java | 14 +
server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AbnormalOpenGridDTO.java | 25 ++
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinetLog.java | 10
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkIccardServiceImpl.java | 15 +
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/cabinet/CabinetController.java | 6
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseParamRequest.java | 18 ++
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java | 9 +
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCustomer.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java | 1
30 files changed, 437 insertions(+), 56 deletions(-)
diff --git a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
index c3298bb..1a03476 100644
--- a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
+++ b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
@@ -150,7 +150,7 @@
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public void create(CreateSystemUserDTO systemUser) {
+ public void create(CreateSystemUserDTO systemUser) {
// 楠岃瘉鐢ㄦ埛鍚�
SystemUser queryUserDto = new SystemUser();
queryUserDto.setUsername(systemUser.getUsername());
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 392fe0a..e3459ae 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
@@ -790,7 +790,7 @@
String t = reversedHex.substring(i*2,i*2+2);
result += new StringBuilder(t).reverse().toString();
}
- return result;
+ return result.toUpperCase();
}catch (Exception e){
}
@@ -1130,7 +1130,7 @@
WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"),
IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ),
CALLED(4, "宸插彨鍙�","宸插彨鍙�" ),
- WORKING(5, "浣滀笟涓�","浣滀笟涓�" ),
+ WORKING(5, "浣滀笟涓�","浣滀笟涓�" ),
DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚" ),
TRANSFERING(7, "杞Щ涓�","杞Щ涓�" ),
EXCEPTION(8, "寮傚父鎸傝捣","寮傚父鎸傝捣" ),
@@ -1194,7 +1194,7 @@
IN_CITY_CAR_USE(3, "鍏溅甯傚唴鐢ㄨ溅 ", "鍏溅甯傚唴鐢ㄨ溅 "),
OUT_CITY_CAR_USE(4, "鍏溅瀹ゅ鐢ㄨ溅 ", "鍏溅瀹ゅ鐢ㄨ溅 "),
CITY_WLC_BOOK(5, "甯傚叕鍙哥墿娴佽溅棰勭害 ", "5甯傚叕鍙哥墿娴佽溅棰勭害 "),
- PLATFROM_REASON(6, "鏈堝彴鍏ュ洯鍘熷洜瀹℃壒 ", "鏈堝彴鍏ュ洯鍘熷洜瀹℃壒 "),
+ PLATFROM_REASON(6, "鏈堝彴鍏ュ洯鍘熷洜瀹℃壒 ", "鏈堝彴鍏ュ洯鍘熷洜瀹℃壒 ")
;
// 鎴愬憳鍙橀噺
private String name;
@@ -1523,9 +1523,9 @@
public enum WarningConfig {
- ALARM_TEST(10002, "閰掔簿娴嬭瘯"),
- GRID_TIME_OUT_INFO(10003, "寮�闂ㄨ秴鏃舵湭鍏抽棴"),
- KEY_TIME_OUT_BACK(10004, "閽ュ寵瓒呮椂鏈綊杩�"),
+ ALARM_TEST(10002, "銆愰挜鍖欐煖銆戦厭绮炬祴璇曞紓甯�"),
+ GRID_TIME_OUT_INFO(10003, "銆愰挜鍖欐煖銆戝紑闂ㄨ秴鏃舵湭鍏抽棴"),
+ KEY_TIME_OUT_BACK(10004, "銆愰挜鍖欐煖銆戦挜鍖欒秴鏃舵湭褰掕繕"),
;
// 鎴愬憳鍙橀噺
private int key;
diff --git a/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java b/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
index 3464add..fd72b31 100644
--- a/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
+++ b/server/system_timer/src/main/java/com/doumee/jobs/fegin/VisitServiceFegin.java
@@ -115,4 +115,7 @@
@PostMapping("/timer/systemUserJob/jobForOpenProhibitStatus")
ApiResponse jobForOpenProhibitStatus();
+ @ApiOperation("銆愰挜鍖欐煖銆戝畾鏃跺彂閫侀挜鍖欐湭鍙婃椂褰掕繕閫氱煡")
+ @PostMapping("/timer/jkCabinet/timeOutUnBackAlarm")
+ ApiResponse timeOutUnBackAlarm();
}
diff --git a/server/visits/admin_timer/src/main/java/com/doumee/api/JkCabinetTimerController.java b/server/visits/admin_timer/src/main/java/com/doumee/api/JkCabinetTimerController.java
new file mode 100644
index 0000000..fba3f5e
--- /dev/null
+++ b/server/visits/admin_timer/src/main/java/com/doumee/api/JkCabinetTimerController.java
@@ -0,0 +1,40 @@
+package com.doumee.api;
+
+import com.doumee.service.business.JkCabinetLogService;
+import com.doumee.service.business.JkCustomerService;
+import com.doumee.service.business.impl.JkCabinetGridServiceImpl;
+import com.doumee.service.business.third.model.ApiResponse;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.mgt.DefaultSecurityManager;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Api(tags = "閽ュ寵鏌滃畾鏃跺櫒")
+@RestController
+@RequestMapping("/timer/jkCabinet")
+public class JkCabinetTimerController extends BaseController {
+ @Autowired
+ private JkCabinetLogService jkCabinetLogService;
+
+ @Autowired
+ private JkCabinetGridServiceImpl impl;
+
+
+ @ApiOperation("瀹氭椂鍙戦�侀挜鍖欐湭鍙婃椂褰掕繕閫氱煡")
+ @PostMapping("/timeOutUnBackAlarm")
+ public ApiResponse timeOutUnBackAlarm() {
+ jkCabinetLogService.timeOutUnBackAlarm(impl);
+ return ApiResponse.success("瀹氭椂鍙戦�侀挜鍖欐湭鍙婃椂褰掕繕閫氱煡");
+ }
+
+
+
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
index 65d569e..5d1cdd4 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
@@ -7,6 +7,7 @@
import com.doumee.config.annotation.LoginNoRequired;
import com.doumee.config.jwt.JwtProperties;
import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.haikang.model.HKConstants;
import com.doumee.core.haikang.model.param.BaseResponse;
import com.doumee.core.haikang.model.param.request.*;
import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
@@ -171,6 +172,14 @@
String result = hkSyncPushService.dealVisitEvent(param,response);
return ApiResponse.success(result);
}
+ @ApiOperation("銆愭捣搴枫�戝叾浠栬闃呬簨浠惰闃呮帹閫佸鎺ュ鐞嗘帴鍙�")
+ @PostMapping("/push/notice")
+ @LoginNoRequired
+ public ApiResponse pushNotice(@RequestBody EventVisitRequest param, HttpServletResponse response){
+ String result = hkSyncPushService.dealVisitEvent(param,response);
+
+ return ApiResponse.success(result);
+ }
@ApiOperation("銆愭捣搴枫�戣瀹CCM浜嬩欢璁㈤槄鎺ㄩ�佸鎺ュ鐞嗘帴鍙�")
@PostMapping("/push/visitIccm")
@LoginNoRequired
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/cabinet/CabinetController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/cabinet/CabinetController.java
index f9f1183..cc05592 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/cabinet/CabinetController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/cabinet/CabinetController.java
@@ -183,9 +183,9 @@
@LoginNoRequired
@ApiOperation("鑾峰彇IC鍗$敤鎴蜂富閿� - 鍙告満")
@PostMapping("/getMemberIdByCode")
- public ApiResponse<Integer> getMemberIdByCode(@RequestParam String code) {
- this.saveInterfaceLog(Constants.strToJson("code",code), null,"getMemberIdByCode","鑾峰彇IC鍗$敤鎴蜂富閿� - 鍙告満");
- return ApiResponse.success(jkIccardService.getMemberIdByCode(code));
+ public ApiResponse<Integer> getMemberIdByCode(@RequestBody QueryUserByCodeDTO dto) {
+ this.saveInterfaceLog(JSONObject.toJSONString(dto), null,"getMemberIdByCode","鑾峰彇IC鍗$敤鎴蜂富閿� - 鍙告満");
+ return ApiResponse.success(jkIccardService.getMemberIdByCode(dto));
}
private void saveInterfaceLog(String s, String result,String url,String name) {
diff --git a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
index 9dc10e9..86e11a3 100644
--- a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
+++ b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
profiles:
- active: dev
+ active: test
application:
name: visitsAdmin
# 瀹夊叏閰嶇疆
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java
index 2832e4e..cbb22b6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java
@@ -519,7 +519,6 @@
/**
* 瀹夐槻/娑堥槻 markdown
- * @param hiddenDanger
* @return
*/
public OapiMessageCorpconversationAsyncsendV2Request.Msg getAlarmNoticeMsg(String areaName,String submitTime,String infoType){
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseInfoRequest.java
new file mode 100644
index 0000000..53821ce
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseInfoRequest.java
@@ -0,0 +1,19 @@
+package com.doumee.core.haikang.model.param.request.event.base;
+
+import com.alibaba.fastjson.JSONObject;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitDataRequest;
+import lombok.Data;
+
+@Data
+public class EventBaseInfoRequest {
+ private String eventId;// String 浜嬩欢鍞竴鏍囪瘑 鏄� 64
+ private String srcIndex;// String 浜嬩欢婧愮紪鍙凤紝鐗╃悊璁惧鏄祫婧愮紪鍙� 鏄� 64
+ private String srcType;// String 浜嬩欢婧愮被鍨� 鏄� 16
+ private Integer eventType ;//Number 浜嬩欢绫诲瀷 鏄�
+ private String srcName;// String 浜嬩欢婧愬悕绉� 鍚� 64
+ private Integer status ;//Number 浜嬩欢鐘舵�� 鏄� 0-鐬椂1-寮�濮�2-鍋滄3-浜嬩欢鑴夊啿4-浜嬩欢鑱斿姩缁撴灉鏇存柊5-寮傛鍥剧墖涓婁紶
+ private Integer timeout ;//Number 鑴夊啿瓒呮椂鏃堕棿 鏄� 鍗曚綅锛氱
+ private String happenTime ;//String 浜嬩欢鍙戠敓鏃堕棿锛堣澶囨椂闂达級 鏄� 64
+ private String srcParentIndex ;//String 浜嬩欢鍙戠敓鐨勪簨浠舵簮鐖惰澶囩紪鍙� 鍚� 64
+ private JSONObject data;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseParamRequest.java
new file mode 100644
index 0000000..f743d60
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseParamRequest.java
@@ -0,0 +1,18 @@
+package com.doumee.core.haikang.model.param.request.event.base;
+
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitInfoRequest;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventBaseParamRequest {
+
+
+ private String sendTime;// P String 浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂� 鏄� 32 浜嬩欢鍙戦�佹椂闂�
+ private String ability;// P String 浜嬩欢绫诲埆 鏄� 64 鏍囪瘑鍋滆溅鍦轰簨浠�
+ private String[] uids;// String[] 鐢ㄦ埛id 鍚� 涓嶉檺
+ private String[] clients ;//String[] 缁勪欢鏍囪瘑 鍚� 涓嶉檺
+ private List<EventBaseInfoRequest> events;// P Events[] 浜嬩欢淇℃伅 鏄� 涓嶉檺
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseRequest.java
new file mode 100644
index 0000000..014e535
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/base/EventBaseRequest.java
@@ -0,0 +1,14 @@
+package com.doumee.core.haikang.model.param.request.event.base;
+
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitParamRequest;
+import lombok.Data;
+
+@Data
+public class EventBaseRequest {
+
+// private String parkIndexCodes ;// string False 鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎 澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+ private String method ;// String 鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ�� 鏄� 16 浜嬩欢鍥哄畾OnEventNotify
+ private EventBaseParamRequest params ;// Params 浜嬩欢鍙傛暟淇℃伅 鏄� 涓嶉檺 鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java
index 8db98a6..cf5e81f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitDataRequest.java
@@ -6,7 +6,6 @@
@Data
public class EventVisitDataRequest {
-
private String visitorId ;//String 璁垮id 鏄� 64 瀵瑰簲璁垮鏉ヨ璁板綍涓殑orderId瀛楁
private String personName;// String 濮撳悕 鏄� 32
private Integer sex;// Number 鎬у埆 鏄� 1-鐢�2-濂�
@@ -27,5 +26,4 @@
private String svrIndexCode;// String 鍥剧墖瀛樺偍鏈嶅姟鍣ㄥ敮涓�鏍囪瘑 鍚�
private String beVisitedPersonId;// String 琚闂汉Id 鏄�
private String beVisitedPersonOrgId;// String 琚闂汉鎵�灞炵粍缁嘔d 鏄�
-
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java
index 4093801..67b7e46 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitRequest.java
@@ -5,8 +5,7 @@
@Data
public class EventVisitRequest {
-// private String parkIndexCodes ;// string False 鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎 澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
-
+// private String parkIndexCodes;// string False 鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎 澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
private String method ;// String 鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ�� 鏄� 16 浜嬩欢鍥哄畾OnEventNotify
private EventVisitParamRequest params ;// Params 浜嬩欢鍙傛暟淇℃伅 鏄� 涓嶉檺 鍏蜂綋鍙傛暟淇℃伅
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AbnormalOpenGridDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AbnormalOpenGridDTO.java
new file mode 100644
index 0000000..1c77070
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AbnormalOpenGridDTO.java
@@ -0,0 +1,25 @@
+package com.doumee.dao.business.dto;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2025/10/11 16:01
+ */
+@Data
+public class AbnormalOpenGridDTO {
+
+ @ApiModelProperty(value = "閽ュ寵鏌滀富閿�")
+ private Integer cabinetId;
+
+ @ApiModelProperty(value = "鏉垮彿")
+ private String boardCode;
+
+ @ApiModelProperty(value = "閫氶亾鍙�")
+ private String channelCode;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AlcoholTestAlarmDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AlcoholTestAlarmDTO.java
index 6be2ee6..bca03f5 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AlcoholTestAlarmDTO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/AlcoholTestAlarmDTO.java
@@ -18,5 +18,8 @@
@ApiModelProperty(value = "閰掔簿搴︽暟")
private String alcoholNum;
+ @ApiModelProperty(value = "閽ュ寵鏌滀富閿�")
+ private Integer cabinetId;
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OpenGridDriverDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OpenGridDriverDTO.java
index 362dbdb..54b81ac 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OpenGridDriverDTO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OpenGridDriverDTO.java
@@ -25,4 +25,6 @@
@ApiModelProperty(value = "鐢ㄦ埛涓婚敭")
private Integer memberId;
+ @ApiModelProperty(value = "寮�鍚柟寮忥細0=绯荤粺寮�鍚紱1=鎵嬪姩寮�鍚�")
+ private Integer openType;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OptGridDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OptGridDTO.java
index 64db8b0..377601c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OptGridDTO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/OptGridDTO.java
@@ -21,4 +21,6 @@
@ApiModelProperty(value = "鏌滄牸涓婚敭鍒楄〃")
private List<Integer> gridIdList;
+ @ApiModelProperty(value = "寮�鍚柟寮忥細0=绯荤粺寮�鍚紱1=鎵嬪姩寮�鍚�")
+ private Integer openType;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/QueryUserByCodeDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/QueryUserByCodeDTO.java
new file mode 100644
index 0000000..6f09e1b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/QueryUserByCodeDTO.java
@@ -0,0 +1,22 @@
+package com.doumee.dao.business.dto;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import com.doumee.service.business.third.model.LoginUserModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2025/10/11 16:01
+ */
+@Data
+public class QueryUserByCodeDTO {
+
+ @ApiModelProperty(value = "IC鍗″彿")
+ private String code;
+
+ @ApiModelProperty(value = "鍏宠仈浜哄憳绫诲瀷锛�0=鍙告満锛�1=鏍¢獙浜哄憳", example = "1")
+ private Integer userType;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinetLog.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinetLog.java
index 101647a..475a4e7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinetLog.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinetLog.java
@@ -44,7 +44,7 @@
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
private Integer isdeleted;
- @ApiModelProperty(value = "澶囨敞")
+ @ApiModelProperty(value = "澶囨敞 璁板綍寮�闂ㄦ柟寮�")
private String info;
@ApiModelProperty(value = "閽ュ寵鏌滅紪鐮侊紙鍏宠仈jk_cabinet)", example = "1")
@@ -90,6 +90,8 @@
@ApiModelProperty(value = "鎿嶄綔鍚庨挜鍖欑姸鎬侊細0鏈彉鍖�;1宸插綊杩�;2宸插�熷嚭;", example = "1")
private Integer keyStatus;
+ @ApiModelProperty(value = "鏄惁鍙戦�侀�氱煡锛�0=鍚︼紱1=鏄紱", example = "1")
+ private Integer isNotice;
@ApiModelProperty(value = "褰掕繕鏃堕棿")
@TableField(exist = false)
@@ -101,7 +103,7 @@
private String companyName;
@ApiModelProperty(value = "鎿嶄綔浜哄悕绉�", example = "1")
- @ExcelColumn(name="鎿嶄綔浜�",index = 1,width = 2)
+ @ExcelColumn(name="鎿嶄綔浜�",index = 1,width = 12)
@TableField(exist = false)
private String memberName;
@@ -125,4 +127,8 @@
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endDate;
+ @ApiModelProperty(value = "鎵�鍦ㄤ綅缃�")
+ @TableField(exist = false)
+ private String location;
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCustomer.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCustomer.java
index d9f55d4..3773e1c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCustomer.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCustomer.java
@@ -79,7 +79,7 @@
private String sortno;
@ApiModelProperty(value = "缁忕含搴�", example = "1")
- @ExcelColumn(name="缁忕含搴�",index = 3,width = 10)
+ @ExcelColumn(name="缁忕含搴�",index = 4,width = 10)
@TableField(exist = false)
private String locationInfo;
@ApiModelProperty(value = "閫佽揣璺嚎缂栫爜锛堝叧鑱攋k_line)", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkKeys.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkKeys.java
index edf02f8..02dcd88 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkKeys.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkKeys.java
@@ -78,6 +78,11 @@
private Integer status;
+ @ApiModelProperty(value = "鏍囩鏄庣爜 鍔犲瘑鍚庣敓鎴� rfid_lable", example = "1")
+ @ExcelColumn(name="鏍囩鏄庣爜 鍔犲瘑鍚庣敓鎴� rfid_lable")
+ private String rfidCode;
+
+
@ApiModelProperty(value = "瀛樻斁浣嶇疆", example = "1")
@TableField(exist = false)
private String gridCode;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkVersion.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkVersion.java
index 2c33dd2..7798d8d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkVersion.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkVersion.java
@@ -35,7 +35,6 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -44,7 +43,6 @@
@ApiModelProperty(value = "鏇存柊鏃堕棿")
@ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date editDate;
@ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WarningPush.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WarningPush.java
index 8faea00..3a8d5a2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WarningPush.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WarningPush.java
@@ -82,7 +82,7 @@
@ApiModelProperty(value = "鎵�鍦ㄤ綅缃�")
//@ExcelColumn(name="鎺ㄩ�佹爣璇�")
private String pushId;
- @ApiModelProperty(value = "鎺ㄩ�佹爣璇�")
+ @ApiModelProperty(value = "鎵�鍦ㄤ綅缃�")
@ExcelColumn(name="鎵�鍦ㄤ綅缃�",width=10,index = 5)
private String region;
@@ -94,6 +94,15 @@
//@ExcelColumn(name="鎺ㄩ�佹柟寮� 0閽夐拤閫氱煡")
private Integer pushType;
+ @ApiModelProperty(value = "浜哄憳缂栫爜锛屽涓互,鍒嗗壊", example = "1")
+ //@ExcelColumn(name="鎺ㄩ�佹柟寮� 0閽夐拤閫氱煡")
+ private String memberIds;
+
+ @ApiModelProperty(value = "浜哄憳鍚嶇О锛屽涓互,鍒嗗壊", example = "1")
+ //@ExcelColumn(name="鎺ㄩ�佹柟寮� 0閽夐拤閫氱煡")
+ private String memberNames;
+
+
@ApiModelProperty(value = "浜嬩欢鍒嗙被 0=瀹夐槻浜嬩欢锛�1=娑堥槻浜嬩欢锛�2=杞﹁浇浜嬩欢锛�3=閽ュ寵鏌滀簨浠讹紱 4=澶╂皵棰勮锛�", example = "1")
@ExcelColumn(name="浜嬩欢鍒嗙被",valueMapping = "0=瀹夐槻浜嬩欢;1=娑堥槻浜嬩欢;2=杞﹁浇浜嬩欢;3=閽ュ寵鏌滀簨浠�;4=澶╂皵棰勮;",width=10,index = 3)
@TableField(exist = false)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkCabinetLogService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkCabinetLogService.java
index 4f7cd26..35e17eb 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkCabinetLogService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkCabinetLogService.java
@@ -2,6 +2,7 @@
import com.doumee.dao.business.dto.TelecomCabinetLogDTO;
import com.doumee.dao.business.vo.TelecomJkCabinetLogVO;
+import com.doumee.service.business.impl.JkCabinetGridServiceImpl;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
import com.doumee.dao.business.model.JkCabinetLog;
@@ -103,4 +104,8 @@
* @return
*/
List<TelecomJkCabinetLogVO> getLogListForTelecom(TelecomCabinetLogDTO model);
+
+
+ void timeOutUnBackAlarm(JkCabinetGridServiceImpl impl);
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkIccardService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkIccardService.java
index 4e8aa50..8077c0c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkIccardService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/JkIccardService.java
@@ -1,5 +1,6 @@
package com.doumee.service.business;
+import com.doumee.dao.business.dto.QueryUserByCodeDTO;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
import com.doumee.dao.business.model.JkIccard;
@@ -97,5 +98,5 @@
void updateStatusById(JkIccard jkIccard);
- Integer getMemberIdByCode(String code);
+ Integer getMemberIdByCode(QueryUserByCodeDTO dto);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
index 72875bd..b1115ac 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
@@ -1,6 +1,7 @@
package com.doumee.service.business.impl;
import com.alibaba.fastjson.JSONObject;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.dingTalk.DingTalk;
import com.doumee.core.dingTalk.DingTalkStream;
@@ -58,14 +59,20 @@
@Autowired
private JkCabinetLogMapper jkCabinetLogMapper;
- @Autowired
- private WarningMapper warningMapper;
@Autowired
private MemberMapper memberMapper;
@Autowired
+ private WarningMapper warningMapper;
+ @Autowired
private WarningRuleMapper warningRuleMapper;
+
+ @Autowired
+ private WarningPushMapper warningPushMapper;
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Autowired
private DingTalk dingTalk;
@@ -179,7 +186,7 @@
MPJLambdaWrapper<JkCabinetGrid> wrapper = new MPJLambdaWrapper<JkCabinetGrid>()
.selectAll(JkCabinetGrid.class)
.selectAs(JkCabinet::getName,JkCabinetGrid::getCabinetName)
- .selectAs(JkKeys::getCode,JkCabinetGrid::getKeyCode)
+ .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
.leftJoin(JkCabinet.class,JkCabinet::getId,JkCabinetGrid::getCabinetId)
.leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId)
.eq(JkCabinetGrid::getIsdeleted,Constants.ZERO)
@@ -310,7 +317,7 @@
}
List<JkCabinetGrid> jkCabinetGridList = jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class,
new MPJLambdaWrapper<JkCabinetGrid>().selectAll(JkCabinetGrid.class)
- .selectAs(JkKeys::getCode,JkCabinetGrid::getKeyCode)
+ .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
.selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode)
.selectAs(JkKeys::getCarId,JkCabinetGrid::getCarId)
.leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId)
@@ -392,6 +399,8 @@
jkCabinetLog.setAuthType(Constants.TWO);
jkCabinetLog.setMemberId(loginUserInfo.getMemberId());
jkCabinetLog.setStatus(Constants.ZERO);
+ jkCabinetLog.setIsNotice(Constants.ZERO);
+ jkCabinetLog.setInfo(Objects.isNull(dto.getOpenType())||Constants.equalsInteger(dto.getOpenType(),Constants.ZERO)?"绯荤粺寮�鍚�":"鎵嬪姩寮�鍚�");
if(Objects.nonNull(jkCabinetGrid.getKeyId())){
jkCabinetLog.setKeyId(jkCabinetGrid.getKeyId());
JkKeys jkKeys = jkKeysMapper.selectById(jkCabinetGrid.getKeyId());
@@ -406,6 +415,7 @@
jkCabinetLog.setType(Constants.ZERO);
jkCabinetLogs.add(jkCabinetLog);
}
+
jkCabinetLogMapper.insert(jkCabinetLogs);
}
}
@@ -464,18 +474,50 @@
}
}
}
+ jkCabinetLog.setIsNotice(Constants.ZERO);
jkCabinetLog.setType(Constants.ONE);
jkCabinetLogMapper.insert(jkCabinetLog);
//鏌ヨ閽ュ寵鐨勫紑闂ㄨ褰� 杩涜娣诲姞鍏抽棬璁板綍涓婚敭
- jkCabinetLogMapper.update(null,new UpdateWrapper<JkCabinetLog>().lambda()
- .set(JkCabinetLog::getCloseLogId,jkCabinetLog.getId())
- .eq(JkCabinetLog::getKeyId,jkCabinetLog.getKeyId())
- .eq(JkCabinetLog::getType,Constants.ZERO)
- .isNull(JkCabinetLog::getCloseLogId));
+ if(Constants.equalsInteger(dto.getKeyStatus(),Constants.ONE)){
+ jkCabinetLogMapper.update(null,new UpdateWrapper<JkCabinetLog>().lambda()
+ .set(JkCabinetLog::getCloseLogId,jkCabinetLog.getId())
+ .eq(JkCabinetLog::getKeyId,jkCabinetLog.getKeyId())
+ .eq(JkCabinetLog::getType,Constants.ONE)
+ .eq(JkCabinetLog::getKeyStatus,Constants.TWO)
+ .isNull(JkCabinetLog::getCloseLogId));
+ }
+
}
}
+
+// public void saveAbnormalOpenGridLog(AbnormalOpenGridDTO dto){
+// if(Objects.isNull(dto)
+// || StringUtils.isBlank(dto.getBoardCode())
+// || StringUtils.isBlank(dto.getBoardCode())
+// || Objects.isNull(dto.getCabinetId())
+// || Objects.isNull(dto.getKeyStatus())
+// || Objects.isNull(dto.getAuthType())
+// ){
+// throw new BusinessException(ResponseStatus.BAD_REQUEST);
+// }
+// JkCabinetGrid jkCabinetGrid = jkCabinetGridMapper.selectOne(new QueryWrapper<JkCabinetGrid>().lambda().eq(JkCabinetGrid::getIsdeleted,Constants.ZERO)
+// .eq(JkCabinetGrid::getCabinetId,dto.getCabinetId())
+// .eq(JkCabinetGrid::getId,dto.getGridId())
+// .last(" limit 1 ")
+// );
+// JkCabinetLog jkCabinetLog = new JkCabinetLog();
+// jkCabinetLog.setCreateDate(new Date());
+// jkCabinetLog.setIsdeleted(Constants.ZERO);
+// jkCabinetLog.setCabinetId(dto.getCabinetId());
+// jkCabinetLog.setGridId(jkCabinetGrid.getId());
+// jkCabinetLog.setAuthType(dto.getAuthType());
+// jkCabinetLog.setMemberId(dto.getMemberId());
+// jkCabinetLog.setKeyStatus(Constants.ZERO);
+// jkCabinetLog.setStatus(Constants.ZERO);
+//
+// }
/**
@@ -512,7 +554,7 @@
}
jkCabinetGridList = jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class,
new MPJLambdaWrapper<JkCabinetGrid>().selectAll(JkCabinetGrid.class)
- .selectAs(JkKeys::getCode,JkCabinetGrid::getKeyCode)
+ .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
.selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode)
.selectAs(JkKeys::getCarId,JkCabinetGrid::getCarId)
.selectAs(JkKeys::getStatus,JkCabinetGrid::getKeyStatus)
@@ -551,10 +593,8 @@
if(Objects.isNull(jkCabinetGrid)){
return ;
}
-// LoginUserInfo loginUserInfo = openGridDriverDTO.getLoginUserInfo();
JkCabinetLog jkCabinetLog = new JkCabinetLog();
jkCabinetLog.setCreateDate(new Date());
-// jkCabinetLog.setCreator(loginUserInfo.getId());
jkCabinetLog.setIsdeleted(Constants.ZERO);
jkCabinetLog.setCabinetId(openGridDriverDTO.getCabinetId());
jkCabinetLog.setGridId(jkCabinetGrid.getId());
@@ -562,6 +602,7 @@
jkCabinetLog.setMemberId(openGridDriverDTO.getMemberId());
jkCabinetLog.setType(Constants.ZERO);
jkCabinetLog.setStatus(Constants.ZERO);
+ jkCabinetLog.setInfo(Objects.isNull(openGridDriverDTO.getOpenType())||Constants.equalsInteger(openGridDriverDTO.getOpenType(),Constants.ZERO)?"绯荤粺寮�鍚�":"鎵嬪姩寮�鍚�");
if(Objects.nonNull(jkCabinetGrid.getKeyId())){
jkCabinetLog.setKeyId(jkCabinetGrid.getKeyId());
JkKeys jkKeys = jkKeysMapper.selectById(jkCabinetGrid.getKeyId());
@@ -573,6 +614,7 @@
jkCabinetLog.setRoleType(jkKeys.getRoleType());
}
}
+ jkCabinetLog.setIsNotice(Constants.ZERO);
jkCabinetLogMapper.insert(jkCabinetLog);
}
@@ -593,8 +635,9 @@
if(Objects.nonNull(jkCabinetGrid)){
log.error("鏌滄牸寮�闂ㄨ秴鏃舵湭鍏抽棴鍛婅淇℃伅锛歿}"+JSONObject.toJSONString(jkCabinetGrid));
+ Constants.WarningConfig warningConfig = Constants.WarningConfig.GRID_TIME_OUT_INFO;
Warning warning = warningMapper.selectOne(new QueryWrapper<Warning>().lambda()
- .eq(Warning::getType,Constants.THREE).eq(Warning::getCode,Constants.WarningConfig.GRID_TIME_OUT_INFO.getKey()).eq(Warning::getIsdeleted,Constants.ZERO).last("limt 1"));
+ .eq(Warning::getType,Constants.THREE).eq(Warning::getCode,warningConfig.getKey()).eq(Warning::getIsdeleted,Constants.ZERO).last("limt 1"));
if(Objects.isNull(warning)){
return;
}
@@ -602,10 +645,33 @@
if(CollectionUtils.isEmpty(memberList)){
return;
}
- //todo 瀛樺偍寮傚父鏃ュ織
+ JkCabinet jkCabinet = jkCabinetMapper.selectById(dto.getCabinetId());
+ // 瀛樺偍寮傚父鏃ュ織
+ WarningPush warningPush = new WarningPush();
+ warningPush.setCreateDate(new Date());
+ warningPush.setIsdeleted(Constants.ZERO);
+ warningPush.setWarningId(warning.getId());
+ warningPush.setTitle(warningConfig.getInfo());
+ String content = "銆愰挜鍖欐煖-"+jkCabinetGrid.getCabinetName()+"銆戜笅銆愭煖鏍�-"+jkCabinetGrid.getCode()+"銆戣秴鏃舵湭鍏抽棴";
+ warningPush.setContent(content);
+ warningPush.setStatus(Constants.ZERO);
+ warningPush.setPushType(Constants.ZERO);
+ warningPush.setRegion(Objects.nonNull(jkCabinet)&&StringUtils.isNotBlank(jkCabinet.getLocation())?jkCabinet.getLocation():"鏈煡浣嶇疆");
+ warningPush.setMemberIds(
+ StringUtils.join(memberList.stream().map(i->i.getId()).collect(Collectors.toList()),",")
+ );
+ warningPush.setMemberIds(
+ StringUtils.join(memberList.stream().map(i->i.getId()).collect(Collectors.toList()),",")
+ );
+ warningPush.setMemberNames(StringUtils.join(memberList.stream().map(i->i.getName()).collect(Collectors.toList()),",")
+ );
+ //todo 鏆傛椂鍏抽棴 閽夐拤閫氱煡
-
- }else{
+// Boolean noticeFlag = dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
+// StringUtils.join(memberList.stream().filter(i->StringUtils.isNotBlank(i.getDdId())).map(i->i.getDdId()).collect(Collectors.toList()),","),
+// dingTalk.getAlarmNoticeMsg(warningPush.getRegion(),DateUtil.getCurrDateTime(),content));
+// warningPush.setStatus(noticeFlag?Constants.ONE:Constants.TWO);
+ warningPushMapper.insert(warningPush);
}
}
@@ -638,9 +704,6 @@
}
}
return memberList;
-
-
-
}
@@ -656,8 +719,10 @@
.last(" limit 1 ")
);
+ JkCabinet jkCabinet = jkCabinetMapper.selectById(dto.getCabinetId());
+ Constants.WarningConfig warningConfig = Constants.WarningConfig.ALARM_TEST;
Warning warning = warningMapper.selectOne(new QueryWrapper<Warning>().lambda()
- .eq(Warning::getType,Constants.THREE).eq(Warning::getCode,Constants.WarningConfig.KEY_TIME_OUT_BACK.getKey()).eq(Warning::getIsdeleted,Constants.ZERO).last("limt 1"));
+ .eq(Warning::getType,Constants.THREE).eq(Warning::getCode,warningConfig.getKey()).eq(Warning::getIsdeleted,Constants.ZERO).last("limt 1"));
if(Objects.isNull(warning)){
return;
}
@@ -665,8 +730,44 @@
if(CollectionUtils.isEmpty(memberList)){
return;
}
- //todo 瀛樺偍寮傚父鏃ュ織
-
+ // 瀛樺偍寮傚父鏃ュ織
+ WarningPush warningPush = new WarningPush();
+ warningPush.setCreateDate(new Date());
+ warningPush.setIsdeleted(Constants.ZERO);
+ warningPush.setWarningId(warning.getId());
+ warningPush.setTitle(warningConfig.getInfo());
+ String content = "";
+ if(Objects.nonNull(systemUser.getRealname())){
+ content = content + systemUser.getRealname();
+ }
+ if(Objects.nonNull(jkCabinet)){
+ content = content + "浜�"+jkCabinet.getName()+"閽ュ寵鏌�";
+ }
+ content = content + "閰掔簿妫�娴嬪紓甯�";
+ warningPush.setContent(content + "閰掔簿妫�娴嬪紓甯革紝閰掔簿搴︽暟銆�"+dto.getAlcoholNum()+"掳銆�");
+ if(Objects.nonNull(dto.getAlcoholNum())){
+ content = content + "锛岄厭绮惧害鏁般��"+dto.getAlcoholNum()+"掳銆�";
+ }
+ warningPush.setContent(content);
+ warningPush.setStatus(Constants.ZERO);
+ warningPush.setPushType(Constants.ZERO);
+ warningPush.setRegion(Objects.nonNull(jkCabinet)&&StringUtils.isNotBlank(jkCabinet.getLocation())?jkCabinet.getLocation():"鏈煡浣嶇疆");
+ warningPush.setMemberId(dto.getMemberId());
+ warningPush.setMemberIds(
+ StringUtils.join(memberList.stream().map(i->i.getId()).collect(Collectors.toList()),",")
+ );
+ warningPush.setMemberIds(
+ StringUtils.join(memberList.stream().map(i->i.getId()).collect(Collectors.toList()),",")
+ );
+ warningPush.setMemberNames(StringUtils.join(memberList.stream().map(i->i.getName()).collect(Collectors.toList()),",")
+ );
+ //todo 鏆傛椂鍏抽棴 閽夐拤閫氱煡
+
+// Boolean noticeFlag = dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
+// StringUtils.join(memberList.stream().filter(i->StringUtils.isNotBlank(i.getDdId())).map(i->i.getDdId()).collect(Collectors.toList()),","),
+// dingTalk.getAlarmNoticeMsg(warningPush.getRegion(),DateUtil.getCurrDateTime(),warningConfig.getInfo()));
+// warningPush.setStatus(noticeFlag?Constants.ONE:Constants.TWO);
+ warningPushMapper.insert(warningPush);
//瀛樺偍寮傚父鏃ュ織
if(Objects.nonNull(systemUser)){
log.error("鍙告満閰掔簿妫�娴嬶紝瓒呭嚭閰掔簿鍊煎憡璀︿俊鎭細{}"+JSONObject.toJSONString(systemUser));
@@ -675,4 +776,7 @@
}
+
+
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetLogServiceImpl.java
index 3147486..6d202cd 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetLogServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetLogServiceImpl.java
@@ -1,7 +1,11 @@
package com.doumee.service.business.impl;
import cn.hutool.core.bean.BeanUtil;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.WarningMapper;
+import com.doumee.dao.business.WarningPushMapper;
+import com.doumee.dao.business.WarningRuleMapper;
import com.doumee.dao.business.dto.TelecomCabinetLogDTO;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.TelecomJkCabinetLogVO;
@@ -21,8 +25,10 @@
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
import java.util.Objects;
+import java.util.stream.Collectors;
/**
* 閽ュ寵鏌滃紑鍏抽棬璁板綍Service瀹炵幇
@@ -35,6 +41,16 @@
@Autowired
private JkCabinetLogMapper jkCabinetLogMapper;
+ @Autowired
+ private WarningMapper warningMapper;
+ @Autowired
+ private WarningRuleMapper warningRuleMapper;
+
+ @Autowired
+ private WarningPushMapper warningPushMapper;
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Override
public Integer create(JkCabinetLog jkCabinetLog) {
jkCabinetLogMapper.insert(jkCabinetLog);
@@ -154,6 +170,7 @@
.ge(Objects.nonNull(model.getStartDate()),JkCabinetLog::getCreateDate, Utils.Date.getStart(model.getStartDate()))
.le(Objects.nonNull(model.getEndDate()),JkCabinetLog::getCreateDate, Utils.Date.getEnd(model.getEndDate()))
.eq(JkCabinetLog::getIsdeleted, Constants.ZERO)
+ .eq(JkCabinetLog::getType,Constants.ONE)
.eq(JkCabinetLog::getKeyStatus,Constants.TWO)
.orderByDesc(JkCabinetLog::getCreateDate);
List<JkCabinetLog> jkCabinetLogs = jkCabinetLogMapper.selectJoinList(JkCabinetLog.class,wrapper);
@@ -171,5 +188,68 @@
+ @Override
+ public void timeOutUnBackAlarm(JkCabinetGridServiceImpl impl){
+ Constants.WarningConfig warningConfig = Constants.WarningConfig.KEY_TIME_OUT_BACK;
+ Warning warning = warningMapper.selectOne(new QueryWrapper<Warning>().lambda()
+ .eq(Warning::getType,Constants.THREE).eq(Warning::getCode,warningConfig.getKey()).eq(Warning::getIsdeleted,Constants.ZERO).last("limt 1"));
+ if(Objects.isNull(warning)){
+ return;
+ }
+ MPJLambdaWrapper<JkCabinetLog> wrapper = new MPJLambdaWrapper<JkCabinetLog>()
+ .selectAll(JkCabinetLog.class)
+ .selectAs(Member::getName,JkCabinetLog::getMemberName)
+ .selectAs(JkKeys::getCode,JkCabinetLog::getCarCode)
+ .selectAs(JkCabinet::getLocation,JkCabinetLog::getLocation)
+ .leftJoin(JkCabinet.class,JkCabinet::getId,JkCabinetLog::getCabinetId)
+ .leftJoin(JkKeys.class,JkKeys::getId,JkCabinetLog::getKeyId)
+ .leftJoin(Member.class,Member::getId,JkCabinetLog::getMemberId)
+ .eq(JkCabinetLog::getIsdeleted,Constants.ZERO)
+ .eq(JkCabinetLog::getType,Constants.ONE)
+ .eq(JkCabinetLog::getIsNotice,Constants.ZERO)
+ .eq(JkKeys::getStatus,Constants.TWO)
+ .isNull(JkCabinetLog::getCloseLogId)
+ .apply(" now() > DATE_ADD(t.CREATE_DATE, INTERVAL ifnull(t1.USE_TIME,0) MINUTE) ")
+ .orderByDesc(JkCabinetLog::getCreateDate);
+ List<JkCabinetLog> jkCabinetLogs = jkCabinetLogMapper.selectJoinList(JkCabinetLog.class,wrapper);
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(jkCabinetLogs)){
+ List<Member> memberList = impl.getWarningList(warning);
+
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)){
+ for (JkCabinetLog jkCabinetLog:jkCabinetLogs) {
+ WarningPush warningPush = new WarningPush();
+ warningPush.setCreateDate(new Date());
+ warningPush.setIsdeleted(Constants.ZERO);
+ warningPush.setWarningId(warning.getId());
+ warningPush.setTitle(warningConfig.getInfo());
+ String content = "銆愯溅杈�-"+jkCabinetLog.getCarCode()+"閽ュ寵銆戠敱+"+(StringUtils.isNotBlank(jkCabinetLog.getMemberName())?jkCabinetLog.getMemberName():"鏈煡浜哄憳")+"鍊熷嚭锛岃秴鏃舵湭褰掕繕";
+ warningPush.setContent(content);
+ warningPush.setStatus(Constants.ZERO);
+ warningPush.setPushType(Constants.ZERO);
+ warningPush.setRegion( StringUtils.isNotBlank(jkCabinetLog.getLocation())?jkCabinetLog.getLocation():"鏈煡浣嶇疆");
+ warningPush.setMemberIds(
+ StringUtils.join(memberList.stream().map(i->i.getId()).collect(Collectors.toList()),",")
+ );
+ warningPush.setMemberIds(
+ StringUtils.join(memberList.stream().map(i->i.getId()).collect(Collectors.toList()),",")
+ );
+ warningPush.setMemberNames(StringUtils.join(memberList.stream().map(i->i.getName()).collect(Collectors.toList()),",")
+ );
+ //todo 鏆傛椂鍏抽棴 閽夐拤閫氱煡
+
+ // Boolean noticeFlag = dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
+ // StringUtils.join(memberList.stream().filter(i->StringUtils.isNotBlank(i.getDdId())).map(i->i.getDdId()).collect(Collectors.toList()),","),
+ // dingTalk.getAlarmNoticeMsg(warningPush.getRegion(),DateUtil.getCurrDateTime(),content));
+ // warningPush.setStatus(noticeFlag?Constants.ONE:Constants.TWO);
+ warningPushMapper.insert(warningPush);
+
+ }
+ }
+ }
+
+
+ }
+
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java
index 1332ee3..7f25156 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java
@@ -85,7 +85,7 @@
|| Objects.isNull(jkCabinet.getSortType())
|| (
Constants.equalsInteger(jkCabinet.getNoType(),Constants.ONE)
- && ( Objects.isNull(jkCabinet.getNoIndex()) || Objects.isNull(jkCabinet.getNoLength()) || StringUtils.isBlank(jkCabinet.getNoPrefix()) )
+ && ( Objects.isNull(jkCabinet.getNoIndex()) || Objects.isNull(jkCabinet.getNoLength()) )
)
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
@@ -134,7 +134,7 @@
if(Constants.equalsInteger(jkCabinet.getNoType(),Constants.ZERO)){
grid.setCode(StringUtils.leftPad(startNo.toString(),maxNum.toString().length()+1,"0"));
}else{
- grid.setCode(jkCabinet.getNoPrefix() + StringUtils.leftPad(startNo.toString(),jkCabinet.getNoLength(),"0"));
+ grid.setCode(StringUtils.isNotBlank(jkCabinet.getNoPrefix())?jkCabinet.getNoPrefix():"" + StringUtils.leftPad(startNo.toString(),jkCabinet.getNoLength(),"0"));
}
jkCabinetGridList.add(grid);
@@ -412,7 +412,7 @@
jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class, new MPJLambdaWrapper<JkCabinetGrid>()
.selectAll(JkCabinetGrid.class)
.selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode)
- .selectAs(JkKeys::getCode,JkCabinetGrid::getKeyCode)
+ .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
.selectAs(JkKeys::getStatus,JkCabinetGrid::getKeyStatus)
.leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId)
.eq(JkCabinetGrid::getIsdeleted,Constants.ZERO)
@@ -504,7 +504,7 @@
List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
.eq(Member::getIsdeleted,Constants.ZERO)
.isNotNull(Member::getFaceImg)
- .apply(" FIND_IN_SET( id ,'"+jkCabinet.getManagerId()+"') ")
+ .apply(" FIND_IN_SET( id ,'"+jkCabinet.getAuthMemberId()+"') ")
);
if(CollectionUtils.isNotEmpty(memberList)){
for (Member member:memberList) {
@@ -541,7 +541,7 @@
.selectAll(JkCabinetGrid.class)
.selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode)
.selectAs(JkKeys::getStatus,JkCabinetGrid::getKeyStatus)
- .selectAs(JkKeys::getCode,JkCabinetGrid::getKeyCode)
+ .selectAs(JkKeys::getRfidLable,JkCabinetGrid::getKeyCode)
.leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId)
.eq(JkCabinetGrid::getIsdeleted,Constants.ZERO)
.eq(JkCabinetGrid::getCabinetId,jkCabinet.getId())
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkIccardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkIccardServiceImpl.java
index 7900f83..aa6b0dc 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkIccardServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkIccardServiceImpl.java
@@ -4,6 +4,7 @@
import com.doumee.core.exception.BusinessException;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
+import com.doumee.dao.business.dto.QueryUserByCodeDTO;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.third.model.LoginUserInfo;
@@ -181,16 +182,24 @@
@Override
- public Integer getMemberIdByCode(String code){
+ public Integer getMemberIdByCode(QueryUserByCodeDTO dto){
+ if(Objects.isNull(dto)
+ || Objects.isNull(dto.getUserType())
+ || StringUtils.isBlank(dto.getCode())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
JkIccard jkIccard = jkIccardMapper.selectOne(new QueryWrapper<JkIccard>().lambda()
.eq(JkIccard::getIsdeleted,Constants.ZERO)
- .eq(JkIccard::getStatus,Constants.ONE)
- .eq(JkIccard::getCode,code)
+ .eq(JkIccard::getUserType,dto.getUserType())
+ .eq(JkIccard::getCode,dto.getCode())
.last(" limit 1 ")
);
if(Objects.isNull(jkIccard)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
+ if(!Constants.equalsInteger(jkIccard.getStatus(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝褰撳墠IC鍗″凡琚鐢紒");
+ }
return jkIccard.getMemberId();
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkKeysServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkKeysServiceImpl.java
index 2082dc5..20134ae 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkKeysServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkKeysServiceImpl.java
@@ -49,7 +49,7 @@
|| Objects.isNull(jkKeys.getCarId())
|| Objects.isNull(jkKeys.getRoleType())
|| StringUtils.isBlank(jkKeys.getCode())
- || StringUtils.isBlank(jkKeys.getRfidLable())
+ || StringUtils.isBlank(jkKeys.getRfidCode())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
@@ -65,10 +65,15 @@
if(Objects.nonNull(carsKeys)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠杞﹁締宸茶閽ュ寵["+carsKeys.getCode()+"]缁戝畾浣跨敤锛�");
}
- JkKeys rfidKeys = jkKeysMapper.selectOne(new QueryWrapper<JkKeys>().lambda().eq(JkKeys::getRfidLable,jkKeys.getRfidLable()).eq(JkKeys::getIsdeleted,Constants.ZERO).last("limit 1"));
+ JkKeys rfidKeys = jkKeysMapper.selectOne(new QueryWrapper<JkKeys>().lambda().eq(JkKeys::getRfidCode,jkKeys.getRfidCode()).eq(JkKeys::getIsdeleted,Constants.ZERO).last("limit 1"));
if(Objects.nonNull(rfidKeys)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠RFID鏍囩宸茶閽ュ寵["+rfidKeys.getCode()+"]浣跨敤锛�");
}
+ String lable = Constants.getRFIDNumber(jkKeys.getRfidCode());
+ if(StringUtils.isEmpty(lable)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"RFID鏍囩璁剧疆澶辫触銆愭牸寮忎笉姝g‘銆�");
+ }
+ jkKeys.setRfidLable(lable);
LoginUserInfo loginUserInfo = jkKeys.getLoginUserInfo();
jkKeys.setCreateDate(new Date());
jkKeys.setEditDate(jkKeys.getCreateDate());
@@ -114,10 +119,15 @@
|| Objects.isNull(jkKeys.getCarId())
|| Objects.isNull(jkKeys.getRoleType())
|| StringUtils.isBlank(jkKeys.getCode())
- || StringUtils.isBlank(jkKeys.getRfidLable())
+ || StringUtils.isBlank(jkKeys.getRfidCode())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ String lable = Constants.getRFIDNumber(jkKeys.getRfidCode());
+ if(StringUtils.isEmpty(lable)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"RFID鏍囩璁剧疆澶辫触銆愭牸寮忎笉姝g‘銆�");
+ }
+ jkKeys.setRfidLable(lable);
//鏌ヨ缂栧彿鏄惁閲嶅
if(jkKeysMapper.selectCount(new QueryWrapper<JkKeys>().lambda().ne(JkKeys::getId,jkKeys.getId()).eq(JkKeys::getCode,jkKeys.getCode()).eq(JkKeys::getIsdeleted,Constants.ZERO))>Constants.ZERO){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閽ュ寵缂栧彿宸插瓨鍦紒");
@@ -134,6 +144,7 @@
if(Objects.nonNull(rfidKeys)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠RFID鏍囩宸茶閽ュ寵["+rfidKeys.getCode()+"]浣跨敤锛�");
}
+
LoginUserInfo loginUserInfo = jkKeys.getLoginUserInfo();
jkKeys.setEditDate(new Date());
jkKeys.setEditor(loginUserInfo.getId());
--
Gitblit v1.9.3