Add InterstitialGroups service and enhance SlotWriter and related components for interstitial handling
ci / build-backend (push) Successful in 1m18s
ci / build-frontend (push) Successful in 43s
ci / tests (push) Successful in 3m38s
ci / sonar (push) Successful in 3m38s

Introduced the InterstitialGroups service to manage interstitial group logic, preventing their inclusion in slots and fallback groups. Updated the SlotWriter class to utilize this service, ensuring proper validation during slot creation and updates. Enhanced error handling for interstitial groups in the ImportGridCommandHandler and UpdateTemplateCommandHandler, providing warnings instead of failures when interstitials are detected. Updated related tests to verify the correct behavior of these changes, ensuring robust handling of interstitials in the scheduling process.
This commit is contained in:
Leonid Pershin
2026-07-30 12:48:51 +03:00
parent 398b60facc
commit 926a20020f
15 changed files with 370 additions and 39 deletions
@@ -39,6 +39,18 @@ public static class TemplateErrors
"Группа не найдена."
);
public static readonly Error InterstitialGroupInSlot = Error.Validation(
"Templates.InterstitialGroupInSlot",
"В слоте группа роликов — в эфир уйдёт полоса рекламы, подписанная как программа. "
+ "Ролики ставятся врезками стыка, а не слотом."
);
public static readonly Error InterstitialFallbackGroup = Error.Validation(
"Templates.InterstitialFallbackGroup",
"Аварийной группой выбрана группа роликов — тогда каждая пауза в эфире станет рекламой. "
+ "Выберите группу контента или снимите её вовсе."
);
public static readonly Error JunctionNotFound = Error.NotFound(
"Templates.JunctionNotFound",
"Шаблон стыка не найден."