(20260309) Added new 'mode' for formatting the muster roll.

This commit is contained in:
2026-03-09 17:37:11 +05:30
parent 3d5748a43e
commit 6952bf73f5
2 changed files with 8 additions and 2 deletions
@@ -208,7 +208,7 @@ async def muster_roll_report_generate(
pass # ... already an array
elif inbound_data.mode == "map":
report_data["report"] = {
r["User ID"]: {k: v for k,v in r.items() if k != "User ID"}
r["User ID"]: {k: v for k, v in r.items() if k != "User ID"}
for r in report_data["report"]
}
+7 -1
View File
@@ -86,6 +86,7 @@ class CosecMusterRollReportRequestData(BaseModel):
mode: Literal["array", "map"] = Field(
description = "The format in which the response is desired.",
default = "array",
frozen = True,
)
@@ -118,11 +119,16 @@ class CosecMusterRollReportRequestData(BaseModel):
)
return value
@field_validator("groupIds", mode = "after")
@field_validator("groupIds", mode = "before")
def parse_group_ids(cls, value):
if isinstance(value, str): value = value.split(",")
return value
@field_validator("mode", mode = "before")
def parse_mode(cls, value):
if isinstance(value, str): value = value.lower()
return value
# *****************************************************************************************************************
# ***** ****