From 72b4263800a376a998455d4ef11ed2321282a1e9 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 22 十二月 2023 17:21:30 +0800
Subject: [PATCH] 海康接口对接开发
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 39 +++++++++++++++++++++++++++++++++++----
1 files changed, 35 insertions(+), 4 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index 1ba1259..e35fe39 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -38,6 +38,7 @@
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import io.swagger.models.auth.In;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -311,7 +312,7 @@
member.setOpenid(visits.getOpenid());
member.setType(Constants.memberType.visitor);
member.setStatus(Constants.ZERO);
- member.setSex(visits.getSex());
+ member.setSex(Constants.getSexByCardNo(cardno));
// 鏂板璁垮璁板綍
addList.add(member);
}else{
@@ -328,9 +329,19 @@
member.setName(visits.getName());
member.setPhone(visits.getPhone());
member.setOpenid(visits.getOpenid());
- member.setSex(visits.getSex());
+ member.setSex(Constants.getSexByCardNo(cardno));
// 鏇存柊璁垮淇℃伅,
editList.add(member);
+ }
+ //鏍规嵁鎵嬫満鍙峰拰韬唤璇佸彿鐮佹煡璇� 褰撳墠棰勭害鐨勬椂闂存槸鍚︿笌鍏朵粬棰勭害璁板綍鏈夊啿绐�
+ if (visitsMapper.selectCount(new QueryWrapper<Visits>().lambda()
+ .eq(Visits::getPhone, member.getPhone())
+ .and(ms -> ms.eq(Visits::getPhone, member.getPhone())
+ .or().eq(Visits::getIdcardDecode, member.getIdcardDecode()))
+ .and(ms -> ms.apply(" visits.STARTTIME <= '" + visits.getStarttime() + "' and visits.ENDTIME >= '" + visits.getStarttime() + "' ")
+ .or().apply(" visits.STARTTIME <= '" + visits.getEndtime() + "' and visits.ENDTIME >= '" + visits.getEndtime() + "' ")
+ )) > Constants.ZERO) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝鎵嬫満鍙枫��"+member.getPhone()+"銆戞垨韬唤璇併��"+ member.getIdcardDecode() +"銆戝瓨鍦ㄩ绾︽椂闂村啿绐侊紝鏃犳硶鐢宠鍝︼紒");
}
return member;
}
@@ -348,6 +359,9 @@
if(v !=null){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝鎵嬫満鍙枫��"+member.getPhone()+"銆戝瓨鍦ㄦ湭绛剧棰勭害鐢宠锛屼笉鑳介噸澶嶇敵璇峰摝锛�");
}
+
+
+
}
private List<Member> isValideWithUsers(List<Visits> withUserList) {
@@ -519,8 +533,10 @@
visitQuery.isNotNull(Visits::getParentId);
visitQuery.eq(Visits::getIsdeleted,Constants.ZERO);
List<Visits> visitsList = visitsJoinMapper.selectList(visitQuery);
- visitsList.add(0,result);
- result.setVisitsList(visitsList);
+ Visits v = new Visits();
+ BeanUtils.copyProperties(result,v);
+ visitsList.add(0,v);
+ result.setWithUserList(visitsList);
return result;
}
@@ -579,7 +595,9 @@
queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment);
queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId);
queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
+ queryWrapper.leftJoin(" member m on m.id=t.MEMBER_ID");
+ queryWrapper.ne("m.type ",Constants.TWO);
queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getPhone,pageWrap.getModel().getName())
@@ -589,7 +607,20 @@
.eq(Objects.nonNull(pageWrap.getModel().getStatus()),Visits::getStatus,pageWrap.getModel().getStatus());
queryWrapper.isNull(Visits::getOutDate);
queryWrapper.orderByDesc(Visits::getEditDate);
+ String code= systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.TIMEOUT_FREEZE).getCode();
IPage<Visits> result = visitsJoinMapper.selectJoinPage(page, Visits.class,queryWrapper);
+ if(result!=null&&result.getRecords()!=null){
+ result.getRecords().stream().forEach(s ->{
+ if(s.getTimeOut()>=Constants.ZERO){
+ s.setOutStatus(Constants.ONE);
+ }else if(s.getTimeOut()<=Integer.valueOf(code)&&s.getTimeOut()>0){
+ s.setOutStatus(Constants.TWO);
+ }else{
+ s.setOutStatus(Constants.ZERO);
+ }
+
+ });
+ }
return PageData.from(result);
}
--
Gitblit v1.9.3