From 5b889f9db0a0f130e7bf8a8fe273dfe8153aed65 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 15 十二月 2023 09:36:08 +0800
Subject: [PATCH] ERP接口

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java |   82 ++++++++++++++++++++++++++++++++--------
 1 files changed, 65 insertions(+), 17 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
index 9429df2..7886100 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -26,6 +26,7 @@
 import com.doumee.core.model.openapi.response.erp.OrgListRespone;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DESUtil;
+import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.Utils;
 import com.doumee.core.utils.redis.RedisUtil;
 import com.doumee.dao.admin.response.MemberInfoDTO;
@@ -99,6 +100,9 @@
 
     @Autowired
     private MemberCardMapper memberCardMapper;
+
+    @Autowired
+    private VisitsMapper visitsMapper;
 
     @Autowired
     private InterfaceLogService interfaceLogService;
@@ -506,26 +510,40 @@
                 memberRoleMapper.delete(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getMemberId,member.getId()));
                 //TODO 娴峰悍鏁版嵁鏇存柊
             }
-            //娣诲姞浜哄憳瑙掑叧鑱旀暟鎹�
+            //娣诲姞浜哄憳瑙掕壊鍏宠仈鏁版嵁
             if(!Objects.isNull(param.getRoleIds())&&param.getRoleIds().length>Constants.ZERO){
                 //鏌ヨ鏁版嵁搴撳瓨鍦ㄧ殑鏉冮檺
-                List<MemberRole> memberRoleList = memberRoleMapper.selectList(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getId,param.getRoleIds()));
-                List<Integer> roleIds = Arrays.asList(param.getRoleIds());
-
-//                List<MemberRole> memberRoleList = new ArrayList<>();
-//
-//                for (Integer id:roleIds) {
-//
-//                }
-
-
-
-
+                List<DeviceRole> deviceRoleList
+                        = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda().eq(DeviceRole::getId,param.getRoleIds()));
+                if(CollectionUtils.isNotEmpty(deviceRoleList)){
+                    List<MemberRole> memberRoleList = new ArrayList<>();
+                    for (DeviceRole deviceRole:deviceRoleList) {
+                        MemberRole memberRole = new MemberRole();
+                        memberRole.setCreateDate(new Date());
+                        memberRole.setMemberId(member.getId());
+                        memberRole.setIsdeleted(Constants.ZERO);
+                        memberRole.setRoleId(deviceRole.getId().toString());
+                        memberRoleList.add(memberRole);
+                    }
+                    memberRoleMapper.insertBatchSomeColumn(memberRoleList);
+                }
             }
-            
-            
-            
-            
+
+            //娣诲姞浜哄憳鍗$墖鏁版嵁
+            if(!Objects.isNull(param.getCardList())&&param.getCardList().size()>Constants.ZERO){
+                if(CollectionUtils.isNotEmpty(param.getCardList())){
+                    List<MemberCard> memberCardList = new ArrayList<>();
+                    for (String id:param.getCardList()) {
+                        MemberCard memberCard = new MemberCard();
+                        memberCard.setCreateDate(new Date());
+                        memberCard.setMemberId(member.getId());
+                        memberCard.setIsdeleted(Constants.ZERO);
+                        memberCard.setCode(id);
+                        memberCardList.add(memberCard);
+                    }
+                    memberCardMapper.insertBatchSomeColumn(memberCardList);
+                }
+            }
         }catch (Exception e){
             e.printStackTrace();
         }finally {
@@ -534,6 +552,36 @@
     }
 
 
+    @Override
+    public void approveApply(ApproveNoticeRequest param){
+        try{
+            if(Objects.isNull(param)
+                    ||Objects.isNull(param.getId())
+                    ||Objects.isNull(param.getStatus())
+            ){
+                throw new BusinessException(ResponseStatus.BAD_REQUEST);
+            }
+            if(!(param.getStatus()==Constants.ZERO||param.getStatus()==Constants.ONE)){
+                throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐘舵�佺爜閿欒");
+            }
+            if(visitsMapper.selectCount(new QueryWrapper<Visits>().lambda().eq(Visits::getErpId,param.getId())
+                    .ne(Visits::getStatus,Constants.VisitStatus.submitCheck))>Constants.ZERO){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�佺爜閿欒");
+            }
+            List<Visits> visitsList = visitsMapper.selectList(new QueryWrapper<Visits>().lambda().eq(Visits::getErpId,param.getId()));
+            if(CollectionUtils.isNotEmpty(visitsList)){
+                visitsList.forEach(i->{
+                    i.setStatus(param.getStatus().equals(Constants.ZERO)?Constants.VisitStatus.pass:Constants.VisitStatus.noPass);
+                    i.setEndCheckDate(DateUtil.StringToDate(param.getApproveDate(),"yyyy-MM-dd HH:mm:ss"));
+                    visitsMapper.updateById(i);
+                });
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }finally {
+            saveInterfaceLog(param,"/visitBiz/resource/approveApply",null,Constants.ZERO);
+        }
+    }
 
 
 

--
Gitblit v1.9.3