using DS.Module.Core; using DS.WMS.Core.Fee.Dtos; using DS.WMS.Core.Fee.Entity; using DS.WMS.Core.Op.Entity; namespace DS.WMS.Core.Fee.Interface; /// /// 费用记录定义 /// public interface IFeeRecordService { /// /// 列表 /// /// /// Task>> GetListByPageAsync(PageRequest request); /// /// 根据查询条件获取费用数据 /// /// /// Task>> GetListAsync(string query); /// /// 获取已申请修改的费用记录值 /// /// 费用记录ID /// Task> GetModifyValue(long id); /// /// 提交 /// /// 要提交的费用记录 /// 是否排除总价为零的费用,默认为false /// 是否使用事务,默认为true /// Task SaveAsync(IEnumerable items, bool excludeZeroFee = false, bool useTransaction = true); /// /// 费用保存后提交审核 /// /// 要提交的费用记录 /// 是否排除总价为零的费用 /// 是否使用事务 /// Task SaveAndSubmitAsync(IEnumerable items, bool excludeZeroFee = false, bool useTransaction = true); /// /// 根据费用模板引入 /// /// 业务ID /// 业务类型 /// 模板ID /// Task CreateByTemplateAsync(long bid, BusinessType type, params long[] tidArray); /// /// 删除 /// /// /// Task DeleteAsync(params long[] ids); /// /// 发起审批工作流 /// /// 审批类型 /// 备注 /// 费用记录ID /// Task SubmitForApprovalAsync(TaskBaseTypeEnum auditType, string remark, params long[] idArray); /// /// 发起费用修改申请 /// /// 费用修改信息 /// Task SubmitForModificationAsync(IEnumerable items); /// /// 撤销审批 /// /// 费用记录ID /// Task WithdrawAsync(params long[] ids); /// /// 发起整票审核 /// /// 业务ID /// 业务类型 /// Task SubmitBusinessAuditAsync(long bid, BusinessType type); /// /// 撤销整票审批 /// /// 业务ID /// 业务类型 /// Task WithdrawBusinessAsync(long bid, BusinessType type); /// /// 回写业务表费用状态 /// /// /// 业务ID /// 业务类型 /// Task WriteBackStatusAsync(long businessId, BusinessType businessType); /// /// 获取费用打印信息 /// /// 数据提供程序 /// 业务类型 /// 费用记录ID /// Task> GetPrintInfoAsync(string providerName, BusinessType businessType, params long[] idArray); /// /// 设置发票启用状态 /// /// 是否启用 /// 费用记录ID /// Task SetInvoiceEnabledAsync(bool enabled, params long[] idArray); }