import 'package:doctor_app_flutter/core/viewModel/sick_leave_view_model.dart'; import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/models/sickleave/get_all_sickleave_response.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/util/date-utils.dart'; import 'package:doctor_app_flutter/util/dr_app_toast_msg.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/patient-profile-app-bar.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/rounded_container_widget.dart'; import 'package:flutter/material.dart'; class ShowSickLeaveScreen extends StatelessWidget { PatiantInformtion patient; @override Widget build(BuildContext context) { final routeArgs = ModalRoute.of(context).settings.arguments as Map; patient = routeArgs['patient']; return BaseView( onModelReady: (model) => model.getSickLeave(patient.patientMRN ?? patient.patientId), builder: (_, model, w) => AppScaffold( baseViewModel: model, isShowAppBar: true, backgroundColor: Colors.grey[100], appBar: PatientProfileAppBar( patient, ), body: SingleChildScrollView( child: Column( children: [ // PatientProfileHeaderNewDesign( // patient, routeArgs['patientType'], routeArgs['arrivalType']), model.getAllSIckLeave.length > 0 ? Column( children: model.getAllSIckLeave .map((GetAllSickLeaveResponse item) { return RoundedContainer( margin: EdgeInsets.all(10), child: Column( children: [ Container( decoration: BoxDecoration( border: Border( left: BorderSide( color: item.status == 1 ? Colors.yellow[800] : item.status == 2 ? Colors.green : Colors.black, width: 5.0, ))), padding: EdgeInsets.all(10), child: Row( mainAxisAlignment: MainAxisAlignment.start, children: [ Expanded( flex: 4, child: Wrap( // mainAxisAlignment: // MainAxisAlignment.start, children: [ Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Container( padding: EdgeInsets.all(3), child: AppText( item.status == 1 ? TranslationBase.of( context) .hold : item.status == 2 ? TranslationBase .of( context) .active : TranslationBase .of(context) .all, fontWeight: FontWeight.bold, color: item.status == 1 ? Colors.yellow[800] : item.status == 2 ? Colors.green : Colors.black, ), ), Row( children: [ AppText( TranslationBase.of( context) .daysSickleave), AppText( item.noOfDays .toString(), fontWeight: FontWeight.bold, ), ], ), Row( children: [ AppText( TranslationBase.of( context) .startDate + ' ', ), Flexible( child: AppText( AppDateUtils .convertStringToDateFormat( item.startDate, 'dd-MMM-yyyy'), fontWeight: FontWeight.bold, )) ], ), Row( mainAxisAlignment: MainAxisAlignment .spaceBetween, children: [ AppText( item.remarks ?? "", ), (item.status == 1) ? IconButton( icon: Image.asset( 'assets/images/edit.png'), // color: Colors.green, //Colors.black, onPressed: () => { if (item.status == 1) { DrAppToastMsg.showErrorToast( TranslationBase.of(context) .sickleaveonhold) } // else // { // openSickLeave( // context, // true, // extendedData: // item) // } }, ) : SizedBox() ]), ], ), SizedBox( width: 20, ), ], ), ), ], )), ], )); }).toList(), ) : Center( child: Column( crossAxisAlignment: CrossAxisAlignment.center, children: [ SizedBox( height: 100, ), Image.asset('assets/images/no-data.png'), Padding( padding: const EdgeInsets.all(8.0), child: AppText( TranslationBase.of(context).noSickLeave), ) ], ), ) ], ), ), ), ); } }