报表模块分权
This commit is contained in:
parent
1bb5dd63fb
commit
cc6deee04c
|
|
@ -405,11 +405,6 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|||
@Override
|
||||
public PageInfo<Map<String, Object>> buildReportRecords(SalaryStatisticsDimensionPO dimension, SalaryStatisticsReportDataQueryParam param, List<SalaryStatisticsItemPO> salaryStatisticsItemList) {
|
||||
Map<String, Boolean> checkMap = SalaryStatisticsReportBO.checkLoad(salaryStatisticsItemList);
|
||||
// 如果一个都没有,直接返回
|
||||
// if (!checkMap.get("isNow")) {
|
||||
// return new PageInfo<Map<String, Object>>();
|
||||
// }
|
||||
|
||||
|
||||
// 获取本期报表分权后的核算人员
|
||||
List<SalaryAcctEmployeePO> list = getSalaryAcctEmployeeService(user).listBySalaryStatisticsReportParam(param);
|
||||
|
|
|
|||
|
|
@ -332,28 +332,28 @@ public class SalaryStatisticsReportWrapper extends Service {
|
|||
if (empDimensionOptional.isPresent()) {
|
||||
empDimensionId = empDimensionOptional.get();
|
||||
}
|
||||
if (StringUtils.isNotBlank(salaryReportIds) && salaryReportIds.contains(id + "")) {
|
||||
//报表中缓存的条件
|
||||
salaryReportConditions = Utils.null2String(getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_CONDITIONS + id));
|
||||
if (StringUtils.isNotBlank(salaryReportConditions) && salaryReportConditions.contains(paramMd5)) {
|
||||
Map<String, Object> result = getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_DATA + id + "_" + paramMd5);
|
||||
if (param.getDimensionId().equals(empDimensionId)) {
|
||||
// 人员维度需要分页
|
||||
Map<String, Object> finalResultMap = new HashMap<>();
|
||||
PageInfo<Map<String, Object>> pageInfo = (PageInfo<Map<String, Object>>) result.get("pageInfo");
|
||||
PageInfo<Map<String, Object>> finalPageInfo = SalaryPageUtil.buildPage(param.getCurrent(), param.getPageSize());
|
||||
finalPageInfo.setTotal(pageInfo.getList().size());
|
||||
finalPageInfo.setList(SalaryPageUtil.subList(param.getCurrent(), param.getPageSize(), pageInfo.getList()));
|
||||
finalResultMap.put("pageInfo", finalPageInfo);
|
||||
finalResultMap.put("columns", result.get("columns"));
|
||||
finalResultMap.put("countResult", result.get("countResult"));
|
||||
finalResultMap.put("reportId", id);
|
||||
return finalResultMap;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
// if (StringUtils.isNotBlank(salaryReportIds) && salaryReportIds.contains(id + "")) {
|
||||
// //报表中缓存的条件
|
||||
// salaryReportConditions = Utils.null2String(getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_CONDITIONS + id));
|
||||
// if (StringUtils.isNotBlank(salaryReportConditions) && salaryReportConditions.contains(paramMd5)) {
|
||||
// Map<String, Object> result = getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_DATA + id + "_" + paramMd5);
|
||||
// if (param.getDimensionId().equals(empDimensionId)) {
|
||||
// // 人员维度需要分页
|
||||
// Map<String, Object> finalResultMap = new HashMap<>();
|
||||
// PageInfo<Map<String, Object>> pageInfo = (PageInfo<Map<String, Object>>) result.get("pageInfo");
|
||||
// PageInfo<Map<String, Object>> finalPageInfo = SalaryPageUtil.buildPage(param.getCurrent(), param.getPageSize());
|
||||
// finalPageInfo.setTotal(pageInfo.getList().size());
|
||||
// finalPageInfo.setList(SalaryPageUtil.subList(param.getCurrent(), param.getPageSize(), pageInfo.getList()));
|
||||
// finalResultMap.put("pageInfo", finalPageInfo);
|
||||
// finalResultMap.put("columns", result.get("columns"));
|
||||
// finalResultMap.put("countResult", result.get("countResult"));
|
||||
// finalResultMap.put("reportId", id);
|
||||
// return finalResultMap;
|
||||
// }
|
||||
//
|
||||
// return result;
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
// 列表data
|
||||
|
|
|
|||
|
|
@ -16,9 +16,12 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
|
|||
import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
|
||||
import com.engine.salary.entity.salaryarchive.dto.SalaryArchiveDataDTO;
|
||||
import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO;
|
||||
import com.engine.salary.entity.salarysob.param.SalarySobQueryParam;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobPO;
|
||||
import com.engine.salary.entity.taxagent.param.TaxAgentQueryParam;
|
||||
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
|
||||
import com.engine.salary.enums.OperateTypeEnum;
|
||||
import com.engine.salary.enums.auth.AuthFilterTypeEnum;
|
||||
import com.engine.salary.enums.salaryaccounting.LockStatusEnum;
|
||||
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
|
|
@ -608,15 +611,14 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
|
|||
// lambdaQueryChainWrapper.setTaxAgentIds(Collections.singletonList(0L));
|
||||
// }
|
||||
|
||||
// 是否是薪酬总管理员
|
||||
boolean isChief = getTaxAgentService(user).isChief((long) user.getUID());
|
||||
// 获取能够管理的扣缴义务人
|
||||
Collection<TaxAgentPO> taxAgentPOS = getTaxAgentService(user).listAllTaxAgentsAsAdmin(Long.valueOf(user.getUID()));
|
||||
List<Long> canManageTaxAgentIds = taxAgentPOS.stream().map(TaxAgentPO::getId).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(param.getTaxAgent())) {
|
||||
lambdaQueryChainWrapper.setTaxAgentIds(param.getTaxAgent());
|
||||
} else if (!isChief) {
|
||||
// 不是薪酬总管理员,分权
|
||||
} else {
|
||||
TaxAgentQueryParam taxAgentQueryParam = TaxAgentQueryParam.builder().build();
|
||||
taxAgentQueryParam.setFilterType(AuthFilterTypeEnum.QUERY_DATA);
|
||||
Collection<TaxAgentPO> taxAgentPOS = getTaxAgentService(user).listAuth(taxAgentQueryParam);
|
||||
List<Long> canManageTaxAgentIds = taxAgentPOS.stream().map(TaxAgentPO::getId).collect(Collectors.toList());
|
||||
// 分权
|
||||
if (CollectionUtils.isEmpty(canManageTaxAgentIds)) {
|
||||
// 无权限
|
||||
return Collections.emptyList();
|
||||
|
|
@ -626,9 +628,11 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
|
|||
|
||||
if (CollectionUtils.isNotEmpty(param.getSalarySob())) {
|
||||
lambdaQueryChainWrapper.setSalarySobIds(param.getSalarySob());
|
||||
} else if (!isChief) {
|
||||
// 不是薪酬总管理员,分权
|
||||
List<SalarySobPO> salarySobPOS = getSalarySobService(user).listByTaxAgentIds(canManageTaxAgentIds);
|
||||
} else {
|
||||
// 分权
|
||||
SalarySobQueryParam salarySobQueryParam = new SalarySobQueryParam();
|
||||
salarySobQueryParam.setFilterType(AuthFilterTypeEnum.QUERY_DATA);
|
||||
List<SalarySobPO> salarySobPOS = getSalarySobService(user).listAuth(salarySobQueryParam);
|
||||
if (CollectionUtils.isEmpty(salarySobPOS)) {
|
||||
// 无权限
|
||||
return Collections.emptyList();
|
||||
|
|
|
|||
Loading…
Reference in New Issue