feat(esppApi): при выполнении наряда, добавлены поля "ЭК робота" и "Код мероприятия РРО"

This commit is contained in:
Mikhail Trubnikov
2023-12-07 11:19:08 +10:00
parent b8e48859ae
commit 0fb8e5d1b6
7 changed files with 61 additions and 27 deletions

View File

@@ -36,24 +36,21 @@ namespace PARR.EsppApi
} }
private async Task<EsppResultBase<EsppResponse>> SetStatusAsync(string recordId, string newStatusStr, string resultMsg, EsppOrderClosingCodeEnum? closingCode = null) private async Task<EsppResultBase<EsppResponse>> SetStatusAsync(
string recordId,
string newStatusStr,
string resultMsg,
EsppOrderClosingCodeEnum? closingCode = null
)
{ {
//TODO assignee сразу назначаем принудительно, чтобы было понятно кто менял объект
//var query = $"<ROOT operation=\"SaveTask\" returnFormat=\"json\">{{" +
// $"\"recordid\":\"{recordId}\"," +
// $"\"status\":\"{newStatusStr}\"," +
// $"\"assignee\":\"{esppOrderSettings.AccountName}\"," +
// $"\"resolution\":\"{resultMsg}\"" +
// $"}}</ROOT>";
//var result = await esppHttpService.SendAsync<EsppResponse>(QuerySanitize(query));
var request = new SetStatusRequest(closingCode ?? EsppOrderClosingCodeEnum.Complete) var request = new SetStatusRequest(closingCode ?? EsppOrderClosingCodeEnum.Complete)
{ {
recordid = recordId, recordid = recordId,
status = newStatusStr, status = newStatusStr,
assignee = esppOrderSettings.AccountName, assignee = esppOrderSettings.AccountName,
resolution = resultMsg resolution = resultMsg,
rzdEventCode = esppOrderSettings.CodeRRO,
rzdKeRobot = esppOrderSettings.RobotEk
}; };
var result = await esppHttpService.SendAsync<EsppResponse>(GenerateRequest(EsppOperationsEnum.SaveTask, request)); var result = await esppHttpService.SendAsync<EsppResponse>(GenerateRequest(EsppOperationsEnum.SaveTask, request));

View File

@@ -26,14 +26,39 @@ namespace PARR.EsppApi.Requests
} }
} }
/// <summary>
/// Номер запроса
/// </summary>
public required string recordid { get; set; } public required string recordid { get; set; }
/// <summary>
/// Статус
/// </summary>
public required string status { get; set; } public required string status { get; set; }
/// <summary>
/// Исполнитель
/// </summary>
public required string assignee { get; set; } public required string assignee { get; set; }
/// <summary>
/// Решение
/// </summary>
public required string resolution { get; set; } public required string resolution { get; set; }
/// <summary>
/// Код закрытия
/// </summary>
public string resolutionCode { get; private set; } public string resolutionCode { get; private set; }
/// <summary>
/// ЭК робота
/// </summary>
public string rzdKeRobot { get; set; } = string.Empty;
/// <summary>
/// Код мероприятия по PPO
/// </summary>
public string rzdEventCode { get; set; } = string.Empty;
} }
} }

View File

@@ -15,6 +15,16 @@ namespace PARR.EsppApi.Settings
/// <summary> /// <summary>
/// Часовая зона пользователя в ЕСПП относительно UTC /// Часовая зона пользователя в ЕСПП относительно UTC
/// </summary> /// </summary>
public int EsppUserTimeZone { get; set; } public int EsppUserTimeZone { get; set; }
/// <summary>
/// Вкладка История: ЭК робота
/// </summary>
public string RobotEk { get; set; } = string.Empty;
/// <summary>
/// Вкладка История: Код мероприятия по РРО
/// </summary>
public string CodeRRO { get; set; } = string.Empty;
} }
} }

View File

@@ -38,7 +38,9 @@
"UserName": "Auto-PTK-DVS", "UserName": "Auto-PTK-DVS",
"AccountName": "АВТО ТЕХНОЛОГ ПТК-ДВС (AUTO-PTK-DVS)", "AccountName": "АВТО ТЕХНОЛОГ ПТК-ДВС (AUTO-PTK-DVS)",
"Password": "123456789", "Password": "123456789",
"EsppUserTimeZone": 10 "EsppUserTimeZone": 10,
"RobotEk": "РПА-РОБИН-ГВЦ-ЕСПП-ТС-513-ДВС",
"CodeRRO": "ЦТС-РЦТ-9999"
}, },
"EsppPoligonSettings": { "EsppPoligonSettings": {
"IsEnabled": true, "IsEnabled": true,

View File

@@ -37,7 +37,7 @@ namespace PARR.Test
private async Task TestEsppApi() private async Task TestEsppApi()
{ {
//var result = await esppApiService.FindOrdersAsync(new FindOrdersQuery { DescriptionContains = "Полное", GenerateDateStart = new DateTime(2023, 10, 10) , GenerateDateEnd = new DateTime(2023, 10, 24) }); //var result = await esppApiService.FindOrdersAsync(new FindOrdersQuery { DescriptionContains = "Полное", GenerateDateStart = new DateTime(2023, 10, 10) , GenerateDateEnd = new DateTime(2023, 10, 24) });
var recordId = "НАР23-00046650"; var recordId = "НАР23-00058421";
var result = await esppApiService.FindOrderByRecordIdAsync(recordId); var result = await esppApiService.FindOrderByRecordIdAsync(recordId);
@@ -45,7 +45,8 @@ namespace PARR.Test
{ {
//var orders = result.Data; //var orders = result.Data;
var inWorkResult = await esppApiService.SetStatusInWorkAsync(recordId, "Решение...\nС новой строки"); //в работу
var inWorkResult = await esppApiService.SetStatusInWorkAsync(recordId, "Выполнено."); //"Решение...\nС новой строки"
if (!inWorkResult.IsSuccess) if (!inWorkResult.IsSuccess)
{ {
_logger.LogError(inWorkResult.Exception, $"Не удалось взять в работу наряда{recordId}"); _logger.LogError(inWorkResult.Exception, $"Не удалось взять в работу наряда{recordId}");
@@ -62,8 +63,8 @@ namespace PARR.Test
return; return;
} }
//выполнить
var resFinish = await esppApiService.SetStatusIsDoneAsync(recordId, "Решение...", EsppOrderClosingCodeEnum.Auto); var resFinish = await esppApiService.SetStatusIsDoneAsync(recordId, "Выполнено.", EsppOrderClosingCodeEnum.Auto);
if (!resFinish.IsSuccess) if (!resFinish.IsSuccess)
{ {
_logger.LogError(resFinish.Exception, $"Не удалось обновить статус наряда {recordId}"); _logger.LogError(resFinish.Exception, $"Не удалось обновить статус наряда {recordId}");

View File

@@ -22,11 +22,5 @@
} }
} }
] ]
},
"EsppOrderSettings": {
"Url": "http://rzd-espp-t-rpa-app-1.gvc.oao.rzd:8080/espp_api/OperationExecutor/",
"UserName": "Auto-PTK-DVS",
"Password": "123456789"
} }
} }

View File

@@ -25,9 +25,14 @@
}, },
"EsppOrderSettings": { "EsppOrderSettings": {
"Url": "http://rzd-espp-t-rpa-app-1.gvc.oao.rzd:8080/espp_api/OperationExecutor/", "Url": "http://rzd-espp-t-rpa-app-1.gvc.oao.rzd:8080/espp_api/OperationExecutor/",
"UserName": "Auto-PTK-DVS", //"UserName": "Auto-PTK-DVS",
"AccountName": "АВТО ТЕХНОЛОГ ПТК-ДВС (AUTO-PTK-DVS)", //"AccountName": "АВТО ТЕХНОЛОГ ПТК-ДВС (AUTO-PTK-DVS)",
//"Password": "123456789",
"UserName": "AUTO-PTK-INFO-0002-DVS",
"AccountName": "АВТО ТЕХНОЛОГ ПТК-ИНФО-0002-ДВС (AUTO-PTK-INFO-0002-DVS)",
"Password": "123456789", "Password": "123456789",
"EsppUserTimeZone": 10 "EsppUserTimeZone": 10,
"RobotEk": "РПА-РОБИН-ГВЦ-ЕСПП-ТС-513-ДВС",
"CodeRRO": "ЦТС-РЦТ-9999"
} }
} }