import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/models/patient/my_referral/PendingReferral.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/card_with_bg_widget.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; class PatientReferralItemWidget extends StatelessWidget { final String patientName; final String patientID; final String referralStatus; final isReferredTo; final isSameBranch; final String referralDoctorName; final String clinicDescription; final String remark; final String referredOn; final String answerFromTarget; final Widget infoIcon; final PendingReferral patientInfo; PatientReferralItemWidget( this.patientID, { this.patientName, this.referralStatus, this.isReferredTo = false, this.isSameBranch, this.referralDoctorName, this.clinicDescription, this.remark, this.referredOn, this.answerFromTarget, this.infoIcon, this.patientInfo, }); @override Widget build(BuildContext context) { return Container( margin: EdgeInsets.all(16.0), child: Column( children: [ // TODO should be removed by mousa // Row( // children: [ // Expanded( // child: Column( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // if (referralStatus != null) // Row( // children: [ // AppText( // TranslationBase.of(context).referralStatus, // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // Container( // color: Color(0xFF4BA821), // padding: EdgeInsets.all(4), // child: AppText( // referralStatus // /*referralStatus == "46" // ? TranslationBase.of(context).approved // : TranslationBase.of(context).rejected*/ // , // color: Colors.white, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ), // ], // ), // SizedBox( // height: 8, // ), // Row( // children: [ // AppText( // isReferredTo // ? "${TranslationBase.of(context).referTo}: " // : "${TranslationBase.of(context).referredFrom}: ", // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // AppText( // isSameBranch // ? TranslationBase.of(context).sameBranch // : TranslationBase.of(context).otherBranch, // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ], // ), // SizedBox( // height: 8, // ), // Row( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // AppText( // "${TranslationBase.of(context).referralDoctor} : ", // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // Expanded( // child: AppText( // referralDoctorName != null // ? "${TranslationBase.of(context).dr} $referralDoctorName" // : "-", // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ), // ], // ), // SizedBox( // height: 8, // ), // if (clinicDescription != null) // Row( // children: [ // AppText( // "${TranslationBase.of(context).clinic}: ", // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // AppText( // clinicDescription, // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ], // ), // SizedBox( // height: 8, // ), // Row( // children: [ // AppText( // "${TranslationBase.of(context).patientID}: ", // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // AppText( // patientID ?? '-', // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ], // ), // SizedBox( // height: 8, // ), // Row( // children: [ // AppText( // "${TranslationBase.of(context).patientName}: ", // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // AppText( // patientName ?? '-', // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ], // ), // SizedBox( // height: 8, // ), // Row( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // AppText( // TranslationBase.of(context).referralRemark, // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // Expanded( // child: AppText( // remark, // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ), // ], // ), // SizedBox( // height: 8, // ), // Row( // children: [ // AppText( // TranslationBase.of(context).referredOn, // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // AppText( // referredOn ?? '-', // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ], // ), // if (answerFromTarget != null) // SizedBox( // height: 8, // ), // if (answerFromTarget != null) // Row( // children: [ // AppText( // TranslationBase.of(context).referralResponse, // color: Colors.grey, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // AppText( // answerFromTarget != "" ? answerFromTarget : '-', // color: Colors.black, // fontWeight: FontWeight.bold, // fontSize: 12, // ), // ], // ), // SizedBox( // height: 16, // ), // ], // ), // ), // if (infoIcon != null) infoIcon, // ], // ), // const Divider( // color: Color(0xffCCCCCC), // height: 1, // thickness: 1, // indent: 0, // endIndent: 0, // ), SizedBox( height: 8, ), Container( child: CardWithBgWidget( bgColor: patientInfo.referralStatus == 'Pending' ? Colors.orange[400] : Colors.red[800], hasBorder: false, widget: Container( // padding: EdgeInsets.only(left: 20, right: 0, bottom: 0), child: InkWell( child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ RichText( text: new TextSpan( style: new TextStyle( fontSize: 2.0 * SizeConfig.textMultiplier, color: Colors.black), children: [ new TextSpan( text: patientInfo.referralStatus, style: TextStyle( color: patientInfo.referralStatus == 'Pending' ? Colors.orange[400] : Colors.red[800], fontWeight: FontWeight.w700, fontFamily: 'Poppins', fontSize: 18)), ], ), ), //TODO :ask backend to return in the standerformate AppText( referredOn, fontFamily: 'Poppins', fontWeight: FontWeight.w600, ) ], ), AppText( patientInfo.patientName, fontSize: SizeConfig.textMultiplier * 2, fontWeight: FontWeight.bold, backGroundcolor: Colors.white, fontFamily: 'Poppins', ), SizedBox( width: 10, ), RichText( text: new TextSpan( style: new TextStyle( fontSize: 2.0 * SizeConfig.textMultiplier, color: Colors.black), children: [ new TextSpan( text: TranslationBase.of(context).fileNumber, style: TextStyle( fontSize: 14, fontFamily: 'Poppins')), new TextSpan( text: patientInfo.patientID.toString(), style: TextStyle( fontWeight: FontWeight.w700, fontFamily: 'Poppins', fontSize: 15)), ], ), ), Container( child: RichText( text: new TextSpan( style: new TextStyle( fontSize: 2.0 * SizeConfig.textMultiplier, color: Colors.black), children: [ new TextSpan( text: TranslationBase.of(context).referredFrom, style: TextStyle( fontSize: 14, fontFamily: 'Poppins')), new TextSpan( text: isSameBranch ? TranslationBase.of(context).sameBranch : TranslationBase.of(context).otherBranch, style: TextStyle( fontWeight: FontWeight.w700, fontFamily: 'Poppins', fontSize: 15)), ], ), ), ), Container( child: RichText( text: new TextSpan( style: new TextStyle( fontSize: 2.0 * SizeConfig.textMultiplier, color: Colors.black), children: [ new TextSpan( text: TranslationBase.of(context).remarks + " : ", style: TextStyle( fontSize: 14, fontFamily: 'Poppins')), new TextSpan( text: patientInfo.remarksFromSource, style: TextStyle( fontWeight: FontWeight.w700, fontFamily: 'Poppins', fontSize: 15)), ], ), ), ), SizedBox( height: 20, ), Column( children: [ RichText( text: TextSpan( style: TextStyle( fontSize: 2.0 * SizeConfig.textMultiplier, color: Colors.black), children: [ TextSpan( text: TranslationBase.of(context) .referralDoctor + " : ", style: TextStyle( fontSize: 14, fontFamily: 'Poppins')), TextSpan( text: referralDoctorName, style: TextStyle( fontWeight: FontWeight.w700, fontFamily: 'Poppins', fontSize: 15)), ], ), ) ], ), Container( width: double.infinity, alignment: Alignment.centerRight, child: Icon(FontAwesomeIcons.arrowRight, size: 25, color: Colors.black)) ], ), // onTap: onTap, )), ), ), ], ), ); } }