zs
2025-05-16 7d410c1f0d4e36f8281ce2277f355c9abf1c231b
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Services/ICallMaterialOrderAppService.cs
@@ -1,5 +1,8 @@
using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.CallMaterialOrder; 
using Volo.Abp.Application.Services; 
using CmsQueryExtensions.Entitys;
using System.Linq.Expressions;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder;
 
namespace CMS.Plugin.PipeLineLems.Application.Contracts.Services; 
 
@@ -13,14 +16,31 @@
    /// </summary> 
    /// <param name="ids"></param> 
    /// <returns></returns> 
    Task<List<CallMaterialOrderDto>> CloneAsync(IEnumerable<Guid> ids);
    Task<List<CallMaterialOrderDto>> CloneAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser);
 
    /// <summary> 
    /// 删除叫料单表 
    /// </summary> 
    /// <param name="ids"></param> 
    /// <returns></returns> 
    Task DeleteManyAsync(IEnumerable<Guid> ids);
    Task DeleteManyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser);
    /// <summary>
    /// 物理删除叫料单表
    /// </summary>
    /// <param name="id">主键ID</param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    Task DeletePermanentlyAsync(Guid id, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default);
    /// <summary>
    /// 批量物理删除叫料单表(直接删除,不软删除)
    /// </summary>
    /// <param name="ids">要删除的主键ID列表</param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    Task BatchDeletePermanentlyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default);
 
    /// <summary> 
    /// 调整排序叫料单表 
@@ -35,7 +55,7 @@
    /// </summary> 
    /// <param name="input"></param> 
    /// <returns></returns> 
    Task ImportAsync(CallMaterialOrdersImportModel input);
    Task ImportAsync(CallMaterialOrdersImportModel input, MyCurrentUser myCurrentUser);
 
    /// <summary> 
    /// 导出叫料单表 
@@ -43,4 +63,23 @@
    /// <param name="input"></param> 
    /// <returns></returns> 
    Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetCallMaterialOrderInput input); 
    /// <summary>
    /// 根据条件获取叫料单表列表
    /// </summary>
    /// <param name="whereConditions"></param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    Task<List<CallMaterialOrder>> GetListByFilterAsync(Expression<Func<CallMaterialOrder, bool>> whereConditions, CancellationToken cancellationToken = default);
    /// <summary>
    ///  根据条件获取单个叫料单表
    /// </summary>
    /// <param name="whereConditions"></param>
    /// <param name="isMultipleThrowException">是否查询出多条就报错</param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    /// <exception cref="UserFriendlyException"></exception>
    Task<CallMaterialOrder> GetSingleByFilterAsync(Expression<Func<CallMaterialOrder, bool>> whereConditions, bool is​MultipleThrowException = false, CancellationToken cancellationToken = default);