server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
@@ -66,6 +66,11 @@ String taskProgressNum= "/api/acps/v1/authDownload/task/progress";//æ¥è©¢ä¸è½½ä»»å¡è¿åº¦ String taskProgress= "/api/acps/v2/download_record/person/detail/search";//æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ æ»æ°v2 String authItemList= "/api/acps/v1/auth_item/list/search";//æ¥è¯¢æéæ¡ç®å表 String cardBingding= "/api/cis/v1/card/bindings";//æ¹éå¼å¡ String cardDeletion= "/api/cis/v1/card/deletion";//å¡çéå¡ String cardLoss= "/api/cis/v1/card/batch/loss";//æ¹éæå¤± String cardUnloss= "/api/cis/v1/card/batch/unLoss";//æ¹éè§£æ String taskPersoDetail= "/api/acps/v1/download_record/person/detail/search";//æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ } /** @@ -74,7 +79,8 @@ public enum TASK_TYPE { CARD(1, "å¡ç" ), FACE(4, "人è¸" ) FACE(4, "人è¸" ), CARD_FACE(5, "å¡ç+人è¸ï¼ç»åï¼" ), ; // æååé private String name; server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
@@ -525,5 +525,65 @@ saveInterfaceLog(body,result,path); return result; } /** * æ¹éå¼å¡ * @param body * @return */ public static String cardBingding(String body) { Map<String, String> path = getPath(HKConstants.InterfacePath.cardBingding); Map<String, String> header = new HashMap<>(); String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请æ±application/jsonç±»ååæ° saveInterfaceLog(body,result,path); return result; } /** * éå¡ * @param body * @return */ public static String cardDeletion(String body) { Map<String, String> path = getPath(HKConstants.InterfacePath.cardDeletion); Map<String, String> header = new HashMap<>(); String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请æ±application/jsonç±»ååæ° saveInterfaceLog(body,result,path); return result; } /** * æ¹éæå¤± * @param body * @return */ public static String cardLoss(String body) { Map<String, String> path = getPath(HKConstants.InterfacePath.cardLoss); Map<String, String> header = new HashMap<>(); String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请æ±application/jsonç±»ååæ° saveInterfaceLog(body,result,path); return result; } /** * æ¹éè§£æ * @param body * @return */ public static String cardUnloss(String body) { Map<String, String> path = getPath(HKConstants.InterfacePath.cardUnloss); Map<String, String> header = new HashMap<>(); String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请æ±application/jsonç±»ååæ° saveInterfaceLog(body,result,path); return result; } /** * æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ * @param body * @return */ public static String taskPersoDetail(String body) { Map<String, String> path = getPath(HKConstants.InterfacePath.taskPersoDetail); Map<String, String> header = new HashMap<>(); String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, "application/json", header);// post请æ±application/jsonç±»ååæ° saveInterfaceLog(body,result,path); return result; } } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/AuthItemListRequest.java
@@ -14,8 +14,8 @@ private Integer[] personStatus;// number[] False 人åç¶æ0ï¼å·²é ç½®æªä¸è½½1ï¼æ´æ°å¾ ä¸è½½2ï¼æ´æ°å¾ å é¤3ï¼å·²ä¸è½½4ï¼æªé ç½® private Integer[] cardStatus;// number[] False å¡çç¶æ0ï¼å·²é ç½®æªä¸è½½1ï¼æ´æ°å¾ ä¸è½½2ï¼æ´æ°å¾ å é¤3ï¼å·²ä¸è½½4ï¼æªé ç½® private Integer[] faceStatus ;//number[] False 人è¸ç¶æ0ï¼å·²é ç½®æªä¸è½½1ï¼æ´æ°å¾ ä¸è½½2ï¼æ´æ°å¾ å é¤3ï¼å·²ä¸è½½4ï¼æªé ç½® private AuthItemListTimeRequest configTime;//; object False é ç½®æ¶é´æ¥è¯¢å¯¹è±¡ private AuthItemListSortRequest sortObjects ;//object[] False ç®ååªæ¯æé ç½®æ¶é´ private TimeRangeRequest configTime;//; object False é ç½®æ¶é´æ¥è¯¢å¯¹è±¡ private List<SortRequest> sortObjects ;//object[] False ç®ååªæ¯æé ç½®æ¶é´ private Integer pageNo ;//number True 页ç ,pageNo>0 private Integer pageSize ;//number True 页大å°,0<pageSize<=1000 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/AuthItemListTimeRequest.java
ÎļþÒÑɾ³ý server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/CardBingdingRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package com.doumee.core.haikang.model.param.request; import lombok.Data; import java.util.List; @Data public class CardBingdingRequest { private String startDate ;//string False å¡çå¼å§æææ¶é´ï¼æ¶é´æ ¼å¼ï¼yyyy-MM-dd private String endDate;// string False å¡çæªæ¢æææ¶é´,æ¶é´æ ¼å¼ï¼yyyy-MM-dd ä¸è½å¤§äº2037å¹´12æ31æ¥ private List<CardInfoRequest> cardList ;//object[] True å¾ å¼å¡å表,æå¤§æ¯æ50å¼ å¡ï¼ä¸ºç©ºè¿åå ¬å ±é误ç ï¼è¶ è¿èå´è¿åä¸å¡é误ç ï¼åèéå½E.other.3 å¡çé误ç } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/CardInfoRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.doumee.core.haikang.model.param.request; import lombok.Data; @Data public class CardInfoRequest { private String cardNo ;//string True å¡å·,8~20个åç¬¦ï¼æ¯ææ°åå大å忝ã 建议æ¯ç±è¯»å¡å¨ç´æ¥è¯»åºæ¥çã 妿æ¯ä¸æ¹ç³»ç»åæ¥è¿æ¥ï¼éè¦æåè°ç å¡å·çè§åæè´ä¹°ç设å¤ä¸æ¯å¦å ¼å®¹ private String personId ;// string True 人åIDï¼æ ¹æ® è·å人åå表v2 æ¥å£è·åè¿ååæ°personId private String orgIndexCode ;// string False 人åæå±ç»ç»IndexCodeï¼ä¸ä¼ é»è®¤ä½¿ç¨æ ¹ç»ç»ï¼ ä»è·åç»ç»å表 æ¥å£è·åè¿ååæ°orgIndexCode private Integer cardType ;//number False å¡çç±»åï¼é»è®¤æ¯1ï¼ICå¡1ï¼ICå¡2ï¼CPUå¡3ï¼è¿è·ç¦»å¡4ï¼Må¡ } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/SortRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.doumee.core.haikang.model.param.request; import lombok.Data; @Data public class SortRequest { private String field ;// string False æåºå段ï¼å¯¹åºæ¥è¯¢ç¨çåæ°åç§° private String sort ;// string False æåºè§åï¼ascï¼æ£åºï¼ descï¼ååº } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/TaskPersonDetailRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,21 @@ package com.doumee.core.haikang.model.param.request; import lombok.Data; import java.util.List; @Data public class TaskPersonDetailRequest { private String downloadResultId;// string False ä¸è½½è®°å½å¯ä¸ID,使ç¨downloadResultIdæ¥è¯¢è®¾å¤ééä¸è½½è®°å½è¯¦æ æ¶ï¼å¿½ç¥taskIdä¸resourceInfoåæ®µï¼âä¸è½½è®°å½å¯ä¸IDâåâä¸è½½ä»»å¡æ è¯+设å¤éé对象â两è å¿ é¡»æä¸ä¸ªä¸ä¸ºç©ºï¼ï¼ä»æ¥è¯¢è®¾å¤ééæéä¸è½½è®°å½å表æ¥å£è·åè¿ååæ°downloadResultId private String taskId;// string False ä¸è½½ä»»å¡å¯ä¸æ è¯ï¼ä»æ¥è¯¢è®¾å¤ééæéä¸è½½è®°å½å表æ¥å£è·åè¿ååæ°taskId private TaskDataAdditionResourceRequest resourceInfo ;// object False 设å¤éé对象 private String[] personIds;// string[] False 人åç¼å·åè¡¨ï¼æ¥è¯¢äººåå表v2æ¥å£è·åè¿åæ¥æä¸çpersonIdåæ®µï¼æå¤§é¿åº¦1000 private String[] orgIds;// string[] False ç»ç»ç¼å·ï¼æ¥è¯¢ç»ç»å表v2æ¥å£è·åè¿åæ¥æä¸çorgIndexCodeåæ®µï¼æå¤§é¿åº¦1000 private Integer downloadResult;// integer False ä¸è½½ç»æï¼ 0 æåï¼ 1 å¤±è´¥ï¼ 2 é¨åæå private TimeRangeRequest downloadTime;// object False ä¸è½½æ¶é´æ¥è¯¢å¯¹è±¡ private List<SortRequest> sortObjects ;//object[] False ç®ååªæ¯æé ç½®æ¶é´ private Integer pageNo ;//number True 页ç ,pageNo>0 private Integer pageSize ;//number True 页大å°,0<pageSize<=1000 } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/TimeRangeRequest.java
ÎļþÃû´Ó server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/AuthItemListSortRequest.java ÐÞ¸Ä @@ -3,7 +3,7 @@ import lombok.Data; @Data public class AuthItemListSortRequest { public class TimeRangeRequest { private String startTime;// string False å¼å§æ¥æ,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String endTime ;//string False ç»ææ¥æ,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/AuthItemListDetailResponse.java
@@ -1,6 +1,6 @@ package com.doumee.core.haikang.model.param.respose; import com.doumee.core.haikang.model.param.request.AuthItemListTimeRequest; import com.doumee.core.haikang.model.param.request.TimeRangeRequest; import lombok.Data; @Data @@ -10,14 +10,14 @@ private String resourceIndexCode;// string False èµæºçå¯ä¸æ è¯ private Integer channelNo;// number False ééå· private String channelIndexCode ;//string False èµæºééå¯ä¸æ è¯ï¼å¨æéä¸è½½åé ç½®æ¥å£å ¥åæ¶å¯¹åºæ¥è¯¢æ¥å£ä¼è¿åï¼ä¸ä½ä¸ºæ¥è¯¢æ¥å£çæ¥è¯¢æ¡ä»¶ï¼ private AuthItemListTimeRequest templateConfigInfos;// Object[] False è®¡åæ¨¡æ¿ä¿¡æ¯ private TimeRangeRequest templateConfigInfos;// Object[] False è®¡åæ¨¡æ¿ä¿¡æ¯ private Integer personStatus;// number False 人åç¶æ,0ï¼å·²é ç½®æªä¸è½½1ï¼æ´æ°å¾ ä¸è½½2ï¼æ´æ°å¾ å é¤3ï¼å·²ä¸è½½4ï¼æªé ç½® private Integer cardStatus ;//number False å¡çç¶æ,0ï¼å·²é ç½®æªä¸è½½1ï¼æ´æ°å¾ ä¸è½½2ï¼æ´æ°å¾ å é¤3ï¼å·²ä¸è½½4ï¼æªé ç½® private Integer faceStatus ;//number False 人è¸ç¶æ,0ï¼å·²é ç½®æªä¸è½½1ï¼æ´æ°å¾ ä¸è½½2ï¼æ´æ°å¾ å é¤3ï¼å·²ä¸è½½4ï¼æªé ç½® private String cardJson ;//string False è®°å½å·²ä¸è½½å°è®¾å¤çå¡å·ï¼Mapæ ¼å¼ï¼å¡å·ï¼ç¶æï¼ï¼å ¶ä¸ç¶æ(0æ¹å表示ä¸è½½åå¡ççä¿¡æ¯åååäºï¼1å·²ä¸è½½)ï¼ private String configTime ;//string False é ç½®æ¶é´,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String startTime;// string False 人åæéæææï¼ä»¥äººä¸ºä¸å¿è®¾å¤æ¶ä½¿ç¨ï¼,å¼å§æ¶é´,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String endTime ;//string False 人åæéæææï¼ä»¥äººä¸ºä¸å¿è®¾å¤æ¶ä½¿ç¨ï¼,å¼å§æ¥æ,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String personExtendJson;// body string å¦ private String configTime ;//string False é ç½®æ¶é´,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String startTime;// string False 人åæéæææï¼ä»¥äººä¸ºä¸å¿è®¾å¤æ¶ä½¿ç¨ï¼,å¼å§æ¶é´,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String endTime ;//string False 人åæéæææï¼ä»¥äººä¸ºä¸å¿è®¾å¤æ¶ä½¿ç¨ï¼,å¼å§æ¥æ,éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private String personExtendJson;// body string å¦ } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/CardInfoResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.doumee.core.haikang.model.param.respose; import lombok.Data; @Data public class CardInfoResponse { private String cardNo ;//string True å¡å·,8~20个åç¬¦ï¼æ¯ææ°åå大å忝ã 建议æ¯ç±è¯»å¡å¨ç´æ¥è¯»åºæ¥çã 妿æ¯ä¸æ¹ç³»ç»åæ¥è¿æ¥ï¼éè¦æåè°ç å¡å·çè§åæè´ä¹°ç设å¤ä¸æ¯å¦å ¼å®¹ private String personId ;// string True 人åIDï¼æ ¹æ® è·å人åå表v2 æ¥å£è·åè¿ååæ°personId private String orgIndexCode ;// string False 人åæå±ç»ç»IndexCodeï¼ä¸ä¼ é»è®¤ä½¿ç¨æ ¹ç»ç»ï¼ ä»è·åç»ç»å表 æ¥å£è·åè¿ååæ°orgIndexCode private Integer cardType ;//number False å¡çç±»åï¼é»è®¤æ¯1ï¼ICå¡1ï¼ICå¡2ï¼CPUå¡3ï¼è¿è·ç¦»å¡4ï¼Må¡ } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TaskPersonDetailCardFaceResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package com.doumee.core.haikang.model.param.respose; import lombok.Data; import java.util.List; @Data public class TaskPersonDetailCardFaceResponse { private List<TaskPersonDetailCardInfoResponse> cards;// object[] False å¡çä¸è½½è®°å½ private List<TaskPersonDetailFaceInfoResponse> faces;// object[] False 人è¸ä¸è½½è®°å½ } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TaskPersonDetailCardInfoResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.doumee.core.haikang.model.param.respose; import lombok.Data; @Data public class TaskPersonDetailCardInfoResponse { private String id;// string False å¡å· private String operatorType;// number False æä½ç±»åï¼1. ä¸è½½æé 2. å 餿é private String errorCode;// string False é误ç ï¼0 â æåï¼å ¶ä»- 失败ï¼åèéå½E.2.3 åºå ¥æ§å¶æéé误ç } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TaskPersonDetailFaceInfoResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package com.doumee.core.haikang.model.param.respose; import lombok.Data; @Data public class TaskPersonDetailFaceInfoResponse { private String id;// string False å¡å· private String operatorType;// number False æä½ç±»åï¼1. ä¸è½½æé 2. å 餿é private String errorCode;// string False é误ç ï¼0 â æåï¼å ¶ä»- 失败ï¼åèéå½E.2.3 åºå ¥æ§å¶æéé误ç private String errorMsg;// string False é误æè¿°ï¼æ¯å¦ï¼å½åºç°äººè¸éå¤ï¼æçº¹é夿¶ï¼è¯¥å段è¿åéå¤çå¡å·ã } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TaskPersonDetailListResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.doumee.core.haikang.model.param.respose; import lombok.Data; import java.util.List; @Data public class TaskPersonDetailListResponse { private Integer total;// number False æ»æ¡æ° private List<TaskPersonDetailResponse> list;//object[] False 设å¤ééçä¸è½½è®°å½ } server/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/TaskPersonDetailResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,15 @@ package com.doumee.core.haikang.model.param.respose; import lombok.Data; @Data public class TaskPersonDetailResponse { private String downloadResultId;// string False ä¸è½½è®°å½å¯ä¸ID private String personId;// string False 人åç¼ç private String persondownloadResult;// string False ä¸è½½è®°å½ç¶æï¼åªææå/å¤±è´¥ç¶æï¼0:æå,1:å¤±è´¥ï¼ private String downloadTime;// string False ä¸è½½æ¶é´ï¼éç¨ISO8601æ¶é´æ ¼å¼ï¼æå¤§é¿åº¦32个å符ï¼å¦2018-09-03T17:30:08.000+08:00 private TaskPersonDetailCardFaceResponse personDownloadDetail;// object False ä¸è½½çè¯¦ç»æè¿° } server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -156,7 +156,7 @@ try { String res = HKTools.delBatchUser(JSONObject.toJSONString(param)); TypeReference typeReference = new TypeReference< BaseResponse<OrgOrUserAddFailureResponse>>(){}; new TypeReference< BaseResponse<List<UserDelResponse>>>(){}; BaseResponse<List<UserDelResponse >> result = JSONObject.parseObject(res, typeReference.getType()); logResult(result,"海康æ¹éæ°å¢äººå"); return result; @@ -682,6 +682,46 @@ } return null; } /** *海康æ¹éå¼å¡ * @return */ public static BaseResponse<List<CardInfoResponse>> cardBingding(CardBingdingRequest param){ log.info("ãæµ·åº·æ¹éå¼å¡ã================å¼å§===="+JSONObject.toJSONString(param)); String res = null; try { res = HKTools.cardBingding(JSONObject.toJSONString(param)); TypeReference typeReference = new TypeReference< BaseResponse <List<CardInfoResponse>> >(){}; BaseResponse<List<CardInfoResponse>> result = JSONObject.parseObject(res, typeReference.getType()); logResult(result,"海康æ¹éå¼å¡"); return result; }catch (Exception e){ log.error("ãæµ·åº·æ¹éå¼å¡ã================失败====ï¼\n"+ e.getMessage()); }finally { } return null; } /** *海康æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ * @return */ public static BaseResponse<TaskPersonDetailListResponse> taskPersoDetail(TaskPersonDetailRequest param){ log.info("ãæµ·åº·æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ ã================å¼å§===="+JSONObject.toJSONString(param)); String res = null; try { res = HKTools.taskPersoDetail(JSONObject.toJSONString(param)); TypeReference typeReference = new TypeReference< BaseResponse <TaskPersonDetailListResponse>>(){}; BaseResponse<TaskPersonDetailListResponse> result = JSONObject.parseObject(res, typeReference.getType()); logResult(result,"海康æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ "); return result; }catch (Exception e){ log.error("ãæµ·åº·æ¥è¯¢è®¾å¤ééç人åæéä¸è½½è¯¦æ ã================失败====ï¼\n"+ e.getMessage()); }finally { } return null; } private static void logResult(BaseResponse res,String name) { if(StringUtils.equals(res.getCode(),HKConstants.RESPONSE_SUCCEE)){ server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberCard.java
@@ -114,6 +114,7 @@ @ApiModelProperty(value = "ç±»å 0å³å¡è®¿å®¢ 1æ®é访客 2å é¨äººå", example = "1") @ExcelColumn(name="ç±»å 0å³å¡è®¿å®¢ 1æ®é访客 2å é¨äººå") @TableField(exist = false) private String typeName; @ApiModelProperty(value = "å ³é®å") server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -214,6 +214,7 @@ } company.setErpDate(date); company.setHkStatus(Constants.ZERO); company.setRemark("å¾ åæ¥å®é²å¹³å°"); return company; } /** @@ -236,6 +237,7 @@ } company.setErpDate(date); company.setHkStatus(Constants.ZERO); company.setRemark("å¾ åæ¥å®é²å¹³å°"); return company; } @@ -282,23 +284,24 @@ List<Member> allList = memberMapper.selectList(new QueryWrapper<Member>().lambda() .eq(Member::getIsdeleted,Constants.ZERO) .eq(Member::getType, Constants.memberType.internal)); dealUserChangeList(list,addList,updateList,delList,allList); dealUserChangeList(list,addList,updateList,delList,allList,param); if(addList.size()>0){ memberMapper.insertBatchSomeColumn(addList); for (Member member:addList) { dealRoleEmpower(member,param.getStartTime(), param.getEndTime()); dealRoleEmpower(member ); } } if(updateList.size()>0){ for(Member c : updateList){ dealRoleEmpower(c,param.getStartTime(), param.getEndTime()); dealRoleEmpower(c ); c.setHkStatus(Constants.ZERO); c.setRemark("å¾ åæ¥å®é²å¹³å°"); memberMapper.updateById(c); } } if(delList.size()>0){ for (Member member:delList) { dealRoleEmpower(member,param.getStartTime(), param.getEndTime()); dealRoleEmpower(member ); } delIds = delList.stream().map(m->m.getId()).collect(Collectors.toList()); memberMapper.update(null,new UpdateWrapper<Member>().lambda() @@ -311,15 +314,13 @@ } } public void dealRoleEmpower(Member member,Date startTime , Date endTime){ List<Integer> doorIds = null; doorIds = getRoleIdByParam(member.getRoleIds(),member); //å¦ææææé¨ç¦æ°æ®ï¼è¿è¡ç¨æ·æææ°æ®ä¸åä»»å¡å建 dealMemberRoleEmpower(member,doorIds,startTime,endTime); public void dealRoleEmpower(Member member ){ List<Integer> doorIds = getRoleIdByParam(member.getRoleIds(),member); //æ·»å 人åå¡çæ°æ® dealMemberCard(member,new UserUpdateRequest()); } private void dealUserChangeList(List<ErpUserListResponse> list, List<Member> addList, List<Member> updateList, List<Member> delList, List<Member> allList) { private void dealUserChangeList(List<ErpUserListResponse> list, List<Member> addList, List<Member> updateList, List<Member> delList, List<Member> allList,UserListRequest param) { Date date = new Date(); for(ErpUserListResponse response : list){ Company company = new Company(); @@ -337,7 +338,7 @@ continue; } //å°è£ æ°å¢ç»ç»å¯¹è±¡æ°æ® addList.add(getAddMemberModel(response,date,company)); addList.add(getAddMemberModel(response,date,company,param)); }else{ //å¦ææ¯æ´æ° if(Constants.formatIntegerNum(response.getIsdeleted()) == Constants.ONE){ @@ -347,7 +348,7 @@ // delIds.add(member.getId()); continue; } updateList.add(addUpdateMemberModel(response,member,date,company)); updateList.add(addUpdateMemberModel(response,member,date,company,param)); } } if(allList!=null && allList.size()>0){ @@ -359,17 +360,18 @@ } } private Member getAddMemberModel(ErpUserListResponse param, Date date,Company company) { private Member getAddMemberModel(ErpUserListResponse param, Date date,Company company,UserListRequest request) { Member member = new Member(); BeanUtils.copyProperties(param,member); member.setCreateDate(new Date()); member.setCreateDate(date); if(StringUtils.isBlank(param.getFaceImg())){ member.setHkStatus(Constants.THREE); }else{ member.setHkStatus(Constants.ZERO); member.setRemark("å¾ åæ¥å®é²å¹³å°"); } member.setErpStatus(Constants.ONE); member.setErpDate(new Date()); member.setErpDate(date); member.setErpId(param.getId()); member.setIdcardType(param.getIdType()); member.setFsStatus(Constants.ZERO); @@ -381,20 +383,25 @@ member.setRoleIds(param.getRoleIds()); member.setCompanyId(Objects.isNull(company)?null:company.getId()); member.setErpOrgId(param.getOrgId()); member.setStartTime(request.getStartTime()); member.setEndTime(request.getEndTime()); return member; } private Member addUpdateMemberModel(ErpUserListResponse param, Member member, Date date,Company company) { private Member addUpdateMemberModel(ErpUserListResponse param, Member member, Date date,Company company,UserListRequest request) { BeanUtils.copyProperties(param,member); String encryptIdNo = DESUtil.encrypt(Constants.EDS_PWD,param.getIdNo()); member.setIdcardNo(encryptIdNo); member.setIdcardDecode(Constants.getTuominStr(param.getIdNo())); member.setErpOrgId(param.getOrgId()); member.setEditDate(new Date()); member.setEditDate(date); member.setStatus(param.getStatus()); member.setErpDate(new Date()); member.setErpDate(date); member.setHkStatus(Constants.ZERO); member.setRemark("å¾ åæ¥å®é²å¹³å°"); member.setRoleIds(param.getRoleIds()); member.setStartTime(request.getStartTime()); member.setEndTime(request.getEndTime()); member.setCompanyId(Objects.isNull(company)?null:company.getId()); member.setErpOrgId(param.getOrgId()); return member; @@ -749,6 +756,7 @@ company.setId(null); company.setCreateDate(new Date()); company.setHkStatus(Constants.ZERO); company.setRemark("å¾ åæ¥å®é²å¹³å°"); company.setErpStatus(Constants.ONE); company.setErpDate(new Date()); company.setName(param.getName()); @@ -773,6 +781,7 @@ company.setHkId(rootOrgId); }*/ company.setHkStatus(Constants.ZERO); company.setRemark("å¾ åæ¥å®é²å¹³å°"); company.setErpDate(new Date()); company.setName(param.getName()); company.setErpParentId(param.getParentId()); @@ -816,43 +825,41 @@ BeanUtils.copyProperties(param,member); member.setId(null); member.setCreateDate(new Date()); member.setRemark("å¾ åæ¥å®é²å¹³å°"); member.setHkStatus(Constants.ZERO); member.setErpStatus(Constants.ONE); member.setErpDate(new Date()); member.setErpId(param.getId()); member.setFsStatus(Constants.ZERO); member.setCompanyId(company.getId()); member.setType(Constants.memberType.internal); String encryptIdNo = DESUtil.encrypt(Constants.EDS_PWD,param.getIdNo()); member.setIdcardNo(encryptIdNo); member.setStartTime(param.getValidStartTime()); member.setRoleId(param.getRoleIds()!=null?JSONObject.toJSONString(param.getRoleIds()):null); member.setEndTime(param.getValidEndTime()); member.setIdcardDecode(Constants.getTuominStr(param.getIdNo())); member.setErpOrgId(param.getOrgId()); doorIds = getRoleIdByParam(param.getRoleIds(),member); memberMapper.insert(member); //TODO æµ·åº·æ°æ®å建-------------ä¿®æ¹------------------- }else{ Integer id = member.getId(); BeanUtils.copyProperties(param,member); member.setId(id); member.setCompanyId(company.getId()); String encryptIdNo = DESUtil.encrypt(Constants.EDS_PWD,param.getIdNo()); member.setIdcardNo(encryptIdNo); member.setIdcardDecode(Constants.getTuominStr(param.getIdNo())); member.setErpOrgId(param.getOrgId()); member.setEditDate(new Date()); doorIds = getRoleIdByParam(param.getRoleIds(),member); member.setErpDate(new Date()); member.setHkStatus(Constants.ZERO); member.setRemark("å¾ åæ¥å®é²å¹³å°"); member.setStartTime(param.getValidStartTime()); member.setEndTime(param.getValidEndTime()); memberMapper.updateById(member); //å é¤ç¨æ·å¡çæ°æ® 人åè§è²å ³è memberCardMapper.delete(new QueryWrapper<MemberCard>().lambda().eq(MemberCard::getMemberId,member.getId())); //TODO æµ·åº·æ°æ®æ´æ° } //å¦ææææé¨ç¦æ°æ®ï¼è¿è¡ç¨æ·æææ°æ®ä¸åä»»å¡å建 dealMemberRoleEmpower(member,doorIds,param.getValidStartTime(),param.getValidEndTime()); //æ·»å 人åå¡çæ°æ® getRoleIdByParam(param.getRoleIds(),member); dealMemberCard(member,param); }catch (BusinessException e){ throw e; @@ -867,69 +874,45 @@ * @param param */ private void dealMemberCard(Member member, UserUpdateRequest param) { if(!Objects.isNull(param.getCardList())&¶m.getCardList().size()>Constants.ZERO){ if(CollectionUtils.isNotEmpty(param.getCardList())){ List<MemberCard> memberCardList = new ArrayList<>(); for (String id:param.getCardList()) { if(Objects.isNull(param.getCardList()) || param.getCardList().size()== Constants.ZERO){ param.setCardList(new ArrayList<>()); //å¦ææ²¡æå¡å·ï¼é»è®¤ç»ä¸ä¸ªå¡å· param.getCardList().add(Constants.VIRTUAL_CARD_INDEX+member.getId()); } if(CollectionUtils.isNotEmpty(param.getCardList())){ List<MemberCard> memberCardList = new ArrayList<>(); for (String id:param.getCardList()) { MemberCard model = memberCardMapper.selectOne(new QueryWrapper<MemberCard>().lambda() .eq(MemberCard::getCode,id) .eq(MemberCard::getMemberId,member.getId())); if(model!=null && Constants.equalsInteger(model.getHkStatus(),Constants.ONE)){ //妿已ç»å¼å¡å®æ,ä¸åä»»ä½å¤ç }else if(model !=null){ //妿åå¨ï¼ä½æªå¼å¡ï¼åç´æ¥æ´æ¹ä¸ºå¾ 忥 model.setHkStatus(Constants.ZERO); model.setRemark("å¾ åæ¥å®é²å¹³å°"); model.setIsdeleted(Constants.ZERO); memberCardMapper.updateById(model); }else{ MemberCard memberCard = new MemberCard(); memberCard.setCreateDate(new Date()); memberCard.setStatus(Constants.ONE); memberCard.setMemberId(member.getId()); memberCard.setIsdeleted(Constants.ZERO); memberCard.setCardType(HKConstants.CARD_TYPE.NORMAL.getKey()); memberCard.setHkStatus(Constants.ZERO); memberCard.setRemark("å¾ åæ¥å®é²å¹³å°"); memberCard.setType(Constants.TWO); memberCard.setCode(id); memberCardList.add(memberCard); } } if(memberCardList.size()>0){ memberCardMapper.insertBatchSomeColumn(memberCardList); } } } /** * //å¦ææææé¨ç¦æ°æ®ï¼è¿è¡ç¨æ·æææ°æ®ä¸åä»»å¡å建 * @param member */ private void dealMemberRoleEmpower(Member member, List<Integer> doorIds,Date startTime,Date endTime ) { //å 餿æèçææä¿¡æ¯ if(!Objects.isNull(member)&&!Objects.isNull(member.getId())){ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda() .eq(Empower::getMemberId,member.getId()) .set(Empower::getIsdeleted,Constants.ONE) .set(Empower::getSendStatus,Constants.ZERO)); } // empowerMapper.delete(new UpdateWrapper<Empower>().lambda() // .eq(Empower::getMemberId,member.getId()) // ); if(doorIds==null || doorIds.size() == 0){ return; } if(StringUtils.isBlank(member.getFaceImg())){ return; } if(Constants.equalsObject(member.getHkStatus(),Constants.ONE)){ //å¦æç¨æ·æ¯åæ¥æµ·åº·æåï¼æ·»å 带ä¸åæé List<Empower> list = new ArrayList<>(); List<Device> deviceList = deviceMapper.selectList(new QueryWrapper<Device>().lambda().in(Device::getId,doorIds)); if(deviceList == null || deviceList.size() == 0){ return; } for (Device deviceRole:deviceList) { Empower model = new Empower(); model.setCreateDate(new Date()); model.setMemberId(member.getId()); model.setIsdeleted(Constants.ZERO); model.setDeviceId(deviceRole.getId()); model.setSendStatus(Constants.ZERO); model.setStartTime(startTime); model.setEndTime(endTime); //é»è®¤ç»äºèæå¡ model.setCardNos(Constants.VIRTUAL_CARD_INDEX+member.getId()); model.setSendType(Constants.ZERO); list.add(model); } //å¯¼å ¥æ°å¢çææä¿¡æ¯ empowerMapper.insertBatchSomeColumn(list); } } private List<Integer> getRoleIdByParam(Integer[] param, Member member) { //æ·»å 人åè§è²å ³èæ°æ® if(!Objects.isNull(member)&&!Objects.isNull(member.getId())){ @@ -994,11 +977,12 @@ update.setEditDate(new Date()); update.setStartTime(param.getValidStartTime()); update.setEndTime(param.getValidEndTime()); update.setHkStatus(Constants.ZERO);//åä¸éæ´æ°é»è¾ update.setRemark("å¾ åæ¥å®é²å¹³å°"); memberMapper.updateById(update); //å¦ææææé¨ç¦æ°æ®ï¼è¿è¡ç¨æ·æææ°æ®ä¸åä»»å¡å建 dealMemberRoleEmpower(member,doorIds,param.getValidStartTime(),param.getValidEndTime()); } @Override public void parkCarAuthor(CarAuthorRequest param){ if(Objects.isNull(param) @@ -1031,6 +1015,7 @@ parkBook.setTimeType(Objects.isNull(param.getValidEndTime())?Constants.ZERO:Constants.ONE); parkBook.setMemberId(member.getId()); parkBook.setHkStatus(Constants.ZERO); parkBook.setRemark("å¾ åæ¥å®é²å¹³å°"); parkBookList.add(parkBook); } parkBookMapper.insertBatchSomeColumn(parkBookList); @@ -1060,6 +1045,7 @@ i.setStatus(param.getStatus().equals(Constants.ZERO)?Constants.VisitStatus.pass:Constants.VisitStatus.noPass); i.setEndCheckDate(DateUtil.StringToDate(param.getApproveDate(),"yyyy-MM-dd HH:mm:ss")); i.setHkStatus(Constants.ZERO); i.setRemark("å¾ åæ¥å®é²å¹³å°"); visitsMapper.updateById(i); }); } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
@@ -144,7 +144,7 @@ public String hkTaskAddtion() { TaskAdditionRequest param = new TaskAdditionRequest(); param.setTaskType(HKConstants.TASK_TYPE.FACE.getKey()); param.setTaskType(HKConstants.TASK_TYPE.CARD_FACE.getKey()); BaseResponse<TaskAdditionResponse> response = HKService.taskAddition(param); if(response!=null && StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE) server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
@@ -57,20 +57,84 @@ return; } for(Empower c : list){ TaskPersonDetailRequest param = new TaskPersonDetailRequest(); param.setPageNo(1); param.setPageSize(100); // param.setPersonIds(new ArrayList<>()); param.setPersonIds(new String[]{c.getMemberHkId()}); param.setTaskId(c.getHkId()); TaskDataAdditionResourceRequest rec = new TaskDataAdditionResourceRequest(); rec.setResourceIndexCode(c.getDeviceIndexCode()); rec.setResourceType(c.getDeviceType()); // rec.setChannelNos(c.getDeviceChannelNo().split(",")); param.setResourceInfo(rec); //æ¥è¯¢ä¸åç¶æ BaseResponse<TaskPersonDetailListResponse> response = HKService.taskPersoDetail(param); if(response!=null && StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE) && response.getData()!=null && response.getData().getList() != null && response.getData().getList().size()>0 ){ TaskPersonDetailResponse model = response.getData().getList().get(0); if(model != null && StringUtils.equals(model.getPersondownloadResult(),"0")){ //æ´æ°å·²å®æä¸è½½ä»»å¡ String remark = ""; String cardInfo = "å¡çä¸å失败"; TaskPersonDetailCardFaceResponse d = model.getPersonDownloadDetail(); if(d.getCards() !=null && d.getCards().size()>0){ cardInfo = "å¡çï¼ã" ; for(TaskPersonDetailCardInfoResponse card : d.getCards()){ cardInfo +=card.getId()+" "; } cardInfo += "ãä¸åæå"; } if(d.getFaces() == null || d.getFaces().size() ==0){ remark = cardInfo+"ï¼ ä¸æ¯æäººè¸è®¾å¤ï¼"; }else{ remark = ""+cardInfo+"ï¼äººè¸ä¸åæåï¼"; } empowerMapper.update(null,new UpdateWrapper<Empower>() .lambda() .eq(Empower::getId,c.getId() ) .set(Empower::getRemark,remark ) .set(Empower::getSendInfo,remark ) .set(Empower::getSendStatus,Constants.EmpowerStatus.pass) ); } } } }catch (Exception e){ e.printStackTrace(); }finally { Constants.DEALING_HK_EMPOWER_DETAIL=false; } } public void syncEmpowerDetailDataOld(){ if(Constants.DEALING_HK_EMPOWER_DETAIL){ return ; } Constants.DEALING_HK_EMPOWER_DETAIL = true; try { //æ¥è¯¢ææå®æä¸è½½ï¼å¾ æ¥è¯¢ç»æçæ°æ®è®°å½ List<Empower> list = getDealListDetail(); if(list == null || list.size() ==0){ return; } for(Empower c : list){ AuthItemListRequest param = new AuthItemListRequest(); param.setPageNo(1); param.setPageSize(100); // param.setPersonIds(new ArrayList<>()); // AuthItemListPersonRequest p = new AuthItemListPersonRequest(); // p.setPersonIds(c.getMemberHkId()); param.setPersonIds(new String[]{c.getMemberHkId()}); param.setQueryType(c.getDeviceType()); param.setQueryType(c.getDeviceType()); TaskDataAdditionResourceRequest rec = new TaskDataAdditionResourceRequest(); rec.setResourceIndexCode(c.getDeviceIndexCode()); rec.setResourceType(c.getDeviceType()); rec.setChannelNos(c.getDeviceChannelNo().split(",")); // rec.setChannelNos(c.getDeviceChannelNo().split(",")); List<TaskDataAdditionResourceRequest> resourceRequests = new ArrayList<>(); resourceRequests.add(rec); // param.setResourceInfos(resourceRequests); //æ¥è¯¢å·²ä¸è½½ @@ -85,7 +149,7 @@ //æ´æ°å·²å®æä¸è½½ä»»å¡ empowerMapper.update(null,new UpdateWrapper<Empower>() .lambda() .eq(Empower::getHkId,c.getHkId() ) .eq(Empower::getId,c.getId() ) .set(Empower::getSendStatus,Constants.EmpowerStatus.pass) ); } } @@ -151,7 +215,7 @@ try { //å å 餿æéè¦åæ¶ææçæ°æ® dealDelListTask(getDealList(Constants.ONE)); //æ¥è¯¢ææéè¦åæ¥çæ°æ® //æ¥è¯¢ææéè¦åæ¥çæ°æ®,éæ°ä¸åææ°äººåæéå³å¯ dealNewListTask(getDealList(Constants.ZERO)); }catch (Exception e){ e.printStackTrace(); @@ -188,6 +252,7 @@ update.setEditDate(date); update.setHkId(taskId); update.setRemark(status?"ä¸å任塿§è¡æå":"ä¸å任塿§è¡å¤±è´¥"); update.setSendInfo(status?"ä¸å任塿§è¡æå":"ä¸å任塿§è¡å¤±è´¥"); //ä¸åä¸ update.setSendStatus(status?Constants.EmpowerStatus.ing:Constants.EmpowerStatus.fail); empowerMapper.updateById(update); @@ -200,7 +265,8 @@ update.setEditDate(date); update.setHkId(taskId); update.setSendStatus(Constants.EmpowerStatus.fail); // update.setRemark( "æ·»å ä¸å任塿°æ®åªé¤ææå¤±è´¥"); update.setSendInfo( "æ·»å ä¸å任塿°æ®åªé¤ææå¤±è´¥"); update.setRemark( "æ·»å ä¸å任塿°æ®åªé¤ææå¤±è´¥"); empowerMapper.updateById(update); } } @@ -234,6 +300,7 @@ update.setEditDate(date); update.setHkId(taskId); update.setRemark(status?"ä¸å任塿å":"ä¸åä»»å¡å¤±è´¥"); update.setSendInfo(status?"ä¸å任塿å":"ä¸åä»»å¡å¤±è´¥"); //ä¸åä¸ update.setSendStatus(status?Constants.EmpowerStatus.ing:Constants.EmpowerStatus.fail); empowerMapper.updateById(update); @@ -248,6 +315,7 @@ update.setHkId(taskId); update.setSendStatus(Constants.EmpowerStatus.fail); update.setRemark( "æ·»å ä¸å任塿°æ®å¤±è´¥"); update.setSendInfo( "æ·»å ä¸å任塿°æ®å¤±è´¥"); empowerMapper.updateById(update); } @@ -272,6 +340,7 @@ ||StringUtils.isBlank(c.getDeviceType()) ||StringUtils.isBlank(c.getDeviceIndexCode())){ //å¿ å¡«åæ°æ ¡éª c.setSendInfo("设å¤ä¿¡æ¯ä¸æ¯æææä¸åï¼æ£æ¥äººåæ¯å¦å·²ä¸å海康æè è®¾å¤æ¯å¦ã设å¤ç±»åãééå·ãæ¯å¦å®å"); c.setRemark("设å¤ä¿¡æ¯ä¸æ¯æææä¸åï¼æ£æ¥äººåæ¯å¦å·²ä¸å海康æè è®¾å¤æ¯å¦ã设å¤ç±»åãééå·ãæ¯å¦å®å"); return false; } @@ -295,7 +364,7 @@ param.setPersonInfos(personInfos); //--------------å¡çæ·»å ---------- if(StringUtils.isNotBlank(c.getCardNos())){ /* if(StringUtils.isNotBlank(c.getCardNos())){ List<TaskDataAdditionCardRequest> cards = new ArrayList<>(); for(String s : c.getCardNos().split(",")){ TaskDataAdditionCardRequest tc = new TaskDataAdditionCardRequest(); @@ -305,13 +374,14 @@ cards.add(tc); } param.setCards(cards); } }*/ BaseResponse response = HKService.taskDataAddition(param); if(response!=null && StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE)){ return true; }else{ c.setRemark("æ·»å 人åã设å¤ééæéä¸åæ°æ®å¤±è´¥"+(response!=null?response.getMsg():"")); c.setSendInfo("æ·»å 人åã设å¤ééæéä¸åæ°æ®å¤±è´¥"+(response!=null?response.getMsg():"")); return false; } } @@ -342,6 +412,8 @@ queryWrapper.selectAs(Device::getResourceType,Empower::getDeviceType); queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId); queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.downloaded); queryWrapper.orderByAsc(Empower::getSendDate); queryWrapper.isNotNull(Empower::getMemberHkId) ; List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper); return list; } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java
@@ -50,6 +50,8 @@ @Autowired private EmpowerMapper empowerMapper; @Autowired private MemberCardMapper memberCardMapper; @Autowired private MemberJoinMapper memberMapper; @Autowired private ERPSyncService erpSyncService; @@ -286,7 +288,7 @@ //æ¥è¯¢æ°æ®åºåå¨çæé List<DeviceRole> deviceRoleList= deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda() .eq(DeviceRole::getType,Constants.TWO) .exists("(select b.id from member_role b where b.ROLE_ID = device_role.ID and b.MEMBER_ID="+member.getRoleId()+")")); .exists("(select b.id from member_role b where b.ROLE_ID = device_role.ID and b.MEMBER_ID="+member.getId()+")")); if(CollectionUtils.isNotEmpty(deviceRoleList)){ List<MemberRole> memberRoleList = new ArrayList<>(); String ids = ""; @@ -318,7 +320,7 @@ //å¦ææ²¡æç»ç»ä¸åå¤ç return false; } if(StringUtils.isBlank(c.getHkId())){ if(!Constants.equalsInteger(Constants.ONE,c.getIsdeleted()) && StringUtils.isBlank(c.getHkId())){ //妿æ°å¢åæ¥æ¸æ dealUserHkAddBiz(c,date,path); }else{ @@ -328,6 +330,11 @@ return false; } private void dealMemberRoleEmpower(Member member ) { //å¤çæ°å¢ç人åå¡çæ°æ®ï¼ä¸æµ·åº·åæ¥ï¼ List<MemberCard> cards = dealMemberHkCard(member); if(cards == null || cards.size() == 0){ return; } List<Integer> doorIds = getRoleIdByParam(member); if(doorIds==null || doorIds.size() == 0){ return; @@ -335,9 +342,12 @@ if(StringUtils.isBlank(member.getFaceImg())){ return; } if(Constants.equalsObject(member.getHkStatus(),Constants.ONE)){ //å¦æç¨æ·æ¯åæ¥æµ·åº·æåï¼æ·»å 带ä¸åæé List<Empower> list = new ArrayList<>(); List<Integer> deviceIds =new ArrayList<>();//æ°è®¾å¤ç¼ç éå List<Empower> list = new ArrayList<>();//æ°ææè®°å½éå if(Constants.equalsInteger(member.getIsdeleted(),Constants.ZERO) && Constants.equalsObject(member.getHkStatus(),Constants.ONE)){ //å¦æç¨æ·æ¯åæ¥æµ·åº·æåï¼æ·»å 带ä¸åæéï¼åªç®¡çæ°å¢æè ç¼è¾çï¼ List<Device> deviceList = deviceMapper.selectList(new QueryWrapper<Device>().lambda().in(Device::getId,doorIds)); if(deviceList == null || deviceList.size() == 0){ return; @@ -349,17 +359,109 @@ model.setIsdeleted(Constants.ZERO); model.setDeviceId(deviceRole.getId()); model.setSendStatus(Constants.ZERO); model.setSendInfo("å¾ åæ¥å®é²å¹³å°"); model.setRemark("å¾ åæ¥å®é²å¹³å°"); model.setStartTime(member.getStartTime()); model.setEndTime(member.getEndTime()); //é»è®¤ç»äºèæå¡ model.setCardNos(Constants.VIRTUAL_CARD_INDEX+member.getId()); model.setSendType(Constants.ZERO); //æ è®°ææ°çææè®¾å¤ç¼ç éå deviceIds.add(deviceRole.getId()); list.add(model); } //å¯¼å ¥æ°å¢çææä¿¡æ¯ } //å¾ ç§»é¤æéçè®¾å¤æ°æ®ææè®°å½ï¼é对å é¤åæ´æ°ä¸¢å¤±çæéï¼éè¦åæ¥ä¸åå 餿éï¼ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda() .eq(Empower::getMemberId,member.getId()) .set(Empower::getIsdeleted,Constants.ONE) .eq(Empower::getIsdeleted,Constants.ZERO) .notIn(deviceIds.size()>0,Empower::getDeviceId,deviceIds) .set(Empower::getSendStatus,Constants.ZERO)); //å¯¼å ¥æ°å¢çææä¿¡æ¯ if(list.size()>0){ //ç´æ¥è¦çéå¤çè®¾å¤æéï¼ç´æ¥å é¤å³å¯ empowerMapper.delete(new UpdateWrapper<Empower>().lambda() .eq(Empower::getMemberId,member.getId()) .eq(Empower::getIsdeleted,Constants.ZERO) .in(Empower::getDeviceId,deviceIds) ); empowerMapper.insertBatchSomeColumn(list); } } /** * 对人å带å¼å¡æ°æ®è¿è¡èªå¨å¼å¡æä½ * @param member * @return */ private List<MemberCard> dealMemberHkCard(Member member) { List<MemberCard> memberCards = memberCardMapper.selectList(new QueryWrapper<MemberCard>().lambda() .eq(MemberCard::getMemberId,member.getId()) .eq(MemberCard::getType,Constants.TWO) .eq(MemberCard::getHkStatus,Constants.ZERO) ); if(memberCards==null || memberCards.size()==0){ //没æå¸¦å¤ççæ°æ®ï¼ç´æ¥è·³è¿ return memberCardMapper.selectList(new QueryWrapper<MemberCard>().lambda() .eq(MemberCard::getMemberId,member.getId()) .eq(MemberCard::getType,Constants.TWO) .eq(MemberCard::getHkStatus,Constants.ONE) ); } List<Integer> allCodes = new ArrayList<>(); List<String> doneCodes = new ArrayList<>(); CardBingdingRequest param = new CardBingdingRequest(); if(member.getStartTime() !=null && member.getEndTime()!=null){ param.setStartDate(DateUtil.getISO8601Timestamp(member.getStartTime())); param.setEndDate(DateUtil.getISO8601Timestamp(member.getEndTime())); } param.setCardList(new ArrayList<>()); for(MemberCard m : memberCards){ allCodes.add(m.getId()); if(StringUtils.isBlank(m.getCode())){ continue; } CardInfoRequest cr = new CardInfoRequest(); cr.setCardNo(m.getCode()); cr.setOrgIndexCode(member.getCompanyHkId()); cr.setPersonId(member.getHkId()); cr.setCardType(m.getCardType()); param.getCardList().add(cr); } //å¤çæ°å¢æ°æ® BaseResponse<List<CardInfoResponse>> result = HKService.cardBingding(param); if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) ){ if(result.getData()!=null ){ for(CardInfoResponse r : result.getData()){ doneCodes.add(r.getCardNo()); } } } if(doneCodes.size()>0){ memberCardMapper.update(null,new UpdateWrapper<MemberCard>().lambda() .eq(MemberCard::getMemberId,member.getId()) .eq(MemberCard::getHkStatus,Constants.ZERO) .set(MemberCard::getHkStatus,Constants.ONE) .set(MemberCard::getHkDate,new Date()) .set(MemberCard::getRemark,"å¼å¡æå") .in(MemberCard::getCode,doneCodes)); } memberCardMapper.update(null,new UpdateWrapper<MemberCard>().lambda() .eq(MemberCard::getMemberId,member.getId()) .eq(MemberCard::getHkStatus,Constants.ZERO) .set(MemberCard::getHkStatus,Constants.TWO) .set(MemberCard::getRemark,"å¼å¡å¤±è´¥") .set(MemberCard::getHkDate,new Date()) .notIn(doneCodes.size()>0,MemberCard::getCode,doneCodes) .in(MemberCard::getId,allCodes)); return memberCardMapper.selectList(new QueryWrapper<MemberCard>().lambda() .eq(MemberCard::getMemberId,member.getId()) .eq(MemberCard::getType,Constants.TWO) .eq(MemberCard::getHkStatus,Constants.ONE) ); } /** * 妿ä¹åå·²ç»åæµ·åº·åæ¥ï¼åæ´æ°ç¨æ·æ°æ®ä»¥åäººè¸æ°æ®ï¼å¯è½æ°å¢äººè¸ ä¹å¯è½æ´æ°äººè¸ï¼ * @param c @@ -373,6 +475,9 @@ boolean r = doHkDeleteUser(c.getId(),c.getHkId(),date); c.setHkStatus(r?Constants.ONE:Constants.TWO); c.setRemark(r?null:"å 餿µ·åº·äººåä¿¡æ¯å¤±è´¥ï¼"); c.setIsdeleted(r? Constants.ONE: Constants.ZERO);//å é¤å¤±è´¥ï¼æ¢å¤æ°æ® //å 餿æç»å®çå¡çä¿¡æ¯ memberCardMapper.delete(new QueryWrapper<MemberCard>().lambda().eq(MemberCard::getMemberId,c.getId())); }else{ //å¤çä¿®æ¹æ°æ®ï¼å¹¶ä¸æ´æ°äººè¸ UserAddRequest addHkModel = getUserAddModel(c,path,1);//ä¿®æ¹