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_transfer.dart

51 lines
1.2 KiB
Dart

3 years ago
import 'package:test_sa/models/device/device.dart';
import 'package:test_sa/models/device/device_transfer_info.dart';
class DeviceTransfer{
String id;
String userId;
String title;
Device device;
DeviceTransferInfo sender;
DeviceTransferInfo receiver;
DeviceTransfer({
this.id,
this.device,
this.title,
this.userId,
this.sender,
this.receiver,
});
bool validate(){
if(device == null) return false;
return receiver.validate();
}
fromDeviceTransfer(DeviceTransfer old){
id = old.id;
title = old.title;
userId = old.userId;
device = Device.fromDevice(old.device);
final sender = DeviceTransferInfo();
sender.fromDetails(old.sender);
this.sender = sender;
final receiver = DeviceTransferInfo();
receiver.fromDetails(old.receiver);
this.receiver = receiver;
}
factory DeviceTransfer.fromJson(Map<String,dynamic> parsedJson){
return DeviceTransfer(
id: parsedJson["id"],
title: parsedJson["title"],
userId: parsedJson["uid"],
device: Device.fromJson(parsedJson["eq_sn"]),
sender: DeviceTransferInfo.fromJson(parsedJson,"sender_"),
receiver: DeviceTransferInfo.fromJson(parsedJson,"receiver_"),
);
}
}