From 165b038153aa55f465a225d421616d32e472c889 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 20 八月 2024 18:16:58 +0800
Subject: [PATCH] 最新版本
---
server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 11
admin/src/components/business/OperaPlatformWindow.vue | 8
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmRequest.java | 13 +
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/IccmAppointmentListRequest.java | 21 +
server/README.md | 7
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInfoRequest.java | 17 +
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInvoiceParamRequest.java | 45 +++
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmTargetParamRequest.java | 23 +
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDetailParamRequest.java | 29 ++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java | 4
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentListResponse.java | 31 ++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 172 ++++++++++++++
server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmValuesParamRequest.java | 41 +++
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java | 18 +
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java | 9
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentVisitorResponse.java | 28 ++
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java | 9
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmParamRequest.java | 17 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java | 116 ++++++++-
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDataRequest.java | 29 ++
server/visits/admin_timer/src/main/java/com/doumee/api/HkVisitTimerController.java | 2
24 files changed, 648 insertions(+), 23 deletions(-)
diff --git a/admin/src/components/business/OperaPlatformWindow.vue b/admin/src/components/business/OperaPlatformWindow.vue
index 512982d..c0157fb 100644
--- a/admin/src/components/business/OperaPlatformWindow.vue
+++ b/admin/src/components/business/OperaPlatformWindow.vue
@@ -54,7 +54,7 @@
<el-input type="number" v-model="form.workTimeoutAlarmTime" placeholder="璇疯緭鍏ヤ綔涓氳秴鏃舵姤璀︽椂闂�(鍒嗛挓)" v-trim/>
</el-form-item>
<el-form-item label="鍋滅暀瓒呮椂鎶ヨ鏃堕棿(鍒嗛挓锛夛細" prop="stayTmeoutAlarmTime">
- <el-input type="number" v-model="form.stayTmeoutAlarmTime" placeholder="璇疯緭鍏ヨ杈撳叆鍋滅暀瓒呮椂鎶ヨ鏃堕棿(鍒嗛挓)" v-trim/>
+ <el-input type="number" v-model="form.stayTmeoutAlarmTime" placeholder="璇疯緭鍏ュ仠鐣欒秴鏃舵姤璀︽椂闂�(鍒嗛挓)" v-trim/>
</el-form-item>
</el-form>
</GlobalWindow>
@@ -110,6 +110,9 @@
open (title, target) {
this.title = title
this.visible = true
+ this.loadGroupList()
+ this.loadLedList()
+ this.loadBroadcastList()
// 鏂板缓
if (target == null) {
this.$nextTick(() => {
@@ -126,9 +129,6 @@
}
this.form.workingNum = this.form.workingNum || 1
})
- this.loadGroupList()
- this.loadLedList()
- this.loadBroadcastList()
},
loadGroupList () {
allList({})
diff --git a/server/README.md b/server/README.md
index 15ddd87..7616c54 100644
--- a/server/README.md
+++ b/server/README.md
@@ -2,5 +2,12 @@
瀹樼綉锛歨ttp://eva.adjustrd.com/
鎶�鏈敮鎸丵Q缇わ細877957236
+1銆佸畨瑁卬acos鏈嶅姟
+2銆佹寜鐓ysql5.x
+3銆乯dk1.8瀹夎
+4銆乺edis瀹夎
+5銆乫tp瀹夎
+
+
nohup java -Xms512m -Xmx512m -Xmn512m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=10018 -jar /usr/local/jars/dmvisit/openapi.jar >/usr/local/jars/dmvisit/web.log 2>/usr/local/jars/dmvisit/err.log &
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 90cea78..fde9d51 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
@@ -160,7 +160,16 @@
return sb.toString();
}
-
+ public interface VisitIccmStatus{
+ //璁垮鐘舵��(0:鏈鍒�,1:宸茬鍒�,2:宸茬閫�,3:婊炵暀,4:鏈闂�,5:鑷姩绛剧,6:鏈閫�)
+ int waitSign = 0;
+ int signin= 1;
+ int signout = 2;
+ int noleave =3;
+ int novisit =4;
+ int autoOut =5;
+ int noSignout =6;
+ }
public interface DATAPERMISSION_TYPE{
public static final int all = 0;
public static final int departAndChild = 1;
diff --git a/server/visits/admin_timer/src/main/java/com/doumee/api/HkVisitTimerController.java b/server/visits/admin_timer/src/main/java/com/doumee/api/HkVisitTimerController.java
index b6e4cac..4f7e4c8 100644
--- a/server/visits/admin_timer/src/main/java/com/doumee/api/HkVisitTimerController.java
+++ b/server/visits/admin_timer/src/main/java/com/doumee/api/HkVisitTimerController.java
@@ -37,7 +37,7 @@
@ApiOperation("寮�鍚畾鏃舵煡璇㈣瀹㈤绾︾姸鎬�")
@GetMapping("/getOutTimeVisitRecord")
public ApiResponse getOutTimeVisitRecord() {
- hkSyncVisitService.getOutTimeVisitRecord();
+ hkSyncVisitService.getOutTimeVisitRecordIccm();
return ApiResponse.success("寮�鍚畾鏃舵煡璇㈣瀹㈤绾︾姸鎬佹垚鍔�");
}
@ApiOperation("寮�鍚畾鏃朵粖鏃ョ殑璁垮棰勭害鏁版嵁")
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 48c67b6..254b0ef 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
@@ -6,6 +6,7 @@
import com.doumee.core.haikang.model.param.request.*;
import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.utils.Constants;
@@ -111,6 +112,12 @@
String result = hkSyncPushService.dealVisitEvent(param,response);
return ApiResponse.success(result);
}
+ @ApiOperation("銆愭捣搴枫�戣瀹CCM浜嬩欢璁㈤槄鎺ㄩ�佸鎺ュ鐞嗘帴鍙�")
+ @PostMapping("/push/visitIccm")
+ public ApiResponse pushVisitIccm(@RequestBody EventVisitIccmRequest param, HttpServletResponse response) {
+ String result = hkSyncPushService.dealVisitEventIccm(param,response);
+ return ApiResponse.success(result);
+ }
// @PreventRepeat
@ApiOperation("銆愭捣搴枫�戝仠杞﹀満浜嬩欢璁㈤槄鎺ㄩ�佸鎺ュ鐞嗘帴鍙�")
@PostMapping("/push/parks")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
index b7deb0a..cb10fb7 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
@@ -106,6 +106,13 @@
HKService.cancelEventSub(param);//鍏堝彇娑�
HKService.eventSub(param);//闂ㄧ浜嬩欢
+ param.setEventDest(path+"/visitIccm");
+ param.setEventTypes(new Integer[]{HKConstants.EventTypes.VISIT_SIGN_ICCM_IN.getKey()
+ ,HKConstants.EventTypes.VISIT_SIGN_ICCM_PASS.getKey()
+ ,HKConstants.EventTypes.VISIT_SIGN_ICCM_OUT.getKey()});
+ HKService.cancelEventSub(param);//鍏堝彇娑�
+ HKService.eventSub(param);//璁垮浜嬩欢
+
param.setEventDest(path+"/platform/workstatus");
param.setEventTypes(new Integer[]{HKConstants.EventTypes.PLATFORM_WORKSTATUS.getKey()});
HKService.cancelEventSub(param);//鍏堝彇娑�
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
index 5b38a01..787c633 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
@@ -104,7 +104,7 @@
String iccmAppointmentMDJ= "/api/iccm/v1/appointment/free/registration";//iccm璁垮棰勭害鍏嶇櫥璁�
String privilegIccmeGroup= "/api/iccm/v1/privilege/groups";//鏌ヨ璁垮鏉冮檺缁�
- String iccmAppointmentInfo= "/api/iccm/v1/appointment/registration";//iccm鏌ヨ宸查绾︾櫥璁�
+ String iccmAppointmentRecords= "/api/iccm/v2/appointment/records";//iccm鏌ヨ宸查绾︾櫥璁�
}
/**
@@ -241,10 +241,15 @@
PARK_PASS_OUT(771760134, "鍑哄満鏀捐浜嬩欢" ),
VISIT_SIGN_IN(1392513025, "璁垮鐧昏" ),
VISIT_SIGN_OUT(1392513026, "璁垮绛剧" ),
+
+ VISIT_SIGN_ICCM_IN(541200006, "璁垮鐧昏" ),
+ VISIT_SIGN_ICCM_OUT(541200007, "璁垮绛剧" ),
+ VISIT_SIGN_ICCM_PASS(541200060, "璁垮閫氳" ),
DOOR_FACE_AUTH_FAIL(197163, "浜鸿劯璁よ瘉澶辫触" ),
DOOR_FACE_AUTH_SUCCESS(196893, "浜鸿劯璁よ瘉閫氳繃" ),
PLATFORM_WORKSTATUS(483329, "鏈堝彴宸ヤ綔鐘舵�佷簨浠�" ),
PLATFORM_CAR_STATUS(487425, "鏈堝彴杞﹁締鐘舵�佷簨浠�" )
+
;
// 鎴愬憳鍙橀噺
private String name;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
index 51ed3d1..f13409d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
@@ -527,6 +527,15 @@
public static String appointmentRecords(String body) {
return startDoPostStringArtemis(HKConstants.InterfacePath.appointmentRecords,body);
}
+
+ /**
+ * 鑾峰彇璁垮棰勭害璁板綍鍒楄〃 iccm
+ * @param body
+ * @return
+ */
+ public static String iccmAppointmentRecords(String body) {
+ return startDoPostStringArtemis(HKConstants.InterfacePath.iccmAppointmentRecords,body);
+ }
/**
* 鑾峰彇鍏ㄩ噺缁勭粐鍒楄〃
* @param body
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/IccmAppointmentListRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/IccmAppointmentListRequest.java
new file mode 100644
index 0000000..c38df38
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/IccmAppointmentListRequest.java
@@ -0,0 +1,21 @@
+package com.doumee.core.haikang.model.param.request;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class IccmAppointmentListRequest {
+ private String orderId;// String false 璁垮鍗曞彿
+private int pageSize ;//Number true 鍒嗛〉澶у皬
+private String phoneNo;// String false 璁垮鑱旂郴鐢佃瘽锛屼粎鏀寔1-20浣嶇函鏁板瓧
+private String QRCode ;//String false 浜岀淮鐮佸唴瀹�
+private String visitorName;// String false 琚浜哄鍚�
+private int pageNo;// Number true 椤电爜
+private String receptionistId;// String false 琚浜篿d
+private List<Integer> visitorStatusList;// Array false 璁垮鐘舵�侀泦鍚�(0:寰呭鎵�,1:寰呰闂�,2:宸查┏鍥�,3:宸蹭綔搴�,4:宸插彇娑�,5:宸插畬鎴�)
+ private String visitStartTimeBegin;// String false 璁″垝鏉ヨ鏃堕棿璧峰鏃堕棿
+private String visitStartTimeEnd;// String false 璁″垝鏉ヨ鏃堕棿缁撴潫鏃堕棿
+private String visitEndTimeBegin ;//String false 璁″垝绂诲紑鏃堕棿璧峰鏃堕棿
+private String visitEndTimeEnd;// String false 璁″垝绂诲紑鏃堕棿缁撴潫鏃堕棿
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDataRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDataRequest.java
new file mode 100644
index 0000000..e8517db
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDataRequest.java
@@ -0,0 +1,29 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventVisitIccmDataRequest {
+
+ /**
+ * 棰勭害璁板綍淇℃伅
+ */
+ private EventVisitIccmInvoiceParamRequest visitorInvoices;
+ /**
+ * 琚浜轰俊鎭�
+ */
+ private EventVisitIccmTargetParamRequest targetPerson;
+ /**
+ * 琚浜轰俊鎭�
+ */
+ private EventVisitIccmValuesParamRequest paramValues;
+
+ /**
+ * 鎷滆浜轰俊鎭�
+ */
+ private List<EventVisitIccmDetailParamRequest> visitorInformationList;
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDetailParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDetailParamRequest.java
new file mode 100644
index 0000000..46d0c2d
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmDetailParamRequest.java
@@ -0,0 +1,29 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitIccmDetailParamRequest {
+
+ private String visitorId;// eda8994f399544aaaee6eca64ed79827, #璁垮id
+ private String visitorName;// 灏忓垬, #璁垮鍚嶇О
+ private Integer sex;// 1, #璁垮鎬у埆
+ private String phone;// 18229602833, #璁垮鎵嬫満鍙�
+ private String unit;// , #璁垮鍗曚綅
+ private Integer certType;// 111, #璁垮璇佷欢绫诲瀷
+ private String certNo;// , #璁垮璇佷欢鍙风爜
+ private String certPicUrl;// , #璁垮璇佷欢鐓ase64
+ private String faceUrl;// , #浜鸿劯base64
+ private String plateNo;// , #璁垮涓汉淇℃伅閲岀殑杞︾墝
+ private String createTime;// 2023-02-16T20;//19;//46.382+08;//00,
+ private String updateTime;// 2023-02-16T20;//19;//46.382+08;//00,
+ private String visitNum;// 0,
+ private String isBlocked;// 0, #鏄惁鎷夐粦
+ private String tempCardNo;// 123456, #缁戝畾鐨勪复鏃跺崱鍙�
+ private String companionPerson;// 0, #鏄惁涓洪�氳浜猴細0涓嶆槸1鏄�
+ private String cardNo;// 1676549986273, #璁垮鍗″彿
+ private String appointmentCode;// 5998, #璁垮鐮�
+ private String facePic;// /pic?ad00=3001led-do671a*o0d1=4686*2l4767184156*8tp===119***sb9=defce2d7736fc--*49e3=pi17fo=0-510090, #璁垮浜鸿劯鍥剧墖
+ private String faceDeviceId;// 894c1bfa-e8a7-419a-84d1-1a1fb5f3896a #鍥剧墖璁惧id
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInfoRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInfoRequest.java
new file mode 100644
index 0000000..de7773e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInfoRequest.java
@@ -0,0 +1,17 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitIccmInfoRequest {
+ 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 EventVisitIccmDataRequest data;
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInvoiceParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInvoiceParamRequest.java
new file mode 100644
index 0000000..3b1a92e
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmInvoiceParamRequest.java
@@ -0,0 +1,45 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitIccmInvoiceParamRequest {
+
+ private String invoicesId;// 5bc15cabf24141c6ab3da357e29e5d53, #璁垮鍗昳d
+ private String invoicesNo;// FK20230220090002, #璁垮鍗曞彿
+ private String visitorId;// eda8994f399544aaaee6eca64ed79827, #璁垮id
+ private String visitorTypeId;// , #璁垮绫诲瀷id
+ private String deptId;// fe3d4470fa824449b8dcdf34e833890e, #璁块棶閮ㄩ棬id
+ private String campusId;// 39ce5586087c4d78873ff187396acf5b, #鍥尯id
+ private String visitReason;// 7744d9691f1e45b7b4a06394280e45a3, #璁块棶浜嬬敱id
+ private String visitReasonRemark;// , #璁块棶浜嬬敱澶囨敞
+ private String visitTargetId;// 2cb0bd1b312941569c43f64d781b7cf7, #琚浜篿d
+ private String companionIds;// , #鍚岃浜篿d,閫楀彿鍒嗗壊
+ private String type;// 0, #绫诲瀷锛�0锛岄绾︼紱1锛岄個绾�
+ private String appointmentType;// 0, #棰勭害绫诲瀷锛�0锛氭櫘閫氶绾︼紱1锛氬揩閫熼绾︼紱2;//鍏嶇櫥璁伴绾�; 3;// 绗笁鏂归绾� ; 4;//璁垮鏈洪绾�; 5;// 浼氱璁垮棰勭害; 6;// 蹇�熼個绾�; 7;//鏅�氶個绾�; 8;//绾ц仈閭�绾�; 9;//绾ц仈蹇�熼绾�; 10;//绾ц仈棰勭害
+ private String workflowInstanceId;// f1b53b54414641d58cd7cd332105d723, #娴佺▼id
+ private String approveRemark;// , #娴佺▼瀹℃壒澶囨敞
+ private String ifInfoAbnormal;// 0,
+ private String beginTime;// 2023-02-20T10;//00;//00.000+08;//00, #璁块棶寮�濮嬫椂闂�
+ private String finishTime;// 2023-02-20T23;//30;//00.000+08;//00, #璁块棶缁撴潫鏃堕棿
+ private String invoicesStatus;// 3, #璁垮鍗曠姸鎬�(0;//寰呭鎵�,1;//寰呰闂�,2;//宸查┏鍥�,3;//宸蹭綔搴�,4;//宸插彇娑�,5;//宸插畬鎴�)
+ private String workflowInitiatorId;// eda8994f399544aaaee6eca64ed79827, #娴佺▼鍙戣捣浜篿d
+ private String workflowInitiatorType;// 0, #娴佺▼鍙戣捣浜虹被鍨�(0;//璁垮,1;//鍛樺伐)
+ private String operator;// eda8994f399544aaaee6eca64ed79827, #鎿嶄綔浜�
+ private String operatorType;// 0, #鎿嶄綔浜虹被鍨�(0;//璁垮,1;//鍛樺伐)
+ private String extendJson;// , #鎵╁睍瀛楁
+ private String authIssueStatus;// 0, #鏉冮檺涓嬪彂鐘舵��(0;//鏈笅鍙�,1;//涓嬪彂鎴愬姛,2;//涓嬪彂澶辫触,3;//鏉冮檺娓呴櫎,4;//鏉冮檺鍥炴敹)
+ private String createTime;// 2023-02-20T09;//43;//39.479+08;//00, #鍒涘缓鏃堕棿
+ private String updateTime;// 2023-02-20T19;//42;//32.640+08;//00,
+ private String campusName;// 鍗曠嫭鍋滆溅鍦烘祴璇�, #鍥尯鍚嶇О
+ private String deptName;// 榛樿閮ㄩ棬, #閮ㄩ棬鍚嶇О
+ private String visitorTypeName;// 鏅�氳瀹�, #璁垮绫诲瀷
+ private String sceneNames;// 娴嬭瘯7, #鏉冮檺鍦烘櫙鍚嶇О锛屽涓�楀彿鍒嗛殧
+ private String visitReasonName;// 鍟嗗姟娲借皥, #璁块棶浜嬬敱鍚嶇О
+ private String regionId;//eda8994f399544aaaee6eca64ed79827,#鍖哄煙id锛�2.2鏀寔锛�2.3搴熷純璇ュ瓧娈�
+ private String regionName;//婊ㄦ睙,#鍖哄煙鍚嶇О锛�2.2鏀寔锛�2.3搴熷純璇ュ瓧娈�
+ private String campusRegionIds;//pda8994f399544aaaee6eca64ed79828,#鍖哄煙id锛�2.3鏀寔
+ private String campusRegionNames;//娴峰悍涓夋湡, #鍖哄煙鍚嶇О锛�2.3鏀寔
+ private String isRepast;//1 #璁垮灏遍,0;//鍚�,1;//鏄�
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmParamRequest.java
new file mode 100644
index 0000000..64c7a96
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmParamRequest.java
@@ -0,0 +1,17 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class EventVisitIccmParamRequest {
+
+
+ private String sendTime;// P String 浜嬩欢浠庢帴鏀惰�咃紙绋嬪簭澶勭悊鍚庯級鍙戝嚭鐨勬椂闂� 鏄� 32 浜嬩欢鍙戦�佹椂闂�
+ private String ability;// P String 浜嬩欢绫诲埆 鏄� 64 鏍囪瘑鍋滆溅鍦轰簨浠�
+ private String[] uids;// String[] 鐢ㄦ埛id 鍚� 涓嶉檺
+ private String[] clients ;//String[] 缁勪欢鏍囪瘑 鍚� 涓嶉檺
+ private List<EventVisitIccmInfoRequest> events;// P Events[] 浜嬩欢淇℃伅 鏄� 涓嶉檺
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmRequest.java
new file mode 100644
index 0000000..cfa1802
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmRequest.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitIccmRequest {
+
+// private String parkIndexCodes ;// string False 鍋滆溅搴撳敮涓�鏍囪瘑闆嗗悎 澶氫釜鍊间娇鐢ㄨ嫳鏂囬�楀彿鍒嗛殧锛屼笉瓒呰繃1000涓�
+
+ private String method ;// String 鏂规硶鍚嶏紝鐢ㄤ簬鏍囪瘑鎶ユ枃鐢ㄩ�� 鏄� 16 浜嬩欢鍥哄畾OnEventNotify
+ private EventVisitIccmParamRequest params ;// Params 浜嬩欢鍙傛暟淇℃伅 鏄� 涓嶉檺 鍏蜂綋鍙傛暟淇℃伅
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmTargetParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmTargetParamRequest.java
new file mode 100644
index 0000000..733adcb
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmTargetParamRequest.java
@@ -0,0 +1,23 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitIccmTargetParamRequest {
+
+ private String personId;// 2cb0bd1b312941569c43f64d781b7cf7, #琚浜篿d
+ private String personNumber;// 10001, #琚浜哄伐鍙�
+ private String name;// Lhk绠$悊鍛�, #琚浜虹紪鍙�
+ private String sex;// 1, #琚浜烘�у埆
+ private String jobNo;// 10001, #琚浜哄伐鍙�
+ private String pinyin;// lhkguanliyuan, #琚浜烘嫾闊�
+ private String mobile;// 17700001111, #琚浜烘墜鏈哄彿
+ private String orgId;// root000000, #琚浜虹粍缁噄d
+ private String certType;// 111, #琚浜鸿瘉浠剁被鍨�
+ private String certificateNo;// 330282202302160001, #琚浜鸿瘉浠跺彿鐮�
+ private String orgPathName;// 榛樿缁勭粐, #琚浜虹粍缁�
+ private String userName;// Lhk绠$悊鍛�, #琚浜虹敤鎴峰悕
+ private String createTime;// 2023-02-16T10;//10;//51.683+08;//00,
+ private String updateTime;// 2023-02-20T19;//40;//54.138+08;//00
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmValuesParamRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmValuesParamRequest.java
new file mode 100644
index 0000000..9535b0b
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/event/visit/EventVisitIccmValuesParamRequest.java
@@ -0,0 +1,41 @@
+package com.doumee.core.haikang.model.param.request.event.visit;
+
+import lombok.Data;
+
+@Data
+public class EventVisitIccmValuesParamRequest {
+
+ private String type;// 1, #浜嬩欢婧愮被鍨嬶細1璁垮鏈�2淇濆畨浜哄伐3闂ㄧ4鍋滆溅鍦哄嚭鍏ュ彛5api6琚浜�
+ private String eventType;// 541200007, #541200006[绛惧埌娑堟伅閫氱煡],541200007[绛剧娑堟伅閫氱煡],541200009[璁垮婊炵暀]锛�541200060[閫氳浜嬩欢]
+ private String sourceName;// 1鍙烽棬绂�, #闂ㄧ鍚嶇О
+ private String eventId;// demoData, #浜嬩欢id
+ private String eventTypeName;// demoData, #浜嬩欢绫诲瀷鍚嶇О
+ private String happenTime;// 23/6/2 0002 11;//36, #鍙戠敓鏃堕棿
+ private String srcParentIndex;// demoData, #鐖剁被璧勬簮 indexcode
+ private String srcIndex;// demoData, #瀛愮被indexcode
+ private String srcName;// demoData, #璁惧鍚嶇О
+ private String srcType;// demoData, #璧勬簮绫诲瀷
+ private String extEventCardNo;// demoData, #鍗″彿
+ private String extEventInOut;// demoData, #闂ㄧ鐐瑰敮涓�鎺ュ叆缂栫爜
+ private String extEventPictureURL;// demoData, #鍥剧墖鐨剈rl
+ private String svrIndexCode;// demoData, #鍥剧墖鏈嶅姟鍣ㄥ敮涓�缂栫爜
+ private String extEventReaderKind;// demoData, #璇诲崱鍣ㄧ被鍒�
+ private String extEventReaderID;// demoData, #璇诲崱鍣╥d
+ private String userType;// demoData, #浜哄憳绫诲瀷锛�0鏈煡锛�1鏅�氾紝2鏉ュ锛�3榛戝悕鍗曪紝4绠$悊鍛�
+ private String visitorNames;// demoData, #璁垮濮撳悕,澶氫釜閫楀彿鎷兼帴
+ private String phones;// demoData, #鎵嬫満鍙�,澶氫釜閫楀彿鎷兼帴
+ private String certificateNos;// demoData, #韬唤璇�,澶氫釜閫楀彿鎷兼帴
+ private String certTypes;// 333, #璇佷欢绫诲瀷,澶氫釜閫楀彿鎷兼帴
+ private String invoicesIds;// 5a9e731d6b9043feb665282786dd8914, #璁垮鍗昳d,澶氫釜閫楀彿鎷兼帴
+ private String defineEventType;// 9, #浜嬩欢绫诲瀷
+ private String plateNos;// demoData, #杞︾墝鍙风爜,澶氫釜閫楀彿鎷兼帴
+ private String parkName;// demoData, #鍋滆溅搴撳悕绉�
+ private String parkIndex;// demoData, #鍋滆溅搴撶紪鍙�
+ private String gateName;// demoData,#鍑哄叆鍙e悕绉�
+ private String gateIndex;// demoData, #鍑哄叆鍙g紪鍙�
+ private String inOrOut;// 1,#杩涘嚭绫诲瀷锛�1杩涘叆2鍑哄幓
+ private String accessType;// 1, #浜嬩欢绫诲瀷锛�1闂ㄧ浜嬩欢2杞﹁締浜嬩欢
+ private String regionName;// demoData#鍖哄煙鍚嶇О,
+ private String typeId;//1 #鍓嶇璺宠浆url鐨則ypeId
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentListResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentListResponse.java
new file mode 100644
index 0000000..4fb4fb6
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentListResponse.java
@@ -0,0 +1,31 @@
+package com.doumee.core.haikang.model.param.respose;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class IccmAppointmentListResponse {
+
+
+ private String campusId ;//String false 鍥尯id
+private String campusName ;//String false 鍥尯鍚嶇О
+private String deptId ;//String false 閮ㄩ棬id
+private String deptName ;//String false 閮ㄩ棬鍚嶇О
+private String visitorTypeId;// String false 璁垮绫诲瀷id
+private String visitorTypeName;// String false 璁垮绫诲瀷
+private String appointRecordId;// String false 璁垮棰勭害璁板綍id
+private String orderId;// String false 璁垮鍗曞彿
+private String visitPurpose ;//String false 鏉ヨ浜嬬敱id
+private String visitPurposeName;// String false 鏉ヨ浜嬬敱
+private String visitEndTime;// String false 璁块棶缁撴潫鏃堕棿
+private String receptionistId ;//String false 琚浜篿d
+private String receptionistName;// String false 琚浜哄鍚�
+ private List<AppointmentResInfoResponse> designatedResources;// object False 鏉冮檺涓嬪彂鎸囧畾鐨勮祫婧愮偣闆嗗悎
+ private String[] privilegeGroupNames;// string[] False 鏉冮檺缁勫悕绉伴泦鍚�
+ private String visitStartTime;// String false 璁块棶寮�濮嬫椂闂�
+
+ private String oneOrPeople ;//String false 閫氳鐮佺瓥鐣� 0锛氫竴浜轰竴鐮� 1锛氬浜轰竴鐮�
+private String extensions ;//String false 鎵╁睍瀛楁
+ private List<IccmAppointmentVisitorResponse> visitorList;//Array false 璁垮鍒楄〃
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentVisitorResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentVisitorResponse.java
new file mode 100644
index 0000000..880242c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/IccmAppointmentVisitorResponse.java
@@ -0,0 +1,28 @@
+package com.doumee.core.haikang.model.param.respose;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class IccmAppointmentVisitorResponse {
+
+
+private String companion ;//Boolean false 鏄惁鍚岃浜�
+private String visitorId ;//String false 璁垮id
+private String phoneNo ;//String false 璁垮鎵嬫満鍙�
+private String visitorName ;//String false 璁垮濮撳悕
+private Integer gender ;// Number false 鎬у埆(1:鐢�,2:濂�)
+private String svrIndexCode ;//String false 鍥剧墖瀛樺偍鏈嶅姟鐨勫敮涓�鏍囪瘑
+private String picUri ;// String false 璁垮澶村儚,鍥剧墖鐨勭浉瀵筓RL
+private String identityUri ;//String false 璇佷欢鐓�,鍥剧墖鐨勭浉瀵筓RL
+private String identitySvrCode ;// String false 璇佷欢鐓у搴斿浘鐗囨湇鍔″櫒serviceNodes
+private String plateNo ;// String false 璁垮杞︾墝鍙�
+private String certificateNo ;//String false 璇佷欢鍙�
+private String visitorWorkUnit ;//String false 鏉ヨ鍗曚綅
+private Integer visitorStatus ;//Number false 璁垮鐘舵��(0:鏈鍒�,1:宸茬鍒�,2:宸茬閫�,3:婊炵暀,4:鏈闂�,5:鑷姩绛剧,6:鏈閫�)
+private Integer certificateType ;//Number false 璇佷欢绫诲瀷
+private String isCompanion ;//Boolean false 鏄惁鍚岃浜�
+private String appointmentCode ;//String false 璁垮鐮�
+private String QRCode ;// String false 鍔ㄦ�佷簩缁寸爜鍐呭
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
index 5b158f4..9889344 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -860,6 +860,24 @@
return null;
}
/**
+ *鏌ヨ璁垮棰勭害璁板綍锛堝垎椤碉級
+ * @return
+ */
+ public static BaseResponse<BaseListPageResponse<IccmAppointmentListResponse>> iccmAppointmentRecords(IccmAppointmentListRequest param){
+ log.info("銆愭捣搴疯瀹㈤绾﹁褰曟煡璇€��================寮�濮�===="+JSONObject.toJSONString(param));
+ try {
+ String res = HKTools.iccmAppointmentRecords(JSONObject.toJSONString(param));
+ TypeReference typeReference =
+ new TypeReference<BaseResponse<BaseListPageResponse<IccmAppointmentListResponse>>>(){};
+ BaseResponse<BaseListPageResponse<IccmAppointmentListResponse>> result = JSONObject.parseObject(res, typeReference.getType());
+ logResult(result,"娴峰悍璁垮棰勭害璁板綍鏌ヨ");
+ return result;
+ }catch (Exception e){
+ log.error("銆愭捣搴疯瀹㈤绾﹁褰曟煡璇€��================澶辫触====锛歕n"+ e.getMessage());
+ }
+ return null;
+ }
+ /**
*鏌ヨ璁垮鏉ヨ璁板綍锛堝凡鐧昏锛夛紙鍒嗛〉锛�
* @return
*/
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
index 46ac584..9d6623e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
@@ -5,6 +5,7 @@
import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventPlatCarstatusRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse;
import com.doumee.dao.business.model.Device;
@@ -59,6 +60,7 @@
void cancelEventSub();
void syncOrgData();
+ void getOutTimeVisitRecordIccm();
void syncUserData();
void syncVistAppointData(Date date);
@@ -94,4 +96,6 @@
String syncHkLed(Device param);
String syncHkBroadcast(Device param);
+ String dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response);
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
index 78e7198..9f8ca7d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
@@ -9,6 +9,7 @@
import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventPlatCarstatusRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventPlatWorkstatusRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse;
import com.doumee.core.haikang.model.param.respose.TaskAdditionResponse;
@@ -89,7 +90,10 @@
return null;
}
-
+ @Override
+ public String dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response){
+ return null;
+ }
@Override
public String dealAcsEvent(EventAcsRequest param, HttpServletResponse response){
return null;
@@ -144,6 +148,9 @@
public void getOutTimeVisitRecord(){
}
@Override
+ public void getOutTimeVisitRecordIccm(){
+ }
+ @Override
public Integer syncEmpowerData(Integer startPage) {
return null;
}
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 e34a2ef..b190e72 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
@@ -11,9 +11,7 @@
import com.doumee.core.haikang.model.param.request.event.acs.EventDeviceDataRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventParkInfoRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
-import com.doumee.core.haikang.model.param.request.event.visit.EventVisitDataRequest;
-import com.doumee.core.haikang.model.param.request.event.visit.EventVisitInfoRequest;
-import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
+import com.doumee.core.haikang.model.param.request.event.visit.*;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DESUtil;
import com.doumee.core.utils.DateUtil;
@@ -310,7 +308,175 @@
return null;
}
+ /**
+ * 娴峰悍璁垮浜嬩欢鎺ㄩ��
+ * @param param
+ * @param response
+ * @return
+ */
+ @Override
+ public String dealVisitEventIccm(EventVisitIccmRequest param, HttpServletResponse response){
+ log.info("銆愭捣搴疯瀹簨浠舵帹閫併��==========寮�濮�=======锛歕n"+JSONObject.toJSONString(param));
+ String result = null;
+ try {
+ if(param == null || param.getParams() == null || param.getParams().getEvents()==null){
+ return null;
+ }
+ //闂ㄧ浜嬩欢闆嗗悎
+ List<EventVisitIccmInfoRequest> events = param.getParams().getEvents();
+ List<VisitEvent> list = new ArrayList<>();
+ List<Integer> delRetentionLis = new ArrayList<>();
+ List<Retention> retentionList = new ArrayList<>();
+ for(EventVisitIccmInfoRequest request : events){
+ if(request.getData() ==null || request.getData().getVisitorInvoices() ==null){
+ continue;
+ }
+ if(request.getData().getVisitorInformationList() == null || request.getData().getVisitorInformationList().size() ==0){
+ continue;
+ }
+ //娴峰悍璁垮璁板綍缂栫爜
+ dealVisitDataByRequstIccm(request,delRetentionLis,retentionList,list);
+ }
+ if(list.size()>0){
+ //鎻掑叆闂ㄧ璁板綍
+ visitEventMapper.insert(list);
+ }
+ if(delRetentionLis.size()>0){
+ //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鏅�氳瀹級
+ retentionMapper.delete(new UpdateWrapper<Retention>().lambda()
+ .eq(Retention::getType,Constants.memberType.visitor)
+ .in(Retention::getMemberId,delRetentionLis));
+ }
+ if(retentionList.size()>0){
+ //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
+ retentionMapper.insert(retentionList);
+ }
+ log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========鎴愬姛=======");
+ }catch (Exception e){
+ log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========澶辫触=======锛歕n"+e.getMessage());
+ }
+ saveInterfaceLog(param,"/business/hksync/push/visitIccm",result,true);
+ return null;
+ }
+
+ /**
+ * 鏍规嵁璁垮鎺ㄩ�佽瀹㈣褰曠紪鐮侊紝澶勭悊璁垮璁板綍銆佸湪鍦轰汉鍛樼瓑淇℃伅
+ */
+ private void dealVisitDataByRequstIccm(EventVisitIccmInfoRequest request, List<Integer> delRetentionLis, List<Retention> retentionList,List<VisitEvent> list) {
+
+ EventVisitIccmDataRequest model = request.getData();
+ EventVisitIccmInvoiceParamRequest data = request.getData().getVisitorInvoices();
+ MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
+ queryWrapper.selectAll(Visits.class);
+ queryWrapper.selectAs(Member::getType,Visits::getMemberType);
+ queryWrapper.eq(Visits::getHkId,model.getVisitorInvoices().getInvoicesId() );//璁垮鍗曞彿
+ queryWrapper.leftJoin(Member.class,Member::getId,Visits::getMemberId );
+ queryWrapper.last("limit 1");
+ Visits visits = visitsMapper.selectJoinOne(Visits.class,queryWrapper);
+ if(visits !=null){
+ //濡傛灉浜哄憳淇℃伅瀛樺湪锛屽垯鍒犻櫎涔嬪墠鐨勬墍鏈夎繘鍦烘暟鎹紙鏃犺姝ゆ鎺ㄩ�佹槸杩涘巶杩樻槸鍑哄満鎺ㄩ�佷簨浠讹級
+ delRetentionLis.add(visits.getMemberId());
+ if(dataSyncConfig.getOrgUserDataOrigin() == DataSyncConfig.origin.hk){
+ //濡傛灉鏄紛鍒╁ぇ灞忛」鐩紝涓嶅仛澶勭悊
+ return;
+ }
+ Visits updateVistis = new Visits();
+ updateVistis.setId(visits.getId());
+ if (Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.VISIT_SIGN_ICCM_IN.getKey()) {
+ //濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
+ retentionList.add(getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType()));
+ //鏉ヨ鏃堕棿
+ updateVistis.setStatus(Constants.VisitStatus.signin);
+ updateVistis.setInDate(DateUtil.getISO8601DateByStr(data.getBeginTime()));
+ updateVistis.setOutDate(DateUtil.getISO8601DateByStr(data.getFinishTime()));
+ //鏇存柊鏈�鏂版潵璁挎椂闂�
+ Member member = new Member();
+ member.setLastVisitDate(updateVistis.getInDate());
+ member.setId(visits.getMemberId());
+ memberMapper.updateById(member);
+ }else if (Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.VISIT_SIGN_ICCM_OUT.getKey()) {
+ //濡傛灉鏄瀹㈢绂讳簨浠�
+ updateVistis.setStatus(Constants.VisitStatus.signout);
+ updateVistis.setInDate(DateUtil.getISO8601DateByStr(data.getBeginTime()));
+ updateVistis.setOutDate(DateUtil.getISO8601DateByStr(data.getFinishTime()));
+ updateVistis.setOutType(Constants.ZERO);
+ updateVistis.setOutInfo("璁垮姝e父绛剧");
+ }else{
+ //濡傛灉鏄瀹㈤�氳
+ }
+ updateVistis.setEditDate(new Date());
+ //鏇存柊璁垮鏉ヨ鎴栬�呯绂绘椂闂翠俊鎭�
+ visitsMapper.updateById(updateVistis) ;
+ }
+ }
+ private Retention getRetentionModelByVisitRequest(Visits visits, String happentTime,String srcType) {
+ Retention retention = new Retention();
+ retention.setIsdeleted(Constants.ZERO);
+ retention.setCreateDate(DateUtil.getISO8601DateByStr(happentTime));
+ retention.setClasses(visits.getClasses());
+ retention.setCode(visits.getCode());
+ retention.setIdcardNo(visits.getIdcardNo());
+ retention.setIdcardDecode(visits.getIdcardDecode());
+ retention.setName(visits.getName());
+ retention.setBirthday(visits.getBirthday());
+ retention.setType(visits.getMemberType());
+ retention.setCompanyId(visits.getCompanyId());
+ retention.setCompanyName(visits.getCompanyName());
+ retention.setEventCode(srcType);
+ retention.setEventDate(retention.getCreateDate());
+ retention.setFaceImg(visits.getFaceImg());
+ retention.setImgurl(visits.getImgurl());
+ retention.setPhone(visits.getPhone());
+ retention.setMemberId(visits.getMemberId());
+// retention.setDeviceName(request.getSrcName());
+// retention.setDeviceIndex(request.getSrcIndex());
+
+ return retention;
+ }
+ private VisitEvent getVisitEventModelByRequest(EventVisitIccmInfoRequest request,EventVisitIccmDetailParamRequest detail) {
+ if(request.getData().getTargetPerson() ==null){
+ request.getData().setTargetPerson(new EventVisitIccmTargetParamRequest());
+ }
+ VisitEvent event = new VisitEvent();
+ event.setIsdeleted(Constants.ZERO);
+ event.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
+ event.setVisitorWorkUint(detail.getUnit());
+ event.setVisitorId(detail.getVisitorId());
+ event.setVisitorCode(detail.getAppointmentCode());
+ event.setTimeout(request.getTimeout());
+ event.setSvrIndexCode(request.getSrcIndex());
+ event.setHappenTime(request.getHappenTime());
+ event.setStatus(request.getStatus());
+ event.setEndTime(request.getData().getVisitorInvoices().getFinishTime());
+ event.setStartTime(request.getData().getVisitorInvoices().getBeginTime());
+ event.setSrcType(request.getSrcType());
+ event.setSrcParentIndex(request.getSrcParentIndex());
+ event.setSrcName(request.getSrcName());
+ event.setSrcIndex(request.getSrcIndex());
+ event.setSex(detail.getSex());
+ event.setPurpose(request.getData().getVisitorInvoices().getVisitReason());
+ event.setPhone(detail.getPhone());
+ event.setBeVisitedPersonId(request.getData().getVisitorInvoices().getVisitTargetId());
+ event.setBeVisitedPersonName(request.getData().getTargetPerson().getName());
+ event.setBeVisitedPersonOrg(request.getData().getTargetPerson().getOrgPathName());
+ event.setBeVisitedPersonOrgId(request.getData().getTargetPerson().getName());
+ event.setPhotoUrl(getHkImgUrl(detail.getFacePic()));
+ event.setPersonName(detail.getVisitorName());
+ event.setCarNo(detail.getPlateNo());
+
+ event.setIdType(detail.getCertType());
+ String idnum = detail.getCertNo();
+ if(StringUtils.isNotBlank(idnum)){
+ //韬唤璇佸彿瀛樺偍瀵嗘枃
+ event.setIdNo(DESUtil.encrypt(Constants.EDS_PWD,idnum));//韬唤璇佸彿鍔犲瘑
+ //鑴辨晱鎵嬫満鍙锋樉绀簄
+ event.setIdcardDecode(Constants.getTuominStr(idnum));
+ }
+ event.setEventType(request.getEventType());
+ event.setEventId(request.getEventId());
+ return event;
+ }
/**
* 鏍规嵁璁垮鎺ㄩ�佽瀹㈣褰曠紪鐮侊紝澶勭悊璁垮璁板綍銆佸湪鍦轰汉鍛樼瓑淇℃伅
*/
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
index 09e6a3f..143183d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
@@ -73,14 +73,6 @@
AppointmentInfoResponse model = getVisitRecord(c.getHkId());
if(model == null){
continue;
- /* Visits update = new Visits();
- //宸插け鏁�
- update.setStatus(Constants.VisitStatus.invalid);
- update.setEditDate(date);
- update.setId(c.getId());
- update.setRemark("棰勭害宸茶娓呴櫎");
- visitsMapper.updateById(update);
- continue;*/
}
/**
* * 0锛氬緟瀹℃牳锛堥绾﹀緟瀹℃壒锛夈��
@@ -155,6 +147,92 @@
}
}
+ /**
+ * 鏌ヨICCM璁垮鏁版嵁鐘舵��
+ */
+ @Override
+ public void getOutTimeVisitRecordIccm(){
+ if(Constants.DEALING_HK_VISIT_EXPIRE){
+ return ;
+ }
+ Constants.DEALING_HK_VISIT_EXPIRE =true;
+ try {
+ //鏌ヨ鎵�鏈夐渶瑕佸悓姝ョ殑鏁版嵁
+ List<Visits> list = getExpireVisitList();
+ //鎸夌収鐖剁骇鐢宠鍒嗘壒澶勭悊姣忔鐢宠鏁版嵁
+ if(list ==null || list.size()==0){
+ return;
+ }
+ Date date = new Date();
+ for(Visits c : list) {
+ //鍙戣捣娴峰悍棰勭害鎺ュ彛锛堥渶瑕佺櫥璁帮級锛屾牴鎹绾﹁繑鍥炴帴鍙e皝瑁呯敵璇疯褰曟洿鏂板瓧娈�
+ IccmAppointmentListResponse data = getVisitRecordIccm(c.getHkId());
+ if(data == null || data.getVisitorList() ==null || data.getVisitorList().size()==0){
+ continue;
+ }
+ /**
+ * 璁垮鐘舵��(0:鏈鍒�,1:宸茬鍒�,2:宸茬閫�,3:婊炵暀,4:鏈闂�,5:鑷姩绛剧,6:鏈閫�)
+ */
+ IccmAppointmentVisitorResponse model = data.getVisitorList().get(0);
+ if (model.getVisitorStatus()!=null && ",4,".contains( "," +model.getVisitorStatus()+"," )){
+ //瀵圭浉搴旂姸鎬佷笅鐨勬暟鎹繘琛屻�愬凡澶辨晥銆戝鐞�
+ Visits update = new Visits();
+ //宸插け鏁�
+ update.setStatus(Constants.VisitStatus.invalid);
+ update.setEditDate(date);
+ update.setId(c.getId());
+ update.setInDate(DateUtil.getISO8601DateByStr2(data.getVisitStartTime()));
+ update.setOutDate(DateUtil.getISO8601DateByStr2(data.getVisitEndTime()));
+ update.setRemark("瓒呮椂鏈櫥璁�");
+ visitsMapper.updateById(update);
+ }
+ if (model.getVisitorStatus()!=null && ",2,5,".contains( "," +model.getVisitorStatus()+"," )){
+ // 瀵圭浉搴旂姸鎬佷笅鐨勬暟鎹繘琛屻�愬凡绛剧銆戝鐞�
+ if(!Constants.equalsInteger(c.getStatus(),Constants.VisitStatus.signout)){
+ Visits update = new Visits();
+ //宸插け鏁�
+ update.setStatus(Constants.VisitStatus.signout);
+ update.setEditDate(date);
+ update.setId(c.getId());
+ update.setInDate(DateUtil.getISO8601DateByStr2(data.getVisitStartTime()));
+ update.setOutDate(DateUtil.getISO8601DateByStr2(data.getVisitEndTime()));
+ update.setRemark("宸茬绂�");
+ visitsMapper.updateById(update);
+
+ //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鏅�氳瀹級
+ retentionMapper.delete(new UpdateWrapper<Retention>().lambda()
+ .eq(Retention::getType,Constants.memberType.visitor)
+ .eq(Retention::getMemberId,c.getMemberId()));
+ }
+ }
+ if (model.getVisitorStatus()!=null&& ",1,3,6,".contains( "," +model.getVisitorStatus()+"," )){
+ //濡傛灉宸茬櫥璁�
+ if(!Constants.equalsInteger(c.getStatus(),Constants.VisitStatus.signin)){
+ Visits update = new Visits();
+ //宸插け鏁�
+ update.setStatus(Constants.VisitStatus.signin);
+ update.setEditDate(date);
+ update.setId(c.getId());
+ update.setInDate(DateUtil.getISO8601DateByStr2(data.getVisitStartTime()));
+ update.setOutDate(DateUtil.getISO8601DateByStr2(data.getVisitEndTime()));
+ update.setRemark("宸茬鍒�");
+ visitsMapper.updateById(update);
+ //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鏅�氳瀹級
+ retentionMapper.delete(new UpdateWrapper<Retention>().lambda()
+ .eq(Retention::getType,Constants.memberType.visitor)
+ .eq(Retention::getMemberId,c.getMemberId()));
+ //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
+ retentionMapper.insert(getRetentionModelByVisitRequest(c,update.getInDate()));
+ }
+ }
+ }
+ }catch (Exception e){
+ e.printStackTrace();
+ }finally {
+ Constants.DEALING_HK_VISIT_EXPIRE =false;
+ }
+ }
+
private Retention getRetentionModelByVisitRequest(Visits visits,Date date) {
Retention retention = new Retention();
retention.setIsdeleted(Constants.ZERO);
@@ -195,6 +273,24 @@
}
return response.getData().getList().get(0);
}
+ public IccmAppointmentListResponse getVisitRecordIccm(String orderId){
+ //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
+ if(StringUtils.isBlank(orderId)){
+ return null;
+ }
+ IccmAppointmentListRequest param = new IccmAppointmentListRequest();
+ param.setPageNo(1);
+ param.setPageSize(1);
+ param.setOrderId(orderId);
+ BaseResponse<BaseListPageResponse<IccmAppointmentListResponse>> response = HKService.iccmAppointmentRecords(param);
+ if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) ){
+ return null;
+ }
+ if(response.getData() == null || response.getData().getList() == null|| response.getData().getList().size() ==0){
+ return null;
+ }
+ return response.getData().getList().get(0);
+ }
@Override
public void syncVisitData(){
if(Constants.DEALING_HK_VISIT){
@@ -206,13 +302,9 @@
List<DeviceRole> roleList = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda()
.eq(DeviceRole::getType, Constants.ONE));
//鏍囪鏄惁璧板厤鐧昏棰勭害
-// String applyType =systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.MDJ_VISIT_REQUIRED).getCode();
-// String applyLwType =systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.MDJ_LW_REQUIRED).getCode();
try {
//鏌ヨ鎵�鏈夐渶瑕佸悓姝ョ殑鏁版嵁
List<Visits> list = getVisitList();
- //鎸夌収鐖剁骇鐢宠鍒嗘壒澶勭悊姣忔鐢宠鏁版嵁
-// List<Visits> list = getParentList(alllist);
if(list ==null || list.size()==0){
return;
}
--
Gitblit v1.9.3