| | |
| | | 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("正在处理【"+model.getName()+"】======门禁数据【"+addIds.size()+"】====进度:【"+num+"|"+memberRoleList.size()+"】"); |
| | | num ++; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 更新该权限下相关的人员最新全新下发 |
| | |
| | | String[] ids = StringUtils.defaultString(memberRole.getDoorIds()).split(","); |
| | | if(ids!=null && ids.length>0){ |
| | | for (String s:ids){ |
| | | list.add(Integer.parseInt(s)); |
| | | try { |
| | | list.add(Integer.parseInt(s)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | continue FLAG; |
| | | } |
| | | } |
| | | list.add(Integer.parseInt(s)); |
| | | try { |
| | | list.add(Integer.parseInt(s)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | return list; |