package cn.iocoder.lyzsys.module.tjt.service.employeeyearcostbudget;

import cn.iocoder.lyzsys.framework.common.pojo.PageResult;
import cn.iocoder.lyzsys.module.tjt.controller.admin.employeeyearcostbudget.vo.*;

import javax.validation.Valid;

public interface EmployeeYearCostBudgetService {

    Long createEmployeeYearCostBudget(@Valid EmployeeYearCostBudgetSaveReqVO createReqVO);

    EmployeeYearCostBudgetGenerateRespVO generateEmployeeYearCostBudget(@Valid EmployeeYearCostBudgetGenerateReqVO reqVO);

    void updateEmployeeYearCostBudget(@Valid EmployeeYearCostBudgetSaveReqVO updateReqVO);

    void deleteEmployeeYearCostBudget(Long id);

    EmployeeYearCostBudgetRespVO getEmployeeYearCostBudget(Long id);

    PageResult<EmployeeYearCostBudgetRespVO> getEmployeeYearCostBudgetPage(EmployeeYearCostBudgetPageReqVO pageReqVO);

}
