|  |  |  | @ -5,6 +5,7 @@ import 'package:test_sa/extensions/int_extensions.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/extensions/string_extensions.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/extensions/text_extensions.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/extensions/widget_extensions.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/helper/utils.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/models/device/asset.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/models/lookup.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/models/new_models/traf_department.dart'; | 
		
	
	
		
			
				
					|  |  |  | @ -25,6 +26,7 @@ import 'package:test_sa/providers/lookups/yes_no_lookup_provider.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:test_sa/views/widgets/equipment/asset_picker.dart'; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | import 'traf_request_model.dart'; | 
		
	
		
			
				|  |  |  |  | import 'traf_request_provider.dart'; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | class CreateTRAFRequestPage extends StatefulWidget { | 
		
	
		
			
				|  |  |  |  |   static const String id = "/create-TRAF"; | 
		
	
	
		
			
				
					|  |  |  | @ -57,13 +59,13 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |   @override | 
		
	
		
			
				|  |  |  |  |   void initState() { | 
		
	
		
			
				|  |  |  |  |     super.initState(); | 
		
	
		
			
				|  |  |  |  |     trafRequest = TrafRequestDataModel(); | 
		
	
		
			
				|  |  |  |  |     trafRequest = TrafRequestDataModel(id: 0); | 
		
	
		
			
				|  |  |  |  |     resetProviders(); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |   void resetProviders() { | 
		
	
		
			
				|  |  |  |  |     Provider.of<RequestTypeLookupProvider>(context, listen: false).reset(); | 
		
	
		
			
				|  |  |  |  |     // Provider.of<YesNoLookupProvider>(context, listen: false).reset(); | 
		
	
		
			
				|  |  |  |  |     Provider.of<YesNoLookupProvider>(context, listen: false).reset(); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |   @override | 
		
	
	
		
			
				
					|  |  |  | @ -102,7 +104,13 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                     initialValue: requestType, | 
		
	
		
			
				|  |  |  |  |                     onSelect: (value) { | 
		
	
		
			
				|  |  |  |  |                       requestType = value; | 
		
	
		
			
				|  |  |  |  |                       trafRequest?.requestTypeId = value?.value; | 
		
	
		
			
				|  |  |  |  |                       trafRequest?.requestTypeId = value?.id; | 
		
	
		
			
				|  |  |  |  |                       if (requestType?.value == 1) { | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.assetId = null; | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.qty = null; | 
		
	
		
			
				|  |  |  |  |                       } else if (requestType?.value == 2) { | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.assetNDId = null; | 
		
	
		
			
				|  |  |  |  |                       } | 
		
	
		
			
				|  |  |  |  |                       setState(() {}); | 
		
	
		
			
				|  |  |  |  |                     }, | 
		
	
		
			
				|  |  |  |  |                   ), | 
		
	
	
		
			
				
					|  |  |  | @ -112,7 +120,8 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                       clearAfterPick: false, | 
		
	
		
			
				|  |  |  |  |                       byName: true, | 
		
	
		
			
				|  |  |  |  |                       initialValue: "", | 
		
	
		
			
				|  |  |  |  |                       onPick: (part) { | 
		
	
		
			
				|  |  |  |  |                       onPick: (asset) { | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.assetNDId = asset.id; | 
		
	
		
			
				|  |  |  |  |                         // model.partCatalogItem = PartCatalogItem(id: part.sparePart?.id, partNumber: part.sparePart?.partNo, partName: part.sparePart?.partName, oracleCode: part.sparePart?.oracleCode); | 
		
	
		
			
				|  |  |  |  |                         // setState(() {}); | 
		
	
		
			
				|  |  |  |  |                       }, | 
		
	
	
		
			
				
					|  |  |  | @ -128,6 +137,8 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                       backgroundColor: AppColor.white936, | 
		
	
		
			
				|  |  |  |  |                       onPick: (asset) async { | 
		
	
		
			
				|  |  |  |  |                         this.asset = asset; | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.assetId = asset.id?.toInt(); | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.qty = 1; | 
		
	
		
			
				|  |  |  |  |                         setState(() {}); | 
		
	
		
			
				|  |  |  |  |                         // pendingAssetServiceRequest = null; | 
		
	
		
			
				|  |  |  |  |                         // _serviceRequest.device = asset; | 
		
	
	
		
			
				
					|  |  |  | @ -248,6 +259,7 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                       trafRequest?.usingSolelyOrSharedId = value?.value; | 
		
	
		
			
				|  |  |  |  |                       if (isUsedSolelyOrShared?.value != 1) { | 
		
	
		
			
				|  |  |  |  |                         departments = []; | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.departments = []; | 
		
	
		
			
				|  |  |  |  |                         Provider.of<DepartmentLookupProvider>(context, listen: false).reset(); | 
		
	
		
			
				|  |  |  |  |                       } | 
		
	
		
			
				|  |  |  |  |                       setState(() {}); | 
		
	
	
		
			
				
					|  |  |  | @ -266,9 +278,14 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                       initialValue: departments, | 
		
	
		
			
				|  |  |  |  |                       onSelect: (value) { | 
		
	
		
			
				|  |  |  |  |                         departments = value ?? []; | 
		
	
		
			
				|  |  |  |  |                         // setState(() { | 
		
	
		
			
				|  |  |  |  |                         // | 
		
	
		
			
				|  |  |  |  |                         // }); | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.departments = departments | 
		
	
		
			
				|  |  |  |  |                             .map((element) => Departments( | 
		
	
		
			
				|  |  |  |  |                                   id: element.id!.toInt(), | 
		
	
		
			
				|  |  |  |  |                                   trafId: element.id!.toInt(), | 
		
	
		
			
				|  |  |  |  |                                   departmentId: element.id!.toInt(), | 
		
	
		
			
				|  |  |  |  |                                 )) | 
		
	
		
			
				|  |  |  |  |                             .toList(); | 
		
	
		
			
				|  |  |  |  |                         // setState(() {}); | 
		
	
		
			
				|  |  |  |  |                       }, | 
		
	
		
			
				|  |  |  |  |                     ), | 
		
	
		
			
				|  |  |  |  |                   ], | 
		
	
	
		
			
				
					|  |  |  | @ -284,6 +301,10 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                     onSelect: (value) { | 
		
	
		
			
				|  |  |  |  |                       otherServicesEffects = value; | 
		
	
		
			
				|  |  |  |  |                       trafRequest?.isEffectedId = value?.value; | 
		
	
		
			
				|  |  |  |  |                       if (otherServicesEffects?.value != 1) { | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.effectedServices = null; | 
		
	
		
			
				|  |  |  |  |                       } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |                       setState(() {}); | 
		
	
		
			
				|  |  |  |  |                     }, | 
		
	
		
			
				|  |  |  |  |                   ), | 
		
	
	
		
			
				
					|  |  |  | @ -315,6 +336,9 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                     onSelect: (value) { | 
		
	
		
			
				|  |  |  |  |                       useInCombination = value; | 
		
	
		
			
				|  |  |  |  |                       trafRequest?.isCombinationId = value?.value; | 
		
	
		
			
				|  |  |  |  |                       if (useInCombination?.value != 1) { | 
		
	
		
			
				|  |  |  |  |                         trafRequest?.usedWithCombination = null; | 
		
	
		
			
				|  |  |  |  |                       } | 
		
	
		
			
				|  |  |  |  |                       setState(() {}); | 
		
	
		
			
				|  |  |  |  |                     }, | 
		
	
		
			
				|  |  |  |  |                   ), | 
		
	
	
		
			
				
					|  |  |  | @ -333,19 +357,6 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |                       }, | 
		
	
		
			
				|  |  |  |  |                     ), | 
		
	
		
			
				|  |  |  |  |                   ] | 
		
	
		
			
				|  |  |  |  |                   // 23.height, | 
		
	
		
			
				|  |  |  |  |                   // AttachmentPicker( | 
		
	
		
			
				|  |  |  |  |                   //   label: context.translation.attachImage, | 
		
	
		
			
				|  |  |  |  |                   //   attachment: attachments, | 
		
	
		
			
				|  |  |  |  |                   //   buttonColor: AppColor.black10, | 
		
	
		
			
				|  |  |  |  |                   //   onlyImages: false, | 
		
	
		
			
				|  |  |  |  |                   //   buttonIcon: 'image-plus'.toSvgAsset(color: context.isDark ? AppColor.primary10 : AppColor.neutral120), | 
		
	
		
			
				|  |  |  |  |                   //   //verify this if not required delete this .. | 
		
	
		
			
				|  |  |  |  |                   //   onChange: (attachments) { | 
		
	
		
			
				|  |  |  |  |                   //     attachments = attachments; | 
		
	
		
			
				|  |  |  |  |                   //     setState(() {}); | 
		
	
		
			
				|  |  |  |  |                   //   }, | 
		
	
		
			
				|  |  |  |  |                   // ), | 
		
	
		
			
				|  |  |  |  |                 ], | 
		
	
		
			
				|  |  |  |  |               ).toShadowContainer(context, padding: 12, borderRadius: 20), | 
		
	
		
			
				|  |  |  |  |               16.height, | 
		
	
	
		
			
				
					|  |  |  | @ -371,7 +382,8 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |               child: AppFilledButton( | 
		
	
		
			
				|  |  |  |  |                 buttonColor: AppColor.primary10, | 
		
	
		
			
				|  |  |  |  |                 label: context.translation.submitRequest, | 
		
	
		
			
				|  |  |  |  |                 onPressed: _acknowledgement ? _submit : null, | 
		
	
		
			
				|  |  |  |  |                 disableButton: !_acknowledgement, | 
		
	
		
			
				|  |  |  |  |                 onPressed: _verifyAndSubmit, | 
		
	
		
			
				|  |  |  |  |                 // buttonColor: AppColor.primary10, | 
		
	
		
			
				|  |  |  |  |               ), | 
		
	
		
			
				|  |  |  |  |             ), | 
		
	
	
		
			
				
					|  |  |  | @ -381,7 +393,12 @@ class _CreateTRAFRequestPageState extends State<CreateTRAFRequestPage> { | 
		
	
		
			
				|  |  |  |  |     ); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |   void _submit() { | 
		
	
		
			
				|  |  |  |  |   void _verifyAndSubmit() async { | 
		
	
		
			
				|  |  |  |  |     trafRequest?.employeeId = context.userProvider.user?.userID; | 
		
	
		
			
				|  |  |  |  |     trafRequest?.siteId = context.userProvider.user?.clientId; | 
		
	
		
			
				|  |  |  |  |     // Utils.showLoading(context); | 
		
	
		
			
				|  |  |  |  |     // await Provider.of<TrafRequestProvider>(context, listen: false).addTraf(trafRequest!.toJson()); | 
		
	
		
			
				|  |  |  |  |     // Utils.hideLoading(context); | 
		
	
		
			
				|  |  |  |  |     Navigator.push(context, MaterialPageRoute(builder: (context) => TrafRequestDetailPage(trafId: 27))); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | } | 
		
	
	
		
			
				
					|  |  |  | 
 |