From de21f15d5b96a714b012337cf8c5d6a53548590f Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 28 二月 2024 10:23:53 +0800
Subject: [PATCH] 整理

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java |   44 +++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 43 insertions(+), 1 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
index da073fe..63d2d81 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
@@ -1,6 +1,7 @@
 package com.doumee.service.business.impl.hksync;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
@@ -8,6 +9,7 @@
 import com.doumee.core.haikang.model.param.BaseListPageResponse;
 import com.doumee.core.haikang.model.param.BaseResponse;
 import com.doumee.core.haikang.model.param.request.*;
+import com.doumee.core.haikang.model.param.request.event.visit.EventVisitInfoRequest;
 import com.doumee.core.haikang.model.param.respose.*;
 import com.doumee.core.haikang.service.HKService;
 import com.doumee.core.utils.Constants;
@@ -16,9 +18,11 @@
 import com.doumee.core.utils.ImageBase64Util;
 import com.doumee.core.wx.wxPlat.WxPlatNotice;
 import com.doumee.dao.business.DeviceRoleMapper;
+import com.doumee.dao.business.RetentionMapper;
 import com.doumee.dao.business.join.VisitsJoinMapper;
 import com.doumee.dao.business.model.DeviceRole;
 import com.doumee.dao.business.model.Member;
+import com.doumee.dao.business.model.Retention;
 import com.doumee.dao.business.model.Visits;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import lombok.extern.slf4j.Slf4j;
@@ -38,6 +42,8 @@
 public class HkSyncVisitServiceImpl extends HkSyncBaseServiceImpl {
     @Autowired
     private VisitsJoinMapper visitsMapper;
+    @Autowired
+    private RetentionMapper retentionMapper;
     @Autowired
     private SystemDictDataBiz systemDictDataBiz;
     @Autowired
@@ -112,6 +118,11 @@
                         update.setOutDate(DateUtil.getISO8601DateByStr2(model.getVisitEndTime()));
                         update.setRemark("宸茬绂�");
                         visitsMapper.updateById(update);
+
+                        //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鏅�氳瀹級
+                        retentionMapper.delete(new UpdateWrapper<Retention>().lambda()
+                                .eq(Retention::getType,Constants.memberType.visitor)
+                                .eq(Retention::getMemberId,c.getMemberId()));
                     }
                 }
                 if (model.getVisitorStatus()!=null&& "7,8".contains( model.getVisitorStatus()+"")){
@@ -126,6 +137,12 @@
                         update.setOutDate(DateUtil.getISO8601DateByStr2(model.getVisitEndTime()));
                         update.setRemark("瓒呮椂鏈鍒�");
                         visitsMapper.updateById(update);
+                        //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鏅�氳瀹級
+                        retentionMapper.delete(new UpdateWrapper<Retention>().lambda()
+                                .eq(Retention::getType,Constants.memberType.visitor)
+                                .eq(Retention::getMemberId,c.getMemberId()));
+                        //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
+                        retentionMapper.insert(getRetentionModelByVisitRequest(c,update.getInDate()));
                     }
                 }
             }
@@ -135,6 +152,29 @@
             Constants.DEALING_HK_VISIT_EXPIRE =false;
         }
     }
+
+    private Retention getRetentionModelByVisitRequest(Visits visits,Date date) {
+        Retention retention = new Retention();
+        retention.setIsdeleted(Constants.ZERO);
+        retention.setCreateDate(date);
+        retention.setClasses(visits.getClasses());
+        retention.setCode(visits.getCode());
+        retention.setIdcardNo(visits.getIdcardNo());
+        retention.setIdcardDecode(visits.getIdcardDecode());
+        retention.setName(visits.getName());
+        retention.setBirthday(visits.getBirthday());
+        retention.setType(visits.getMemberType());
+        retention.setCompanyId(visits.getCompanyId());
+        retention.setCompanyName(visits.getCompanyName());
+        retention.setEventDate(retention.getCreateDate());
+        retention.setFaceImg(visits.getFaceImg());
+        retention.setImgurl(visits.getImgurl());
+        retention.setPhone(visits.getPhone());
+        retention.setMemberId(visits.getMemberId());
+
+        return retention;
+    }
+
     public AppointmentInfoResponse getVisitRecord(String orderId){
         //鍒嗛〉閬嶅巻寰幆鏌ヨ鎵�鏈夐棬绂佽澶囨暟鎹�
         if(StringUtils.isBlank(orderId)){
@@ -411,7 +451,9 @@
     }
     private List<Visits> getExpireVisitList() {
         MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
-        queryWrapper.selectAll(Visits.class);
+        queryWrapper.selectAll(Visits.class)
+                .selectAs(Member::getType,Visits::getMemberType)
+                .leftJoin(Member.class,Member::getId,Visits::getReceptMemberId);
         queryWrapper.in(Visits::getStatus, Arrays.asList(new Integer[]{Constants.VisitStatus.xfSuccess,Constants.VisitStatus.signin}) );
         List<Visits> list = visitsMapper.selectJoinList(Visits.class,queryWrapper);
         return list;

--
Gitblit v1.9.3