weaver-hrm-salary/src/com/engine/salary/report/service/SalaryStatisticsReportServi...

102 lines
2.6 KiB
Java
Raw Normal View History

2023-04-07 14:38:38 +08:00
package com.engine.salary.report.service;
2023-06-07 15:43:23 +08:00
import com.engine.salary.report.entity.param.SalaryStatisticsDataPerspectiveQueryParam;
2023-04-10 09:47:33 +08:00
import com.engine.salary.report.entity.param.SalaryStatisticsReportDataQueryParam;
import com.engine.salary.report.entity.param.SalaryStatisticsReportSaveParam;
import com.engine.salary.report.entity.param.SalaryStatisticsSearchConditionSaveParam;
import com.engine.salary.report.entity.po.SalaryStatisticsDimensionPO;
import com.engine.salary.report.entity.po.SalaryStatisticsItemPO;
import com.engine.salary.report.entity.po.SalaryStatisticsReportPO;
import com.engine.salary.util.page.PageInfo;
import java.util.Collection;
import java.util.List;
import java.util.Map;
2023-04-07 14:38:38 +08:00
/**
2023-05-05 14:08:37 +08:00
* 薪酬报表自定义统计项目
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
2023-04-07 14:38:38 +08:00
public interface SalaryStatisticsReportService {
2023-04-10 09:47:33 +08:00
/**
* 获取所有薪酬报表
*
* @return
*/
List<SalaryStatisticsReportPO> listAll();
/**
* 获取薪酬报表列表
*
* @return
*/
List<SalaryStatisticsReportPO> list();
/**
* 获取单个薪酬统计报表
*
* @param id
* @return
*/
SalaryStatisticsReportPO getById(Long id);
/**
* 保存薪酬统计报表
*
* @param saveParam
* @return
*/
String save(SalaryStatisticsReportSaveParam saveParam );
/**
* 删除薪酬统计报表
*
* @param ids
* @return
*/
Map<String, Object> delete(Collection<Long> ids );
/**
* 保存统计范围
*
* @param param
* @return
*/
String saveSearchCondition(SalaryStatisticsSearchConditionSaveParam param);
/**
* 构建报表分页统计记录
*
*
* @param dimension
* @param param
* @param salaryStatisticsItemList
* @return
*/
2023-06-15 18:48:31 +08:00
PageInfo<Map<String, Object>> buildReportRecords(SalaryStatisticsDimensionPO dimension, SalaryStatisticsReportDataQueryParam param, List<SalaryStatisticsItemPO> salaryStatisticsItemList);
2023-06-07 15:43:23 +08:00
/**
* 构建数据透视记录
*
* @param param
* @param reportPO 报表po
* @param dimension 维度po
* @param salaryStatisticsItemPOS 自定义统计项目List
* @return
*/
2023-06-07 16:50:09 +08:00
PageInfo<Map<String, Object>> buildDataPerspectiveRecords(SalaryStatisticsDataPerspectiveQueryParam param, SalaryStatisticsReportPO reportPO, SalaryStatisticsDimensionPO dimension, List<SalaryStatisticsItemPO> salaryStatisticsItemPOS);
2023-06-15 17:34:52 +08:00
/**
* 清除报表缓存
*/
void removeReportCache();
2023-06-15 18:48:31 +08:00
2023-04-07 14:38:38 +08:00
}