From ad6dfb8323ab40ca8fe4fed94722c755d89c3203 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 28 二月 2024 15:14:47 +0800 Subject: [PATCH] 整理 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 55 insertions(+), 5 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 322d2e8..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)){ @@ -230,6 +270,7 @@ private void getUpdateModelByResponse( Visits c,Date date,String type,List<DeviceRole> roleList,String path ) { String code = null; String id = null; + String qrcode = null; //鍙戣捣娴峰悍棰勭害鎺ュ彛 if(StringUtils.equals(type,"0")){ //锛堥渶瑕佺櫥璁帮級 @@ -244,9 +285,12 @@ } BaseResponse<VisitAppointmentResponse> response = HKService.visitAppiontment(request); code =response!=null ?response.getCode():null; - id = (response!=null && response.getData()!=null + if((response!=null && response.getData()!=null && response.getData().getAppointmentInfoList() !=null - && response.getData().getAppointmentInfoList().size()>0)?response.getData().getAppointmentInfoList().get(0).getOrderId():null; + && response.getData().getAppointmentInfoList().size()>0)){ + id =response.getData().getAppointmentInfoList().get(0).getOrderId(); + qrcode =response.getData().getAppointmentInfoList().get(0).getQRCode(); + } }else{ //鍏嶇櫥璁� VisitAppointmentMDJRequest request =getHkMDJRequestPara(c,roleList,path); @@ -260,16 +304,20 @@ } BaseResponse<VisitAppointmentMDJResponse> response = HKService.visitAppiontmentMDJ(request ); code =response!=null ?response.getCode():null; - id = (response!=null && response.getData()!=null)?response.getData().getOrderId():null; + if(response!=null && response.getData()!=null){ + id = response.getData().getOrderId(); + qrcode =response.getData().getQRCode(); + } } if (code!= null && id!=null) { //娴峰悍涓嬪彂鎴愬姛 c.setHkId( id);//棰勭害鏍囪瘑 + c.setQrcode(qrcode); c.setRemark("涓嬪彂娴峰悍鎴愬姛锛併��"+type+"銆�"); c.setStatus(Constants.VisitStatus.xfSuccess);//涓嬪彂娴峰悍鎴愬姛 } else { - //娴峰悍涓嬪彂鎴愬姛 + //娴峰悍涓嬪彂澶辫触 c.setRemark("涓嬪彂娴峰悍澶辫触锛併��"+type+"銆�"); c.setStatus(Constants.VisitStatus.xfFail);//涓嬪彂娴峰悍澶辫触 } @@ -403,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