From 2d34613f07deabbbe7e5065c13eec61cfe2a4dcf Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期一, 22 四月 2024 11:32:11 +0800
Subject: [PATCH] 最新版本
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 54 insertions(+), 3 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 a8dcc10..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 ++;
+ }
+ }
+ }
/**
* 鏇存柊璇ユ潈闄愪笅鐩稿叧鐨勪汉鍛樻渶鏂板叏鏂颁笅鍙�
@@ -326,6 +376,7 @@
QueryWrapper<DeviceRole> queryWrapper = new QueryWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
pageWrap.getModel().setIsdeleted(Constants.ZERO);
+ queryWrapper.select("*,(select count(1) from member_role b where b.isdeleted=0 and b.role_id=device_role.id) as memberNum");
if (pageWrap.getModel().getId() != null) {
queryWrapper.lambda().eq(DeviceRole::getId, pageWrap.getModel().getId());
}
@@ -390,13 +441,13 @@
queryWrapper.lambda().orderByAsc( DeviceRole::getName);
IPage<DeviceRole> newPage = deviceRoleMapper.selectPage(page, queryWrapper);
if(null != newPage && newPage.getRecords().size() > 0) {
- List<DeviceRole> deviceRoleList = newPage.getRecords();
- for (DeviceRole dto:deviceRoleList) {
+ List<DeviceRole> deviceRoleList = newPage.getRecords();
+ /* for (DeviceRole dto:deviceRoleList) {
Member member = new Member();
member.setIsdeleted(Constants.ZERO);
member.setRoleIdParam("["+dto.getId()+"]");
dto.setMemberNum( memberMapper.selectCount(new QueryWrapper<>(member)));
- }
+ }*/
newPage.setRecords(deviceRoleList);
}
return PageData.from(newPage);
--
Gitblit v1.9.3