From e0fc8f7e2230b51e3bbe8dea43790cf11b7170e9 Mon Sep 17 00:00:00 2001 From: luodangjia <luodangjia> Date: 星期一, 04 十一月 2024 15:39:01 +0800 Subject: [PATCH] merge --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 39 insertions(+), 20 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java index 80097d4..ea74c61 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java @@ -22,8 +22,14 @@ import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.feignClient.SysRoleClient; import com.ruoyi.system.api.feignClient.SysUserClient; +import com.ruoyi.system.api.feignClient.SysUserRoleClient; import com.ruoyi.system.api.model.GetSysRoleByIds; +import com.ruoyi.system.api.model.SysUserRoleVo; +import io.seata.core.context.RootContext; +import io.seata.core.exception.TransactionException; import io.seata.spring.annotation.GlobalTransactional; +import io.seata.tm.api.GlobalTransaction; +import io.seata.tm.api.GlobalTransactionContext; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -62,6 +68,9 @@ @Resource private RoleSiteClient roleSiteClient; + + @Resource + private SysUserRoleClient userRoleClient; @@ -85,10 +94,10 @@ List<SysRole> data = r.getData(); for (PartnerListDTO partnerListDTO : list) { Integer roleId = partnerListDTO.getRoleId(); - if(null != roleId){ + if(null == roleId){ continue; } - SysRole sysRole = data.stream().filter(s -> roleId.equals(s.getRoleId())).findFirst().get(); + SysRole sysRole = data.stream().filter(s -> roleId.compareTo(s.getRoleId().intValue()) == 0).findFirst().get(); if(null != sysRole){ partnerListDTO.setRoleName(sysRole.getRoleName()); } @@ -125,8 +134,6 @@ if(null != one){ return AjaxResult.error("登录账号不能重复"); } - //添加新数据 - this.save(partner); //添加登录账户 SysUser user = new SysUser(); user.setPhonenumber(partner.getPhoneOne()); @@ -138,11 +145,15 @@ user.setDelFlag("0"); user.setRoleId(partner.getRoleId().longValue()); user.setRoleType(2); - user.setObjectId(partner.getId()); - R r = sysUserClient.addSysUser(user); + R<Long> r = sysUserClient.addSysUser(user); if(200 != r.getCode()){ throw new RuntimeException(r.getMsg()); } + //添加新数据 + this.save(partner); + user = sysUserClient.getSysUser(r.getData()).getData(); + user.setObjectId(partner.getId()); + sysUserClient.updateUser(user); return AjaxResult.success(); } @@ -230,9 +241,6 @@ } Partner oldPartner = this.getById(partner.getId()); SysUser user = sysUserClient.queryUserByUserName(oldPartner.getAccount()).getData(); - - //修改数据 - this.updateById(partner); //修改登录账户 if(null == user){ user = new SysUser(); @@ -262,6 +270,9 @@ throw new RuntimeException(r.getMsg()); } } + + //修改数据 + this.updateById(partner); return AjaxResult.success(); } @@ -275,21 +286,21 @@ public AjaxResult delPartner(List<Integer> ids) { //查询有无关联数据 //站点 - long count = siteService.count(new LambdaQueryWrapper<Site>().in(Site::getPartnerId, Arrays.asList(ids)).eq(Site::getDelFlag, 0)); + long count = siteService.count(new LambdaQueryWrapper<Site>().in(Site::getPartnerId, ids).eq(Site::getDelFlag, 0)); if(count > 0){ - return AjaxResult.error("当前合作商有关联站点,删除失败!"); + return AjaxResult.error("该合作商已关联站点不可删除"); } //充电桩 - long count1 = chargingPileService.count(new LambdaQueryWrapper<TChargingPile>().eq(TChargingPile::getPartnerId, Arrays.asList(ids)).eq(TChargingPile::getDelFlag, 0)); + long count1 = chargingPileService.count(new LambdaQueryWrapper<TChargingPile>().in(TChargingPile::getPartnerId, ids).eq(TChargingPile::getDelFlag, 0)); if(count1 > 0){ - return AjaxResult.error("当前合作商有关联充电桩,删除失败!"); + return AjaxResult.error("该合作商已关联充电桩不可删除!"); } for (Integer id : ids) { Partner partner = this.getById(id); if(null == partner){ return AjaxResult.error("删除失败"); } - this.removeById(partner); + this.removeById(id); SysUser user = sysUserClient.queryUserByUserName(partner.getAccount()).getData(); user.setDelFlag("2"); sysUserClient.updateUser(user); @@ -329,9 +340,11 @@ @Override public GetPermissionConfigurationDTO getPermissionConfiguration(Integer siteId, Integer partnerId) { Partner partner = this.getById(partnerId); + if(null == partner){ + throw new RuntimeException("该站点合作商无效"); + } GetPermissionConfigurationDTO dto = new GetPermissionConfigurationDTO(); dto.setPermissionRemarks(partner.getPermissionRemarks()); - Map<String, Object> menu = new HashMap<>(); List<TPartnerSite> list = partnerSiteService.list(new LambdaQueryWrapper<TPartnerSite>() .eq(TPartnerSite::getPartnerId, partnerId) .eq(TPartnerSite::getSiteId, siteId)); @@ -340,7 +353,9 @@ .eq(TSiteMenu::getParentId, 0) .eq(TSiteMenu::getVisible, 0) .eq(TSiteMenu::getStatus, 0).orderByAsc(TSiteMenu::getOrderNum)); + List<Map<String, Object>> list1 = new ArrayList<>(); for (TSiteMenu tSiteMenu : tSiteMenus) { + Map<String, Object> menu = new HashMap<>(); menu.put("id", tSiteMenu.getMenuId()); menu.put("name", tSiteMenu.getMenuName()); menu.put("path", tSiteMenu.getPath()); @@ -350,18 +365,21 @@ .eq(TSiteMenu::getParentId, tSiteMenu.getMenuId()) .eq(TSiteMenu::getVisible, 0) .eq(TSiteMenu::getStatus, 0).orderByAsc(TSiteMenu::getOrderNum)); - Map<String, Object> child = new HashMap<>(); + List<Map<String, Object>> list2 = new ArrayList<>(); for (TSiteMenu siteMenu : tSiteMenus1) { + Map<String, Object> child = new HashMap<>(); child.put("id", siteMenu.getMenuId()); child.put("name", siteMenu.getMenuName()); child.put("path", siteMenu.getPath()); child.put("type", siteMenu.getMenuType()); child.put("selected", collect.contains(siteMenu.getMenuId())); + list2.add(child); } - menu.put("selected", child.keySet().size() > 0 ? true : false); - menu.put("child", child); + menu.put("selected", collect.contains(tSiteMenu.getMenuId())); + menu.put("child", list2); + list1.add(menu); } - dto.setMenu(menu); + dto.setMenu(list1); return dto; } @@ -409,7 +427,8 @@ Partner partner = this.getById(partnerId); SysUser sysUser = sysUserClient.queryUserByUserName(partner.getAccount()).getData(); List<Integer> data = userSiteClient.getSiteIds(sysUser.getUserId()).getData(); - List<Integer> data1 = roleSiteClient.getSiteIds(sysUser.getRoleId()).getData(); + List<SysUserRoleVo> data2 = userRoleClient.getRoleByUserId(sysUser.getUserId()).getData(); + List<Integer> data1 = roleSiteClient.getSiteIds(data2.get(0).getRoleId()).getData(); collect.addAll(data); collect.addAll(data1); Set<Integer> siteIds = new HashSet<>(collect); -- Gitblit v1.7.1