From 829f863fe0c6be33067d9fd4115660472bf20852 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 12 十月 2024 18:08:08 +0800
Subject: [PATCH] 最新版本

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java |   41 +++++++++++++++++++++++++++++++----------
 1 files changed, 31 insertions(+), 10 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..e7c783d 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);//鐩稿叧鏂瑰嚭鍦轰汉娆�
+                    }
                 }
             }
         }
@@ -692,12 +711,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 +733,7 @@
                 //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
                 retentionMapper.insert(retentionList);
             }
+            dealInoutDayCountBiz(inoutDayCount);
             log.info("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========鎴愬姛=======");
         }catch (Exception e){
 
@@ -727,7 +748,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()));

--
Gitblit v1.9.3