报表接口

This commit is contained in:
钱涛 2022-07-04 15:34:04 +08:00
parent 3f086e154d
commit c2c4149442
4 changed files with 81 additions and 0 deletions

View File

@ -151,6 +151,35 @@ public class SalaryAcctResultBO {
return columns;
}
/**
* 构建核算结果表头-供报表使用
* @param salarySobItemAggregateDTO
* @return
*/
public static Map<String, Object> buildColumns(SalarySobItemAggregateDTO salarySobItemAggregateDTO) {
Map<String, Object> map = new HashMap<>();
// 员工信息字段
for (SalarySobEmpFieldDTO salarySobEmpFieldDTO : salarySobItemAggregateDTO.getEmpFields()) {
map.put(salarySobEmpFieldDTO.getFieldId(), salarySobEmpFieldDTO.getFieldName());
}
// 薪资项目分组下的薪资项目
// 薪资项目分组下的薪资项目
for (SalarySobItemGroupDTO salarySobItemGroupDTO : salarySobItemAggregateDTO.getItemGroups()) {
if (CollectionUtils.isEmpty(salarySobItemGroupDTO.getItems())) {
continue;
}
for (SalarySobItemDTO salarySobItemDTO : salarySobItemGroupDTO.getItems()) {
map.put(salarySobItemDTO.getSalaryItemId() + "", salarySobItemDTO.getName());
}
}
// 没有分类的薪资项目
for (SalarySobItemDTO salarySobItemDTO : salarySobItemAggregateDTO.getItems()) {
map.put(salarySobItemDTO.getSalaryItemId() + "", salarySobItemDTO.getName());
}
return map;
}
/**
* 转船成薪资核算结果列表的表格数据
*

View File

@ -43,8 +43,20 @@ public interface SalaryAcctExcelService {
*/
XSSFWorkbook exportSalaryAcctResult(SalaryAcctResultQueryParam queryParam);
/**
* 表头
* @param salaryAcctRecordPO
* @return
*/
List<WeaTableColumnGroup> listWeaTableColumn(SalaryAcctRecordPO salaryAcctRecordPO);
/**
* 报表表头
* @param salaryAcctRecordPO
* @return
*/
Map<String, Object> listColumn(SalaryAcctRecordPO salaryAcctRecordPO);
/**
* 薪资核算导入时候薪资项目按取值方式分组
*

View File

@ -258,6 +258,18 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
return SalaryAcctResultBO.buildTableColumns(salarySobItemAggregateDTO);
}
/**
* 报表表头
* @param salaryAcctRecordPO
* @return
*/
public Map<String, Object> listColumn(SalaryAcctRecordPO salaryAcctRecordPO) {
// 查询薪资账套下的薪资项目+员工信息字段
SalarySobItemAggregateDTO salarySobItemAggregateDTO = getSalarySobItemService(user).getAggregateBySalarySobId(salaryAcctRecordPO.getSalarySobId());
// 构建薪资核算结果列表表头
return SalaryAcctResultBO.buildColumns(salarySobItemAggregateDTO);
}
/**
* 解析表头
*

View File

@ -92,6 +92,34 @@ public class SalaryAcctResultWrapper extends Service {
}
/**
* 薪资核算列表-报表使用
*
* @param queryParam 列表查询条件
* @return
*/
@Deprecated
public Map<String, Object> list(SalaryAcctResultQueryParam queryParam) {
ValidUtil.doValidator(queryParam);
// 查询薪资核算记录
SalaryAcctRecordPO salaryAcctRecordPO = getSalaryAcctRecordService(user).getById(queryParam.getSalaryAcctRecordId());
if (Objects.isNull(salaryAcctRecordPO)) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98747, "薪资核算记录不存在或已被删除"));
}
// 查询薪资核算结果
List<Map<String, Object>> list = getSalaryAcctResultService(user).listByParam(queryParam);
// 构建薪资核算结果列表的表头
Map<String, Object> columns = getSalaryAcctExcelService(user).listColumn(salaryAcctRecordPO);
Map<String, Object> datas = new HashMap<>();
datas.put("list", list);
datas.put("columns", columns);
return datas;
}
/**
* 获取薪资核算列表的高级搜索
*