flutter 2 models

merge-requests/892/head
hussam al-habibeh 4 years ago
parent a8adacfc5c
commit 1146f613df

@ -18,7 +18,8 @@ class DischargeSummaryService extends BaseService {
_allDischargeSummaryList; _allDischargeSummaryList;
Future getPendingDischargeSummary( Future getPendingDischargeSummary(
{required GetDischargeSummaryReqModel getDischargeSummaryReqModel}) async { {required GetDischargeSummaryReqModel
getDischargeSummaryReqModel}) async {
hasError = false; hasError = false;
await baseAppClient.post(GET_PENDING_DISCHARGE_SUMMARY, await baseAppClient.post(GET_PENDING_DISCHARGE_SUMMARY,
onSuccess: (dynamic response, int statusCode) { onSuccess: (dynamic response, int statusCode) {
@ -36,7 +37,7 @@ class DischargeSummaryService extends BaseService {
} }
Future getAllDischargeSummary( Future getAllDischargeSummary(
{GetDischargeSummaryReqModel getDischargeSummaryReqModel}) async { {GetDischargeSummaryReqModel? getDischargeSummaryReqModel}) async {
hasError = false; hasError = false;
await baseAppClient.post(GET_ALL_DISCHARGE_SUMMARY, await baseAppClient.post(GET_ALL_DISCHARGE_SUMMARY,
onSuccess: (dynamic response, int statusCode) { onSuccess: (dynamic response, int statusCode) {
@ -49,6 +50,6 @@ class DischargeSummaryService extends BaseService {
}, onFailure: (String error, int statusCode) { }, onFailure: (String error, int statusCode) {
hasError = true; hasError = true;
super.error = error; super.error = error;
}, body: getDischargeSummaryReqModel.toJson()); }, body: getDischargeSummaryReqModel!.toJson());
} }
} }

@ -11,12 +11,11 @@ class OperationReportService extends BaseService {
List<GetReservationsResponseModel> get reservationList => _reservationList; List<GetReservationsResponseModel> get reservationList => _reservationList;
List<GetOperationDetailsResponseModel> _operationDetailsList = []; List<GetOperationDetailsResponseModel> _operationDetailsList = [];
List<GetOperationDetailsResponseModel> get operationDetailsList => _operationDetailsList; List<GetOperationDetailsResponseModel> get operationDetailsList =>
_operationDetailsList;
Future getReservations( Future getReservations({required int patientId}) async {
{ GetReservationsRequestModel getReservationsRequestModel =
required int patientId}) async {
getReservationsRequestModel =
GetReservationsRequestModel(patientID: patientId, doctorID: ""); GetReservationsRequestModel(patientID: patientId, doctorID: "");
hasError = false; hasError = false;
@ -35,10 +34,9 @@ class OperationReportService extends BaseService {
}, body: getReservationsRequestModel.toJson()); }, body: getReservationsRequestModel.toJson());
} }
Future getOperationReportDetails( Future getOperationReportDetails({
{required GetOperationDetailsRequestModel getOperationReportRequestModel, required GetOperationDetailsRequestModel getOperationReportRequestModel,
}) async { }) async {
hasError = false; hasError = false;
await baseAppClient.post(GET_OPERATION_DETAILS, await baseAppClient.post(GET_OPERATION_DETAILS,
onSuccess: (dynamic response, int statusCode) { onSuccess: (dynamic response, int statusCode) {
@ -46,7 +44,8 @@ class OperationReportService extends BaseService {
_operationDetailsList.clear(); _operationDetailsList.clear();
response['List_OperationDetails'].forEach( response['List_OperationDetails'].forEach(
(v) { (v) {
_operationDetailsList.add(GetOperationDetailsResponseModel.fromJson(v)); _operationDetailsList
.add(GetOperationDetailsResponseModel.fromJson(v));
}, },
); );
}, onFailure: (String error, int statusCode) { }, onFailure: (String error, int statusCode) {

@ -43,16 +43,20 @@ class AuthenticationViewModel extends BaseViewModel {
NewLoginInformationModel get loginInfo => _authService.loginInfo; NewLoginInformationModel get loginInfo => _authService.loginInfo;
List<DoctorProfileModel> get doctorProfilesList => _authService.doctorProfilesList; List<DoctorProfileModel> get doctorProfilesList =>
_authService.doctorProfilesList;
SendActivationCodeForDoctorAppResponseModel get activationCodeVerificationScreenRes => SendActivationCodeForDoctorAppResponseModel
_authService.activationCodeVerificationScreenRes; get activationCodeVerificationScreenRes =>
_authService.activationCodeVerificationScreenRes;
SendActivationCodeForDoctorAppResponseModel get activationCodeForDoctorAppRes => SendActivationCodeForDoctorAppResponseModel
_authService.activationCodeForDoctorAppRes; get activationCodeForDoctorAppRes =>
_authService.activationCodeForDoctorAppRes;
CheckActivationCodeForDoctorAppResponseModel get checkActivationCodeForDoctorAppRes => CheckActivationCodeForDoctorAppResponseModel
_authService.checkActivationCodeForDoctorAppRes; get checkActivationCodeForDoctorAppRes =>
_authService.checkActivationCodeForDoctorAppRes;
NewLoginInformationModel? loggedUser; NewLoginInformationModel? loggedUser;
GetIMEIDetailsModel? user; GetIMEIDetailsModel? user;
@ -66,13 +70,12 @@ class AuthenticationViewModel extends BaseViewModel {
bool unverified = false; bool unverified = false;
bool isFromLogin = false; bool isFromLogin = false;
APP_STATUS appStatus = APP_STATUS.LOADING; APP_STATUS appStatus = APP_STATUS.LOADING;
String localToken =""; String localToken = "";
AuthenticationViewModel() { AuthenticationViewModel() {
getDeviceInfoFromFirebase(); getDeviceInfoFromFirebase();
getDoctorProfile(); getDoctorProfile();
} }
/// Insert Device IMEI /// Insert Device IMEI
Future insertDeviceImei(token) async { Future insertDeviceImei(token) async {
var loggedIn = await sharedPref.getObj(LOGGED_IN_USER); var loggedIn = await sharedPref.getObj(LOGGED_IN_USER);
@ -86,19 +89,29 @@ class AuthenticationViewModel extends BaseViewModel {
profileInfo['IMEI'] = token; profileInfo['IMEI'] = token;
profileInfo['LogInTypeID'] = await sharedPref.getInt(OTP_TYPE); profileInfo['LogInTypeID'] = await sharedPref.getInt(OTP_TYPE);
profileInfo['BioMetricEnabled'] = true; profileInfo['BioMetricEnabled'] = true;
profileInfo['MobileNo'] = loggedIn != null ? loggedIn['MobileNumber'] : user!.mobile; profileInfo['MobileNo'] =
InsertIMEIDetailsModel insertIMEIDetailsModel = InsertIMEIDetailsModel.fromJson(profileInfo); loggedIn != null ? loggedIn['MobileNumber'] : user!.mobile;
insertIMEIDetailsModel.genderDescription = profileInfo['Gender_Description']; InsertIMEIDetailsModel insertIMEIDetailsModel =
insertIMEIDetailsModel.genderDescriptionN = profileInfo['Gender_DescriptionN']; InsertIMEIDetailsModel.fromJson(profileInfo);
insertIMEIDetailsModel.genderDescriptionN = profileInfo['Gender_DescriptionN']; insertIMEIDetailsModel.genderDescription =
profileInfo['Gender_Description'];
insertIMEIDetailsModel.genderDescriptionN =
profileInfo['Gender_DescriptionN'];
insertIMEIDetailsModel.genderDescriptionN =
profileInfo['Gender_DescriptionN'];
insertIMEIDetailsModel.titleDescription = profileInfo['Title_Description']; insertIMEIDetailsModel.titleDescription = profileInfo['Title_Description'];
insertIMEIDetailsModel.titleDescriptionN = profileInfo['Title_DescriptionN']; insertIMEIDetailsModel.titleDescriptionN =
profileInfo['Title_DescriptionN'];
insertIMEIDetailsModel.projectID = await sharedPref.getInt(PROJECT_ID); insertIMEIDetailsModel.projectID = await sharedPref.getInt(PROJECT_ID);
insertIMEIDetailsModel.doctorID = insertIMEIDetailsModel.doctorID = loggedIn != null
loggedIn != null ? loggedIn['List_MemberInformation'][0]['MemberID'] : user!.doctorID; ? loggedIn['List_MemberInformation'][0]['MemberID']
insertIMEIDetailsModel.outSA = loggedIn != null ? loggedIn['PatientOutSA'] : user!.outSA; : user!.doctorID;
insertIMEIDetailsModel.vidaAuthTokenID = await sharedPref.getString(VIDA_AUTH_TOKEN_ID); insertIMEIDetailsModel.outSA =
insertIMEIDetailsModel.vidaRefreshTokenID = await sharedPref.getString(VIDA_REFRESH_TOKEN_ID); loggedIn != null ? loggedIn['PatientOutSA'] : user!.outSA;
insertIMEIDetailsModel.vidaAuthTokenID =
await sharedPref.getString(VIDA_AUTH_TOKEN_ID);
insertIMEIDetailsModel.vidaRefreshTokenID =
await sharedPref.getString(VIDA_REFRESH_TOKEN_ID);
insertIMEIDetailsModel.password = userInfo.password; insertIMEIDetailsModel.password = userInfo.password;
await _authService.insertDeviceImei(insertIMEIDetailsModel); await _authService.insertDeviceImei(insertIMEIDetailsModel);
@ -127,20 +140,23 @@ class AuthenticationViewModel extends BaseViewModel {
} }
/// send activation code for for msg methods /// send activation code for for msg methods
Future sendActivationCodeVerificationScreen(AuthMethodTypes authMethodType) async { Future sendActivationCodeVerificationScreen(
AuthMethodTypes authMethodType) async {
setState(ViewState.BusyLocal); setState(ViewState.BusyLocal);
ActivationCodeForVerificationScreenModel activationCodeModel = ActivationCodeForVerificationScreenModel( ActivationCodeForVerificationScreenModel activationCodeModel =
iMEI: user!.iMEI, ActivationCodeForVerificationScreenModel(
facilityId: user!.projectID, iMEI: user!.iMEI,
memberID: user!.doctorID, facilityId: user!.projectID,
loginDoctorID: int.parse(user!.editedBy.toString()), memberID: user!.doctorID,
zipCode: user!.outSA == true ? '971' : '966', loginDoctorID: int.parse(user!.editedBy.toString()),
mobileNumber: user!.mobile, zipCode: user!.outSA == true ? '971' : '966',
oTPSendType: authMethodType.getTypeIdService(), mobileNumber: user!.mobile,
isMobileFingerPrint: 1, oTPSendType: authMethodType.getTypeIdService(),
vidaAuthTokenID: user!.vidaAuthTokenID, isMobileFingerPrint: 1,
vidaRefreshTokenID: user!.vidaRefreshTokenID); vidaAuthTokenID: user!.vidaAuthTokenID,
await _authService.sendActivationCodeVerificationScreen(activationCodeModel); vidaRefreshTokenID: user!.vidaRefreshTokenID);
await _authService
.sendActivationCodeVerificationScreen(activationCodeModel);
if (_authService.hasError) { if (_authService.hasError) {
error = _authService.error!; error = _authService.error!;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
@ -149,56 +165,73 @@ class AuthenticationViewModel extends BaseViewModel {
} }
/// send activation code for silent login /// send activation code for silent login
Future sendActivationCodeForDoctorApp({required AuthMethodTypes authMethodType, required String password}) async { Future sendActivationCodeForDoctorApp(
{required AuthMethodTypes authMethodType,
required String password}) async {
setState(ViewState.BusyLocal); setState(ViewState.BusyLocal);
int projectID = await sharedPref.getInt(PROJECT_ID); int projectID = await sharedPref.getInt(PROJECT_ID);
ActivationCodeModel activationCodeModel = ActivationCodeModel( ActivationCodeModel activationCodeModel = ActivationCodeModel(
facilityId: projectID, facilityId: projectID,
memberID: loggedUser!.listMemberInformation![0].memberID, memberID: loggedUser!.listMemberInformation![0].memberID,
loginDoctorID: loggedUser!.listMemberInformation![0].employeeID, loginDoctorID: loggedUser!.listMemberInformation![0].employeeID,
otpSendType: authMethodType.getTypeIdService().toString(), otpSendType: authMethodType.getTypeIdService().toString(),
); );
await _authService.sendActivationCodeForDoctorApp(activationCodeModel); await _authService.sendActivationCodeForDoctorApp(activationCodeModel);
if (_authService.hasError) { if (_authService.hasError) {
error = _authService.error!; error = _authService.error!;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else { } else {
await sharedPref.setString(TOKEN, await sharedPref.setString(
_authService.activationCodeForDoctorAppRes.logInTokenID!); TOKEN, _authService.activationCodeForDoctorAppRes.logInTokenID!);
setState(ViewState.Idle); setState(ViewState.Idle);
} }
} }
/// check activation code for sms and whats app /// check activation code for sms and whats app
Future checkActivationCodeForDoctorApp({required String activationCode,bool isSilentLogin = false}) async { Future checkActivationCodeForDoctorApp(
{required String activationCode, bool isSilentLogin = false}) async {
setState(ViewState.BusyLocal); setState(ViewState.BusyLocal);
CheckActivationCodeRequestModel checkActivationCodeForDoctorApp = new CheckActivationCodeRequestModel( CheckActivationCodeRequestModel checkActivationCodeForDoctorApp =
zipCode: loggedUser != null ? loggedUser!.zipCode : user!.zipCode, new CheckActivationCodeRequestModel(
mobileNumber: loggedUser != null ? loggedUser!.mobileNumber : user!.mobile, zipCode: loggedUser != null ? loggedUser!.zipCode : user!.zipCode,
projectID: await sharedPref.getInt(PROJECT_ID) != null ? await sharedPref.getInt(PROJECT_ID) : user!.projectID, mobileNumber:
logInTokenID: await sharedPref.getString(TOKEN), loggedUser != null ? loggedUser!.mobileNumber : user!.mobile,
activationCode: activationCode, projectID: await sharedPref.getInt(PROJECT_ID) != null
memberID:userInfo.userID!=null? int.parse(userInfo!.userID!):user!.doctorID , ? await sharedPref.getInt(PROJECT_ID)
password: userInfo.password, : user!.projectID,
facilityId:userInfo.projectID!=null? userInfo.projectID.toString():user!.projectID.toString(), logInTokenID: await sharedPref.getString(TOKEN),
oTPSendType: await sharedPref.getInt(OTP_TYPE), activationCode: activationCode,
iMEI: localToken, memberID: userInfo.userID != null
loginDoctorID:userInfo.userID!=null? int.parse(userInfo!.userID!):user!.editedBy,// loggedUser.listMemberInformation[0].employeeID, ? int.parse(userInfo!.userID!)
isForSilentLogin:isSilentLogin, : user!.doctorID,
generalid: "Cs2020@2016\$2958"); password: userInfo.password,
await _authService.checkActivationCodeForDoctorApp(checkActivationCodeForDoctorApp); facilityId: userInfo.projectID != null
? userInfo.projectID.toString()
: user!.projectID.toString(),
oTPSendType: await sharedPref.getInt(OTP_TYPE),
iMEI: localToken,
loginDoctorID: userInfo.userID != null
? int.parse(userInfo!.userID!)
: user!
.editedBy, // loggedUser.listMemberInformation[0].employeeID,
isForSilentLogin: isSilentLogin,
generalid: "Cs2020@2016\$2958");
await _authService
.checkActivationCodeForDoctorApp(checkActivationCodeForDoctorApp);
if (_authService.hasError) { if (_authService.hasError) {
error = _authService.error!; error = _authService.error!;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else { } else {
await setDataAfterSendActivationSuccess(checkActivationCodeForDoctorAppRes); await setDataAfterSendActivationSuccess(
checkActivationCodeForDoctorAppRes);
setState(ViewState.Idle); setState(ViewState.Idle);
} }
} }
/// get list of Hospitals /// get list of Hospitals
Future getHospitalsList(memberID) async { Future getHospitalsList(memberID) async {
GetHospitalsRequestModel getHospitalsRequestModel = GetHospitalsRequestModel(); GetHospitalsRequestModel getHospitalsRequestModel =
GetHospitalsRequestModel();
getHospitalsRequestModel.memberID = memberID; getHospitalsRequestModel.memberID = memberID;
await _hospitalsService.getHospitals(getHospitalsRequestModel); await _hospitalsService.getHospitals(getHospitalsRequestModel);
if (_hospitalsService.hasError) { if (_hospitalsService.hasError) {
@ -230,13 +263,15 @@ class AuthenticationViewModel extends BaseViewModel {
} }
/// add  token to shared preferences in case of send activation code is success /// add  token to shared preferences in case of send activation code is success
setDataAfterSendActivationSuccess(CheckActivationCodeForDoctorAppResponseModel sendActivationCodeForDoctorAppResponseModel)async { setDataAfterSendActivationSuccess(
// print("VerificationCode : " + sendActivationCodeForDoctorAppResponseModel.verificationCode); CheckActivationCodeForDoctorAppResponseModel
await sharedPref.setString(VIDA_AUTH_TOKEN_ID, sendActivationCodeForDoctorAppResponseModel) async {
sendActivationCodeForDoctorAppResponseModel.vidaAuthTokenID); // print("VerificationCode : " + sendActivationCodeForDoctorAppResponseModel.verificationCode);
await sharedPref.setString(VIDA_REFRESH_TOKEN_ID, await sharedPref.setString(VIDA_AUTH_TOKEN_ID,
sendActivationCodeForDoctorAppResponseModel.vidaRefreshTokenID); sendActivationCodeForDoctorAppResponseModel.vidaAuthTokenID!);
await sharedPref.setString(TOKEN, await sharedPref.setString(VIDA_REFRESH_TOKEN_ID,
sendActivationCodeForDoctorAppResponseModel.vidaRefreshTokenID!);
await sharedPref.setString(TOKEN,
sendActivationCodeForDoctorAppResponseModel.authenticationTokenID!); sendActivationCodeForDoctorAppResponseModel.authenticationTokenID!);
} }
@ -275,7 +310,9 @@ class AuthenticationViewModel extends BaseViewModel {
clinicID: clinicInfo.clinicID, clinicID: clinicInfo.clinicID,
license: true, license: true,
projectID: clinicInfo.projectID, projectID: clinicInfo.projectID,
languageID: 2);///TODO change the lan languageID: 2);
///TODO change the lan
await _authService.getDoctorProfileBasedOnClinic(docInfo); await _authService.getDoctorProfileBasedOnClinic(docInfo);
if (_authService.hasError) { if (_authService.hasError) {
error = _authService.error!; error = _authService.error!;
@ -288,13 +325,17 @@ class AuthenticationViewModel extends BaseViewModel {
/// add some logic in case of check activation code is success /// add some logic in case of check activation code is success
onCheckActivationCodeSuccess({bool isSilentLogin = false}) async { onCheckActivationCodeSuccess({bool isSilentLogin = false}) async {
sharedPref.setString(TOKEN, checkActivationCodeForDoctorAppRes.authenticationTokenID!); sharedPref.setString(
TOKEN, checkActivationCodeForDoctorAppRes.authenticationTokenID!);
if (checkActivationCodeForDoctorAppRes.listDoctorProfile != null && if (checkActivationCodeForDoctorAppRes.listDoctorProfile != null &&
checkActivationCodeForDoctorAppRes.listDoctorProfile!.isNotEmpty) { checkActivationCodeForDoctorAppRes.listDoctorProfile!.isNotEmpty) {
localSetDoctorProfile(checkActivationCodeForDoctorAppRes.listDoctorProfile![0]); localSetDoctorProfile(
checkActivationCodeForDoctorAppRes.listDoctorProfile![0]);
} else { } else {
sharedPref.setObj(CLINIC_NAME, checkActivationCodeForDoctorAppRes.listDoctorsClinic); sharedPref.setObj(
ClinicModel clinic = ClinicModel.fromJson(checkActivationCodeForDoctorAppRes.listDoctorsClinic![0].toJson()); CLINIC_NAME, checkActivationCodeForDoctorAppRes.listDoctorsClinic);
ClinicModel clinic = ClinicModel.fromJson(
checkActivationCodeForDoctorAppRes.listDoctorsClinic![0].toJson());
await getDoctorProfileBasedOnClinic(clinic); await getDoctorProfileBasedOnClinic(clinic);
} }
} }
@ -336,13 +377,13 @@ class AuthenticationViewModel extends BaseViewModel {
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else { } else {
if (_authService.dashboardItemsList.length > 0) { if (_authService.dashboardItemsList.length > 0) {
user =_authService.dashboardItemsList[0]; user = _authService.dashboardItemsList[0];
sharedPref.setObj( sharedPref.setObj(
LAST_LOGIN_USER, _authService.dashboardItemsList[0]); LAST_LOGIN_USER, _authService.dashboardItemsList[0]);
await sharedPref.setString(VIDA_REFRESH_TOKEN_ID, await sharedPref.setString(
user!.vidaRefreshTokenID!); VIDA_REFRESH_TOKEN_ID, user!.vidaRefreshTokenID!);
await sharedPref.setString(VIDA_AUTH_TOKEN_ID, await sharedPref.setString(
user!.vidaAuthTokenID!); VIDA_AUTH_TOKEN_ID, user!.vidaAuthTokenID!);
this.unverified = true; this.unverified = true;
} }
setState(ViewState.Idle); setState(ViewState.Idle);
@ -352,7 +393,6 @@ class AuthenticationViewModel extends BaseViewModel {
} }
} }
/// determine the status of the app /// determine the status of the app
APP_STATUS get status { APP_STATUS get status {
if (state == ViewState.Busy) { if (state == ViewState.Busy) {

@ -14,16 +14,20 @@ class DischargeSummaryViewModel extends BaseViewModel {
List<GetDischargeSummaryResModel> get pendingDischargeSummaryList => List<GetDischargeSummaryResModel> get pendingDischargeSummaryList =>
_dischargeSummaryService.pendingDischargeSummaryList; _dischargeSummaryService.pendingDischargeSummaryList;
List<GetDischargeSummaryResModel> get allDisChargeSummaryList => List<GetDischargeSummaryResModel> get allDisChargeSummaryList =>
_dischargeSummaryService.allDischargeSummaryList; _dischargeSummaryService.allDischargeSummaryList;
Future getPendingDischargeSummary({
Future getPendingDischargeSummary({required int patientId, required int admissionNo, }) async { required int patientId,
GetDischargeSummaryReqModel getDischargeSummaryReqModel = GetDischargeSummaryReqModel(admissionNo:admissionNo,patientID: patientId ); required int admissionNo,
}) async {
GetDischargeSummaryReqModel getDischargeSummaryReqModel =
GetDischargeSummaryReqModel(
admissionNo: admissionNo, patientID: patientId);
hasError = false; hasError = false;
setState(ViewState.Busy); setState(ViewState.Busy);
await _dischargeSummaryService.getPendingDischargeSummary(getDischargeSummaryReqModel: getDischargeSummaryReqModel); await _dischargeSummaryService.getPendingDischargeSummary(
getDischargeSummaryReqModel: getDischargeSummaryReqModel);
if (_dischargeSummaryService.hasError) { if (_dischargeSummaryService.hasError) {
error = _dischargeSummaryService.error!; error = _dischargeSummaryService.error!;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
@ -32,19 +36,22 @@ class DischargeSummaryViewModel extends BaseViewModel {
} }
} }
Future getAllDischargeSummary({
int? patientId,
Future getAllDischargeSummary({int patientId, int admissionNo, }) async { int? admissionNo,
GetDischargeSummaryReqModel getDischargeSummaryReqModel = GetDischargeSummaryReqModel(admissionNo:admissionNo,patientID: patientId ); }) async {
GetDischargeSummaryReqModel getDischargeSummaryReqModel =
GetDischargeSummaryReqModel(
admissionNo: admissionNo!, patientID: patientId!);
hasError = false; hasError = false;
setState(ViewState.Busy); setState(ViewState.Busy);
await _dischargeSummaryService.getAllDischargeSummary(getDischargeSummaryReqModel: getDischargeSummaryReqModel); await _dischargeSummaryService.getAllDischargeSummary(
getDischargeSummaryReqModel: getDischargeSummaryReqModel);
if (_dischargeSummaryService.hasError) { if (_dischargeSummaryService.hasError) {
error = _dischargeSummaryService.error; error = _dischargeSummaryService.error!;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);
} else { } else {
setState(ViewState.Idle); setState(ViewState.Idle);
} }
} }
} }

@ -42,7 +42,10 @@ class _DiabeticChartState extends State<DiabeticChart> {
DiabeticType(nameAr: "Urine Glucose", nameEn: "Urine Glucose", value: 1), DiabeticType(nameAr: "Urine Glucose", nameEn: "Urine Glucose", value: 1),
DiabeticType(nameAr: "Urine Acet", nameEn: "Urine Acet", value: 2), DiabeticType(nameAr: "Urine Acet", nameEn: "Urine Acet", value: 2),
DiabeticType(nameAr: "Blood Glucose", nameEn: "Blood Glucose", value: 3), DiabeticType(nameAr: "Blood Glucose", nameEn: "Blood Glucose", value: 3),
DiabeticType(nameAr: "Blood Glucose(Glucometer)", nameEn: "Blood Glucose(Glucometer)", value: 4) DiabeticType(
nameAr: "Blood Glucose(Glucometer)",
nameEn: "Blood Glucose(Glucometer)",
value: 4)
]; ];
late DiabeticType selectedDiabeticType; late DiabeticType selectedDiabeticType;
@ -56,7 +59,8 @@ class _DiabeticChartState extends State<DiabeticChart> {
onModelReady: (model) async { onModelReady: (model) async {
selectedDiabeticType = diabeticType[2]; selectedDiabeticType = diabeticType[2];
await model.getDiabeticChartValues(patient, selectedDiabeticType.value, isLocalBusy: false); await model.getDiabeticChartValues(patient, selectedDiabeticType.value!,
isLocalBusy: false);
generateData(model); generateData(model);
}, },
builder: (_, model, w) => AppScaffold( builder: (_, model, w) => AppScaffold(
@ -70,84 +74,69 @@ class _DiabeticChartState extends State<DiabeticChart> {
child: Column( child: Column(
children: [ children: [
Container( Container(
width: MediaQuery.of(context).size.width * 0.7, width: MediaQuery.of(context).size.width * 0.7,
child: DropdownButtonHideUnderline( child: DropdownButtonHideUnderline(
child: DropdownButton( child: DropdownButton(
dropdownColor: Colors.white, dropdownColor: Colors.white,
iconEnabledColor: Colors.black, iconEnabledColor: Colors.black,
isExpanded: true, isExpanded: true,
value: selectedDiabeticType.value, value: selectedDiabeticType.value,
iconSize: 25, iconSize: 25,
elevation: 16, elevation: 16,
selectedItemBuilder: (BuildContext context) { selectedItemBuilder: (BuildContext context) {
return diabeticType return diabeticType.map((item) {
.map((item) { return Row(
return Row( mainAxisSize: MainAxisSize.max,
mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.end,
mainAxisAlignment: children: <Widget>[
MainAxisAlignment.end, Column(
children: <Widget>[ mainAxisAlignment: MainAxisAlignment.center,
Column( children: [
mainAxisAlignment: Container(
MainAxisAlignment.center, padding: EdgeInsets.all(2),
children: [ margin: EdgeInsets.all(2),
Container( decoration: new BoxDecoration(
color: Colors.red[800],
padding: EdgeInsets.all(2), borderRadius: BorderRadius.circular(20),
margin: EdgeInsets.all(2), ),
decoration: new BoxDecoration( constraints: BoxConstraints(
color: Colors.red[800], minWidth: 20,
borderRadius: minHeight: 20,
BorderRadius.circular( ),
20), child: Center(
), child: AppText(
constraints: BoxConstraints( diabeticType.length.toString(),
minWidth: 20, color: Colors.white,
minHeight: 20, fontSize:
), projectsProvider.isArabic ? 10 : 11,
child: Center( textAlign: TextAlign.center,
child: AppText( ),
diabeticType )),
.length
.toString(),
color: Colors.white,
fontSize: projectsProvider
.isArabic
? 10
: 11,
textAlign:
TextAlign.center,
),
)),
],
),
AppText(
selectedDiabeticType.nameEn,
fontSize: 12,
color: Colors.black,
fontWeight: FontWeight.bold,
textAlign: TextAlign.end),
], ],
);
}).toList();
},
onChanged: (newValue) async {
await onChangeFunc(newValue, model, patient);
setState(() {
});
},
items: diabeticType
.map((item) {
return DropdownMenuItem(
child: AppText(
item.nameEn,
textAlign: TextAlign.left,
), ),
value: item.value, AppText(selectedDiabeticType.nameEn,
); fontSize: 12,
}).toList(), color: Colors.black,
)), fontWeight: FontWeight.bold,
textAlign: TextAlign.end),
],
);
}).toList();
},
onChanged: (newValue) async {
await onChangeFunc(newValue, model, patient);
setState(() {});
},
items: diabeticType.map((item) {
return DropdownMenuItem(
child: AppText(
item.nameEn,
textAlign: TextAlign.left,
),
value: item.value,
);
}).toList(),
)),
), ),
timeSeriesData1.length != 0 || timeSeriesData2.length != 0 timeSeriesData1.length != 0 || timeSeriesData2.length != 0
? Padding( ? Padding(
@ -155,14 +144,13 @@ class _DiabeticChartState extends State<DiabeticChart> {
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Container( Container(
margin: EdgeInsets.symmetric(horizontal: 8), margin: EdgeInsets.symmetric(horizontal: 8),
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.white, color: Colors.white,
borderRadius: BorderRadius.circular(12)), borderRadius: BorderRadius.circular(12)),
child: LineChartForDiabetic( child: LineChartForDiabetic(
title: selectedDiabeticType.nameEn, title: selectedDiabeticType.nameEn!,
isOX: false, isOX: false,
timeSeries1: timeSeriesData1, timeSeries1: timeSeriesData1,
// timeSeries2: timeSeriesData2, // timeSeries2: timeSeriesData2,
@ -211,21 +199,21 @@ class _DiabeticChartState extends State<DiabeticChart> {
model.diabeticChartValuesList.toList().forEach( model.diabeticChartValuesList.toList().forEach(
(element) { (element) {
DateTime elementDate = DateTime elementDate =
AppDateUtils.getDateTimeFromServerFormat(element.dateChart); AppDateUtils.getDateTimeFromServerFormat(element.dateChart!);
if (element.resultValue.toInt() != 0) if (element.resultValue!.toInt() != 0)
timeSeriesData1.add( timeSeriesData1.add(
TimeSeriesSales2( TimeSeriesSales2(
new DateTime( new DateTime(
elementDate.year, elementDate.month, elementDate.day), elementDate.year, elementDate.month, elementDate.day),
element.resultValue.toDouble(), element.resultValue!.toDouble(),
), ),
); );
if (element.resultValue.toInt() != 0) if (element.resultValue!.toInt() != 0)
timeSeriesData2.add( timeSeriesData2.add(
TimeSeriesSales2( TimeSeriesSales2(
new DateTime( new DateTime(
elementDate.year, elementDate.month, elementDate.day), elementDate.year, elementDate.month, elementDate.day),
element.resultValue.toDouble(), element.resultValue!.toDouble(),
), ),
); );
}, },
@ -236,20 +224,17 @@ class _DiabeticChartState extends State<DiabeticChart> {
onChangeFunc(newValue, PatientViewModel model, patient) async { onChangeFunc(newValue, PatientViewModel model, patient) async {
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
setState(() { setState(() {
selectedDiabeticType = diabeticType[newValue-1]; selectedDiabeticType = diabeticType[newValue - 1];
timeSeriesData1.clear(); timeSeriesData1.clear();
timeSeriesData2.clear(); timeSeriesData2.clear();
}); });
await model.getDiabeticChartValues(patient, selectedDiabeticType.value,isLocalBusy:true); await model.getDiabeticChartValues(patient, selectedDiabeticType.value!,
if(model.state == ViewState.ErrorLocal){ isLocalBusy: true);
if (model.state == ViewState.ErrorLocal) {
Helpers.showErrorToast(model.error); Helpers.showErrorToast(model.error);
} }
generateData(model); generateData(model);
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
} }
} }

@ -12,8 +12,10 @@ import 'package:provider/provider.dart';
class DiabeticDetails extends StatefulWidget { class DiabeticDetails extends StatefulWidget {
final List<GetDiabeticChartValuesResponseModel> diabeticDetailsList; final List<GetDiabeticChartValuesResponseModel> diabeticDetailsList;
DiabeticDetails( DiabeticDetails({
{Key? key, required this.diabeticDetailsList,}); Key? key,
required this.diabeticDetailsList,
});
@override @override
_VitalSignDetailsWidgetState createState() => _VitalSignDetailsWidgetState(); _VitalSignDetailsWidgetState createState() => _VitalSignDetailsWidgetState();
@ -40,7 +42,6 @@ class _VitalSignDetailsWidgetState extends State<DiabeticDetails> {
TranslationBase.of(context).date, TranslationBase.of(context).date,
fontSize: SizeConfig.textMultiplier * 1.5, fontSize: SizeConfig.textMultiplier * 1.5,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontFamily: 'Poppins', fontFamily: 'Poppins',
), ),
// height: 60, // height: 60,
@ -52,7 +53,7 @@ class _VitalSignDetailsWidgetState extends State<DiabeticDetails> {
padding: EdgeInsets.all(8), padding: EdgeInsets.all(8),
child: Container( child: Container(
child: AppText( child: AppText(
"Result", "Result",
fontSize: SizeConfig.textMultiplier * 1.5, fontSize: SizeConfig.textMultiplier * 1.5,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontFamily: 'Poppins', fontFamily: 'Poppins',
@ -70,7 +71,8 @@ class _VitalSignDetailsWidgetState extends State<DiabeticDetails> {
), ),
Table( Table(
border: TableBorder( border: TableBorder(
horizontalInside: BorderSide(width: 1.0, color: Colors.grey[300]!), horizontalInside:
BorderSide(width: 1.0, color: Colors.grey[300]!),
), ),
children: fullData(projectViewModel), children: fullData(projectViewModel),
), ),
@ -85,7 +87,7 @@ class _VitalSignDetailsWidgetState extends State<DiabeticDetails> {
widget.diabeticDetailsList.forEach((diabetic) { widget.diabeticDetailsList.forEach((diabetic) {
var data = diabetic.resultValue; var data = diabetic.resultValue;
DateTime elementDate = DateTime elementDate =
AppDateUtils.getDateTimeFromServerFormat(diabetic.dateChart); AppDateUtils.getDateTimeFromServerFormat(diabetic.dateChart!);
if (data != 0) if (data != 0)
tableRow.add(TableRow(children: [ tableRow.add(TableRow(children: [
Container( Container(

@ -50,10 +50,11 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
print(type); print(type);
GetDiagnosisForInPatientRequestModel getDiagnosisForInPatientRequestModel = GetDiagnosisForInPatientRequestModel getDiagnosisForInPatientRequestModel =
GetDiagnosisForInPatientRequestModel( GetDiagnosisForInPatientRequestModel(
admissionNo: int.parse(patient!.admissionNo!), admissionNo: int.parse(patient!.admissionNo!),
patientTypeID: patient!.patientType!, patientTypeID: patient!.patientType!,
patientID: patient.patientId, setupID: "010266"); patientID: patient.patientId,
setupID: "010266");
model.getDiagnosisForInPatient(getDiagnosisForInPatientRequestModel); model.getDiagnosisForInPatient(getDiagnosisForInPatientRequestModel);
} }
@ -76,8 +77,7 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
), ),
body: model.diagnosisForInPatientList == null || body: model.diagnosisForInPatientList == null ||
model.diagnosisForInPatientList.length == 0 model.diagnosisForInPatientList.length == 0
? DrAppEmbeddedError( ? DrAppEmbeddedError(error: TranslationBase.of(context).noItem!)
error: TranslationBase.of(context).noItem!)
: Container( : Container(
color: Colors.grey[200], color: Colors.grey[200],
child: Column( child: Column(
@ -85,8 +85,7 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
Expanded( Expanded(
child: Container( child: Container(
child: ListView.builder( child: ListView.builder(
itemCount: itemCount: model.diagnosisForInPatientList.length,
model.diagnosisForInPatientList.length,
itemBuilder: (BuildContext ctxt, int index) { itemBuilder: (BuildContext ctxt, int index) {
return FractionallySizedBox( return FractionallySizedBox(
widthFactor: 0.95, widthFactor: 0.95,
@ -160,7 +159,7 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
.getDateTimeFromServerFormat(model .getDateTimeFromServerFormat(model
.diagnosisForInPatientList[ .diagnosisForInPatientList[
index] index]
.createdOn), .createdOn!),
isArabic: isArabic:
projectViewModel projectViewModel
.isArabic, .isArabic,
@ -186,7 +185,7 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
.getDateTimeFromServerFormat(model .getDateTimeFromServerFormat(model
.diagnosisForInPatientList[ .diagnosisForInPatientList[
index] index]
.createdOn)) .createdOn!))
: AppDateUtils.getHour( : AppDateUtils.getHour(
DateTime.now()), DateTime.now()),
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
@ -207,9 +206,9 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
MainAxisAlignment.start, MainAxisAlignment.start,
children: [ children: [
AppText( AppText(
TranslationBase.of( TranslationBase.of(context)
context) .icd! +
.icd! + " : ", " : ",
fontSize: 12, fontSize: 12,
), ),
Expanded( Expanded(
@ -228,16 +227,17 @@ class _ProgressNoteState extends State<DiagnosisScreen> {
), ),
Row( Row(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.start, MainAxisAlignment.start,
children: [ children: [
AppText("Ascii Desc : ", AppText(
"Ascii Desc : ",
fontSize: 12, fontSize: 12,
), ),
Expanded( Expanded(
child: AppText( child: AppText(
model model
.diagnosisForInPatientList[ .diagnosisForInPatientList[
index] index]
.asciiDesc, .asciiDesc,
fontSize: 12, fontSize: 12,
isCopyable: true, isCopyable: true,

@ -19,7 +19,8 @@ class LabResultHistoryDetailsWidget extends StatefulWidget {
_VitalSignDetailsWidgetState createState() => _VitalSignDetailsWidgetState(); _VitalSignDetailsWidgetState createState() => _VitalSignDetailsWidgetState();
} }
class _VitalSignDetailsWidgetState extends State<LabResultHistoryDetailsWidget> { class _VitalSignDetailsWidgetState
extends State<LabResultHistoryDetailsWidget> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
ProjectViewModel projectViewModel = Provider.of(context); ProjectViewModel projectViewModel = Provider.of(context);
@ -85,7 +86,7 @@ class _VitalSignDetailsWidgetState extends State<LabResultHistoryDetailsWidget>
List<TableRow> fullData(ProjectViewModel projectViewModel) { List<TableRow> fullData(ProjectViewModel projectViewModel) {
List<TableRow> tableRow = []; List<TableRow> tableRow = [];
widget.labResultHistory.forEach((vital) { widget.labResultHistory.forEach((vital) {
var date = AppDateUtils.convertStringToDate(vital.verifiedOnDateTime); var date = AppDateUtils.convertStringToDate(vital.verifiedOnDateTime!);
tableRow.add(TableRow(children: [ tableRow.add(TableRow(children: [
Container( Container(
child: Container( child: Container(
@ -113,4 +114,4 @@ class _VitalSignDetailsWidgetState extends State<LabResultHistoryDetailsWidget>
}); });
return tableRow; return tableRow;
} }
} }

@ -110,10 +110,10 @@ class _AllLabSpecialResultState extends State<AllLabSpecialResult> {
height: 160, height: 160,
decoration: BoxDecoration( decoration: BoxDecoration(
color: model.allSpecialLabList[index] color: model.allSpecialLabList[index]
.isLiveCareAppointment .isLiveCareAppointment!
? Colors.red[900] ? Colors.red[900]
: !model.allSpecialLabList[index] : !model.allSpecialLabList[index]
.isInOutPatient .isInOutPatient!
? Colors.black ? Colors.black
: Color(0xffa9a089), : Color(0xffa9a089),
borderRadius: BorderRadius.only( borderRadius: BorderRadius.only(
@ -135,12 +135,12 @@ class _AllLabSpecialResultState extends State<AllLabSpecialResult> {
child: Center( child: Center(
child: Text( child: Text(
model.allSpecialLabList[index] model.allSpecialLabList[index]
.isLiveCareAppointment .isLiveCareAppointment!
? TranslationBase.of(context) ? TranslationBase.of(context)
.liveCare! .liveCare!
.toUpperCase() .toUpperCase()
: !model.allSpecialLabList[index] : !model.allSpecialLabList[index]
.isInOutPatient .isInOutPatient!
? TranslationBase.of(context) ? TranslationBase.of(context)
.inPatientLabel! .inPatientLabel!
.toUpperCase() .toUpperCase()
@ -159,21 +159,21 @@ class _AllLabSpecialResultState extends State<AllLabSpecialResult> {
FadePage( FadePage(
page: SpecialLabResultDetailsPage( page: SpecialLabResultDetailsPage(
resultData: model.allSpecialLabList[index] resultData: model.allSpecialLabList[index]
.resultDataHTML, .resultDataHTML!,
patient: patient, patient: patient,
), ),
), ),
), ),
doctorName: doctorName:
model.allSpecialLabList[index].doctorName, model.allSpecialLabList[index].doctorName!,
invoiceNO: invoiceNO:
' ${model.allSpecialLabList[index].invoiceNo}', ' ${model.allSpecialLabList[index].invoiceNo}',
profileUrl: model profileUrl: model
.allSpecialLabList[index].doctorImageURL, .allSpecialLabList[index].doctorImageURL!,
branch: branch:
model.allSpecialLabList[index].projectName, model.allSpecialLabList[index].projectName!,
clinic: model clinic: model.allSpecialLabList[index]
.allSpecialLabList[index].clinicDescription, .clinicDescription!,
appointmentDate: appointmentDate:
AppDateUtils.getDateTimeFromServerFormat( AppDateUtils.getDateTimeFromServerFormat(
model.allSpecialLabList[index].createdOn, model.allSpecialLabList[index].createdOn,

@ -14,21 +14,21 @@ import 'package:html_editor_enhanced/html_editor.dart';
import 'package:permission_handler/permission_handler.dart'; import 'package:permission_handler/permission_handler.dart';
class AddVerifyMedicalReport extends StatefulWidget { class AddVerifyMedicalReport extends StatefulWidget {
final PatiantInformtion patient; final PatiantInformtion? patient;
final String?patientType; final String? patientType;
final String? arrivalType; final String? arrivalType;
final MedicalReportModel? medicalReport; final MedicalReportModel? medicalReport;
final PatientMedicalReportViewModel model; final PatientMedicalReportViewModel? model;
final MedicalReportStatus? status; final MedicalReportStatus? status;
final String? medicalNote; final String? medicalNote;
const AddVerifyMedicalReport( const AddVerifyMedicalReport(
{Key? key, {Key? key,
required this.patient, this.patient,
this.patientType, this.patientType,
this.arrivalType, this.arrivalType,
this.medicalReport, this.medicalReport,
required this.model, this.model,
this.status, this.status,
this.medicalNote}) this.medicalNote})
: super(key: key); : super(key: key);
@ -69,13 +69,26 @@ class _AddVerifyMedicalReportState extends State<AddVerifyMedicalReport> {
children: [ children: [
if (model.medicalReportTemplate.length > 0) if (model.medicalReportTemplate.length > 0)
HtmlRichEditor( HtmlRichEditor(
initialText: (widget.medicalReport != null initialText: (widget.medicalReport !=
null
? widget.medicalNote ? widget.medicalNote
: widget.model.medicalReportTemplate[0].templateText!.length > 0 : widget
? widget.model.medicalReportTemplate[0].templateText .model!
.medicalReportTemplate[
0]
.templateText!
.length >
0
? widget
.model!
.medicalReportTemplate[0]
.templateText
: ""), : ""),
hint: "Write the medical report ", hint: "Write the medical report ",
height: MediaQuery.of(context).size.height * 0.75, controller: _controller, height:
MediaQuery.of(context).size.height *
0.75,
controller: _controller,
), ),
], ],
), ),
@ -106,22 +119,30 @@ class _AddVerifyMedicalReportState extends State<AddVerifyMedicalReport> {
if (txtOfMedicalReport.isNotEmpty) { if (txtOfMedicalReport.isNotEmpty) {
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
widget.medicalReport != null widget.medicalReport != null
?await widget.model.updateMedicalReport( ? await widget.model!.updateMedicalReport(
widget.patient, widget.patient!,
txtOfMedicalReport, txtOfMedicalReport,
widget.medicalReport != null ? widget.medicalReport!.lineItemNo : null, widget.medicalReport != null
widget.medicalReport != null ? widget.medicalReport!.invoiceNo : null) ? widget.medicalReport!.lineItemNo
: await widget.model.addMedicalReport(widget.patient, txtOfMedicalReport); : null,
widget.medicalReport != null
? widget.medicalReport!.invoiceNo
: null)
: await widget.model!.addMedicalReport(
widget.patient!, txtOfMedicalReport);
//model.getMedicalReportList(patient); //model.getMedicalReportList(patient);
Navigator.pop(context); Navigator.pop(context);
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
if (widget.model.state == ViewState.ErrorLocal) { if (widget.model!.state ==
DrAppToastMsg.showErrorToast(widget.model.error); ViewState.ErrorLocal) {
DrAppToastMsg.showErrorToast(
widget.model!.error);
} }
} else { } else {
DrAppToastMsg.showErrorToast("Please enter medical note"); DrAppToastMsg.showErrorToast(
"Please enter medical note");
} }
}, },
), ),
@ -138,17 +159,22 @@ class _AddVerifyMedicalReportState extends State<AddVerifyMedicalReport> {
color: Color(0xff359846), color: Color(0xff359846),
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
onPressed: () async { onPressed: () async {
txtOfMedicalReport = await _controller.getText(); txtOfMedicalReport =
await _controller.getText();
if (txtOfMedicalReport.isNotEmpty) { if (txtOfMedicalReport.isNotEmpty) {
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
await widget.model.verifyMedicalReport(widget.patient, widget.medicalReport!); await widget.model!.verifyMedicalReport(
widget.patient!, widget.medicalReport!);
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
Navigator.pop(context); Navigator.pop(context);
if (widget.model.state == ViewState.ErrorLocal) { if (widget.model!.state ==
DrAppToastMsg.showErrorToast(widget.model.error); ViewState.ErrorLocal) {
DrAppToastMsg.showErrorToast(
widget.model!.error);
} }
} else { } else {
DrAppToastMsg.showErrorToast("Please enter medical note"); DrAppToastMsg.showErrorToast(
"Please enter medical note");
} }
}, },
), ),

@ -54,7 +54,8 @@ class _ProgressNoteState extends State<NursingProgressNoteScreen> {
GetNursingProgressNoteRequestModel( GetNursingProgressNoteRequestModel(
admissionNo: int.parse(patient!.admissionNo!), admissionNo: int.parse(patient!.admissionNo!),
patientTypeID: patient!.patientType!, patientTypeID: patient!.patientType!,
patientID: patient.patientId, setupID: "010266"); patientID: patient.patientId,
setupID: "010266");
model.getNursingProgressNote(getNursingProgressNoteRequestModel); model.getNursingProgressNote(getNursingProgressNoteRequestModel);
} }
@ -162,7 +163,7 @@ class _ProgressNoteState extends State<NursingProgressNoteScreen> {
.getDateTimeFromServerFormat(model .getDateTimeFromServerFormat(model
.patientNursingProgressNoteList[ .patientNursingProgressNoteList[
index] index]
.createdOn), .createdOn!),
isArabic: isArabic:
projectViewModel projectViewModel
.isArabic, .isArabic,
@ -188,7 +189,7 @@ class _ProgressNoteState extends State<NursingProgressNoteScreen> {
.getDateTimeFromServerFormat(model .getDateTimeFromServerFormat(model
.patientNursingProgressNoteList[ .patientNursingProgressNoteList[
index] index]
.createdOn)) .createdOn!))
: AppDateUtils.getHour( : AppDateUtils.getHour(
DateTime.now()), DateTime.now()),
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save