feat: Adressbuch mit Kundennummer, Update-Flow und interne Einträge
- Menüpunkt "Kunden" in "Adressbuch" umbenannt und App-Label "Verfügbare Jobs" zu "Auftragsliste" geändert (alle 10 Sprachen) - Fortlaufende Kundennummer (usrId) ab 10000 über neuen SequenceGeneratorService und Counter-Dokument in misc-Collection - Abholung/Lieferstation-Dialog: Änderungen an verknüpften Stammdaten aktualisieren den bestehenden Adressbuch-Eintrag statt einen neuen zu erzeugen; Checkbox-Label wechselt zu "Adresse im Adressbuch aktualisieren" - Geänderte Adressen ohne Checkbox werden als interner Customer (internal=true) gesichert und im Adressbuch ausgeblendet - E-Mail in AddCustomer und in Stations-Dialogen kein Pflichtfeld mehr; "(Login)" aus profile.email entfernt - Manuelles Beenden eines Auftrags öffnet neue Seite JobManualCompleteView statt eines Dialogs
This commit is contained in:
@@ -2,6 +2,8 @@ import '../task.dart';
|
||||
|
||||
// Signature Task
|
||||
class SignatureTask extends Task {
|
||||
final String? note;
|
||||
|
||||
SignatureTask({
|
||||
required super.id,
|
||||
required super.jobId,
|
||||
@@ -14,11 +16,19 @@ class SignatureTask extends Task {
|
||||
super.title,
|
||||
super.description,
|
||||
super.displayName,
|
||||
this.note,
|
||||
});
|
||||
|
||||
factory SignatureTask.fromJson(Map<String, dynamic> json) {
|
||||
final commonProps = Task.parseCommonProperties(json);
|
||||
|
||||
String? note;
|
||||
final taskSpecificData = json['taskSpecificData'];
|
||||
if (taskSpecificData is Map<String, dynamic>) {
|
||||
final n = taskSpecificData['note'];
|
||||
if (n is String) note = n;
|
||||
}
|
||||
|
||||
return SignatureTask(
|
||||
id: commonProps['id'],
|
||||
jobId: commonProps['jobId'],
|
||||
@@ -31,6 +41,7 @@ class SignatureTask extends Task {
|
||||
title: commonProps['title'],
|
||||
description: commonProps['description'],
|
||||
displayName: commonProps['displayName'],
|
||||
note: note,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -47,7 +58,11 @@ class SignatureTask extends Task {
|
||||
'taskOrder': taskOrder,
|
||||
'description': description,
|
||||
'displayName': displayName,
|
||||
'taskSpecificData': {'taskType': 'SIGNATURE', 'title': title},
|
||||
'taskSpecificData': {
|
||||
'taskType': 'SIGNATURE',
|
||||
'title': title,
|
||||
'note': note,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
@@ -64,6 +79,7 @@ class SignatureTask extends Task {
|
||||
String? title,
|
||||
String? description,
|
||||
String? displayName,
|
||||
String? note,
|
||||
}) {
|
||||
return SignatureTask(
|
||||
id: id ?? this.id,
|
||||
@@ -77,6 +93,7 @@ class SignatureTask extends Task {
|
||||
title: title ?? this.title,
|
||||
description: description ?? this.description,
|
||||
displayName: displayName ?? this.displayName,
|
||||
note: note ?? this.note,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user