From c9d5baa887fbbb4abc3b5e63bcf228094ec972ea Mon Sep 17 00:00:00 2001
From: lishuai <260038442@qq.com>
Date: 星期三, 27 十二月 2023 18:17:44 +0800
Subject: [PATCH] 人员开卡功能
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 51 insertions(+), 2 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 40f22bd..e4c3e02 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
@@ -22,6 +22,7 @@
import com.doumee.core.utils.DESUtil;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
+import com.doumee.core.wx.wxPlat.WxPlatNotice;
import com.doumee.dao.admin.response.MemberInfoDTO;
import com.doumee.dao.business.DeviceRoleMapper;
import com.doumee.dao.business.MemberMapper;
@@ -30,6 +31,7 @@
import com.doumee.dao.business.join.DeviceJoinMapper;
import com.doumee.dao.business.join.VisitsJoinMapper;
import com.doumee.dao.business.model.*;
+import com.doumee.dao.web.response.VisitDetailVO;
import com.doumee.service.business.VisitsService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -72,6 +74,8 @@
@Autowired
private DeviceJoinMapper deviceJoinMapper;
+ @Autowired
+ private WxPlatNotice wxPlatNotice;
@Override
public Integer create(Visits visits) {
@@ -94,7 +98,9 @@
getHkDeviceRoles(visits);
//妫�楠屾嫓璁夸汉鏄惁鍚堟硶
Member visitMember = isValideVisitedUser(visits.getReceptMemberId());
- if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType()) &&!IdcardUtil.isValidCard(visits.getIdcardNo())){
+ if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType())&&visits.getIdcardNo().length()!=18
+ //&&!IdcardUtil.isValidCard(visits.getIdcardNo())
+ ){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
}
Date date = new Date();
@@ -114,11 +120,15 @@
if(StringUtils.isNotBlank(erpId)){
visits.setErpId(erpId);
}else{
- throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝鍙戣捣鎷滆瀹℃壒鐢宠澶辫触锛�");
+// throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝鍙戣捣鎷滆瀹℃壒鐢宠澶辫触锛�");
}
visitsMapper.insert(visits);
initWithVisitInfo(visits);
updateProblemLog(visits,problemLog,member);
+ //鍙戦�佸井淇″叕浼楀彿閫氱煡
+ wxPlatNotice.sendVisitAuditTemplateNotice(visits,
+ systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_PREFIX).getCode(),
+ systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_AUDIT_VISIT).getCode());
return visits.getId();
}
@@ -664,4 +674,43 @@
return PageData.from(result);
}
+
+
+ @Override
+ public VisitDetailVO getVisitDetail(Integer id){
+ Visits visits = visitsMapper.selectById(id);
+ if(Objects.isNull(visits)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ Member member = memberMapper.selectById(visits.getReceptMemberId());
+ if(Objects.isNull(member)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌琚鍛樺伐淇℃伅");
+ }
+ VisitDetailVO visitDetailVO = new VisitDetailVO();
+ visitDetailVO.setStatus(visits.getStatus());
+ visitDetailVO.setCarNos(visits.getCarNos());
+ visitDetailVO.setVisitUserName(member.getName());
+ visitDetailVO.setVisitReason(visits.getReason());
+ visitDetailVO.setVisitTime(DateUtil.DateToStr(visits.getStarttime(),"yyyy-MM-dd HH:mm") + " 鑷� " + DateUtil.DateToStr(visits.getEndtime(),"yyyy-MM-dd HH:mm") );
+ if(StringUtils.isNotBlank(visits.getDoors())){
+ List<DeviceRole> deviceRoleList = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda()
+ .select(DeviceRole::getName)
+ .eq(DeviceRole::getIsdeleted,Constants.ZERO)
+ .in(DeviceRole::getId,visits.getDoors().split(",")));
+ if(CollectionUtils.isNotEmpty(deviceRoleList)){
+ visitDetailVO.setDoorGroupName(
+ deviceRoleList.stream().map(m->m.getName()).collect(Collectors.toList())
+ );
+ }
+ }
+ visitDetailVO.setWithVisitsList(visitsMapper.selectList(new QueryWrapper<Visits>().lambda()
+ .select(Visits::getName,Visits::getPhone)
+ .eq(Visits::getParentId,id)));
+ return visitDetailVO;
+ }
+
+
+
+
+
}
--
Gitblit v1.9.3