You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cloudsolutions-atoms/lib/models/device/device.dart

76 lines
2.0 KiB
Dart

3 years ago
import 'package:test_sa/models/hospital.dart';
import 'package:test_sa/models/lookup.dart';
import 'model.dart';
3 years ago
class Device {
3 years ago
int id;
3 years ago
String serialNumber;
String number;
String destBuildingName;
String destDepartmentName;
String destRoom;
String destFloor;
String destSiteName;
3 years ago
// String brand;
// String model;
ModelDefinition modelDefinition;
Hospital hospital;
3 years ago
Device({
this.id,
this.serialNumber,
this.number,
3 years ago
this.hospital,
this.destBuildingName,
this.destDepartmentName,
this.destRoom,
this.destFloor,
this.destSiteName,
3 years ago
// this.brand,
// this.model,
this.modelDefinition,
3 years ago
});
3 years ago
factory Device.fromJson(Map<String, dynamic> parsedJson) {
3 years ago
return Device(
2 years ago
id: parsedJson["id"],
serialNumber: parsedJson["assetSerialNo"],
number: parsedJson["assetNumber"],
modelDefinition: ModelDefinition.fromJson(parsedJson["modelDefinition"]),
hospital: Hospital.fromJson(parsedJson["site"]),
destBuildingName: parsedJson["destBuildingName"],
destDepartmentName: parsedJson["destDepartmentName"],
destRoom: parsedJson["destRoom"],
destFloor: parsedJson["destFloor"],
destSiteName: parsedJson['destSiteName']
// parsedJson["modelDefinition"] == null ? "" :
// parsedJson["modelDefinition"]["manufacturerName"],
// model: parsedJson["modelDefinition"] == null ? "" :
// parsedJson["modelDefinition"]["modelName"],
);
3 years ago
}
3 years ago
factory Device.fromDevice(Device device) {
3 years ago
return Device(
id: device.id,
serialNumber: device.serialNumber,
number: device.number,
3 years ago
// brand: device.brand,
// model: device.model,
3 years ago
);
}
3 years ago
Map<String, dynamic> toMap(Lookup assetType) {
return {
'id': id,
'assetSerialNo': serialNumber,
'assetNumber': number,
'modelDefinition': modelDefinition.toJson(),
'site': hospital.toMap(),
3 years ago
'AssetType': assetType.toMap(),
"supplier": {"id": 0, "suppliername": "string"},
3 years ago
};
}
3 years ago
}