diff --git a/lib/views/pages/sub_workorder/create_sub_workorder_page.dart b/lib/views/pages/sub_workorder/create_sub_workorder_page.dart index c2515011..770dea9f 100644 --- a/lib/views/pages/sub_workorder/create_sub_workorder_page.dart +++ b/lib/views/pages/sub_workorder/create_sub_workorder_page.dart @@ -92,7 +92,7 @@ class _CreateSubWorkOrderPageState extends State { final serviceRequestProvider = Provider.of(context); Provider.of(context, listen: false).reset(); assetTypesProvider = Provider.of(context, listen: false); - _callRequestForWorkOrder = await serviceRequestProvider.getCallRequestForWorkOrder(callId: widget.workOrder.callRequest.id.toString()); + _callRequestForWorkOrder = await serviceRequestProvider.getCallRequestForWorkOrder(callId: widget.workOrder?.callRequest?.id?.toString()); if (_subWorkOrders?.parentWOId != null) { final subWoDetails = await serviceRequestProvider.getSubWorkOrderDetails(parentId: _subWorkOrders?.parentWOId.toString()); _subWorkOrders.copyDetails(subWoDetails); @@ -184,14 +184,14 @@ class _CreateSubWorkOrderPageState extends State { onRefresh: () async { assetTypesProvider.reset(); await assetTypesProvider.getTypes(); - _serviceReport?.assetType = assetTypesProvider.statuses?.firstWhere( + _subWorkOrders?.assetType = assetTypesProvider.statuses?.firstWhere( (element) => element.value == _serviceReport.callRequest.assetType, orElse: () => null, ); }, child: AppTextFormField( labelText: context.translation.assetType, - initialValue: _serviceReport?.assetType?.name, + initialValue: _subWorkOrders?.assetType?.name, textAlign: TextAlign.center, enable: false, style: Theme.of(context).textTheme.titleMedium, diff --git a/lib/views/pages/user/requests/service_request_details.dart b/lib/views/pages/user/requests/service_request_details.dart index c317a009..b0e67463 100644 --- a/lib/views/pages/user/requests/service_request_details.dart +++ b/lib/views/pages/user/requests/service_request_details.dart @@ -246,7 +246,11 @@ class _ServiceRequestDetailsPageState extends State { label: context.translation.viewWorkOrder, maxWidth: true, onPressed: () { - Navigator.of(context).pushNamed(WorkOrderListPage.id, arguments: serviceRequest); + Navigator.push( + context, + MaterialPageRoute(builder: (context) => WorkOrderListPage(serviceRequest: serviceRequest)), + ); + // Navigator.of(context).pushNamed(WorkOrderListPage.id, arguments: serviceRequest); }, )) .paddingOnly(start: 16, end: 16, bottom: 24), diff --git a/lib/views/pages/user/requests/work_order/create_service_report.dart b/lib/views/pages/user/requests/work_order/create_service_report.dart index d4e928be..16863314 100644 --- a/lib/views/pages/user/requests/work_order/create_service_report.dart +++ b/lib/views/pages/user/requests/work_order/create_service_report.dart @@ -34,6 +34,7 @@ import '../../../../../new_views/common_widgets/single_item_drop_down_menu.dart' import '../../../../widgets/date_and_time/date_picker.dart'; import '../../../../widgets/images/multi_image_picker.dart'; import '../../../../widgets/status/report/service_report_fault_description.dart'; +import '../../../../widgets/status/report/service_report_repair_location.dart'; import '../../../../widgets/timer/app_timer.dart'; /// todo : TBD (compare with the design) @@ -269,6 +270,14 @@ class _CreateServiceReportState extends State with TickerPr }, ), 8.height, + ServiceReportRepairLocation( + label: context.translation.repairLocation, + initialValue: _serviceReport.repairLocation, + onSelect: (status) { + _serviceReport.repairLocation = status; + }, + ), + 8.height, PartNoButton( controller: _partQtyController, spareParts: _spareParts, diff --git a/lib/views/pages/user/requests/work_order/edit_service_report.dart b/lib/views/pages/user/requests/work_order/edit_service_report.dart index e2d617c9..1025f68c 100644 --- a/lib/views/pages/user/requests/work_order/edit_service_report.dart +++ b/lib/views/pages/user/requests/work_order/edit_service_report.dart @@ -33,6 +33,7 @@ import '../../../../widgets/e_signature/e_signature.dart'; import '../../../../widgets/images/multi_image_picker.dart'; import '../../../../widgets/status/report/service_report_assistant_employee_menu.dart'; import '../../../../widgets/status/report/service_report_fault_description.dart'; +import '../../../../widgets/status/report/service_report_repair_location.dart'; import '../../../../widgets/timer/app_timer.dart'; class EditServiceReport extends StatefulWidget { @@ -254,6 +255,14 @@ class _EditServiceReportState extends State with TickerProvid }, ), 8.height, + ServiceReportRepairLocation( + label: context.translation.repairLocation, + initialValue: _serviceReport.repairLocation, + onSelect: (status) { + _serviceReport.repairLocation = status; + }, + ), + 8.height, PartNoButton( controller: _partQtyController, spareParts: _spareParts, diff --git a/lib/views/pages/user/requests/work_order/work_orders_list_page.dart b/lib/views/pages/user/requests/work_order/work_orders_list_page.dart index 3b0bc31c..cb58d171 100644 --- a/lib/views/pages/user/requests/work_order/work_orders_list_page.dart +++ b/lib/views/pages/user/requests/work_order/work_orders_list_page.dart @@ -32,17 +32,14 @@ class WorkOrderListPage extends StatelessWidget { List workOrders = []; ServiceRequestsProvider serviceRequestsProvider; UserProvider _userProvider = Provider.of(context); - if (serviceRequestsProvider == null) { - serviceRequestsProvider = Provider.of(context); - serviceRequest = ModalRoute.of(context).settings.arguments; - } - print("serviceRequest.statusValue:${serviceRequest.statusValue}"); + serviceRequestsProvider ??= Provider.of(context); + print("serviceRequest.statusValue:${serviceRequest?.statusValue}"); return Scaffold( appBar: DefaultAppBar(title: context.translation.workOrders), //backgroundColor: const Color(0xfff8f9fb), body: SafeArea( child: FutureBuilder( - future: serviceRequestsProvider.searchWorkOrders(callId: serviceRequest.requestCode), + future: serviceRequestsProvider.searchWorkOrders(callId: serviceRequest?.requestCode), builder: (context, snap) { if (snap.connectionState == ConnectionState.waiting) return const Center(child: CircularProgressIndicator()); workOrders = snap.data as List;