Merge branch 'Haroon' into 'development'

Haroon

See merge request Cloud_Solution/diplomatic-quarter!274
merge-requests/275/merge
Mohammad Aljammal 5 years ago
commit 6b1cdb56c6

@ -8,6 +8,7 @@ import 'package:diplomaticquarterapp/models/Appointments/toDoCountProviderModel.
import 'package:diplomaticquarterapp/pages/appUpdatePage/app_update_page.dart'; import 'package:diplomaticquarterapp/pages/appUpdatePage/app_update_page.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
@ -213,8 +214,8 @@ class BaseAppClient {
Future navigateToAppUpdate(context, String text) async { Future navigateToAppUpdate(context, String text) async {
Navigator.pushReplacement( Navigator.pushReplacement(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => AppUpdatePage(appUpdateText: text))); page: AppUpdatePage(appUpdateText: text)));
} }
get(String endPoint, get(String endPoint,

@ -9,6 +9,7 @@ import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart';
@ -111,8 +112,8 @@ class _NewCMCStepTowPageState
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (BuildContext context) => page:
CMCLocationPage( CMCLocationPage(
latitude: latitude, latitude: latitude,
longitude: longitude, longitude: longitude,

@ -8,6 +8,7 @@ import 'package:diplomaticquarterapp/widgets/dialogs/select_location_dialog.dart
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart';
@ -112,8 +113,8 @@ class _NewHomeHealthCareStepTowPageState
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (BuildContext context) => page:
LocationPage( LocationPage(
latitude: latitude, latitude: latitude,
longitude: longitude, longitude: longitude,

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'dart:math'; import 'dart:math';
@ -508,8 +509,8 @@ class _BMICalculatorState extends State<BMICalculator> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => ResultPage( page: ResultPage(
finalResult: bmiResult, finalResult: bmiResult,
textResult: textResult, textResult: textResult,
msg: msg, msg: msg,

@ -7,6 +7,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/borderedButton.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:percent_indicator/percent_indicator.dart'; import 'package:percent_indicator/percent_indicator.dart';
@ -114,8 +115,8 @@ class ResultPage extends StatelessWidget {
handler: (){ handler: (){
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BariatricsPage(1, 1, finalResult)), page: BariatricsPage(1, 1, finalResult)),
); );
}, },
), ),

@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'dart:math'; import 'dart:math';
@ -701,8 +702,8 @@ class _BmrCalculatorState extends State<BmrCalculator> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BmrResultPage( page: BmrResultPage(
bmrResult: bmrResult, bmrResult: bmrResult,
calories: calories, calories: calories,
)), )),

@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'dart:math'; import 'dart:math';
@ -1001,8 +1002,8 @@ class _BodyFatState extends State<BodyFat> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => FatResult( page: FatResult(
bodyFat: bodyFat, bodyFat: bodyFat,
fat: fat, fat: fat,
textResult: textResult, textResult: textResult,

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'calorie_result_page.dart'; import 'calorie_result_page.dart';
@ -678,8 +679,8 @@ class _CalorieCalculatorState extends State<CalorieCalculator> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => CalorieResultPage( page: CalorieResultPage(
calorie: calories, calorie: calories,
)), )),
); );

@ -1,10 +1,10 @@
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/health_calculator/calorie_calculator/calorie_calculator.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'dart:math';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/health_calculator/calorie_calculator/calorie_calculator.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'carbs_result_page.dart'; import 'carbs_result_page.dart';
@ -207,8 +207,7 @@ class _CarbsState extends State<Carbs> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(page: CalorieCalculator()),
builder: (context) => CalorieCalculator()),
); );
} }
}); });
@ -340,8 +339,8 @@ class _CarbsState extends State<Carbs> {
calculate(); calculate();
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => CarbsResult( page: CarbsResult(
cCal: cCal, cCal: cCal,
pCal: pCal, pCal: pCal,
fCal: fCal, fCal: fCal,

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_datetime_picker/flutter_datetime_picker.dart'; import 'package:flutter_datetime_picker/flutter_datetime_picker.dart';
import 'package:intl/intl.dart'; import 'package:intl/intl.dart';
@ -121,8 +122,8 @@ class _DeliveryDueState extends State<DeliveryDue> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => DeliveryDueResult( page: DeliveryDueResult(
conceivedDate: conceivedDate, conceivedDate: conceivedDate,
dateFrom: dateFrom, dateFrom: dateFrom,
dateTo: dateTo, dateTo: dateTo,

@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'dart:math'; import 'dart:math';
@ -532,8 +533,8 @@ class _IdealBodyState extends State<IdealBody> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => IdealBodyResult( page: IdealBodyResult(
idealBodyWeight: idealWeight, idealBodyWeight: idealWeight,
minRange: minRange, minRange: minRange,
mixRange: maxRange, mixRange: maxRange,

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_datetime_picker/flutter_datetime_picker.dart'; import 'package:flutter_datetime_picker/flutter_datetime_picker.dart';
import 'package:intl/intl.dart'; import 'package:intl/intl.dart';
@ -329,8 +330,8 @@ class _OvulationPeriodState extends State<OvulationPeriod> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => OvulationResult( page: OvulationResult(
conceivedDate: conceivedDate, conceivedDate: conceivedDate,
dateFrom: dateFrom, dateFrom: dateFrom,
dateTo: dateTo, dateTo: dateTo,

@ -6,21 +6,16 @@ import 'package:diplomaticquarterapp/core/model/blooddonation/get_all_cities.dar
//import 'package:diplomaticquarterapp/core/model/hospitals/hospitals_model.dart'; //import 'package:diplomaticquarterapp/core/model/hospitals/hospitals_model.dart';
import 'package:diplomaticquarterapp/core/model/my_balance/AdvanceModel.dart'; import 'package:diplomaticquarterapp/core/model/my_balance/AdvanceModel.dart';
import 'package:diplomaticquarterapp/core/model/my_balance/patient_info.dart'; import 'package:diplomaticquarterapp/core/model/my_balance/patient_info.dart';
import 'package:diplomaticquarterapp/core/service/blood/blood_details_servies.dart';
import 'package:diplomaticquarterapp/core/viewModels/blooddonation/blood_details_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart';
import 'package:diplomaticquarterapp/models/FamilyFiles/GetAllSharedRecordByStatusResponse.dart'; import 'package:diplomaticquarterapp/models/FamilyFiles/GetAllSharedRecordByStatusResponse.dart';
import 'package:diplomaticquarterapp/pages/Blood/user_agreement_page.dart'; import 'package:diplomaticquarterapp/pages/Blood/user_agreement_page.dart';
import 'package:diplomaticquarterapp/pages/ToDoList/payment_method_select.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/balance/dialogs/SelectCiteisDialog.dart'; import 'package:diplomaticquarterapp/pages/medical/balance/dialogs/SelectCiteisDialog.dart';
import 'package:diplomaticquarterapp/pages/medical/balance/dialogs/SelectHospitalDialog.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.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/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
@ -30,14 +25,11 @@ import 'package:flutter/material.dart';
import 'package:giffy_dialog/giffy_dialog.dart'; import 'package:giffy_dialog/giffy_dialog.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
//import '../../../core/model/my_balance/AdvanceModel.dart';
import 'confirm_payment_page.dart';
import 'dialogs/SelectBeneficiaryDialog.dart'; import 'dialogs/SelectBeneficiaryDialog.dart';
import 'dialogs/SelectBloodDialog.dart'; import 'dialogs/SelectBloodDialog.dart';
import 'dialogs/SelectGenderDialog.dart'; import 'dialogs/SelectGenderDialog.dart';
import 'dialogs/SelectPatientFamilyDialog.dart'; import 'dialogs/SelectPatientFamilyDialog.dart';
import 'dialogs/SelectPatientInfoDialog.dart'; import 'dialogs/SelectPatientInfoDialog.dart';
import 'new_text_Field.dart';
enum BeneficiaryType { MyAccount, MyFamilyFiles, OtherAccount, NON } enum BeneficiaryType { MyAccount, MyFamilyFiles, OtherAccount, NON }
enum Gender { Male, Female, NON } enum Gender { Male, Female, NON }
@ -63,7 +55,8 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
AuthenticatedUser authenticatedUser; AuthenticatedUser authenticatedUser;
GetAllSharedRecordsByStatusList selectedPatientFamily; GetAllSharedRecordsByStatusList selectedPatientFamily;
AdvanceModel advanceModel = AdvanceModel(); AdvanceModel advanceModel = AdvanceModel();
List_BloodGroupDetailsModel bloodDetails = List_BloodGroupDetailsModel(bloodGroup: "A-"); List_BloodGroupDetailsModel bloodDetails =
List_BloodGroupDetailsModel(bloodGroup: "A-");
AppSharedPreferences sharedPref = AppSharedPreferences(); AppSharedPreferences sharedPref = AppSharedPreferences();
AuthenticatedUser authUser; AuthenticatedUser authUser;
var checkedValue = false; var checkedValue = false;
@ -180,9 +173,8 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.of(context).push(MaterialPageRoute( Navigator.of(context)
builder: (BuildContext context) => .push(FadePage(page: UserAgreementPage()));
UserAgreementPage()));
}, },
child: Container( child: Container(
child: Texts( child: Texts(
@ -267,7 +259,6 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
), ),
], ],
), ),
SizedBox( SizedBox(
height: MediaQuery.of(context).size.height * 0.15, height: MediaQuery.of(context).size.height * 0.15,
) )
@ -291,8 +282,9 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
), ),
label: TranslationBase.of(context).save, label: TranslationBase.of(context).save,
onTap: () async { onTap: () async {
if(_selectedHospital == null){ if (_selectedHospital == null) {
AppToast.showErrorToast(message: TranslationBase.of(context).selectCity); AppToast.showErrorToast(
message: TranslationBase.of(context).selectCity);
return; return;
} }
bloodDetails.city = projectProvider.isArabic bloodDetails.city = projectProvider.isArabic
@ -536,7 +528,8 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
return "Select Blood Type"; //TranslationBase.of(context).selectBeneficiary; return "Select Blood Type"; //TranslationBase.of(context).selectBeneficiary;
} }
String getHospitalName(ProjectViewModel projectProvider, BuildContext context) { String getHospitalName(
ProjectViewModel projectProvider, BuildContext context) {
if (_selectedHospital != null) if (_selectedHospital != null)
return projectProvider.isArabic return projectProvider.isArabic
? _selectedHospital.descriptionN ? _selectedHospital.descriptionN

@ -14,6 +14,7 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:intl/intl.dart'; import 'package:intl/intl.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -628,8 +629,8 @@ class _BookConfirmState extends State<BookConfirm> {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BookSuccess( page: BookSuccess(
docObject: docObject, docObject: docObject,
patientShareResponse: patientShareResponse, patientShareResponse: patientShareResponse,
appoDateFormatted: widget.appoDateFormatted, appoDateFormatted: widget.appoDateFormatted,

@ -12,6 +12,7 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart'; import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:flutter_inappwebview/flutter_inappwebview.dart';
@ -592,7 +593,7 @@ class _BookSuccessState extends State<BookSuccess> {
appo.appointmentNo = widget.patientShareResponse.appointmentNo; appo.appointmentNo = widget.patientShareResponse.appointmentNo;
Navigator.push( Navigator.push(
context, MaterialPageRoute(builder: (context) => PaymentMethod())) context, FadePage(page: PaymentMethod()))
.then((value) { .then((value) {
print(value); print(value);
if (value != null) { if (value != null) {
@ -920,11 +921,11 @@ class _BookSuccessState extends State<BookSuccess> {
Future navigateToQR(context, String appoQR) async { Future navigateToQR(context, String appoQR) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => QRCode( page: QRCode(
patientShareResponse: widget.patientShareResponse, patientShareResponse: widget.patientShareResponse,
appoQR: appoQR, appoQR: appoQR,
))); )));
} }
_getNormalText(text) { _getNormalText(text) {

@ -12,6 +12,7 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
@ -153,7 +154,8 @@ class _DoctorProfileState extends State<DoctorProfile>
alignment: Alignment.center, alignment: Alignment.center,
child: Text( child: Text(
"(" + "(" +
widget.docProfileList.noOfPatientsRate.toString() + widget.docProfileList.noOfPatientsRate
.toString() +
" " + " " +
TranslationBase.of(context).reviews + TranslationBase.of(context).reviews +
")", ")",
@ -279,7 +281,8 @@ class _DoctorProfileState extends State<DoctorProfile>
color: Theme.of(context).primaryColor, color: Theme.of(context).primaryColor,
margin: EdgeInsets.only(bottom: 5.0), margin: EdgeInsets.only(bottom: 5.0),
padding: EdgeInsets.all(10.0), padding: EdgeInsets.all(10.0),
child: Text(TranslationBase.of(context).doctorRating, child: Text(
TranslationBase.of(context).doctorRating,
style: TextStyle( style: TextStyle(
fontSize: 22.0, color: Colors.white))), fontSize: 22.0, color: Colors.white))),
Container( Container(
@ -297,8 +300,11 @@ class _DoctorProfileState extends State<DoctorProfile>
margin: EdgeInsets.only(top: 5.0), margin: EdgeInsets.only(top: 5.0),
alignment: Alignment.center, alignment: Alignment.center,
child: RatingBar.readOnly( child: RatingBar.readOnly(
initialRating: initialRating: this
this.widget.doctor.actualDoctorRate.toDouble(), .widget
.doctor
.actualDoctorRate
.toDouble(),
size: 35.0, size: 35.0,
filledColor: Colors.yellow[700], filledColor: Colors.yellow[700],
emptyColor: Colors.grey[500], emptyColor: Colors.grey[500],
@ -311,7 +317,11 @@ class _DoctorProfileState extends State<DoctorProfile>
Container( Container(
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
child: Text( child: Text(
this.widget.doctor.noOfPatientsRate.toString() + this
.widget
.doctor
.noOfPatientsRate
.toString() +
" " + " " +
TranslationBase.of(context).reviews, TranslationBase.of(context).reviews,
style: TextStyle( style: TextStyle(
@ -327,7 +337,8 @@ class _DoctorProfileState extends State<DoctorProfile>
child: Text( child: Text(
TranslationBase.of(context).excellent, TranslationBase.of(context).excellent,
style: TextStyle( style: TextStyle(
fontSize: 13.0, color: Colors.black))), fontSize: 13.0,
color: Colors.black))),
Container( Container(
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
child: SizedBox( child: SizedBox(
@ -349,9 +360,11 @@ class _DoctorProfileState extends State<DoctorProfile>
width: 100.0, width: 100.0,
margin: EdgeInsets.only( margin: EdgeInsets.only(
top: 10.0, left: 15.0, right: 15.0), top: 10.0, left: 15.0, right: 15.0),
child: Text(TranslationBase.of(context).v_good, child: Text(
TranslationBase.of(context).v_good,
style: TextStyle( style: TextStyle(
fontSize: 13.0, color: Colors.black))), fontSize: 13.0,
color: Colors.black))),
Container( Container(
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
child: SizedBox( child: SizedBox(
@ -373,9 +386,11 @@ class _DoctorProfileState extends State<DoctorProfile>
width: 100.0, width: 100.0,
margin: EdgeInsets.only( margin: EdgeInsets.only(
top: 10.0, left: 15.0, right: 15.0), top: 10.0, left: 15.0, right: 15.0),
child: Text(TranslationBase.of(context).good, child: Text(
TranslationBase.of(context).good,
style: TextStyle( style: TextStyle(
fontSize: 13.0, color: Colors.black))), fontSize: 13.0,
color: Colors.black))),
Container( Container(
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
child: SizedBox( child: SizedBox(
@ -397,9 +412,11 @@ class _DoctorProfileState extends State<DoctorProfile>
width: 100.0, width: 100.0,
margin: EdgeInsets.only( margin: EdgeInsets.only(
top: 10.0, left: 15.0, right: 15.0), top: 10.0, left: 15.0, right: 15.0),
child: Text(TranslationBase.of(context).average, child: Text(
TranslationBase.of(context).average,
style: TextStyle( style: TextStyle(
fontSize: 13.0, color: Colors.black))), fontSize: 13.0,
color: Colors.black))),
Container( Container(
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
child: SizedBox( child: SizedBox(
@ -422,9 +439,11 @@ class _DoctorProfileState extends State<DoctorProfile>
margin: EdgeInsets.only( margin: EdgeInsets.only(
top: 10.0, left: 15.0, right: 15.0), top: 10.0, left: 15.0, right: 15.0),
child: Text( child: Text(
TranslationBase.of(context).below_average, TranslationBase.of(context)
.below_average,
style: TextStyle( style: TextStyle(
fontSize: 13.0, color: Colors.black))), fontSize: 13.0,
color: Colors.black))),
Container( Container(
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
child: SizedBox( child: SizedBox(
@ -440,7 +459,8 @@ class _DoctorProfileState extends State<DoctorProfile>
), ),
), ),
Container( Container(
margin: EdgeInsets.only(top: 40.0), child: Divider()), margin: EdgeInsets.only(top: 40.0),
child: Divider()),
Container( Container(
margin: EdgeInsets.only(top: 0.0), margin: EdgeInsets.only(top: 0.0),
child: Align( child: Align(
@ -462,7 +482,8 @@ class _DoctorProfileState extends State<DoctorProfile>
onPressed: () { onPressed: () {
Navigator.of(context).pop(); Navigator.of(context).pop();
}, },
child: Text(TranslationBase.of(context).cancel, child: Text(
TranslationBase.of(context).cancel,
style: TextStyle(fontSize: 18.0)), style: TextStyle(fontSize: 18.0)),
), ),
), ),
@ -485,7 +506,8 @@ class _DoctorProfileState extends State<DoctorProfile>
} }
double getRatingWidth(int patientNumber) { double getRatingWidth(int patientNumber) {
var width = (patientNumber / this.widget.docProfileList.noOfPatientsRate) * 100; var width =
(patientNumber / this.widget.docProfileList.noOfPatientsRate) * 100;
return width; return width;
} }
@ -528,8 +550,8 @@ class _DoctorProfileState extends State<DoctorProfile>
Future navigateToBookConfirm(context) async { Future navigateToBookConfirm(context) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BookConfirm( page: BookConfirm(
doctor: widget.doctor, doctor: widget.doctor,
isLiveCareAppointment: widget.isLiveCareAppointment, isLiveCareAppointment: widget.isLiveCareAppointment,
selectedDate: DocAvailableAppointments.selectedDate, selectedDate: DocAvailableAppointments.selectedDate,

@ -1,21 +1,18 @@
import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/components/SearchByClinic.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/components/SearchByClinic.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/components/SearchByDoctor.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/components/SearchByDoctor.dart';
import 'package:diplomaticquarterapp/uitl/location_util.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/others/arrow_back.dart';
import 'package:diplomaticquarterapp/widgets/others/bottom_bar.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:geolocator/geolocator.dart';
import 'components/SearchByClinic.dart'; import 'components/SearchByClinic.dart';
class Search extends StatefulWidget { class Search extends StatefulWidget {
final int type; final int type;
final List clnicIds; final List clnicIds;
Search({this.type = 0, this.clnicIds}); Search({this.type = 0, this.clnicIds});
@override @override
_SearchState createState() => _SearchState(); _SearchState createState() => _SearchState();
} }
@ -43,9 +40,12 @@ class _SearchState extends State<Search> with TickerProviderStateMixin {
children: [ children: [
TabBar( TabBar(
tabs: [ tabs: [
Tab(text: TranslationBase.of(context).clinicName),
Tab( Tab(
text: TranslationBase.of(context).doctorName, child: Text(TranslationBase.of(context).clinicName,
style: TextStyle(color: Colors.black))),
Tab(
child: Text(TranslationBase.of(context).doctorName,
style: TextStyle(color: Colors.black)),
) )
], ],
controller: _tabController, controller: _tabController,

@ -16,6 +16,7 @@ import '../../../uitl/date_uitl.dart';
class DocAvailableAppointments extends StatefulWidget { class DocAvailableAppointments extends StatefulWidget {
DoctorList doctor; DoctorList doctor;
static bool areSlotsAvailable = false; static bool areSlotsAvailable = false;
static bool areAppointmentsAvailable = false;
static DateTime selectedAppoDateTime; static DateTime selectedAppoDateTime;
static String selectedDate; static String selectedDate;
static String selectedTime; static String selectedTime;
@ -137,7 +138,7 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(5.0), borderRadius: BorderRadius.circular(5.0),
side: BorderSide( side: BorderSide(
color: Colors.blue[400], //Color of the border color: Color(0xff76cfb7), //Color of the border
style: BorderStyle.solid, //Style of the border style: BorderStyle.solid, //Style of the border
width: 1.5, //width of the border width: 1.5, //width of the border
), ),
@ -209,8 +210,8 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
color: _calendarController.isSelected(date) color: _calendarController.isSelected(date)
? Colors.green[400] ? Colors.green[400]
: _calendarController.isToday(date) : _calendarController.isToday(date)
? Colors.brown[300] ? Colors.transparent
: Colors.blue[400], : Color(0xff76cfb7),
), ),
width: 40.0, width: 40.0,
height: 40.0, height: 40.0,
@ -321,7 +322,7 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
Widget getSelectedButton(int index) { Widget getSelectedButton(int index) {
return RaisedButton( return RaisedButton(
color: Colors.blue[400], color: Color(0xff76cfb7), //Color of the border
textColor: Colors.white, textColor: Colors.white,
onPressed: () { onPressed: () {
setState(() { setState(() {
@ -345,17 +346,22 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
if (res['MessageStatus'] == 1) { if (res['MessageStatus'] == 1) {
if (res['FreeTimeSlots'].length != 0) { if (res['FreeTimeSlots'].length != 0) {
DocAvailableAppointments.areAppointmentsAvailable = true;
freeSlotsResponse = res['FreeTimeSlots']; freeSlotsResponse = res['FreeTimeSlots'];
print("res['FreeTimeSlots']"); print("res['FreeTimeSlots']");
print(res['FreeTimeSlots'].length); print(res['FreeTimeSlots'].length);
_getJSONSlots().then((value) => { _getJSONSlots().then((value) => {
setState(() => {_events.clear(), _events = value}) setState(() => {_events.clear(), _events = value})
}); });
} else {} } else {
DocAvailableAppointments.areAppointmentsAvailable = false;
}
} else { } else {
AppToast.showErrorToast(message: res['ErrorEndUserMessage']); AppToast.showErrorToast(message: res['ErrorEndUserMessage']);
} }
}).catchError((err) { }).catchError((err) {
GifLoaderDialogUtils.hideDialog(context);
AppToast.showErrorToast(message: err);
print(err); print(err);
}); });
} }
@ -370,18 +376,22 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
if (res['MessageStatus'] == 1) { if (res['MessageStatus'] == 1) {
if (res['PatientER_DoctorFreeSlots'].length != 0) { if (res['PatientER_DoctorFreeSlots'].length != 0) {
DocAvailableAppointments.areAppointmentsAvailable = true;
freeSlotsResponse = res['PatientER_DoctorFreeSlots']; freeSlotsResponse = res['PatientER_DoctorFreeSlots'];
print("res['PatientER_DoctorFreeSlots']"); print("res['PatientER_DoctorFreeSlots']");
print(res['PatientER_DoctorFreeSlots'].length); print(res['PatientER_DoctorFreeSlots'].length);
_getJSONSlots().then((value) => { _getJSONSlots().then((value) => {
setState(() => {_events.clear(), _events = value}) setState(() => {_events.clear(), _events = value})
}); });
} else {} } else {
DocAvailableAppointments.areAppointmentsAvailable = false;
}
} else { } else {
AppToast.showErrorToast(message: res['ErrorEndUserMessage']); AppToast.showErrorToast(message: res['ErrorEndUserMessage']);
} }
}).catchError((err) { }).catchError((err) {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
AppToast.showErrorToast(message: err);
print(err); print(err);
}); });
} }
@ -399,10 +409,10 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments>
decoration: BoxDecoration( decoration: BoxDecoration(
shape: BoxShape.circle, shape: BoxShape.circle,
color: _calendarController.isSelected(date) color: _calendarController.isSelected(date)
? Colors.green[400] ? Color(0xffB8382C)
: _calendarController.isToday(date) : _calendarController.isToday(date)
? Colors.brown[300] ? Colors.brown[300]
: Colors.blue[400], : Color(0xff76cfb7),
), ),
width: 40.0, width: 40.0,
height: 40.0, height: 40.0,

@ -12,6 +12,7 @@ import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/card/rounded_container.dart'; import 'package:diplomaticquarterapp/widgets/card/rounded_container.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
class SearchByClinic extends StatefulWidget { class SearchByClinic extends StatefulWidget {
@ -295,8 +296,8 @@ class _SearchByClinicState extends State<SearchByClinic> {
BuildContext context, SearchInfo searchInfo) async { BuildContext context, SearchInfo searchInfo) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => DentalComplaints(searchInfo: searchInfo), page: DentalComplaints(searchInfo: searchInfo),
), ),
); );
} }
@ -309,8 +310,8 @@ class _SearchByClinicState extends State<SearchByClinic> {
isProjectLoaded = false; isProjectLoaded = false;
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => SearchResults( page: SearchResults(
isLiveCareAppointment: false, isLiveCareAppointment: false,
doctorsList: docList, doctorsList: docList,
patientDoctorAppointmentListHospital: patientDoctorAppointmentListHospital:

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/services/appointment_services/GetDoctorsLis
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import '../SearchResults.dart'; import '../SearchResults.dart';
@ -160,8 +161,8 @@ class _SearchByDoctorState extends State<SearchByDoctor> {
patientDoctorAppointmentListHospital) async { patientDoctorAppointmentListHospital) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => SearchResults( page: SearchResults(
isLiveCareAppointment: false, isLiveCareAppointment: false,
doctorsList: docList, doctorsList: docList,
patientDoctorAppointmentListHospital: patientDoctorAppointmentListHospital:

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import '../../../Constants.dart'; import '../../../Constants.dart';
@ -8,6 +9,7 @@ class CardCommon extends StatelessWidget {
final text; final text;
final subText; final subText;
final type; final type;
const CardCommon( const CardCommon(
{@required this.image, {@required this.image,
@required this.text, @required this.text,
@ -58,9 +60,9 @@ class CardCommon extends StatelessWidget {
Future navigateToSearch(context, type) async { Future navigateToSearch(context, type) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => Search( page: Search(
type: type, type: type,
))); )));
} }
} }

@ -4,6 +4,7 @@ import 'package:diplomaticquarterapp/pages/BookAppointment/SearchResults.dart';
import 'package:diplomaticquarterapp/services/clinic_services/get_clinic_service.dart'; import 'package:diplomaticquarterapp/services/clinic_services/get_clinic_service.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
// ignore: must_be_immutable // ignore: must_be_immutable
@ -128,8 +129,8 @@ class _DentalComplaintCardState extends State<DentalComplaintCard> {
patientDoctorAppointmentListHospital) async { patientDoctorAppointmentListHospital) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => SearchResults( page: SearchResults(
doctorsList: docList, doctorsList: docList,
patientDoctorAppointmentListHospital: patientDoctorAppointmentListHospital:
patientDoctorAppointmentListHospital))); patientDoctorAppointmentListHospital)));

@ -4,16 +4,15 @@ import 'package:diplomaticquarterapp/services/appointment_services/GetDoctorsLis
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
import '../DoctorProfile.dart'; import '../DoctorProfile.dart';
class DoctorView extends StatelessWidget { class DoctorView extends StatelessWidget {
final DoctorList doctor; final DoctorList doctor;
bool isLiveCareAppointment; bool isLiveCareAppointment;
DoctorView({@required this.doctor, @required this.isLiveCareAppointment}); DoctorView({@required this.doctor, @required this.isLiveCareAppointment});
@ -52,48 +51,53 @@ class DoctorView extends StatelessWidget {
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
if(doctor.doctorTitle!=null) if (doctor.doctorTitle != null)
Text(this.doctor.doctorTitle + " " + this.doctor.name, Text(this.doctor.doctorTitle + " " + this.doctor.name,
style: TextStyle(
fontSize: 14.0,
color: Colors.grey[700],
letterSpacing: 1.0)),
Container(
margin: EdgeInsets.only(top: 3.0),
child: Text(this.doctor.clinicName != null ? this.doctor.clinicName : "",
style: TextStyle( style: TextStyle(
fontSize: 12.0, fontSize: 14.0,
color: Colors.grey[600], color: Colors.grey[700],
letterSpacing: 1.0)), letterSpacing: 1.0)),
),
Container( Container(
margin: EdgeInsets.only(top: 3.0), margin: EdgeInsets.only(top: 3.0),
child: Text(this.doctor.projectName, child: Text(
this.doctor.clinicName != null
? this.doctor.clinicName
: "",
style: TextStyle( style: TextStyle(
fontSize: 12.0, fontSize: 12.0,
color: Colors.grey[600], color: Colors.grey[600],
letterSpacing: 1.0)), letterSpacing: 1.0)),
), ),
if(doctor.speciality!=null)
Container( Container(
margin: EdgeInsets.only(top: 3.0, bottom: 3.0), margin: EdgeInsets.only(top: 3.0),
child: Text( child: Text(this.doctor.projectName,
getDoctorSpeciality(this.doctor.speciality).trim(),
style: TextStyle( style: TextStyle(
fontSize: 12.0, fontSize: 12.0,
color: Colors.grey[600], color: Colors.grey[600],
letterSpacing: 1.0)), letterSpacing: 1.0)),
), ),
this.doctor.nearestFreeSlot != null ? Container( if (doctor.speciality != null)
margin: EdgeInsets.only(top: 3.0, bottom: 3.0), Container(
child: Text( margin: EdgeInsets.only(top: 3.0, bottom: 3.0),
getDate(this.doctor.nearestFreeSlot), child: Text(
style: TextStyle( getDoctorSpeciality(this.doctor.speciality)
fontSize: 14.0, .trim(),
fontWeight: FontWeight.bold, style: TextStyle(
color: Colors.green[600], fontSize: 12.0,
letterSpacing: 1.0)), color: Colors.grey[600],
) : Container(), letterSpacing: 1.0)),
),
this.doctor.nearestFreeSlot != null
? Container(
margin: EdgeInsets.only(top: 3.0, bottom: 3.0),
child: Text(getDate(this.doctor.nearestFreeSlot),
style: TextStyle(
fontSize: 14.0,
fontWeight: FontWeight.bold,
color: Colors.green[600],
letterSpacing: 1.0)),
)
: Container(),
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.max, mainAxisSize: MainAxisSize.max,
@ -175,7 +179,7 @@ class DoctorView extends StatelessWidget {
} }
String getMinute(DateTime dateObj) { String getMinute(DateTime dateObj) {
if(dateObj.minute == 0) { if (dateObj.minute == 0) {
return dateObj.minute.toString() + "0"; return dateObj.minute.toString() + "0";
} else { } else {
return dateObj.minute.toString(); return dateObj.minute.toString();
@ -186,12 +190,12 @@ class DoctorView extends StatelessWidget {
{isAppo}) async { {isAppo}) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => DoctorProfile( page: DoctorProfile(
doctor: docObject, doctor: docObject,
isLiveCareAppointment: isLiveCareAppointment, isLiveCareAppointment: isLiveCareAppointment,
docProfileList: docProfile, docProfileList: docProfile,
isOpenAppt: isAppo, isOpenAppt: isAppo,
))); )));
} }
} }

@ -1,10 +1,10 @@
import 'package:diplomaticquarterapp/core/model/childvaccines/List_BabyInformationModel.dart';
import 'package:diplomaticquarterapp/core/model/childvaccines/delete_baby_model.dart'; import 'package:diplomaticquarterapp/core/model/childvaccines/delete_baby_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/child_vaccines/child_vaccines_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/child_vaccines/child_vaccines_view_model.dart';
import 'package:diplomaticquarterapp/pages/ChildVaccines/add_newchild_page.dart'; import 'package:diplomaticquarterapp/pages/ChildVaccines/add_newchild_page.dart';
import 'package:diplomaticquarterapp/pages/ChildVaccines/vaccinationtable_page.dart'; import 'package:diplomaticquarterapp/pages/ChildVaccines/vaccinationtable_page.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.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/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
@ -12,9 +12,6 @@ import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'dialogs/delete_child.dart';
class ChildPage extends StatefulWidget { class ChildPage extends StatefulWidget {
@override @override
@ -60,7 +57,8 @@ class _ChildPageState extends State<ChildPage>
Navigator.push( Navigator.push(
context, context,
FadePage( FadePage(
page: VaccinationTablePage(model.babyInformationModelList[index]), page: VaccinationTablePage(model
.babyInformationModelList[index]),
), ),
); );
}, },
@ -119,7 +117,9 @@ class _ChildPageState extends State<ChildPage>
Navigator.push( Navigator.push(
context, context,
FadePage( FadePage(
page: VaccinationTablePage(model.babyInformationModelList[index]), page: VaccinationTablePage(model
.babyInformationModelList[
index]),
), ),
); );
}, },
@ -159,9 +159,9 @@ class _ChildPageState extends State<ChildPage>
newChild: deleteBaby); newChild: deleteBaby);
if (model.isDeleted) { if (model.isDeleted) {
AppToast.showSuccessToast( AppToast.showSuccessToast(
message: message: TranslationBase.of(
TranslationBase.of(context) context)
.recordDeleted); .recordDeleted);
Navigator.pop( Navigator.pop(
context, model.isDeleted); context, model.isDeleted);
} else { } else {
@ -183,34 +183,34 @@ class _ChildPageState extends State<ChildPage>
], ],
))), ))),
), ),
bottomSheet: Container( bottomSheet: Container(
height: height * 0.15, height: height * 0.15,
width: double.infinity, width: double.infinity,
padding: EdgeInsets.all(16), padding: EdgeInsets.all(16),
child: SecondaryButton( child: SecondaryButton(
textColor: Colors.white, textColor: Colors.white,
color: checkedValue == false color: checkedValue == false
? Colors.white24 ? Colors.white24
: Color.fromRGBO( : Color.fromRGBO(
63, 63,
72, 72,
74, 74,
1, 1,
),
label: TranslationBase.of(context).addNewChild,
//
onTap: () {
Navigator.push(
context,
FadePage(
page: AddNewChildPage(),
),
).then((value) {
if (value) model.getNewUserOrders();
});
},
),
), ),
label: TranslationBase.of(context).addNewChild,
//
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => AddNewChildPage(),
),
).then((value) {
if (value) model.getNewUserOrders();
});
},
),
),
)); ));
} }
} }

@ -8,6 +8,7 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:maps_launcher/maps_launcher.dart'; import 'package:maps_launcher/maps_launcher.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -285,8 +286,8 @@ class _CovidDrivethruLocationState extends State<CovidDrivethruLocation> {
}); });
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => CovidPaymentDetails( page: CovidPaymentDetails(
covidPaymentInfoResponse: covidPaymentInfoResponse, covidPaymentInfoResponse: covidPaymentInfoResponse,
projectID: int.parse(projectID), projectID: int.parse(projectID),
))); )));

@ -296,7 +296,7 @@ class _CovidPaymentAlertState extends State<CovidPaymentAlert> {
} }
Navigator.push( Navigator.push(
context, MaterialPageRoute(builder: (context) => PaymentMethod())) context, FadePage(page: PaymentMethod()))
.then((value) { .then((value) {
print(value); print(value);
if (value != null) { if (value != null) {

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/pages/Covid-DriveThru/Covid-TimeSlots.dart'
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
@ -17,7 +18,7 @@ class CovidPaymentDetails extends StatefulWidget {
_CovidPaymentDetailsState createState() => _CovidPaymentDetailsState(); _CovidPaymentDetailsState createState() => _CovidPaymentDetailsState();
} }
class _CovidPaymentDetailsState extends State<CovidPaymentDetails> { class _CovidPaymentDetailsState extends State<CovidPaymentDetails> {
bool isAgree = false; bool isAgree = false;
@override @override
@ -197,7 +198,8 @@ class _CovidPaymentDetailsState extends State<CovidPaymentDetails> {
onPressed: () { onPressed: () {
cancel(); cancel();
}, },
child: Text(TranslationBase.of(context).cancel, style: TextStyle(fontSize: 18.0)), child: Text(TranslationBase.of(context).cancel,
style: TextStyle(fontSize: 18.0)),
), ),
), ),
), ),
@ -218,7 +220,8 @@ class _CovidPaymentDetailsState extends State<CovidPaymentDetails> {
disabledTextColor: Colors.white, disabledTextColor: Colors.white,
disabledColor: Colors.grey[500], disabledColor: Colors.grey[500],
onPressed: isAgree ? next : null, onPressed: isAgree ? next : null,
child: Text(TranslationBase.of(context).next, style: TextStyle(fontSize: 18.0)), child: Text(TranslationBase.of(context).next,
style: TextStyle(fontSize: 18.0)),
), ),
), ),
), ),
@ -232,10 +235,10 @@ class _CovidPaymentDetailsState extends State<CovidPaymentDetails> {
void next() { void next() {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => CovidTimeSlots( page: CovidTimeSlots(
projectID: widget.projectID, projectID: widget.projectID,
))); )));
} }
cancel() { cancel() {

@ -14,6 +14,7 @@ import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart'; import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -67,7 +68,8 @@ class _CovidPaymentSummaryState extends State<CovidPaymentSummary> {
Image.asset(getImagePath(widget.selectedPaymentMethod)), Image.asset(getImagePath(widget.selectedPaymentMethod)),
), ),
Texts( Texts(
'${widget.patientShareResponse.patientShareWithTax} ' + TranslationBase.of(context).sar, '${widget.patientShareResponse.patientShareWithTax} ' +
TranslationBase.of(context).sar,
fontSize: 26, fontSize: 26,
bold: true, bold: true,
) )
@ -300,11 +302,11 @@ class _CovidPaymentSummaryState extends State<CovidPaymentSummary> {
Future navigateToQR(context, String appoQR) async { Future navigateToQR(context, String appoQR) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => QRCode( page: QRCode(
patientShareResponse: widget.patientShareResponse, patientShareResponse: widget.patientShareResponse,
appoQR: appoQR, appoQR: appoQR,
))); )));
} }
String getImagePath(String paymentMethod) { String getImagePath(String paymentMethod) {

@ -7,6 +7,7 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
@ -57,15 +58,14 @@ class NotificationsPage extends StatelessWidget {
.map( .map(
(notification) => InkWell( (notification) => InkWell(
onTap: () async { onTap: () async {
if(!notification.isRead) if (!notification.isRead)
model.markAsRead(notification.id); model.markAsRead(notification.id);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (BuildContext context) => page: NotificationsDetailsPage(
NotificationsDetailsPage( notification: notification,
notification: notification, )));
)));
}, },
child: Container( child: Container(
width: double.infinity, width: double.infinity,
@ -122,8 +122,7 @@ class NotificationsPage extends StatelessWidget {
..add( ..add(
InkWell( InkWell(
onTap: () async { onTap: () async {
GifLoaderDialogUtils.showMyDialog( GifLoaderDialogUtils.showMyDialog(context);
context);
currentIndex++; currentIndex++;
GetNotificationsRequestModel GetNotificationsRequestModel
getNotificationsRequestModel = getNotificationsRequestModel =
@ -132,10 +131,9 @@ class NotificationsPage extends StatelessWidget {
pagingSize: 14, pagingSize: 14,
notificationStatusID: 2); notificationStatusID: 2);
await model.getNotifications(getNotificationsRequestModel,context); await model.getNotifications(
GifLoaderDialogUtils.hideDialog( getNotificationsRequestModel, context);
context); GifLoaderDialogUtils.hideDialog(context);
}, },
child: Center( child: Center(
child: Image.asset('assets/images/notf.png'), child: Image.asset('assets/images/notf.png'),

@ -14,11 +14,13 @@ import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/pickupLocation/PickupLocationFromMap.dart'; import 'package:diplomaticquarterapp/widgets/pickupLocation/PickupLocationFromMap.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:geolocator/geolocator.dart'; import 'package:geolocator/geolocator.dart';
import 'package:google_maps_place_picker/google_maps_place_picker.dart'; import 'package:google_maps_place_picker/google_maps_place_picker.dart';
import '../AvailableAppointmentsPage.dart'; import '../AvailableAppointmentsPage.dart';
enum HaveAppointment { YES, NO } enum HaveAppointment { YES, NO }
@ -87,17 +89,16 @@ class _PickupLocationState extends State<PickupLocation> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => PickupLocationFromMap( page: PickupLocationFromMap(
latitude: _latitude, latitude: _latitude,
longitude: _longitude, longitude: _longitude,
onPick: (value) { onPick: (value) {
setState(() { setState(() {
_result = value; _result = value;
}); });
}, },
), )),
),
); );
}, },
child: Container( child: Container(
@ -111,7 +112,8 @@ class _PickupLocationState extends State<PickupLocation> {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
Expanded(child: Texts(getSelectFromMapName(context))), Expanded(
child: Texts(getSelectFromMapName(context))),
Icon( Icon(
FontAwesomeIcons.mapMarkerAlt, FontAwesomeIcons.mapMarkerAlt,
size: 24, size: 24,
@ -327,8 +329,8 @@ class _PickupLocationState extends State<PickupLocation> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => PickupLocationFromMap( page: PickupLocationFromMap(
latitude: _latitude, latitude: _latitude,
longitude: _longitude, longitude: _longitude,
onPick: (value) { onPick: (value) {
@ -351,7 +353,8 @@ class _PickupLocationState extends State<PickupLocation> {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
Expanded(child: Texts(getSelectFromMapName(context))), Expanded(
child: Texts(getSelectFromMapName(context))),
Icon( Icon(
FontAwesomeIcons.mapMarkerAlt, FontAwesomeIcons.mapMarkerAlt,
size: 24, size: 24,
@ -366,7 +369,6 @@ class _PickupLocationState extends State<PickupLocation> {
SizedBox( SizedBox(
height: 45, height: 45,
), ),
], ],
), ),
), ),
@ -409,18 +411,16 @@ class _PickupLocationState extends State<PickupLocation> {
widget.patientER.pickupLocationLattitude; widget.patientER.pickupLocationLattitude;
widget.patientER.longitude = widget.patientER.longitude =
widget.patientER.pickupLocationLongitude; widget.patientER.pickupLocationLongitude;
widget.patientER.dropoffLocationName = widget.patientER.dropoffLocationName = _selectedHospital.name;
_selectedHospital.name;
widget.patientER.createdBy = widget.patientER.createdBy =
widget.amRequestViewModel.user.patientID; widget.amRequestViewModel.user.patientID;
widget.patientER.isOutPatient = widget.patientER.isOutPatient =
widget.amRequestViewModel.user.outSA; widget.amRequestViewModel.user.outSA;
widget.patientER.patientIdentificationID = widget widget.patientER.patientIdentificationID =
.amRequestViewModel.user.patientIdentificationNo; widget.amRequestViewModel.user.patientIdentificationNo;
widget.patientER.pickupDateTime = widget.patientER.pickupDateTime =
DateUtil.convertDateToStringLocation(DateTime.now()); DateUtil.convertDateToStringLocation(DateTime.now());
widget.patientER.pickupLocationName = widget.patientER.pickupLocationName = _result.formattedAddress;
_result.formattedAddress;
widget.patientER.projectID = widget.patientER.projectID =
widget.amRequestViewModel.user.projectID; widget.amRequestViewModel.user.projectID;
widget.patientER.requesterFileNo = widget.patientER.requesterFileNo =
@ -498,8 +498,8 @@ class _PickupLocationState extends State<PickupLocation> {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => AvailableAppointmentsPage( page: AvailableAppointmentsPage(
appointmentsAllHistoryList: appointmentsAllHistoryList:
widget.amRequestViewModel.appoitmentAllHistoryResultList, widget.amRequestViewModel.appoitmentAllHistoryResultList,
), ),

@ -10,6 +10,7 @@ import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
@ -236,9 +237,10 @@ class _AppointmentDetailsState extends State<AppointmentDetails>
Future navigateToBookConfirm(context) async { Future navigateToBookConfirm(context) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BookConfirm( page: BookConfirm(
doctor: getDoctorObject(), doctor: getDoctorObject(),
isLiveCareAppointment: widget.appo.isLiveCareAppointment,
selectedDate: DocAvailableAppointments.selectedDate, selectedDate: DocAvailableAppointments.selectedDate,
selectedTime: DocAvailableAppointments.selectedTime))); selectedTime: DocAvailableAppointments.selectedTime)));
} }

@ -82,9 +82,17 @@ class _MyAppointmentsState extends State<MyAppointments>
child: Column(children: [ child: Column(children: [
TabBar( TabBar(
tabs: [ tabs: [
Tab(text: TranslationBase.of(context).booked), Tab(
Tab(text: TranslationBase.of(context).confirmed), child: Text(TranslationBase.of(context).booked,
Tab(text: TranslationBase.of(context).arrived), style: TextStyle(color: Colors.black))),
Tab(
child: Text(TranslationBase.of(context).confirmed,
style: TextStyle(color: Colors.black)),
),
Tab(
child: Text(TranslationBase.of(context).arrived,
style: TextStyle(color: Colors.black)),
)
], ],
controller: _tabController, controller: _tabController,
), ),
@ -103,7 +111,7 @@ class _MyAppointmentsState extends State<MyAppointments>
leading: Radio( leading: Radio(
value: FilterType.Clinic, value: FilterType.Clinic,
groupValue: filterType, groupValue: filterType,
activeColor: Theme.of(context).primaryColor, activeColor: Color(0xffB8382C),
onChanged: (FilterType value) { onChanged: (FilterType value) {
setFilterType(value); setFilterType(value);
}, },
@ -120,7 +128,7 @@ class _MyAppointmentsState extends State<MyAppointments>
leading: Radio( leading: Radio(
value: FilterType.Hospital, value: FilterType.Hospital,
groupValue: filterType, groupValue: filterType,
activeColor: Theme.of(context).primaryColor, activeColor: Color(0xffB8382C),
onChanged: (FilterType value) => setFilterType(value), onChanged: (FilterType value) => setFilterType(value),
), ),
), ),

@ -110,7 +110,7 @@ class _AppointmentActionsState extends State<AppointmentActions> {
child: Text(e.title, child: Text(e.title,
overflow: TextOverflow.clip, overflow: TextOverflow.clip,
style: TextStyle( style: TextStyle(
color: new Color(0xFF40ACC9), color: new Color(0xffB8382C),
letterSpacing: 1.0, letterSpacing: 1.0,
fontSize: 18.0)), fontSize: 18.0)),
), ),
@ -498,8 +498,8 @@ class _AppointmentActionsState extends State<AppointmentActions> {
dynamic listPres) async { dynamic listPres) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => PrescriptionReportPage( page: PrescriptionReportPage(
prescriptionReportEnhList: prescriptionReportEnhList, prescriptionReportEnhList: prescriptionReportEnhList,
listPres: listPres, listPres: listPres,
appo: widget.appo))); appo: widget.appo)));
@ -508,8 +508,8 @@ class _AppointmentActionsState extends State<AppointmentActions> {
Future navigateToLabResults(PatientLabOrders patientLabOrders) async { Future navigateToLabResults(PatientLabOrders patientLabOrders) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page:
LaboratoryResultPage(patientLabOrders: patientLabOrders))) LaboratoryResultPage(patientLabOrders: patientLabOrders)))
.then((value) {}); .then((value) {});
} }
@ -517,8 +517,8 @@ class _AppointmentActionsState extends State<AppointmentActions> {
Future navigateToRadiologyDetails(FinalRadiology finalRadiology) async { Future navigateToRadiologyDetails(FinalRadiology finalRadiology) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page:
RadiologyDetailsPage(finalRadiology: finalRadiology))) RadiologyDetailsPage(finalRadiology: finalRadiology)))
.then((value) {}); .then((value) {});
} }

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/models/Appointments/AppoimentAllHistoryResu
import 'package:diplomaticquarterapp/pages/MyAppointments/models/AppointmentType.dart'; import 'package:diplomaticquarterapp/pages/MyAppointments/models/AppointmentType.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_countdown_timer/countdown_timer_controller.dart'; import 'package:flutter_countdown_timer/countdown_timer_controller.dart';
import 'package:flutter_countdown_timer/current_remaining_time.dart'; import 'package:flutter_countdown_timer/current_remaining_time.dart';
@ -57,14 +58,14 @@ class _ApointmentCardState extends State<AppointmentCard> {
children: <Widget>[ children: <Widget>[
Container( Container(
width: projectViewModel.isArabic ? 27 : 20, width: projectViewModel.isArabic ? 27 : 20,
height: projectViewModel.isArabic ? 165 : 140, height: projectViewModel.isArabic ? 165 : 140,
decoration: BoxDecoration( decoration: BoxDecoration(
//Colors.red[900] Color(0xff404545) //Colors.red[900] Color(0xff404545)
color: widget.appo.isLiveCareAppointment color: widget.appo.isLiveCareAppointment
? Color(0xff404545) ? Color(0xff404545)
: !widget.appo.isInOutPatient : !widget.appo.isInOutPatient
? Colors.red[900] ? Colors.red[900]
: Theme.of(context).primaryColor, : Theme.of(context).primaryColor,
borderRadius: BorderRadius.only( borderRadius: BorderRadius.only(
topLeft: projectViewModel.isArabic topLeft: projectViewModel.isArabic
? Radius.circular(0) ? Radius.circular(0)
@ -85,21 +86,21 @@ class _ApointmentCardState extends State<AppointmentCard> {
child: Center( child: Center(
child: Text( child: Text(
widget.appo.isLiveCareAppointment widget.appo.isLiveCareAppointment
? TranslationBase.of(context) ? TranslationBase.of(context).liveCare.toUpperCase()
.liveCare
.toUpperCase()
: !widget.appo.isInOutPatient : !widget.appo.isInOutPatient
? TranslationBase.of(context) ? TranslationBase.of(context)
.inPatient .inPatient
.toUpperCase() .toUpperCase()
: TranslationBase.of(context) : TranslationBase.of(context)
.outpatient .outpatient
.toUpperCase(), .toUpperCase(),
style: TextStyle(color: Colors.white), style: TextStyle(color: Colors.white),
), ),
)), )),
), ),
SizedBox(width: 8,), SizedBox(
width: 8,
),
ClipRRect( ClipRRect(
borderRadius: BorderRadius.circular(100.0), borderRadius: BorderRadius.circular(100.0),
child: Image.network(widget.appo.doctorImageURL, child: Image.network(widget.appo.doctorImageURL,
@ -166,7 +167,7 @@ class _ApointmentCardState extends State<AppointmentCard> {
), ),
Container( Container(
transform: transform:
Matrix4.translationValues(15.0, -40.0, 0.0), Matrix4.translationValues(15.0, -40.0, 0.0),
child: projectViewModel.isArabic child: projectViewModel.isArabic
? Image.asset( ? Image.asset(
"assets/images/new-design/arrow_menu_black-ar.png", "assets/images/new-design/arrow_menu_black-ar.png",
@ -179,17 +180,18 @@ class _ApointmentCardState extends State<AppointmentCard> {
), ),
], ],
), ),
(widget.appo.patientStatusType == AppointmentType.BOOKED || (widget.appo.patientStatusType ==
AppointmentType.BOOKED ||
widget.appo.patientStatusType == widget.appo.patientStatusType ==
AppointmentType.CONFIRMED) AppointmentType.CONFIRMED)
? Container( ? Container(
child: CountdownTimer( child: CountdownTimer(
controller: new CountdownTimerController( controller: new CountdownTimerController(
endTime: endTime: DateTime.now()
DateTime.now().millisecondsSinceEpoch + .millisecondsSinceEpoch +
(widget.appo.remaniningHoursTocanPay * (widget.appo.remaniningHoursTocanPay *
1000) * 1000) *
60), 60),
widgetBuilder: (_, CurrentRemainingTime time) { widgetBuilder: (_, CurrentRemainingTime time) {
return time != null return time != null
? Text( ? Text(
@ -235,10 +237,7 @@ class _ApointmentCardState extends State<AppointmentCard> {
} }
Future navigateToAppointmentDetails(context, appo) async { Future navigateToAppointmentDetails(context, appo) async {
Navigator.push( Navigator.push(context, FadePage(page: AppointmentDetails(appo: appo)))
context,
MaterialPageRoute(
builder: (context) => AppointmentDetails(appo: appo)))
.then((value) { .then((value) {
widget.onReloadAppointmentHistory(); widget.onReloadAppointmentHistory();
}); });

@ -21,6 +21,7 @@ import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart'; import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_countdown_timer/countdown_timer_controller.dart'; import 'package:flutter_countdown_timer/countdown_timer_controller.dart';
import 'package:flutter_countdown_timer/current_remaining_time.dart'; import 'package:flutter_countdown_timer/current_remaining_time.dart';
@ -600,8 +601,8 @@ class _ToDoState extends State<ToDo> {
Future navigateToAppointmentDetails(context, appo) async { Future navigateToAppointmentDetails(context, appo) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => AppointmentDetails(appo: appo))) page: AppointmentDetails(appo: appo)))
.then((value) { .then((value) {
getPatientAppointmentHistory(); getPatientAppointmentHistory();
}); });
@ -702,8 +703,8 @@ class _ToDoState extends State<ToDo> {
context, String appoQR, PatientShareResponse patientShareResponse) async { context, String appoQR, PatientShareResponse patientShareResponse) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => QRCode( page: QRCode(
patientShareResponse: patientShareResponse, patientShareResponse: patientShareResponse,
appoQR: appoQR, appoQR: appoQR,
))).then((value) { ))).then((value) {
@ -907,7 +908,7 @@ class _ToDoState extends State<ToDo> {
} }
Navigator.push( Navigator.push(
context, MaterialPageRoute(builder: (context) => PaymentMethod())) context, FadePage(page: PaymentMethod()))
.then((value) { .then((value) {
print(value); print(value);
getPatientAppointmentHistory(); getPatientAppointmentHistory();

@ -4,6 +4,7 @@ import 'package:diplomaticquarterapp/pages/MyAppointments/AppointmentDetails.dar
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
@ -351,6 +352,6 @@ class _TodoListCardState extends State<TodoListCard> {
Future navigateToAppointmentDetails(context) async { Future navigateToAppointmentDetails(context) async {
Navigator.push( Navigator.push(
context, MaterialPageRoute(builder: (context) => AppointmentDetails())); context, FadePage(page: AppointmentDetails()));
} }
} }

@ -2,7 +2,6 @@ import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/all_habib_medical_service_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/all_habib_medical_service_page.dart';
import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart'; import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart';
@ -11,7 +10,6 @@ import 'package:diplomaticquarterapp/pages/ErService/ErOptions.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/livecare/livecare_home.dart'; import 'package:diplomaticquarterapp/pages/livecare/livecare_home.dart';
import 'package:diplomaticquarterapp/pages/paymentService/payment_service.dart'; import 'package:diplomaticquarterapp/pages/paymentService/payment_service.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/screens/pharmacy_module_page.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
@ -69,7 +67,7 @@ class _HomePageState extends State<HomePage> {
right: 5, right: 5,
child: Container( child: Container(
width: width:
MediaQuery.of(context).size.width * 0.8, MediaQuery.of(context).size.width * 0.8,
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
Expanded( Expanded(
@ -84,54 +82,82 @@ class _HomePageState extends State<HomePage> {
fit: BoxFit.fill, fit: BoxFit.fill,
), ),
color: color:
Colors.white.withOpacity(0.3), Colors.white.withOpacity(0.3),
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(5))), Radius.circular(5))),
child: Container( child: Container(
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Texts(TranslationBase.of(context).covidTest, Texts(
color: Colors.white, TranslationBase.of(context)
fontWeight: FontWeight.w700, .covidTest,
), color: Colors.white,
fontWeight: FontWeight.w700,
),
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment:
MainAxisAlignment
.spaceAround,
children: <Widget>[ children: <Widget>[
Container( Container(
margin: EdgeInsets.only( margin: EdgeInsets.only(
top: 15.0,), top: 15.0,
),
child: SvgPicture.asset( child: SvgPicture.asset(
'assets/images/new-design/covid-19-car.svg', 'assets/images/new-design/covid-19-car.svg',
width: 45.0, width: 45.0,
height: 45.0), height: 45.0),
), ),
Container( Container(
margin: EdgeInsets.only(top: 5.0), margin: EdgeInsets.only(
top: 5.0),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Texts(TranslationBase.of(context).driveThru, Texts(
fontWeight: FontWeight.w700, TranslationBase.of(
color: Colors.white,), context)
.driveThru,
fontWeight:
FontWeight.w700,
color: Colors.white,
),
ButtonTheme( ButtonTheme(
shape: RoundedRectangleBorder( shape:
RoundedRectangleBorder(
borderRadius: borderRadius:
BorderRadius.circular(5.0),), BorderRadius
minWidth: MediaQuery.of(context).size.width * 0.15, .circular(
5.0),
),
minWidth: MediaQuery.of(
context)
.size
.width *
0.15,
height: 25.0, height: 25.0,
child: RaisedButton( child: RaisedButton(
color: Colors.red[800], color: Colors
textColor: Colors.white, .red[800],
disabledTextColor: Colors.white, textColor:
disabledColor: new Color(0xFFbcc2c4), Colors.white,
disabledTextColor:
Colors.white,
disabledColor:
new Color(
0xFFbcc2c4),
onPressed: () { onPressed: () {
navigateToCovidDriveThru(); navigateToCovidDriveThru();
}, },
child: Texts( child: Texts(
TranslationBase.of(context).bookNow, TranslationBase.of(
fontWeight: FontWeight.w700, context)
color: Colors.white, .bookNow,
), fontWeight:
FontWeight
.w700,
color: Colors
.white,
),
), ),
), ),
], ],
@ -172,260 +198,274 @@ class _HomePageState extends State<HomePage> {
], ],
), ),
), ),
Container(width: double.infinity, height:projectViewModel.isArabic ?110: 80) Container(
width: double.infinity,
height: projectViewModel.isArabic ? 110 : 80)
], ],
), ),
Positioned( Positioned(
top: 155, top: 155,
left: MediaQuery.of(context).size.width * left: MediaQuery.of(context).size.width *
(MediaQuery.of(context).orientation == (MediaQuery.of(context).orientation ==
Orientation.landscape Orientation.landscape
? 0.02 ? 0.02
: 0.03), : 0.03),
right: MediaQuery.of(context).size.width * right: MediaQuery.of(context).size.width *
(MediaQuery.of(context).orientation == (MediaQuery.of(context).orientation ==
Orientation.landscape Orientation.landscape
? 0.02 ? 0.02
: 0.03), : 0.03),
child: (!model.isLogin) child: (!model.isLogin)
? Container( ? Container(
width: double.infinity, width: double.infinity,
height: 125, height: 125,
decoration: BoxDecoration( decoration: BoxDecoration(
color: HexColor('#A59E9E'), color: HexColor('#A59E9E'),
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, width: 0.5), color: Colors.transparent, width: 0.5),
borderRadius: borderRadius:
BorderRadius.all(Radius.circular(9)), BorderRadius.all(Radius.circular(9)),
image: DecorationImage( image: DecorationImage(
image: ExactAssetImage( image: ExactAssetImage(
'assets/images/bg_graphic.png'), 'assets/images/bg_graphic.png'),
fit: BoxFit.cover)), fit: BoxFit.cover)),
child: Container( child: Container(
margin: EdgeInsets.all(5), margin: EdgeInsets.all(5),
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
SizedBox( SizedBox(
height: 2, height: 2,
),
Texts(
TranslationBase.of(context).myMedicalFile,
color: Colors.black87,
fontWeight: FontWeight.w700,
fontSize: 23,
),
Texts(
TranslationBase.of(context)
.myMedicalFileSubTitle,
color: Colors.black,
fontSize: 16,
),
Align(
alignment: projectViewModel.isArabic
? Alignment.bottomLeft
: Alignment.bottomRight,
child: InkWell(
onTap: () {
widget.goToMyProfile();
},
child: Container(
margin: EdgeInsets.only(left: 15,right: 15),
width: 90,
height: 30,
decoration: BoxDecoration(
color: HexColor('#D81A2E'),
shape: BoxShape.rectangle,
border: Border.all(
color: Colors.transparent,
width: 0.5),
borderRadius: BorderRadius.all(
Radius.circular(0)),
), ),
child: Center( Texts(
child: Texts( TranslationBase.of(context).myMedicalFile,
TranslationBase.of(context).viewMore, color: Colors.black87,
color: Colors.white, fontWeight: FontWeight.w700,
fontWeight: FontWeight.w700, fontSize: 23,
fontSize: 12,
),
), ),
), Texts(
), TranslationBase.of(context)
) .myMedicalFileSubTitle,
], color: Colors.black,
), fontSize: 16,
), ),
) Align(
: Container( alignment: projectViewModel.isArabic
width: double.infinity, ? Alignment.bottomLeft
height: projectViewModel.isArabic ? 160:130, : Alignment.bottomRight,
decoration: BoxDecoration( child: InkWell(
color: HexColor('#A59E9E'), onTap: () {
shape: BoxShape.rectangle, widget.goToMyProfile();
border: Border.all( },
color: Colors.transparent, width: 0.5), child: Container(
borderRadius: margin: EdgeInsets.only(
BorderRadius.all(Radius.circular(9)), left: 15, right: 15),
image: DecorationImage( width: 90,
image: ExactAssetImage( height: 30,
'assets/images/bg_graphic.png'), decoration: BoxDecoration(
fit: BoxFit.cover), color: HexColor('#D81A2E'),
), shape: BoxShape.rectangle,
child: Container( border: Border.all(
margin: EdgeInsets.all(5), color: Colors.transparent,
child: Column( width: 0.5),
children: <Widget>[ borderRadius: BorderRadius.all(
Row( Radius.circular(0)),
children: <Widget>[
if (projectViewModel.user != null && model.isLogin)
Expanded(
child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: <Widget>[
SizedBox(
height: 8,
), ),
Row( child: Center(
children: [ child: InkWell(
Texts( // onTap: () {
model.user.firstName + // openBrowser();
" " + // },
model.user.lastName, child: Texts(
color: Colors.grey[100], TranslationBase.of(context)
bold: true, .viewMore,
fontSize: 15, color: Colors.white,
fontWeight: FontWeight.w700,
fontSize: 12,
), ),
Container( ),
margin: EdgeInsets.fromLTRB(8.0, 0.0, 8.0, 0.0),
child: SvgPicture.asset(
"assets/images/new-design/verification_check.svg"),
),
],
),
Texts(
'${model.user.patientID}',
color: Colors.white,
fontSize: 14,
),
SizedBox(
height: 5,
),
Texts(
'${DateUtil.getMonthDayYearDateFormatted(model.user.dateofBirthDataTime)} ,${model.user.genderDescription} ${model.user.ageDesc}',
color: Colors.grey[100],
fontWeight: FontWeight.normal,
fontSize: 14,
), ),
],
),
),
InkWell(
onTap: () {
widget.goToMyProfile();
},
child: Container(
margin: EdgeInsets.all(2),
width: 90,
height: 30,
decoration: BoxDecoration(
color: HexColor('#D81A2E'),
shape: BoxShape.rectangle,
border: Border.all(
color: Colors.transparent,
width: 0.5),
borderRadius: BorderRadius.all(
Radius.circular(5),
), ),
), ),
child: Center( )
child: Texts( ],
TranslationBase.of(context) ),
.viewMore,
color: Colors.white,
fontSize: 12,
),
),
),
)
],
), ),
Row( )
children: <Widget>[ : Container(
Expanded( width: double.infinity,
child: Row( height: projectViewModel.isArabic ? 160 : 130,
decoration: BoxDecoration(
color: HexColor('#A59E9E'),
shape: BoxShape.rectangle,
border: Border.all(
color: Colors.transparent, width: 0.5),
borderRadius:
BorderRadius.all(Radius.circular(9)),
image: DecorationImage(
image: ExactAssetImage(
'assets/images/bg_graphic.png'),
fit: BoxFit.cover),
),
child: Container(
margin: EdgeInsets.all(5),
child: Column(
children: <Widget>[
Row(
children: <Widget>[ children: <Widget>[
Image.asset( if (projectViewModel.user != null &&
'assets/images/height_icon.png', model.isLogin)
width: 35, Expanded(
height: 40, child: Column(
), crossAxisAlignment:
Texts( CrossAxisAlignment.start,
"${model.heightCm}", children: <Widget>[
color: Colors.white, SizedBox(
fontSize: 17, height: 8,
),
Row(
children: [
Texts(
model.user.firstName +
" " +
model.user.lastName,
color: Colors.grey[100],
bold: true,
fontSize: 15,
),
Container(
margin:
EdgeInsets.fromLTRB(
8.0,
0.0,
8.0,
0.0),
child: SvgPicture.asset(
"assets/images/new-design/verification_check.svg"),
),
],
),
Texts(
'${model.user.patientID}',
color: Colors.white,
fontSize: 14,
),
SizedBox(
height: 5,
),
Texts(
'${DateUtil.getMonthDayYearDateFormatted(model.user.dateofBirthDataTime)} ,${model.user.genderDescription} ${model.user.ageDesc}',
color: Colors.grey[100],
fontWeight: FontWeight.normal,
fontSize: 14,
),
],
),
),
InkWell(
onTap: () {
widget.goToMyProfile();
},
child: Container(
margin: EdgeInsets.all(2),
width: 90,
height: 30,
decoration: BoxDecoration(
color: HexColor('#D81A2E'),
shape: BoxShape.rectangle,
border: Border.all(
color: Colors.transparent,
width: 0.5),
borderRadius: BorderRadius.all(
Radius.circular(5),
),
),
child: Center(
child: Texts(
TranslationBase.of(context)
.viewMore,
color: Colors.white,
fontSize: 12,
),
),
),
) )
], ],
), ),
), Row(
SizedBox(
width: 3,
),
Expanded(
child: Row(
children: <Widget>[ children: <Widget>[
Image.asset( Expanded(
'assets/images/weight_icon.png', child: Row(
width: 25, children: <Widget>[
height: 40, Image.asset(
'assets/images/height_icon.png',
width: 35,
height: 40,
),
Texts(
"${model.heightCm}",
color: Colors.white,
fontSize: 17,
)
],
),
), ),
Texts( SizedBox(
'${model.weightKg}', width: 3,
color: Colors.white, ),
fontSize: 17 Expanded(
) child: Row(
], children: <Widget>[
), Image.asset(
), 'assets/images/weight_icon.png',
SizedBox( width: 25,
width: 3, height: 40,
), ),
Expanded( Texts('${model.weightKg}',
child: Row( color: Colors.white,
mainAxisAlignment: fontSize: 17)
MainAxisAlignment.spaceBetween, ],
children: <Widget>[ ),
Image.asset( ),
'assets/images/blood_icon.png', SizedBox(
width: 35, width: 3,
height: 40, ),
Expanded(
child: Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: <Widget>[
Image.asset(
'assets/images/blood_icon.png',
width: 35,
height: 40,
),
Texts(
'${model.booldType}',
color: Colors.white,
)
],
),
), ),
Texts(
'${model.booldType}',
color: Colors.white,
)
], ],
), )
), ],
], ),
) ),
], ),
),
),
),
), ),
], ],
), ),
if(projectViewModel.havePrivilege(64)||projectViewModel.havePrivilege(65)||projectViewModel.havePrivilege(67)) if (projectViewModel.havePrivilege(64) ||
projectViewModel.havePrivilege(65) ||
projectViewModel.havePrivilege(67))
Container( Container(
margin: EdgeInsets.only(left: 15, right: 15), margin: EdgeInsets.only(left: 15, right: 15),
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
if(projectViewModel.havePrivilege(64)) if (projectViewModel.havePrivilege(64))
DashboardItem( DashboardItem(
onTap: () { onTap: () {
Navigator.push( Navigator.push(
@ -449,11 +489,13 @@ class _HomePageState extends State<HomePage> {
height: 10, height: 10,
), ),
Texts( Texts(
TranslationBase.of(context).homeHealthCare, TranslationBase.of(context)
.homeHealthCare,
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
fontSize: SizeConfig.textMultiplier * 1.55, fontSize:
SizeConfig.textMultiplier * 1.55,
) )
], ],
), ),
@ -463,10 +505,10 @@ class _HomePageState extends State<HomePage> {
imageName: 'home_healthcare_service_bg.png', imageName: 'home_healthcare_service_bg.png',
opacity: 0.5, opacity: 0.5,
), ),
if(projectViewModel.havePrivilege(65)) if (projectViewModel.havePrivilege(65))
DashboardItem( DashboardItem(
onTap: () => Navigator.push(context, FadePage(page: LandingPagePharmacy())), onTap: () => Navigator.push(
context, FadePage(page: LandingPagePharmacy())),
child: Center( child: Center(
child: Padding( child: Padding(
padding: const EdgeInsets.all(15.0), padding: const EdgeInsets.all(15.0),
@ -481,11 +523,13 @@ class _HomePageState extends State<HomePage> {
height: 20, height: 20,
), ),
Texts( Texts(
TranslationBase.of(context).onlinePharmacy, TranslationBase.of(context)
.onlinePharmacy,
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
fontSize: SizeConfig.textMultiplier * 1.55, fontSize:
SizeConfig.textMultiplier * 1.55,
) )
], ],
), ),
@ -494,9 +538,9 @@ class _HomePageState extends State<HomePage> {
height: MediaQuery.of(context).size.width * 0.4, height: MediaQuery.of(context).size.width * 0.4,
imageName: 'al-habib_onlne_pharmacy_bg.png', imageName: 'al-habib_onlne_pharmacy_bg.png',
), ),
if(projectViewModel.havePrivilege(67)) if (projectViewModel.havePrivilege(67))
DashboardItem( DashboardItem(
onTap: (){ onTap: () {
Navigator.push( Navigator.push(
context, context,
FadePage( FadePage(
@ -515,14 +559,15 @@ class _HomePageState extends State<HomePage> {
height: 50, height: 50,
), ),
SizedBox( SizedBox(
height:10, height: 10,
), ),
Texts( Texts(
TranslationBase.of(context).cmcHeading, TranslationBase.of(context).cmcHeading,
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
fontSize: SizeConfig.textMultiplier * 1.55, fontSize:
SizeConfig.textMultiplier * 1.55,
) )
], ],
), ),
@ -610,7 +655,7 @@ class _HomePageState extends State<HomePage> {
borderRadius: BorderRadius.circular(6.0), borderRadius: BorderRadius.circular(6.0),
color: Colors.white, color: Colors.white,
)), )),
if(projectViewModel.havePrivilege(60)) if (projectViewModel.havePrivilege(60))
Container( Container(
width: MediaQuery.of(context).size.width * 0.29, width: MediaQuery.of(context).size.width * 0.29,
child: InkWell( child: InkWell(
@ -618,8 +663,8 @@ class _HomePageState extends State<HomePage> {
context, context,
FadePage( FadePage(
page: ErOptions( page: ErOptions(
isAppbar: true, isAppbar: true,
))), ))),
child: Center( child: Center(
child: Padding( child: Padding(
padding: const EdgeInsets.all(15.0), padding: const EdgeInsets.all(15.0),
@ -639,7 +684,8 @@ class _HomePageState extends State<HomePage> {
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.black87, color: Colors.black87,
bold: false, bold: false,
fontSize: SizeConfig.textMultiplier * 1.7, fontSize:
SizeConfig.textMultiplier * 1.7,
) )
], ],
), ),
@ -757,24 +803,28 @@ class _HomePageState extends State<HomePage> {
); );
} }
// openBrowser() {
// InAppBrowser browser = new InAppBrowser();
// browser.openUrl(url: "https://uat.hmgwebservices.com/epharmacy/checkout/OpcCompleteRedirectionPaymentClientbyOrder?orderID=ca9dd276-0a20-4924-a768-fafa9a855ef1&&CustomerId=1367368");
// }
navigateToCovidDriveThru() { navigateToCovidDriveThru() {
Navigator.push(context, Navigator.push(context, FadePage(page: CovidDrivethruLocation()));
MaterialPageRoute(builder: (context) => CovidDrivethruLocation()));
} }
} }
class DashboardItem extends StatelessWidget { class DashboardItem extends StatelessWidget {
const DashboardItem( const DashboardItem(
{this.hasBorder = false, {this.hasBorder = false,
this.imageName, this.imageName,
@required this.child, @required this.child,
this.onTap, this.onTap,
Key key, Key key,
this.width, this.width,
this.height, this.height,
this.color, this.color,
this.opacity = 0.4, this.opacity = 0.4,
this.hasColorFilter = true}) this.hasColorFilter = true})
: super(key: key); : super(key: key);
final bool hasBorder; final bool hasBorder;
final String imageName; final String imageName;
@ -792,14 +842,16 @@ class DashboardItem extends StatelessWidget {
onTap: onTap, onTap: onTap,
child: Container( child: Container(
width: width != null ? width : MediaQuery.of(context).size.width * 0.29, width: width != null ? width : MediaQuery.of(context).size.width * 0.29,
height: height != null ? height : MediaQuery.of(context).orientation == Orientation.portrait height: height != null
? MediaQuery.of(context).size.height * 0.17 ? height
: MediaQuery.of(context).size.height * 0.35, : MediaQuery.of(context).orientation == Orientation.portrait
? MediaQuery.of(context).size.height * 0.17
: MediaQuery.of(context).size.height * 0.35,
decoration: BoxDecoration( decoration: BoxDecoration(
color: !hasBorder color: !hasBorder
? color != null ? color != null
? color ? color
: HexColor('#050705').withOpacity(opacity) : HexColor('#050705').withOpacity(opacity)
: Colors.white, : Colors.white,
borderRadius: BorderRadius.circular(6.0), borderRadius: BorderRadius.circular(6.0),
border: hasBorder border: hasBorder
@ -807,11 +859,13 @@ class DashboardItem extends StatelessWidget {
: Border.all(width: 0.0, color: Colors.transparent), : Border.all(width: 0.0, color: Colors.transparent),
image: imageName != null image: imageName != null
? DecorationImage( ? DecorationImage(
image: ExactAssetImage('assets/images/$imageName'), image: ExactAssetImage('assets/images/$imageName'),
fit: BoxFit.cover, fit: BoxFit.cover,
colorFilter: hasColorFilter ? new ColorFilter.mode( colorFilter: hasColorFilter
Colors.black.withOpacity(0.2), BlendMode.dstIn) : null, ? new ColorFilter.mode(
) Colors.black.withOpacity(0.2), BlendMode.dstIn)
: null,
)
: null, : null,
), ),
child: Center( child: Center(

@ -1,28 +1,22 @@
import 'dart:convert';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/config/config.dart';
import 'package:barcode_scan_fix/barcode_scan.dart'; import 'package:barcode_scan_fix/barcode_scan.dart';
import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/core/model/pharmacies/PharmacyProduct.dart';
import 'package:diplomaticquarterapp/core/service/client/base_app_client.dart'; import 'package:diplomaticquarterapp/core/service/client/base_app_client.dart';
import 'package:diplomaticquarterapp/core/viewModels/pharmacy_categorise_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/parent_categorise_page.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/product_detail.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/product_detail.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/screens/cart-order-page.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/screens/cart-order-page.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/screens/pharmacy_module_page.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/screens/pharmacy_module_page.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/medicine_search_screen.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/wishlist.dart';
import 'package:diplomaticquarterapp/pages/pharmacy/profile/profile.dart'; import 'package:diplomaticquarterapp/pages/pharmacy/profile/profile.dart';
import 'package:diplomaticquarterapp/pages/pharmacy_categorise.dart'; import 'package:diplomaticquarterapp/pages/pharmacy_categorise.dart';
import 'package:diplomaticquarterapp/pages/search_products_page.dart'; import 'package:diplomaticquarterapp/pages/search_products_page.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/core/model/pharmacies/PharmacyProduct.dart';
import 'package:diplomaticquarterapp/widgets/pharmacy/bottom_nav_pharmacy_bar.dart'; import 'package:diplomaticquarterapp/widgets/pharmacy/bottom_nav_pharmacy_bar.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/wishlist.dart';
class LandingPagePharmacy extends StatefulWidget { class LandingPagePharmacy extends StatefulWidget {
@override @override
@ -80,8 +74,7 @@ class _LandingPagePharmacyState extends State<LandingPagePharmacy> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(page: SearchProductsPage()),
builder: (context) => SearchProductsPage()),
); );
}, },
), ),

@ -22,6 +22,7 @@ import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart'; import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -256,9 +257,7 @@ class _clinic_listState extends State<ClinicList> {
}); });
} }
Navigator.push( Navigator.push(context, FadePage(page: PaymentMethod())).then((value) {
context, MaterialPageRoute(builder: (context) => PaymentMethod()))
.then((value) {
print(value); print(value);
if (value != null) { if (value != null) {
openPayment(value, authUser, openPayment(value, authUser,
@ -669,8 +668,8 @@ class _clinic_listState extends State<ClinicList> {
patientDoctorAppointmentListHospital) async { patientDoctorAppointmentListHospital) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => SearchResults( page: SearchResults(
doctorsList: docList, doctorsList: docList,
isLiveCareAppointment: true, isLiveCareAppointment: true,
patientDoctorAppointmentListHospital: patientDoctorAppointmentListHospital:

@ -1,10 +1,14 @@
import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/pages/login/forgot-password.dart';
import 'package:diplomaticquarterapp/pages/login/login.dart';
import 'package:diplomaticquarterapp/pages/login/register.dart';
import 'package:diplomaticquarterapp/routes.dart'; import 'package:diplomaticquarterapp/routes.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart';
import 'package:diplomaticquarterapp/widgets/card/rounded_container.dart'; import 'package:diplomaticquarterapp/widgets/card/rounded_container.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart'; import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -50,8 +54,8 @@ class LoginType extends StatelessWidget {
child: InkWell( child: InkWell(
onTap: () => { onTap: () => {
LoginType.loginType = 1, LoginType.loginType = 1,
Navigator.of(context) Navigator.of(context)
.pushNamed(LOGIN_PAGE) .push(FadePage(page: Login())),
}, },
child: RoundedContainer( child: RoundedContainer(
borderColor: Colors.grey, borderColor: Colors.grey,
@ -90,8 +94,8 @@ class LoginType extends StatelessWidget {
child: InkWell( child: InkWell(
onTap: () => { onTap: () => {
LoginType.loginType = 2, LoginType.loginType = 2,
Navigator.of(context) Navigator.of(context)
.pushNamed(LOGIN_PAGE) .push(FadePage(page: Login())),
}, },
child: RoundedContainer( child: RoundedContainer(
borderColor: Colors.grey, borderColor: Colors.grey,
@ -136,8 +140,8 @@ class LoginType extends StatelessWidget {
Center( Center(
child: InkWell( child: InkWell(
onTap: () => { onTap: () => {
Navigator.of(context) Navigator.of(context)
.pushNamed(FORGOT_PASSWORD) .push(FadePage(page: ForgotPassword())),
}, },
child: AppText( child: AppText(
TranslationBase.of(context) TranslationBase.of(context)
@ -166,9 +170,8 @@ class LoginType extends StatelessWidget {
child: DefaultButton( child: DefaultButton(
TranslationBase.of(context).registerNow, TranslationBase.of(context).registerNow,
() => { () => {
Navigator.of(context).pushNamed( Navigator.of(context)
REGISTER, .push(FadePage(page: Register())),
)
}, },
)), )),
], ],

@ -9,9 +9,10 @@ import 'package:diplomaticquarterapp/models/Appointments/toDoCountProviderModel.
import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_response.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_response.dart';
import 'package:diplomaticquarterapp/models/Authentication/check_paitent_authentication_req.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_paitent_authentication_req.dart';
import 'package:diplomaticquarterapp/pages/landing/landing_page.dart'; import 'package:diplomaticquarterapp/pages/landing/landing_page.dart';
import 'package:diplomaticquarterapp/pages/login/confirm-login.dart';
import 'package:diplomaticquarterapp/pages/login/login-type.dart'; import 'package:diplomaticquarterapp/pages/login/login-type.dart';
import 'package:diplomaticquarterapp/pages/login/register.dart';
import 'package:diplomaticquarterapp/pages/rateAppointment/rate_appointment_doctor.dart'; import 'package:diplomaticquarterapp/pages/rateAppointment/rate_appointment_doctor.dart';
import 'package:diplomaticquarterapp/routes.dart';
import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart'; import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart';
import 'package:diplomaticquarterapp/services/clinic_services/get_clinic_service.dart'; import 'package:diplomaticquarterapp/services/clinic_services/get_clinic_service.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
@ -24,8 +25,6 @@ import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/input/text_field.dart'; import 'package:diplomaticquarterapp/widgets/input/text_field.dart';
import 'package:diplomaticquarterapp/widgets/mobile-no/mobile_no.dart'; import 'package:diplomaticquarterapp/widgets/mobile-no/mobile_no.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -48,10 +47,13 @@ class _Login extends State<Login> {
final authService = new AuthProvider(); final authService = new AuthProvider();
var sharedPref = new AppSharedPreferences(); var sharedPref = new AppSharedPreferences();
bool isLoading = false; bool isLoading = false;
AppointmentRateViewModel appointmentRateViewModel = locator<AppointmentRateViewModel>(); AppointmentRateViewModel appointmentRateViewModel =
PharmacyModuleViewModel pharmacyModuleViewModel = locator<PharmacyModuleViewModel>(); locator<AppointmentRateViewModel>();
PharmacyModuleViewModel pharmacyModuleViewModel =
locator<PharmacyModuleViewModel>();
AuthenticatedUserObject authenticatedUserObject = locator<AuthenticatedUserObject>(); AuthenticatedUserObject authenticatedUserObject =
locator<AuthenticatedUserObject>();
ProjectViewModel projectViewModel; ProjectViewModel projectViewModel;
ToDoCountProviderModel toDoProvider; ToDoCountProviderModel toDoProvider;
@ -97,7 +99,10 @@ class _Login extends State<Login> {
children: <Widget>[ children: <Widget>[
Directionality( Directionality(
textDirection: TextDirection.ltr, textDirection: TextDirection.ltr,
child: MobileNo(onNumberChange: (value) => {mobileNo = value, validateForm()}, onCountryChange: (value) => countryCode = value)), child: MobileNo(
onNumberChange: (value) =>
{mobileNo = value, validateForm()},
onCountryChange: (value) => countryCode = value)),
Directionality( Directionality(
textDirection: TextDirection.ltr, textDirection: TextDirection.ltr,
child: Container( child: Container(
@ -138,7 +143,9 @@ class _Login extends State<Login> {
child: DefaultButton( child: DefaultButton(
TranslationBase.of(context).login, TranslationBase.of(context).login,
() => {this.startLogin()}, () => {this.startLogin()},
color: isButtonDisabled == true ? Colors.grey : Colors.grey[900], color: isButtonDisabled == true
? Colors.grey
: Colors.grey[900],
textColor: Colors.white, textColor: Colors.white,
)) ))
], ],
@ -159,7 +166,8 @@ class _Login extends State<Login> {
} }
void validateForm() { void validateForm() {
if (util.validateIDBox(nationalIDorFile.text, loginType) == true && util.isSAUDIIDValid(nationalIDorFile.text, loginType) == true) { if (util.validateIDBox(nationalIDorFile.text, loginType) == true &&
util.isSAUDIIDValid(nationalIDorFile.text, loginType) == true) {
setState(() { setState(() {
isButtonDisabled = false; isButtonDisabled = false;
}); });
@ -196,7 +204,7 @@ class _Login extends State<Login> {
sharedPref.setString(LOGIN_TOKEN_ID, value['LogInTokenID']), sharedPref.setString(LOGIN_TOKEN_ID, value['LogInTokenID']),
sharedPref.setObject(REGISTER_DATA_FOR_LOGIIN, request), sharedPref.setObject(REGISTER_DATA_FOR_LOGIIN, request),
GifLoaderDialogUtils.hideDialog(context), GifLoaderDialogUtils.hideDialog(context),
Navigator.of(context).pushNamed(CONFIRM_LOGIN) Navigator.of(context).push(FadePage(page: ConfirmLogin())),
} }
else else
{ {
@ -212,9 +220,7 @@ class _Login extends State<Login> {
cancelText: TranslationBase.of(context).cancel_nocaps, cancelText: TranslationBase.of(context).cancel_nocaps,
okFunction: () => { okFunction: () => {
ConfirmDialog.closeAlertDialog(context), ConfirmDialog.closeAlertDialog(context),
Navigator.of(context).pushNamed( Navigator.of(context).push(FadePage(page: Register())),
REGISTER,
),
}, },
cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)}); cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)});
dialog.showAlertDialog(context); dialog.showAlertDialog(context);
@ -259,9 +265,9 @@ class _Login extends State<Login> {
projectViewModel.isLogin = true; projectViewModel.isLogin = true;
projectViewModel.user = authenticatedUserObject.user; projectViewModel.user = authenticatedUserObject.user;
await pharmacyModuleViewModel.generatePharmacyToken().then((value) async { await pharmacyModuleViewModel.generatePharmacyToken().then((value) async {
if(pharmacyModuleViewModel.error.isNotEmpty) if (pharmacyModuleViewModel.error.isNotEmpty)
await pharmacyModuleViewModel.createUser(); await pharmacyModuleViewModel.createUser();
}); });
appointmentRateViewModel appointmentRateViewModel

@ -3,24 +3,22 @@ import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/models/Authentication/check_user_status_reponse.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_user_status_reponse.dart';
import 'package:diplomaticquarterapp/models/Authentication/check_user_status_req.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_user_status_req.dart';
import 'package:diplomaticquarterapp/models/Authentication/checkpatient_for_registration.dart'; import 'package:diplomaticquarterapp/models/Authentication/checkpatient_for_registration.dart';
import 'package:diplomaticquarterapp/pages/login/confirm-login.dart';
import 'package:diplomaticquarterapp/pages/login/login-type.dart'; import 'package:diplomaticquarterapp/pages/login/login-type.dart';
import 'package:diplomaticquarterapp/routes.dart';
import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart'; import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart';
import 'package:diplomaticquarterapp/widgets/card/rounded_container.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/alert_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/alert_dialog.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/input/text_field.dart'; import 'package:diplomaticquarterapp/widgets/input/text_field.dart';
import 'package:diplomaticquarterapp/widgets/mobile-no/mobile_no.dart'; import 'package:diplomaticquarterapp/widgets/mobile-no/mobile_no.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart'; import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -43,6 +41,7 @@ class _Register extends State<Register> {
final sharedPref = new AppSharedPreferences(); final sharedPref = new AppSharedPreferences();
bool isLoading; bool isLoading;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return AppScaffold( return AppScaffold(
@ -50,39 +49,38 @@ class _Register extends State<Register> {
isShowAppBar: true, isShowAppBar: true,
isShowDecPage: false, isShowDecPage: false,
body: SingleChildScrollView( body: SingleChildScrollView(
child: Container( child: Container(
padding: padding: EdgeInsets.only(top: 10, left: 20, right: 20, bottom: 30),
EdgeInsets.only(top: 10, left: 20, right: 20, bottom: 30), height: SizeConfig.realScreenHeight * .9,
height: SizeConfig.realScreenHeight * .9, width: SizeConfig.realScreenWidth,
width: SizeConfig.realScreenWidth, child: Column(children: <Widget>[
child: Column(children: <Widget>[ Expanded(
Expanded( flex: 1,
flex: 1, child: AppText(
child: AppText( TranslationBase.of(context).enterNationalId,
TranslationBase.of(context).enterNationalId, fontSize: SizeConfig.textMultiplier * 3,
fontSize: SizeConfig.textMultiplier * 3, textAlign: TextAlign.left,
textAlign: TextAlign.left, )),
)), Expanded(
Expanded( flex: 4,
flex: 4, child: Column(
child: Column( mainAxisAlignment: MainAxisAlignment.spaceEvenly,
mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: <Widget>[
children: <Widget>[ MobileNo(
MobileNo( onNumberChange: (value) =>
onNumberChange: (value) => {mobileNo = value, validateForm()},
{mobileNo = value, validateForm()}, onCountryChange: (value) => countryCode = value),
onCountryChange: (value) => countryCode = value), Container(
Container( child: TextFields(
child: TextFields( controller: nationalIDorFile,
controller: nationalIDorFile, onChanged: (value) => validateForm(),
onChanged: (value) => validateForm(), keyboardType: TextInputType.number,
keyboardType: TextInputType.number, prefixIcon: Icon(Icons.chrome_reader_mode,
prefixIcon: Icon(Icons.chrome_reader_mode, color: Color(0xFF40ACC9)),
color: Color(0xFF40ACC9)), padding: EdgeInsets.only(
padding: EdgeInsets.only( top: 20, bottom: 20, left: 10, right: 10),
top: 20, bottom: 20, left: 10, right: 10), hintText: TranslationBase.of(context).nationalID,
hintText: TranslationBase.of(context).nationalID, )),
)),
Row( Row(
children: <Widget>[ children: <Widget>[
Expanded( Expanded(
@ -226,9 +224,7 @@ class _Register extends State<Register> {
cancelText: TranslationBase.of(context).cancel_nocaps, cancelText: TranslationBase.of(context).cancel_nocaps,
okFunction: () => { okFunction: () => {
ConfirmDialog.closeAlertDialog(context), ConfirmDialog.closeAlertDialog(context),
Navigator.of(context).pushNamed( Navigator.of(context).push(FadePage(page: Register())),
REGISTER,
),
}, },
cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)}); cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)});
dialog.showAlertDialog(context); dialog.showAlertDialog(context);
@ -312,16 +308,10 @@ class _Register extends State<Register> {
{ {
result = CheckUserStatusResponse.fromJson(result), result = CheckUserStatusResponse.fromJson(result),
sharedPref.setObject(NHIC_DATA, result), sharedPref.setObject(NHIC_DATA, result),
Navigator.of(context).pushNamed( Navigator.of(context).push(FadePage(page: ConfirmLogin())),
CONFIRM_LOGIN,
)
// Navigator.of(context).pushNamed(
// REGISTER_INFO,
// )
} }
else else
{AppToast.showErrorToast(message: result)} {AppToast.showErrorToast(message: result)}
//this.onRegister();
}); });
} }

@ -1,9 +1,11 @@
import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/pages/login/login-type.dart';
import 'package:diplomaticquarterapp/pages/login/register.dart';
import 'package:diplomaticquarterapp/routes.dart'; import 'package:diplomaticquarterapp/routes.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:eva_icons_flutter/eva_icons_flutter.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -72,9 +74,8 @@ class _WelcomeLogin extends State<WelcomeLogin> {
child: DefaultButton( child: DefaultButton(
TranslationBase.of(context).yes, TranslationBase.of(context).yes,
() => { () => {
Navigator.of(context).pushNamed( Navigator.of(context)
LOGIN_TYPE, .push(FadePage(page: LoginType())),
),
}, },
color: Color(0xFFc5272c), color: Color(0xFFc5272c),
textColor: Colors.white, textColor: Colors.white,
@ -87,9 +88,8 @@ class _WelcomeLogin extends State<WelcomeLogin> {
child: DefaultButton( child: DefaultButton(
TranslationBase.of(context).no, TranslationBase.of(context).no,
() => { () => {
Navigator.of(context).pushNamed( Navigator.of(context)
REGISTER, .push(FadePage(page: Register())),
)
}, },
)) ))
], ],

@ -214,14 +214,14 @@ class _AdvancePaymentPageState extends State<AdvancePaymentPage> {
SizedBox( SizedBox(
height: 12, height: 12,
), ),
if(model.user!=null) if (model.user != null)
NewTextFields( NewTextFields(
hintText: TranslationBase.of(context).depositorEmail, hintText: TranslationBase.of(context).depositorEmail,
initialValue: model.user.emailAddress, initialValue: model.user.emailAddress,
onChanged: (value) { onChanged: (value) {
email = value; email = value;
}, },
), ),
SizedBox( SizedBox(
height: 12, height: 12,
), ),
@ -243,7 +243,9 @@ class _AdvancePaymentPageState extends State<AdvancePaymentPage> {
child: SecondaryButton( child: SecondaryButton(
textColor: Colors.white, textColor: Colors.white,
label: TranslationBase.of(context).submit, label: TranslationBase.of(context).submit,
disabled: amount.isEmpty || _fileTextController.text.isEmpty || _selectedHospital == null, disabled: amount.isEmpty ||
_fileTextController.text.isEmpty ||
_selectedHospital == null,
onTap: () { onTap: () {
var mobileNum; var mobileNum;
var patientName; var patientName;
@ -278,10 +280,8 @@ class _AdvancePaymentPageState extends State<AdvancePaymentPage> {
if (model.state != ViewState.Error && if (model.state != ViewState.Error &&
model.state != ViewState.ErrorLocal) { model.state != ViewState.ErrorLocal) {
Utils.hideKeyboard(context); Utils.hideKeyboard(context);
Navigator.push( Navigator.push(context, FadePage(page: PaymentMethod()))
context, .then(
MaterialPageRoute(
builder: (context) => PaymentMethod())).then(
(value) { (value) {
Navigator.push( Navigator.push(
context, context,

@ -1,4 +1,6 @@
import 'dart:async'; import 'dart:async';
import 'package:diplomaticquarterapp/core/model/prescriptions/Prescriptions.dart';
import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report.dart';
import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report_enh.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report_enh.dart';
import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/customer_addresses_service.dart'; import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/customer_addresses_service.dart';
@ -11,12 +13,12 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/select_location_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/select_location_dialog.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:geolocator/geolocator.dart'; import 'package:geolocator/geolocator.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:diplomaticquarterapp/core/model/prescriptions/Prescriptions.dart';
import 'PrescriptionOrderOverveiw.dart'; import 'PrescriptionOrderOverveiw.dart';
@ -24,7 +26,12 @@ class PrescriptionDeliveryAddressPage extends StatefulWidget {
final Prescriptions prescriptions; final Prescriptions prescriptions;
final List<PrescriptionReport> prescriptionReportList; final List<PrescriptionReport> prescriptionReportList;
final List<PrescriptionReportEnh> prescriptionReportEnhList; final List<PrescriptionReportEnh> prescriptionReportEnhList;
const PrescriptionDeliveryAddressPage({Key key, this.prescriptions, this.prescriptionReportList, this.prescriptionReportEnhList})
const PrescriptionDeliveryAddressPage(
{Key key,
this.prescriptions,
this.prescriptionReportList,
this.prescriptionReportEnhList})
: super(key: key); : super(key: key);
@override @override
@ -37,7 +44,7 @@ class _PrescriptionDeliveryAddressPageState
AddressInfo _selectedAddress; AddressInfo _selectedAddress;
Completer<GoogleMapController> _controller = Completer(); Completer<GoogleMapController> _controller = Completer();
CameraPosition _kGooglePlex = CameraPosition( CameraPosition _kGooglePlex = CameraPosition(
target: LatLng(24.665011045779107, 46.73502189439707), target: LatLng(24.665011045779107, 46.73502189439707),
zoom: 14.4746, zoom: 14.4746,
); );
@ -46,10 +53,11 @@ class _PrescriptionDeliveryAddressPageState
double longitude = 0; double longitude = 0;
@override @override
void initState(){ void initState() {
super.initState(); super.initState();
_getCurrentLocation(); _getCurrentLocation();
} }
_getCurrentLocation() async { _getCurrentLocation() async {
await Geolocator.getLastKnownPosition().then((value) { await Geolocator.getLastKnownPosition().then((value) {
latitude = value.latitude; latitude = value.latitude;
@ -63,6 +71,7 @@ class _PrescriptionDeliveryAddressPageState
latitude = 46.73502189439707; latitude = 46.73502189439707;
}); });
} }
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
ProjectViewModel projectViewModel = Provider.of(context); ProjectViewModel projectViewModel = Provider.of(context);
@ -73,7 +82,7 @@ class _PrescriptionDeliveryAddressPageState
appBarTitle: TranslationBase.of(context).shippingAddresss, appBarTitle: TranslationBase.of(context).shippingAddresss,
baseViewModel: model, baseViewModel: model,
body: Container( body: Container(
height: MediaQuery.of(context).size.height* 0.65, height: MediaQuery.of(context).size.height * 0.65,
child: SingleChildScrollView( child: SingleChildScrollView(
physics: BouncingScrollPhysics(), physics: BouncingScrollPhysics(),
child: Column( child: Column(
@ -131,40 +140,54 @@ class _PrescriptionDeliveryAddressPageState
), ),
) )
: Padding( : Padding(
padding: const EdgeInsets.all(8.0), padding: const EdgeInsets.all(8.0),
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Padding( Padding(
padding: const EdgeInsets.all(8.0), padding: const EdgeInsets.all(8.0),
child: Container( child: Container(
decoration: BoxDecoration( decoration: BoxDecoration(
border: Border.all(color: Colors.grey) border: Border.all(color: Colors.grey)),
),
height: 200, height: 200,
child: GoogleMap( child: GoogleMap(
mapType: MapType.normal, mapType: MapType.normal,
markers: markers, markers: markers,
initialCameraPosition: _kGooglePlex, initialCameraPosition: _kGooglePlex,
onMapCreated: (GoogleMapController controller) { onMapCreated:
(GoogleMapController controller) {
_controller.complete(controller); _controller.complete(controller);
}, },
), ),
), ),
), ),
SizedBox(height: 10,), SizedBox(
Texts(TranslationBase.of(context).shippingAddresss), height: 10,
SizedBox(height: 10,), ),
Texts('${model.user.firstName} ${model.user.lastName}'), Texts(
SizedBox(height: 10,), TranslationBase.of(context).shippingAddresss),
SizedBox(
height: 10,
),
Texts(
'${model.user.firstName} ${model.user.lastName}'),
SizedBox(
height: 10,
),
Texts(_selectedAddress.address1), Texts(_selectedAddress.address1),
SizedBox(height: 10,), SizedBox(
height: 10,
),
Texts(_selectedAddress.address2), Texts(_selectedAddress.address2),
SizedBox(height: 10,), SizedBox(
Texts(_selectedAddress.city+" "+_selectedAddress.country), height: 10,
),
Texts(_selectedAddress.city +
" " +
_selectedAddress.country),
], ],
), ),
) )
], ],
), ),
), ),
@ -179,33 +202,43 @@ class _PrescriptionDeliveryAddressPageState
Container( Container(
width: MediaQuery.of(context).size.width * 0.8, width: MediaQuery.of(context).size.width * 0.8,
child: Button( child: Button(
label: TranslationBase.of(context).addNewAddress.toUpperCase(), label:
TranslationBase.of(context).addNewAddress.toUpperCase(),
onTap: () { onTap: () {
Navigator.push(context, MaterialPageRoute(builder: (BuildContext context) => LocationPage(latitude: latitude, longitude: longitude,),), Navigator.push(
context,
FadePage(
page: LocationPage(
latitude: latitude,
longitude: longitude,
)),
); );
}, },
), ),
), ),
Container( Container(
width: MediaQuery.of(context).size.width * 0.8, width: MediaQuery.of(context).size.width * 0.8,
child: Button( child: Button(
label: TranslationBase.of(context).continues.toUpperCase(), label:
disabled: _selectedAddress==null, TranslationBase.of(context).continues.toUpperCase(),
backgroundColor: _selectedAddress==null?Colors.green[300]: Colors.green[700], disabled: _selectedAddress == null,
backgroundColor: _selectedAddress == null
? Colors.green[300]
: Colors.green[700],
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (BuildContext context) => page: PrescriptionOrderOverview(
PrescriptionOrderOverview(latitude: latitude, latitude: latitude,
longitude: longitude, longitude: longitude,
prescriptionReportEnhList: widget.prescriptionReportEnhList, prescriptionReportEnhList:
prescriptionReportList:widget.prescriptionReportList, widget.prescriptionReportEnhList,
prescriptions: widget.prescriptions, prescriptionReportList:
selectedAddress: _selectedAddress, widget.prescriptionReportList,
), prescriptions: widget.prescriptions,
selectedAddress: _selectedAddress,
),
), ),
); );
}, },
@ -216,8 +249,9 @@ class _PrescriptionDeliveryAddressPageState
); );
} }
void confirmSelectLocationDialog(
void confirmSelectLocationDialog(List<AddressInfo> addresses,) { List<AddressInfo> addresses,
) {
showDialog( showDialog(
context: context, context: context,
child: SelectLocationDialog( child: SelectLocationDialog(
@ -248,6 +282,7 @@ class _PrescriptionDeliveryAddressPageState
), ),
); );
} }
String getAddressName() { String getAddressName() {
if (_selectedAddress != null) if (_selectedAddress != null)
return _selectedAddress.address1; return _selectedAddress.address1;

@ -7,20 +7,19 @@ import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/StarRating.dart'; import 'package:diplomaticquarterapp/widgets/others/StarRating.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_pharmacy_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_pharmacy_widget.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/others/network_base_view.dart'; import 'package:diplomaticquarterapp/widgets/others/network_base_view.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:giffy_dialog/giffy_dialog.dart';
import 'base/base_view.dart'; import 'base/base_view.dart';
import 'final_products_page.dart';
class ParentCategorisePage extends StatefulWidget { class ParentCategorisePage extends StatefulWidget {
String id; String id;
String titleName; String titleName;
ParentCategorisePage({this.id, this.titleName}); ParentCategorisePage({this.id, this.titleName});
@override @override
_ParentCategorisePageState createState() => _ParentCategorisePageState createState() =>
_ParentCategorisePageState(id: id, titleName: titleName); _ParentCategorisePageState(id: id, titleName: titleName);
@ -29,7 +28,9 @@ class ParentCategorisePage extends StatefulWidget {
class _ParentCategorisePageState extends State<ParentCategorisePage> { class _ParentCategorisePageState extends State<ParentCategorisePage> {
String id; String id;
String titleName; String titleName;
_ParentCategorisePageState({this.id, this.titleName}); _ParentCategorisePageState({this.id, this.titleName});
Map<String, bool> values = {'huusam': false, 'ali': false, 'noor': false}; Map<String, bool> values = {'huusam': false, 'ali': false, 'noor': false};
bool checkedBrands = false; bool checkedBrands = false;
bool checkedCategorise = false; bool checkedCategorise = false;
@ -41,6 +42,7 @@ class _ParentCategorisePageState extends State<ParentCategorisePage> {
color: Colors.blue, color: Colors.blue,
size: 29.0, size: 29.0,
); );
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
ProjectViewModel projectViewModel = Provider.of(context); ProjectViewModel projectViewModel = Provider.of(context);
@ -154,14 +156,20 @@ class _ParentCategorisePageState extends State<ParentCategorisePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: page:
(context) => SubCategorisePage(
SubCategorisePage( title: model
title: model.categoriseParent[index].name, .categoriseParent[
id: model.categoriseParent[index].id, index]
parentId: id, .name,
)), id: model
.categoriseParent[
index]
.id,
parentId:
id,
)),
); );
}, },
), ),
@ -257,19 +265,15 @@ class _ParentCategorisePageState extends State<ParentCategorisePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: SubCategorisePage(
SubCategorisePage( title: model
title: model .categoriseParent[index]
.categoriseParent[ .name,
index] id: model
.name, .categoriseParent[index].id,
id: model parentId: id,
.categoriseParent[ )),
index]
.id,
parentId: id,
)),
); );
print(id); print(id);
}, },

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:diplomaticquarterapp/core/model/pharmacies/pharmacies_model.dart'; import 'package:diplomaticquarterapp/core/model/pharmacies/pharmacies_model.dart';
@ -121,8 +122,8 @@ class MedicineSearch extends StatelessWidget {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => PharmaciesList( page: PharmaciesList(
medicineID: medicineID:
model.pharmacy[index].itemID, model.pharmacy[index].itemID,
imageURL: model imageURL: model

@ -1,14 +1,12 @@
import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/pages/login/register-info.dart'; import 'package:diplomaticquarterapp/core/viewModels/pharmacyModule/brand_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/search_brands_page.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/search_brands_page.dart';
import 'package:diplomaticquarterapp/pages/search_products_page.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/material.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:diplomaticquarterapp/core/viewModels/pharmacyModule/brand_view_model.dart'; import 'package:flutter/material.dart';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
class ProductBrandsPage extends StatefulWidget { class ProductBrandsPage extends StatefulWidget {
@override @override
@ -16,8 +14,8 @@ class ProductBrandsPage extends StatefulWidget {
} }
var languageID; var languageID;
class _ProductBrandsPageState extends State<ProductBrandsPage> {
class _ProductBrandsPageState extends State<ProductBrandsPage> {
@override @override
void initState() { void initState() {
super.initState(); super.initState();
@ -38,18 +36,11 @@ class _ProductBrandsPageState extends State<ProductBrandsPage> {
children: [ children: [
Container( Container(
color: Colors.white, color: Colors.white,
alignment: languageID == 'ar'? alignment:
Alignment.topRight : languageID == 'ar' ? Alignment.topRight : Alignment.topLeft,
Alignment.topLeft, padding: languageID == 'ar'
padding: languageID == 'ar' ? ? EdgeInsets.only(right: 10.0, top: 10.0)
EdgeInsets.only( : EdgeInsets.only(left: 10.0, top: 10.0),
right: 10.0,
top: 10.0
):
EdgeInsets.only(
left: 10.0,
top: 10.0
),
child: Text( child: Text(
TranslationBase.of(context).topBrands, TranslationBase.of(context).topBrands,
style: TextStyle( style: TextStyle(
@ -93,8 +84,7 @@ class _ProductBrandsPageState extends State<ProductBrandsPage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(page: SearchBrandsPage()),
builder: (context) => SearchBrandsPage()),
); );
}, },
), ),
@ -116,7 +106,9 @@ class _ProductBrandsPageState extends State<ProductBrandsPage> {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
children: [ children: [
languageID == 'ar' ? Text(model.brandsListList[index].namen):Text(model.brandsListList[index].name), languageID == 'ar'
? Text(model.brandsListList[index].namen)
: Text(model.brandsListList[index].name),
SizedBox( SizedBox(
height: 3, height: 3,
), ),
@ -124,7 +116,7 @@ class _ProductBrandsPageState extends State<ProductBrandsPage> {
], ],
), ),
), ),
onTap: (){ onTap: () {
print("ENAD"); print("ENAD");
}, },
); );
@ -138,7 +130,6 @@ class _ProductBrandsPageState extends State<ProductBrandsPage> {
} }
} }
topBrand() { topBrand() {
return BaseView<BrandsViewModel>( return BaseView<BrandsViewModel>(
onModelReady: (model) => model.getTopBrandsData(), onModelReady: (model) => model.getTopBrandsData(),
@ -156,30 +147,32 @@ topBrand() {
child: Container( child: Container(
// padding: EdgeInsets.only(left: 5), // padding: EdgeInsets.only(left: 5),
child: Container( child: Container(
padding: EdgeInsets.symmetric( padding: EdgeInsets.symmetric(
horizontal: 10.0, vertical: 10.0), horizontal: 10.0, vertical: 10.0),
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
border: Border( border: Border(
top: BorderSide(width: 1.0, color: Colors.grey), top: BorderSide(width: 1.0, color: Colors.grey),
left: BorderSide(width: 1.0, color: Colors.grey), left: BorderSide(width: 1.0, color: Colors.grey),
right: BorderSide(width: 1.0, color: Colors.grey), right: BorderSide(width: 1.0, color: Colors.grey),
bottom: BorderSide(width: 1.0, color: Colors.grey), bottom:
BorderSide(width: 1.0, color: Colors.grey),
),
color: Colors.white,
), ),
color: Colors.white, child: model.topBrandsListList[index].image != null
), ? Image.network(
child: model.topBrandsListList[index].image != null ?Image.network( model.topBrandsListList[index].image.src,
model.topBrandsListList[index].image.src, fit: BoxFit.cover,
fit: BoxFit.cover, width: 60,
width: 60, height: 40,
height: 40, )
): Text(model.topBrandsListList[index].name) : Text(model.topBrandsListList[index].name)),
),
), ),
), ),
), ),
), ),
onTap: (){ onTap: () {
print("ENAD"); print("ENAD");
}, },
), ),

@ -5,6 +5,7 @@ import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/login/welcome.dart'; import 'package:diplomaticquarterapp/pages/login/welcome.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scafold_detail_page.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scafold_detail_page.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
@ -1452,8 +1453,8 @@ class _footerWidgetState extends State<footerWidget> {
addToCartFunction(price, widget.item.id); addToCartFunction(price, widget.item.id);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(page:
builder: (context) => CartOrderPage()), CartOrderPage()),
); );
}, },
child: Container( child: Container(

@ -4,7 +4,7 @@ import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/landing/home_page.dart'; import 'package:diplomaticquarterapp/pages/landing/home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart';
import 'package:diplomaticquarterapp/pages/offers_categorise_page.dart'; import 'package:diplomaticquarterapp/pages/offers_categorise_page.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/screens/cart-order-page.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/product-brands.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/screens/lakum-main-page.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/screens/lakum-main-page.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/widgets/BannerPager.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/widgets/BannerPager.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/widgets/ProductTileItem.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/widgets/ProductTileItem.dart';
@ -16,14 +16,10 @@ import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/product-brands.dart';
import '../../final_products_page.dart'; import '../../final_products_page.dart';
import 'lacum-activitaion-vida-page.dart'; import 'lacum-activitaion-vida-page.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart';
class PharmacyPage extends StatelessWidget { class PharmacyPage extends StatelessWidget {
@override @override
@ -69,10 +65,7 @@ class PharmacyPage extends StatelessWidget {
hPadding: 4, hPadding: 4,
handler: () { handler: () {
Navigator.push( Navigator.push(
context, context, FadePage(page: HomePrescriptionsPage()));
MaterialPageRoute(
builder: (context) =>
HomePrescriptionsPage()));
}, },
), ),
], ],
@ -296,7 +289,6 @@ class PharmacyPage extends StatelessWidget {
itemCount: model.bestSellerProduct.length, itemCount: model.bestSellerProduct.length,
), ),
), ),
Container( Container(
margin: EdgeInsets.fromLTRB(10, 10, 10, 0), margin: EdgeInsets.fromLTRB(10, 10, 10, 0),
child: Row( child: Row(
@ -349,8 +341,8 @@ class PharmacyPage extends StatelessWidget {
handler: () { handler: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => FinalProductsPage( page: FinalProductsPage(
id: "", id: "",
productType: 3, productType: 3,
), ),
@ -391,8 +383,8 @@ class PharmacyPage extends StatelessWidget {
handler: () => { handler: () => {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => FinalProductsPage( page: FinalProductsPage(
id: "", id: "",
productType: 4, productType: 4,
), ),

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/core/model/pharmacies/Manufacturer.dart'; import 'package:diplomaticquarterapp/core/model/pharmacies/Manufacturer.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import '../../final_products_page.dart'; import '../../final_products_page.dart';
@ -14,9 +15,10 @@ class ManufacturerItem extends StatelessWidget {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => FinalProductsPage( page: FinalProductsPage(
id: item.id, productType: 2, id: item.id,
productType: 2,
), ),
), ),
); );

File diff suppressed because it is too large Load Diff

@ -1,18 +1,19 @@
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/model/pharmacies/order_detail.dart'; import 'package:diplomaticquarterapp/core/model/pharmacies/order_detail.dart';
import 'package:diplomaticquarterapp/core/model/pharmacies/orders_model.dart'; import 'package:diplomaticquarterapp/core/model/pharmacies/orders_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/pharmacyModule/order_model_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/pharmacyModule/order_model_view_model.dart';
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/pharmacy/order/Order.dart'; import 'package:diplomaticquarterapp/pages/pharmacy/order/Order.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets//pharmacy/product_tile.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart'; import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:diplomaticquarterapp/widgets//pharmacy/product_tile.dart';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:flutter/src/widgets/image.dart' as flutterImage; import 'package:flutter/src/widgets/image.dart' as flutterImage;
import 'package:flutter_svg/flutter_svg.dart';
dynamic languageID; dynamic languageID;
@ -691,8 +692,8 @@ class _OrderDetailsPageState extends State<OrderDetailsPage> {
// Navigator.pop(context); // Navigator.pop(context);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => OrderPage( page: OrderPage(
// customerID: model.ordersList[0].customerId.toString() // customerID: model.ordersList[0].customerId.toString()
customerID: widget.orderModel.customerId.toString())), customerID: widget.orderModel.customerId.toString())),
); );

@ -4,6 +4,7 @@ import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.da
import 'package:diplomaticquarterapp/pages/ContactUs/LiveChat/livechat_page.dart'; import 'package:diplomaticquarterapp/pages/ContactUs/LiveChat/livechat_page.dart';
import 'package:diplomaticquarterapp/pages/ContactUs/findus/findus_page.dart'; import 'package:diplomaticquarterapp/pages/ContactUs/findus/findus_page.dart';
import 'package:diplomaticquarterapp/pages/DrawerPages/family/my-family.dart'; import 'package:diplomaticquarterapp/pages/DrawerPages/family/my-family.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/login/welcome.dart'; import 'package:diplomaticquarterapp/pages/login/welcome.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/compare.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/compare.dart';
@ -14,20 +15,14 @@ import 'package:diplomaticquarterapp/pages/pharmacies/screens/pharmacy-terms-con
import 'package:diplomaticquarterapp/pages/pharmacies/wishlist.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/wishlist.dart';
import 'package:diplomaticquarterapp/pages/pharmacy/order/Order.dart'; import 'package:diplomaticquarterapp/pages/pharmacy/order/Order.dart';
import 'package:diplomaticquarterapp/pages/pharmacy/pharmacyAddresses/PharmacyAddresses.dart'; import 'package:diplomaticquarterapp/pages/pharmacy/pharmacyAddresses/PharmacyAddresses.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/avatar/large_avatar.dart'; import 'package:diplomaticquarterapp/widgets/avatar/large_avatar.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/core/model/pharmacies/order_model.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/my_reviews.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/compare.dart';
dynamic languageID; dynamic languageID;
@ -74,7 +69,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
if (userData == null) { if (userData == null) {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute(builder: (context) => WelcomeLogin()), FadePage(page: WelcomeLogin()),
); );
} }
} }
@ -165,8 +160,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
} }
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => OrderPage( page: OrderPage(
customerID: customerId))); customerID: customerId)));
}, },
child: Column( child: Column(
@ -194,11 +189,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
Expanded( Expanded(
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context,
context, FadePage(page: LakumMainPage()));
MaterialPageRoute(
builder: (context) =>
LakumMainPage()));
}, },
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
@ -223,11 +215,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
Expanded( Expanded(
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context,
context, FadePage(page: WishlistPage()));
MaterialPageRoute(
builder: (context) =>
WishlistPage()));
}, },
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
@ -253,11 +242,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
Expanded( Expanded(
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context,
context, FadePage(page: MyReviewsPage()));
MaterialPageRoute(
builder: (context) =>
MyReviewsPage()));
}, },
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
@ -317,9 +303,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: HomePrescriptionsPage()));
HomePrescriptionsPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -350,11 +335,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context,
context, FadePage(page: ComparePage()));
MaterialPageRoute(
builder: (context) =>
ComparePage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -385,9 +367,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: HomePrescriptionsPage()));
HomePrescriptionsPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -419,10 +400,7 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context, FadePage(page: MyFamily()));
MaterialPageRoute(
builder: (context) =>
MyFamily()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -454,9 +432,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: PharmacyAddressesPage()));
PharmacyAddressesPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -489,9 +466,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: PharmacyTermsConditions()));
PharmacyTermsConditions()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -524,14 +500,13 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: LakumTermsConditions(
LakumTermsConditions( this.identificationNo,
this.identificationNo, this.firstName,
this.firstName, this.lastName,
this.lastName, this.mobileNo,
this.mobileNo, this.languageId)));
this.languageId)));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -591,11 +566,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context,
context, FadePage(page: LiveChatPage()));
MaterialPageRoute(
builder: (context) =>
LiveChatPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[
@ -623,11 +595,8 @@ class _ProfilePageState extends State<PharmacyProfilePage> {
), ),
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(context,
context, FadePage(page: FindUsPage()));
MaterialPageRoute(
builder: (context) =>
FindUsPage()));
}, },
child: Row( child: Row(
children: <Widget>[ children: <Widget>[

@ -1,7 +1,6 @@
import 'dart:convert'; import 'dart:convert';
import 'package:barcode_scan_fix/barcode_scan.dart'; import 'package:barcode_scan_fix/barcode_scan.dart';
import 'package:charts_flutter/flutter.dart';
import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/viewModels/pharmacy_categorise_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/pharmacy_categorise_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
@ -11,8 +10,10 @@ import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'base/base_view.dart'; import 'base/base_view.dart';
import 'final_products_page.dart'; import 'final_products_page.dart';
@ -29,7 +30,9 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
ProjectViewModel projectViewModel = Provider.of(context); ProjectViewModel projectViewModel = Provider.of(context);
return BaseView<PharmacyCategoriseViewModel>( return BaseView<PharmacyCategoriseViewModel>(
onModelReady: (model) => model.getCategorise(), onModelReady: (model) => model.getCategorise(),
builder: (BuildContext context, PharmacyCategoriseViewModel model, Widget child) => AppScaffold( builder: (BuildContext context, PharmacyCategoriseViewModel model,
Widget child) =>
AppScaffold(
isShowDecPage: false, isShowDecPage: false,
baseViewModel: model, baseViewModel: model,
body: Column( body: Column(
@ -57,7 +60,9 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
child: Padding( child: Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0), padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Texts( child: Texts(
projectViewModel.isArabic ? model.categorise[index].namen : model.categorise[index].name, projectViewModel.isArabic
? model.categorise[index].namen
: model.categorise[index].name,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
), ),
), ),
@ -65,8 +70,8 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
onTap: () => { onTap: () => {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => model.categorise[index].id != '12' page: model.categorise[index].id != '12'
? ParentCategorisePage( ? ParentCategorisePage(
id: model.categorise[index].id, id: model.categorise[index].id,
titleName: model.categorise[index].name, titleName: model.categorise[index].name,
@ -86,7 +91,10 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
height: 140, height: 140,
child: Column( child: Column(
children: [ children: [
Divider(height: 2.0, thickness: 1.0, color: Colors.black12.withOpacity(0.14)), Divider(
height: 2.0,
thickness: 1.0,
color: Colors.black12.withOpacity(0.14)),
SizedBox( SizedBox(
height: 10.0, height: 10.0,
), ),
@ -102,12 +110,16 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
width: 55.0, width: 55.0,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(5.0), borderRadius: BorderRadius.circular(5.0),
color: Colors.green.shade300.withOpacity(0.34), color:
Colors.green.shade300.withOpacity(0.34),
), ),
child: Padding( child: Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0), padding:
EdgeInsets.symmetric(horizontal: 10.0),
child: Texts( child: Texts(
projectViewModel.isArabic ? 'الاكثر مبيعا' : 'Best Sellers', projectViewModel.isArabic
? 'الاكثر مبيعا'
: 'Best Sellers',
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
), ),
), ),
@ -122,13 +134,16 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
height: 50.0, height: 50.0,
width: 55.0, width: 55.0,
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.orangeAccent.shade200.withOpacity(0.34), color: Colors.orangeAccent.shade200
.withOpacity(0.34),
borderRadius: BorderRadius.circular(5.0), borderRadius: BorderRadius.circular(5.0),
), ),
child: Padding( child: Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0), padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Texts( child: Texts(
projectViewModel.isArabic ? 'الاكثر مشاهدة' : 'Most Viewed', projectViewModel.isArabic
? 'الاكثر مشاهدة'
: 'Most Viewed',
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
), ),
), ),
@ -152,7 +167,9 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
child: Padding( child: Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0), padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Texts( child: Texts(
projectViewModel.isArabic ? 'منتجات جديدة' : 'New Products', projectViewModel.isArabic
? 'منتجات جديدة'
: 'New Products',
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
), ),
), ),
@ -170,13 +187,17 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
height: 50.0, height: 50.0,
width: 55.0, width: 55.0,
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.purple.shade200.withOpacity(0.34), color:
Colors.purple.shade200.withOpacity(0.34),
borderRadius: BorderRadius.circular(5.0), borderRadius: BorderRadius.circular(5.0),
), ),
child: Padding( child: Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0), padding:
EdgeInsets.symmetric(horizontal: 10.0),
child: Texts( child: Texts(
projectViewModel.isArabic ? 'شوهد مؤخرا' : 'Recently Viewed', projectViewModel.isArabic
? 'شوهد مؤخرا'
: 'Recently Viewed',
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
), ),
), ),
@ -214,7 +235,7 @@ class _PharmacyCategorisePageState extends State<PharmacyCategorisePage> {
{ {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute(builder: (context) => LandingPagePharmacy()), FadePage(page: LandingPagePharmacy()),
); );
} }
} }

@ -1,5 +1,4 @@
import 'package:diplomaticquarterapp/core/viewModels/pharmacy_categorise_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/pharmacy_categorise_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/pharmacies/product_detail.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/product_detail.dart';
import 'package:diplomaticquarterapp/widgets/buttons/button.dart'; import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
@ -8,7 +7,6 @@ import 'package:diplomaticquarterapp/widgets/others/app_scaffold_pharmacy_widget
import 'package:diplomaticquarterapp/widgets/others/network_base_view.dart'; import 'package:diplomaticquarterapp/widgets/others/network_base_view.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'base/base_view.dart'; import 'base/base_view.dart';
import 'final_products_page.dart'; import 'final_products_page.dart';
@ -19,6 +17,7 @@ class SubCategorisePage extends StatefulWidget {
String parentId; String parentId;
SubCategorisePage({this.id, this.parentId, this.title}); SubCategorisePage({this.id, this.parentId, this.title});
@override @override
_SubCategorisePageState createState() => _SubCategorisePageState createState() =>
_SubCategorisePageState(id: id, title: title, parentId: parentId); _SubCategorisePageState(id: id, title: title, parentId: parentId);
@ -30,7 +29,9 @@ class _SubCategorisePageState extends State<SubCategorisePage> {
String id; String id;
String title; String title;
String parentId; String parentId;
_SubCategorisePageState({this.title, this.parentId, this.id}); _SubCategorisePageState({this.title, this.parentId, this.id});
String categoriseName = "Personal Care"; String categoriseName = "Personal Care";
bool styleOne = true; bool styleOne = true;
bool styleTwo = false; bool styleTwo = false;
@ -39,6 +40,7 @@ class _SubCategorisePageState extends State<SubCategorisePage> {
color: Colors.blue, color: Colors.blue,
size: 29.0, size: 29.0,
); );
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return BaseView<PharmacyCategoriseViewModel>( return BaseView<PharmacyCategoriseViewModel>(
@ -142,8 +144,8 @@ class _SubCategorisePageState extends State<SubCategorisePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page:
FinalProductsPage( FinalProductsPage(
id: model id: model
.subCategorise[ .subCategorise[
@ -230,9 +232,8 @@ class _SubCategorisePageState extends State<SubCategorisePage> {
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => page: FinalProductsPage(
FinalProductsPage(
id: model.subCategorise[index].id, id: model.subCategorise[index].id,
), ),
), ),

@ -6,6 +6,7 @@ import 'package:diplomaticquarterapp/pages/BookAppointment/BookingOptions.dart';
import 'package:diplomaticquarterapp/pages/ToDoList/ToDo.dart'; import 'package:diplomaticquarterapp/pages/ToDoList/ToDo.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.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';
@ -16,8 +17,9 @@ import 'bottom_navigation_item.dart';
class BottomNavBar extends StatefulWidget { class BottomNavBar extends StatefulWidget {
final ValueChanged<int> changeIndex; final ValueChanged<int> changeIndex;
final int index ; final int index;
BottomNavBar({Key key, this.changeIndex,this.index}) : super(key: key);
BottomNavBar({Key key, this.changeIndex, this.index}) : super(key: key);
@override @override
_BottomNavBarState createState() => _BottomNavBarState(); _BottomNavBarState createState() => _BottomNavBarState();
@ -77,29 +79,28 @@ class _BottomNavBarState extends State<BottomNavBar> {
currentIndex: 1, currentIndex: 1,
name: TranslationBase.of(context).medicalProfile, name: TranslationBase.of(context).medicalProfile,
), ),
if(widget.index == 0 && projectViewModel.havePrivilege(34)) if (widget.index == 0 && projectViewModel.havePrivilege(34))
Expanded( Expanded(
child: SizedBox( child: SizedBox(
height: 50, height: 50,
child: Column( child: Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[ children: <Widget>[
SizedBox(height: 22), SizedBox(height: 22),
], ],
), ),
), ),
), ),
if(widget.index != 0 && projectViewModel.havePrivilege(34)) if (widget.index != 0 && projectViewModel.havePrivilege(34))
BottomNavigationItem( BottomNavigationItem(
icon: EvaIcons.calendar, icon: EvaIcons.calendar,
activeIcon: EvaIcons.calendar, activeIcon: EvaIcons.calendar,
changeIndex: _changeIndex, changeIndex: _changeIndex,
index: widget.index, index: widget.index,
currentIndex: 2, currentIndex: 2,
name: TranslationBase.of(context).bookAppo, name: TranslationBase.of(context).bookAppo,
), ),
BottomNavigationItem( BottomNavigationItem(
icon: DQIcons.family, icon: DQIcons.family,
activeIcon: DQIcons.family, activeIcon: DQIcons.family,
@ -108,15 +109,15 @@ class _BottomNavBarState extends State<BottomNavBar> {
currentIndex: 3, currentIndex: 3,
name: TranslationBase.of(context).myFamily, name: TranslationBase.of(context).myFamily,
), ),
if(projectViewModel.havePrivilege(51)) if (projectViewModel.havePrivilege(51))
BottomNavigationItem( BottomNavigationItem(
icon: EvaIcons.calendar, icon: EvaIcons.calendar,
activeIcon: EvaIcons.calendar, activeIcon: EvaIcons.calendar,
changeIndex: _changeIndex, changeIndex: _changeIndex,
index: widget.index, index: widget.index,
currentIndex: 4, currentIndex: 4,
name: TranslationBase.of(context).todoList, name: TranslationBase.of(context).todoList,
) )
], ],
), ),
), ),
@ -124,12 +125,10 @@ class _BottomNavBarState extends State<BottomNavBar> {
} }
Future navigateToBookingOptions(context) async { Future navigateToBookingOptions(context) async {
Navigator.push( Navigator.push(context, FadePage(page: BookingOptions()));
context, MaterialPageRoute(builder: (context) => BookingOptions()));
} }
Future navigateToToDoList(context) async { Future navigateToToDoList(context) async {
Navigator.push(context, Navigator.push(context, FadePage(page: ToDo(isShowAppBar: false)));
MaterialPageRoute(builder: (context) => ToDo(isShowAppBar: false)));
} }
} }

@ -1,4 +1,5 @@
import 'dart:io'; import 'dart:io';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart'; import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart';
import 'package:diplomaticquarterapp/core/service/medical/vital_sign_service.dart'; import 'package:diplomaticquarterapp/core/service/medical/vital_sign_service.dart';
@ -18,7 +19,6 @@ import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart'; import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -44,7 +44,8 @@ class _AppDrawerState extends State<AppDrawer> {
ProjectViewModel projectProvider; ProjectViewModel projectProvider;
var sharedPref = new AppSharedPreferences(); var sharedPref = new AppSharedPreferences();
var familyFileProvider = FamilyFilesProvider(); var familyFileProvider = FamilyFilesProvider();
PharmacyModuleViewModel pharmacyModuleViewModel = locator<PharmacyModuleViewModel>(); PharmacyModuleViewModel pharmacyModuleViewModel =
locator<PharmacyModuleViewModel>();
AuthenticatedUser user; AuthenticatedUser user;
AuthenticatedUser mainUser; AuthenticatedUser mainUser;
AuthenticatedUserObject authenticatedUserObject = AuthenticatedUserObject authenticatedUserObject =
@ -55,6 +56,7 @@ class _AppDrawerState extends State<AppDrawer> {
ToDoCountProviderModel toDoProvider; ToDoCountProviderModel toDoProvider;
String booldType; String booldType;
String notificationCount; String notificationCount;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
toDoProvider = Provider.of<ToDoCountProviderModel>(context); toDoProvider = Provider.of<ToDoCountProviderModel>(context);
@ -158,7 +160,8 @@ class _AppDrawerState extends State<AppDrawer> {
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[ children: <Widget>[
(user.isFamily == null || (user.isFamily == null ||
user.isFamily == false)&& projectProvider.havePrivilege(2) user.isFamily == false) &&
projectProvider.havePrivilege(2)
? InkWell( ? InkWell(
child: DrawerItem( child: DrawerItem(
TranslationBase.of(context).family, TranslationBase.of(context).family,
@ -294,21 +297,20 @@ class _AppDrawerState extends State<AppDrawer> {
} }
}, },
), ),
if(projectProvider.havePrivilege(1)) if (projectProvider.havePrivilege(1))
InkWell( InkWell(
child: DrawerItem( child: DrawerItem(
TranslationBase.of(context) TranslationBase.of(context)
.arabicChange, .arabicChange,
Icons.translate), Icons.translate),
onTap: () { onTap: () {
if (projectProvider.isArabic) { if (projectProvider.isArabic) {
projectProvider.changeLanguage('en'); projectProvider.changeLanguage('en');
} else { } else {
projectProvider.changeLanguage('ar'); projectProvider.changeLanguage('ar');
} }
}, },
), ),
InkWell( InkWell(
child: Stack( child: Stack(
children: [ children: [
@ -350,24 +352,22 @@ class _AppDrawerState extends State<AppDrawer> {
onTap: () { onTap: () {
//NotificationsPage //NotificationsPage
Navigator.of(context).pop(); Navigator.of(context).pop();
Navigator.push( Navigator.push(context,
context, FadePage(page: NotificationsPage()));
MaterialPageRoute(
builder: (BuildContext context) =>
NotificationsPage()));
},
),
if(projectProvider.havePrivilege(3))
InkWell(
child: DrawerItem(
TranslationBase.of(context).appsetting,
Icons.settings_input_composite),
onTap: () {
Navigator.of(context).pushNamed(
SETTINGS,
);
}, },
), ),
if (projectProvider.havePrivilege(3))
InkWell(
child: DrawerItem(
TranslationBase.of(context)
.appsetting,
Icons.settings_input_composite),
onTap: () {
Navigator.of(context).pushNamed(
SETTINGS,
);
},
),
InkWell( InkWell(
child: DrawerItem( child: DrawerItem(
TranslationBase.of(context).rateApp, TranslationBase.of(context).rateApp,
@ -573,7 +573,8 @@ class _AppDrawerState extends State<AppDrawer> {
loginAfter(result, context) async { loginAfter(result, context) async {
result = CheckActivationCode.fromJson(result); result = CheckActivationCode.fromJson(result);
Provider.of<ProjectViewModel>(context, listen: false).setPrivilege(privilegeList: result,isLoginChild: true); Provider.of<ProjectViewModel>(context, listen: false)
.setPrivilege(privilegeList: result, isLoginChild: true);
var familyFile = await sharedPref.getObject(FAMILY_FILE); var familyFile = await sharedPref.getObject(FAMILY_FILE);
var currentLang = await sharedPref.getString(APP_LANGUAGE); var currentLang = await sharedPref.getString(APP_LANGUAGE);
var mainUser = await sharedPref.getObject(MAIN_USER); var mainUser = await sharedPref.getObject(MAIN_USER);
@ -595,8 +596,8 @@ class _AppDrawerState extends State<AppDrawer> {
authenticatedUserObject.user; authenticatedUserObject.user;
Provider.of<ProjectViewModel>(context, listen: false) Provider.of<ProjectViewModel>(context, listen: false)
.setUser(authenticatedUserObject.user); .setUser(authenticatedUserObject.user);
await pharmacyModuleViewModel.generatePharmacyToken().then((value) async { await pharmacyModuleViewModel.generatePharmacyToken().then((value) async {
if(pharmacyModuleViewModel.error.isNotEmpty) if (pharmacyModuleViewModel.error.isNotEmpty)
await pharmacyModuleViewModel.createUser(); await pharmacyModuleViewModel.createUser();
}); });

@ -194,7 +194,7 @@ class AppBarWidget extends StatelessWidget with PreferredSizeWidget {
onPressed: () { onPressed: () {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute(builder: (context) => CartOrderPage()), FadePage(page: CartOrderPage()),
); );
// Navigator.of(context) // Navigator.of(context)
// .popUntil(ModalRoute.withName('/')); // .popUntil(ModalRoute.withName('/'));

@ -483,25 +483,21 @@ class _SearchBot extends State<BottomBarSearch> {
{isAppo}) async { {isAppo}) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => DoctorProfile( page: DoctorProfile(
doctor: docObject, doctor: docObject,
docProfileList: docProfile, docProfileList: docProfile,
isOpenAppt: isAppo, isOpenAppt: isAppo,
))); )));
} }
Future navigateToSearchResults(context, docList, arr, arrDistance) async { Future navigateToSearchResults(context, docList, arr, arrDistance) async {
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (context) => SearchResults(doctorsList: docList)));
var result = LinkedHashSet<String>.from(arr).toList(); var result = LinkedHashSet<String>.from(arr).toList();
var numAll = result.length; var numAll = result.length;
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BranchView( page: BranchView(
doctorsList: docList, doctorsList: docList,
result: result, result: result,
num: numAll, num: numAll,
@ -524,11 +520,11 @@ class _SearchBot extends State<BottomBarSearch> {
goToClinic(List ids) { goToClinic(List ids) {
Navigator.push( Navigator.push(
AppGlobal.context, AppGlobal.context,
MaterialPageRoute( FadePage(
builder: (context) => Search( page: Search(
type: 0, type: 0,
clnicIds: ids, clnicIds: ids,
))); )));
speak(); speak();
} }

@ -1,6 +1,7 @@
import 'dart:collection'; import 'dart:collection';
import 'dart:io'; import 'dart:io';
import 'dart:math'; import 'dart:math';
import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
@ -11,6 +12,8 @@ import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/my_web_view.dar
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/parking_page.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/parking_page.dart';
import 'package:diplomaticquarterapp/pages/Blood/blood_donation.dart'; import 'package:diplomaticquarterapp/pages/Blood/blood_donation.dart';
import 'package:diplomaticquarterapp/pages/Blood/my_balance_page.dart'; import 'package:diplomaticquarterapp/pages/Blood/my_balance_page.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/DoctorProfile.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/BranchView.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/BranchView.dart';
import 'package:diplomaticquarterapp/pages/ContactUs/findus/findus_page.dart'; import 'package:diplomaticquarterapp/pages/ContactUs/findus/findus_page.dart';
import 'package:diplomaticquarterapp/pages/DrawerPages/family/my-family.dart'; import 'package:diplomaticquarterapp/pages/DrawerPages/family/my-family.dart';
@ -44,17 +47,14 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/robo-search/robosearch.dart'; import 'package:diplomaticquarterapp/widgets/robo-search/robosearch.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:flutter_tts/flutter_tts.dart'; import 'package:flutter_tts/flutter_tts.dart';
import 'package:permission_handler/permission_handler.dart'; import 'package:permission_handler/permission_handler.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:speech_to_text/speech_recognition_error.dart'; import 'package:speech_to_text/speech_recognition_error.dart';
import 'package:speech_to_text/speech_recognition_result.dart'; import 'package:speech_to_text/speech_recognition_result.dart';
import 'package:speech_to_text/speech_to_text.dart'; import 'package:speech_to_text/speech_to_text.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/DoctorProfile.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart';
import 'package:flutter/cupertino.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class FloatingSearchButton extends StatefulWidget { class FloatingSearchButton extends StatefulWidget {
@ -795,25 +795,21 @@ class _FloatingSearchButton extends State<FloatingSearchButton>
{isAppo}) async { {isAppo}) async {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => DoctorProfile( page: DoctorProfile(
doctor: docObject, doctor: docObject,
docProfileList: docProfile, docProfileList: docProfile,
isOpenAppt: isAppo, isOpenAppt: isAppo,
))); )));
} }
Future navigateToSearchResults(context, docList, arr, arrDistance) async { Future navigateToSearchResults(context, docList, arr, arrDistance) async {
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (context) => SearchResults(doctorsList: docList)));
var result = LinkedHashSet<String>.from(arr).toList(); var result = LinkedHashSet<String>.from(arr).toList();
var numAll = result.length; var numAll = result.length;
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(
builder: (context) => BranchView( page: BranchView(
doctorsList: docList, doctorsList: docList,
result: result, result: result,
num: numAll, num: numAll,

@ -1,6 +1,5 @@
import 'package:diplomaticquarterapp/pages/landing/home_page.dart';
import 'package:diplomaticquarterapp/pages/landing/landing_page.dart'; import 'package:diplomaticquarterapp/pages/landing/landing_page.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
class BottomNavHomeItem extends StatelessWidget { class BottomNavHomeItem extends StatelessWidget {
@ -35,7 +34,7 @@ class BottomNavHomeItem extends StatelessWidget {
onTap: () => { onTap: () => {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute(builder: (context) => LandingPage()), FadePage(page: LandingPage()),
), ),
}, },
child: Column( child: Column(

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/core/viewModels/pharmacyModule/product_deta
import 'package:diplomaticquarterapp/pages/pharmacies/screens/cart-order-page.dart'; import 'package:diplomaticquarterapp/pages/pharmacies/screens/cart-order-page.dart';
import 'package:diplomaticquarterapp/pages/pharmacy/order/ProductReview.dart'; import 'package:diplomaticquarterapp/pages/pharmacy/order/ProductReview.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
@ -23,22 +24,22 @@ class productTile extends StatelessWidget {
final PharmacyProduct product; final PharmacyProduct product;
final dynamic productID; final dynamic productID;
productTile( productTile({
{this.productName, this.productName,
this.productPrice, this.productPrice,
this.productRate, this.productRate,
this.productReviews, this.productReviews,
this.qyt, this.qyt,
this.totalPrice, this.totalPrice,
this.isOrderDetails = false, this.isOrderDetails = false,
this.productImage, this.productImage,
this.showLine = true, this.showLine = true,
this.img, this.img,
this.imgs, this.imgs,
this.status, this.status,
this.product, this.product,
this.productID, this.productID,
}); });
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -133,11 +134,8 @@ class productTile extends StatelessWidget {
child: Column( child: Column(
children: [ children: [
IconButton( IconButton(
icon: Icon( icon: Icon(FontAwesomeIcons.trashAlt, size: 15),
FontAwesomeIcons.trashAlt, onPressed: () {
size: 15
),
onPressed: (){
deleteFromWishlistFunction(productID); deleteFromWishlistFunction(productID);
}, },
), ),
@ -145,16 +143,12 @@ class productTile extends StatelessWidget {
height: 50, height: 50,
), ),
IconButton( IconButton(
icon: Icon( icon: Icon(FontAwesomeIcons.shoppingCart, size: 15),
FontAwesomeIcons.shoppingCart, onPressed: () async {
size: 15
),
onPressed: () async{
await addToCartFunction(1, productID); await addToCartFunction(1, productID);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( FadePage(page: CartOrderPage()),
builder: (context) => CartOrderPage()),
); );
}, },
), ),
@ -260,10 +254,7 @@ class productTile extends StatelessWidget {
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context, FadePage(page: ProductReviewPage(product)));
MaterialPageRoute(
builder: (context) =>
ProductReviewPage(product)));
}, },
child: Container( child: Container(
padding: padding:
@ -295,17 +286,14 @@ class productTile extends StatelessWidget {
), ),
); );
} }
deleteFromWishlistFunction(itemID) async { deleteFromWishlistFunction(itemID) async {
ProductDetailViewModel x = new ProductDetailViewModel(); ProductDetailViewModel x = new ProductDetailViewModel();
await x.deletWishlistData(itemID); await x.deletWishlistData(itemID);
} }
addToCartFunction(quantity, itemID) async { addToCartFunction(quantity, itemID) async {
ProductDetailViewModel x = new ProductDetailViewModel(); ProductDetailViewModel x = new ProductDetailViewModel();
await x.addToCartData(quantity, itemID); await x.addToCartData(quantity, itemID);
} }
} }

@ -1,27 +1,18 @@
import 'dart:math';
import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/BookingOptions.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/BookingOptions.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart';
import 'package:diplomaticquarterapp/pages/landing/landing_page.dart';
import 'package:diplomaticquarterapp/pages/medical/medical_profile_page.dart';
import 'package:diplomaticquarterapp/pages/medical/my_admissions_page.dart';
import 'package:diplomaticquarterapp/services/robo_search/search_provider.dart'; import 'package:diplomaticquarterapp/services/robo_search/search_provider.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/bottom_navigation/bottom_nav_bar.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_tts/flutter_tts.dart'; import 'package:flutter_tts/flutter_tts.dart';
import 'package:hexcolor/hexcolor.dart';
import 'package:permission_handler/permission_handler.dart'; import 'package:permission_handler/permission_handler.dart';
import 'package:speech_to_text/speech_recognition_error.dart'; import 'package:speech_to_text/speech_recognition_error.dart';
import 'package:speech_to_text/speech_recognition_result.dart'; import 'package:speech_to_text/speech_recognition_result.dart';
import 'package:speech_to_text/speech_to_text.dart'; import 'package:speech_to_text/speech_to_text.dart';
import 'package:diplomaticquarterapp/widgets/robo-search/robosearch.dart';
import 'dart:math';
import 'package:diplomaticquarterapp/services/robo_search/event_provider.dart';
class SearchBot with ChangeNotifier { class SearchBot with ChangeNotifier {
SearchBot() { SearchBot() {
@ -30,6 +21,7 @@ class SearchBot with ChangeNotifier {
} }
SearchProvider searchProvider = new SearchProvider(); SearchProvider searchProvider = new SearchProvider();
// RobotProvider eventProvider = RobotProvider(); // RobotProvider eventProvider = RobotProvider();
bool isLoading = false; bool isLoading = false;
bool isError = false; bool isError = false;
@ -190,18 +182,18 @@ class SearchBot with ChangeNotifier {
case '101': case '101':
Navigator.push( Navigator.push(
AppGlobal.context, AppGlobal.context,
MaterialPageRoute( FadePage(
builder: (context) => Search( page: Search(
type: 0, type: 0,
))); )));
break; break;
case '102': case '102':
Navigator.push( Navigator.push(
AppGlobal.context, AppGlobal.context,
MaterialPageRoute( FadePage(
builder: (context) => Search( page: Search(
type: 1, type: 1,
))); )));
break; break;
// case '103': // case '103':
// eventProvider.setValue({"clinic_id": understand}); // eventProvider.setValue({"clinic_id": understand});

Loading…
Cancel
Save