From 39aea9fa06482f060eb6d1b939b2778156f028fc Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 16 十月 2024 18:49:36 +0800
Subject: [PATCH] 代码初始化
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 135 ++++++++++++++++++++++++++++++++-------------
1 files changed, 96 insertions(+), 39 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 2e329de..7143ee1 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
@@ -29,11 +29,11 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
/**
* 璁垮鏉冮檺缁勪俊鎭〃Service瀹炵幇
@@ -133,6 +133,7 @@
dealInoutDayCountBiz(inoutDayCount);
log.info("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========鎴愬姛=======");
}catch (Exception e) {
+ e.printStackTrace();
log.error("銆愭捣搴烽棬绂佷簨浠舵帹閫併��========澶辫触=======锛歕n" + e.getMessage());
}finally {
saveInterfaceLog(param,"/business/hksync/push/acs",result,false);//涓嶈鏃ュ織
@@ -142,6 +143,9 @@
}
private void dealInoutDayCountBiz(InoutDayCount param) {
+ if(param == null){
+ param = new InoutDayCount();
+ }
param.setTimeInfo(Utils.Date.getStart(new Date()));
InoutDayCount model = inoutDayCountMapper.selectOne(new QueryWrapper<InoutDayCount>().lambda()
.eq(InoutDayCount::getTimeInfo,param.getTimeInfo())
@@ -157,18 +161,18 @@
inoutDayCountMapper.update(null,new UpdateWrapper<InoutDayCount>().lambda()
.eq(InoutDayCount::getId,model.getId() )
.set(InoutDayCount::getEditDate,new Date() )
- .setSql(param.getInCarNum()!=null,"IN_CAR_NUM = ifnull(IN_CAR_NUM)"+param.getInCarNum() )
- .setSql(param.getOutCarNum()!=null,"OUT_CAR_NUM = ifnull(OUT_CAR_NUM)"+param.getOutCarNum() )
- .setSql(param.getInMemberNum()!=null,"IN_MEMBER_NUM = ifnull(IN_MEMBER_NUM)"+param.getInMemberNum() )
- .setSql(param.getOutMemberNum()!=null,"OUT_MEMBER_NUM = ifnull(OUT_MEMBER_NUM)"+param.getOutMemberNum() )
- .setSql(param.getInVisitorNum()!=null,"IN_VISITOR_NUM = ifnull(IN_VISITOR_NUM)"+param.getInVisitorNum() )
- .setSql(param.getOutVisitorNum()!=null,"OUT_VISITOR_NUM = ifnull(OUT_VISITOR_NUM)"+param.getOutVisitorNum() )
- .setSql(param.getSigninVisitorNum()!=null,"SIGNIN_VISITOR_NUM = ifnull(SIGNIN_VISITOR_NUM)"+param.getSigninVisitorNum() )
- .setSql(param.getLeaveVisitorNum()!=null,"LEAVE_VISITOR_NUM = ifnull(LEAVE_VISITOR_NUM)"+param.getLeaveVisitorNum() )
- .setSql(param.getInOtherMemberNum()!=null,"IN_OTHER_MEMBER_NUM = ifnull(IN_OTHER_MEMBER_NUM)"+param.getInOtherMemberNum() )
- .setSql(param.getOutOtherMemberNum()!=null,"OUT_OTHER_MEMBER_NUM = ifnull(OUT_OTHER_MEMBER_NUM)"+param.getOutOtherMemberNum() )
- .setSql(param.getInSelfMemberNum()!=null,"IN_SELF_MEMBER_NUM = ifnull(IN_SELF_MEMBER_NUM)"+param.getInSelfMemberNum() )
- .setSql(param.getOutSelfMemberNum()!=null,"OUT_SELF_MEMBER_NUM = ifnull(OUT_SELF_MEMBER_NUM)"+param.getOutSelfMemberNum() )
+ .setSql(param.getInCarNum()!=null,"IN_CAR_NUM = ifnull(IN_CAR_NUM,0)+"+param.getInCarNum() )
+ .setSql(param.getOutCarNum()!=null,"OUT_CAR_NUM = ifnull(OUT_CAR_NUM,0)+"+param.getOutCarNum() )
+ .setSql(param.getInMemberNum()!=null,"IN_MEMBER_NUM = ifnull(IN_MEMBER_NUM,0)+"+param.getInMemberNum() )
+ .setSql(param.getOutMemberNum()!=null,"OUT_MEMBER_NUM = ifnull(OUT_MEMBER_NUM,0)+"+param.getOutMemberNum() )
+ .setSql(param.getInVisitorNum()!=null,"IN_VISITOR_NUM = ifnull(IN_VISITOR_NUM,0)+"+param.getInVisitorNum() )
+ .setSql(param.getOutVisitorNum()!=null,"OUT_VISITOR_NUM = ifnull(OUT_VISITOR_NUM,0)+"+param.getOutVisitorNum() )
+ .setSql(param.getSigninVisitorNum()!=null,"SIGNIN_VISITOR_NUM = ifnull(SIGNIN_VISITOR_NUM,0)+"+param.getSigninVisitorNum() )
+ .setSql(param.getLeaveVisitorNum()!=null,"LEAVE_VISITOR_NUM = ifnull(LEAVE_VISITOR_NUM,0)+"+param.getLeaveVisitorNum() )
+ .setSql(param.getInOtherMemberNum()!=null,"IN_OTHER_MEMBER_NUM = ifnull(IN_OTHER_MEMBER_NUM,0)+"+param.getInOtherMemberNum() )
+ .setSql(param.getOutOtherMemberNum()!=null,"OUT_OTHER_MEMBER_NUM = ifnull(OUT_OTHER_MEMBER_NUM,0)+"+param.getOutOtherMemberNum() )
+ .setSql(param.getInSelfMemberNum()!=null,"IN_SELF_MEMBER_NUM = ifnull(IN_SELF_MEMBER_NUM,0)+"+param.getInSelfMemberNum() )
+ .setSql(param.getOutSelfMemberNum()!=null,"OUT_SELF_MEMBER_NUM = ifnull(OUT_SELF_MEMBER_NUM,0)+"+param.getOutSelfMemberNum() )
);
}
}
@@ -185,36 +189,41 @@
if(StringUtils.isNotBlank(userNo)){
Member member = memberMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>()
.selectAll(Member.class)
- .selectAs(Member::getCompanyType,Company::getType)
+ .selectAs(Company::getType,Member::getCompanyType)
.leftJoin(Company.class,Company::getId,Member::getCompanyId)
.eq(Member::getHkId,userNo)
+ .eq(Member::getIsdeleted,Constants.ZERO)
.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(d!=null && Constants.equalsInteger(d.getIsEntrance(),Constants.ONE)){
+ if(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){
- 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));
- if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
- inoutDayCount.setInSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getInSelfMemberNum())+1);//鍐呴儴浜哄憳鍏ュ満浜烘
+ if(d!=null && Constants.equalsInteger(d.getIsEntrance(),Constants.ONE)){
+ delRetentionLis.add(member.getId());
+ if( Constants.formatIntegerNum(request.getData().getExtEventInOut()) == Constants.ONE){
+ //濡傛灉鏄繘闂紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
+ retentionList.add(getRetentionModelByRequest(member,request));
+ if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
+ inoutDayCount.setInSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getInSelfMemberNum())+1);//鍐呴儴浜哄憳鍏ュ満浜烘
+ }else{
+ inoutDayCount.setInOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getInOtherMemberNum())+1);//鐩稿叧鏂瑰叆鍦轰汉娆�
+ }
}else{
- inoutDayCount.setInOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getInOtherMemberNum())+1);//鐩稿叧鏂瑰叆鍦轰汉娆�
- }
- }else{
- if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
- inoutDayCount.setOutSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutSelfMemberNum())+1);//鍐呴儴浜哄憳鍑哄満浜烘
- }else{
- inoutDayCount.setOutOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutOtherMemberNum())+1);//鐩稿叧鏂瑰嚭鍦轰汉娆�
+ if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
+ inoutDayCount.setOutSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutSelfMemberNum())+1);//鍐呴儴浜哄憳鍑哄満浜烘
+ }else{
+ inoutDayCount.setOutOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutOtherMemberNum())+1);//鐩稿叧鏂瑰嚭鍦轰汉娆�
+ }
}
}
}
@@ -326,7 +335,6 @@
retention.setMemberId(member.getId());
retention.setDeviceName(request.getSrcName());
retention.setDeviceIndex(request.getSrcIndex());
-
return retention;
}
@@ -437,7 +445,6 @@
}
saveInterfaceLog(param,"/business/hksync/push/visitIccm",result,true);
return null;
-
}
/**
@@ -487,7 +494,7 @@
delRetentionLis.add(visits.getMemberId());
//濡傛灉鏄瀹㈤�氳
if(request.getData()!=null&&request.getData().getParamValues()!=null &&
- StringUtils.equals(request.getData().getParamValues().getInOrOut(),"1")){
+ StringUtils.equals(request.getData().getParamValues().getInOrOut(),"0")){
//濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
Retention r = getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType());
r.setCarNo(request.getData().getParamValues().getPlateNos());
@@ -498,7 +505,7 @@
inoutDayCount.setInVisitorNum(Constants.formatIntegerNum(inoutDayCount.getInVisitorNum())+1);
}
if(request.getData()!=null&&request.getData().getParamValues()!=null &&
- StringUtils.equals(request.getData().getParamValues().getInOrOut(),"2")){
+ !StringUtils.equals(request.getData().getParamValues().getInOrOut(),"0")){
inoutDayCount.setOutVisitorNum(Constants.formatIntegerNum(inoutDayCount.getOutVisitorNum())+1);
}
}
@@ -564,6 +571,7 @@
event.setPhotoUrl(getHkImgUrl(detail.getFacePic()));
event.setPersonName(detail.getVisitorName());
event.setCarNo(detail.getPlateNo());
+ event.setRemark(JSONObject.toJSONString(request));
event.setInvoicesNo(request.getData().getVisitorInvoices().getInvoicesNo());//璁垮鍗曞彿
event.setIdType(detail.getCertType());
String idnum = detail.getCertNo();
@@ -743,7 +751,7 @@
dealInoutDayCountBiz(inoutDayCount);
log.info("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========鎴愬姛=======");
}catch (Exception e){
-
+ e.printStackTrace();
log.error("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========澶辫触=======锛歕n"+e.getMessage());
}
saveInterfaceLog(param,"/business/hksync/push/parks",result,false);
@@ -814,6 +822,55 @@
.last("limit 1" ));
if(cars!=null){
event.setMemberId(cars.getMemberId());
+ //鑷湁杞� 鏌ヨ褰撳墠鏄惁鏈夊緟绛惧埌鐨勪换鍔�
+ if(carsMapper.selectCount(new QueryWrapper<Cars>()
+ .lambda().eq(Cars::getCode,event.getPlateNos())
+ .eq(Cars::getType,Constants.ONE)
+ .eq(Cars::getIsdeleted,Constants.ZERO)
+ )>Constants.ZERO){
+ //鏌ヨ杞﹁締褰撳墠鏄惁瀛樺湪杩涜涓殑浠诲姟
+ if( platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda()
+ .eq(PlatformJob::getCarCodeFront,event.getPlateNos())
+ .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+ .in(PlatformJob::getStatus,
+ Constants.PlatformJobStatus.IN_WAIT.getKey(),
+ Constants.PlatformJobStatus.CALLED.getKey(),
+ Constants.PlatformJobStatus.WORKING.getKey(),
+ Constants.PlatformJobStatus.DONE.getKey(),
+ Constants.PlatformJobStatus.TRANSFERING.getKey(),
+ Constants.PlatformJobStatus.EXCEPTION.getKey(),
+ Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()
+ )
+ )<Constants.ZERO){
+ PlatformJob platformJob = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>().lambda()
+ .eq(PlatformJob::getCarCodeFront,event.getPlateNos())
+ .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+ .in(PlatformJob::getStatus,
+ Constants.PlatformJobStatus.WAIT_CONFIRM.getKey(),
+ Constants.PlatformJobStatus.WART_SIGN_IN.getKey()
+ )
+ .orderByAsc(PlatformJob::getCreateDate)
+ .last(" limit 1")
+ );
+ if(Objects.nonNull(platformJob)){
+ platformJob.setStatus(Constants.PlatformJobStatus.WAIT_CALL.getKey());
+ platformJob.setArriveDate(new Date());
+ platformJob.setSingType(Constants.TWO);
+ platformJob.setSignDate(new Date());
+ List<PlatformJob> signList = platformJobMapper.selectList(new QueryWrapper<PlatformJob>().lambda().apply(" DATE(SIGN_DATE) = DATE(NOW()) and sign_date is not null "));
+ if(CollectionUtils.isEmpty(signList)){
+ platformJob.setSignNum(Constants.ONE);
+ } else{
+ int maxNumber = Collections.max(signList.stream().map(i->i.getSignNum()).collect(Collectors.toList()));
+ platformJob.setSignNum(maxNumber + Constants.ONE);
+ }
+ platformJobMapper.updateById(platformJob);
+ }
+ }
+ };
+
+
+
}else{
Visits visits = visitsMapper.selectOne(new QueryWrapper<Visits>().lambda()
.eq(Visits::getCarNos,event.getPlateNos())
--
Gitblit v1.9.3