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

126 lines
3.0 KiB
Java

package com.engine.salary.service;
import com.engine.salary.entity.salarysob.param.SalarySobBasicSaveParam;
import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO;
import com.engine.salary.entity.salarysob.param.SalarySobDisableParam;
import com.engine.salary.entity.salarysob.param.SalarySobDuplicateParam;
import com.engine.salary.entity.salarysob.po.SalarySobPO;
import com.engine.salary.enums.salarysob.IncomeCategoryEnum;
import java.time.YearMonth;
import java.util.Collection;
import java.util.List;
/**
* @description: 薪资账套
* @author: xiajun
* @modified By: xiajun
* @date: Created in 11/9/21 4:06 PM
* @version:v1.0
*/
public interface SalarySobService {
/**
* 根据主键id获取单个薪资账套
*
* @param id 主键id
* @return
*/
SalarySobPO getById(Long id);
/**
* 根据主键id查询薪资账套
*
* @param ids 主键id
* @return
*/
List<SalarySobPO> listByIds(Collection<Long> ids);
/**
* 根据名称精确匹配查询薪资账套
*
* @param name 薪资账套名称
* @return
*/
List<SalarySobPO> listByName(String name);
/**
* 根据名称(模糊匹配)查询薪资账套
*
* @param nameLike 薪资账套名称
* @return
*/
List<SalarySobPO> listByNameLike(String nameLike);
/**
* 查询启用/禁用的薪资账套
*
* @param disable 启用/禁用
* @return
*/
List<SalarySobPO> listByDisable(Integer disable);
/**
* 根据薪资类型查询薪资账套
*
* @param incomeCategory 薪资类型
* @return
*/
List<SalarySobPO> listByIncomeCategory(IncomeCategoryEnum incomeCategory);
/**
* 根据列表查询参数查询薪资账套(分页)
*
* @param queryParam 列表查询参数
* @param tenantKey 租户key
* @return
*/
// Page<SalarySobPO> listPageByParam(SalarySobListQueryParam queryParam);
/**
* 保存
*
* @param saveParam 保存参数
* @return
*/
Long save(SalarySobBasicSaveParam saveParam);
/**
* 编辑
*
* @param saveParam 更新参数
* @return
*/
Long update(SalarySobBasicSaveParam saveParam);
/**
* 更新薪资账套的是否启用
*
* @param disableParam 更新参数
*/
void updateDisable(SalarySobDisableParam disableParam);
/**
* 根据主键id删除
*
* @param ids 薪资账套的主键id
*/
void deleteByIds(Collection<Long> ids);
/**
* 复制
*
* @param duplicateParam 复制参数
*/
void duplicate(SalarySobDuplicateParam duplicateParam);
/**
* 根据薪资所属月计算出薪资账套的薪资周期、考勤周期的具体日期范围以及税款所属期、福利台账月份的具体月份
*
* @param id 薪资账套的id
* @param salaryMonth 薪资所属月
* @return
*/
SalarySobCycleDTO getSalarySobCycle(Long id, YearMonth salaryMonth);
}