基础数据物料管理模块数据权限隔离

This commit is contained in:
秦鸿展
2026-02-24 16:15:13 +08:00
parent 3a577b5ed7
commit 601ae6e3cf
5 changed files with 70 additions and 15 deletions
@@ -39,10 +39,21 @@ public class BatchApplicationService {
public List<BatchPO> queryList(BatchDO batchDO) { public List<BatchPO> queryList(BatchDO batchDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
if (loginUser != null){ if (loginUser != null && loginUser.getUserPo() != null) {
Long userOrganizationId = loginUser.getUserPo().getOrganizationId();
// 当前登录用户组织ID为2827时,查询所有组织的数据
if (userOrganizationId != null && userOrganizationId == 2827L) {
// 不设置organizationId,查询所有组织的数据
batchDO.setOrganizationId(null);
} else {
// 其他情况,只查询当前登录用户所属组织的数据
if (userOrganizationId != null) {
batchDO.setOrganizationId(userOrganizationId);
}
}
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
if (topOrganizationId != null && topOrganizationId != 1){ if (topOrganizationId != null && topOrganizationId != 1) {
batchDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); batchDO.setTopOrganizationId(topOrganizationId);
} }
} }
List<BatchPO> batchPOS = batchDomainService.queryList(batchDO); List<BatchPO> batchPOS = batchDomainService.queryList(batchDO);
@@ -37,10 +37,21 @@ public class BrandApplicationService {
public List<BrandPO> queryList(BrandDO brandDO) { public List<BrandPO> queryList(BrandDO brandDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
if (loginUser != null){ if (loginUser != null && loginUser.getUserPo() != null) {
Long userOrganizationId = loginUser.getUserPo().getOrganizationId();
// 当前登录用户组织ID为2827时,查询所有组织的数据
if (userOrganizationId != null && userOrganizationId == 2827L) {
// 不设置organizationId,查询所有组织的数据
brandDO.setOrganizationId(null);
} else {
// 其他情况,只查询当前登录用户所属组织的数据
if (userOrganizationId != null) {
brandDO.setOrganizationId(userOrganizationId);
}
}
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
if (topOrganizationId != null && topOrganizationId != 1){ if (topOrganizationId != null && topOrganizationId != 1) {
brandDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); brandDO.setTopOrganizationId(topOrganizationId);
} }
} }
return brandDomainService.queryList(brandDO); return brandDomainService.queryList(brandDO);
@@ -29,10 +29,21 @@ public class MaterialClassifyApplicationService {
public List<MaterialClassifyPO> queryList(MaterialClassifyDO materialClassifyDO) { public List<MaterialClassifyPO> queryList(MaterialClassifyDO materialClassifyDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
if (loginUser != null){ if (loginUser != null && loginUser.getUserPo() != null) {
Long userOrganizationId = loginUser.getUserPo().getOrganizationId();
// 当前登录用户组织ID为2827时,查询所有组织的数据
if (userOrganizationId != null && userOrganizationId == 2827L) {
// 不设置organizationId,查询所有组织的数据
materialClassifyDO.setOrganizationId(null);
} else {
// 其他情况,只查询当前登录用户所属组织的数据
if (userOrganizationId != null) {
materialClassifyDO.setOrganizationId(userOrganizationId);
}
}
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
if (topOrganizationId != null && topOrganizationId != 1){ if (topOrganizationId != null && topOrganizationId != 1) {
materialClassifyDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); materialClassifyDO.setTopOrganizationId(topOrganizationId);
} }
} }
return materialClassifyDomainService.queryList(materialClassifyDO); return materialClassifyDomainService.queryList(materialClassifyDO);
@@ -38,10 +38,21 @@ public class PackApplicationService {
public List<PackPO> queryList(PackDO packDO) { public List<PackPO> queryList(PackDO packDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
if (loginUser != null){ if (loginUser != null && loginUser.getUserPo() != null) {
Long userOrganizationId = loginUser.getUserPo().getOrganizationId();
// 当前登录用户组织ID为2827时,查询所有组织的数据
if (userOrganizationId != null && userOrganizationId == 2827L) {
// 不设置organizationId,查询所有组织的数据
packDO.setOrganizationId(null);
} else {
// 其他情况,只查询当前登录用户所属组织的数据
if (userOrganizationId != null) {
packDO.setOrganizationId(userOrganizationId);
}
}
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
if (topOrganizationId != null && topOrganizationId != 1){ if (topOrganizationId != null && topOrganizationId != 1) {
packDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); packDO.setTopOrganizationId(topOrganizationId);
} }
} }
return packDomainService.queryList(packDO); return packDomainService.queryList(packDO);
@@ -59,10 +59,21 @@ public class MaterialBaseInfoApplicationService {
public List<MaterialBaseInfoPO> queryList(MaterialBaseInfoDO materialBaseInfoDO) { public List<MaterialBaseInfoPO> queryList(MaterialBaseInfoDO materialBaseInfoDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
if (loginUser != null){ if (loginUser != null && loginUser.getUserPo() != null) {
Long userOrganizationId = loginUser.getUserPo().getOrganizationId();
// 当前登录用户组织ID为2827时,查询所有组织的数据
if (userOrganizationId != null && userOrganizationId == 2827L) {
// 不设置organizationId,查询所有组织的数据
materialBaseInfoDO.setOrganizationId(null);
} else {
// 其他情况,只查询当前登录用户所属组织的数据
if (userOrganizationId != null) {
materialBaseInfoDO.setOrganizationId(userOrganizationId);
}
}
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
if (topOrganizationId != null && topOrganizationId != 1){ if (topOrganizationId != null && topOrganizationId != 1) {
materialBaseInfoDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); materialBaseInfoDO.setTopOrganizationId(topOrganizationId);
} }
} }
List<MaterialBaseInfoPO> materialBaseInfoPOS = materialBaseInfoDomainService.queryList(materialBaseInfoDO); List<MaterialBaseInfoPO> materialBaseInfoPOS = materialBaseInfoDomainService.queryList(materialBaseInfoDO);