feat(dal,api): IMatchingStatusService - управление статусами matcher`a. Отображение статусов в АПИ, нельзя повторно из апи отправить задание мэтчеру если сейчас идет matching

This commit is contained in:
Mikhail Trubnikov
2026-01-16 11:04:26 +10:00
parent 3205c1db8e
commit 99a491ede8
14 changed files with 303 additions and 91 deletions

View File

@@ -0,0 +1,36 @@
using PARR.DAL.Cache.Models;
namespace PARR.DAL.DomainModels
{
/// <summary>
/// Статус matching`a
/// </summary>
public class MatchingStatus
{
/// <summary>
/// В целом по искомому объекту, идет ли matching
/// </summary>
public bool IsMatchingObject => IsMatchingJobs || IsMatchingJobGroups;
/// <summary>
/// Идет ли мэтчинг по Jobs
/// </summary>
public bool IsMatchingJobs => DetailsJobs?.Any() ?? false;
/// <summary>
/// Идет ли мэтчинг по JobGroups
/// </summary>
public bool IsMatchingJobGroups => DetailsJobGroups?.Any() ?? false;
/// <summary>
/// Детально из КЭШ по Jobs
/// </summary>
public List<MatchingStatusItem>? DetailsJobs { get; set; }
/// <summary>
/// Детально из КЭШ по JobGroups
/// </summary>
public List<MatchingStatusItem>? DetailsJobGroups { get; set; }
}
}