mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 11:53:12 +00:00
Align board apptTime field locks with SyncFieldMergePolicy field names so sync cannot overwrite a manual appointment edit. Also add shared LifecycleStatusSets so the Phase 2 branch compiles.
20 lines
660 B
C#
20 lines
660 B
C#
using Data.SeaHavenIndustries.Enums;
|
|
|
|
namespace SeaHaven.Services.Helpers
|
|
{
|
|
/// <summary>
|
|
/// Shared terminal lifecycle statuses for board filters, read-only checks, and jobs.
|
|
/// Keep this as the single source of truth (EF expressions should copy these values inline).
|
|
/// </summary>
|
|
public static class LifecycleStatusSets
|
|
{
|
|
public static readonly LifecycleStatus[] Terminal =
|
|
{
|
|
LifecycleStatus.Completed,
|
|
LifecycleStatus.Canceled
|
|
};
|
|
|
|
public static bool IsTerminal(LifecycleStatus? status)
|
|
=> status is LifecycleStatus.Completed or LifecycleStatus.Canceled;
|
|
}
|
|
}
|