From e521fe9f2852dd008f176e462bf8ad3e5267e68f Mon Sep 17 00:00:00 2001 From: nidapeng <jp@doumee.com> Date: 星期二, 23 四月 2024 10:57:08 +0800 Subject: [PATCH] 最新版本 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 43 insertions(+), 16 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 b18377a..a68cbb0 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 @@ -110,7 +115,7 @@ }catch (Exception e) { log.error("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========澶辫触=======锛歕n" + e.getMessage()); }finally { - saveInterfaceLog(param,"/business/hksync/push/acs",result); + saveInterfaceLog(param,"/business/hksync/push/acs",result,false);//涓嶈鏃ュ織 } return null; @@ -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()); @@ -297,7 +306,7 @@ log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========澶辫触=======锛歕n"+e.getMessage()); } - saveInterfaceLog(param,"/business/hksync/push/visit",result); + saveInterfaceLog(param,"/business/hksync/push/visit",result,true); return null; } @@ -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()){ @@ -408,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; } @@ -465,7 +478,7 @@ log.error("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========澶辫触=======锛歕n"+e.getMessage()); } - saveInterfaceLog(param,"/business/hksync/push/parks",result); + saveInterfaceLog(param,"/business/hksync/push/parks",result,false); return null; } @@ -528,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()); @@ -562,7 +586,10 @@ return retention; } - private void saveInterfaceLog(Object param, String path,String result) { + private void saveInterfaceLog(Object param, String path,String result,boolean need) { + if(!need){ + return; + } InterfaceLog hkMonitoryLogDO=new InterfaceLog(); hkMonitoryLogDO.setType(1); hkMonitoryLogDO.setCreateDate(new Date()); -- Gitblit v1.9.3