Patient app release to stores 10.4

merge-update-with-lab-changes
haroon amjad 3 years ago
parent 872095c51f
commit b304332526

@ -52,6 +52,7 @@ post_install do |installer|
'PERMISSION_REMINDERS=1', 'PERMISSION_REMINDERS=1',
] ]
build_configuration.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64 i386' build_configuration.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64 i386'
build_configuration.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
if build_configuration.build_settings['WRAPPER_EXTENSION'] == 'bundle' if build_configuration.build_settings['WRAPPER_EXTENSION'] == 'bundle'
build_configuration.build_settings['DEVELOPMENT_TEAM'] = '3A359E86ZF' build_configuration.build_settings['DEVELOPMENT_TEAM'] = '3A359E86ZF'
end end

@ -20,8 +20,8 @@ var PACKAGES_ORDERS = '/api/orders';
var PACKAGES_ORDER_HISTORY = '/api/orders/items'; var PACKAGES_ORDER_HISTORY = '/api/orders/items';
var PACKAGES_TAMARA_OPT = '/api/orders/paymentoptions/tamara'; var PACKAGES_TAMARA_OPT = '/api/orders/paymentoptions/tamara';
// var BASE_URL = 'http://10.50.100.198:2018/'; // var BASE_URL = 'http://10.50.100.198:2018/';
var BASE_URL = 'https://uat.hmgwebservices.com/'; // var BASE_URL = 'https://uat.hmgwebservices.com/';
//var BASE_URL = 'https://hmgwebservices.com/'; var BASE_URL = 'https://hmgwebservices.com/';
// var BASE_URL = 'https://orash.cloudsolutions.com.sa/'; // var BASE_URL = 'https://orash.cloudsolutions.com.sa/';
// var BASE_URL = 'https://vidauat.cloudsolutions.com.sa/'; // var BASE_URL = 'https://vidauat.cloudsolutions.com.sa/';
@ -323,7 +323,7 @@ var UPDATE_COVID_QUESTIONNAIRE = 'Services/Doctors.svc/REST/COVID19_Questionnari
var CHANNEL = 3; var CHANNEL = 3;
var GENERAL_ID = 'Cs2020@2016\$2958'; var GENERAL_ID = 'Cs2020@2016\$2958';
var IP_ADDRESS = '10.20.10.20'; var IP_ADDRESS = '10.20.10.20';
var VERSION_ID = 10.3; var VERSION_ID = 10.4;
var SETUP_ID = '91877'; var SETUP_ID = '91877';
var LANGUAGE = 2; var LANGUAGE = 2;
// var PATIENT_OUT_SA = 0; // var PATIENT_OUT_SA = 0;

@ -1865,7 +1865,7 @@ const Map localizedValues = {
"NFCNotSupported": { "en": "Your device does not support NFC. Please visit reception to Check-In", "ar": "جهازك لا يدعم NFC. يرجى زيارة مكتب الاستقبال لتسجيل الوصول" }, "NFCNotSupported": { "en": "Your device does not support NFC. Please visit reception to Check-In", "ar": "جهازك لا يدعم NFC. يرجى زيارة مكتب الاستقبال لتسجيل الوصول" },
"enter-workplace-name": {"en": "Please enter your workplace name:", "ar": "رجاء إدخال مكان العمل:"}, "enter-workplace-name": {"en": "Please enter your workplace name:", "ar": "رجاء إدخال مكان العمل:"},
"workplaceName": {"en": "Workplace name:", "ar": "مكان العمل:"}, "workplaceName": {"en": "Workplace name:", "ar": "مكان العمل:"},
"callLiveCareSupport": {"en": "Call LiveCare Support", "ar": "اتصل بدعم لايف كير"}, "callLiveCareSupport": {"en": "Call LiveCare Support", "ar": "اتصل بدعم اللايف كير"},
"needApproval": {"en": "Your sick leave is under process in medical administration, you will be notified once approved.", "ar": "جازتك المرضية تحت الإجراء في الإدارة الطبية ، سوف يتم إشعارك فور الموافقه عليها."}, "needApproval": {"en": "Your sick leave is under process in medical administration, you will be notified once approved.", "ar": "جازتك المرضية تحت الإجراء في الإدارة الطبية ، سوف يتم إشعارك فور الموافقه عليها."},
"pendingActivation": {"en": "Pending Activation", "ar": "في انتظار التنشيط"}, "pendingActivation": {"en": "Pending Activation", "ar": "في انتظار التنشيط"},
"awaitingApproval": {"en": "Awaiting Approval", "ar": "انتظر القبول"}, "awaitingApproval": {"en": "Awaiting Approval", "ar": "انتظر القبول"},

@ -158,11 +158,11 @@ class BaseAppClient {
body.removeWhere((key, value) => key == null || value == null); body.removeWhere((key, value) => key == null || value == null);
if (AppGlobal.isNetworkDebugEnabled) { // if (AppGlobal.isNetworkDebugEnabled) {
print("URL : $url"); print("URL : $url");
final jsonBody = json.encode(body); final jsonBody = json.encode(body);
print(jsonBody); print(jsonBody);
} // }
if (await Utils.checkConnection(bypassConnectionCheck: bypassConnectionCheck)) { if (await Utils.checkConnection(bypassConnectionCheck: bypassConnectionCheck)) {
final response = await http.post(Uri.parse(url.trim()), body: json.encode(body), headers: headers); final response = await http.post(Uri.parse(url.trim()), body: json.encode(body), headers: headers);

@ -32,6 +32,8 @@ class GeofencingServices extends BaseService {
AppSharedPreferences pref = AppSharedPreferences(); AppSharedPreferences pref = AppSharedPreferences();
await pref.setString(HMG_GEOFENCES, _zonesJsonString); await pref.setString(HMG_GEOFENCES, _zonesJsonString);
var res = await sharedPref.getStringWithDefaultValue(HMG_GEOFENCES, "[]");
print("-------GEO ZONES----------: $res");
return geoZones; return geoZones;
} }

@ -96,15 +96,15 @@ class _LiveCarePendingRequestState extends State<LiveCarePendingRequest> {
child: Text(TranslationBase.of(context).yourTurn + " " + widget.pendingERRequestHistoryList.patCount.toString() + " " + TranslationBase.of(context).patients, child: Text(TranslationBase.of(context).yourTurn + " " + widget.pendingERRequestHistoryList.patCount.toString() + " " + TranslationBase.of(context).patients,
style: TextStyle(fontSize: 12.0, fontWeight: FontWeight.w600, letterSpacing: -0.48)), style: TextStyle(fontSize: 12.0, fontWeight: FontWeight.w600, letterSpacing: -0.48)),
), ),
Row( // Row(
children: [ // children: [
Container( // Container(
padding: const EdgeInsets.all(5.0), // padding: const EdgeInsets.all(5.0),
child: Text(TranslationBase.of(context).liveCareSupportContact, style: TextStyle(fontSize: 12.0, fontWeight: FontWeight.w600, letterSpacing: -0.48)), // child: Text(TranslationBase.of(context).liveCareSupportContact, style: TextStyle(fontSize: 12.0, fontWeight: FontWeight.w600, letterSpacing: -0.48)),
), // ),
Directionality(textDirection: TextDirection.ltr, child: Text("011 525 9553", style: TextStyle(fontSize: 12.0, fontWeight: FontWeight.w600, letterSpacing: -0.48))) // Directionality(textDirection: TextDirection.ltr, child: Text("011 525 9553", style: TextStyle(fontSize: 12.0, fontWeight: FontWeight.w600, letterSpacing: -0.48)))
], // ],
), // ),
mHeight(12.0), mHeight(12.0),
Container( Container(
child: DefaultButton(TranslationBase.of(context).callLiveCareSupport, () { child: DefaultButton(TranslationBase.of(context).callLiveCareSupport, () {

@ -6,8 +6,7 @@ import 'package:diplomaticquarterapp/core/viewModels/appointment_rate_view_model
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/locator.dart'; import 'package:diplomaticquarterapp/locator.dart';
import 'package:diplomaticquarterapp/models/Appointments/toDoCountProviderModel.dart'; import 'package:diplomaticquarterapp/models/Appointments/toDoCountProviderModel.dart';
import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_response.dart' import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_response.dart' as checkActivation;
as checkActivation;
import 'package:diplomaticquarterapp/models/Authentication/check_paitent_authentication_req.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_paitent_authentication_req.dart';
import 'package:diplomaticquarterapp/models/Authentication/countries_list.dart'; import 'package:diplomaticquarterapp/models/Authentication/countries_list.dart';
import 'package:diplomaticquarterapp/models/Authentication/register_info_response.dart'; import 'package:diplomaticquarterapp/models/Authentication/register_info_response.dart';
@ -38,8 +37,7 @@ class RegisterInfo extends StatefulWidget {
final Function changePageViewIndex; final Function changePageViewIndex;
final int page; final int page;
const RegisterInfo({Key key, this.changePageViewIndex, this.page = 1}) const RegisterInfo({Key key, this.changePageViewIndex, this.page = 1}) : super(key: key);
: super(key: key);
@override @override
_RegisterInfo createState() => _RegisterInfo(); _RegisterInfo createState() => _RegisterInfo();
@ -48,7 +46,7 @@ class RegisterInfo extends StatefulWidget {
class _RegisterInfo extends State<RegisterInfo> { class _RegisterInfo extends State<RegisterInfo> {
final authService = new AuthProvider(); final authService = new AuthProvider();
final sharedPref = new AppSharedPreferences(); final sharedPref = new AppSharedPreferences();
RegisterInfoResponse registerInfo =RegisterInfoResponse(); RegisterInfoResponse registerInfo = RegisterInfoResponse();
bool isLoading; bool isLoading;
int page; int page;
final List<Location> locationList = [ final List<Location> locationList = [
@ -63,25 +61,23 @@ class _RegisterInfo extends State<RegisterInfo> {
]; ];
final List<Language> genderList = [ final List<Language> genderList = [
new Language(name: 'Male', value: 'M', nameAr: "ذكر"), new Language(name: 'Male', value: 'M', nameAr: "ذكر"),
new Language(name: 'Female', value: 'F',nameAr: "أنثى"), new Language(name: 'Female', value: 'F', nameAr: "أنثى"),
]; ];
final List<Language> maritalList = [ final List<Language> maritalList = [
new Language(name: 'Married', value: 'M', nameAr: "متزوج"), new Language(name: 'Married', value: 'M', nameAr: "متزوج"),
new Language(name: 'Single', value: 'S',nameAr: "اعزب"), new Language(name: 'Single', value: 'S', nameAr: "اعزب"),
new Language(name: 'Divorce', value: 'D',nameAr:"الطلاق"), new Language(name: 'Divorce', value: 'D', nameAr: "الطلاق"),
]; ];
String email = ''; String email = '';
List<CountriesLists> countriesList = []; List<CountriesLists> countriesList = [];
ToDoCountProviderModel toDoProvider; ToDoCountProviderModel toDoProvider;
String location = '1'; String location = '1';
AuthenticatedUserObject authenticatedUserObject = AuthenticatedUserObject authenticatedUserObject = locator<AuthenticatedUserObject>();
locator<AuthenticatedUserObject>();
ProjectViewModel projectViewModel; ProjectViewModel projectViewModel;
AppointmentRateViewModel appointmentRateViewModel = AppointmentRateViewModel appointmentRateViewModel = locator<AppointmentRateViewModel>();
locator<AppointmentRateViewModel>(); bool isDubai = false;
bool isDubai =false;
RegisterInfoResponse data = RegisterInfoResponse(); RegisterInfoResponse data = RegisterInfoResponse();
CheckPatientAuthenticationReq data2; CheckPatientAuthenticationReq data2;
String gender = 'M'; String gender = 'M';
@ -90,8 +86,7 @@ class _RegisterInfo extends State<RegisterInfo> {
@override @override
void initState() { void initState() {
if (widget.page == 1) {
if(widget.page ==1) {
getCountries(); getCountries();
} }
WidgetsBinding.instance.addPostFrameCallback((timeStamp) { WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
@ -106,23 +101,17 @@ class _RegisterInfo extends State<RegisterInfo> {
projectViewModel = Provider.of(context); projectViewModel = Provider.of(context);
toDoProvider = Provider.of<ToDoCountProviderModel>(context); toDoProvider = Provider.of<ToDoCountProviderModel>(context);
return AppScaffold( return AppScaffold(
appBarTitle: TranslationBase appBarTitle: TranslationBase.of(context).register,
.of(context)
.register,
isShowAppBar: false, isShowAppBar: false,
isShowDecPage: false, isShowDecPage: false,
body: SingleChildScrollView( body: SingleChildScrollView(
padding: EdgeInsets.all(30), padding: EdgeInsets.all(30),
child: child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[
Column(crossAxisAlignment: CrossAxisAlignment.start, children: <
Widget>[
Row( Row(
children: [ children: [
Expanded( Expanded(
child: AppText( child: AppText(
TranslationBase TranslationBase.of(context).personalInfo,
.of(context)
.personalInfo,
fontSize: 16, fontSize: 16,
textAlign: TextAlign.left, textAlign: TextAlign.left,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
@ -136,149 +125,106 @@ class _RegisterInfo extends State<RegisterInfo> {
? Column( ? Column(
children: [ children: [
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(TranslationBase.of(context).identificationNumber, registerd_data.patientIdentificationID, TranslationBase.of(context).mobileNumber,
TranslationBase
.of(context)
.identificationNumber,
registerd_data.patientIdentificationID,
TranslationBase
.of(context)
.mobileNumber,
registerd_data.patientMobileNumber.toString()), registerd_data.patientMobileNumber.toString()),
// SizedBox(height: 20), // SizedBox(height: 20),
projectViewModel.isArabic ? getnameField( projectViewModel.isArabic
? getnameField(
'', '',
inputWidget("First Name", "First Name English", 'fNameEn'),
inputWidget( "First Name","First Name English",'fNameEn'),
'', '',
inputWidget( "Last Name", "Last Name English",'lNameEn'), inputWidget("Last Name", "Last Name English", 'lNameEn'),
) :SizedBox(height: 0,), )
: SizedBox(
height: 0,
),
getnameField( getnameField(
'', '',
inputWidget(TranslationBase.of(context).firstName, TranslationBase.of(context).firstName, 'fName'),
inputWidget( TranslationBase
.of(context)
.firstName, TranslationBase
.of(context)
.firstName,'fName'),
'', '',
inputWidget( TranslationBase inputWidget(TranslationBase.of(context).middleName, TranslationBase.of(context).middleName, 'sName'),
.of(context)
.middleName, TranslationBase
.of(context)
.middleName,'sName'),
), ),
getnameField( getnameField(
'', '',
inputWidget( TranslationBase inputWidget(TranslationBase.of(context).lastName, TranslationBase.of(context).lastName, 'lName'),
.of(context) TranslationBase.of(context).gender,
.lastName, TranslationBase
.of(context)
.lastName, 'lName'),
TranslationBase
.of(context)
.gender,
Container( Container(
height: 20, height: 20,
child: DropdownButtonHideUnderline( child: DropdownButtonHideUnderline(
child: DropdownButton( child: DropdownButton(
isExpanded: true, isExpanded: true,
value: gender, value: gender,
hint: Text(TranslationBase hint: Text(TranslationBase.of(context).gender),
.of(context)
.gender),
iconSize: 40, iconSize: 40,
elevation: 16, elevation: 16,
onChanged: (value) => onChanged: (value) => {
{
setState(() { setState(() {
gender = value; gender = value;
registerInfo.gender = value; registerInfo.gender = value;
}) })
}, },
items: genderList items: genderList.map<DropdownMenuItem<String>>((Language value) {
.map<DropdownMenuItem<String>>(
(Language value) {
return DropdownMenuItem<String>( return DropdownMenuItem<String>(
value: value.value, value: value.value,
child: Text( projectViewModel.isArabic ==1 ? value.nameAr : value.name , child: Text(
projectViewModel.isArabic == 1 ? value.nameAr : value.name,
), ),
); );
}).toList()))), }).toList()))),
), ),
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(
TranslationBase TranslationBase.of(context).maritalStatus,
.of(context)
.maritalStatus,
Container( Container(
height: 18, height: 18,
child: DropdownButtonHideUnderline( child: DropdownButtonHideUnderline(
child: DropdownButton( child: DropdownButton(
isExpanded: true, isExpanded: true,
value: maritalStatus, value: maritalStatus,
hint: Text(TranslationBase hint: Text(TranslationBase.of(context).maritalStatus),
.of(context)
.maritalStatus),
iconSize: 40, iconSize: 40,
elevation: 16, elevation: 16,
onChanged: (value) => onChanged: (value) => {
{
setState(() { setState(() {
maritalStatus = value; maritalStatus = value;
registerInfo.maritalStatusCode = value; registerInfo.maritalStatusCode = value;
}) })
}, },
items: maritalList items: maritalList.map<DropdownMenuItem<String>>((Language value) {
.map<DropdownMenuItem<String>>(
(Language value) {
return DropdownMenuItem<String>( return DropdownMenuItem<String>(
value: value.value, value: value.value,
child: Text( projectViewModel.isArabic ==1 ? value.nameAr : value.name , child: Text(
projectViewModel.isArabic == 1 ? value.nameAr : value.name,
), ),
); );
}).toList()))), }).toList()))),
TranslationBase TranslationBase.of(context).nationality,
.of(context)
.nationality,
Container( Container(
height: 22, height: 22,
child: DropdownButtonHideUnderline( child: DropdownButtonHideUnderline(
child: DropdownButton( child: DropdownButton(
isExpanded: true, isExpanded: true,
value: nationality, value: nationality,
hint: Text(TranslationBase hint: Text(TranslationBase.of(context).nationality),
.of(context)
.nationality),
iconSize: 40, iconSize: 40,
elevation: 16, elevation: 16,
onChanged: (value) => onChanged: (value) => {
{
setState(() { setState(() {
nationality = value; nationality = value;
registerInfo.nationalityCode = value; registerInfo.nationalityCode = value;
}) })
}, },
items: countriesList items: countriesList.map<DropdownMenuItem<String>>((CountriesLists value) {
.map<DropdownMenuItem<String>>(
(CountriesLists value) {
return DropdownMenuItem<String>( return DropdownMenuItem<String>(
value: value.iD, value: value.iD,
child: Text(value.name , child: Text(
value.name,
), ),
); );
}).toList())))), }).toList())))),
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(TranslationBase.of(context).dateOfBirth, registerd_data.dob, "", ""),
TranslationBase
.of(context)
.dateOfBirth,
registerd_data.dob,
"", ""),
SizedBox(height: 20), SizedBox(height: 20),
], ],
) )
@ -286,60 +232,25 @@ class _RegisterInfo extends State<RegisterInfo> {
? Column( ? Column(
children: [ children: [
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(TranslationBase.of(context).identificationNumber, registerInfo.idNumber, TranslationBase.of(context).firstName,
TranslationBase registerInfo.firstNameEn == '-' ? registerInfo.firstNameAr : registerInfo.firstNameEn),
.of(context)
.identificationNumber,
registerInfo.idNumber,
TranslationBase
.of(context)
.firstName,
registerInfo.firstNameEn == '-'
? registerInfo.firstNameAr
: registerInfo.firstNameEn),
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(TranslationBase.of(context).middleName, registerInfo.secondNameEn == '-' ? registerInfo.secondNameEn : registerInfo.secondNameEn,
TranslationBase TranslationBase.of(context).lastName, registerInfo.lastNameEn == '-' ? registerInfo.lastNameEn : registerInfo.lastNameEn),
.of(context)
.middleName,
registerInfo.secondNameEn == '-'
? registerInfo.secondNameEn
: registerInfo.secondNameEn,
TranslationBase
.of(context)
.lastName,
registerInfo.lastNameEn == '-'
? registerInfo.lastNameEn
: registerInfo.lastNameEn),
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(
TranslationBase TranslationBase.of(context).gender,
.of(context)
.gender,
registerInfo.maritalStatusCode == 'U' registerInfo.maritalStatusCode == 'U'
? 'Unknown' ? 'Unknown'
: registerInfo.maritalStatusCode == 'M' : registerInfo.maritalStatusCode == 'M'
? 'Male' ? 'Male'
: 'Female', : 'Female',
TranslationBase TranslationBase.of(context).maritalStatus,
.of(context)
.maritalStatus,
registerInfo.maritalStatus), registerInfo.maritalStatus),
SizedBox(height: 20), SizedBox(height: 20),
getnameField( getnameField(TranslationBase.of(context).nationality, registerInfo.nationality, TranslationBase.of(context).mobileNumber, registerd_data.patientMobileNumber.toString()),
TranslationBase
.of(context)
.nationality,
registerInfo.nationality,
TranslationBase
.of(context)
.mobileNumber,
registerd_data.patientMobileNumber.toString()),
SizedBox(height: 20), SizedBox(height: 20),
getnameField(TranslationBase getnameField(TranslationBase.of(context).dateOfBirth, registerInfo.dateOfBirth, "", ""),
.of(context)
.dateOfBirth,
registerInfo.dateOfBirth, "", ""),
SizedBox(height: 20), SizedBox(height: 20),
], ],
) )
@ -350,18 +261,12 @@ class _RegisterInfo extends State<RegisterInfo> {
Container( Container(
width: double.infinity, width: double.infinity,
decoration: containerRadius(Colors.white, 12), decoration: containerRadius(Colors.white, 12),
padding: EdgeInsets.only( padding: EdgeInsets.only(left: 10, right: 10, top: 5, bottom: 25),
left: 10, right: 10, top: 5, bottom: 25),
child: Row(children: [ child: Row(children: [
Flexible( Flexible(
child: Column( child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Text( Text(
TranslationBase TranslationBase.of(context).prefferedLanguage,
.of(context)
.prefferedLanguage,
style: TextStyle( style: TextStyle(
fontSize: 11, fontSize: 11,
letterSpacing: -0.44, letterSpacing: -0.44,
@ -370,33 +275,23 @@ class _RegisterInfo extends State<RegisterInfo> {
), ),
Container( Container(
height: 18, height: 18,
child: child: DropdownButtonHideUnderline(
DropdownButtonHideUnderline(
child: DropdownButton( child: DropdownButton(
isExpanded: true, isExpanded: true,
value: language, value: language,
hint: Text(TranslationBase hint: Text(TranslationBase.of(context).prefferedLanguage),
.of(context)
.prefferedLanguage),
iconSize: 40, iconSize: 40,
elevation: 16, elevation: 16,
onChanged: (value) => onChanged: (value) => {
{
setState(() { setState(() {
language = language = value;
value;
}) })
}, },
items: languageList.map< items: languageList.map<DropdownMenuItem<String>>((Language value) {
DropdownMenuItem< return DropdownMenuItem<String>(
String>>( value: value.value,
(Language value) {
return DropdownMenuItem<
String>(
value:
value.value,
child: Text( child: Text(
projectViewModel.isArabic ==1 ? value.nameAr : value.name , projectViewModel.isArabic == 1 ? value.nameAr : value.name,
), ),
); );
}).toList()))) }).toList())))
@ -408,18 +303,12 @@ class _RegisterInfo extends State<RegisterInfo> {
Container( Container(
width: double.infinity, width: double.infinity,
decoration: containerRadius(Colors.white, 12), decoration: containerRadius(Colors.white, 12),
padding: EdgeInsets.only( padding: EdgeInsets.only(left: 10, right: 10, top: 5, bottom: 25),
left: 10, right: 10, top: 5, bottom: 25),
child: Row(children: [ child: Row(children: [
Flexible( Flexible(
child: Column( child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Text( Text(
TranslationBase TranslationBase.of(context).selectLocation,
.of(context)
.selectLocation,
style: TextStyle( style: TextStyle(
fontSize: 11, fontSize: 11,
letterSpacing: -0.44, letterSpacing: -0.44,
@ -428,35 +317,23 @@ class _RegisterInfo extends State<RegisterInfo> {
), ),
Container( Container(
height: 18, height: 18,
child: child: DropdownButtonHideUnderline(
DropdownButtonHideUnderline(
child: DropdownButton( child: DropdownButton(
isExpanded: true, isExpanded: true,
value: location, value: location,
hint: Text( hint: Text(TranslationBase.of(context).selectLocation),
TranslationBase
.of(
context)
.selectLocation),
iconSize: 40, iconSize: 40,
elevation: 16, elevation: 16,
onChanged: (value) => onChanged: (value) => {
{
setState(() { setState(() {
location = location = value;
value;
}) })
}, },
items: locationList.map< items: locationList.map<DropdownMenuItem<String>>((Location value) {
DropdownMenuItem< return DropdownMenuItem<String>(
String>>( value: value.value,
(Location value) {
return DropdownMenuItem<
String>(
value:
value.value,
child: Text( child: Text(
projectViewModel.isArabic ==1 ? value.nameAr : value.name , projectViewModel.isArabic == 1 ? value.nameAr : value.name,
), ),
); );
}).toList()))) }).toList())))
@ -468,19 +345,13 @@ class _RegisterInfo extends State<RegisterInfo> {
Container( Container(
width: double.infinity, width: double.infinity,
decoration: containerRadius(Colors.white, 12), decoration: containerRadius(Colors.white, 12),
padding: EdgeInsets.only( padding: EdgeInsets.only(left: 10, right: 10, top: 5, bottom: 12),
left: 10, right: 10, top: 5, bottom: 12),
margin: EdgeInsets.only(bottom: 0), margin: EdgeInsets.only(bottom: 0),
child: Row(children: [ child: Row(children: [
Flexible( Flexible(
child: Column( child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Text( Text(
TranslationBase TranslationBase.of(context).email,
.of(context)
.email,
style: TextStyle( style: TextStyle(
fontSize: 11, fontSize: 11,
letterSpacing: -0.44, letterSpacing: -0.44,
@ -489,6 +360,7 @@ class _RegisterInfo extends State<RegisterInfo> {
), ),
Container( Container(
child: TextField( child: TextField(
keyboardType: TextInputType.emailAddress,
onChanged: (value) { onChanged: (value) {
setState(() { setState(() {
email = value; email = value;
@ -510,8 +382,7 @@ class _RegisterInfo extends State<RegisterInfo> {
color: Color(0xff575757), color: Color(0xff575757),
letterSpacing: -0.56, letterSpacing: -0.56,
), ),
prefixIconConstraints: prefixIconConstraints: BoxConstraints(minWidth: 50),
BoxConstraints(minWidth: 50),
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
border: InputBorder.none, border: InputBorder.none,
focusedBorder: InputBorder.none, focusedBorder: InputBorder.none,
@ -533,72 +404,47 @@ class _RegisterInfo extends State<RegisterInfo> {
Expanded( Expanded(
child: Padding( child: Padding(
padding: EdgeInsets.all(10), padding: EdgeInsets.all(10),
child: child: DefaultButton(TranslationBase.of(context).cancel, () {
DefaultButton(TranslationBase
.of(context)
.cancel, () {
Navigator.of(context).pop(); Navigator.of(context).pop();
locator<GAnalytics>() locator<GAnalytics>().loginRegistration.registration_cancel(step: page == 1 ? 'personal info' : 'other details');
.loginRegistration
.registration_cancel(
step: page == 1
? 'personal info'
: 'other details');
}, textColor: Colors.white, color: Color(0xffD02127))), }, textColor: Colors.white, color: Color(0xffD02127))),
), ),
Expanded( Expanded(
child: Padding( child: Padding(
padding: EdgeInsets.all(10), padding: EdgeInsets.all(10),
child: DefaultButton( child: DefaultButton(page == 1 ? TranslationBase.of(context).next : TranslationBase.of(context).register, () {
page == 1
? TranslationBase
.of(context)
.next
: TranslationBase
.of(context)
.register, () {
nextPage(); nextPage();
page == 1 page == 1 ? locator<GAnalytics>().loginRegistration.registration_personal_info() : locator<GAnalytics>().loginRegistration.registration_patient_info();
? locator<GAnalytics>() }, textColor: Colors.white, color: isValid() == true ? Color(0xff359846) : Colors.grey)),
.loginRegistration
.registration_personal_info()
: locator<GAnalytics>()
.loginRegistration
.registration_patient_info();
},
textColor: Colors.white,
color: isValid() == true
? Color(0xff359846)
: Colors.grey)),
), ),
], ],
))); )));
} }
nextPage() async{ nextPage() async {
if (page == 1) { if (page == 1) {
if(isDubai) { if (isDubai) {
await setRegisterData(); await setRegisterData();
widget.changePageViewIndex(2); widget.changePageViewIndex(2);
} } else {
else{
widget.changePageViewIndex(2); widget.changePageViewIndex(2);
} }
} else { } else {
registerNow(); registerNow();
} }
} }
setRegisterData() async{
setRegisterData() async {
registerInfo.gender = gender; registerInfo.gender = gender;
registerInfo.maritalStatusCode =maritalStatus; registerInfo.maritalStatusCode = maritalStatus;
registerInfo.nationalityCode =nationality; registerInfo.nationalityCode = nationality;
projectViewModel.setRegisterData(registerInfo); projectViewModel.setRegisterData(registerInfo);
// await sharedPref.setObject(REGISTER_INFO_DUBAI, registerInfo); // await sharedPref.setObject(REGISTER_INFO_DUBAI, registerInfo);
} }
registerNow() { registerNow() {
dynamic request; dynamic request;
if(isDubai) if (isDubai)
request = getTempUserRequestDubai(); request = getTempUserRequestDubai();
else else
request = getTempUserRequest(); request = getTempUserRequest();
@ -608,26 +454,17 @@ class _RegisterInfo extends State<RegisterInfo> {
this this
.authService .authService
.registerUser(request) .registerUser(request)
.then((result) => .then((result) => {
{
GifLoaderDialogUtils.hideDialog(context), GifLoaderDialogUtils.hideDialog(context),
if (result is String) if (result is String)
{ {
new ConfirmDialog( new ConfirmDialog(
context: context, context: context,
confirmMessage: result, confirmMessage: result,
okText: TranslationBase okText: TranslationBase.of(context).ok,
.of(context) cancelText: TranslationBase.of(context).cancel_nocaps,
.ok, okFunction: () => {ConfirmDialog.closeAlertDialog(context)},
cancelText: TranslationBase cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)}).showAlertDialog(context)
.of(context)
.cancel_nocaps,
okFunction: () =>
{ConfirmDialog.closeAlertDialog(context)},
cancelFunction: () =>
{
ConfirmDialog.closeAlertDialog(context)
}).showAlertDialog(context)
} }
else else
{ {
@ -650,13 +487,9 @@ class _RegisterInfo extends State<RegisterInfo> {
sharedPref.setObject(LOGIN_TOKEN_ID, result.logInTokenID), sharedPref.setObject(LOGIN_TOKEN_ID, result.logInTokenID),
sharedPref.setString(TOKEN, result.authenticationTokenID), sharedPref.setString(TOKEN, result.authenticationTokenID),
AppToast.showSuccessToast( AppToast.showSuccessToast(message: TranslationBase.of(context).successRegister),
message: TranslationBase
.of(context)
.successRegister),
checkIfUserAgreedBefore(result), checkIfUserAgreedBefore(result),
projectViewModel.analytics.loginRegistration projectViewModel.analytics.loginRegistration.registration_confirmation()
.registration_confirmation()
} }
}) })
.catchError((err) { .catchError((err) {
@ -664,17 +497,12 @@ class _RegisterInfo extends State<RegisterInfo> {
ConfirmDialog dialog = new ConfirmDialog( ConfirmDialog dialog = new ConfirmDialog(
context: context, context: context,
confirmMessage: err, confirmMessage: err,
okText: TranslationBase okText: TranslationBase.of(context).confirm,
.of(context) cancelText: TranslationBase.of(context).cancel_nocaps,
.confirm,
cancelText: TranslationBase
.of(context)
.cancel_nocaps,
okFunction: () => {ConfirmDialog.closeAlertDialog(context)}, okFunction: () => {ConfirmDialog.closeAlertDialog(context)},
cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)}); cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)});
dialog.showAlertDialog(context); dialog.showAlertDialog(context);
projectViewModel.analytics.loginRegistration projectViewModel.analytics.loginRegistration.registration_fail(errorType: err);
.registration_fail(errorType: err);
}); });
} }
@ -688,45 +516,33 @@ class _RegisterInfo extends State<RegisterInfo> {
} }
getRegisterInfo() async { getRegisterInfo() async {
if (await sharedPref.getObject(NHIC_DATA) != null) { if (await sharedPref.getObject(NHIC_DATA) != null) {
data = data = RegisterInfoResponse.fromJson(await sharedPref.getObject(NHIC_DATA));
RegisterInfoResponse.fromJson(await sharedPref.getObject(NHIC_DATA));
this.registerInfo = data; this.registerInfo = data;
} }
if (await sharedPref.getObject(REGISTER_DATA_FOR_LOGIIN) != null) { if (await sharedPref.getObject(REGISTER_DATA_FOR_LOGIIN) != null) {
data2 = CheckPatientAuthenticationReq.fromJson( data2 = CheckPatientAuthenticationReq.fromJson(await sharedPref.getObject(REGISTER_DATA_FOR_LOGIIN));
await sharedPref.getObject(REGISTER_DATA_FOR_LOGIIN));
setState(() { setState(() {
this.registerd_data = data2; this.registerd_data = data2;
isDubai = data2.patientOutSA == 1 ? true : false; isDubai = data2.patientOutSA == 1 ? true : false;
if(isDubai) location ='2'; if (isDubai) location = '2';
}); });
} }
} }
getTempUserRequest() { getTempUserRequest() {
DateFormat dateFormat = DateFormat("mm/dd/yyyy"); DateFormat dateFormat = DateFormat("mm/dd/yyyy");
print(dateFormat.parse(registerInfo.dateOfBirth)); print(dateFormat.parse(registerInfo.dateOfBirth));
var hDate = var hDate = new HijriCalendar.fromDate(dateFormat.parse(registerInfo.dateOfBirth));
new HijriCalendar.fromDate(dateFormat.parse(registerInfo.dateOfBirth));
var date = hDate.toString(); var date = hDate.toString();
return { return {
"Patientobject": { "Patientobject": {
"TempValue": true, "TempValue": true,
"PatientIdentificationType": "PatientIdentificationType": registerInfo.idNumber.substring(0, 1) == "1" ? 1 : 2,
registerInfo.idNumber.substring(0, 1) == "1" ? 1 : 2,
"PatientIdentificationNo": registerInfo.idNumber, "PatientIdentificationNo": registerInfo.idNumber,
"MobileNumber": registerd_data.patientMobileNumber, "MobileNumber": registerd_data.patientMobileNumber,
"PatientOutSA": (registerd_data.zipCode == '966' || "PatientOutSA": (registerd_data.zipCode == '966' || registerd_data.zipCode == '+966') ? 0 : 1,
registerd_data.zipCode == '+966')
? 0
: 1,
"FirstNameN": registerInfo.firstNameAr, "FirstNameN": registerInfo.firstNameAr,
"FirstName": registerInfo.firstNameEn, "FirstName": registerInfo.firstNameEn,
"MiddleNameN": registerInfo.secondNameAr, "MiddleNameN": registerInfo.secondNameAr,
@ -734,9 +550,8 @@ class _RegisterInfo extends State<RegisterInfo> {
"LastNameN": registerInfo.lastNameAr, "LastNameN": registerInfo.lastNameAr,
"LastName": registerInfo.lastNameEn, "LastName": registerInfo.lastNameEn,
"StrDateofBirth": registerInfo.dateOfBirth, "StrDateofBirth": registerInfo.dateOfBirth,
"DateofBirth": DateUtil.convertISODateToJsonDate( "DateofBirth": DateUtil.convertISODateToJsonDate(registerInfo.dateOfBirth.replaceAll('/', '-')),
registerInfo.dateOfBirth.replaceAll('/', '-')), "Gender": registerInfo.gender == 'M' ? 1 : 2,
"Gender": registerInfo.gender== 'M' ? 1 : 2,
"NationalityID": registerInfo.nationalityCode, "NationalityID": registerInfo.nationalityCode,
"eHealthIDField": registerInfo.healthId, "eHealthIDField": registerInfo.healthId,
"DateofBirthN": date, "DateofBirthN": date,
@ -750,20 +565,15 @@ class _RegisterInfo extends State<RegisterInfo> {
: '2', : '2',
}, },
"PatientIdentificationID": registerInfo.idNumber, "PatientIdentificationID": registerInfo.idNumber,
"PatientMobileNumber": "PatientMobileNumber": registerd_data.patientMobileNumber.toString()[0] == '0' ? registerd_data.patientMobileNumber : '0' + registerd_data.patientMobileNumber.toString(),
registerd_data.patientMobileNumber.toString()[0] == '0'
? registerd_data.patientMobileNumber
: '0' + registerd_data.patientMobileNumber.toString(),
}; };
} }
getTempUserRequestDubai() {
getTempUserRequestDubai(){
DateFormat dateFormat = DateFormat("mm/dd/yyyy"); DateFormat dateFormat = DateFormat("mm/dd/yyyy");
registerInfo= projectViewModel.registerInfo; registerInfo = projectViewModel.registerInfo;
print(dateFormat.parse(registerd_data.dob)); print(dateFormat.parse(registerd_data.dob));
var hDate = var hDate = new HijriCalendar.fromDate(dateFormat.parse(registerd_data.dob));
new HijriCalendar.fromDate(dateFormat.parse(registerd_data.dob));
var date = hDate.toString(); var date = hDate.toString();
final DateFormat dateFormat1 = DateFormat('MM/dd/yyyy'); final DateFormat dateFormat1 = DateFormat('MM/dd/yyyy');
final DateFormat dateFormat2 = DateFormat('dd/MM/yyyy'); final DateFormat dateFormat2 = DateFormat('dd/MM/yyyy');
@ -771,27 +581,21 @@ class _RegisterInfo extends State<RegisterInfo> {
return { return {
"Patientobject": { "Patientobject": {
"TempValue": true, "TempValue": true,
"PatientIdentificationType": "PatientIdentificationType": registerd_data.patientIdentificationID.substring(0, 1) == "1" ? 1 : 2,
registerd_data.patientIdentificationID.substring(0, 1) == "1" ? 1 : 2,
"PatientIdentificationNo": registerd_data.patientIdentificationID, "PatientIdentificationNo": registerd_data.patientIdentificationID,
"MobileNumber": registerd_data.patientMobileNumber, "MobileNumber": registerd_data.patientMobileNumber,
"PatientOutSA": (registerd_data.zipCode == '966' || "PatientOutSA": (registerd_data.zipCode == '966' || registerd_data.zipCode == '+966') ? 0 : 1,
registerd_data.zipCode == '+966') "FirstNameN": registerInfo.firstNameAr ?? "",
? 0 "FirstName": registerInfo.firstNameEn ?? "",
: 1, "MiddleNameN": registerInfo.secondNameAr ?? ".",
"FirstNameN": registerInfo.firstNameAr ??"", "MiddleName": registerInfo.secondNameEn ?? ".",
"FirstName": registerInfo.firstNameEn??"", "LastNameN": registerInfo.lastNameAr ?? "",
"MiddleNameN": registerInfo.secondNameAr?? "", "LastName": registerInfo.lastNameEn ?? "",
"MiddleName": registerInfo.secondNameEn ??"", "StrDateofBirth": dateFormat1.format(dateFormat2.parse(registerd_data.dob)),
"LastNameN": registerInfo.lastNameAr ??"", "DateofBirth": DateUtil.convertISODateToJsonDate(registerd_data.dob.replaceAll('/', '-')),
"LastName":registerInfo.lastNameEn ??"", "Gender": registerInfo.gender == 'M' ? 1 : 2,
"StrDateofBirth": dateFormat1.format(
dateFormat2.parse(registerd_data.dob)),
"DateofBirth": DateUtil.convertISODateToJsonDate(
registerd_data.dob.replaceAll('/', '-')),
"Gender": registerInfo.gender== 'M' ? 1 : 2,
"NationalityID": registerInfo.nationalityCode, "NationalityID": registerInfo.nationalityCode,
"eHealthIDField":null, "eHealthIDField": null,
"DateofBirthN": date, "DateofBirthN": date,
"EmailAddress": email, "EmailAddress": email,
"SourceType": location, "SourceType": location,
@ -803,19 +607,16 @@ class _RegisterInfo extends State<RegisterInfo> {
: '2', : '2',
}, },
"PatientIdentificationID": registerd_data.patientIdentificationID, "PatientIdentificationID": registerd_data.patientIdentificationID,
"PatientMobileNumber": "PatientMobileNumber": registerd_data.patientMobileNumber.toString()[0] == '0' ? registerd_data.patientMobileNumber : '0' + registerd_data.patientMobileNumber.toString(),
registerd_data.patientMobileNumber.toString()[0] == '0' "DOB": registerd_data.dob,
? registerd_data.patientMobileNumber "IsHijri": registerd_data.isHijri
: '0' + registerd_data.patientMobileNumber.toString(),
"DOB":registerd_data.dob,
"IsHijri":registerd_data.isHijri
}; };
} }
bool isValid() { bool isValid() {
if ((location != null && if ((location != null && language != null && Utils.validEmail(email) == true) ||
language != null && (registerInfo.firstNameEn != null && registerInfo.lastNameEn != null) ||
Utils.validEmail(email) == true) || (registerInfo.firstNameEn !=null && registerInfo.secondNameEn !=null && registerInfo.lastNameEn !=null) || (projectViewModel.isArabic && registerInfo.firstNameEn !=null && registerInfo.firstNameAr !=null && registerInfo.lastNameEn !=null && registerInfo.secondNameAr !=null && registerInfo.lastNameAr !=null)) { (projectViewModel.isArabic && registerInfo.firstNameEn != null && registerInfo.firstNameAr != null && registerInfo.lastNameEn != null && registerInfo.lastNameAr != null)) {
return true; return true;
} else { } else {
return false; return false;
@ -892,10 +693,7 @@ class _RegisterInfo extends State<RegisterInfo> {
insertIMEI() async { insertIMEI() async {
var selectedOption = await sharedPref.getInt(LAST_LOGIN); var selectedOption = await sharedPref.getInt(LAST_LOGIN);
authService authService.insertDeviceImei(selectedOption).then((value) => {goToHome()}).catchError((err) {
.insertDeviceImei(selectedOption)
.then((value) => {goToHome()})
.catchError((err) {
print(err); print(err);
}); });
} }
@ -908,8 +706,7 @@ class _RegisterInfo extends State<RegisterInfo> {
await authenticatedUserObject.getUser(getUser: true); await authenticatedUserObject.getUser(getUser: true);
appointmentRateViewModel appointmentRateViewModel
.getIsLastAppointmentRatedList() .getIsLastAppointmentRatedList()
.then((value) => .then((value) => {
{
getToDoCount(), getToDoCount(),
GifLoaderDialogUtils.hideDialog(AppGlobal.context), GifLoaderDialogUtils.hideDialog(AppGlobal.context),
if (appointmentRateViewModel.isHaveAppointmentNotRate) if (appointmentRateViewModel.isHaveAppointmentNotRate)
@ -954,10 +751,7 @@ class _RegisterInfo extends State<RegisterInfo> {
ClinicListService service = new ClinicListService(); ClinicListService service = new ClinicListService();
service.getCountries().then((res) { service.getCountries().then((res) {
if (res['MessageStatus'] == 1) { if (res['MessageStatus'] == 1) {
res['ListNationality'].forEach((items) => {countriesList.add(CountriesLists.fromJson(items))});
res['ListNationality'].forEach((items) => {
countriesList.add(CountriesLists.fromJson(items))
});
setState(() {}); setState(() {});
} }
@ -966,7 +760,6 @@ class _RegisterInfo extends State<RegisterInfo> {
}); });
} }
Widget inputWidget(String _labelText, String _hintText, String name, {String prefix, bool isEnable = true, bool hasSelection = false}) { Widget inputWidget(String _labelText, String _hintText, String name, {String prefix, bool isEnable = true, bool hasSelection = false}) {
return Container( return Container(
padding: EdgeInsets.only(left: 10, right: 10, bottom: 5, top: 5), padding: EdgeInsets.only(left: 10, right: 10, bottom: 5, top: 5),
@ -1000,41 +793,39 @@ class _RegisterInfo extends State<RegisterInfo> {
TextField( TextField(
enabled: isEnable, enabled: isEnable,
scrollPadding: EdgeInsets.zero, scrollPadding: EdgeInsets.zero,
keyboardType: TextInputType.number, keyboardType: TextInputType.text,
// controller: _controller, // controller: _controller,
onChanged: (value) => { onChanged: (value) => {
setState((){ setState(() {
switch(name) { switch (name) {
case 'fName': case 'fName':
{ {
if(projectViewModel.isArabic) { if (projectViewModel.isArabic) {
registerInfo.firstNameAr = value; registerInfo.firstNameAr = value;
} else {
}else{ registerInfo.firstNameEn = value;
registerInfo.firstNameEn =value; registerInfo.firstNameAr = '...';
registerInfo.firstNameAr ='...';
} }
} }
break; break;
case 'sName': case 'sName':
{ {
if(projectViewModel.isArabic) { if (projectViewModel.isArabic) {
registerInfo.secondNameAr = value; registerInfo.secondNameAr = value.isEmpty ? "." : value;
registerInfo.secondNameEn ='...'; registerInfo.secondNameEn = '...';
}else{ } else {
registerInfo.secondNameEn =value; registerInfo.secondNameEn = value.isEmpty ? "." : value;
registerInfo.secondNameAr ='...'; registerInfo.secondNameAr = '...';
} }
} }
break; break;
case 'lName': case 'lName':
{ {
if(projectViewModel.isArabic) { if (projectViewModel.isArabic) {
registerInfo.lastNameAr = value; registerInfo.lastNameAr = value;
} else {
}else{ registerInfo.lastNameEn = value;
registerInfo.lastNameEn =value; registerInfo.lastNameAr = '...';
registerInfo.lastNameAr ='...';
} }
} }
break; break;
@ -1047,7 +838,6 @@ class _RegisterInfo extends State<RegisterInfo> {
} }
}) })
//_controller.text =value //_controller.text =value
}, },
style: TextStyle( style: TextStyle(
fontSize: 14, fontSize: 14,
@ -1067,7 +857,6 @@ class _RegisterInfo extends State<RegisterInfo> {
letterSpacing: -0.56, letterSpacing: -0.56,
), ),
prefixIconConstraints: BoxConstraints(minWidth: 50), prefixIconConstraints: BoxConstraints(minWidth: 50),
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
border: InputBorder.none, border: InputBorder.none,
focusedBorder: InputBorder.none, focusedBorder: InputBorder.none,
@ -1083,14 +872,13 @@ class _RegisterInfo extends State<RegisterInfo> {
), ),
); );
} }
} }
class Language { class Language {
final String name; final String name;
final String value; final String value;
final String nameAr; final String nameAr;
Language({this.name, this.value, this.nameAr}); Language({this.name, this.value, this.nameAr});
} }

@ -57,8 +57,8 @@ class _PatientSickLeavePageState extends State<PatientSickLeavePage> {
subName: model.sickLeaveList[index].clinicName, subName: model.sickLeaveList[index].clinicName,
isSortByClinic: false, isSortByClinic: false,
isInOutPatient: model.sickLeaveList[index].isInOutPatient, isInOutPatient: model.sickLeaveList[index].isInOutPatient,
isSickLeave: true, // isSickLeave: true,
sickLeaveStatus: model.sickLeaveList[index].status, // sickLeaveStatus: model.sickLeaveList[index].status,
onEmailTap: () { onEmailTap: () {
showConfirmMessage(model, index); showConfirmMessage(model, index);
}, },
@ -69,13 +69,13 @@ class _PatientSickLeavePageState extends State<PatientSickLeavePage> {
} }
void showConfirmMessage(PatientSickLeaveViewMode model, int index) { void showConfirmMessage(PatientSickLeaveViewMode model, int index) {
if (model.sickLeaveList[index].status == 1) { // if (model.sickLeaveList[index].status == 1) {
openWorkPlaceUpdatePage(model.sickLeaveList[index].requestNo, model.sickLeaveList[index].setupID, model, index, model.sickLeaveList[index].projectID); // openWorkPlaceUpdatePage(model.sickLeaveList[index].requestNo, model.sickLeaveList[index].setupID, model, index, model.sickLeaveList[index].projectID);
} else if (model.sickLeaveList[index].status == 2) { // } else if (model.sickLeaveList[index].status == 2) {
showEmailDialog(model, index); showEmailDialog(model, index);
} else { // } else {
showApprovalDialog(); // showApprovalDialog();
} // }
} }
void showApprovalDialog() { void showApprovalDialog() {

@ -303,6 +303,10 @@ class PushNotificationHandler {
onToken(token); onToken(token);
}); });
FirebaseMessaging.instance.getAPNSToken().then((value) {
print("Push APNS getToken: " + value);
});
FirebaseMessaging.onBackgroundMessage(backgroundMessageHandler); FirebaseMessaging.onBackgroundMessage(backgroundMessageHandler);
} }

@ -37,9 +37,9 @@ class MyInAppBrowser extends InAppBrowser {
// static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL LIVE // static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL LIVE
static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL UAT static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL UAT
static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWeb/pages/SendPayFortRequest.aspx'; // Payfort Payment Gateway URL UAT // static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWeb/pages/SendPayFortRequest.aspx'; // Payfort Payment Gateway URL UAT
// static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWebLive/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL LIVE static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWebLive/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL LIVE
// static String SERVICE_URL = 'https://uat.hmgwebservices.com/payfortforvidaplus/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL UAT VIDA PLUS // static String SERVICE_URL = 'https://uat.hmgwebservices.com/payfortforvidaplus/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL UAT VIDA PLUS

@ -1,7 +1,7 @@
name: diplomaticquarterapp name: diplomaticquarterapp
description: A new Flutter application. description: A new Flutter application.
version: 4.5.62+1 version: 4.5.63+1
environment: environment:
sdk: ">=2.7.0 <3.0.0" sdk: ">=2.7.0 <3.0.0"

Loading…
Cancel
Save