103 lines
4.4 KiB
C#
103 lines
4.4 KiB
C#
using OrpaonVision.Core.Results;
|
|
using OrpaonVision.Model.Production;
|
|
|
|
namespace OrpaonVision.Core.Production;
|
|
|
|
/// <summary>
|
|
/// 运行部件判定仓储接口。
|
|
/// </summary>
|
|
public interface IRunPartJudgmentRepository
|
|
{
|
|
/// <summary>
|
|
/// 创建部件判定。
|
|
/// </summary>
|
|
/// <param name="judgment">部件判定模型。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>创建结果。</returns>
|
|
Task<Result<RunPartJudgmentModel>> CreateAsync(RunPartJudgmentModel judgment, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 更新部件判定。
|
|
/// </summary>
|
|
/// <param name="judgment">部件判定模型。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>更新结果。</returns>
|
|
Task<Result<RunPartJudgmentModel>> UpdateAsync(RunPartJudgmentModel judgment, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 根据ID获取部件判定。
|
|
/// </summary>
|
|
/// <param name="judgmentId">判定ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>部件判定模型。</returns>
|
|
Task<Result<RunPartJudgmentModel?>> GetByIdAsync(Guid judgmentId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 根据层级会话ID获取部件判定列表。
|
|
/// </summary>
|
|
/// <param name="layerSessionId">层级会话ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>部件判定列表。</returns>
|
|
Task<Result<List<RunPartJudgmentModel>>> GetByLayerSessionIdAsync(Guid layerSessionId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 根据产品会话ID获取部件判定列表。
|
|
/// </summary>
|
|
/// <param name="sessionId">产品会话ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>部件判定列表。</returns>
|
|
Task<Result<List<RunPartJudgmentModel>>> GetBySessionIdAsync(Guid sessionId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 根据结果获取部件判定列表。
|
|
/// </summary>
|
|
/// <param name="result">判定结果。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>部件判定列表。</returns>
|
|
Task<Result<List<RunPartJudgmentModel>>> GetByResultAsync(RunPartJudgmentResult result, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 分页查询部件判定。
|
|
/// </summary>
|
|
/// <param name="pageIndex">页索引。</param>
|
|
/// <param name="pageSize">页大小。</param>
|
|
/// <param name="productTypeCode">产品类型编码(可选)。</param>
|
|
/// <param name="result">判定结果(可选)。</param>
|
|
/// <param name="startTime">开始时间(可选)。</param>
|
|
/// <param name="endTime">结束时间(可选)。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>分页结果。</returns>
|
|
Task<Result<PagedResult<RunPartJudgmentModel>>> GetPagedAsync(
|
|
int pageIndex,
|
|
int pageSize,
|
|
string? productTypeCode = null,
|
|
RunPartJudgmentResult? result = null,
|
|
DateTime? startTime = null,
|
|
DateTime? endTime = null,
|
|
CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 删除部件判定。
|
|
/// </summary>
|
|
/// <param name="judgmentId">判定ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>删除结果。</returns>
|
|
Task<Result<bool>> DeleteAsync(Guid judgmentId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 批量删除部件判定。
|
|
/// </summary>
|
|
/// <param name="sessionIds">产品会话ID列表。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>删除结果。</returns>
|
|
Task<Result<bool>> DeleteBySessionIdsAsync(List<Guid> sessionIds, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 批量删除层级会话的部件判定。
|
|
/// </summary>
|
|
/// <param name="layerSessionIds">层级会话ID列表。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>删除结果。</returns>
|
|
Task<Result<bool>> DeleteByLayerSessionIdsAsync(List<Guid> layerSessionIds, CancellationToken cancellationToken = default);
|
|
}
|