From 87ec373c158f7fa4c65fb037822fe7142a6fd5e7 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期二, 26 三月 2024 16:46:32 +0800
Subject: [PATCH] 整理
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 41 insertions(+), 12 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
index d872e52..d967f24 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.doumee.config.DataSyncConfig;
import com.doumee.config.SpringContextUtil;
import com.doumee.core.haikang.model.HKConstants;
import com.doumee.core.haikang.model.param.request.event.acs.EventAcsInfoRequest;
@@ -55,6 +56,10 @@
private DeviceEventMapper deviceEventMapper;
@Autowired
private MemberMapper memberMapper;
+ @Autowired
+ private DeviceMapper deviceMapper;
+ @Autowired
+ private DataSyncConfig dataSyncConfig;
@Autowired
private CarEventMapper carEventMapper;
@Autowired
@@ -129,8 +134,12 @@
Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getHkId,userNo).last("limit 1"));
if(member !=null){
//濡傛灉浜哄憳淇℃伅瀛樺湪锛屽垯鍒犻櫎涔嬪墠鐨勬墍鏈夎繘鍦烘暟鎹紙鏃犺姝ゆ鎺ㄩ�佹槸杩涘巶杩樻槸鍑哄満鎺ㄩ�佷簨浠讹級
+ Device d = deviceMapper.selectOne(new QueryWrapper<Device>().lambda()
+ .eq(Device::getDoorId,request.getSrcIndex())
+ .eq(Device::getIsdeleted,Constants.ZERO)
+ .last("limit 1" ));
delRetentionLis.add(member.getId());
- if(Constants.formatIntegerNum(request.getData().getExtEventInOut()) == Constants.ONE){
+ if(!(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
//濡傛灉鏄繘闂紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
retentionList.add(getRetentionModelByRequest(member,request));
}
@@ -225,7 +234,7 @@
private Retention getRetentionModelByRequest(Member member, EventAcsInfoRequest request) {
Retention retention = new Retention();
retention.setIsdeleted(Constants.ZERO);
- retention.setCreateDate(DateUtil.getISO8601DateByStr(request.getData().getExtReceiveTime()));
+ retention.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
retention.setClasses(member.getClasses());
retention.setCode(member.getCode());
retention.setIdcardNo(member.getIdcardNo());
@@ -236,7 +245,7 @@
retention.setCompanyId(member.getCompanyId());
retention.setCompanyName(member.getCompanyName());
retention.setEventCode(request.getData().getExtEventCode()+"");
- retention.setEventDate(DateUtil.getISO8601DateByStr(request.getData().getExtReceiveTime()));
+ retention.setEventDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
retention.setFaceImg(member.getFaceImg());
retention.setImgurl(member.getImgurl());
retention.setPhone(member.getPhone());
@@ -317,6 +326,10 @@
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_IN.getKey()){
@@ -326,6 +339,11 @@
updateVistis.setStatus(Constants.VisitStatus.signin);
updateVistis.setInDate(DateUtil.getISO8601DateByStr(model.getStartTime()));
updateVistis.setOutDate(DateUtil.getISO8601DateByStr(model.getEndTime()));
+ //鏇存柊鏈�鏂版潵璁挎椂闂�
+ Member member = new Member();
+ member.setLastVisitDate(updateVistis.getInDate());
+ member.setId(visits.getMemberId());
+ memberMapper.updateById(member);
}else {
//濡傛灉鏄瀹㈢绂讳簨浠�
updateVistis.setStatus(Constants.VisitStatus.signout);
@@ -403,14 +421,14 @@
retention.setType(visits.getMemberType());
retention.setCompanyId(visits.getCompanyId());
retention.setCompanyName(visits.getCompanyName());
- retention.setEventCode(request.getEventType()+"");
+ retention.setEventCode(request.getSrcType()+"");
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());
+// retention.setDeviceName(request.getSrcName());
+// retention.setDeviceIndex(request.getSrcIndex());
return retention;
}
@@ -523,14 +541,25 @@
event.setPlatePicUrl(getHkImgUrl(request.getData().getPicUrl().getPlatePicUrl()));
}
if(StringUtils.isNotBlank(event.getPlateNos())){
- ParkBook cars = parkBookMapper.selectOne(new QueryWrapper<ParkBook>().lambda()
- .eq(ParkBook::getCarCode,event.getPlateNos())
- .eq(ParkBook::getIsdeleted,Constants.ONE )
+ ParkBook cars = parkBookMapper.selectOne(new QueryWrapper<ParkBook>().lambda()
+ .eq(ParkBook::getCarCode,event.getPlateNos())
+ .eq(ParkBook::getIsdeleted,Constants.ZERO )
+ .last("limit 1" ));
+ if(cars!=null){
+ event.setMemberId(cars.getMemberId());
+ }else{
+ Visits visits = visitsMapper.selectOne(new QueryWrapper<Visits>().lambda()
+ .eq(Visits::getCarNos,event.getPlateNos())
+ .eq(Visits::getIsdeleted,Constants.ZERO )
+ .in(Visits::getStatus,Constants.VisitStatus.signin,Constants.VisitStatus.signout)//鏈�杩戜竴涓凡鍒拌揪鎴栬�呭凡绛剧
+ .isNull(Visits::getParentId)
+ .orderByDesc(Visits::getId)
.last("limit 1" ));
- if(cars!=null){
- event.setMemberId(cars.getMemberId());
+ if(visits!=null){
+ //鏈�杩戜娇鐢ㄨ杞︾殑鐢宠浜猴紙宸插埌杈撅級
+ event.setMemberId(visits.getMemberId());
}
-
+ }
if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_IN.getKey()){
//濡傛灉鏄叆鍘傛斁琛�
delRetentionList.add(event.getPlateNos());
--
Gitblit v1.9.3