From 69676cf96655ea6235a5e228c18783916d4edb55 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 06 十二月 2023 10:02:18 +0800
Subject: [PATCH] 海康接口对接开发
---
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java | 2
server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java | 6
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Parks.java | 4
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java | 55 ++--
server/dmvisit_admin/src/main/java/com/doumee/api/business/DoorRoleController.java | 2
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java | 4
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/ParkBook.java | 4
server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupInfoResponse.java | 13 +
server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java | 22 +
server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupListResponse.java | 8
/dev/null | 154 ------------
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DeviceRole.java | 20 +
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberCard.java | 2
server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java | 5
server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java | 15 +
server/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java | 3
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java | 152 ++++++++++++
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java | 2
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java | 2
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java | 173 ++++++++++++++
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java | 67 +++++
server/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java | 3
22 files changed, 514 insertions(+), 204 deletions(-)
diff --git a/.idea/libraries/Maven__commons_net_commons_net_3_8_0.xml b/.idea/libraries/Maven__commons_net_commons_net_3_8_0.xml
deleted file mode 100644
index d338100..0000000
--- a/.idea/libraries/Maven__commons_net_commons_net_3_8_0.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<component name="libraryTable">
- <library name="Maven: commons-net:commons-net:3.8.0">
- <CLASSES>
- <root url="jar://$MAVEN_REPOSITORY$/commons-net/commons-net/3.8.0/commons-net-3.8.0.jar!/" />
- </CLASSES>
- <JAVADOC>
- <root url="jar://$MAVEN_REPOSITORY$/commons-net/commons-net/3.8.0/commons-net-3.8.0-javadoc.jar!/" />
- </JAVADOC>
- <SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/commons-net/commons-net/3.8.0/commons-net-3.8.0-sources.jar!/" />
- </SOURCES>
- </library>
-</component>
\ No newline at end of file
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/DoorRoleController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/DoorRoleController.java
index cc52adb..9d2c1ce 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/DoorRoleController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/DoorRoleController.java
@@ -6,8 +6,6 @@
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
-import com.doumee.dao.business.model.DoorRole;
-import com.doumee.service.business.DoorRoleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
index 1a0ddb4..3785a27 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/HkSyncController.java
@@ -4,6 +4,7 @@
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.ParkListRequest;
import com.doumee.core.haikang.service.HKService;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
@@ -34,12 +35,20 @@
private HkSyncService hkSyncService;
@PreventRepeat
- @ApiOperation("鍏ㄩ噺鍚屾闂ㄧ璁惧鎺ュ彛")
+ @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ラ棬绂佽澶囨帴鍙�")
@PostMapping("/getDevices")
@RequiresPermissions("business:hksync:device")
public ApiResponse getDevices(@RequestBody AcsDeviceListRequest param) {
- hkSyncService.syncHkDevices(param);
- return ApiResponse.success(null);
+ String result = hkSyncService.syncHkDevices(param);
+ return ApiResponse.success(result);
+ }
+ @PreventRepeat
+ @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ュ仠杞﹀簱鎺ュ彛")
+ @PostMapping("/getDevices")
+ @RequiresPermissions("business:hksync:park")
+ public ApiResponse getDevices(@RequestBody ParkListRequest param) {
+ String result = hkSyncService.syncHkParks(param);
+ return ApiResponse.success(result);
}
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupInfoResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupInfoResponse.java
new file mode 100644
index 0000000..ee1ebbb
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupInfoResponse.java
@@ -0,0 +1,13 @@
+package com.doumee.core.haikang.model.param.respose;
+
+import lombok.Data;
+
+@Data
+public class PrivilegeGroupInfoResponse {
+
+
+ private String privilegeGroupId;// string False 鏉冮檺缁処D, 鐢ㄤ簬璁垮鐧昏鏃跺璁垮鎺堟潈
+ private String privilegeGroupName;// string False 鏉冮檺缁勫悕绉�
+ private String remark;// string False 鎻忚堪
+ private Integer isDefault ;//number False 鏄惁鏄粯璁ゆ潈闄愮粍0: 鏄�1: 鍚�
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupListResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupListResponse.java
index 4f6f01e..6f8a77a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupListResponse.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupListResponse.java
@@ -8,8 +8,8 @@
public class PrivilegeGroupListResponse {
- private String privilegeGroupId;// string False 鏉冮檺缁処D, 鐢ㄤ簬璁垮鐧昏鏃跺璁垮鎺堟潈
- private String privilegeGroupName;// string False 鏉冮檺缁勫悕绉�
- private String remark;// string False 鎻忚堪
- private Integer isDefault ;//number False 鏄惁鏄粯璁ゆ潈闄愮粍0: 鏄�1: 鍚�
+ private int total;// number False 鏌ヨ鏁版嵁璁板綍鎬绘暟
+ private int pageSize;// number False 姣忛〉璁板綍鎬绘暟
+ private int pageNo ;// number False 褰撳墠椤电爜
+ private List<PrivilegeGroupInfoResponse> list ;// object[] False 鏉冮檺缁勫璞″垪琛�
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupResponse.java
deleted file mode 100644
index 568f690..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/PrivilegeGroupResponse.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.doumee.core.haikang.model.param.respose;
-
-import lombok.Data;
-
-import java.util.List;
-
-@Data
-public class PrivilegeGroupResponse {
-
-
- private int total;// number False 鏌ヨ鏁版嵁璁板綍鎬绘暟
- private int pageSize;// number False 姣忛〉璁板綍鎬绘暟
- private int pageNo ;// number False 褰撳墠椤电爜
- private List<PrivilegeGroupListResponse> list ;// object[] False 鏉冮檺缁勫璞″垪琛�
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
index 4e57687..79f3e8a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -403,13 +403,13 @@
*璁垮鏉冮檺缁勫垪琛ㄦ煡璇紙鍒嗛〉锛�
* @return
*/
- public BaseResponse<PrivilegeGroupResponse> privilegeGroup(PrivilegeGroupRequest param){
+ public BaseResponse<PrivilegeGroupListResponse> privilegeGroup(PrivilegeGroupRequest param){
log.error("銆愭捣搴疯瀹㈡潈闄愮粍鍒楄〃鏌ヨ銆�================寮�濮�===="+JSONObject.toJSONString(param));
try {
String res = HKTools.privilegeGroup(JSONObject.toJSONString(param));
TypeReference typeReference =
- new TypeReference< BaseResponse<PrivilegeGroupResponse> >(){};
- BaseResponse<PrivilegeGroupResponse> result = JSONObject.parseObject(res, typeReference.getType());
+ new TypeReference< BaseResponse<PrivilegeGroupListResponse> >(){};
+ BaseResponse<PrivilegeGroupListResponse> result = JSONObject.parseObject(res, typeReference.getType());
log.error("銆愭捣搴疯瀹㈡潈闄愮粍鍒楄〃鏌ヨ銆�================鎴愬姛====\n"+res);
return result;
}catch (Exception e){
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java b/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java
index 914a43e..fbd8b5f 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -31,6 +31,11 @@
String activity_looknum = "looknum";
String activity_signup = "signup";
}
+ public interface DOOR_ROLE_TYPE{
+ int lw = 0;
+ int fk = 1;
+ int nb = 2;
+ }
public static final String SUCCESS_STR = "SUCCESS" ;
//寮�闂ㄦ椂闂存湁鏁堟湡锛堝垎閽燂級
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java
index 1c2f59b..0f4f984 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/DeviceRoleMapper.java
@@ -3,10 +3,13 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.DeviceRole;
+import java.util.List;
+
/**
* @author 姹熻箘韫�
* @date 2023/11/30 15:33
*/
public interface DeviceRoleMapper extends BaseMapper<DeviceRole> {
+ void insertBatchSomeColumn(List<DeviceRole> addList);
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/DoorRoleMapper.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/DoorRoleMapper.java
deleted file mode 100644
index d9ecb58..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/DoorRoleMapper.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.doumee.dao.business;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.doumee.dao.business.model.DoorRole;
-
-/**
- * @author 姹熻箘韫�
- * @date 2023/11/23 18:16
- */
-public interface DoorRoleMapper extends BaseMapper<DoorRole> {
-
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java
index 74f98f5..c9b7e2e 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/ParksMapper.java
@@ -3,10 +3,13 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.Parks;
+import java.util.List;
+
/**
* @author 姹熻箘韫�
* @date 2023/11/30 15:33
*/
public interface ParksMapper extends BaseMapper<Parks> {
+ void insertBatchSomeColumn(List<Parks> addList);
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java
index 4704f20..1e483b8 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Cars.java
@@ -53,7 +53,7 @@
@ApiModelProperty(value = "棰勭害鏍囪瘑", example = "1")
@ExcelColumn(name="棰勭害鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
@ExcelColumn(name="鎺掑簭鐮�")
@@ -69,7 +69,7 @@
@ApiModelProperty(value = "娴峰悍鏍囪瘑", example = "1")
@ExcelColumn(name="娴峰悍鏍囪瘑")
- private Integer hkId2;
+ private String hkId2;
@ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�", example = "1")
@ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java
index e9fd108..b86c30d 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java
@@ -104,7 +104,7 @@
@ApiModelProperty(value = "娴峰悍鏍囪瘑")
@ExcelColumn(name="娴峰悍鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�")
@ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DeviceRole.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DeviceRole.java
index 5eff5cf..0c48b92 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DeviceRole.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DeviceRole.java
@@ -55,13 +55,13 @@
@ExcelColumn(name="鍚嶇О")
private String name;
- @ApiModelProperty(value = "鏄惁榛樿 0鍚� 1鏄�", example = "1")
- @ExcelColumn(name="鏄惁榛樿 0鍚� 1鏄�")
+ @ApiModelProperty(value = "鏄惁鏄粯璁ゆ潈闄愮粍0: 鏄�1: 鍚�", example = "1")
+ @ExcelColumn(name="鏄惁鏄粯璁ゆ潈闄愮粍0: 鏄�1: 鍚�")
private Integer isDefault;
@ApiModelProperty(value = "绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
@ExcelColumn(name="绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
- private String type;
+ private Integer type;
@ApiModelProperty(value = "鍙娇鐢ㄩ棬绂佺紪鐮侀泦鍚堬紝澶氫釜鑻辨枃閫楀彿闅斿紑")
@ExcelColumn(name="鍙娇鐢ㄩ棬绂佺紪鐮侀泦鍚堬紝澶氫釜鑻辨枃閫楀彿闅斿紑")
@@ -83,4 +83,18 @@
@ExcelColumn(name="鐘舵�� 0绂佺敤 1鍚敤")
private Integer status;
+ @ApiModelProperty(value = "娴峰悍鏍囪瘑", example = "1")
+ @ExcelColumn(name="娴峰悍鏍囪瘑")
+ private String hkId;
+
+ @ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�", example = "1")
+ @ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�")
+ private Integer hkStatus;
+
+ @ApiModelProperty(value = "娴峰悍鏈�杩戝悓姝ユ椂闂�")
+ @ExcelColumn(name="娴峰悍鏈�杩戝悓姝ユ椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date hkDate;
+
+
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DoorRole.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DoorRole.java
deleted file mode 100644
index 8730f40..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/DoorRole.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package com.doumee.dao.business.model;
-
-import com.doumee.core.annotation.excel.ExcelColumn;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import java.util.Date;
-
-/**
- * 闂ㄧ瑙掕壊淇℃伅琛�
- * @author 姹熻箘韫�
- * @date 2023/11/23 18:16
- */
-@Data
-@ApiModel("闂ㄧ瑙掕壊淇℃伅琛�")
-@TableName("`door_role`")
-public class DoorRole {
-
- @TableId(type = IdType.AUTO)
- @ApiModelProperty(value = "涓婚敭", example = "1")
- @ExcelColumn(name="涓婚敭")
- private Integer id;
-
- @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�")
- @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
- private String creator;
-
- @ApiModelProperty(value = "鍒涘缓鏃堕棿")
- @ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date createDate;
-
- @ApiModelProperty(value = "鏇存柊浜虹紪鐮�")
- @ExcelColumn(name="鏇存柊浜虹紪鐮�")
- private String edirot;
-
- @ApiModelProperty(value = "鏇存柊鏃堕棿")
- @ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date editDate;
-
- @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
- @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
- private Integer isdeleted;
-
- @ApiModelProperty(value = "澶囨敞")
- @ExcelColumn(name="澶囨敞")
- private String remark;
-
- @ApiModelProperty(value = "鍚嶇О")
- @ExcelColumn(name="鍚嶇О")
- private String name;
-
- @ApiModelProperty(value = "鏄惁榛樿 0鍚� 1鏄�", example = "1")
- @ExcelColumn(name="鏄惁榛樿 0鍚� 1鏄�")
- private Integer isDefault;
-
- @ApiModelProperty(value = "绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
- @ExcelColumn(name="绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
- private String type;
-
- @ApiModelProperty(value = "鍙娇鐢ㄩ棬绂佺紪鐮侀泦鍚堬紝澶氫釜鑻辨枃閫楀彿闅斿紑")
- @ExcelColumn(name="鍙娇鐢ㄩ棬绂佺紪鐮侀泦鍚堬紝澶氫釜鑻辨枃閫楀彿闅斿紑")
- private String doorIds;
-
- @ApiModelProperty(value = "鍙娇鐢ㄩ棬绂佸悕绉帮紝澶氫釜鑻辨枃閫楀彿闅斿紑")
- @ExcelColumn(name="鍙娇鐢ㄩ棬绂佸悕绉帮紝澶氫釜鑻辨枃閫楀彿闅斿紑")
- private String doorNames;
-
- @ApiModelProperty(value = "鍏宠仈杞﹀簱缂栫爜闆嗗悎")
- @ExcelColumn(name="鍏宠仈杞﹀簱缂栫爜闆嗗悎")
- private String parkIds;
-
- @ApiModelProperty(value = "鍏宠仈杞﹀簱鍚嶇О闆嗗悎")
- @ExcelColumn(name="鍏宠仈杞﹀簱鍚嶇О闆嗗悎")
- private String parkNames;
-
- @ApiModelProperty(value = "鐘舵�� 0绂佺敤 1鍚敤", example = "1")
- @ExcelColumn(name="鐘舵�� 0绂佺敤 1鍚敤")
- private Integer status;
-
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
index fc6fe5b..41e5093 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
@@ -53,7 +53,7 @@
@ApiModelProperty(value = "棰勭害鏍囪瘑", example = "1")
@ExcelColumn(name="棰勭害鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
@ExcelColumn(name="鎺掑簭鐮�")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
index acb77ee..9c7d069 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -134,7 +134,7 @@
@ApiModelProperty(value = "娴峰悍鏍囪瘑", example = "1")
@ExcelColumn(name="娴峰悍鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝� 2鍚屾澶辫触 ", example = "1")
@ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝� 2鍚屾澶辫触")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberCard.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberCard.java
index e52aa6d..214b280 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberCard.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberCard.java
@@ -65,7 +65,7 @@
@ApiModelProperty(value = "娴峰悍鏍囪瘑", example = "1")
@ExcelColumn(name="娴峰悍鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�", example = "1")
@ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/ParkBook.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/ParkBook.java
index 6d3f956..f904522 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/ParkBook.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/ParkBook.java
@@ -53,7 +53,7 @@
@ApiModelProperty(value = "棰勭害鏍囪瘑", example = "1")
@ExcelColumn(name="棰勭害鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
@ExcelColumn(name="鎺掑簭鐮�")
@@ -95,7 +95,7 @@
@ApiModelProperty(value = "娴峰悍鏍囪瘑", example = "1")
@ExcelColumn(name="娴峰悍鏍囪瘑")
- private Integer hkId2;
+ private String hkId2;
@ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0寰呬笅鍙� 1涓嬪彂鎴愬姛 2涓嬪彂澶辫触 3鍙栨秷涓嬪彂", example = "1")
@ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0寰呬笅鍙� 1涓嬪彂鎴愬姛 2涓嬪彂澶辫触 3鍙栨秷涓嬪彂")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Parks.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Parks.java
index 20858cc..e5143d5 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Parks.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Parks.java
@@ -53,11 +53,11 @@
@ApiModelProperty(value = "棰樼洰")
@ExcelColumn(name="棰樼洰")
- private String title;
+ private String name;
@ApiModelProperty(value = "娴峰悍鏍囪瘑", example = "1")
@ExcelColumn(name="娴峰悍鏍囪瘑")
- private Integer hkId;
+ private String hkId;
@ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�", example = "1")
@ExcelColumn(name="娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝�")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/DoorRoleService.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/DoorRoleService.java
deleted file mode 100644
index d7f44f5..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/DoorRoleService.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package com.doumee.service.business;
-
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.dao.business.model.DoorRole;
-import java.util.List;
-
-/**
- * 闂ㄧ瑙掕壊淇℃伅琛⊿ervice瀹氫箟
- * @author 姹熻箘韫�
- * @date 2023/11/23 18:16
- */
-public interface DoorRoleService {
-
- /**
- * 鍒涘缓
- *
- * @param doorRole 瀹炰綋瀵硅薄
- * @return Integer
- */
- Integer create(DoorRole doorRole);
-
- /**
- * 涓婚敭鍒犻櫎
- *
- * @param id 涓婚敭
- */
- void deleteById(Integer id);
-
- /**
- * 鍒犻櫎
- *
- * @param doorRole 瀹炰綋瀵硅薄
- */
- void delete(DoorRole doorRole);
-
- /**
- * 鎵归噺涓婚敭鍒犻櫎
- *
- * @param ids 涓婚敭闆�
- */
- void deleteByIdInBatch(List<Integer> ids);
-
- /**
- * 涓婚敭鏇存柊
- *
- * @param doorRole 瀹炰綋瀵硅薄
- */
- void updateById(DoorRole doorRole);
-
- /**
- * 鎵归噺涓婚敭鏇存柊
- *
- * @param doorRoles 瀹炰綋闆�
- */
- void updateByIdInBatch(List<DoorRole> doorRoles);
-
- /**
- * 涓婚敭鏌ヨ
- *
- * @param id 涓婚敭
- * @return DoorRole
- */
- DoorRole findById(Integer id);
-
- /**
- * 鏉′欢鏌ヨ鍗曟潯璁板綍
- *
- * @param doorRole 瀹炰綋瀵硅薄
- * @return DoorRole
- */
- DoorRole findOne(DoorRole doorRole);
-
- /**
- * 鏉′欢鏌ヨ
- *
- * @param doorRole 瀹炰綋瀵硅薄
- * @return List<DoorRole>
- */
- List<DoorRole> findList(DoorRole doorRole);
-
- /**
- * 鍒嗛〉鏌ヨ
- *
- * @param pageWrap 鍒嗛〉瀵硅薄
- * @return PageData<DoorRole>
- */
- PageData<DoorRole> findPage(PageWrap<DoorRole> pageWrap);
-
- /**
- * 鏉′欢缁熻
- *
- * @param doorRole 瀹炰綋瀵硅薄
- * @return long
- */
- long count(DoorRole doorRole);
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java
index 7aca817..3bafd26 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/HkSyncService.java
@@ -1,6 +1,8 @@
package com.doumee.service.business;
import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.ParkListRequest;
+import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
/**
* 鍋滆溅鍦轰簨浠舵帹閫佽褰曡〃Service瀹氫箟
@@ -8,5 +10,25 @@
* @date 2023/11/30 15:33
*/
public interface HkSyncService {
+ /**
+ * 鍚屾娴峰悍闂ㄧ璁惧
+ * @param param
+ * @return
+ */
String syncHkDevices(AcsDeviceListRequest param);
+
+ /**
+ * 鍚屾娴峰悍鍋滆溅搴�
+ * @param param
+ * @return
+ */
+
+ String syncHkParks(ParkListRequest param);
+
+ /**
+ * 鍚屾娴峰悍璁垮鏉冮檺缁�
+ * @param param
+ * @return
+ */
+ String syncPrivilege(PrivilegeGroupRequest param);
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DoorRoleServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DoorRoleServiceImpl.java
deleted file mode 100644
index 8a2561b..0000000
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DoorRoleServiceImpl.java
+++ /dev/null
@@ -1,154 +0,0 @@
-package com.doumee.service.business.impl;
-
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.DoorRoleMapper;
-import com.doumee.dao.business.model.DoorRole;
-import com.doumee.service.business.DoorRoleService;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
-
-import java.util.List;
-
-/**
- * 闂ㄧ瑙掕壊淇℃伅琛⊿ervice瀹炵幇
- * @author 姹熻箘韫�
- * @date 2023/11/23 18:16
- */
-@Service
-public class DoorRoleServiceImpl implements DoorRoleService {
-
- @Autowired
- private DoorRoleMapper doorRoleMapper;
-
- @Override
- public Integer create(DoorRole doorRole) {
- doorRoleMapper.insert(doorRole);
- return doorRole.getId();
- }
-
- @Override
- public void deleteById(Integer id) {
- doorRoleMapper.deleteById(id);
- }
-
- @Override
- public void delete(DoorRole doorRole) {
- UpdateWrapper<DoorRole> deleteWrapper = new UpdateWrapper<>(doorRole);
- doorRoleMapper.delete(deleteWrapper);
- }
-
- @Override
- public void deleteByIdInBatch(List<Integer> ids) {
- if (CollectionUtils.isEmpty(ids)) {
- return;
- }
- doorRoleMapper.deleteBatchIds(ids);
- }
-
- @Override
- public void updateById(DoorRole doorRole) {
- doorRoleMapper.updateById(doorRole);
- }
-
- @Override
- public void updateByIdInBatch(List<DoorRole> doorRoles) {
- if (CollectionUtils.isEmpty(doorRoles)) {
- return;
- }
- for (DoorRole doorRole: doorRoles) {
- this.updateById(doorRole);
- }
- }
-
- @Override
- public DoorRole findById(Integer id) {
- return doorRoleMapper.selectById(id);
- }
-
- @Override
- public DoorRole findOne(DoorRole doorRole) {
- QueryWrapper<DoorRole> wrapper = new QueryWrapper<>(doorRole);
- return doorRoleMapper.selectOne(wrapper);
- }
-
- @Override
- public List<DoorRole> findList(DoorRole doorRole) {
- QueryWrapper<DoorRole> wrapper = new QueryWrapper<>(doorRole);
- return doorRoleMapper.selectList(wrapper);
- }
-
- @Override
- public PageData<DoorRole> findPage(PageWrap<DoorRole> pageWrap) {
- IPage<DoorRole> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- QueryWrapper<DoorRole> queryWrapper = new QueryWrapper<>();
- Utils.MP.blankToNull(pageWrap.getModel());
- if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(DoorRole::getId, pageWrap.getModel().getId());
- }
- if (pageWrap.getModel().getCreator() != null) {
- queryWrapper.lambda().eq(DoorRole::getCreator, pageWrap.getModel().getCreator());
- }
- if (pageWrap.getModel().getCreateDate() != null) {
- queryWrapper.lambda().ge(DoorRole::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
- queryWrapper.lambda().le(DoorRole::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
- }
- if (pageWrap.getModel().getEdirot() != null) {
- queryWrapper.lambda().eq(DoorRole::getEdirot, pageWrap.getModel().getEdirot());
- }
- if (pageWrap.getModel().getEditDate() != null) {
- queryWrapper.lambda().ge(DoorRole::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
- queryWrapper.lambda().le(DoorRole::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
- }
- if (pageWrap.getModel().getIsdeleted() != null) {
- queryWrapper.lambda().eq(DoorRole::getIsdeleted, pageWrap.getModel().getIsdeleted());
- }
- if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(DoorRole::getRemark, pageWrap.getModel().getRemark());
- }
- if (pageWrap.getModel().getName() != null) {
- queryWrapper.lambda().eq(DoorRole::getName, pageWrap.getModel().getName());
- }
- if (pageWrap.getModel().getIsDefault() != null) {
- queryWrapper.lambda().eq(DoorRole::getIsDefault, pageWrap.getModel().getIsDefault());
- }
- if (pageWrap.getModel().getType() != null) {
- queryWrapper.lambda().eq(DoorRole::getType, pageWrap.getModel().getType());
- }
- if (pageWrap.getModel().getDoorIds() != null) {
- queryWrapper.lambda().eq(DoorRole::getDoorIds, pageWrap.getModel().getDoorIds());
- }
- if (pageWrap.getModel().getDoorNames() != null) {
- queryWrapper.lambda().eq(DoorRole::getDoorNames, pageWrap.getModel().getDoorNames());
- }
- if (pageWrap.getModel().getParkIds() != null) {
- queryWrapper.lambda().eq(DoorRole::getParkIds, pageWrap.getModel().getParkIds());
- }
- if (pageWrap.getModel().getParkNames() != null) {
- queryWrapper.lambda().eq(DoorRole::getParkNames, pageWrap.getModel().getParkNames());
- }
- if (pageWrap.getModel().getStatus() != null) {
- queryWrapper.lambda().eq(DoorRole::getStatus, pageWrap.getModel().getStatus());
- }
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
- }
- }
- return PageData.from(doorRoleMapper.selectPage(page, queryWrapper));
- }
-
- @Override
- public long count(DoorRole doorRole) {
- QueryWrapper<DoorRole> wrapper = new QueryWrapper<>(doorRole);
- return doorRoleMapper.selectCount(wrapper);
- }
-}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
new file mode 100644
index 0000000..35fed63
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
@@ -0,0 +1,67 @@
+package com.doumee.service.business.impl.hksync;
+
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.param.BaseResponse;
+import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.ParkListRequest;
+import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
+import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse;
+import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse;
+import com.doumee.core.haikang.model.param.respose.ParkListResponse;
+import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.dao.business.DeviceMapper;
+import com.doumee.dao.business.ParksMapper;
+import com.doumee.dao.business.model.Device;
+import com.doumee.dao.business.model.Parks;
+import com.doumee.service.business.HkSyncService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璁惧淇℃伅琛⊿ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+public class HkSyncBaseServiceImpl implements HkSyncService {
+
+ @Autowired
+ public HKService hkService;
+
+ /**
+ * 鍚屾娴峰悍鍋滆溅搴撴暟鎹�
+ * @param param
+ * @return
+ */
+ @Override
+// @Async
+ public String syncHkParks(ParkListRequest param){
+ return null;
+ }
+ /**
+ * 鍚屾娴峰悍闂ㄧ璁惧鏁版嵁
+ * @param param
+ * @return
+ */
+ @Override
+// @Async
+ public String syncHkDevices(AcsDeviceListRequest param){
+
+ return null;
+ }
+ @Override
+// @Async
+ public String syncPrivilege(PrivilegeGroupRequest param){
+
+ return null;
+ }
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/HkSyncServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
similarity index 80%
rename from server/dmvisit_service/src/main/java/com/doumee/service/business/impl/HkSyncServiceImpl.java
rename to server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
index fe25c11..1c99ba1 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/HkSyncServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncDeviceServiceImpl.java
@@ -1,32 +1,25 @@
-package com.doumee.service.business.impl;
+package com.doumee.service.business.impl.hksync;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.haikang.model.HKConstants;
import com.doumee.core.haikang.model.param.BaseResponse;
import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.ParkListRequest;
import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse;
import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse;
+import com.doumee.core.haikang.model.param.respose.ParkListResponse;
import com.doumee.core.haikang.service.HKService;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
-import com.doumee.core.utils.Utils;
import com.doumee.dao.business.DeviceMapper;
+import com.doumee.dao.business.ParksMapper;
import com.doumee.dao.business.model.Device;
-import com.doumee.service.business.DeviceService;
-import com.doumee.service.business.HkSyncService;
+import com.doumee.dao.business.model.Parks;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
-import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -37,13 +30,16 @@
* @date 2023/11/30 15:33
*/
@Service
-public class HkSyncServiceImpl implements HkSyncService {
+public class HkSyncDeviceServiceImpl extends HkSyncBaseServiceImpl {
@Autowired
private DeviceMapper deviceMapper;
- @Autowired
- private HKService hkService;
+ /**
+ * 鍚屾娴峰悍闂ㄧ璁惧鏁版嵁
+ * @param param
+ * @return
+ */
@Override
// @Async
public String syncHkDevices(AcsDeviceListRequest param){
@@ -56,10 +52,11 @@
List<Device> allList = deviceMapper.selectList(null);
boolean hasNext = true;
int curTotal = 0;
+ int curPage = 1;
while (hasNext){
//鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
param = new AcsDeviceListRequest();
- param.setPageNo(1);
+ param.setPageNo(curPage);
param.setPageSize(10000);
BaseResponse<AcsDeviceListResponse> response = hkService.acsDeviceList(param);
if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
@@ -70,11 +67,17 @@
if(curTotal >= r.getTotal()){
hasNext = false;
}
- List<AcsDeviceInfoResponse> tlist = r.getList();
+ if(r.getList() == null || r.getList().size()==0){
+ hasNext =false;
+ }else{
+ allHkList.addAll(r.getList());
+ }
+ curPage++;
}
- //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
- getAddAndEditList(allList,allHkList,addList,editList,date);
- getDeleteList(allList,allHkList,deleteList,date);
+ /**
+ * 鑾峰彇澧炲垹鏀规暟鎹泦鍚�
+ */
+ getDataChangeList(allList,allHkList,addList,editList,deleteList,date);
if(deleteList.size()>0){
//閫昏緫鍒犻櫎
for(Device d : deleteList){
@@ -89,25 +92,27 @@
deviceMapper.updateById(d);
}
}
- return "鍚屾闂ㄧ鏁版嵁锛氭柊澧炪��"+addList.size()+"銆戞潯锛屾洿鏂般��"+editList.size()+"銆戞潯锛屽垹闄ゃ��"+deleteList.size()+"銆戞潯";
+ return "鍚屾鏁版嵁锛氭柊澧炪��"+addList.size()+"銆戞潯锛屾洿鏂般��"+editList.size()+"銆戞潯锛屽垹闄ゃ��"+deleteList.size()+"銆戞潯";
}
- private void getAddAndEditList(List<Device> allList, List<AcsDeviceInfoResponse> allHkList, List<Device> addList, List<Device> editList, Date date) {
+ private void getDataChangeList(List<Device> allList, List<AcsDeviceInfoResponse> allHkList, List<Device> addList, List<Device> editList,List<Device> deleteList, Date date) {
if(allHkList!=null && allHkList.size()>0){
for(AcsDeviceInfoResponse device : allHkList){
Device model = getExistedDevice(device,allList);
if(model !=null){
//濡傛灉宸插瓨鍦紝鍒欐洿鏂版暟鎹�
- model = initDeviceByHkData(model,device,date);
+ model = initDataByHkData(model,device,date);
editList.add(model);
}else{
//濡傛灉涓嶅瓨鍦紝鍒欐柊澧炴暟鎹�
model = new Device();
- model = initDeviceByHkData(model,device,date);
+ model = initDataByHkData(model,device,date);
addList.add(model);
}
}
}
+ //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
+ getDeleteList(allList,allHkList,deleteList,date);
}
/**
@@ -117,7 +122,7 @@
* @param date
* @return
*/
- private Device initDeviceByHkData(Device model, AcsDeviceInfoResponse device,Date date) {
+ private Device initDataByHkData(Device model, AcsDeviceInfoResponse device,Date date) {
model.setIsdeleted(Constants.ZERO);
model.setIp(device.getIp());
model.setHkDate(date);
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
new file mode 100644
index 0000000..ee02471
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -0,0 +1,152 @@
+package com.doumee.service.business.impl.hksync;
+
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.param.BaseResponse;
+import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.ParkListRequest;
+import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse;
+import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse;
+import com.doumee.core.haikang.model.param.respose.ParkListResponse;
+import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.dao.business.DeviceMapper;
+import com.doumee.dao.business.ParksMapper;
+import com.doumee.dao.business.model.Device;
+import com.doumee.dao.business.model.Parks;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 娴峰悍鍋滆溅搴撳悓姝ervice瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+public class HkSyncParkServiceImpl extends HkSyncBaseServiceImpl {
+
+ @Autowired
+ private ParksMapper parksMapper;
+
+ /**
+ * 鍚屾娴峰悍鍋滆溅搴撴暟鎹�
+ * @param param
+ * @return
+ */
+ @Override
+// @Async
+ public String syncHkParks(ParkListRequest param){
+ List<Parks> deleteList = new ArrayList<>();
+ List<Parks> addList = new ArrayList<>();
+ List<Parks> editList = new ArrayList<>();
+ Date date = new Date();
+ //鏌ヨ鍏ㄩ儴褰撳墠鏁版嵁
+ List<Parks> allList = parksMapper.selectList(null);
+ //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
+ param = new ParkListRequest();
+ BaseResponse<List<ParkListResponse>> response = hkService.parkList(param);
+ if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
+ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝娴峰悍鍚屾鏁版嵁澶辫触~");
+ }
+ List<ParkListResponse> allHkList = response.getData();
+ // 鑾峰彇澧炲垹鏀规暟鎹泦鍚�
+ getDataChangeList(allList,allHkList,addList,editList,deleteList,date);
+ if(deleteList.size()>0){
+ //閫昏緫鍒犻櫎
+ for(Parks d : deleteList){
+ parksMapper.updateById(d);
+ }
+ }
+ if(addList.size()>0){
+ parksMapper.insertBatchSomeColumn(addList);
+ }
+ if(editList.size()>0){
+ for(Parks d : editList){
+ parksMapper.updateById(d);
+ }
+ }
+ return "鍚屾鏁版嵁锛氭柊澧炪��"+addList.size()+"銆戞潯锛屾洿鏂般��"+editList.size()+"銆戞潯锛屽垹闄ゃ��"+deleteList.size()+"銆戞潯";
+ }
+ private void getDataChangeList(List<Parks> allList, List<ParkListResponse> allHkList, List<Parks> addList, List<Parks> editList,List<Parks> deleteList, Date date) {
+ if(allHkList!=null && allHkList.size()>0){
+ for(ParkListResponse device : allHkList){
+ Parks model = getExistedData(device,allList);
+ if(model !=null){
+ //濡傛灉宸插瓨鍦紝鍒欐洿鏂版暟鎹�
+ model = initModelByHkData(model,device,date);
+ editList.add(model);
+ }else{
+ //濡傛灉涓嶅瓨鍦紝鍒欐柊澧炴暟鎹�
+ model = new Parks();
+ model = initModelByHkData(model,device,date);
+ addList.add(model);
+ }
+ }
+ }
+ //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
+ getDeleteList(allList,allHkList,deleteList,date);
+ }
+
+ /**
+ * 鍒濆鍖栨捣搴峰叆搴撴暟鎹�
+ * @param model
+ * @param device
+ * @param date
+ * @return
+ */
+ private Parks initModelByHkData(Parks model, ParkListResponse device,Date date) {
+ model.setIsdeleted(Constants.ZERO);
+ model.setName(device.getParkName());
+ model.setHkDate(date);
+ model.setCreateDate(DateUtil.StringToDate2(device.getCreateTime()));
+ model.setEditDate(DateUtil.StringToDate2(device.getUpdateTime()));
+ model.setHkId(device.getParkIndexCode());
+ model.setHkStatus(Constants.ONE);
+ return model;
+ }
+
+ private Parks getExistedData(ParkListResponse data, List<Parks> allList) {
+ if(allList.size()>0){
+ for(Parks r : allList){
+ if(StringUtils.equals(r.getHkId(), data.getParkIndexCode())){
+ //琛ㄧず鏈垹闄�
+ return r;
+ }
+ }
+ }
+ return null;
+ }
+
+ private void getDeleteList(List<Parks> allList, List<ParkListResponse> allHkList,List<Parks> deleteList ,Date date) {
+ if(allList!=null && allList.size()>0){
+ for(Parks data : allList){
+ if(isDeletedDevice(data,allHkList)){
+ data.setIsdeleted(Constants.ONE);
+ data.setEditDate(date);
+ deleteList.add(data);
+ }
+ }
+ }
+ }
+
+ private boolean isDeletedDevice(Parks device, List<ParkListResponse> allHkList) {
+ if(allHkList.size()>0){
+ for(ParkListResponse r : allHkList){
+ if(StringUtils.equals(device.getHkId(), r.getParkIndexCode())){
+ //琛ㄧず鏈垹闄�
+ return false;
+ }
+ }
+ }
+ return true;
+
+ }
+
+}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
new file mode 100644
index 0000000..40b3f34
--- /dev/null
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPrivilegeServiceImpl.java
@@ -0,0 +1,173 @@
+package com.doumee.service.business.impl.hksync;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.param.BaseResponse;
+import com.doumee.core.haikang.model.param.request.PrivilegeGroupRequest;
+import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse;
+import com.doumee.core.haikang.model.param.respose.PrivilegeGroupInfoResponse;
+import com.doumee.core.haikang.model.param.respose.PrivilegeGroupListResponse;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.dao.business.DeviceRoleMapper;
+import com.doumee.dao.business.model.Device;
+import com.doumee.dao.business.model.DeviceRole;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璁垮鏉冮檺缁勪俊鎭〃Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2023/11/30 15:33
+ */
+@Service
+public class HkSyncPrivilegeServiceImpl extends HkSyncBaseServiceImpl {
+
+ @Autowired
+ private DeviceRoleMapper DeviceRoleMapper;
+ /**
+ * 鍚屾娴峰悍璁垮缁勬潈闄愭暟鎹�
+ * @param param
+ * @return
+ */
+ @Override
+// @Async
+ public String syncPrivilege(PrivilegeGroupRequest param){
+ List<DeviceRole> deleteList = new ArrayList<>();
+ List<DeviceRole> addList = new ArrayList<>();
+ List<DeviceRole> editList = new ArrayList<>();
+ List<PrivilegeGroupInfoResponse> allHkList = new ArrayList<>();
+ Date date = new Date();
+ //鏌ヨ鍏ㄩ儴鐜版湁鏁版嵁锛屽彧绠$悊鍚屾 璁垮缁�
+ List<Integer> types = new ArrayList<>();
+ types.add(Constants.DOOR_ROLE_TYPE.fk);
+ types.add(Constants.DOOR_ROLE_TYPE.lw);
+ List<DeviceRole> allList = DeviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda().in(DeviceRole::getType,types));
+ boolean hasNext = true;
+ int curTotal = 0;
+ int curPage = 1;
+ while (hasNext){
+ //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
+ param = new PrivilegeGroupRequest();
+ param.setPageNo(curPage);
+ param.setPageSize(10000);
+ BaseResponse<PrivilegeGroupListResponse> response = hkService.privilegeGroup(param);
+ if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
+ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝娴峰悍鍚屾鏁版嵁澶辫触~");
+ }
+ PrivilegeGroupListResponse r = response.getData();
+ curTotal += 10000;
+ if(curTotal >= r.getTotal()){
+ hasNext = false;
+ }
+ if(r.getList() == null || r.getList().size()==0){
+ hasNext =false;
+ }else{
+ allHkList.addAll(r.getList());
+ }
+ curPage ++;
+ }
+ /**
+ * 鑾峰彇澧炲垹鏀规暟鎹泦鍚�
+ */
+ getDataChangeList(allList,allHkList,addList,editList,deleteList,date);
+ if(deleteList.size()>0){
+ //閫昏緫鍒犻櫎
+ for(DeviceRole d : deleteList){
+ DeviceRoleMapper.updateById(d);
+ }
+ }
+ if(addList.size()>0){
+ DeviceRoleMapper.insertBatchSomeColumn(addList);
+ }
+ if(editList.size()>0){
+ for(DeviceRole d : editList){
+ DeviceRoleMapper.updateById(d);
+ }
+ }
+ return "鍚屾鏁版嵁锛氭柊澧炪��"+addList.size()+"銆戞潯锛屾洿鏂般��"+editList.size()+"銆戞潯锛屽垹闄ゃ��"+deleteList.size()+"銆戞潯";
+ }
+
+ private void getDataChangeList(List<DeviceRole> allList, List<PrivilegeGroupInfoResponse> allHkList, List<DeviceRole> addList, List<DeviceRole> editList,List<DeviceRole> deleteList, Date date) {
+ if(allHkList!=null && allHkList.size()>0){
+ for(PrivilegeGroupInfoResponse device : allHkList){
+ DeviceRole model = getExistedData(device,allList);
+ if(model !=null){
+ //濡傛灉宸插瓨鍦紝鍒欐洿鏂版暟鎹�
+ model = initDataByHkData(model,device,date);
+ editList.add(model);
+ }else{
+ //濡傛灉涓嶅瓨鍦紝鍒欐柊澧炴暟鎹�
+ model = new DeviceRole();
+ model = initDataByHkData(model,device,date);
+ addList.add(model);
+ }
+ }
+ }
+ //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
+ getDeleteList(allList,allHkList,deleteList,date);
+ }
+
+ /**
+ * 鍒濆鍖栨捣搴峰叆搴撴暟鎹�
+ * @param model
+ * @param device
+ * @param date
+ * @return
+ */
+ private DeviceRole initDataByHkData(DeviceRole model, PrivilegeGroupInfoResponse device,Date date) {
+ model.setIsdeleted(Constants.ZERO);
+ model.setHkId(device.getPrivilegeGroupId());
+ model.setName(device.getPrivilegeGroupName());
+ model.setHkStatus(Constants.ONE);
+ model.setIsdeleted(Constants.ONE);
+ model.setIsDefault(device.getIsDefault());
+ model.setType(Constants.ZERO);
+ return model;
+ }
+
+ private DeviceRole getExistedData(PrivilegeGroupInfoResponse device, List<DeviceRole> allList) {
+ if(allList.size()>0){
+ for(DeviceRole r : allList){
+ if(StringUtils.equals(r.getHkId(), device.getPrivilegeGroupId())){
+ //琛ㄧず鏈垹闄�
+ return r;
+ }
+ }
+ }
+ return null;
+ }
+
+ private void getDeleteList(List<DeviceRole> allList, List<PrivilegeGroupInfoResponse> allHkList,List<DeviceRole> deleteList ,Date date) {
+ if(allList!=null && allList.size()>0){
+ for(DeviceRole device : allList){
+ if(isDeletedData(device,allHkList)){
+ device.setIsdeleted(Constants.ONE);
+ device.setEditDate(date);
+ deleteList.add(device);
+ }
+ }
+ }
+ }
+
+ private boolean isDeletedData(DeviceRole device, List<PrivilegeGroupInfoResponse> allHkList) {
+ if(allHkList.size()>0){
+ for(PrivilegeGroupInfoResponse r : allHkList){
+ if(StringUtils.equals(device.getHkId(), r.getPrivilegeGroupId())){
+ //琛ㄧず鏈垹闄�
+ return false;
+ }
+ }
+ }
+ return true;
+
+ }
+
+}
--
Gitblit v1.9.3