You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
using DS.Module.Core;
|
|
|
|
|
using DS.WMS.Core.Application.Dtos;
|
|
|
|
|
using DS.WMS.Core.Application.Entity;
|
|
|
|
|
|
|
|
|
|
namespace DS.WMS.Core.Application.Interface
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 申请单基础服务定义
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <typeparam name="TEntity">实体的类型声明</typeparam>
|
|
|
|
|
public interface IApplicationService<TEntity> where TEntity : ApplicationBase, new()
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 提交申请单
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="application"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
Task<DataResult<TEntity>> SaveAsync(TEntity application);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 提交申请单
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="request"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
Task<DataResult<TEntity>> SaveAsync(ApplicationRequest<TEntity> request);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 删除申请单明细
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="ids">申请单明细ID</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
Task<DataResult> DeleteDetailAsync(params long[] ids);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 删除申请单
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="ids">申请单ID</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
Task<DataResult> DeleteAsync(params long[] ids);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 发起审批工作流
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="auditType">审批类型</param>
|
|
|
|
|
/// <param name="remark">审批备注</param>
|
|
|
|
|
/// <param name="idArray">申请单ID</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
Task<DataResult> SubmitApprovalAsync(TaskBaseTypeEnum auditType, string remark, params long[] idArray);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 撤销审批
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="ids">申请单ID</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
Task<DataResult> WithdrawAsync(params long[] ids);
|
|
|
|
|
}
|
|
|
|
|
}
|