Merge remote-tracking branch 'origin/design_3.0_TM_Module_bug_fixes' into design_3.0_TM_Module_bug_fixes

design_3.0_task_module_new
WaseemAbbasi22 6 months ago
commit c1c595b135

@ -1,5 +1,6 @@
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/string_extensions.dart';
@ -50,12 +51,7 @@ class AssetDetailCard extends StatelessWidget {
if (!requestDetailProvider.isReadOnlyRequest)
"edit_icon".toSvgAsset(height: 21, width: 21).onPress(() async {
requestDetailProvider.refreshTimer = false;
await Navigator.push(
context,
MaterialPageRoute(
builder: (context) => VerifyAssetDetails(
isEdit: true,
)));
await Navigator.push(context, MaterialPageRoute(builder: (context) => VerifyAssetDetails(isEdit: true)));
requestDetailProvider.refreshTimer = true;
}),
]),
@ -84,6 +80,16 @@ class AssetDetailCard extends StatelessWidget {
'${context.translation.solutions}: ${requestDetailProvider.engineerUpdateWorkOrderHelperModel?.solution ?? '-'}',
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120),
),
if (Provider.of<SettingProvider>(context, listen: false).isUserFMS) ...[
Text(
'Description of Finding: ${requestDetailProvider.engineerUpdateWorkOrderHelperModel?.descriptionOfFinding ?? '-'}',
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120),
),
Text(
'Action Taken: ${requestDetailProvider.engineerUpdateWorkOrderHelperModel?.actionTaken ?? '-'}',
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120),
),
]
],
),
);

@ -487,6 +487,8 @@ class _ServiceRequestDetailViewState extends State<ServiceRequestDetailView> {
solution: currentWorkOrderData.faultDescription?.workPerformed,
returnToService: currentWorkOrderData.returnToService,
serviceType: currentWorkOrderData.serviceType,
descriptionOfFinding: currentWorkOrderData.descriptionOfFinding,
actionTaken: currentWorkOrderData.actionTaken,
);
return const AssetDetailCard();
} else {

@ -2,6 +2,7 @@ import 'dart:async';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart';
@ -27,7 +28,6 @@ import 'package:test_sa/views/widgets/equipment/pick_asset.dart';
import '../../../../../../models/lookup.dart';
import '../../../../../../new_views/common_widgets/default_app_bar.dart';
//TODO Have some details need to confirm from backend fault description,
class VerifyAssetDetails extends StatefulWidget {
static const String id = "/verify-asset-detail";
bool isEdit = false;
@ -76,6 +76,8 @@ class _VerifyAssetDetailsState extends State<VerifyAssetDetails> with TickerProv
returnToService: currentWorkOrderData.returnToService,
serviceType: currentWorkOrderData.serviceType,
callResponse: currentWorkOrderData.callResponse,
descriptionOfFinding: currentWorkOrderData.descriptionOfFinding,
actionTaken: currentWorkOrderData.actionTaken,
);
if (currentWorkOrderData.assetLoan != null) {
loanAvailabilityAsset = Asset(
@ -221,7 +223,7 @@ class _VerifyAssetDetailsState extends State<VerifyAssetDetails> with TickerProv
context.translation.solutions.heading6(context).custom(color: AppColor.neutral50),
8.height,
requestDetailProvider.engineerUpdateWorkOrderHelperModel?.solution != null
? requestDetailProvider.engineerUpdateWorkOrderHelperModel!.solution!.bodyText2(context).custom(color: AppColor.neutral120,align: TextAlign.justify)
? requestDetailProvider.engineerUpdateWorkOrderHelperModel!.solution!.bodyText2(context).custom(color: AppColor.neutral120, align: TextAlign.justify)
: const SizedBox(),
],
8.height,
@ -232,11 +234,39 @@ class _VerifyAssetDetailsState extends State<VerifyAssetDetails> with TickerProv
textAlign: TextAlign.center,
labelStyle: AppTextStyles.textFieldLabelStyle,
showShadow: false,
onChange: (value){
onChange: (value) {
requestDetailProvider.engineerUpdateWorkOrderHelperModel?.callResponse = value;
},
style: Theme.of(context).textTheme.titleMedium,
),
if (Provider.of<SettingProvider>(context, listen: false).isUserFMS) ...[
8.height,
AppTextFormField(
labelText: "Description of Finding",
backgroundColor: AppColor.neutral100,
initialValue: requestDetailProvider.engineerUpdateWorkOrderHelperModel?.descriptionOfFinding,
textAlign: TextAlign.center,
labelStyle: AppTextStyles.textFieldLabelStyle,
showShadow: false,
onChange: (value) {
requestDetailProvider.engineerUpdateWorkOrderHelperModel?.descriptionOfFinding = value;
},
style: Theme.of(context).textTheme.titleMedium,
),
8.height,
AppTextFormField(
labelText: "Action Taken",
backgroundColor: AppColor.neutral100,
initialValue: requestDetailProvider.engineerUpdateWorkOrderHelperModel?.actionTaken,
textAlign: TextAlign.center,
labelStyle: AppTextStyles.textFieldLabelStyle,
showShadow: false,
onChange: (value) {
requestDetailProvider.engineerUpdateWorkOrderHelperModel?.actionTaken = value;
},
style: Theme.of(context).textTheme.titleMedium,
),
]
],
).toShadowContainer(context).paddingAll(16),
).expanded,

@ -82,6 +82,8 @@ class EngineerUpdateWorkOrderHelperModel {
FaultDescription? faultDescription;
String? solution;
String? callResponse;
String? descriptionOfFinding;
String? actionTaken;
EngineerUpdateWorkOrderHelperModel({
this.workOrderId,
@ -95,6 +97,8 @@ class EngineerUpdateWorkOrderHelperModel {
this.solution,
this.returnToService,
this.callResponse,
this.descriptionOfFinding,
this.actionTaken,
});
Map<String, dynamic> toJson() {
@ -107,6 +111,8 @@ class EngineerUpdateWorkOrderHelperModel {
data['failureReasonId'] = failureReason?.id;
data['faultDescriptionId'] = faultDescription?.id;
data['callResponse'] = callResponse;
data['descriptionOfFinding'] = descriptionOfFinding;
data['actionTaken'] = actionTaken;
return data;
}
}

@ -91,6 +91,8 @@ class WorkOrderData {
this.cmFrame,
this.rejectComment,
this.callResponse,
this.descriptionOfFinding,
this.actionTaken,
required this.workOrderHistory,
required this.activities,
required this.activityAssetToBeRetireds,
@ -143,8 +145,10 @@ class WorkOrderData {
String? iHaveArrivedDate;
String? closedDate;
Lookup? rejectReason;
String? rejectComment; // need to replace with reject comments.
String? callResponse; // need to replace with reject comments.
String? rejectComment;
String? callResponse;
String? descriptionOfFinding;
String? actionTaken;
int? since;
List<WorkOrderHistory> workOrderHistory;
List<Activities> activities;
@ -168,6 +172,8 @@ class WorkOrderData {
room: json["room"],
rejectComment: json["rejectComment"],
callResponse: json["callResponse"],
descriptionOfFinding: json["descriptionOfFinding"],
actionTaken: json["actionTaken"],
iHaveArrivedDate: json["iHaveArrivedDate"],
closedDate: json["closedDate"],
cmFrame: json["cmFrame"] == null ? null : Lookup.fromJson(json["cmFrame"]),
@ -529,7 +535,7 @@ class WorkOrderContactPerson {
String? position;
String? extension;
String? email;
String ?mobilePhone;
String? mobilePhone;
WorkOrderAssignedEmployee? contactUser;
factory WorkOrderContactPerson.fromJson(Map<String, dynamic> json) {
@ -662,7 +668,7 @@ class ActivityMaintenance {
this.supplierEngineer,
this.supplierStartTime,
this.supplierEndTime,
this.activityType,
this.activityType,
this.supplierWorkingHours,
this.assistantEmployees});

@ -108,6 +108,7 @@ class _TaskRequestDetailsViewState extends State<TaskRequestDetailsView> {
),
'${context.translation.taskType}: ${taskModel?.taskType?.typeName ?? "-"}'.bodyText(context),
'${context.translation.taskNo}: ${taskModel?.taskJobNo ?? "-"}'.bodyText(context),
'${context.translation.createdBy}: ${taskModel?.userCreated?.userName ?? "-"}'.bodyText(context),
if (taskProvider.taskRequestModel?.taskType?.isRecallAndAlert == true) ...[
recallAlertTypeWidget(taskModel: taskProvider.taskRequestModel!),
Column(
@ -132,6 +133,10 @@ class _TaskRequestDetailsViewState extends State<TaskRequestDetailsView> {
if (taskProvider.taskRequestModel?.taskJobAttachments?.isNotEmpty ?? false) ...[
8.height,
const Divider().defaultStyle(context),
Text(
"Attachments".addTranslation,
style: AppTextStyles.heading4.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral50),
),
FilesList(images: taskProvider.taskRequestModel!.taskJobAttachments!.map((toElement) => URLs.getFileUrl(toElement.name ?? '') ?? '').toList()),
],
buildTechnicalComments(taskModel: taskModel),

Loading…
Cancel
Save