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/service_request/wo_call_request.dart

126 lines
4.0 KiB
Dart

import 'package:test_sa/models/new_models/assigned_employee.dart';
import '../device/asset.dart';
import '../lookup.dart';
import 'call_site_contact_person.dart';
class CallRequest {
CallRequest({
this.id,
this.callNo,
this.callComments,
this.asset,
this.assignedEmployee,
this.callSiteContactPerson,
this.status,
this.callLastSituation,
this.defectType,
this.firstAction,
this.loanAvailablity,
this.assetLoan,
this.assetType,
});
CallRequest.fromJson(dynamic json) {
id = json['id'];
callNo = json['callNo'];
callComments = json['callComments'];
asset = json['asset'] != null ? Asset.fromJson(json['asset']) : null;
assignedEmployee = json['assignedEmployee'] != null ? AssignedEmployee.fromJson(json['assignedEmployee']) : null;
if (json['callSiteContactPerson'] != null) {
callSiteContactPerson = [];
json['callSiteContactPerson'].forEach((v) {
callSiteContactPerson!.add(CallSiteContactPerson.fromJson(v));
});
}
status = json['status'] != null ? Lookup.fromJson(json['status']) : null;
callLastSituation = json['callLastSituation'] != null ? Lookup.fromJson(json['callLastSituation']) : null;
defectType = json['defectType'] != null ? Lookup.fromJson(json['defectType']) : null;
firstAction = json['firstAction'] != null ? Lookup.fromJson(json['firstAction']) : null;
loanAvailablity = json['loanAvailablity'] != null ? Lookup.fromJson(json['loanAvailablity']) : null;
assetLoan = json['assetLoan'] != null ? AssetInfo.fromJson(json['assetLoan']) : null;
assetType = json['assetType'];
}
num? id;
String? callNo;
String? callComments;
Asset? asset;
AssignedEmployee? assignedEmployee;
List<CallSiteContactPerson>? callSiteContactPerson;
Lookup? status;
Lookup? callLastSituation;
Lookup? defectType;
Lookup? firstAction;
Lookup? loanAvailablity;
AssetInfo? assetLoan;
num? assetType;
CallRequest copyWith({
num? id,
String? callNo,
String? callComments,
Asset? asset,
AssignedEmployee? assignedEmployee,
List<CallSiteContactPerson>? callSiteContactPerson,
Lookup? status,
Lookup? callLastSituation,
Lookup? defectType,
Lookup? firstAction,
Lookup? loanAvailablity,
AssetInfo? assetLoan,
num? assetType,
}) =>
CallRequest(
id: id ?? this.id,
callNo: callNo ?? this.callNo,
callComments: callComments ?? this.callComments,
asset: asset ?? this.asset,
assignedEmployee: assignedEmployee ?? this.assignedEmployee,
callSiteContactPerson: callSiteContactPerson ?? this.callSiteContactPerson,
status: status ?? this.status,
callLastSituation: callLastSituation ?? this.callLastSituation,
defectType: defectType ?? this.defectType,
firstAction: firstAction ?? this.firstAction,
loanAvailablity: loanAvailablity ?? this.loanAvailablity,
assetLoan: assetLoan ?? this.assetLoan,
assetType: assetType ?? this.assetType,
);
Map<String, dynamic> toJson() {
final map = <String, dynamic>{};
map['id'] = id;
map['callNo'] = callNo;
map['callComments'] = callComments;
if (asset != null) {
map['asset'] = asset!.toJson();
}
if (assignedEmployee != null) {
map['assignedEmployee'] = assignedEmployee!.toJson();
}
if (callSiteContactPerson != null) {
map['callSiteContactPerson'] = callSiteContactPerson!.map((v) => v.toJson()).toList();
}
if (status != null) {
map['status'] = status!.toJson();
}
if (callLastSituation != null) {
map['callLastSituation'] = callLastSituation!.toJson();
}
if (defectType != null) {
map['defectType'] = defectType!.toJson();
}
if (firstAction != null) {
map['firstAction'] = firstAction!.toJson();
}
if (loanAvailablity != null) {
map['loanAvailablity'] = loanAvailablity!.toJson();
}
if (assetLoan != null) {
map['assetLoan'] = assetLoan!.toJson();
}
map['assetType'] = assetType;
return map;
}
}