From ae288609394ba4ad2164f0dfb972227de27c5a29 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 27 十二月 2023 14:32:55 +0800
Subject: [PATCH] ERP接口

---
 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