feat(abschluss): interne Notiz nach den Unterschriften abfragen
- Nach "Abschliessen" oeffnet sich ein Blatt "Interne Notiz" (optional, max. 2000 Zeichen). Ohne Eingabe genuegt ein Tipp auf "Ohne Notiz abschliessen"; "Zurueck zur Unterschrift" bricht nur das Abschliessen ab - Die Notiz reist im Abschluss-Aufruf mit (internalNote) und landet im Lieferbericht, nicht in den Kunden-Notizen - API-Client aus aktueller Backend-Spec neu generiert - Widget-Tests fuer das Blatt Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@ -14,6 +14,7 @@ part 'complete_delivery_acknowledgements.g.dart';
|
||||
/// Properties:
|
||||
/// * [acknowledgedNoteIds] - Notiz-IDs, die zum Abschlusszeitpunkt sichtbar waren und mit-bestätigt wurden (Audit-Robustheit).
|
||||
/// * [authorCarId] - Fahrzeug des Akteurs (Audit-Spur). Muss zum Account gehören.
|
||||
/// * [internalNote] - Optionale interne Notiz des Fahrers, abgefragt nach beiden Unterschriften. Nur für interne Zwecke (Lieferbericht), nicht Teil der Kunden-Bestätigung. Leer/Whitespace = keine Notiz; max. 2000 Zeichen.
|
||||
/// * [notesAcknowledged] - „Anmerkungen zur Lieferung zur Kenntnis genommen.\" — Pflicht nur, wenn Notizen existieren (das prüft der Server).
|
||||
/// * [paymentCollected] - Inkasso-Bestätigung des Fahrers: „der offene Betrag wurde erhalten (bar) bzw. über das EC-Gerät abgerechnet.\" Pflicht nur, wenn beim Abschluss ein offener Betrag > 0 besteht UND die Methode ein Vor-Ort- Inkasso ist (Bar/EC) — das prüft der Server. Der kassierte Betrag wird server-seitig autoritativ berechnet (nicht vom Client übernommen).
|
||||
/// * [paymentMethodId] - Optionale Zahlungsmethode, die der Fahrer beim Abschluss gewählt hat. `None` = die am Beleg hinterlegte Methode bleibt. Falls gesetzt, muss sie existieren **und** aktiv sein (vom Server geprüft).
|
||||
@ -28,6 +29,10 @@ abstract class CompleteDeliveryAcknowledgements implements Built<CompleteDeliver
|
||||
@BuiltValueField(wireName: r'authorCarId')
|
||||
String? get authorCarId;
|
||||
|
||||
/// Optionale interne Notiz des Fahrers, abgefragt nach beiden Unterschriften. Nur für interne Zwecke (Lieferbericht), nicht Teil der Kunden-Bestätigung. Leer/Whitespace = keine Notiz; max. 2000 Zeichen.
|
||||
@BuiltValueField(wireName: r'internalNote')
|
||||
String? get internalNote;
|
||||
|
||||
/// „Anmerkungen zur Lieferung zur Kenntnis genommen.\" — Pflicht nur, wenn Notizen existieren (das prüft der Server).
|
||||
@BuiltValueField(wireName: r'notesAcknowledged')
|
||||
bool? get notesAcknowledged;
|
||||
@ -81,6 +86,13 @@ class _$CompleteDeliveryAcknowledgementsSerializer implements PrimitiveSerialize
|
||||
specifiedType: const FullType.nullable(String),
|
||||
);
|
||||
}
|
||||
if (object.internalNote != null) {
|
||||
yield r'internalNote';
|
||||
yield serializers.serialize(
|
||||
object.internalNote,
|
||||
specifiedType: const FullType.nullable(String),
|
||||
);
|
||||
}
|
||||
if (object.notesAcknowledged != null) {
|
||||
yield r'notesAcknowledged';
|
||||
yield serializers.serialize(
|
||||
@ -145,6 +157,14 @@ class _$CompleteDeliveryAcknowledgementsSerializer implements PrimitiveSerialize
|
||||
if (valueDes == null) continue;
|
||||
result.authorCarId = valueDes;
|
||||
break;
|
||||
case r'internalNote':
|
||||
final valueDes = serializers.deserialize(
|
||||
value,
|
||||
specifiedType: const FullType.nullable(String),
|
||||
) as String?;
|
||||
if (valueDes == null) continue;
|
||||
result.internalNote = valueDes;
|
||||
break;
|
||||
case r'notesAcknowledged':
|
||||
final valueDes = serializers.deserialize(
|
||||
value,
|
||||
|
||||
@ -13,6 +13,8 @@ class _$CompleteDeliveryAcknowledgements
|
||||
@override
|
||||
final String? authorCarId;
|
||||
@override
|
||||
final String? internalNote;
|
||||
@override
|
||||
final bool? notesAcknowledged;
|
||||
@override
|
||||
final bool? paymentCollected;
|
||||
@ -28,6 +30,7 @@ class _$CompleteDeliveryAcknowledgements
|
||||
_$CompleteDeliveryAcknowledgements._(
|
||||
{this.acknowledgedNoteIds,
|
||||
this.authorCarId,
|
||||
this.internalNote,
|
||||
this.notesAcknowledged,
|
||||
this.paymentCollected,
|
||||
this.paymentMethodId,
|
||||
@ -48,6 +51,7 @@ class _$CompleteDeliveryAcknowledgements
|
||||
return other is CompleteDeliveryAcknowledgements &&
|
||||
acknowledgedNoteIds == other.acknowledgedNoteIds &&
|
||||
authorCarId == other.authorCarId &&
|
||||
internalNote == other.internalNote &&
|
||||
notesAcknowledged == other.notesAcknowledged &&
|
||||
paymentCollected == other.paymentCollected &&
|
||||
paymentMethodId == other.paymentMethodId &&
|
||||
@ -59,6 +63,7 @@ class _$CompleteDeliveryAcknowledgements
|
||||
var _$hash = 0;
|
||||
_$hash = $jc(_$hash, acknowledgedNoteIds.hashCode);
|
||||
_$hash = $jc(_$hash, authorCarId.hashCode);
|
||||
_$hash = $jc(_$hash, internalNote.hashCode);
|
||||
_$hash = $jc(_$hash, notesAcknowledged.hashCode);
|
||||
_$hash = $jc(_$hash, paymentCollected.hashCode);
|
||||
_$hash = $jc(_$hash, paymentMethodId.hashCode);
|
||||
@ -72,6 +77,7 @@ class _$CompleteDeliveryAcknowledgements
|
||||
return (newBuiltValueToStringHelper(r'CompleteDeliveryAcknowledgements')
|
||||
..add('acknowledgedNoteIds', acknowledgedNoteIds)
|
||||
..add('authorCarId', authorCarId)
|
||||
..add('internalNote', internalNote)
|
||||
..add('notesAcknowledged', notesAcknowledged)
|
||||
..add('paymentCollected', paymentCollected)
|
||||
..add('paymentMethodId', paymentMethodId)
|
||||
@ -96,6 +102,10 @@ class CompleteDeliveryAcknowledgementsBuilder
|
||||
String? get authorCarId => _$this._authorCarId;
|
||||
set authorCarId(String? authorCarId) => _$this._authorCarId = authorCarId;
|
||||
|
||||
String? _internalNote;
|
||||
String? get internalNote => _$this._internalNote;
|
||||
set internalNote(String? internalNote) => _$this._internalNote = internalNote;
|
||||
|
||||
bool? _notesAcknowledged;
|
||||
bool? get notesAcknowledged => _$this._notesAcknowledged;
|
||||
set notesAcknowledged(bool? notesAcknowledged) =>
|
||||
@ -125,6 +135,7 @@ class CompleteDeliveryAcknowledgementsBuilder
|
||||
if ($v != null) {
|
||||
_acknowledgedNoteIds = $v.acknowledgedNoteIds?.toBuilder();
|
||||
_authorCarId = $v.authorCarId;
|
||||
_internalNote = $v.internalNote;
|
||||
_notesAcknowledged = $v.notesAcknowledged;
|
||||
_paymentCollected = $v.paymentCollected;
|
||||
_paymentMethodId = $v.paymentMethodId;
|
||||
@ -154,6 +165,7 @@ class CompleteDeliveryAcknowledgementsBuilder
|
||||
_$CompleteDeliveryAcknowledgements._(
|
||||
acknowledgedNoteIds: _acknowledgedNoteIds?.build(),
|
||||
authorCarId: authorCarId,
|
||||
internalNote: internalNote,
|
||||
notesAcknowledged: notesAcknowledged,
|
||||
paymentCollected: paymentCollected,
|
||||
paymentMethodId: paymentMethodId,
|
||||
|
||||
Reference in New Issue
Block a user