Insurance Approval design fix

doctor-app-design
hussam al-habibeh 4 years ago
parent 75a10939fb
commit 6f1790d71e

@ -100,11 +100,11 @@ class _InsuranceApprovalScreenNewState
doctorName: model doctorName: model
.insuranceApprovalInPatient[index] .insuranceApprovalInPatient[index]
.doctorName, .doctorName,
branch: model approvalNo: model
.insuranceApprovalInPatient[index] .insuranceApprovalInPatient[index]
.approvalNo .approvalNo
.toString(), .toString(),
isPrescriptions: true, isInsurance: true,
approvalStatus: model approvalStatus: model
.insuranceApprovalInPatient[index] .insuranceApprovalInPatient[index]
.approvalStatusDescption ?? .approvalStatusDescption ??
@ -149,33 +149,10 @@ class _InsuranceApprovalScreenNewState
child: model.insuranceApproval.length != 0 child: model.insuranceApproval.length != 0
? Column( ? Column(
children: <Widget>[ children: <Widget>[
Padding( ServiceTitle(
padding: const EdgeInsets.all(8.0), title: TranslationBase.of(context).insurance22,
child: Column( subTitle:
children: [ TranslationBase.of(context).approvals22,
Row(
children: [
AppText(
TranslationBase.of(context)
.insurance22,
fontSize: 15.0,
fontWeight: FontWeight.w600,
fontFamily: 'Poppins',
),
],
),
Row(
children: [
AppText(
TranslationBase.of(context)
.approvals22,
fontSize: 30.0,
fontWeight: FontWeight.w700,
),
],
),
],
),
), ),
...List.generate( ...List.generate(
model.insuranceApproval.length, model.insuranceApproval.length,
@ -213,10 +190,10 @@ class _InsuranceApprovalScreenNewState
.insuranceApproval[index].clinicName, .insuranceApproval[index].clinicName,
doctorName: model doctorName: model
.insuranceApproval[index].doctorName, .insuranceApproval[index].doctorName,
branch: model approvalNo: model
.insuranceApproval[index].approvalNo .insuranceApproval[index].approvalNo
.toString(), .toString(),
isPrescriptions: true, isInsurance: true,
approvalStatus: model approvalStatus: model
.insuranceApproval[index] .insuranceApproval[index]
.approvalStatusDescption ?? .approvalStatusDescption ??

@ -5,9 +5,11 @@ import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.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/date-utils.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/patients/patient_service_title.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/patient-profile-app-bar.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_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/user-guid/CusomRow.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -54,38 +56,16 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
AppScaffold( AppScaffold(
isShowAppBar: true, isShowAppBar: true,
baseViewModel: model, baseViewModel: model,
appBar: PatientProfileAppBar( appBar: PatientProfileAppBar(patient),
patient),
body: patient.admissionNo != null body: patient.admissionNo != null
? SingleChildScrollView( ? SingleChildScrollView(
child: Container( child: Container(
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Padding( ServiceTitle(
padding: const EdgeInsets.all(8.0), title: TranslationBase.of(context).insurance22,
child: Column( subTitle: TranslationBase.of(context).approvals22,
children: [
Row(
children: [
AppText(
TranslationBase.of(context).insurance22,
fontSize: 15.0,
fontWeight: FontWeight.w600,
fontFamily: 'Poppins',
),
],
),
Row(
children: [
AppText(
TranslationBase.of(context).approvals22,
fontSize: 30.0,
fontWeight: FontWeight.w700,
),
],
),
],
),
), ),
Container( Container(
margin: EdgeInsets.all(10), margin: EdgeInsets.all(10),
@ -128,6 +108,11 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
? Color(0xff359846) ? Color(0xff359846)
: Color(0xffD02127) : Color(0xffD02127)
: Color(0xffD02127), : Color(0xffD02127),
letterSpacing: -0.4,
fontWeight: FontWeight.w600,
fontSize: SizeConfig
.getTextMultiplierBasedOnWidth() *
2.7,
), ),
], ],
), ),
@ -139,9 +124,10 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
indexInsurance] indexInsurance]
.doctorName .doctorName
.toUpperCase(), .toUpperCase(),
color: Colors.black, color: Color(0xff2E303A),
fontSize: 18, fontSize: 16,
fontWeight: FontWeight.bold, letterSpacing: -0.64,
fontWeight: FontWeight.w600,
) )
], ],
), ),
@ -153,8 +139,14 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
Column( Column(
children: [ children: [
Container( Container(
height: 85.0, height: MediaQuery.of(context)
width: 85.0, .size
.height *
0.065,
width: MediaQuery.of(context)
.size
.height *
0.065,
child: CircleAvatar( child: CircleAvatar(
radius: SizeConfig radius: SizeConfig
.imageSizeMultiplier * .imageSizeMultiplier *
@ -192,112 +184,55 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
SizedBox( SizedBox(
height: 25.0, height: 25.0,
), ),
Row( CustomRow(
children: [ label: TranslationBase.of(
AppText( context)
TranslationBase.of( .clinic +
context) ": ",
.clinic + value: model
": ", .insuranceApprovalInPatient[
color: Colors.grey[500], indexInsurance]
fontSize: 14, .clinicName,
),
Expanded(
child: AppText(
model
.insuranceApprovalInPatient[
indexInsurance]
.clinicName,
fontSize: 14,
),
)
],
), ),
Row( CustomRow(
children: <Widget>[ label: TranslationBase.of(
AppText( context)
TranslationBase.of( .approvalNo +
context) ": ",
.approvalNo + value: model
": ", .insuranceApprovalInPatient[
color: Colors.grey[500], indexInsurance]
fontSize: 14, .approvalNo
), .toString(),
AppText(
model
.insuranceApprovalInPatient[
indexInsurance]
.approvalNo
.toString(),
fontSize: 14,
)
],
),
Row(
children: <Widget>[
AppText(
'Unused Count:',
color: Colors.grey[500],
fontSize: 14,
),
AppText(
model
.insuranceApprovalInPatient[
indexInsurance]
.unUsedCount
.toString(),
fontSize: 14,
)
],
),
Row(
children: <Widget>[
AppText(
TranslationBase.of(
context)
.companyName +
": ",
color: Colors.grey[500],
),
AppText('Sample')
],
),
Row(
children: [
AppText(
TranslationBase.of(
context)
.receiptOn +
": ",
color: Colors.grey[500],
),
Expanded(
child: AppText(
'${AppDateUtils.getDayMonthYearDateFormatted(AppDateUtils.getDateTimeFromServerFormat(model.insuranceApprovalInPatient[indexInsurance].receiptOn), isArabic: projectViewModel.isArabic)}',
color: Colors.black,
fontWeight:
FontWeight.w600,
),
),
],
), ),
Row( CustomRow(
children: [ label: 'Unused Count:',
AppText( value: model
TranslationBase.of( .insuranceApprovalInPatient[
context) indexInsurance]
.expiryDate + .unUsedCount
": ", .toString(),
color: Colors.grey[500],
),
AppText(
'${AppDateUtils.getDayMonthYearDateFormatted(AppDateUtils.getDateTimeFromServerFormat(model.insuranceApprovalInPatient[indexInsurance].expiryDate), isArabic: projectViewModel.isArabic)}',
color: Colors.black,
fontWeight:
FontWeight.w600,
),
],
), ),
CustomRow(
label: TranslationBase.of(
context)
.companyName +
": ",
value: 'Sample'),
CustomRow(
label: TranslationBase.of(
context)
.receiptOn +
": ",
value:
'${AppDateUtils.getDayMonthYearDateFormatted(AppDateUtils.getDateTimeFromServerFormat(model.insuranceApprovalInPatient[indexInsurance].receiptOn ?? ""), isArabic: projectViewModel.isArabic)}'),
CustomRow(
label: TranslationBase.of(
context)
.expiryDate +
": ",
value:
'${AppDateUtils.getDayMonthYearDateFormatted(AppDateUtils.getDateTimeFromServerFormat(model.insuranceApprovalInPatient[indexInsurance].expiryDate ?? ""), isArabic: projectViewModel.isArabic)}'),
], ],
), ),
), ),
@ -320,21 +255,36 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
child: AppText( child: AppText(
TranslationBase.of(context) TranslationBase.of(context)
.procedure, .procedure,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w600,
color: Color(0xff2E303A),
letterSpacing: -0.48,
fontSize: SizeConfig
.getTextMultiplierBasedOnWidth() *
2.9,
), ),
), ),
Expanded( Expanded(
child: AppText( child: AppText(
TranslationBase.of(context) TranslationBase.of(context)
.status, .status,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w600,
color: Color(0xff2E303A),
letterSpacing: -0.48,
fontSize: SizeConfig
.getTextMultiplierBasedOnWidth() *
2.9,
), ),
), ),
Expanded( Expanded(
child: AppText( child: AppText(
TranslationBase.of(context) TranslationBase.of(context)
.usageStatus, .usageStatus,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w600,
color: Color(0xff2E303A),
letterSpacing: -0.48,
fontSize: SizeConfig
.getTextMultiplierBasedOnWidth() *
2.9,
), ),
) )
], ],
@ -374,7 +324,18 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
"", "",
textAlign: textAlign:
TextAlign TextAlign
.start, .center,
fontSize:
SizeConfig
.getTextMultiplierBasedOnWidth() *
2.7,
letterSpacing:
-0.4,
color: Color(
0xff575757),
fontWeight:
FontWeight
.w500,
), ),
), ),
), ),
@ -391,6 +352,17 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
textAlign: textAlign:
TextAlign TextAlign
.center, .center,
fontSize:
SizeConfig
.getTextMultiplierBasedOnWidth() *
2.7,
letterSpacing:
-0.4,
color: Color(
0xff575757),
fontWeight:
FontWeight
.w500,
), ),
), ),
), ),
@ -407,6 +379,17 @@ class _InsuranceApprovalsDetailsState extends State<InsuranceApprovalsDetails> {
textAlign: textAlign:
TextAlign TextAlign
.center, .center,
fontSize:
SizeConfig
.getTextMultiplierBasedOnWidth() *
2.7,
letterSpacing:
-0.4,
color: Color(
0xff575757),
fontWeight:
FontWeight
.w500,
), ),
), ),
), ),

@ -1,7 +1,9 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/large_avatar.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/large_avatar.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/user-guid/CusomRow.dart';
import 'package:eva_icons_flutter/eva_icons_flutter.dart'; import 'package:eva_icons_flutter/eva_icons_flutter.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -9,13 +11,13 @@ import 'package:provider/provider.dart';
class DoctorCardInsurance extends StatelessWidget { class DoctorCardInsurance extends StatelessWidget {
final String doctorName; final String doctorName;
final String branch; final String approvalNo;
final DateTime appointmentDate; final DateTime appointmentDate;
final String profileUrl; final String profileUrl;
final String invoiceNO; final String invoiceNO;
final String orderNo; final String orderNo;
final Function onTap; final Function onTap;
final bool isPrescriptions; final bool isInsurance;
final String clinic; final String clinic;
final String approvalStatus; final String approvalStatus;
final String patientOut; final String patientOut;
@ -23,13 +25,13 @@ class DoctorCardInsurance extends StatelessWidget {
DoctorCardInsurance( DoctorCardInsurance(
{this.doctorName, {this.doctorName,
this.branch, this.approvalNo,
this.profileUrl, this.profileUrl,
this.invoiceNO, this.invoiceNO,
this.onTap, this.onTap,
this.appointmentDate, this.appointmentDate,
this.orderNo, this.orderNo,
this.isPrescriptions = false, this.isInsurance = false,
this.clinic, this.clinic,
this.approvalStatus, this.approvalStatus,
this.patientOut, this.patientOut,
@ -59,7 +61,8 @@ class DoctorCardInsurance extends StatelessWidget {
topLeft: Radius.circular(10), topLeft: Radius.circular(10),
bottomLeft: Radius.circular(10), bottomLeft: Radius.circular(10),
), ),
color: approvalStatus == "Approved" || approvalStatus == "تمت الموافقة" color: approvalStatus == "Approved" ||
approvalStatus == "تمت الموافقة"
? Color(0xff359846) ? Color(0xff359846)
: Color(0xffD02127), : Color(0xffD02127),
), ),
@ -67,7 +70,8 @@ class DoctorCardInsurance extends StatelessWidget {
Expanded( Expanded(
child: Container( child: Container(
padding: EdgeInsets.only( padding: EdgeInsets.only(
left: projectViewModel.isArabic ? 0 : 15, right: projectViewModel.isArabic ? 15 : 0), left: projectViewModel.isArabic ? 0 : 15,
right: projectViewModel.isArabic ? 15 : 0),
child: InkWell( child: InkWell(
onTap: onTap, onTap: onTap,
child: Column( child: Column(
@ -78,22 +82,32 @@ class DoctorCardInsurance extends StatelessWidget {
children: [ children: [
AppText( AppText(
"$approvalStatus", "$approvalStatus",
color: approvalStatus == "Approved" || approvalStatus == "تمت الموافقة" color: approvalStatus == "Approved" ||
approvalStatus == "تمت الموافقة"
? Color(0xff359846) ? Color(0xff359846)
: Color(0xffD02127), : Color(0xffD02127),
letterSpacing: -0.4,
fontSize:
SizeConfig.getTextMultiplierBasedOnWidth() *
2.7,
), ),
Container( Container(
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(25.0), Radius.circular(20.0),
), ),
color: Color(0xff2E303A)), color: Color(0xff2E303A)),
child: Padding( child: Padding(
padding: const EdgeInsets.all(12.0), padding: const EdgeInsets.symmetric(
vertical: 6.5, horizontal: 11.5),
child: AppText( child: AppText(
'$patientOut'.replaceAll(" ", ""), '$patientOut'.replaceAll(" ", ""),
color: Colors.white, color: Colors.white,
fontSize: 13.0, fontSize:
SizeConfig.getTextMultiplierBasedOnWidth() *
2.7,
letterSpacing: -0.4,
fontWeight: FontWeight.w600,
), ),
), ),
) )
@ -104,7 +118,9 @@ class DoctorCardInsurance extends StatelessWidget {
Expanded( Expanded(
child: AppText( child: AppText(
doctorName, doctorName,
bold: true, fontSize: 16.0,
letterSpacing: -0.64,
fontWeight: FontWeight.w600,
)), )),
], ],
), ),
@ -123,86 +139,54 @@ class DoctorCardInsurance extends StatelessWidget {
flex: 4, flex: 4,
child: Container( child: Container(
margin: EdgeInsets.all(10), margin: EdgeInsets.all(10),
child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[ child: Column(
if (orderNo != null && !isPrescriptions) crossAxisAlignment: CrossAxisAlignment.start,
Row( children: <Widget>[
children: <Widget>[ if (orderNo != null && !isInsurance)
AppText( CustomRow(
'order No:', label: 'Invoice:',
color: Colors.grey[500], value: invoiceNO,
), ),
AppText( if (invoiceNO != null && !isInsurance)
orderNo ?? '', CustomRow(
) label: 'Invoice:',
], value: invoiceNO,
),
if (invoiceNO != null && !isPrescriptions)
Row(
children: <Widget>[
AppText(
'Invoice:',
color: Colors.grey[500],
), ),
AppText( if (isInsurance)
invoiceNO, CustomRow(
) label:
], TranslationBase.of(context).clinic +
), ": ",
if (isPrescriptions) value: clinic,
Row(
children: <Widget>[
AppText(
TranslationBase.of(context).clinic + ": ",
color: Colors.grey[500],
fontSize: 14,
//fontWeight: FontWeight.w600,
//color: Colors.grey[500],
), ),
Expanded( if (branch2 != null)
child: AppText( CustomRow(
clinic, label:
//fontWeight: FontWeight.w700, TranslationBase.of(context).branch +
fontSize: 14.0, ": ",
), value: branch2,
)
],
),
if (branch2 != null)
Row(
children: <Widget>[
AppText(
TranslationBase.of(context).branch + ": ",
fontSize: 14,
color: Colors.grey[500],
), ),
AppText( if (approvalNo != null)
branch2, CustomRow(
fontSize: 14.0, label: TranslationBase.of(context)
) .approvalNo +
], ": ",
), value: approvalNo,
Row( ),
children: <Widget>[ ]),
AppText(
TranslationBase.of(context).approvalNo + ": ",
fontSize: 14,
color: Colors.grey[500],
//color: Colors.grey[500],
),
AppText(
branch,
fontSize: 14.0,
)
],
),
]),
), ),
), ),
Padding( Column(
padding: const EdgeInsets.symmetric(horizontal: 15.0), children: [
child: Icon( Padding(
EvaIcons.eye, padding: const EdgeInsets.symmetric(
), horizontal: 15.0),
child: Icon(
EvaIcons.eye,
color: Color(0xff2E303A),
),
),
],
) )
], ],
), ),

@ -135,7 +135,7 @@ class _AppTextFieldCustomState extends State<AppTextFieldCustom> {
// SizeConfig.getHeightMultiplier() * // SizeConfig.getHeightMultiplier() *
// (SizeConfig.isWidthLarge ? 1.1 : 1.3) // (SizeConfig.isWidthLarge ? 1.1 : 1.3)
: 0, : 0,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w600,
letterSpacing: -0.44, letterSpacing: -0.44,
fontFamily: 'Poppins', fontFamily: 'Poppins',
), ),

@ -7,7 +7,11 @@ class CustomRow extends StatelessWidget {
const CustomRow({ const CustomRow({
Key key, Key key,
this.label, this.label,
this.value, this.labelSize, this.valueSize, this.width, this.isCopyable= true, this.value,
this.labelSize,
this.valueSize,
this.width,
this.isCopyable = true,
}) : super(key: key); }) : super(key: key);
final String label; final String label;
@ -24,7 +28,8 @@ class CustomRow extends StatelessWidget {
children: [ children: [
AppText( AppText(
label, label,
fontSize: labelSize??SizeConfig.getTextMultiplierBasedOnWidth() * 2.7, fontSize:
labelSize ?? SizeConfig.getTextMultiplierBasedOnWidth() * 2.7,
color: Color(0xFF575757), color: Color(0xFF575757),
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
letterSpacing: -0.4, letterSpacing: -0.4,
@ -32,15 +37,18 @@ class CustomRow extends StatelessWidget {
SizedBox( SizedBox(
width: 1, width: 1,
), ),
AppText( Expanded(
value, child: AppText(
fontSize: valueSize??SizeConfig.getTextMultiplierBasedOnWidth() * 2.9, value,
color: Color(0xFF2B353E), fontSize:
fontWeight: FontWeight.w700, valueSize ?? SizeConfig.getTextMultiplierBasedOnWidth() * 2.9,
letterSpacing: -0.48, color: Color(0xFF2B353E),
isCopyable: isCopyable, fontWeight: FontWeight.w700,
letterSpacing: -0.48,
isCopyable: isCopyable,
),
), ),
], ],
); );
} }
} }

Loading…
Cancel
Save