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/ppm/recurrent_wo.dart

346 lines
9.4 KiB
Dart

import 'package:test_sa/models/lookup.dart';
import 'package:test_sa/models/timer_model.dart';
class RecurrentWo {
RecurrentWoData? recurrentWoData;
String? message;
String? title;
String? innerMessage;
int? responseCode;
bool? isSuccess;
RecurrentWo(
{this.recurrentWoData,
this.message,
this.title,
this.innerMessage,
this.responseCode,
this.isSuccess});
RecurrentWo.fromJson(Map<String, dynamic> json) {
recurrentWoData = json['data'] != null ? RecurrentWoData.fromJson(json['data']) : null;
message = json['message'];
title = json['title'];
innerMessage = json['innerMessage'];
responseCode = json['responseCode'];
isSuccess = json['isSuccess'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
if (recurrentWoData != null) {
data['data'] = recurrentWoData!.toJson();
}
data['message'] = message;
data['title'] = title;
data['innerMessage'] = innerMessage;
data['responseCode'] = responseCode;
data['isSuccess'] = isSuccess;
return data;
}
}
class RecurrentWoData {
int? id;
Engineer? engineer;
String? scheduleDate;
Status? status;
Site? site;
Lookup? building;
Lookup? floor;
Lookup? department;
Lookup? room;
List<PlanRecurrentMedicalTaskRooms>? planRecurrentMedicalTaskRooms;
List<Null>? planRecurrentTaskTimers;
TimerModel? recurrentWoTimerModel = TimerModel();
RecurrentWoData(
{this.id,
this.engineer,
this.scheduleDate,
this.status,
this.site,
this.building,
this.recurrentWoTimerModel,
this.floor,
this.department,
this.room,
this.planRecurrentMedicalTaskRooms,
this.planRecurrentTaskTimers});
RecurrentWoData.fromJson(Map<String, dynamic> json) {
id = json['id'];
engineer = json['engineer'] != null
? new Engineer.fromJson(json['engineer'])
: null;
scheduleDate = json['scheduleDate'];
status =
json['status'] != null ? Status.fromJson(json['status']) : null;
site = json['site'] != null ? Site.fromJson(json['site']) : null;
building= json["building"] == null ? null : Lookup.fromJson(json["building"]);
floor= json["floor"] == null ? null : Lookup.fromJson(json["floor"]);
department= json["department"] == null ? null : Lookup.fromJson(json["department"]);
room= json["room"] == null ? null : Lookup.fromJson(json["room"]);
if (json['planRecurrentMedicalTaskRooms'] != null) {
planRecurrentMedicalTaskRooms = <PlanRecurrentMedicalTaskRooms>[];
json['planRecurrentMedicalTaskRooms'].forEach((v) {
planRecurrentMedicalTaskRooms!
.add(PlanRecurrentMedicalTaskRooms.fromJson(v));
});
}
if (json['planRecurrentTaskTimers'] != null) {
//TODO match with exact data and replace...
// planRecurrentTaskTimers = <Null>[];
// json['planRecurrentTaskTimers'].forEach((v) {
// planRecurrentTaskTimers!.add(new Null.fromJson(v));
// });
}
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['id'] = id;
if (engineer != null) {
data['engineer'] = engineer!.toJson();
}
data['scheduleDate'] = scheduleDate;
if (status != null) {
data['status'] = status!.toJson();
}
if (site != null) {
data['site'] = site!.toJson();
}
if (planRecurrentMedicalTaskRooms != null) {
data['planRecurrentMedicalTaskRooms'] =
planRecurrentMedicalTaskRooms!.map((v) => v.toJson()).toList();
}
if (planRecurrentTaskTimers != null) {
//TODO match with exact data and replace...
// data['planRecurrentTaskTimers'] =
// this.planRecurrentTaskTimers!.map((v) => v.toJson()).toList();
}
return data;
}
}
class Engineer {
String? userId;
String? userName;
String? email;
String? employeeId;
int? languageId;
Engineer(
{this.userId,
this.userName,
this.email,
this.employeeId,
this.languageId});
Engineer.fromJson(Map<String, dynamic> json) {
userId = json['userId'];
userName = json['userName'];
email = json['email'];
employeeId = json['employeeId'];
languageId = json['languageId'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['userId'] = this.userId;
data['userName'] = this.userName;
data['email'] = this.email;
data['employeeId'] = this.employeeId;
data['languageId'] = this.languageId;
return data;
}
}
class Status {
int? id;
String? name;
int? value;
Status({this.id, this.name, this.value});
Status.fromJson(Map<String, dynamic> json) {
id = json['id'];
name = json['name'];
value = json['value'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['name'] = this.name;
data['value'] = this.value;
return data;
}
}
class Site {
int? id;
String? siteName;
Site({this.id, this.siteName});
Site.fromJson(Map<String, dynamic> json) {
id = json['id'];
siteName = json['siteName'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['siteName'] = this.siteName;
return data;
}
}
class PlanRecurrentMedicalTaskRooms {
int? id;
Room? room;
List<PlanRecurrentMedicalTaskRoomTabs>? planRecurrentMedicalTaskRoomTabs;
PlanRecurrentMedicalTaskRooms(
{this.id, this.room, this.planRecurrentMedicalTaskRoomTabs});
PlanRecurrentMedicalTaskRooms.fromJson(Map<String, dynamic> json) {
id = json['id'];
room = json['room'] != null ? new Room.fromJson(json['room']) : null;
if (json['planRecurrentMedicalTaskRoomTabs'] != null) {
planRecurrentMedicalTaskRoomTabs = <PlanRecurrentMedicalTaskRoomTabs>[];
json['planRecurrentMedicalTaskRoomTabs'].forEach((v) {
planRecurrentMedicalTaskRoomTabs!
.add(new PlanRecurrentMedicalTaskRoomTabs.fromJson(v));
});
}
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
if (this.room != null) {
data['room'] = this.room!.toJson();
}
if (this.planRecurrentMedicalTaskRoomTabs != null) {
data['planRecurrentMedicalTaskRoomTabs'] = this
.planRecurrentMedicalTaskRoomTabs!
.map((v) => v.toJson())
.toList();
}
return data;
}
}
class Room {
int? id;
String? roomId;
Room({this.id, this.roomId});
Room.fromJson(Map<String, dynamic> json) {
id = json['id'];
roomId = json['roomId'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['roomId'] = this.roomId;
return data;
}
}
class PlanRecurrentMedicalTaskRoomTabs {
int? id;
String? tabName;
int? tabMedicalRoomId;
List<PlanRecurrentMedicalTaskRoomTabAttributes>?
planRecurrentMedicalTaskRoomTabAttributes;
PlanRecurrentMedicalTaskRoomTabs(
{this.id,
this.tabName,
this.tabMedicalRoomId,
this.planRecurrentMedicalTaskRoomTabAttributes});
PlanRecurrentMedicalTaskRoomTabs.fromJson(Map<String, dynamic> json) {
id = json['id'];
tabName = json['tabName'];
tabMedicalRoomId = json['tabMedicalRoomId'];
if (json['planRecurrentMedicalTaskRoomTabAttributes'] != null) {
planRecurrentMedicalTaskRoomTabAttributes =
<PlanRecurrentMedicalTaskRoomTabAttributes>[];
json['planRecurrentMedicalTaskRoomTabAttributes'].forEach((v) {
planRecurrentMedicalTaskRoomTabAttributes!
.add(new PlanRecurrentMedicalTaskRoomTabAttributes.fromJson(v));
});
}
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['tabName'] = this.tabName;
data['tabMedicalRoomId'] = this.tabMedicalRoomId;
if (this.planRecurrentMedicalTaskRoomTabAttributes != null) {
data['planRecurrentMedicalTaskRoomTabAttributes'] = this
.planRecurrentMedicalTaskRoomTabAttributes!
.map((v) => v.toJson())
.toList();
}
return data;
}
}
class PlanRecurrentMedicalTaskRoomTabAttributes {
int? id;
Attribute? attribute;
Null? attributeValue;
PlanRecurrentMedicalTaskRoomTabAttributes(
{this.id, this.attribute, this.attributeValue});
PlanRecurrentMedicalTaskRoomTabAttributes.fromJson(
Map<String, dynamic> json) {
id = json['id'];
attribute = json['attribute'] != null
? new Attribute.fromJson(json['attribute'])
: null;
attributeValue = json['attributeValue'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
if (this.attribute != null) {
data['attribute'] = this.attribute!.toJson();
}
data['attributeValue'] = this.attributeValue;
return data;
}
}
class Attribute {
String? name;
String? type;
String? key;
Attribute({this.name, this.type, this.key});
Attribute.fromJson(Map<String, dynamic> json) {
name = json['name'];
type = json['type'];
key = json['key'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['name'] = this.name;
data['type'] = this.type;
data['key'] = this.key;
return data;
}
}