Sub work order screen done

main_design2.0
zaid_daoud 2 years ago
parent f5b069c318
commit 042d7df708

@ -1,3 +1,5 @@
import 'dart:typed_data';
import 'package:test_sa/models/lookup.dart';
import 'package:test_sa/models/service_request/service_report.dart';
import 'package:test_sa/models/service_request/spare_parts.dart';
@ -189,7 +191,9 @@ class SearchWorkOrder {
Lookup equipmentStatus;
List<SuppEngineerWorkOrders> suppEngineerWorkOrders;
String engSignature;
Uint8List localEngSignature;
String nurseSignature;
Uint8List localNurseSignature;
WoParent woParentDto;
TimerModel timer;
String mrNumber;

@ -25,6 +25,7 @@ import 'package:test_sa/views/widgets/loaders/app_loading.dart';
import '../../../attachment.dart';
import '../../../controllers/api_routes/http_status_manger.dart';
import '../../../controllers/providers/api/status_drop_down/report/service_report_fault_description_provider.dart';
import '../../../controllers/providers/api/status_drop_down/report/service_report_last_calls_provider.dart';
import '../../../models/service_request/spare_parts.dart';
import '../../../models/service_request/supp_engineer_work_orders.dart';
import '../../../models/service_request/supplier_details.dart';
@ -35,6 +36,7 @@ import '../../../new_views/common_widgets/single_item_drop_down_menu.dart';
import '../../../providers/loading_list_notifier.dart';
import '../../../providers/work_order/reason_provider.dart';
import '../../widgets/date_and_time/date_picker.dart';
import '../../widgets/e_signature/e_signature.dart';
import '../../widgets/status/report/service_report_assistant_employee_menu.dart';
import '../../widgets/status/report/service_report_last_call.dart';
import '../../widgets/timer/app_timer.dart';
@ -57,6 +59,7 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
bool _isLoading = false;
bool _showVendorFields = false;
SuppEngineerWorkOrders engineer;
SupplierDetails initialSupplier;
@override
void initState() {
@ -79,6 +82,7 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
CallRequest _callRequestForWorkOrder;
Future getAssetType() async {
Provider.of<ServiceReportLastCallsProvider>(context, listen: false).reset();
final serviceRequestProvider = Provider.of<ServiceRequestsProvider>(context);
Provider.of<ServiceRequestFaultDescriptionProvider>(context, listen: false).reset();
assetTypesProvider = Provider.of<ServiceStatusProvider>(context, listen: false);
@ -88,6 +92,7 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
_subWorkOrders.copyDetails(subWoDetails);
_serviceReport.equipmentStatus = subWoDetails.equipmentStatus;
_serviceReport.reason = subWoDetails.reason;
initialSupplier = subWoDetails.supplier;
// _serviceReport.faultDescription = subWoDetails.faultDescription;
}
await assetTypesProvider.getTypes();
@ -179,12 +184,14 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
ServiceReportLastCallsMenu(
report: _serviceReport,
title: context.translation.callLastSituation,
parentId: widget.workOrder?.callRequest?.id?.toString(),
parentId: widget.workOrder?.id?.toString(),
onSelect: (status) {
_serviceReport.calllastSituation = status;
if (checkVendorFieldsVisibility(status)) {
_subWorkOrders.supplier ??= SupplierDetails(id: _subWorkOrders?.supplier?.id);
engineer = null;
} else {
_subWorkOrders.supplier = initialSupplier;
}
if (status?.value == 12 || _subWorkOrders.calllastSituation?.value == 12) {
_subWorkOrders.calllastSituation = status;
@ -195,6 +202,7 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
setState(() {});
},
),
if (_subWorkOrders.calllastSituation?.value == 12) const SizedBox(height: 8),
if (_subWorkOrders.calllastSituation?.value == 12)
AppTextFormField(
labelText: context.translation.mrNumber,
@ -272,6 +280,20 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
),
8.height,
MultiFilesPicker(label: context.translation.attachImage, files: _files),
8.height,
ESignature(
title: context.translation.engSign,
oldSignature: _subWorkOrders.engSignature,
newSignature: _subWorkOrders.localEngSignature,
onSaved: (signature) {
// if (signature == null || signature.isEmpty) {
// setState(() {});
// return;
// }
_subWorkOrders.localEngSignature = signature;
_subWorkOrders.engSignature = signature != null ? "${DateTime.now().toIso8601String()}.png|${base64Encode(signature)}" : null;
},
),
],
),
),

@ -23,6 +23,7 @@ import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
import 'package:test_sa/views/widgets/status/report/service_report_assistant_employee_menu.dart';
import 'package:test_sa/views/widgets/status/report/service_report_last_call.dart';
import '../../../../../controllers/providers/api/status_drop_down/report/service_report_last_calls_provider.dart';
import '../../../../../controllers/providers/api/status_drop_down/report/service_types_provider.dart';
import '../../../../../models/lookup.dart';
import '../../../../../models/service_request/spare_parts.dart';
@ -69,6 +70,9 @@ class _CreateServiceReportState extends State<CreateServiceReport> with TickerPr
sparePartsWorkOrders: [],
);
super.initState();
if (context.mounted) {
Provider.of<ServiceReportLastCallsProvider>(context, listen: false).reset();
}
// _isLoading = true;
}

Loading…
Cancel
Save