ad62ac96ac
Шаг маршрута получает флаг «Автосогласование» (AutoApprove). Когда у активной строки такого шага истекает SLA, часовая задача Hangfire принимает за согласующего положительное решение: помечает строку, двигает очередь и пересчитывает статус заявки — тем же набором правил, что и портал, когда решение принимает человек (зеркало approverDecision.service.ts/decide). Флаг не nullable, в отличие от SLA рядом: наследовать его неоткуда — у типа заявки такого поля нет и быть не должно. - ApprovalRow и константы статусов переехали в общий Approvals: их теперь читают и напоминания, и автосогласование, разъезжаться разбору одного и того же списка нельзя; - SharePointClient научился MERGE'ить элементы (раньше умел только читать). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
60 lines
1.6 KiB
JSON
60 lines
1.6 KiB
JSON
{
|
|
"Serilog": {
|
|
"MinimumLevel": {
|
|
"Default": "Information",
|
|
"Override": {
|
|
"Microsoft.AspNetCore": "Warning",
|
|
"Microsoft.EntityFrameworkCore": "Warning",
|
|
"Hangfire": "Warning",
|
|
"System.Net.Http.HttpClient": "Warning"
|
|
}
|
|
}
|
|
},
|
|
"ConnectionStrings": {
|
|
"Postgres": "Host=db-master.tnsu.kz;Database=tnsu_approval_route;Username=dbuser;Password=p}{6{Pa]{JQwP1H"
|
|
},
|
|
"Entra": {
|
|
"TenantId": "b4c2af35-bfd6-4cff-9af9-556efb53e65a",
|
|
"Audience": "9232d9e2-9807-4753-808f-07250e5474b0",
|
|
"AllowedAppIds": []
|
|
},
|
|
"Cors": {
|
|
"AllowedOrigins": [
|
|
"https://tnsukz.sharepoint.com",
|
|
"https://localhost:4321"
|
|
]
|
|
},
|
|
"AutoApprove": {
|
|
"Enabled": true,
|
|
"Cron": "0 * * * *",
|
|
"MaxRowsPerRun": 200
|
|
},
|
|
"ListPartitioning": {
|
|
"ItemCountThreshold": 4900,
|
|
"StaleLockAfter": "00:30:00",
|
|
"CheckThresholdOnRead": true
|
|
},
|
|
"Hangfire": {
|
|
"Dashboard": {
|
|
"Username": "admin",
|
|
"Password": "RzaT2krczbRpE36QAucdCXR"
|
|
}
|
|
},
|
|
"SharePoint": {
|
|
"TenantId": "b4c2af35-bfd6-4cff-9af9-556efb53e65a",
|
|
"ClientId": "9232d9e2-9807-4753-808f-07250e5474b0",
|
|
"CertificateSettingName": "AzurePfx",
|
|
"CertificatePassword": "Rk.xDjccnfyjdktybz1",
|
|
"NotificationUrl": "https://api.tnsu.kz/Webhook/SharePoint"
|
|
},
|
|
"TnsuPortal": {
|
|
"BaseUrl": "https://api.tnsu.kz",
|
|
"TenantId": "b4c2af35-bfd6-4cff-9af9-556efb53e65a",
|
|
"ClientId": "9232d9e2-9807-4753-808f-07250e5474b0",
|
|
"ClientSecret": "",
|
|
"Scope": "",
|
|
"DirectorTansuEmail": "a.samayeva@tnsu.kz",
|
|
"ManagingDirectorTansuEmail": "nkim@tnsu.kz"
|
|
}
|
|
}
|