diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/DhcDataAuthController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/DhcDataAuthController.java index 3dfb769..aa852f9 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/DhcDataAuthController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/DhcDataAuthController.java @@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletResponse; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.dhc.domain.DhcDataAuth; +import com.ruoyi.dhc.domain.DhcDataAuthDetail; import com.ruoyi.dhc.service.IDhcDataAuthService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; @@ -46,7 +47,7 @@ public class DhcDataAuthController extends BaseController public TableDataInfo list(DhcDataAuth dhcDataAuth) { startPage(); - List list = dhcDataAuthService.selectDhcDataAuthList(dhcDataAuth); + List list = dhcDataAuthService.selectDhcDataAuthByPage(dhcDataAuth); return getDataTable(list); } @@ -105,4 +106,14 @@ public class DhcDataAuthController extends BaseController { return toAjax(dhcDataAuthService.deleteDhcDataAuthByDataAuthIds(dataAuthIds)); } + /** + * 批量删除数据权限 + */ + @PreAuthorize("@ss.hasPermi('dhc:authData:remove')") + @Log(title = "数据权限", businessType = BusinessType.DELETE) + @PostMapping(value = "/removeBatch") + public AjaxResult removeBatch(@RequestBody List detailList) + { + return toAjax(dhcDataAuthService.deleteDhcDataAuth(detailList)); + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/dhc/domain/DhcDataAuth.java b/ruoyi-system/src/main/java/com/ruoyi/dhc/domain/DhcDataAuth.java index 31b4f5e..4a9f781 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/dhc/domain/DhcDataAuth.java +++ b/ruoyi-system/src/main/java/com/ruoyi/dhc/domain/DhcDataAuth.java @@ -62,6 +62,59 @@ public class DhcDataAuth extends BaseEntity private List dataAuthIds; + /** 用户账号 */ + private String userName; + + /** 用户昵称 */ + private String nickName; + + /** 手机号码 */ + private String phonenumber; + + private String areaCode; + + private String areaName; + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } + + public String getPhonenumber() { + return phonenumber; + } + + public void setPhonenumber(String phonenumber) { + this.phonenumber = phonenumber; + } + + public String getAreaCode() { + return areaCode; + } + + public void setAreaCode(String areaCode) { + this.areaCode = areaCode; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + public List getDataAuthIds() { return dataAuthIds; } diff --git a/ruoyi-system/src/main/java/com/ruoyi/dhc/mapper/DhcDataAuthMapper.java b/ruoyi-system/src/main/java/com/ruoyi/dhc/mapper/DhcDataAuthMapper.java index 8528298..9dcaf33 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/dhc/mapper/DhcDataAuthMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/dhc/mapper/DhcDataAuthMapper.java @@ -84,4 +84,25 @@ public interface DhcDataAuthMapper */ public List selectDhcDataAuthDetailList(DhcDataAuth dhcDataAuth); + /** + * 查询数据权限列表 + * + * @param dhcDataAuth 数据权限 + * @return 数据权限集合 + */ + public List selectDhcDataAuthByPage(DhcDataAuth dhcDataAuth); + /** + * 删除数据权限明细 + * + * @param detail 数据权限明细列表 + * @return 结果 + */ + public int deleteDataAuthDetail(DhcDataAuthDetail detail); + /** + * 查询数据权限明细 + * + * @param detail 数据权限明细列表 + * @return 结果 + */ + public int selectDataAuthDetailCount(DhcDataAuthDetail detail); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/dhc/service/IDhcDataAuthService.java b/ruoyi-system/src/main/java/com/ruoyi/dhc/service/IDhcDataAuthService.java index eb01878..41b7714 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/dhc/service/IDhcDataAuthService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/dhc/service/IDhcDataAuthService.java @@ -2,6 +2,7 @@ package com.ruoyi.dhc.service; import java.util.List; import com.ruoyi.dhc.domain.DhcDataAuth; +import com.ruoyi.dhc.domain.DhcDataAuthDetail; /** * 数据权限Service接口 @@ -54,8 +55,16 @@ public interface IDhcDataAuthService /** * 删除数据权限信息 * - * @param dataAuthId 数据权限主键 + * @param detailList * @return 结果 */ - public int deleteDhcDataAuthByDataAuthId(Long dataAuthId); + public int deleteDhcDataAuth(List detailList); + + /** + * 查询数据权限列表 + * + * @param dhcDataAuth 数据权限 + * @return 数据权限集合 + */ + public List selectDhcDataAuthByPage(DhcDataAuth dhcDataAuth); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/dhc/service/impl/DhcDataAuthServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/dhc/service/impl/DhcDataAuthServiceImpl.java index f44582e..bcc37a8 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/dhc/service/impl/DhcDataAuthServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/dhc/service/impl/DhcDataAuthServiceImpl.java @@ -115,15 +115,40 @@ public class DhcDataAuthServiceImpl implements IDhcDataAuthService /** * 删除数据权限信息 * - * @param dataAuthId 数据权限主键 + * @param detailList * @return 结果 */ @Override - public int deleteDhcDataAuthByDataAuthId(Long dataAuthId) + public int deleteDhcDataAuth(List detailList) { - DhcDataAuth dhcDataAuth = new DhcDataAuth(); - dhcDataAuth.setDataAuthId(dataAuthId); - dhcDataAuthMapper.deleteDataAuthDetailByDataAuthIds(dhcDataAuth); - return dhcDataAuthMapper.deleteDhcDataAuthByDataAuthId(dataAuthId); + for (DhcDataAuthDetail detail : detailList) { + detail.setDetailType("0"); + dhcDataAuthMapper.deleteDataAuthDetail(detail); + Integer count = dhcDataAuthMapper.selectDataAuthDetailCount(detail); + if (count == 0) { + dhcDataAuthMapper.deleteDhcDataAuthByDataAuthId(detail.getDataAuthId()); + } + } + return 1; + } + + /** + * 查询数据权限列表 + * + * @param dhcDataAuth 数据权限 + * @return 数据权限 + */ + @Override + public List selectDhcDataAuthByPage(DhcDataAuth dhcDataAuth) + { List list = dhcDataAuthMapper.selectDhcDataAuthByPage(dhcDataAuth); + list.forEach(item->{ + String[] array = item.getDeptAllId().split("/"); + List deptIds = new ArrayList<>(); + for (String deptId : array) { + deptIds.add(Long.valueOf(deptId)); + } + item.setDeptIds(deptIds); + }); + return list; } } diff --git a/ruoyi-system/src/main/resources/mapper/system/DhcDataAuthMapper.xml b/ruoyi-system/src/main/resources/mapper/system/DhcDataAuthMapper.xml index c9432fd..b563492 100644 --- a/ruoyi-system/src/main/resources/mapper/system/DhcDataAuthMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/DhcDataAuthMapper.xml @@ -21,6 +21,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + + + + + + + + + + select data_auth_id, user_id, dept_id, auth_node, product_line_code, area_type,b.dept_all_id,dept_all_Name from dhc_data_auth @@ -93,12 +108,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and data_auth_id = #{dataAuthId} and detail_type = #{detailType} - - and detail_code in - - #{detailCode} - - and data_auth_id in @@ -116,4 +125,52 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + delete from dhc_data_auth_detail where data_auth_id = #{dataAuthId} and detail_code = #{detailCode} and detail_type = #{detailType} + + \ No newline at end of file