From f991456d17677af0a8acd043251f39dda242729a Mon Sep 17 00:00:00 2001 From: WaseemAbbasi22 Date: Thu, 25 Sep 2025 09:30:51 +0300 Subject: [PATCH] Recall and Alert Fixes --- .../task_request/task_request_model.dart | 44 ++++++++++++------- .../tasks_wo/update_task_request_view.dart | 4 +- 2 files changed, 31 insertions(+), 17 deletions(-) diff --git a/lib/models/new_models/task_request/task_request_model.dart b/lib/models/new_models/task_request/task_request_model.dart index 293f0560..c3c4419e 100644 --- a/lib/models/new_models/task_request/task_request_model.dart +++ b/lib/models/new_models/task_request/task_request_model.dart @@ -195,7 +195,6 @@ class TaskData { reasonOfFSCA = json['reasonOfFSCA']; correctiveActionDescription = json['correctiveActionDescription']; evaluatorUser = json['evaluatorUser'] != null ? TaskContactUser.fromJson(json['evaluatorUser']) : null; - site = json["site"] == null ? null : Site.fromJson(json["site"]); building = json["building"] == null ? null : Building.fromJson(json["building"]); floor = json["floor"] == null ? null : Floor.fromJson(json["floor"]); @@ -227,13 +226,17 @@ class TaskData { } data['asset'] = asset?.toJson(); - data['site'] = site; - data['building'] = building; - data['floor'] = floor; - data['department'] = department; - data['room'] = room; + data['site'] = site?.toJson(); + data['building'] = building?.toJson(); + data['floor'] = floor?.toJson(); + data['department'] = department?.toJson(); + data['room'] = room?.toJson(); data['callComment'] = callComment; + if (taskJobAttachments != null) { + data['taskJobAttachments'] = taskJobAttachments!.map((e) => e.toJson()).toList(); + } + if (assignedEngineer != null) { data['assignedEngineer'] = assignedEngineer!.toJson(); } @@ -241,40 +244,52 @@ class TaskData { if (taskJobAssistantEmployees != null) { data['taskJobAssistantEmployees'] = taskJobAssistantEmployees!.map((v) => v.toJson()).toList(); } + if (taskJobHistories != null) { data['taskJobHistories'] = taskJobHistories!.map((e) => e.toJson()).toList(); } + if (installationBuilding != null) { data['installationBuilding'] = installationBuilding!.toJson(); } + if (installationFloor != null) { data['installationFloor'] = installationFloor!.toJson(); } + if (installationDepartment != null) { data['installationDepartment'] = installationDepartment!.toJson(); } + + data['serialNo'] = serialNo; + data['installationDate'] = installationDate; + if (completedAction != null) { data['completedAction'] = completedAction!.toJson(); } + if (impactStatus != null) { data['impactStatus'] = impactStatus!.toJson(); } + + data['isUserAcknowledge'] = isUserAcknowledge; + if (typeOfAlert != null) { data['typeOfAlert'] = typeOfAlert!.toJson(); } + if (riskLevel != null) { data['riskLevel'] = riskLevel!.toJson(); } + if (resource != null) { data['resource'] = resource!.toJson(); } + if (actionNeeded != null) { data['actionNeeded'] = actionNeeded!.toJson(); } - data['serialNo'] = serialNo; - data['installationDate'] = installationDate; - data['isUserAcknowledge'] = isUserAcknowledge; data['alertNo'] = alertNo; data['estimationDeliveryDate'] = estimationDeliveryDate; data['reasonOfFSCA'] = reasonOfFSCA; @@ -283,17 +298,14 @@ class TaskData { if (evaluatorUser != null) { data['evaluatorUser'] = evaluatorUser!.toJson(); } + if (taskJobActivityEngineerTimers != null) { data['taskJobActivityEngineerTimers'] = taskJobActivityEngineerTimers!.map((e) => e.toJson()).toList(); } - if (taskJobAttachments != null) { - data['taskJobAttachments'] = taskJobAttachments?.map((e) => e.toJson()).toList(); - } return data; } - // Map toJson() { // final Map data = {}; // @@ -376,7 +388,6 @@ class TaskData { } else { data['taskJobAssistantEmployees'] = []; } - if (taskJobActivityEngineerTimers != null) { data['taskJobActivityEngineerTimers'] = taskJobActivityEngineerTimers!.map((v) => v.toJson()).toList(); } @@ -388,7 +399,10 @@ class TaskData { data['installationDepartmentId'] = department?.id; data['serialNo'] = serialNo; data['installationDate'] = installationDate; - data['completedActionId'] = actionNeeded?.id; + //this is not for recall and alert type.. + if(taskType?.id!=7){ + data['completedActionId'] = actionNeeded?.id; + } data['impactStatusId'] = impactStatus?.id; data['isUserAcknowledge'] = isUserAcknowledge; return data; diff --git a/lib/modules/tm_module/tasks_wo/update_task_request_view.dart b/lib/modules/tm_module/tasks_wo/update_task_request_view.dart index dc2c3bc9..720f896f 100644 --- a/lib/modules/tm_module/tasks_wo/update_task_request_view.dart +++ b/lib/modules/tm_module/tasks_wo/update_task_request_view.dart @@ -228,8 +228,8 @@ class _UpdateTaskRequestState extends State { taskModel.taskJobActivityEngineerTimers?.add( TaskJobActivityEngineerTimer( id: 0, - startDate: taskModel.taskTimePicker!.startAt!.toIso8601String(), // Handle potential null - endDate: taskModel.taskTimePicker!.endAt?.toIso8601String(), // Handle potential null + startDate: taskModel.taskTimePicker!.startAt!.toIso8601String(), + endDate: taskModel.taskTimePicker!.endAt?.toIso8601String(), totalWorkingHour: ((durationInSecond) / 60 / 60), ), );