From ad410e0ce185481c77c8a5e97d3de9f8e1ea011d Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 12 十月 2024 18:13:45 +0800
Subject: [PATCH] 最新版本
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 56 ++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 44 insertions(+), 12 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
index 4facbb1..2edaf6b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -182,20 +182,39 @@
//娴峰悍浜哄憳缂栫爜
String userNo = request.getData().getExtEventPersonNo();
if(StringUtils.isNotBlank(userNo)){
- Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getHkId,userNo).last("limit 1"));
+ Member member = memberMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>()
+ .selectAll(Member.class)
+ .selectAs(Member::getCompanyType,Company::getType)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+ .eq(Member::getHkId,userNo)
+ .last("limit 1"));
+ //濡傛灉浜哄憳淇℃伅瀛樺湪锛屽垯鍒犻櫎涔嬪墠鐨勬墍鏈夎繘鍦烘暟鎹紙鏃犺姝ゆ鎺ㄩ�佹槸杩涘巶杩樻槸鍑哄満鎺ㄩ�佷簨浠讹級
+ Device d = deviceMapper.selectOne(new QueryWrapper<Device>().lambda()
+ .eq(Device::getDoorId,request.getSrcIndex())
+ .eq(Device::getIsdeleted,Constants.ZERO)
+ .last("limit 1" ));
+ if(d!=null && !(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
+ //濡傛灉鏄繘闂紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
+ inoutDayCount.setInMemberNum(Constants.formatIntegerNum(inoutDayCount.getInMemberNum())+1);//鍏ュ満浜烘
+ }else{
+ inoutDayCount.setOutMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutMemberNum())+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(d!=null && !(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
//濡傛灉鏄繘闂紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
retentionList.add(getRetentionModelByRequest(member,request));
- inoutDayCount.setInMemberNum(1);//鍏ュ満浜烘
+ if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
+ inoutDayCount.setInSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getInSelfMemberNum())+1);//鍐呴儴浜哄憳鍏ュ満浜烘
+ }else{
+ inoutDayCount.setInOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getInOtherMemberNum())+1);//鐩稿叧鏂瑰叆鍦轰汉娆�
+ }
}else{
- inoutDayCount.setOutMemberNum(1);//绂诲満浜烘
+ if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
+ inoutDayCount.setOutSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutSelfMemberNum())+1);//鍐呴儴浜哄憳鍑哄満浜烘
+ }else{
+ inoutDayCount.setOutOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutOtherMemberNum())+1);//鐩稿叧鏂瑰嚭鍦轰汉娆�
+ }
}
}
}
@@ -384,6 +403,7 @@
List<VisitEvent> list = new ArrayList<>();
List<Integer> delRetentionLis = new ArrayList<>();
List<Retention> retentionList = new ArrayList<>();
+ InoutDayCount inoutDayCount = new InoutDayCount();
for(EventVisitIccmInfoRequest request : events){
if(request.getData() ==null || request.getData().getVisitorInvoices() ==null){
continue;
@@ -392,7 +412,7 @@
continue;
}
//娴峰悍璁垮璁板綍缂栫爜
- dealVisitDataByRequstIccm(request,delRetentionLis,retentionList);
+ dealVisitDataByRequstIccm(request,delRetentionLis,retentionList,inoutDayCount);
list.add(getVisitEventModelByRequestIccm(request,request.getData().getVisitorInformationList().get(0)));
}
if(list.size()>0){
@@ -409,6 +429,7 @@
//鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
retentionMapper.insert(retentionList);
}
+ dealInoutDayCountBiz(inoutDayCount);
log.info("銆愭捣搴疯瀹簨浠舵帹閫併��========鎴愬姛=======");
}catch (Exception e){
log.error("銆愭捣搴疯瀹簨浠舵帹閫併��========澶辫触=======锛歕n"+e.getMessage());
@@ -421,7 +442,7 @@
/**
* 鏍规嵁璁垮鎺ㄩ�佽瀹㈣褰曠紪鐮侊紝澶勭悊璁垮璁板綍銆佸湪鍦轰汉鍛樼瓑淇℃伅
*/
- private void dealVisitDataByRequstIccm(EventVisitIccmInfoRequest request, List<Integer> delRetentionLis, List<Retention> retentionList ) {
+ private void dealVisitDataByRequstIccm(EventVisitIccmInfoRequest request, List<Integer> delRetentionLis, List<Retention> retentionList, InoutDayCount inoutDayCount) {
EventVisitIccmDataRequest model = request.getData();
EventVisitIccmInvoiceParamRequest data = request.getData().getVisitorInvoices();
@@ -443,6 +464,7 @@
//濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
// retentionList.add(getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType()));
//鏉ヨ鏃堕棿
+ inoutDayCount.setSigninVisitorNum(Constants.formatIntegerNum(inoutDayCount.getSigninVisitorNum())+1);
updateVistis.setStatus(Constants.VisitStatus.signin);
updateVistis.setInDate(DateUtil.getISO8601DateByStr(data.getBeginTime()));
updateVistis.setOutDate(DateUtil.getISO8601DateByStr(data.getFinishTime()));
@@ -453,6 +475,7 @@
memberMapper.updateById(member);
}else if (Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.VISIT_SIGN_ICCM_OUT.getKey()) {
//濡傛灉鏄瀹㈢绂讳簨浠�
+ inoutDayCount.setLeaveVisitorNum(Constants.formatIntegerNum(inoutDayCount.getLeaveVisitorNum())+1);
updateVistis.setStatus(Constants.VisitStatus.signout);
updateVistis.setInDate(DateUtil.getISO8601DateByStr(data.getBeginTime()));
updateVistis.setOutDate(DateUtil.getISO8601DateByStr(data.getFinishTime()));
@@ -471,6 +494,11 @@
r.setDeviceName(request.getData().getParamValues().getSrcName());
r.setDeviceIndex(request.getData().getParamValues().getSrcIndex());
retentionList.add(r);
+ inoutDayCount.setInVisitorNum(Constants.formatIntegerNum(inoutDayCount.getInVisitorNum())+1);
+ }
+ if(request.getData()!=null&&request.getData().getParamValues()!=null &&
+ StringUtils.equals(request.getData().getParamValues().getInOrOut(),"2")){
+ inoutDayCount.setOutVisitorNum(Constants.formatIntegerNum(inoutDayCount.getOutVisitorNum())+1);
}
}
updateVistis.setEditDate(new Date());
@@ -692,12 +720,13 @@
List<CarEvent> list = new ArrayList<>();
List<Retention> retentionList = new ArrayList<>();
List<String> delRetentionList = new ArrayList<>();
+ InoutDayCount inoutDayCount = new InoutDayCount();
for(EventParkInfoRequest request : events){
if(request.getData() ==null ||StringUtils.isBlank(request.getData().getPlateNo())){
continue;
}
//灏佽浜嬩欢淇℃伅琛ㄥ璞�
- list.add(getParkEventModelByRequest(request,delRetentionList,retentionList));
+ list.add(getParkEventModelByRequest(request,delRetentionList,retentionList,inoutDayCount));
}
if(list.size()>0){
//鎻掑叆闂ㄧ璁板綍
@@ -713,6 +742,7 @@
//鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
retentionMapper.insert(retentionList);
}
+ dealInoutDayCountBiz(inoutDayCount);
log.info("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========鎴愬姛=======");
}catch (Exception e){
@@ -727,7 +757,7 @@
* @param request
* @return
*/
- private CarEvent getParkEventModelByRequest(EventParkInfoRequest request, List<String> delRetentionList , List<Retention> retentionList ) {
+ private CarEvent getParkEventModelByRequest(EventParkInfoRequest request, List<String> delRetentionList , List<Retention> retentionList,InoutDayCount inoutDayCount ) {
CarEvent event = new CarEvent();
event.setIsdeleted(Constants.ZERO);
event.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
@@ -803,9 +833,11 @@
//濡傛灉鏄叆鍘傛斁琛�
delRetentionList.add(event.getPlateNos());
retentionList.add(getRetentionModelByParkRequest(request));
+ inoutDayCount.setInCarNum(Constants.formatIntegerNum(inoutDayCount.getInCarNum())+1);
}else if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_OUT.getKey()){
//濡傛灉鏄嚭鍦烘斁琛�
delRetentionList.add(event.getPlateNos());
+ inoutDayCount.setOutCarNum(Constants.formatIntegerNum(inoutDayCount.getOutCarNum())+1);
}
}
return event;
--
Gitblit v1.9.3