schangxiang@126.com
2025-05-21 a3a2b238a2626ef8744e7a135f9ca2e2fbb5184c
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Services/ICallMaterialOrderRecordAppService.cs
@@ -1,5 +1,8 @@
using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.CallMaterialOrderRecord; 
using Volo.Abp.Application.Services; 
using CmsQueryExtensions.Entitys;
using System.Linq.Expressions;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrderRecord;
 
namespace CMS.Plugin.PipeLineLems.Application.Contracts.Services; 
 
@@ -13,14 +16,31 @@
    /// </summary> 
    /// <param name="ids"></param> 
    /// <returns></returns> 
    Task<List<CallMaterialOrderRecordDto>> CloneAsync(IEnumerable<Guid> ids);
    Task<List<CallMaterialOrderRecordDto>> 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(CallMaterialOrderRecordsImportModel input);
    Task ImportAsync(CallMaterialOrderRecordsImportModel input, MyCurrentUser myCurrentUser);
 
    /// <summary> 
    /// 导出叫料记录表 
@@ -43,4 +63,23 @@
    /// <param name="input"></param> 
    /// <returns></returns> 
    Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetCallMaterialOrderRecordInput input); 
    /// <summary>
    /// 根据条件获取叫料记录表列表
    /// </summary>
    /// <param name="whereConditions"></param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    Task<List<CallMaterialOrderRecord>> GetListByFilterAsync(Expression<Func<CallMaterialOrderRecord, 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<CallMaterialOrderRecord> GetSingleByFilterAsync(Expression<Func<CallMaterialOrderRecord, bool>> whereConditions, bool is​MultipleThrowException = false, CancellationToken cancellationToken = default);