Merge branch 'espp-api-extending' into dev

This commit is contained in:
Mikhail Kuznetsov
2024-02-28 15:41:28 +10:00
3 changed files with 50 additions and 2 deletions

View File

@@ -83,6 +83,9 @@ namespace PARR.EsppApi
var conditions = new List<string>(); var conditions = new List<string>();
if (!string.IsNullOrEmpty(query.StatusIs))
conditions.Add($"status=\"{query.StatusIs}\"");
if (!string.IsNullOrEmpty(query.DescriptionContains)) if (!string.IsNullOrEmpty(query.DescriptionContains))
conditions.Add($"description like \"*{query.DescriptionContains}*\""); conditions.Add($"description like \"*{query.DescriptionContains}*\"");
//if (!string.IsNullOrEmpty(query.TemplateNameContains)) //if (!string.IsNullOrEmpty(query.TemplateNameContains))

View File

@@ -10,6 +10,11 @@
/// </summary> /// </summary>
public string? DescriptionContains { get; set; } public string? DescriptionContains { get; set; }
/// <summary>
/// Статус наряда равен
/// </summary>
public string? StatusIs { get; set; }
/// <summary> /// <summary>
/// Дата сначала которой выбирать созданные наряды, UTC /// Дата сначала которой выбирать созданные наряды, UTC
/// </summary> /// </summary>

View File

@@ -11,7 +11,11 @@ namespace PARR.Test
private readonly IEsppApiService esppApiService; private readonly IEsppApiService esppApiService;
private readonly IIntervalService intervalService; private readonly IIntervalService intervalService;
public Worker(ILogger<Worker> logger, IEsppApiService esppApiService, IIntervalService intervalService) public Worker(
ILogger<Worker> logger,
IEsppApiService esppApiService,
IIntervalService intervalService
)
{ {
_logger = logger; _logger = logger;
this.esppApiService = esppApiService; this.esppApiService = esppApiService;
@@ -40,7 +44,8 @@ namespace PARR.Test
await TestEsppApi(); //await TestEsppApi();
await StopDiscontinuedOrdersInEspp();
} }
@@ -86,6 +91,41 @@ namespace PARR.Test
_logger.LogWarning($"не найден наряд {recordId}"); _logger.LogWarning($"не найден наряд {recordId}");
} }
} }
private async Task StopDiscontinuedOrdersInEspp()
{
const string ResultMsg = "Сформирован ошибочно";
var searchQuery = new FindOrdersQuery
{
DescriptionContains = "ЭИТИ-ПТК-ПАРР",
StatusIs = "1-Направлен в группу",
GenerateDateStart = new DateTime(2024, 02, 26, 0, 0, 0),
GenerateDateEnd = new DateTime(2024, 02, 29, 0, 0, 0)
};
var result = await esppApiService.FindOrdersAsync(searchQuery);
if (result.IsSuccess && result.Data != null)
{
foreach (var item in result.Data)
{
if (item.StatusEnum == Constants.OrderStatusEnum.New)
{
await esppApiService.SetStatusInWorkAsync(item.Number, ResultMsg);
}
var newItem = await esppApiService.FindOrderByRecordIdAsync(item.Number);
if (newItem.IsSuccess && newItem.Data != null && newItem.Data.StatusEnum == OrderStatusEnum.InWork)
{
var tnk = new AddMtnkQuery { RecordId = newItem.Data.Number, JobOperation = "Прочее(наряды)", Time = "00:01" };
await esppApiService.AddMTnkAsync(tnk);
await esppApiService.SetStatusIsDoneAsync(newItem.Data.Number, ResultMsg, EsppOrderClosingCodeEnum.Breake);
}
}
}
}
} }
} }