From f9f1728abf523053cef0a757e3166a84c9f8c580 Mon Sep 17 00:00:00 2001 From: WaseemAbbasi22 <50428976+WaseemAbbasi22@users.noreply.github.com> Date: Thu, 22 Oct 2026 14:45:17 +0300 Subject: [PATCH] document type improvements --- lib/models/generic_attachment_model.dart | 14 +++++++++----- .../ppm_wo/activities/pm_activities_list_view.dart | 11 ++++++++++- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/lib/models/generic_attachment_model.dart b/lib/models/generic_attachment_model.dart index 981db927..1418d4c4 100644 --- a/lib/models/generic_attachment_model.dart +++ b/lib/models/generic_attachment_model.dart @@ -26,9 +26,9 @@ class GenericAttachmentModel { int? id; String? name; - String ? module; - String ? subModule; - String ? uploadedBy; + String? module; + String? subModule; + String? uploadedBy; String? createdBy; String? originalName; Lookup? documentType; @@ -163,6 +163,7 @@ class GenericAttachmentModel { documentType = json['documentType'] != null ? Lookup.fromJson(json['documentType']) : null; originalName = json['originalName']; } + GenericAttachmentModel.fromAssetInventoryJson(Map json) { id = json['id']; name = json['attachmentName']; @@ -173,7 +174,7 @@ class GenericAttachmentModel { GenericAttachmentModel.fromTrafJson(Map json) { id = json['id']; - moduleReferenceId= json['trafId']; + moduleReferenceId = json['trafId']; name = json['attachmentName']; attachmentDescription = json['attachmentDescription']; moduleReferenceId = json['trafId']; @@ -189,6 +190,7 @@ class GenericAttachmentModel { data['documentTypeId'] = documentType?.id; return data; } + Map toSparePartJson() { final Map data = {}; data['id'] = id; @@ -239,7 +241,6 @@ class GenericAttachmentModel { return data; } - Map toGasRefillJson() { final Map data = {}; data['id'] = id; @@ -305,6 +306,7 @@ class GenericAttachmentModel { data['originalName'] = originalName; return data; } + Map toAssetDeliveryJson() { final Map data = {}; data['id'] = id; @@ -314,6 +316,7 @@ class GenericAttachmentModel { data['createdBy'] = createdBy; return data; } + Map toInventoryJson() { final Map data = {}; data['id'] = id; @@ -342,6 +345,7 @@ class GenericAttachmentModel { data['attachmentURL'] = attachmentURL; return data; } + Map toTaskJson() { final Map data = {}; data['id'] = id; diff --git a/lib/modules/pm_module/ppm_wo/activities/pm_activities_list_view.dart b/lib/modules/pm_module/ppm_wo/activities/pm_activities_list_view.dart index a4e2b18c..a8c13b19 100644 --- a/lib/modules/pm_module/ppm_wo/activities/pm_activities_list_view.dart +++ b/lib/modules/pm_module/ppm_wo/activities/pm_activities_list_view.dart @@ -1,3 +1,5 @@ +import 'dart:developer'; + import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:test_sa/controllers/api_routes/urls.dart'; @@ -8,6 +10,7 @@ import 'package:test_sa/extensions/int_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/models/enums/user_types.dart'; +import 'package:test_sa/models/generic_attachment_model.dart'; import 'package:test_sa/models/helper_data_models/spare_part/activity_spare_part_model.dart'; import 'package:test_sa/models/plan_preventive_visit/plan_preventive_visit_model.dart'; import 'package:test_sa/models/service_request/spare_parts.dart'; @@ -185,7 +188,13 @@ class _PmActivitiesListViewState extends State { ], if (activity.activitySparePartPPMAttachments.isNotEmpty) ...[ const Divider().defaultStyle(context), - FilesList(images: activity.activitySparePartPPMAttachments.map((toElement) => URLs.getFileUrl(toElement.name ?? '') ?? '').toList(), showAsListView: true), + FilesList( + types: activity.activitySparePartPPMAttachments! + .whereType() + .where((e) => e.documentType != null && e.documentType!.name!.isNotEmpty) + .map((toElement) => toElement.documentType!.name!) + .toList(), + images: activity.activitySparePartPPMAttachments.map((toElement) => URLs.getFileUrl(toElement.name ?? '') ?? '').toList(), showAsListView: true), ], ], ).toShadowContainer(context, showShadow: false).onPress(() {