From 4d035492d47d7a3a484d4f47c2340038b2e88cf0 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期三, 20 三月 2024 19:20:58 +0800
Subject: [PATCH] 整理

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
index b7ba8c9..1ff3b10 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
@@ -163,6 +163,56 @@
             tt.start();
        }
     }
+    @Override
+    public  void updateMemberRole(DeviceRole deviceRole) {
+        deviceRole.setType("2");
+        deviceRole.setIsdeleted(Constants.ZERO);
+        List<DeviceRole> list =findList(deviceRole);
+        if(list == null || list.size()==0){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        for(DeviceRole model :list){
+            updateMemberRoleDO(model);
+        }
+    }
+    public  void updateMemberRoleDO(DeviceRole model) {
+        if(model.getDoorIds()  == null){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        String[] newIds =StringUtils.defaultString(model.getDoorIds()).split(",");
+        List<Integer>  allids = getChangeIdsByArray(new String[]{},newIds);//鏈�鏂拌澶�
+        List<MemberRole> memberRoleList = memberRoleMapper.selectList(new QueryWrapper<MemberRole>().lambda()
+                .eq(MemberRole::getRoleId,model.getId())
+                .eq(MemberRole::getIsdeleted,Constants.ZERO)
+        );
+        if(memberRoleList!=null && memberRoleList.size()>0) {
+            int num =1;
+            for (MemberRole memberRole : memberRoleList) {
+                Member member = memberMapper.selectById(memberRole.getMemberId());
+                if(member==null || member.getIsdeleted().equals(Constants.ONE)){
+                    continue;
+                }
+                List<Integer>  addIds = new ArrayList<>();
+                for(Integer did : allids){
+                    Empower empower = empowerMapper.selectOne(new QueryWrapper<Empower>().lambda()
+                            .eq(Empower::getMemberId,member.getId())
+                            .eq(Empower::getDeviceId,did )
+                            .orderByDesc(Empower::getId)
+                            .last("limit 1"));
+                    if(empower ==null || Constants.equalsInteger(empower.getIsdeleted(),Constants.ONE)){
+                        addIds.add(did);
+                    }
+                }
+                try {
+                    HkSyncOrgUserToHKServiceImpl.dealChangeDeviceRoleEmpower(member,addIds,null,deviceRoleMapper,empowerMapper,deviceMapper);
+                }catch (Exception e){
+                    e.printStackTrace();
+                }
+                System.out.println("姝e湪澶勭悊銆�"+model.getName()+"銆�======闂ㄧ鏁版嵁銆�"+addIds.size()+"銆�====杩涘害锛氥��"+num+"|"+memberRoleList.size()+"銆�");
+                num ++;
+            }
+        }
+    }
 
     /**
      * 鏇存柊璇ユ潈闄愪笅鐩稿叧鐨勪汉鍛樻渶鏂板叏鏂颁笅鍙�

--
Gitblit v1.9.3