weaver-hrm-salary/src/com/engine/salary/service/SalarySendService.java

136 lines
3.4 KiB
Java
Raw Normal View History

2022-04-12 10:11:53 +08:00
package com.engine.salary.service;
import com.engine.salary.entity.salaryBill.dto.*;
import com.engine.salary.entity.salaryBill.param.*;
import com.engine.salary.entity.salaryBill.po.SalarySendPO;
import com.engine.salary.entity.salaryBill.po.SalaryTemplatePO;
import com.engine.salary.util.page.PageInfo;
2022-04-14 19:32:09 +08:00
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
2022-04-12 10:11:53 +08:00
import java.util.List;
import java.util.Map;
/**
* @Description: 工资单发放
*/
public interface SalarySendService {
/**
* 获取单个工资单发放
*
* @param salarySendId
* @return
*/
SalarySendPO getById(Long salarySendId);
List<Long> findReAccountingIdsByAcctIds(List<Long> salaryAccountingIds, String tenantKey);
/**
* 薪资核算-归档生成工资单
* @param salaryAccountingId
* @param currentTenantKey
* @return
*/
// Map<String, Object> generateSalaryBill(Long salaryAccountingId, Long currentEmployeeId, String currentTenantKey);
/**
* 薪资核算-归档撤销工资单
* @param salaryAccountingId
* @param currentTenantKey
* @return
*/
// void revokeSalaryBill(Long salaryAccountingId, Long currentEmployeeId, String currentTenantKey);
/**
* 工资单发放列表分页
*
* @param queryParam
* @return
*/
PageInfo<SalarySendListDTO> listPage(SalarySendQueryParam queryParam);
/**
* 工资单发放
* @param queryParam
* @return
*/
2022-04-14 19:32:09 +08:00
Map<String, Object> grant(SalarySendGrantParam queryParam);
2022-04-12 10:11:53 +08:00
/**
* 工资单撤回
* @param queryParam
* @return
*/
2022-04-14 19:32:09 +08:00
Map<String, Object> withdraw(SalarySendWithdrawParam queryParam);
2022-04-12 10:11:53 +08:00
/**
* 工资单发放基本信息
* @param id
* @return
*/
SalarySendBaseInfoDTO getBaseInfo(Long id);
/**
* 我的工资单
* @param salaryInfoId
* @param currentEmployeeId
* @return
*/
Map<String, Object> mySalaryBill(Long salaryInfoId, Long currentEmployeeId);
/**
* 工资单发放信息列表分页
* @param queryParam
* @return
*/
PageInfo<SalarySendInfoListDTO> salarySendInfoListPage(SalarySendInfoQueryParam queryParam);
/**
* 我的工资单列表详情
*
* @param queryParam
* @return
*/
PageInfo<SalaryMySalaryBillListDTO> mySalaryBillListPage(SalaryBillQueryParam queryParam);
/**
* 工资单发放详情列表
* @param queryParam
* @return
*/
PageInfo<SalarySendDetailListDTO> salarySendInfoDetailListPage(SalarySendDetailQueryParam queryParam);
/**
* 获取薪资项目设置
*
* @param salaryTemplatePO
* @return
*/
List<SalaryTemplateSalaryItemListDTO> getSalaryItemsSetting(SalaryTemplatePO salaryTemplatePO);
/**
* 构建详情列表
*
* @param salaryItems
* @param records
* @param salaryAccountingId
* @return
*/
List<Map<String, Object>> buildDetailList(List<SalaryTemplateSalaryItemListDTO> salaryItems, List<SalarySendDetailListDTO> records, Long salaryAccountingId);
/**
* 导出-工资单发放详情列表
*
* @param queryParam
*/
2022-04-14 19:32:09 +08:00
XSSFWorkbook exportInfoList(SalarySendInfoQueryParam queryParam);
2022-04-12 10:11:53 +08:00
/**
* 导出-工资单发放详情列表
* @param salarySend
* @param queryParam
*/
2022-04-14 19:32:09 +08:00
XSSFWorkbook exportDetailList(SalarySendPO salarySend, SalarySendDetailQueryParam queryParam);
2022-04-12 10:11:53 +08:00
}