add structure
This commit is contained in:
90
lib/vo/pd.dart
Normal file
90
lib/vo/pd.dart
Normal file
@@ -0,0 +1,90 @@
|
||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||
|
||||
class PD {
|
||||
String id;
|
||||
DateTime date;
|
||||
String userID;
|
||||
String userName;
|
||||
String pdNumber;
|
||||
List<PDLine> pdLines = [];
|
||||
|
||||
PD({this.id, this.date, this.userID, this.userName, this.pdNumber});
|
||||
|
||||
factory PD.fromMap(Map<String, dynamic> map, String id) {
|
||||
var _dateTime = (map['date'] as Timestamp);
|
||||
|
||||
return PD(
|
||||
id: id,
|
||||
userID: map['user_id'],
|
||||
userName: map['user_name'],
|
||||
date: _dateTime?.toDate(),
|
||||
pdNumber: map['pd_number']);
|
||||
}
|
||||
|
||||
Map<String, dynamic> toMap() {
|
||||
List lines = pdLines.map((l) => l.toMap()).toList();
|
||||
return {
|
||||
'id': id,
|
||||
'date': date,
|
||||
'pd_lines': lines,
|
||||
};
|
||||
}
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'PD{id:$id, date:$date,pdLines:$pdLines}';
|
||||
}
|
||||
}
|
||||
|
||||
class PDLine {
|
||||
String storageID, storageName, productID, productName;
|
||||
int quantity;
|
||||
String action;
|
||||
PDLine(
|
||||
{this.storageID,
|
||||
this.storageName,
|
||||
this.productID,
|
||||
this.productName,
|
||||
this.quantity});
|
||||
|
||||
Map<String, dynamic> toMap() {
|
||||
return {
|
||||
'storage_id': storageID,
|
||||
'storage_name': storageName,
|
||||
'product_id': productID,
|
||||
'product_name': productName,
|
||||
'quantity': quantity
|
||||
};
|
||||
}
|
||||
|
||||
factory PDLine.fromMap(Map<String, dynamic> map) {
|
||||
return PDLine(
|
||||
storageID: map['storage_id'],
|
||||
storageName: map['storage_name'],
|
||||
productID: map['product_id'],
|
||||
productName: map['product_name'],
|
||||
quantity: map['quantity'],
|
||||
);
|
||||
}
|
||||
@override
|
||||
bool operator ==(other) {
|
||||
if (identical(this, other)) {
|
||||
return true;
|
||||
}
|
||||
return (other.storageID == this.storageID &&
|
||||
other.productID == this.productID);
|
||||
}
|
||||
|
||||
@override
|
||||
int get hashCode {
|
||||
int result = 17;
|
||||
result = 37 * result + storageID.hashCode;
|
||||
result = 37 * result + productID.hashCode;
|
||||
return result;
|
||||
}
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'PDLine{storageName:$storageName,productName:$productName,quantity:$quantity}';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user