|
|
|
|
@ -1,3 +1,5 @@
|
|
|
|
|
import 'package:test_sa/extensions/enum_extensions.dart';
|
|
|
|
|
import 'package:test_sa/models/enums/recurrent_task_inspection_data_type.dart';
|
|
|
|
|
import 'package:test_sa/models/lookup.dart';
|
|
|
|
|
import 'package:test_sa/models/timer_model.dart';
|
|
|
|
|
|
|
|
|
|
@ -9,16 +11,10 @@ class RecurrentWo {
|
|
|
|
|
int? responseCode;
|
|
|
|
|
bool? isSuccess;
|
|
|
|
|
|
|
|
|
|
RecurrentWo(
|
|
|
|
|
{this.recurrentWoData,
|
|
|
|
|
this.message,
|
|
|
|
|
this.title,
|
|
|
|
|
this.innerMessage,
|
|
|
|
|
this.responseCode,
|
|
|
|
|
this.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;
|
|
|
|
|
recurrentWoData = json['data'] != null ? RecurrentWoData.fromJson(json['data']) : null;
|
|
|
|
|
message = json['message'];
|
|
|
|
|
title = json['title'];
|
|
|
|
|
innerMessage = json['innerMessage'];
|
|
|
|
|
@ -27,7 +23,7 @@ class RecurrentWo {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
if (recurrentWoData != null) {
|
|
|
|
|
data['data'] = recurrentWoData!.toJson();
|
|
|
|
|
}
|
|
|
|
|
@ -51,75 +47,74 @@ class RecurrentWoData {
|
|
|
|
|
Lookup? department;
|
|
|
|
|
Lookup? room;
|
|
|
|
|
List<PlanRecurrentMedicalTaskRooms>? planRecurrentMedicalTaskRooms;
|
|
|
|
|
List<Null>? planRecurrentTaskTimers;
|
|
|
|
|
List<PlanRecurrentTaskTimers>? planRecurrentTaskTimers;
|
|
|
|
|
TimerModel? recurrentWoTimerModel = TimerModel();
|
|
|
|
|
double? totalWorkingHours=0.0;
|
|
|
|
|
|
|
|
|
|
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});
|
|
|
|
|
this.engineer,
|
|
|
|
|
this.scheduleDate,
|
|
|
|
|
this.status,
|
|
|
|
|
this.site,
|
|
|
|
|
this.building,
|
|
|
|
|
this.recurrentWoTimerModel,
|
|
|
|
|
this.floor,
|
|
|
|
|
this.department,
|
|
|
|
|
this.room,
|
|
|
|
|
this.planRecurrentMedicalTaskRooms,
|
|
|
|
|
this.planRecurrentTaskTimers,
|
|
|
|
|
this.totalWorkingHours});
|
|
|
|
|
|
|
|
|
|
RecurrentWoData.fromJson(Map<String, dynamic> json) {
|
|
|
|
|
id = json['id'];
|
|
|
|
|
engineer = json['engineer'] != null
|
|
|
|
|
? new Engineer.fromJson(json['engineer'])
|
|
|
|
|
: null;
|
|
|
|
|
engineer = json['engineer'] != null ? new Engineer.fromJson(json['engineer']) : null;
|
|
|
|
|
scheduleDate = json['scheduleDate'];
|
|
|
|
|
status =
|
|
|
|
|
json['status'] != null ? Status.fromJson(json['status']) : null;
|
|
|
|
|
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"]);
|
|
|
|
|
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));
|
|
|
|
|
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));
|
|
|
|
|
// });
|
|
|
|
|
planRecurrentTaskTimers = <PlanRecurrentTaskTimers>[];
|
|
|
|
|
json['planRecurrentTaskTimers'].forEach((v) {
|
|
|
|
|
planRecurrentTaskTimers?.add(PlanRecurrentTaskTimers.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
totalWorkingHours = json['planRecurrentTaskTimers'].fold(0.0, (sum, item) => (sum ?? 0) + DateTime.parse(item.endTime!).difference(DateTime.parse(item.startTime!)).inSeconds) ?? 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
Map<String, dynamic> toJson({int? status = 0}) {
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
List taskRoomTabAttributesJson = [];
|
|
|
|
|
if (planRecurrentMedicalTaskRooms != null) {
|
|
|
|
|
taskRoomTabAttributesJson = planRecurrentMedicalTaskRooms
|
|
|
|
|
?.expand((room) => room.planRecurrentMedicalTaskRoomTabs ?? [])
|
|
|
|
|
.expand((tab) => tab.planRecurrentMedicalTaskRoomTabAttributes ?? [])
|
|
|
|
|
.map((attribute) => attribute.toJson())
|
|
|
|
|
.toList() ??
|
|
|
|
|
[];
|
|
|
|
|
}
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
if (engineer != null) {
|
|
|
|
|
data['engineer'] = engineer!.toJson();
|
|
|
|
|
data['statusValue'] = status;
|
|
|
|
|
|
|
|
|
|
if (planRecurrentTaskTimers != null) {
|
|
|
|
|
data['planRecurrentTaskTimers'] = planRecurrentTaskTimers!.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
data['scheduleDate'] = scheduleDate;
|
|
|
|
|
if (status != null) {
|
|
|
|
|
data['status'] = status!.toJson();
|
|
|
|
|
if (taskRoomTabAttributesJson.isNotEmpty) {
|
|
|
|
|
data['attributes'] = taskRoomTabAttributesJson;
|
|
|
|
|
}
|
|
|
|
|
if (site != null) {
|
|
|
|
|
data['site'] = site!.toJson();
|
|
|
|
|
else{
|
|
|
|
|
data['attributes'] = [];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -131,12 +126,7 @@ class Engineer {
|
|
|
|
|
String? employeeId;
|
|
|
|
|
int? languageId;
|
|
|
|
|
|
|
|
|
|
Engineer(
|
|
|
|
|
{this.userId,
|
|
|
|
|
this.userName,
|
|
|
|
|
this.email,
|
|
|
|
|
this.employeeId,
|
|
|
|
|
this.languageId});
|
|
|
|
|
Engineer({this.userId, this.userName, this.email, this.employeeId, this.languageId});
|
|
|
|
|
|
|
|
|
|
Engineer.fromJson(Map<String, dynamic> json) {
|
|
|
|
|
userId = json['userId'];
|
|
|
|
|
@ -147,12 +137,12 @@ class Engineer {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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;
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
data['userId'] = userId;
|
|
|
|
|
data['userName'] = userName;
|
|
|
|
|
data['email'] = email;
|
|
|
|
|
data['employeeId'] = employeeId;
|
|
|
|
|
data['languageId'] = languageId;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -171,10 +161,10 @@ class Status {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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;
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
data['name'] = name;
|
|
|
|
|
data['value'] = value;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -191,9 +181,9 @@ class Site {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final Map<String, dynamic> data = new Map<String, dynamic>();
|
|
|
|
|
data['id'] = this.id;
|
|
|
|
|
data['siteName'] = this.siteName;
|
|
|
|
|
final Map<String, dynamic> data = {};
|
|
|
|
|
data['id'] =id;
|
|
|
|
|
data['siteName'] = siteName;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -203,32 +193,27 @@ class PlanRecurrentMedicalTaskRooms {
|
|
|
|
|
Room? room;
|
|
|
|
|
List<PlanRecurrentMedicalTaskRoomTabs>? planRecurrentMedicalTaskRoomTabs;
|
|
|
|
|
|
|
|
|
|
PlanRecurrentMedicalTaskRooms(
|
|
|
|
|
{this.id, this.room, this.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;
|
|
|
|
|
room = json['room'] != null ? Room.fromJson(json['room']) : null;
|
|
|
|
|
if (json['planRecurrentMedicalTaskRoomTabs'] != null) {
|
|
|
|
|
planRecurrentMedicalTaskRoomTabs = <PlanRecurrentMedicalTaskRoomTabs>[];
|
|
|
|
|
json['planRecurrentMedicalTaskRoomTabs'].forEach((v) {
|
|
|
|
|
planRecurrentMedicalTaskRoomTabs!
|
|
|
|
|
.add(new PlanRecurrentMedicalTaskRoomTabs.fromJson(v));
|
|
|
|
|
planRecurrentMedicalTaskRoomTabs!.add(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();
|
|
|
|
|
final Map<String, dynamic> data = {};
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
if (room != null) {
|
|
|
|
|
data['room'] = room!.toJson();
|
|
|
|
|
}
|
|
|
|
|
if (this.planRecurrentMedicalTaskRoomTabs != null) {
|
|
|
|
|
data['planRecurrentMedicalTaskRoomTabs'] = this
|
|
|
|
|
.planRecurrentMedicalTaskRoomTabs!
|
|
|
|
|
.map((v) => v.toJson())
|
|
|
|
|
.toList();
|
|
|
|
|
if (planRecurrentMedicalTaskRoomTabs != null) {
|
|
|
|
|
data['planRecurrentMedicalTaskRoomTabs'] = planRecurrentMedicalTaskRoomTabs!.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
@ -246,9 +231,9 @@ class Room {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final Map<String, dynamic> data = new Map<String, dynamic>();
|
|
|
|
|
data['id'] = this.id;
|
|
|
|
|
data['roomId'] = this.roomId;
|
|
|
|
|
final Map<String, dynamic> data = {};
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
data['roomId'] = roomId;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -257,39 +242,29 @@ class PlanRecurrentMedicalTaskRoomTabs {
|
|
|
|
|
int? id;
|
|
|
|
|
String? tabName;
|
|
|
|
|
int? tabMedicalRoomId;
|
|
|
|
|
List<PlanRecurrentMedicalTaskRoomTabAttributes>?
|
|
|
|
|
planRecurrentMedicalTaskRoomTabAttributes;
|
|
|
|
|
List<PlanRecurrentMedicalTaskRoomTabAttributes>? planRecurrentMedicalTaskRoomTabAttributes;
|
|
|
|
|
|
|
|
|
|
PlanRecurrentMedicalTaskRoomTabs(
|
|
|
|
|
{this.id,
|
|
|
|
|
this.tabName,
|
|
|
|
|
this.tabMedicalRoomId,
|
|
|
|
|
this.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>[];
|
|
|
|
|
planRecurrentMedicalTaskRoomTabAttributes = <PlanRecurrentMedicalTaskRoomTabAttributes>[];
|
|
|
|
|
json['planRecurrentMedicalTaskRoomTabAttributes'].forEach((v) {
|
|
|
|
|
planRecurrentMedicalTaskRoomTabAttributes!
|
|
|
|
|
.add(new PlanRecurrentMedicalTaskRoomTabAttributes.fromJson(v));
|
|
|
|
|
planRecurrentMedicalTaskRoomTabAttributes!.add( 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();
|
|
|
|
|
final Map<String, dynamic> data = {};
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
data['tabName'] = tabName;
|
|
|
|
|
data['tabMedicalRoomId'] = tabMedicalRoomId;
|
|
|
|
|
if (planRecurrentMedicalTaskRoomTabAttributes != null) {
|
|
|
|
|
data['planRecurrentMedicalTaskRoomTabAttributes'] = planRecurrentMedicalTaskRoomTabAttributes!.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
@ -298,27 +273,20 @@ class PlanRecurrentMedicalTaskRoomTabs {
|
|
|
|
|
class PlanRecurrentMedicalTaskRoomTabAttributes {
|
|
|
|
|
int? id;
|
|
|
|
|
Attribute? attribute;
|
|
|
|
|
Null? attributeValue;
|
|
|
|
|
dynamic attributeValue;
|
|
|
|
|
|
|
|
|
|
PlanRecurrentMedicalTaskRoomTabAttributes(
|
|
|
|
|
{this.id, this.attribute, this.attributeValue});
|
|
|
|
|
PlanRecurrentMedicalTaskRoomTabAttributes({this.id, this.attribute, this.attributeValue});
|
|
|
|
|
|
|
|
|
|
PlanRecurrentMedicalTaskRoomTabAttributes.fromJson(
|
|
|
|
|
Map<String, dynamic> json) {
|
|
|
|
|
PlanRecurrentMedicalTaskRoomTabAttributes.fromJson(Map<String, dynamic> json) {
|
|
|
|
|
id = json['id'];
|
|
|
|
|
attribute = json['attribute'] != null
|
|
|
|
|
? new Attribute.fromJson(json['attribute'])
|
|
|
|
|
: null;
|
|
|
|
|
attributeValue = json['attributeValue'];
|
|
|
|
|
attribute = json['attribute'] != null ? Attribute.fromJson(json['attribute']) : null;
|
|
|
|
|
attributeValue = json['attributeValue'] ?? (json['attribute']['type'] == 'bool' ? (json['attributeValue']?.toString() == 'true') : 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;
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
data['attributeValue'] =attributeValue!=null? attributeValue.toString():attributeValue;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -327,20 +295,47 @@ class Attribute {
|
|
|
|
|
String? name;
|
|
|
|
|
String? type;
|
|
|
|
|
String? key;
|
|
|
|
|
RecurrentTaskInspectionDataTypeEnum? dataTypeEnum;
|
|
|
|
|
|
|
|
|
|
Attribute({this.name, this.type, this.key});
|
|
|
|
|
Attribute({this.name, this.type, this.key, this.dataTypeEnum});
|
|
|
|
|
|
|
|
|
|
Attribute.fromJson(Map<String, dynamic> json) {
|
|
|
|
|
name = json['name'];
|
|
|
|
|
type = json['type'];
|
|
|
|
|
dataTypeEnum = json['type'] == null ? null : (json['type'] as String).toRecurrentTaskInspectionDataTypeEnum();
|
|
|
|
|
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;
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
data['name'] = name;
|
|
|
|
|
data['type'] = type;
|
|
|
|
|
data['key'] = key;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class PlanRecurrentTaskTimers {
|
|
|
|
|
int? id;
|
|
|
|
|
String? startTime;
|
|
|
|
|
String? endTime;
|
|
|
|
|
dynamic workingHours;
|
|
|
|
|
|
|
|
|
|
PlanRecurrentTaskTimers({this.id, this.startTime, this.endTime, this.workingHours});
|
|
|
|
|
|
|
|
|
|
PlanRecurrentTaskTimers.fromJson(Map<String, dynamic> json) {
|
|
|
|
|
id = json['id'];
|
|
|
|
|
startTime = json['startTime'];
|
|
|
|
|
endTime = json['endTime'];
|
|
|
|
|
workingHours = json['workingHours'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final Map<String, dynamic> data = <String, dynamic>{};
|
|
|
|
|
data['id'] = id;
|
|
|
|
|
data['startTime'] = startTime;
|
|
|
|
|
data['endTime'] = endTime;
|
|
|
|
|
data['workingHours'] = workingHours;
|
|
|
|
|
return data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|