feat(loans): confirm declared material state changes

This commit is contained in:
SaidSoighiri94
2026-07-24 13:41:40 +02:00
parent 3739e9b0a0
commit a562b3248f
26 changed files with 1832 additions and 282 deletions
@@ -0,0 +1,22 @@
class ChecklistElementItem {
const ChecklistElementItem({
required this.accessoireId,
required this.nom,
required this.etat,
required this.quantite,
});
factory ChecklistElementItem.fromJson(Map<String, dynamic> json) {
return ChecklistElementItem(
accessoireId: json["accessoireId"] as int?,
nom: json["nomElement"] as String,
etat: json["etat"] as String,
quantite: json["quantiteConstatee"] as int,
);
}
final int? accessoireId;
final String nom;
final String etat;
final int quantite;
}
+11
View File
@@ -1,4 +1,5 @@
import "materiel_item.dart";
import "checklist_element_item.dart";
/// Un emprunt en cours de l'étudiant, affiché dans le parcours de restitution
/// et renvoyé par l'API.
@@ -9,6 +10,7 @@ class EmpruntItem {
required this.dateEmprunt,
required this.retourPrevu,
required this.statut,
required this.checklistDepart,
});
factory EmpruntItem.fromJson(Map<String, dynamic> json) {
@@ -21,6 +23,13 @@ class EmpruntItem {
dateEmprunt: _dateHeure(dateEmprunt),
retourPrevu: _date(retourPrevu),
statut: json["statut"] as String,
checklistDepart: (json["checklistDepart"] as List<dynamic>? ?? const [])
.map(
(element) => ChecklistElementItem.fromJson(
Map<String, dynamic>.from(element as Map),
),
)
.toList(),
);
}
@@ -29,6 +38,7 @@ class EmpruntItem {
final String dateEmprunt;
final String retourPrevu;
final String statut;
final List<ChecklistElementItem> checklistDepart;
EmpruntItem copyWith({MaterielItem? materiel, String? statut}) {
return EmpruntItem(
@@ -37,6 +47,7 @@ class EmpruntItem {
dateEmprunt: dateEmprunt,
retourPrevu: retourPrevu,
statut: statut ?? this.statut,
checklistDepart: checklistDepart,
);
}