|
|
|
|
@ -1,4 +1,5 @@
|
|
|
|
|
import 'dart:convert';
|
|
|
|
|
import 'dart:developer';
|
|
|
|
|
|
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
|
import 'package:flutter/services.dart';
|
|
|
|
|
@ -72,6 +73,10 @@ class _RequestGasRefillState extends State<RequestGasRefill> {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_onSubmit(BuildContext context) async {
|
|
|
|
|
if (_formModel.status == null) {
|
|
|
|
|
await Fluttertoast.showToast(msg: "${context.translation.youHaveToSelect} ${context.translation.status}");
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (_formModel.timer?.startAt == null) {
|
|
|
|
|
await Fluttertoast.showToast(msg: "Working Hours Required");
|
|
|
|
|
return false;
|
|
|
|
|
@ -80,7 +85,7 @@ class _RequestGasRefillState extends State<RequestGasRefill> {
|
|
|
|
|
await Fluttertoast.showToast(msg: "Please Stop The Timer");
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (_formModel.gazRefillDetails.isEmpty) {
|
|
|
|
|
if (_formModel.gazRefillDetails?.isNotEmpty ?? false) {
|
|
|
|
|
if (!(await _addNewModel(context))) return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -121,14 +126,16 @@ class _RequestGasRefillState extends State<RequestGasRefill> {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
_formKey.currentState.save();
|
|
|
|
|
_currentDetails.gasType = _formModel.gazRefillDetails[0].gasType;
|
|
|
|
|
_currentDetails.cylinderSize = _formModel.gazRefillDetails[0].cylinderSize;
|
|
|
|
|
_currentDetails.cylinderType = _formModel.gazRefillDetails[0].cylinderType;
|
|
|
|
|
if (!(await _currentDetails.validate(context))) {
|
|
|
|
|
setState(() {});
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_formModel.gazRefillDetails.insert(0, _currentDetails);
|
|
|
|
|
_formModel.gazRefillDetails[0].deliverdQty = _currentDetails.deliverdQty;
|
|
|
|
|
_validate = false;
|
|
|
|
|
Scrollable.ensureVisible(_DetailsKey.currentContext);
|
|
|
|
|
// Scrollable.ensureVisible(_DetailsKey.currentContext);
|
|
|
|
|
_deliveredQuantityController.clear();
|
|
|
|
|
_workingHoursController.clear();
|
|
|
|
|
_commentController.clear();
|
|
|
|
|
@ -159,7 +166,7 @@ class _RequestGasRefillState extends State<RequestGasRefill> {
|
|
|
|
|
//_formModel.status = widget.gasRefillModel?.status ?? Lookup(value: 0);
|
|
|
|
|
_gasRefillProvider.expectedDateTime = DateTime.tryParse(_formModel.expectedDate ?? "");
|
|
|
|
|
_formModel.timer = TimerModel(startAt: DateTime.tryParse(widget.gasRefillModel?.startDate ?? ""), endAt: DateTime.tryParse(widget.gasRefillModel?.endDate ?? ""));
|
|
|
|
|
_clientName = _formModel.site.custName;
|
|
|
|
|
_clientName = _formModel.site?.custName;
|
|
|
|
|
} else {
|
|
|
|
|
_formModel.timer = null;
|
|
|
|
|
_clientName = _userProvider.user?.clientName;
|
|
|
|
|
@ -200,10 +207,10 @@ class _RequestGasRefillState extends State<RequestGasRefill> {
|
|
|
|
|
8.height,
|
|
|
|
|
|
|
|
|
|
/// TBD
|
|
|
|
|
'${context.translation.gasRequest}:'.bodyText(context),
|
|
|
|
|
'${context.translation.cylinderSize}: ${widget.gasRefillModel.gazRefillDetails[0].cylinderSize.value}'.bodyText(context),
|
|
|
|
|
'${context.translation.quantity}: ${widget.gasRefillModel.gazRefillDetails[0].requestedQty}'.bodyText(context),
|
|
|
|
|
'${context.translation.site}: ${widget.gasRefillModel.site.name}'.bodyText(context),
|
|
|
|
|
'${context.translation.gasRequest}: ${widget.gasRefillModel.gazRefillDetails[0].gasType.name}'.bodyText(context),
|
|
|
|
|
'${context.translation.cylinderSize}: ${widget.gasRefillModel.gazRefillDetails[0].cylinderSize.name}'.bodyText(context),
|
|
|
|
|
'${context.translation.quantity}: ${widget.gasRefillModel.gazRefillDetails[0].requestedQty ?? 0}'.bodyText(context),
|
|
|
|
|
'${context.translation.site}: ${widget.gasRefillModel.site?.name}'.bodyText(context),
|
|
|
|
|
],
|
|
|
|
|
).toShadowContainer(context),
|
|
|
|
|
8.height,
|
|
|
|
|
@ -227,6 +234,7 @@ class _RequestGasRefillState extends State<RequestGasRefill> {
|
|
|
|
|
),
|
|
|
|
|
8.height,
|
|
|
|
|
AppTextFormField(
|
|
|
|
|
initialValue: _formModel.gazRefillDetails[0]?.deliverdQty?.toString(),
|
|
|
|
|
labelText: context.translation.deliveredQuantity,
|
|
|
|
|
onSaved: (value) {
|
|
|
|
|
_currentDetails?.deliverdQty = double.tryParse(value);
|
|
|
|
|
|