From b17d6db327fb0dc2af359baead543b78e4438a91 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Tue, 14 Oct 2025 16:13:09 +0300 Subject: [PATCH] po number, site, information added in asset details, --- .../providers/api/all_requests_provider.dart | 21 +++++++++- .../task_request/task_request_model.dart | 40 ++++++++++--------- .../tasks_wo/task_request_detail_view.dart | 11 ++++- .../my_request/all_requests_filter_page.dart | 2 +- .../my_request/my_requests_page.dart | 2 +- 5 files changed, 54 insertions(+), 22 deletions(-) diff --git a/lib/controllers/providers/api/all_requests_provider.dart b/lib/controllers/providers/api/all_requests_provider.dart index 54fd7776..dd627f64 100644 --- a/lib/controllers/providers/api/all_requests_provider.dart +++ b/lib/controllers/providers/api/all_requests_provider.dart @@ -4,6 +4,7 @@ import 'package:flutter/widgets.dart'; import 'package:http/http.dart'; import 'package:test_sa/controllers/api_routes/api_manager.dart'; import 'package:test_sa/controllers/api_routes/urls.dart'; +import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/models/all_requests_and_count_model.dart'; import 'package:test_sa/models/enums/user_types.dart'; import 'package:test_sa/models/ppm/recurrent_wo.dart'; @@ -130,6 +131,24 @@ class AllRequestsProvider extends ChangeNotifier { SearchAllRequestsModel? searchedModel; + List getStatues(BuildContext context) { + List list = [1, 2, 3, 4]; + + if (context.userProvider.user!.type != UsersTypes.normal_user) { + list.add(5); + } + list.add(6); // task module + + if (context.settingProvider.isUserFlowMedical && context.userProvider.user!.type != UsersTypes.normal_user) { + list.add(7); // task mod + } + // if (context.userProvider.user!.type != UsersTypes.normal_user) { + // list.add(8); // + // } + + return list; + } + Future getAllRequests(BuildContext context, {int? typeTransaction, SearchAllRequestsModel? search}) async { if (isAllLoading == true) return -2; isAllLoading = true; @@ -143,7 +162,7 @@ class AllRequestsProvider extends ChangeNotifier { } final type = typeTransaction == null ? search?.typeTransaction == null || (search?.typeTransaction?.isEmpty ?? false) - ? [1, 2, 3, 4, 5, 6,7] + ? getStatues(context) : search!.typeTransaction : [typeTransaction]; List status = (search?.statuses == null || (search?.statuses?.isEmpty ?? false)) ? (((search?.isArchived ?? false) ? [3] : [1, 2, 4])) : search!.statuses!; 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 3dc5e315..d1b6dc1a 100644 --- a/lib/models/new_models/task_request/task_request_model.dart +++ b/lib/models/new_models/task_request/task_request_model.dart @@ -928,6 +928,8 @@ class TaskAsset { String? roomName; String? supplierName; String? assetTypeName; + String? poNumber; + String? installationDate; TaskAsset(); @@ -946,24 +948,26 @@ class TaskAsset { roomName = json['roomName']; supplierName = json['supplierName']; assetTypeName = json['assetTypeName']; + poNumber = json['poNumber']; + installationDate = json['installationDate']; } - Map toJson() { - return { - 'id': id, - 'assetNumber': assetNumber, - 'serialNo': serialNo, - 'assetName': assetName, - 'model': model, - 'manufacturer': manufacturer, - 'siteName': siteName, - 'siteId': siteId, - 'buildingName': buildingName, - 'floorName': floorName, - 'departmentName': departmentName, - 'roomName': roomName, - 'supplierName': supplierName, - 'assetTypeName': assetTypeName, - }; - } + Map toJson() => { + 'id': id, + 'assetNumber': assetNumber, + 'serialNo': serialNo, + 'assetName': assetName, + 'model': model, + 'manufacturer': manufacturer, + 'siteName': siteName, + 'siteId': siteId, + 'buildingName': buildingName, + 'floorName': floorName, + 'departmentName': departmentName, + 'roomName': roomName, + 'supplierName': supplierName, + 'assetTypeName': assetTypeName, + 'poNumber': poNumber, + 'installationDate': installationDate, + }; } diff --git a/lib/modules/tm_module/tasks_wo/task_request_detail_view.dart b/lib/modules/tm_module/tasks_wo/task_request_detail_view.dart index 5e9ff9d6..e7a266be 100644 --- a/lib/modules/tm_module/tasks_wo/task_request_detail_view.dart +++ b/lib/modules/tm_module/tasks_wo/task_request_detail_view.dart @@ -61,7 +61,6 @@ class _TaskRequestDetailsViewState extends State { Widget build(BuildContext context) { userProvider ??= Provider.of(context, listen: false); return Scaffold( - // appBar: DefaultAppBar(title:taskProvider?.taskRequestModel?.taskType?.id==7?'Recall and Alert Details': context.translation.taskRequest), appBar: DefaultAppBar(title: context.translation.taskRequest), body: Consumer(builder: (context, taskProvider, child) { TaskData? taskModel = taskProvider.taskRequestModel; @@ -270,6 +269,16 @@ class _TaskRequestDetailsViewState extends State { '${context.translation.assetNo}: ${taskModel.asset?.assetNumber ?? "-"}'.bodyText(context), '${context.translation.manufacture}: ${taskModel.asset?.manufacturer ?? "-"}'.bodyText(context), '${context.translation.model}: ${taskModel.asset?.model ?? "-"}'.bodyText(context), + '${context.translation.serialNo}: ${taskModel.asset?.serialNo ?? "-"}'.bodyText(context), + '${context.translation.assetType}: ${taskModel.asset?.assetTypeName ?? "-"}'.bodyText(context), + '${context.translation.site}: ${taskModel.asset?.siteName ?? "-"}'.bodyText(context), + '${context.translation.building}: ${taskModel.asset?.buildingName ?? "-"}'.bodyText(context), + '${context.translation.floor}: ${taskModel.asset?.floorName ?? "-"}'.bodyText(context), + '${context.translation.department}: ${taskModel.asset?.departmentName ?? "-"}'.bodyText(context), + '${context.translation.room}: ${taskModel.asset?.roomName ?? "-"}'.bodyText(context), + '${context.translation.supplier}: ${taskModel.asset?.supplierName ?? "-"}'.bodyText(context), + 'PO Number: ${taskModel.asset?.poNumber ?? "-"}'.bodyText(context), + '${context.translation.installationDate}: ${taskModel.asset?.installationDate?.toAssetDetailsFormat ?? "-"}'.bodyText(context), ], ) : const SizedBox(); diff --git a/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart b/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart index 5a5231b8..4a5306e2 100644 --- a/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart +++ b/lib/new_views/pages/land_page/my_request/all_requests_filter_page.dart @@ -72,7 +72,7 @@ class _AllRequestsFilterPageState extends State { types[context.translation.recurrentWo] = 5; } - if (context.settingProvider.isUserFlowMedical) { + if (context.settingProvider.isUserFlowMedical && isEngineer) { types['Recall and Alert'] = 7; } final statuses = { diff --git a/lib/new_views/pages/land_page/my_request/my_requests_page.dart b/lib/new_views/pages/land_page/my_request/my_requests_page.dart index 23f1c89a..06ce2532 100644 --- a/lib/new_views/pages/land_page/my_request/my_requests_page.dart +++ b/lib/new_views/pages/land_page/my_request/my_requests_page.dart @@ -47,7 +47,7 @@ class _MyRequestsPageState extends State { //TODO unCommit this to enable task requestsList.add(Request(6, context.translation.taskRequest)); //after confirm name add this to translation... - if (context.settingProvider.isUserFlowMedical) { + if (context.settingProvider.isUserFlowMedical && Provider.of(context, listen: false).user!.type != UsersTypes.normal_user) { requestsList.add(Request(7, 'Recall and Alert')); }