30 lines
1.5 KiB
C#
30 lines
1.5 KiB
C#
public enum BatchStatus { Uploaded, InEntry, PendingVerification, Rejected, Verified, AwaitingClinicalApproval, Approved, Promoted }
|
|
|
|
public static class BatchStatusExtensions
|
|
{
|
|
public static string ToDbString(this BatchStatus s) => s switch
|
|
{
|
|
BatchStatus.Uploaded => "UPLOADED",
|
|
BatchStatus.InEntry => "IN_ENTRY",
|
|
BatchStatus.PendingVerification => "PENDING_VERIFICATION",
|
|
BatchStatus.Rejected => "REJECTED",
|
|
BatchStatus.Verified => "VERIFIED",
|
|
BatchStatus.AwaitingClinicalApproval => "AWAITING_CLINICAL_APPROVAL",
|
|
BatchStatus.Approved => "APPROVED",
|
|
BatchStatus.Promoted => "PROMOTED",
|
|
_ => throw new ArgumentOutOfRangeException(nameof(s))
|
|
};
|
|
|
|
public static BatchStatus FromDbString(string v) => v switch
|
|
{
|
|
"UPLOADED" => BatchStatus.Uploaded,
|
|
"IN_ENTRY" => BatchStatus.InEntry,
|
|
"PENDING_VERIFICATION" => BatchStatus.PendingVerification,
|
|
"REJECTED" => BatchStatus.Rejected,
|
|
"VERIFIED" => BatchStatus.Verified,
|
|
"AWAITING_CLINICAL_APPROVAL" => BatchStatus.AwaitingClinicalApproval,
|
|
"APPROVED" => BatchStatus.Approved,
|
|
"PROMOTED" => BatchStatus.Promoted,
|
|
_ => throw new ArgumentOutOfRangeException(nameof(v), $"Unknown batch status: '{v}'")
|
|
};
|
|
} |