fix(front) : pesée horodatée en date+heure, ré-horodatée à la validation (ERP-189)
Le champ Date des blocs de pesée passe de MalioDate (date seule, heure perdue -> 00:00:00 en base) à MalioDateTime (date + heure). Défaut = instant courant (nowIsoDateTime) et ré-horodatage à la validation d'une pesée (bascule ou manuelle) via applyReading : la date du ticket reflète le moment réel de la pesée. L'hydratation en modification conserve l'heure du back (TIMESTAMP).
This commit is contained in:
@@ -15,3 +15,18 @@ export function todayIso(now: Date = new Date()): string {
|
||||
const day = String(now.getDate()).padStart(2, '0')
|
||||
return `${year}-${month}-${day}`
|
||||
}
|
||||
|
||||
/**
|
||||
* Date-heure courante au format ISO LOCAL `YYYY-MM-DDTHH:mm:ss` (sans fuseau).
|
||||
*
|
||||
* C'est le format attendu par `MalioDateTime` (secondes incluses, pas d'offset
|
||||
* horaire). Comme `todayIso`, on lit les composantes LOCALES (jamais
|
||||
* `toISOString()`/UTC) pour ne pas décaler l'heure réelle. Paramètre `now`
|
||||
* injectable pour les tests.
|
||||
*/
|
||||
export function nowIsoDateTime(now: Date = new Date()): string {
|
||||
const hours = String(now.getHours()).padStart(2, '0')
|
||||
const minutes = String(now.getMinutes()).padStart(2, '0')
|
||||
const seconds = String(now.getSeconds()).padStart(2, '0')
|
||||
return `${todayIso(now)}T${hours}:${minutes}:${seconds}`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user