diff --git a/api/Application.cfm b/api/Application.cfm index 7d6131c..e68eb55 100644 --- a/api/Application.cfm +++ b/api/Application.cfm @@ -76,12 +76,11 @@ function headerValue(name) { return ""; } -// Format date as ISO 8601 with UTC timezone (e.g., "2024-01-15T20:30:00Z") -// This allows clients to parse without assuming a timezone +// Format date as ISO 8601 UTC (e.g., "2024-01-15T20:30:00Z") +// All timestamps are stored in UTC — format directly function toISO8601(d) { if (isNull(d) || !isDate(d)) return ""; - var utc = dateConvert("local2utc", d); - return dateTimeFormat(utc, "yyyy-MM-dd'T'HH:nn:ss") & "Z"; + return dateTimeFormat(d, "yyyy-MM-dd'T'HH:nn:ss'Z'", "UTC"); } // Get current time in a specific timezone (returns "HH:mm:ss" string) diff --git a/api/orders/listForKDS.cfm b/api/orders/listForKDS.cfm index cf1c22c..fcb0af6 100644 --- a/api/orders/listForKDS.cfm +++ b/api/orders/listForKDS.cfm @@ -68,8 +68,8 @@ o.StatusID, o.ServicePointID, o.Remarks, - DATE_FORMAT(CONVERT_TZ(o.SubmittedOn, @@session.time_zone, '+00:00'), '%Y-%m-%dT%H:%i:%sZ') AS SubmittedOn, - DATE_FORMAT(CONVERT_TZ(o.LastEditedOn, @@session.time_zone, '+00:00'), '%Y-%m-%dT%H:%i:%sZ') AS LastEditedOn, + DATE_FORMAT(o.SubmittedOn, '%Y-%m-%dT%H:%i:%sZ') AS SubmittedOn, + DATE_FORMAT(o.LastEditedOn, '%Y-%m-%dT%H:%i:%sZ') AS LastEditedOn, sp.Name AS Name, u.FirstName, u.LastName @@ -94,8 +94,8 @@ o.StatusID, o.ServicePointID, o.Remarks, - DATE_FORMAT(CONVERT_TZ(o.SubmittedOn, @@session.time_zone, '+00:00'), '%Y-%m-%dT%H:%i:%sZ') AS SubmittedOn, - DATE_FORMAT(CONVERT_TZ(o.LastEditedOn, @@session.time_zone, '+00:00'), '%Y-%m-%dT%H:%i:%sZ') AS LastEditedOn, + DATE_FORMAT(o.SubmittedOn, '%Y-%m-%dT%H:%i:%sZ') AS SubmittedOn, + DATE_FORMAT(o.LastEditedOn, '%Y-%m-%dT%H:%i:%sZ') AS LastEditedOn, sp.Name AS Name, u.FirstName, u.LastName