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.
623 lines
21 KiB
Dart
623 lines
21 KiB
Dart
import 'dart:convert';
|
|
import 'dart:io';
|
|
import 'dart:typed_data';
|
|
|
|
import 'package:flutter/cupertino.dart';
|
|
import 'package:fluttertoast/fluttertoast.dart';
|
|
import 'package:test_sa/extensions/context_extension.dart';
|
|
import 'package:test_sa/models/ppm/ppm_attachment.dart';
|
|
import 'package:test_sa/models/ppm/ppm_calibration_tools.dart';
|
|
import 'package:test_sa/models/ppm/ppm_check_list.dart';
|
|
import 'package:test_sa/models/ppm/ppm_contacts.dart';
|
|
import 'package:test_sa/models/ppm/ppm_kit.dart';
|
|
import 'package:test_sa/models/timer_model.dart';
|
|
|
|
class Ppm {
|
|
Ppm({
|
|
this.id,
|
|
this.ppmScheduleId,
|
|
this.assetId,
|
|
this.jobSheetNo,
|
|
this.assignedEmployeeId,
|
|
this.expectedDate,
|
|
this.actualDate,
|
|
this.nextDate,
|
|
this.forwardToId,
|
|
this.maintenanceContractId,
|
|
this.typeOfServiceId,
|
|
this.executionTimeFrameId,
|
|
this.externalEngineer,
|
|
this.telephone,
|
|
this.groupLeaderReviewId,
|
|
this.timePeriodId,
|
|
this.assignedToId,
|
|
this.vCalibrationTools,
|
|
this.vKits,
|
|
this.vContacts,
|
|
this.vChecklists,
|
|
this.files,
|
|
this.visitStatusId,
|
|
this.startDate,
|
|
this.endDate,
|
|
this.workingHours,
|
|
this.travelingHours,
|
|
this.deviceStatusId,
|
|
this.comments,
|
|
this.workPerformed,
|
|
this.supplierId,
|
|
this.suppPersonId,
|
|
this.suppStartDate,
|
|
this.suppEndDate,
|
|
this.suppWorkingHours,
|
|
this.taskStatusId,
|
|
this.engSignature,
|
|
this.nurseSignature,
|
|
this.safetyId,
|
|
this.assetAvailabilityId,
|
|
this.assetAvailabilityName,
|
|
this.assetName,
|
|
this.assetNumber,
|
|
this.assetSerialNo,
|
|
this.assetSupplierId,
|
|
this.assetSupplierName,
|
|
this.assignedEmployeeName,
|
|
this.assignedToName,
|
|
this.contractNumber,
|
|
this.createdOn,
|
|
this.departmentId,
|
|
this.departmentName,
|
|
this.deviceStatusName,
|
|
this.dueDate,
|
|
this.executionTimeFrameName,
|
|
this.forwardToName,
|
|
this.groupLeaderReviewName,
|
|
this.manufacturerId,
|
|
this.manufacturerName,
|
|
this.modelId,
|
|
this.modelName,
|
|
this.modifiedOn,
|
|
bool notified,
|
|
this.planCode,
|
|
this.planNo,
|
|
this.ppmId,
|
|
this.ppmScheduleCode,
|
|
this.ppmScheduleNo,
|
|
this.ppmSupplierId,
|
|
this.ppmSupplierName,
|
|
this.safetyName,
|
|
this.siteId,
|
|
this.siteName,
|
|
this. buildingName,
|
|
this. floorName,
|
|
this. roomName,
|
|
this.supplierName,
|
|
this.suppPerson,
|
|
this.taskStatusName,
|
|
this.timePeriodName,
|
|
this.timePeriodValue,
|
|
this.typeOfServiceName,
|
|
this.visitCode,
|
|
this.visitNo,
|
|
this.visitStatusName,
|
|
this.warrantyEndDate,
|
|
});
|
|
|
|
Ppm.fromJson(dynamic json) {
|
|
id = json['id'];
|
|
ppmScheduleId = json['ppmScheduleId'];
|
|
assetId = json['assetId'];
|
|
jobSheetNo = json['jobSheetNo'];
|
|
assignedEmployeeId = json['assignedEmployeeId'];
|
|
expectedDate = json['expectedDate'];
|
|
actualDate = json['actualDate'];
|
|
nextDate = json['nextDate'];
|
|
forwardToId = json['forwardToId'];
|
|
maintenanceContractId = json['maintenanceContractId'];
|
|
typeOfServiceId = json['typeOfServiceId'];
|
|
executionTimeFrameId = json['executionTimeFrameId'];
|
|
externalEngineer = json['externalEngineer'];
|
|
telephone = json['telephone'];
|
|
groupLeaderReviewId = json['groupLeaderReviewId'];
|
|
timePeriodId = json['timePeriodId'];
|
|
assignedToId = json['assignedToId'];
|
|
if (json['vCalibrationTools'] != null) {
|
|
vCalibrationTools = [];
|
|
json['vCalibrationTools'].forEach((v) {
|
|
vCalibrationTools.add(PpmCalibrationTools.fromJson(v));
|
|
});
|
|
}
|
|
if (json['vKits'] != null) {
|
|
vKits = [];
|
|
json['vKits'].forEach((v) {
|
|
vKits.add(PpmKits.fromJson(v));
|
|
});
|
|
}
|
|
if (json['vContacts'] != null) {
|
|
vContacts = [];
|
|
json['vContacts'].forEach((v) {
|
|
vContacts.add(PpmContacts.fromJson(v));
|
|
});
|
|
}
|
|
if (json['vChecklists'] != null) {
|
|
vChecklists = [];
|
|
json['vChecklists'].forEach((v) {
|
|
vChecklists.add(PpmChecklists.fromJson(v));
|
|
});
|
|
}
|
|
if (json['vAttachments'] != null) {
|
|
files = [];
|
|
json['vAttachments'].forEach((v) {
|
|
files.add(PpmAttachments.fromJson(v));
|
|
});
|
|
}
|
|
visitStatusId = json['visitStatusId'];
|
|
startDate = json['startDate'];
|
|
endDate = json['endDate'];
|
|
workingHours = json['workingHours'];
|
|
try {
|
|
tbsTimer = TimerModel(startAt: DateTime.tryParse(startDate ?? ""), endAt: DateTime.tryParse(endDate ?? ""));
|
|
if (tbsTimer.endAt != null && tbsTimer.startAt != null) {
|
|
tbsTimer.durationInSecond = (tbsTimer.endAt.difference(tbsTimer.startAt))?.inSeconds;
|
|
workingHours = (((tbsTimer.durationInSecond ?? 0) / 60) / 60).toStringAsFixed(2);
|
|
}
|
|
} catch (e) {
|
|
print(e.toString());
|
|
}
|
|
travelingHours = json['travelingHours'];
|
|
deviceStatusId = json['deviceStatusId'];
|
|
comments = json['comments'];
|
|
workPerformed = json['workPerformed'];
|
|
supplierId = json['supplierId'];
|
|
suppPersonId = json['suppPersonId'];
|
|
suppStartDate = json['suppStartDate'];
|
|
suppEndDate = json['suppEndDate'];
|
|
suppWorkingHours = json['suppWorkingHours'];
|
|
taskStatusId = json['taskStatusId'];
|
|
engSignature = json['engSignature'];
|
|
nurseSignature = json['nurseSignature'];
|
|
safetyId = json['safetyId'];
|
|
assetAvailabilityId = json['assetAvailabilityId'];
|
|
assetAvailabilityName = json['assetAvailabilityName'];
|
|
assetName = json['assetName'];
|
|
assetNumber = json['assetNumber'];
|
|
assetSerialNo = json['assetSerialNo'];
|
|
assetSupplierId = json['assetSupplierId'];
|
|
assetSupplierName = json['assetSupplierName'];
|
|
assignedEmployeeName = json['assignedEmployeeName'];
|
|
assignedToName = json['assignedToName'];
|
|
createdOn = json['createdOn'];
|
|
departmentId = json['departmentId'];
|
|
departmentName = json['departmentName'];
|
|
deviceStatusName = json['deviceStatusName'];
|
|
dueDate = json['dueDate'];
|
|
executionTimeFrameName = json['executionTimeFrameName'];
|
|
forwardToName = json['forwardToName'];
|
|
manufacturerId = json['manufacturerId'];
|
|
manufacturerName = json['manufacturerName'];
|
|
modifiedOn = json['modifiedOn'];
|
|
notified = json['notified'];
|
|
planCode = json['planCode'];
|
|
planNo = json['planNo'];
|
|
ppmId = json['ppmId'];
|
|
ppmScheduleCode = json['ppmScheduleCode'];
|
|
ppmScheduleNo = json['ppmScheduleNo'];
|
|
ppmSupplierId = json['ppmSupplierId'];
|
|
ppmSupplierName = json['ppmSupplierName'];
|
|
safetyName = json['safetyName'];
|
|
siteId = json['siteId'];
|
|
siteName = json['siteName'];
|
|
buildingName = json['buildingName'];
|
|
floorName = json['floorName'];
|
|
roomName = json['roomName'];
|
|
supplierName = json['supplierName'];
|
|
suppPerson = json['suppPerson'];
|
|
taskStatusName = json['taskStatusName'];
|
|
timePeriodName = json['timePeriodName'];
|
|
timePeriodValue = json['timePeriodValue'];
|
|
typeOfServiceName = json['typeOfServiceName'];
|
|
visitCode = json['visitCode'];
|
|
visitNo = json['visitNo'];
|
|
visitStatusName = json['visitStatusName'];
|
|
warrantyEndDate = json['warrantyEndDate'];
|
|
}
|
|
|
|
num id;
|
|
num ppmScheduleId;
|
|
num assetId;
|
|
String jobSheetNo;
|
|
String assignedEmployeeId;
|
|
String expectedDate;
|
|
String actualDate;
|
|
String nextDate;
|
|
String forwardToId;
|
|
num maintenanceContractId;
|
|
num typeOfServiceId;
|
|
num executionTimeFrameId;
|
|
String externalEngineer;
|
|
String telephone;
|
|
num groupLeaderReviewId;
|
|
num timePeriodId;
|
|
num assignedToId;
|
|
List<PpmCalibrationTools> vCalibrationTools;
|
|
List<PpmKits> vKits;
|
|
List<PpmContacts> vContacts;
|
|
List<PpmChecklists> vChecklists;
|
|
List<PpmAttachments> files;
|
|
num visitStatusId;
|
|
String startDate;
|
|
String endDate;
|
|
String workingHours;
|
|
String travelingHours;
|
|
num deviceStatusId;
|
|
String comments;
|
|
String workPerformed;
|
|
num supplierId;
|
|
num suppPersonId;
|
|
String suppStartDate;
|
|
String suppEndDate;
|
|
String suppWorkingHours;
|
|
num taskStatusId;
|
|
String engSignature;
|
|
String nurseSignature;
|
|
num safetyId;
|
|
num assetAvailabilityId;
|
|
String assetAvailabilityName;
|
|
String assetName;
|
|
String assetNumber;
|
|
String assetSerialNo;
|
|
num assetSupplierId;
|
|
String assetSupplierName;
|
|
String assignedEmployeeName;
|
|
String assignedToName;
|
|
String contractNumber;
|
|
String createdOn;
|
|
num departmentId;
|
|
String departmentName;
|
|
String deviceStatusName;
|
|
String dueDate;
|
|
String executionTimeFrameName;
|
|
String forwardToName;
|
|
String groupLeaderReviewName;
|
|
num manufacturerId;
|
|
String manufacturerName;
|
|
num modelId;
|
|
String modelName;
|
|
String modifiedOn;
|
|
bool notified;
|
|
String planCode;
|
|
num planNo;
|
|
num ppmId;
|
|
String ppmScheduleCode;
|
|
num ppmScheduleNo;
|
|
num ppmSupplierId;
|
|
String ppmSupplierName;
|
|
String safetyName;
|
|
num siteId;
|
|
String siteName;
|
|
String buildingName;
|
|
String floorName;
|
|
String roomName;
|
|
String supplierName;
|
|
String suppPerson;
|
|
String taskStatusName;
|
|
String timePeriodName;
|
|
num timePeriodValue;
|
|
String typeOfServiceName;
|
|
String visitCode;
|
|
num visitNo;
|
|
String visitStatusName;
|
|
String warrantyEndDate;
|
|
TimerModel tbsTimer = TimerModel();
|
|
Uint8List localNurseSignature;
|
|
Uint8List localEngineerSignature;
|
|
|
|
Ppm copyWith({
|
|
num id,
|
|
num ppmScheduleId,
|
|
num assetId,
|
|
String jobSheetNo,
|
|
String assignedEmployeeId,
|
|
String expectedDate,
|
|
String actualDate,
|
|
String nextDate,
|
|
String forwardToId,
|
|
num maintenanceContractId,
|
|
num typeOfServiceId,
|
|
num executionTimeFrameId,
|
|
String externalEngineer,
|
|
String telephone,
|
|
num groupLeaderReviewId,
|
|
num timePeriodId,
|
|
num assignedToId,
|
|
List<PpmCalibrationTools> vCalibrationTools,
|
|
List<PpmKits> vKits,
|
|
List<PpmContacts> vContacts,
|
|
List<PpmChecklists> vChecklists,
|
|
List<PpmAttachments> files,
|
|
num visitStatusId,
|
|
String startDate,
|
|
String endDate,
|
|
String workingHours,
|
|
String travelingHours,
|
|
num deviceStatusId,
|
|
String comments,
|
|
String workPerformed,
|
|
num supplierId,
|
|
num suppPersonId,
|
|
String suppStartDate,
|
|
String suppEndDate,
|
|
String suppWorkingHours,
|
|
num taskStatusId,
|
|
String engSignature,
|
|
String nurseSignature,
|
|
num safetyId,
|
|
num assetAvailabilityId,
|
|
String assetAvailabilityName,
|
|
String assetName,
|
|
String assetNumber,
|
|
String assetSerialNo,
|
|
num assetSupplierId,
|
|
String assetSupplierName,
|
|
String assignedEmployeeName,
|
|
String assignedToName,
|
|
String contractNumber,
|
|
String createdOn,
|
|
num departmentId,
|
|
String departmentName,
|
|
String deviceStatusName,
|
|
String dueDate,
|
|
String executionTimeFrameName,
|
|
String forwardToName,
|
|
String groupLeaderReviewName,
|
|
num manufacturerId,
|
|
String manufacturerName,
|
|
num modelId,
|
|
String modelName,
|
|
String modifiedOn,
|
|
bool notified,
|
|
String planCode,
|
|
num planNo,
|
|
num ppmId,
|
|
String ppmScheduleCode,
|
|
num ppmScheduleNo,
|
|
num ppmSupplierId,
|
|
String ppmSupplierName,
|
|
String safetyName,
|
|
num siteId,
|
|
String siteName,
|
|
String buildingName,
|
|
String floorName,
|
|
String roomName,
|
|
String supplierName,
|
|
String suppPerson,
|
|
String taskStatusName,
|
|
String timePeriodName,
|
|
num timePeriodValue,
|
|
String typeOfServiceName,
|
|
String visitCode,
|
|
num visitNo,
|
|
String visitStatusName,
|
|
String warrantyEndDate,
|
|
TimerModel tbsTimer,
|
|
}) {
|
|
Ppm ppm = Ppm(
|
|
id: id ?? this.id,
|
|
ppmScheduleId: ppmScheduleId ?? this.ppmScheduleId,
|
|
assetId: assetId ?? this.assetId,
|
|
jobSheetNo: jobSheetNo ?? this.jobSheetNo,
|
|
assignedEmployeeId: assignedEmployeeId ?? this.assignedEmployeeId,
|
|
expectedDate: expectedDate ?? this.expectedDate,
|
|
actualDate: actualDate ?? this.actualDate,
|
|
nextDate: nextDate ?? this.nextDate,
|
|
forwardToId: forwardToId ?? this.forwardToId,
|
|
maintenanceContractId: maintenanceContractId ?? this.maintenanceContractId,
|
|
typeOfServiceId: typeOfServiceId ?? this.typeOfServiceId,
|
|
executionTimeFrameId: executionTimeFrameId ?? this.executionTimeFrameId,
|
|
externalEngineer: externalEngineer ?? this.externalEngineer,
|
|
telephone: telephone ?? this.telephone,
|
|
groupLeaderReviewId: groupLeaderReviewId ?? this.groupLeaderReviewId,
|
|
timePeriodId: timePeriodId ?? this.timePeriodId,
|
|
assignedToId: assignedToId ?? this.assignedToId,
|
|
vCalibrationTools: vCalibrationTools ?? this.vCalibrationTools,
|
|
vKits: vKits ?? this.vKits,
|
|
vContacts: vContacts ?? this.vContacts,
|
|
vChecklists: vChecklists ?? this.vChecklists,
|
|
files: files ?? this.files,
|
|
visitStatusId: visitStatusId ?? this.visitStatusId,
|
|
startDate: startDate ?? this.startDate,
|
|
endDate: endDate ?? this.endDate,
|
|
workingHours: workingHours ?? this.workingHours,
|
|
travelingHours: travelingHours ?? this.travelingHours,
|
|
deviceStatusId: deviceStatusId ?? this.deviceStatusId,
|
|
comments: comments ?? this.comments,
|
|
workPerformed: workPerformed ?? this.workPerformed,
|
|
supplierId: supplierId ?? this.supplierId,
|
|
suppPersonId: suppPersonId ?? this.suppPersonId,
|
|
suppStartDate: suppStartDate ?? this.suppStartDate,
|
|
suppEndDate: suppEndDate ?? this.suppEndDate,
|
|
suppWorkingHours: suppWorkingHours ?? this.suppWorkingHours,
|
|
taskStatusId: taskStatusId ?? this.taskStatusId,
|
|
engSignature: engSignature ?? this.engSignature,
|
|
nurseSignature: nurseSignature ?? this.nurseSignature,
|
|
safetyId: safetyId ?? this.safetyId,
|
|
assetAvailabilityId: assetAvailabilityId ?? this.assetAvailabilityId,
|
|
assetAvailabilityName: assetAvailabilityName ?? this.assetAvailabilityName,
|
|
assetName: assetName ?? this.assetName,
|
|
assetNumber: assetNumber ?? this.assetNumber,
|
|
assetSerialNo: assetSerialNo ?? this.assetSerialNo,
|
|
assetSupplierId: assetSupplierId ?? this.assetSupplierId,
|
|
assetSupplierName: assetSupplierName ?? this.assetSupplierName,
|
|
assignedEmployeeName: assignedEmployeeName ?? this.assignedEmployeeName,
|
|
assignedToName: assignedToName ?? this.assignedToName,
|
|
createdOn: createdOn ?? this.createdOn,
|
|
departmentId: departmentId ?? this.departmentId,
|
|
departmentName: departmentName ?? this.departmentName,
|
|
deviceStatusName: deviceStatusName ?? this.deviceStatusName,
|
|
dueDate: dueDate ?? this.dueDate,
|
|
executionTimeFrameName: executionTimeFrameName ?? this.executionTimeFrameName,
|
|
forwardToName: forwardToName ?? this.forwardToName,
|
|
manufacturerId: manufacturerId ?? this.manufacturerId,
|
|
manufacturerName: manufacturerName ?? this.manufacturerName,
|
|
modifiedOn: modifiedOn ?? this.modifiedOn,
|
|
notified: notified ?? this.notified,
|
|
planCode: planCode ?? this.planCode,
|
|
planNo: planNo ?? this.planNo,
|
|
ppmId: ppmId ?? this.ppmId,
|
|
ppmScheduleCode: ppmScheduleCode ?? this.ppmScheduleCode,
|
|
ppmScheduleNo: ppmScheduleNo ?? this.ppmScheduleNo,
|
|
ppmSupplierId: ppmSupplierId ?? this.ppmSupplierId,
|
|
ppmSupplierName: ppmSupplierName ?? this.ppmSupplierName,
|
|
safetyName: safetyName ?? this.safetyName,
|
|
siteId: siteId ?? this.siteId,
|
|
siteName: siteName ?? this.siteName,
|
|
buildingName: buildingName ?? this.buildingName,
|
|
floorName: floorName ?? this.floorName,
|
|
roomName: roomName ?? this.roomName,
|
|
supplierName: supplierName ?? this.supplierName,
|
|
suppPerson: suppPerson ?? this.suppPerson,
|
|
taskStatusName: taskStatusName ?? this.taskStatusName,
|
|
timePeriodName: timePeriodName ?? this.timePeriodName,
|
|
timePeriodValue: timePeriodValue ?? this.timePeriodValue,
|
|
typeOfServiceName: typeOfServiceName ?? this.typeOfServiceName,
|
|
visitCode: visitCode ?? this.visitCode,
|
|
visitNo: visitNo ?? this.visitNo,
|
|
visitStatusName: visitStatusName ?? this.visitStatusName,
|
|
warrantyEndDate: warrantyEndDate ?? this.warrantyEndDate,
|
|
);
|
|
|
|
ppm.tbsTimer = tbsTimer ?? this.tbsTimer;
|
|
return ppm;
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
final map = <String, dynamic>{};
|
|
map['id'] = id;
|
|
map['ppmScheduleId'] = ppmScheduleId;
|
|
map['assetId'] = assetId;
|
|
map['jobSheetNo'] = jobSheetNo;
|
|
map['assignedEmployeeId'] = assignedEmployeeId;
|
|
map['expectedDate'] = expectedDate;
|
|
map['actualDate'] = actualDate;
|
|
map['nextDate'] = nextDate;
|
|
map['forwardToId'] = forwardToId;
|
|
map['maintenanceContractId'] = maintenanceContractId;
|
|
map['typeOfServiceId'] = typeOfServiceId;
|
|
map['executionTimeFrameId'] = executionTimeFrameId;
|
|
map['externalEngineer'] = externalEngineer;
|
|
map['telephone'] = telephone;
|
|
map['groupLeaderReviewId'] = groupLeaderReviewId;
|
|
map['timePeriodId'] = timePeriodId;
|
|
map['assignedToId'] = assignedToId;
|
|
if (vCalibrationTools != null) {
|
|
map['vCalibrationTools'] = vCalibrationTools.map((v) => v.copyWith(visitId: id).toJson()).toList();
|
|
}
|
|
if (vKits != null) {
|
|
map['vKits'] = vKits.map((v) => v.copyWith(visitId: id).toJson()).toList();
|
|
}
|
|
if (vContacts != null) {
|
|
map['vContacts'] = vContacts.map((v) => v.toJson()).toList();
|
|
}
|
|
if (vChecklists != null) {
|
|
map['vChecklists'] = vChecklists.map((v) => v.toJson()).toList();
|
|
}
|
|
if (files?.isNotEmpty ?? false) {
|
|
map["vAttachments"] = files
|
|
.map((file) =>
|
|
{"attachmentName": _isLocalUrl(file.attachmentName) ? ("${file.attachmentName.split("/").last}|${base64Encode(File(file.attachmentName).readAsBytesSync())}") : file.attachmentName})
|
|
.toList();
|
|
}
|
|
map['visitStatusId'] = visitStatusId;
|
|
map['startDate'] = tbsTimer?.startAt?.toIso8601String();
|
|
map['endDate'] = tbsTimer?.endAt?.toIso8601String();
|
|
map['workingHours'] = ((tbsTimer?.durationInSecond ?? 0) / 60 / 60).toStringAsFixed(5);
|
|
map['travelingHours'] = travelingHours;
|
|
map['deviceStatusId'] = deviceStatusId;
|
|
map['comments'] = comments;
|
|
map['workPerformed'] = workPerformed;
|
|
map['supplierId'] = supplierId;
|
|
map['suppPersonId'] = suppPersonId;
|
|
map['suppStartDate'] = suppStartDate;
|
|
map['suppEndDate'] = suppEndDate;
|
|
map['suppWorkingHours'] = suppWorkingHours;
|
|
map['taskStatusId'] = taskStatusId;
|
|
map['engSignature'] = engSignature;
|
|
map['nurseSignature'] = nurseSignature;
|
|
map['safetyId'] = safetyId;
|
|
map['assetAvailabilityId'] = assetAvailabilityId;
|
|
map['assetAvailabilityName'] = assetAvailabilityName;
|
|
map['assetName'] = assetName;
|
|
map['assetNumber'] = assetNumber;
|
|
map['assetSerialNo'] = assetSerialNo;
|
|
map['assetSupplierId'] = assetSupplierId;
|
|
map['assetSupplierName'] = assetSupplierName;
|
|
map['assignedEmployeeName'] = assignedEmployeeName;
|
|
map['assignedToName'] = assignedToName;
|
|
map['createdOn'] = createdOn;
|
|
map['departmentId'] = departmentId;
|
|
map['departmentName'] = departmentName;
|
|
map['deviceStatusName'] = deviceStatusName;
|
|
map['dueDate'] = dueDate;
|
|
map['executionTimeFrameName'] = executionTimeFrameName;
|
|
map['forwardToName'] = forwardToName;
|
|
map['manufacturerId'] = manufacturerId;
|
|
map['manufacturerName'] = manufacturerName;
|
|
map['modifiedOn'] = modifiedOn;
|
|
map['notified'] = notified;
|
|
map['planCode'] = planCode;
|
|
map['planNo'] = planNo;
|
|
map['ppmId'] = ppmId;
|
|
map['ppmScheduleCode'] = ppmScheduleCode;
|
|
map['ppmScheduleNo'] = ppmScheduleNo;
|
|
map['ppmSupplierId'] = ppmSupplierId;
|
|
map['ppmSupplierName'] = ppmSupplierName;
|
|
map['safetyName'] = safetyName;
|
|
map['siteId'] = siteId;
|
|
map['siteName'] = siteName;
|
|
map['supplierName'] = supplierName;
|
|
map['suppPerson'] = suppPerson;
|
|
map['taskStatusName'] = taskStatusName;
|
|
map['timePeriodName'] = timePeriodName;
|
|
map['timePeriodValue'] = timePeriodValue;
|
|
map['typeOfServiceName'] = typeOfServiceName;
|
|
map['visitCode'] = visitCode;
|
|
map['visitNo'] = visitNo;
|
|
map['visitStatusName'] = visitStatusName;
|
|
map['warrantyEndDate'] = warrantyEndDate;
|
|
return map;
|
|
}
|
|
|
|
bool _isLocalUrl(String url) {
|
|
if (url?.isEmpty != false) return false;
|
|
return url.startsWith("/") || url.startsWith("file://") || url.substring(1).startsWith(':\\');
|
|
}
|
|
|
|
Future<bool> validate(BuildContext context) async {
|
|
if (deviceStatusId == null || visitStatusId == null) {
|
|
await Fluttertoast.showToast(msg: "${context.translation.youHaveToSelect} ${context.translation.status}");
|
|
return false;
|
|
}
|
|
if (actualDate == null) {
|
|
await Fluttertoast.showToast(msg: "${context.translation.youHaveToSelect} ${context.translation.actualDate}");
|
|
return false;
|
|
}
|
|
if (expectedDate == null) {
|
|
await Fluttertoast.showToast(msg: "${context.translation.youHaveToSelect} ${context.translation.visitDate}");
|
|
return false;
|
|
}
|
|
if (tbsTimer?.startAt == null) {
|
|
await Fluttertoast.showToast(msg: "Working Hours Required");
|
|
return false;
|
|
}
|
|
if (tbsTimer?.endAt == null) {
|
|
await Fluttertoast.showToast(msg: "Please Stop The Timer");
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
void removeEmptyObjects() {
|
|
if (vCalibrationTools?.isNotEmpty ?? false) vCalibrationTools.removeWhere((element) => element.assetId == null && element.calibrationDateOfTesters == null);
|
|
if (vKits?.isNotEmpty ?? false) vKits.removeWhere((element) => element.partName == null && element.partNumber == null);
|
|
}
|
|
}
|