Расширение reminders (#19)
Co-authored-by: gorbenko.pavel <gorbenko.pavel@tansu.kz> Reviewed-on: http://git.tnsu.kz/gorbenko.pavel/tnsu-approval-route/pulls/19
This commit was merged in pull request #19.
This commit is contained in:
@@ -15,6 +15,7 @@ internal sealed record ApprovalRow(
|
||||
string Phase,
|
||||
DateTimeOffset? Date,
|
||||
string? ApproverEmail,
|
||||
string? ApproverName,
|
||||
int? SlaHours,
|
||||
bool? AskOverdueReason)
|
||||
{
|
||||
@@ -23,9 +24,9 @@ internal sealed record ApprovalRow(
|
||||
// TicketId — Lookup на заявку; без него строку не с чем связать.
|
||||
if (!TryGetInt(item, "TicketId", out var ticketId)) return null;
|
||||
|
||||
var approver = item.TryGetProperty("TansuSiteApprover", out var a) && a.ValueKind == JsonValueKind.Object
|
||||
? GetString(a, "EMail")
|
||||
: null;
|
||||
var approverObject = item.TryGetProperty("TansuSiteApprover", out var a) && a.ValueKind == JsonValueKind.Object
|
||||
? a
|
||||
: (JsonElement?)null;
|
||||
|
||||
return new ApprovalRow(
|
||||
TryGetInt(item, "Id", out var id) ? id : 0,
|
||||
@@ -35,7 +36,10 @@ internal sealed record ApprovalRow(
|
||||
// трактуем как «Согласование» (так же поступает request-portal).
|
||||
GetString(item, "Phase") is { Length: > 0 } phase ? phase : ApprovalPhases.Approval,
|
||||
TryGetDate(item, "Date"),
|
||||
approver,
|
||||
approverObject is { } ao ? GetString(ao, "EMail") : null,
|
||||
// Title у персонального поля — не всегда заполнен (например, у
|
||||
// системных/сервисных учёток) — тогда ReceiverName в DTO остаётся null.
|
||||
approverObject is { } an ? GetString(an, "Title") : null,
|
||||
TryGetInt(item, "SLAhours", out var sla) ? sla : null,
|
||||
TryGetBool(item, "AskOverdueReason", out var ask) ? ask : null);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user