Merge remote-tracking branch 'origin/majd_development_new' into zaid_development_new

main_design2.0
zaid_daoud 2 years ago
commit 50c551705f

@ -328,6 +328,10 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
_validate = true; _validate = true;
setState(() {}); setState(() {});
if (validate()) { if (validate()) {
if(_subWorkOrders.calllastSituation.value == 12 && (_subWorkOrders.sparePartsWorkOrders == null || _subWorkOrders.sparePartsWorkOrders.isEmpty)){
await Fluttertoast.showToast(msg: "You have to add parts");
return;
}
_subWorkOrders.attachmentsWorkOrder ??= []; _subWorkOrders.attachmentsWorkOrder ??= [];
for (var file in _files) { for (var file in _files) {
_subWorkOrders.attachmentsWorkOrder.add(AttachmentsWorkOrder(name: "${file.path.split("/").last}|${base64Encode(file.readAsBytesSync())}")); _subWorkOrders.attachmentsWorkOrder.add(AttachmentsWorkOrder(name: "${file.path.split("/").last}|${base64Encode(file.readAsBytesSync())}"));

@ -13,6 +13,7 @@ import 'package:test_sa/views/widgets/status/service_request/supplier_engineers_
import '../../../controllers/localization/localization.dart'; import '../../../controllers/localization/localization.dart';
import '../../../controllers/providers/api/status_drop_down/report/service_report_maintenance_situation_provider.dart'; import '../../../controllers/providers/api/status_drop_down/report/service_report_maintenance_situation_provider.dart';
import '../../app_style/colors.dart';
import '../../widgets/timer/app_timer.dart'; import '../../widgets/timer/app_timer.dart';
import '../../widgets/titles/app_sub_title.dart'; import '../../widgets/titles/app_sub_title.dart';
import 'auto_generated_vendor_name.dart'; import 'auto_generated_vendor_name.dart';
@ -151,6 +152,8 @@ class _WorkOrderDetailsBottomSheetState extends State<WorkOrderDetailsBottomShee
}, },
woId: widget.subWorkOrder?.parentWOId?.toString(), woId: widget.subWorkOrder?.parentWOId?.toString(),
), ),
if(_workOrder.calllastSituation.value ==12)
ASubTitle(" You have to add parts", color: AColors.primaryColor, padding: EdgeInsets.all(2), font: 12,),
if (_showVendorFields) const SizedBox(height: 8), if (_showVendorFields) const SizedBox(height: 8),
if (_showVendorFields) if (_showVendorFields)
AutoGeneratedVendorName( AutoGeneratedVendorName(

@ -20,6 +20,7 @@ import 'package:test_sa/views/app_style/colors.dart';
import 'package:test_sa/views/widgets/app_text_form_field.dart'; import 'package:test_sa/views/widgets/app_text_form_field.dart';
import 'package:test_sa/views/widgets/buttons/app_back_button.dart'; import 'package:test_sa/views/widgets/buttons/app_back_button.dart';
import 'package:test_sa/views/widgets/buttons/app_button.dart'; import 'package:test_sa/views/widgets/buttons/app_button.dart';
import 'package:test_sa/views/widgets/date_and_time/time_picker.dart';
import 'package:test_sa/views/widgets/equipment/device_button.dart'; import 'package:test_sa/views/widgets/equipment/device_button.dart';
import 'package:test_sa/views/widgets/images/multi_image_picker.dart'; import 'package:test_sa/views/widgets/images/multi_image_picker.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
@ -287,11 +288,11 @@ class CreateRequestPageState extends State<CreateRequestPage> {
), ),
if (_showDatePicker) 12.height, if (_showDatePicker) 12.height,
if (_showDatePicker) if (_showDatePicker)
ADatePicker( ADateTimePicker(
date: _dateTime, date: _dateTime,
enable: !isFirstActionSubmitted, enable: !isFirstActionSubmitted,
from: DateTime.now(), from: DateTime.now(),
onDatePicker: (date) { onDateTimePicker: (date) {
_dateTime = date; _dateTime = date;
setState(() {}); setState(() {});
}, },

@ -95,9 +95,12 @@ class RequestDetailsPage extends StatelessWidget {
buttonSize: 42, buttonSize: 42,
backgroundColor: AColors.green, backgroundColor: AColors.green,
onPressed: () async { onPressed: () async {
Navigator.of(context).push( if(serviceRequest.statusValue == 2) {
Navigator.of(context).push(
MaterialPageRoute(builder: (_) => CreateRequestPage(serviceRequest: serviceRequest)), MaterialPageRoute(builder: (_) => CreateRequestPage(serviceRequest: serviceRequest)),
); );
} else
null;
// showModalBottomSheet( // showModalBottomSheet(
// context: context, // context: context,
// builder: (context) { // builder: (context) {
@ -395,13 +398,15 @@ class RequestDetailsPage extends StatelessWidget {
child: AButton( child: AButton(
text: _subtitle.editServiceReport, text: _subtitle.editServiceReport,
onPressed: () { onPressed: () {
Navigator.of(context).push( if(serviceRequest.statusValue == 2) {
Navigator.of(context).push(
MaterialPageRoute( MaterialPageRoute(
builder: (_) => FutureServiceReport( builder: (_) => FutureServiceReport(
request: serviceRequest, request: serviceRequest,
workOrder: workOrders[index], workOrder: workOrders[index],
)), )),
); );
}else {null;}
}, },
), ),
) )
@ -441,7 +446,12 @@ class RequestDetailsPage extends StatelessWidget {
child: AButton( child: AButton(
text: "Create Work Order", text: "Create Work Order",
onPressed: () { onPressed: () {
Navigator.of(context).push(MaterialPageRoute(builder: (_) => CreateServiceReport(request: serviceRequest))); if(serviceRequest.statusValue == 2) {
Navigator.of(context).push(MaterialPageRoute(builder: (_) => CreateServiceReport(request: serviceRequest)));
}
else {
null;
}
}, },
), ),
), ),

@ -6,8 +6,10 @@ class ADateTimePicker extends StatelessWidget {
final DateTime from; final DateTime from;
final DateTime to; final DateTime to;
final Function(DateTime) onDateTimePicker; final Function(DateTime) onDateTimePicker;
final bool enable;
const ADateTimePicker({Key key, this.date, this.onDateTimePicker, this.from, this.to}) : super(key: key);
const ADateTimePicker({Key key, this.date, this.onDateTimePicker, this.from, this.to, this.enable}) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -23,10 +25,10 @@ class ADateTimePicker extends StatelessWidget {
date == null ? "Pick Time" : date.toString().substring(0, date.toString().lastIndexOf(":")), date == null ? "Pick Time" : date.toString().substring(0, date.toString().lastIndexOf(":")),
textScaleFactor: AppStyle.getScaleFactor(context), textScaleFactor: AppStyle.getScaleFactor(context),
), ),
onPressed: () async { onPressed: enable? () async {
// TimeOfDay picked = await showTimePicker(context: context, initialTime: TimeOfDay.now()); // TimeOfDay picked = await showTimePicker(context: context, initialTime: TimeOfDay.now());
onDateTimePicker(await showDateTimePicker(context: context, initialDate: date, firstDate: from, lastDate: to)); onDateTimePicker(await showDateTimePicker(context: context, initialDate: date, firstDate: from, lastDate: to));
}, }: null,
); );
} }
} }

Loading…
Cancel
Save