package cn.iocoder.yudao.module.finance.api.reimbursement; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.finance.api.reimbursement.dto.FinanceReimbursementCreateReqDTO; import cn.iocoder.yudao.module.finance.api.reimbursement.dto.FinanceReimbursementRespDTO; import cn.iocoder.yudao.module.finance.api.reimbursement.dto.FinanceReimbursementUpdateReqDTO; /** * 财务报销单 API 接口 * * 供其他模块(如课题管理经费拨付)创建并自动提交报销审批,以及修改后重新发起、删除、查询报销单。 * * @author 超级管理员 */ public interface FinanceReimbursementApi { String PREFIX = "/rpc-api/finance/reimbursement"; /** * 创建报销单并立即提交审批(系统自动生成 1 行明细) * * @param reqDTO 报销单信息 * @return 报销单编号 */ CommonResult createReimbursementAndSubmit(FinanceReimbursementCreateReqDTO reqDTO); /** * 修改报销单并重新提交审批(用于报销被驳回后重新发起) * * @param reqDTO 报销单信息(含报销单编号) * @return 是否成功 */ CommonResult updateReimbursementAndResubmit(FinanceReimbursementUpdateReqDTO reqDTO); /** * 删除报销单(只有草稿或已驳回状态才能删除) * * @param reimbursementId 报销单编号 * @return 是否成功 */ CommonResult deleteReimbursement(Long reimbursementId); /** * 获取报销单 * * @param reimbursementId 报销单编号 * @return 报销单 */ CommonResult getReimbursement(Long reimbursementId); }