import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart'; import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'Dialog/confirm_cancel_order_dialog.dart'; import 'package:diplomaticquarterapp/uitl/utils_new.dart'; class OrdersLogDetailsPage extends StatelessWidget { final HomeHealthCareViewModel model; const OrdersLogDetailsPage({Key key, this.model}) : super(key: key); @override Widget build(BuildContext context) { ProjectViewModel projectViewModel = Provider.of(context); void showConfirmMessage(HomeHealthCareViewModel model, GetHHCAllPresOrdersResponseModel order) { showDialog( context: context, child: ConfirmCancelOrderDialog( model: model, onTap: () async { UpdatePresOrderRequestModel updatePresOrderRequestModel = UpdatePresOrderRequestModel(presOrderID: order.iD, rejectionReason: "", presOrderStatus: 4, editedBy: 3); model.setState(ViewState.Busy); await model.updateHHCPresOrder(updatePresOrderRequestModel); if (model.state == ViewState.ErrorLocal) { Utils.showErrorToast(model.error); } else { AppToast.showSuccessToast(message: TranslationBase.of(context).processDoneSuccessfully); await model.getHHCAllPresOrders(); // await model.getHHCAllServices(); } }, )); } return AppScaffold( isShowAppBar: false, baseViewModel: model, body: SingleChildScrollView( physics: ScrollPhysics(), child: Container( margin: EdgeInsets.all(10), child: Center( child: FractionallySizedBox( widthFactor: 0.94, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Column( crossAxisAlignment: CrossAxisAlignment.start, children: model.hhcAllPresOrders.map((order) { return Container( // margin: EdgeInsets.all(10), child: Container( width: double.infinity, padding: EdgeInsets.only(left: 12, right: 12, top: 12), child: Card( shape: cardRadius(12), elevation: 2, margin: EdgeInsets.zero, color: order.status == 4 ? Colors.red[900] : order.status == 3 ? Colors.green[400] : Color(0xffcd9e1b), clipBehavior: Clip.antiAlias, child: Container( // decoration: containerColorRadiusLeft(Colors.white, 12), margin: EdgeInsets.only(left: projectViewModel.isArabic ? 0 : 8, right: projectViewModel.isArabic ? 8 : 0), padding: EdgeInsets.all(12), // color: Colors.white, decoration: BoxDecoration( shape: BoxShape.rectangle, color: Colors.white, borderRadius: BorderRadius.only( topLeft: projectViewModel.isArabic ? Radius.zero : Radius.circular(12.0), topRight: projectViewModel.isArabic ? Radius.circular(12.0) : Radius.zero, bottomLeft: projectViewModel.isArabic ? Radius.zero : Radius.circular(12.0), bottomRight: projectViewModel.isArabic ? Radius.circular(12.0) : Radius.zero, ), ), // clipBehavior: Clip.antiAlias, child: Row( children: [ Expanded( child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ Texts( TranslationBase.of(context).OrderStatus + ' ' + (projectViewModel.isArabic ? order.descriptionN : order.description), bold: false, fontSize: 12, color: order.status == 4 ? Colors.red[900] : order.status == 3 ? Colors.green[400] : Color(0xffcd9e1b), fontWeight: FontWeight.bold, ), Texts( TranslationBase.of(context).requestID + ' ' + order.iD.toString(), fontWeight: FontWeight.w600, fontSize: 18, ), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Texts( TranslationBase.of(context).orderLocation, bold: false, fontSize: 13, ), SizedBox( height: 4, ), Texts( !projectViewModel.isArabic ? order.nearestProjectDescription.toString() : order.nearestProjectDescriptionN.toString(), fontSize: 13, ), ], ) ], )), Column( children: [ Texts( DateUtil.getDayMonthYearDateFormatted(DateUtil.convertStringToDate(order.createdOn)), fontSize: 14, ), SizedBox(height: 8), (order.status == 1 || order.status == 2) ? SecondaryButton( onTap: () { showConfirmMessage(model, order); }, label: TranslationBase.of(context).cancel, color: Colors.red[900], small: true, ) : SizedBox() ], ), ], ))), )); }).toList()) ], ), ), ), ), ), ); } }