flutter 2 models

merge-requests/893/head
hussam al-habibeh 4 years ago
parent 1146f613df
commit 24618e5232

@ -39,10 +39,14 @@ class PatientSearchViewModel extends BaseViewModel {
if (strExist) {
filterData = [];
for (var i = 0; i < _outPatientService.patientList.length; i++) {
String firstName = _outPatientService.patientList[i].firstName!.toUpperCase();
String lastName = _outPatientService.patientList[i].lastName!.toUpperCase();
String mobile = _outPatientService.patientList[i].mobileNumber!.toUpperCase();
String patientID = _outPatientService.patientList[i].patientId.toString();
String firstName =
_outPatientService.patientList[i].firstName!.toUpperCase();
String lastName =
_outPatientService.patientList[i].lastName!.toUpperCase();
String mobile =
_outPatientService.patientList[i].mobileNumber!.toUpperCase();
String patientID =
_outPatientService.patientList[i].patientId.toString();
if (firstName.contains(str.toUpperCase()) ||
lastName.contains(str.toUpperCase()) ||
@ -58,7 +62,8 @@ class PatientSearchViewModel extends BaseViewModel {
}
}
getOutPatient(PatientSearchRequestModel patientSearchRequestModel, {bool isLocalBusy = false}) async {
getOutPatient(PatientSearchRequestModel patientSearchRequestModel,
{bool isLocalBusy = false}) async {
if (isLocalBusy) {
setState(ViewState.BusyLocal);
} else {
@ -88,9 +93,11 @@ class PatientSearchViewModel extends BaseViewModel {
setState(ViewState.Idle);
}
getPatientFileInformation(PatientSearchRequestModel patientSearchRequestModel, {bool isLocalBusy = false}) async {
getPatientFileInformation(PatientSearchRequestModel patientSearchRequestModel,
{bool isLocalBusy = false}) async {
setState(ViewState.Busy);
await _outPatientService.getPatientFileInformation(patientSearchRequestModel);
await _outPatientService
.getPatientFileInformation(patientSearchRequestModel);
if (_outPatientService.hasError) {
error = _outPatientService.error!;
setState(ViewState.Error);
@ -109,22 +116,32 @@ class PatientSearchViewModel extends BaseViewModel {
String dateTo;
String dateFrom;
if (OutPatientFilterType.Previous == outPatientFilterType) {
selectedFromDate = DateTime(DateTime.now().year, DateTime.now().month - 1, DateTime.now().day);
selectedToDate = DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day - 1);
selectedFromDate = DateTime(
DateTime.now().year, DateTime.now().month - 1, DateTime.now().day);
selectedToDate = DateTime(
DateTime.now().year, DateTime.now().month, DateTime.now().day - 1);
dateTo = AppDateUtils.convertDateToFormat(selectedToDate!, 'yyyy-MM-dd');
dateFrom =
AppDateUtils.convertDateToFormat(selectedFromDate!, 'yyyy-MM-dd');
} else if (OutPatientFilterType.NextWeek == outPatientFilterType) {
dateTo = AppDateUtils.convertDateToFormat(
DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day + 6), 'yyyy-MM-dd');
DateTime(DateTime.now().year, DateTime.now().month,
DateTime.now().day + 6),
'yyyy-MM-dd');
dateFrom = AppDateUtils.convertDateToFormat(
DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day + 1), 'yyyy-MM-dd');
DateTime(DateTime.now().year, DateTime.now().month,
DateTime.now().day + 1),
'yyyy-MM-dd');
} else {
dateFrom = AppDateUtils.convertDateToFormat(
DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day), 'yyyy-MM-dd');
DateTime(
DateTime.now().year, DateTime.now().month, DateTime.now().day),
'yyyy-MM-dd');
dateTo = AppDateUtils.convertDateToFormat(
DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day), 'yyyy-MM-dd');
DateTime(
DateTime.now().year, DateTime.now().month, DateTime.now().day),
'yyyy-MM-dd');
}
PatientSearchRequestModel currentModel = PatientSearchRequestModel();
currentModel.patientID = patientSearchRequestModel!.patientID;
@ -138,23 +155,27 @@ class PatientSearchViewModel extends BaseViewModel {
filterData = _outPatientService.patientList;
}
PatientInPatientService _inPatientService = locator<PatientInPatientService>();
PatientInPatientService _inPatientService =
locator<PatientInPatientService>();
List<PatiantInformtion> get inPatientList => _inPatientService.inPatientList;
List<PatiantInformtion> get myIinPatientList => _inPatientService.myInPatientList;
List<PatiantInformtion> get myIinPatientList =>
_inPatientService.myInPatientList;
List<PatiantInformtion> filteredInPatientItems = [];
List<PatiantInformtion> filteredMyInPatientItems = [];
Future getInPatientList(PatientSearchRequestModel requestModel, {bool isMyInpatient = false, bool isLocalBusy = false}) async {
Future getInPatientList(PatientSearchRequestModel requestModel,
{bool isMyInpatient = false, bool isLocalBusy = false}) async {
await getDoctorProfile();
if (isLocalBusy) {
setState(ViewState.BusyLocal);
} else {
setState(ViewState.Busy);
}
if (inPatientList.length == 0) await _inPatientService.getInPatientList(requestModel, false);
if (inPatientList.length == 0)
await _inPatientService.getInPatientList(requestModel, false);
if (_inPatientService.hasError) {
error = _inPatientService.error!;
if (isLocalBusy) {
@ -169,7 +190,10 @@ class PatientSearchViewModel extends BaseViewModel {
}
}
sortInPatient({bool isDes = false, required bool isAllClinic, required bool isMyInPatient}) {
sortInPatient(
{bool isDes = false,
required bool isAllClinic,
required bool isMyInPatient}) {
if (isMyInPatient
? myIinPatientList.length > 0
: isAllClinic
@ -182,12 +206,12 @@ class PatientSearchViewModel extends BaseViewModel {
: [...filteredInPatientItems];
if (isDes)
localInPatient.sort((PatiantInformtion a, PatiantInformtion b) => b
.admissionDateWithDateTimeForm
.compareTo(a.admissionDateWithDateTimeForm));
.admissionDateWithDateTimeForm!
.compareTo(a.admissionDateWithDateTimeForm!));
else
localInPatient.sort((PatiantInformtion a, PatiantInformtion b) => a
.admissionDateWithDateTimeForm
.compareTo(b.admissionDateWithDateTimeForm));
.admissionDateWithDateTimeForm!
.compareTo(b.admissionDateWithDateTimeForm!));
if (isMyInPatient) {
filteredMyInPatientItems.clear();
filteredMyInPatientItems.addAll(localInPatient);

@ -1,7 +1,7 @@
class GetPhysicalExamReqModel {
int? patientMRN;
int? appointmentNo;
int admissionNo;
int? admissionNo;
String? episodeID;
String? from;
String? to;

@ -1,7 +1,7 @@
class GetEpisodeForInpatientReqModel {
int patientID;
int patientTypeID;
int admissionNo;
int? patientID;
int? patientTypeID;
int? admissionNo;
GetEpisodeForInpatientReqModel(
{this.patientID, this.patientTypeID, this.admissionNo});

@ -1,7 +1,7 @@
class PostEpisodeForInpatientRequestModel {
int admissionNo;
int patientID;
int patientTypeID;
int? admissionNo;
int? patientID;
int? patientTypeID;
PostEpisodeForInpatientRequestModel(
{this.admissionNo, this.patientID, this.patientTypeID = 1});

@ -1,14 +1,14 @@
import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart';
class MySelectedAllergy {
MasterKeyModel selectedAllergySeverity;
MasterKeyModel selectedAllergy;
String remark;
bool isChecked;
bool isExpanded;
bool isLocal;
int createdBy;
bool hasValidationError;
MasterKeyModel? selectedAllergySeverity;
MasterKeyModel? selectedAllergy;
String? remark;
bool? isChecked;
bool? isExpanded;
bool? isLocal;
int? createdBy;
bool? hasValidationError;
MySelectedAllergy(
{this.selectedAllergySeverity,
@ -19,5 +19,4 @@ class MySelectedAllergy {
this.isLocal = true,
this.createdBy,
this.hasValidationError = false});
}

@ -1,22 +1,24 @@
import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart';
class MySelectedAssessment {
MasterKeyModel selectedICD;
MasterKeyModel selectedDiagnosisCondition;
MasterKeyModel selectedDiagnosisType;
String remark;
int appointmentId;
int createdBy;
String createdOn;
int doctorID;
String doctorName;
String icdCode10ID;
MasterKeyModel? selectedICD;
MasterKeyModel? selectedDiagnosisCondition;
MasterKeyModel? selectedDiagnosisType;
String? remark;
int? appointmentId;
int? createdBy;
String? createdOn;
int? doctorID;
String? doctorName;
String? icdCode10ID;
MySelectedAssessment(
{this.selectedICD,
this.selectedDiagnosisCondition,
this.selectedDiagnosisType,
this.remark, this.appointmentId, this.createdBy,
this.remark,
this.appointmentId,
this.createdBy,
this.createdOn,
this.doctorID,
this.doctorName,

@ -3,8 +3,8 @@ import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart';
class MySelectedHistory {
MasterKeyModel selectedHistory;
String remark;
bool isChecked;
bool isLocal;
bool? isChecked;
bool? isLocal;
MySelectedHistory(
{this.selectedHistory, this.remark, this.isChecked, this.isLocal = true});

@ -1,15 +1,15 @@
class AdmissionOrdersModel {
int procedureID;
String procedureName;
String procedureNameN;
int orderNo;
int doctorID;
int clinicID;
String createdOn;
int createdBy;
String editedOn;
int editedBy;
String createdByName;
int? procedureID;
String? procedureName;
String? procedureNameN;
int? orderNo;
int? doctorID;
int? clinicID;
String? createdOn;
int? createdBy;
String? editedOn;
int? editedBy;
String? createdByName;
AdmissionOrdersModel(
{this.procedureID,

@ -1,20 +1,20 @@
class AdmissionOrdersRequestModel {
bool isDentalAllowedBackend;
double versionID;
int channel;
int languageID;
String iPAdress;
String generalid;
int deviceTypeID;
String tokenID;
int patientID;
int admissionNo;
String sessionID;
int projectID;
String setupID;
bool patientOutSA;
int patientType;
int patientTypeID;
bool? isDentalAllowedBackend;
double? versionID;
int? channel;
int? languageID;
String? iPAdress;
String? generalid;
int? deviceTypeID;
String? tokenID;
int? patientID;
int? admissionNo;
String? sessionID;
int? projectID;
String? setupID;
bool? patientOutSA;
int? patientType;
int? patientTypeID;
AdmissionOrdersRequestModel(
{this.isDentalAllowedBackend,

@ -16,10 +16,10 @@
// }
class Countries {
String name;
String nameAr;
String code;
String countryCode;
String? name;
String? nameAr;
String? code;
String? countryCode;
Countries({this.name, this.nameAr, this.code, this.countryCode});

@ -1,11 +1,14 @@
class GetDischargeSummaryReqModel {
int patientID;
int admissionNo;
int patientType;
int patientTypeID;
int? patientID;
int? admissionNo;
int? patientType;
int? patientTypeID;
GetDischargeSummaryReqModel(
{this.patientID, this.admissionNo, this.patientType = 1, this.patientTypeID=1});
{this.patientID,
this.admissionNo,
this.patientType = 1,
this.patientTypeID = 1});
GetDischargeSummaryReqModel.fromJson(Map<String, dynamic> json) {
patientID = json['PatientID'];

@ -1,33 +1,33 @@
class GetDischargeSummaryResModel {
String setupID;
int projectID;
int dischargeNo;
String dischargeDate;
int admissionNo;
int assessmentNo;
int patientType;
int patientID;
int clinicID;
int doctorID;
String finalDiagnosis;
String persentation;
String pastHistory;
String planOfCare;
String investigations;
String followupPlan;
String conditionOnDischarge;
String significantFindings;
String planedProcedure;
int daysStayed;
String remarks;
String eRCare;
int status;
bool isActive;
int createdBy;
String createdOn;
int editedBy;
String editedOn;
bool isPatientDied;
String? setupID;
int? projectID;
int? dischargeNo;
String? dischargeDate;
int? admissionNo;
int? assessmentNo;
int? patientType;
int? patientID;
int? clinicID;
int? doctorID;
String? finalDiagnosis;
String? persentation;
String? pastHistory;
String? planOfCare;
String? investigations;
String? followupPlan;
String? conditionOnDischarge;
String? significantFindings;
String? planedProcedure;
int? daysStayed;
String? remarks;
String? eRCare;
int? status;
bool? isActive;
int? createdBy;
String? createdOn;
int? editedBy;
String? editedOn;
bool? isPatientDied;
dynamic isMedicineApproved;
dynamic isOpenBillDischarge;
dynamic activatedDate;
@ -36,16 +36,16 @@ class GetDischargeSummaryResModel {
dynamic patientCodition;
dynamic others;
dynamic reconciliationInstruction;
String dischargeInstructions;
String reason;
String? dischargeInstructions;
String? reason;
dynamic dischargeDisposition;
dynamic hospitalID;
String createdByName;
String? createdByName;
dynamic createdByNameN;
String editedByName;
String? editedByName;
dynamic editedByNameN;
String clinicName;
String projectName;
String? clinicName;
String? projectName;
GetDischargeSummaryResModel(
{this.setupID,

@ -1,13 +1,13 @@
class CreateDoctorResponseModel {
String setupID;
int projectID;
String transactionNo;
int infoEnteredBy;
int infoStatus;
int createdBy;
int editedBy;
String doctorResponse;
int doctorID;
String? setupID;
int? projectID;
String? transactionNo;
int? infoEnteredBy;
int? infoStatus;
int? createdBy;
int? editedBy;
String? doctorResponse;
int? doctorID;
CreateDoctorResponseModel(
{this.setupID,

@ -13,9 +13,9 @@ class RequestDoctorReply {
String? sessionID;
bool? isLoginForDoctorApp;
bool? patientOutSA;
int pageIndex;
int pageSize;
int infoStatus;
int? pageIndex;
int? pageSize;
int? infoStatus;
RequestDoctorReply(
{this.projectID,
@ -68,8 +68,7 @@ class RequestDoctorReply {
data['PatientOutSA'] = this.patientOutSA;
data['PageIndex'] = this.pageIndex;
data['PageSize'] = this.pageSize;
if(this.infoStatus != null)
data['InfoStatus'] = this.infoStatus;
if (this.infoStatus != null) data['InfoStatus'] = this.infoStatus;
return data;
}
}

@ -5,10 +5,10 @@ class StartCallRes {
bool? isAuthenticated;
int? messageStatus;
String? appointmentNo;
bool isRecording;
bool? isRecording;
StartCallRes(
{this.result,
StartCallRes({
this.result,
this.openSessionID,
this.openTokenID,
this.isAuthenticated,

@ -1,28 +1,28 @@
class CreateUpdateOperationReportRequestModel {
String setupID;
int patientID;
int reservationNo;
int admissionNo;
String preOpDiagmosis;
String postOpDiagmosis;
String surgeon;
String assistant;
String anasthetist;
String operation;
String inasion;
String finding;
String surgeryProcedure;
String postOpInstruction;
int createdBy;
int editedBy;
String complicationDetails;
String bloodLossDetail;
String histopathSpecimen;
String microbiologySpecimen;
String otherSpecimen;
String scrubNurse;
String circulatingNurse;
String bloodTransfusedDetail;
String? setupID;
int? patientID;
int? reservationNo;
int? admissionNo;
String? preOpDiagmosis;
String? postOpDiagmosis;
String? surgeon;
String? assistant;
String? anasthetist;
String? operation;
String? inasion;
String? finding;
String? surgeryProcedure;
String? postOpInstruction;
int? createdBy;
int? editedBy;
String? complicationDetails;
String? bloodLossDetail;
String? histopathSpecimen;
String? microbiologySpecimen;
String? otherSpecimen;
String? scrubNurse;
String? circulatingNurse;
String? bloodTransfusedDetail;
CreateUpdateOperationReportRequestModel(
{this.setupID,

@ -1,18 +1,18 @@
class GetOperationDetailsRequestModel {
bool isDentalAllowedBackend;
double versionID;
int channel;
int languageID;
String iPAdress;
String generalid;
int deviceTypeID;
String tokenID;
int patientID;
int reservationNo;
String sessionID;
int projectID;
String setupID;
bool patientOutSA;
bool? isDentalAllowedBackend;
double? versionID;
int? channel;
int? languageID;
String? iPAdress;
String? generalid;
int? deviceTypeID;
String? tokenID;
int? patientID;
int? reservationNo;
String? sessionID;
int? projectID;
String? setupID;
bool? patientOutSA;
GetOperationDetailsRequestModel(
{this.isDentalAllowedBackend = false,

@ -1,35 +1,35 @@
class GetOperationDetailsResponseModel {
String setupID;
int projectID;
int reservationNo;
int patientID;
int admissionID;
String? setupID;
int? projectID;
int? reservationNo;
int? patientID;
int? admissionID;
dynamic surgeryDate;
String preOpDiagnosis;
String postOpDiagnosis;
String surgeon;
String assistant;
String anasthetist;
String operation;
String inasion;
String finding;
String surgeryProcedure;
String postOpInstruction;
bool isActive;
int createdBy;
String createdName;
String? preOpDiagnosis;
String? postOpDiagnosis;
String? surgeon;
String? assistant;
String? anasthetist;
String? operation;
String? inasion;
String? finding;
String? surgeryProcedure;
String? postOpInstruction;
bool? isActive;
int? createdBy;
String? createdName;
dynamic createdNameN;
String createdOn;
String? createdOn;
dynamic editedBy;
dynamic editedByName;
dynamic editedByNameN;
dynamic editedOn;
dynamic oRBookStatus;
String complicationDetail;
String bloodLossDetail;
String histopathSpecimen;
String microbiologySpecimen;
String otherSpecimen;
String? complicationDetail;
String? bloodLossDetail;
String? histopathSpecimen;
String? microbiologySpecimen;
String? otherSpecimen;
dynamic scrubNurse;
dynamic circulatingNurse;
dynamic bloodTransfusedDetail;

@ -1,17 +1,17 @@
class GetReservationsRequestModel {
int patientID;
int projectID;
String doctorID;
int clinicID;
double versionID;
int channel;
int languageID;
String iPAdress;
String generalid;
bool patientOutSA;
int deviceTypeID;
String tokenID;
String sessionID;
int? patientID;
int? projectID;
String? doctorID;
int? clinicID;
double? versionID;
int? channel;
int? languageID;
String? iPAdress;
String? generalid;
bool? patientOutSA;
int? deviceTypeID;
String? tokenID;
String? sessionID;
GetReservationsRequestModel(
{this.patientID,

@ -1,38 +1,38 @@
class GetReservationsResponseModel {
String setupID;
int projectID;
int oTReservationID;
String oTReservationDate;
String oTReservationDateN;
int oTID;
int admissionRequestNo;
int admissionNo;
int primaryDoctorID;
int patientType;
int patientID;
int patientStatusType;
int clinicID;
int doctorID;
String operationDate;
int operationType;
String endDate;
String timeStart;
String timeEnd;
String? setupID;
int? projectID;
int? oTReservationID;
String? oTReservationDate;
String? oTReservationDateN;
int? oTID;
int? admissionRequestNo;
int? admissionNo;
int? primaryDoctorID;
int? patientType;
int? patientID;
int? patientStatusType;
int? clinicID;
int? doctorID;
String? operationDate;
int? operationType;
String? endDate;
String? timeStart;
String? timeEnd;
dynamic remarks;
int status;
int createdBy;
String createdOn;
int editedBy;
String editedOn;
String patientName;
int? status;
int? createdBy;
String? createdOn;
int? editedBy;
String? editedOn;
String? patientName;
Null patientNameN;
Null gender;
String dateofBirth;
String mobileNumber;
String emailAddress;
String doctorName;
String? dateofBirth;
String? mobileNumber;
String? emailAddress;
String? doctorName;
Null doctorNameN;
String clinicDescription;
String? clinicDescription;
Null clinicDescriptionN;
GetReservationsResponseModel(

@ -7,7 +7,7 @@ class PatiantInformtion {
int? genderInt;
dynamic age;
String? appointmentDate;
DateTime appointmentDateWithDateTimeForm;
DateTime? appointmentDateWithDateTimeForm;
dynamic appointmentNo;
dynamic appointmentType;
String? arrivalTime;
@ -55,7 +55,7 @@ class PatiantInformtion {
int? patientMRN;
String? admissionNo;
String? admissionDate;
DateTime admissionDateWithDateTimeForm;
DateTime? admissionDateWithDateTimeForm;
String? createdOn;
String? roomId;
String? bedId;
@ -158,7 +158,9 @@ class PatiantInformtion {
PatiantInformtion.fromJson(Map<String, dynamic> json) {
{
patientDetails = json['patientDetails'] != null ? new PatiantInformtion.fromJson(json['patientDetails']) : null;
patientDetails = json['patientDetails'] != null
? new PatiantInformtion.fromJson(json['patientDetails'])
: null;
projectId = json["ProjectID"] ?? json["projectID"];
clinicId = json["ClinicID"] ?? json["clinicID"];
doctorId = json["DoctorID"] ?? json["doctorID"];
@ -186,7 +188,8 @@ class PatiantInformtion {
nationalityId = json["NationalityID"] ?? json["nationalityID"];
mobileNumber = json["MobileNumber"] ?? json["mobileNumber"];
emailAddress = json["EmailAddress"] ?? json["emailAddress"];
patientIdentificationNo = json["PatientIdentificationNo"] ?? json["patientIdentificationNo"];
patientIdentificationNo =
json["PatientIdentificationNo"] ?? json["patientIdentificationNo"];
//TODO make 7 dynamic when the backend retrun it in patient arrival
patientType = json["PatientType"] ?? json["patientType"] ?? 1;
admissionNo = json["AdmissionNo"] ?? json["admissionNo"];
@ -196,10 +199,16 @@ class PatiantInformtion {
bedId = json["BedID"] ?? json["bedID"];
nursingStationId = json["NursingStationID"] ?? json["nursingStationID"];
description = json["Description"] ?? json["description"];
clinicDescription = json["ClinicDescription"] ?? json["clinicDescription"];
clinicDescriptionN = json["ClinicDescriptionN"] ?? json["clinicDescriptionN"];
nationalityName = json["NationalityName"] ?? json["nationalityName"] ?? json['NationalityName'];
nationalityNameN = json["NationalityNameN"] ?? json["nationalityNameN"] ?? json['NationalityNameN'];
clinicDescription =
json["ClinicDescription"] ?? json["clinicDescription"];
clinicDescriptionN =
json["ClinicDescriptionN"] ?? json["clinicDescriptionN"];
nationalityName = json["NationalityName"] ??
json["nationalityName"] ??
json['NationalityName'];
nationalityNameN = json["NationalityNameN"] ??
json["nationalityNameN"] ??
json['NationalityNameN'];
age = json["Age"] ?? json["age"];
genderDescription = json["GenderDescription"];
nursingStationName = json["NursingStationName"];
@ -207,7 +216,8 @@ class PatiantInformtion {
startTime = json["startTime"] ?? json['StartTime'];
appointmentNo = json['appointmentNo'] ?? json['AppointmentNo'];
appointmentType = json['appointmentType'];
appointmentTypeId = json['appointmentTypeId'] ?? json['appointmentTypeid'];
appointmentTypeId =
json['appointmentTypeId'] ?? json['appointmentTypeid'];
arrivedOn = json['ArrivedOn'] ?? json['arrivedOn'] ?? json['ArrivedOn'];
clinicGroupId = json['clinicGroupId'];
companyName = json['companyName'];
@ -229,9 +239,12 @@ class PatiantInformtion {
? int?.parse(json["patientId"].toString())
: '');
visitType = json['visitType'] ?? json['visitType'] ?? json['visitType'];
nationalityFlagURL = json['NationalityFlagURL'] ?? json['NationalityFlagURL'];
patientStatusType = json['patientStatusType'] ?? json['PatientStatusType'];
visitTypeId = json['visitTypeId'] ?? json['visitTypeId'] ?? json['visitTypeid'];
nationalityFlagURL =
json['NationalityFlagURL'] ?? json['NationalityFlagURL'];
patientStatusType =
json['patientStatusType'] ?? json['PatientStatusType'];
visitTypeId =
json['visitTypeId'] ?? json['visitTypeId'] ?? json['visitTypeid'];
startTimes = json['StartTime'] ?? json['StartTime'];
dischargeDate = json['DischargeDate'];
status = json['Status'];
@ -254,8 +267,9 @@ class PatiantInformtion {
? AppDateUtils.convertStringToDate(json["admissionDate"])
: null;
appointmentDateWithDateTimeForm =
json["AppointmentDate"] != null ? AppDateUtils.convertStringToDate(json["AppointmentDate"]) : null;
appointmentDateWithDateTimeForm = json["AppointmentDate"] != null
? AppDateUtils.convertStringToDate(json["AppointmentDate"])
: null;
}
}
@ -303,7 +317,8 @@ class PatiantInformtion {
data["gender"] = this.gender;
data['Age'] = this.age;
data['AppointmentDate'] = this.appointmentDate.isNotEmpty ? this.appointmentDate : null;
data['AppointmentDate'] =
this.appointmentDate!.isNotEmpty ? this.appointmentDate : null;
data['AppointmentNo'] = this.appointmentNo;
data['ArrivalTime'] = this.arrivalTime;

@ -1,20 +1,20 @@
class PendingOrderRequestModel {
bool isDentalAllowedBackend;
double versionID;
int channel;
int languageID;
String iPAdress;
String generalid;
int deviceTypeID;
String tokenID;
int patientID;
int admissionNo;
String sessionID;
int projectID;
String setupID;
bool patientOutSA;
int patientType;
int patientTypeID;
bool? isDentalAllowedBackend;
double? versionID;
int? channel;
int? languageID;
String? iPAdress;
String? generalid;
int? deviceTypeID;
String? tokenID;
int? patientID;
int? admissionNo;
String? sessionID;
int? projectID;
String? setupID;
bool? patientOutSA;
int? patientType;
int? patientTypeID;
PendingOrderRequestModel(
{this.isDentalAllowedBackend,

@ -1,5 +1,5 @@
class PendingOrderModel {
String notes;
String? notes;
PendingOrderModel({this.notes});

@ -1,7 +1,7 @@
class SickLeaveStatisticsModel {
String recommendedSickLeaveDays;
int totalLeavesByAllClinics;
int totalLeavesByDoctor;
String? recommendedSickLeaveDays;
int? totalLeavesByAllClinics;
int? totalLeavesByDoctor;
SickLeaveStatisticsModel(
{this.recommendedSickLeaveDays,

@ -18,7 +18,8 @@ class VideoCallPage extends StatefulWidget {
final PatiantInformtion patientData;
final listContext;
final LiveCarePatientViewModel model;
VideoCallPage({required this.patientData, this.listContext, required this.model});
VideoCallPage(
{required this.patientData, this.listContext, required this.model});
@override
_VideoCallPageState createState() => _VideoCallPageState();
@ -66,8 +67,12 @@ class _VideoCallPageState extends State<VideoCallPage> {
//'1_MX40NjgwMzIyNH5-MTU5MzY4MzYzODYwM35ucExWYVRVSm5Hcy9uWGZmM1lOa3czZHV-fg',
kApiKey: '46209962',
vcId: widget.patientData.vcId,
isRecording: tokenData != null ? tokenData.isRecording: false,
patientName: widget.patientData.fullName != null ? widget.patientData.fullName! : widget.patientData.firstName != null ? "${widget.patientData.firstName} ${widget.patientData.lastName}" : "-",
isRecording: tokenData != null ? tokenData.isRecording! : false,
patientName: widget.patientData.fullName != null
? widget.patientData.fullName!
: widget.patientData.firstName != null
? "${widget.patientData.firstName} ${widget.patientData.lastName}"
: "-",
tokenID: token, //"hfkjshdf347r8743",
generalId: "Cs2020@2016\$2958",
doctorId: doctorprofile['DoctorID'],
@ -98,7 +103,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
});
connectOpenTok(result);
}).catchError((error) => {Helpers.showErrorToast(error), Navigator.of(context).pop()});
}).catchError((error) =>
{Helpers.showErrorToast(error), Navigator.of(context).pop()});
}
@override
@ -126,14 +132,20 @@ class _VideoCallPageState extends State<VideoCallPage> {
),
Text(
_start == 0 ? 'Dailing' : 'Connected',
style: TextStyle(color: Colors.deepPurpleAccent, fontWeight: FontWeight.w300, fontSize: 15),
style: TextStyle(
color: Colors.deepPurpleAccent,
fontWeight: FontWeight.w300,
fontSize: 15),
),
SizedBox(
height: MediaQuery.of(context).size.height * 0.02,
),
Text(
widget.patientData.fullName!,
style: TextStyle(color: Colors.deepPurpleAccent, fontWeight: FontWeight.w900, fontSize: 20),
style: TextStyle(
color: Colors.deepPurpleAccent,
fontWeight: FontWeight.w900,
fontSize: 20),
),
SizedBox(
height: MediaQuery.of(context).size.height * 0.02,
@ -141,7 +153,10 @@ class _VideoCallPageState extends State<VideoCallPage> {
Container(
child: Text(
_start == 0 ? 'Connecting...' : _timmer.toString(),
style: TextStyle(color: Colors.deepPurpleAccent, fontWeight: FontWeight.w300, fontSize: 15),
style: TextStyle(
color: Colors.deepPurpleAccent,
fontWeight: FontWeight.w300,
fontSize: 15),
)),
SizedBox(
height: MediaQuery.of(context).size.height * 0.02,
@ -188,8 +203,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
_showAlert(BuildContext context) async {
await showDialog(
context: context,
builder: (dialogContex) =>
AlertDialog(content: StatefulBuilder(builder: (BuildContext context, StateSetter setState) {
builder: (dialogContex) => AlertDialog(content: StatefulBuilder(
builder: (BuildContext context, StateSetter setState) {
return Container(
height: MediaQuery.of(context).size.height * 0.7,
width: MediaQuery.of(context).size.width * .9,
@ -202,7 +217,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
top: -40.0,
child: InkResponse(
onTap: () {
Navigator.of(context, rootNavigator: true).pop('dialog');
Navigator.of(context, rootNavigator: true)
.pop('dialog');
Navigator.of(context).pop();
},
child: CircleAvatar(
@ -220,7 +236,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
padding: EdgeInsets.all(8.0),
child: RaisedButton(
onPressed: () => {endCall()},
child: Text(TranslationBase.of(context).endcall!),
child:
Text(TranslationBase.of(context).endcall!),
color: Colors.red,
textColor: Colors.white,
)),
@ -228,7 +245,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
padding: EdgeInsets.all(8.0),
child: RaisedButton(
onPressed: () => {resumeCall()},
child: Text(TranslationBase.of(context).resumecall!),
child:
Text(TranslationBase.of(context).resumecall!),
color: Colors.green[900],
textColor: Colors.white,
),
@ -237,7 +255,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
padding: EdgeInsets.all(8.0),
child: RaisedButton(
onPressed: () => {endCallWithCharge()},
child: Text(TranslationBase.of(context).endcallwithcharge!),
child: Text(TranslationBase.of(context)
.endcallwithcharge!),
textColor: Colors.white,
),
),
@ -247,7 +266,8 @@ class _VideoCallPageState extends State<VideoCallPage> {
onPressed: () => {
setState(() => {isTransfer = true})
},
child: Text(TranslationBase.of(context).transfertoadmin!),
child: Text(
TranslationBase.of(context).transfertoadmin!),
color: Colors.yellow[900],
),
),
@ -261,11 +281,14 @@ class _VideoCallPageState extends State<VideoCallPage> {
child: TextField(
maxLines: 3,
controller: notes,
decoration: InputDecoration.collapsed(hintText: "Enter your notes here"),
decoration: InputDecoration.collapsed(
hintText:
"Enter your notes here"),
)),
Center(
child: RaisedButton(
onPressed: () => {this.transferToAdmin(notes)},
onPressed: () =>
{this.transferToAdmin(notes)},
child: Text('Transfer'),
color: Colors.yellow[900],
))
@ -287,24 +310,33 @@ class _VideoCallPageState extends State<VideoCallPage> {
transferToAdmin(notes) {
closeRoute();
_liveCareProvider.transfterToAdmin(widget.patientData, notes).then((result) {
_liveCareProvider
.transfterToAdmin(widget.patientData, notes)
.then((result) {
connectOpenTok(result);
}).catchError((error) => {Helpers.showErrorToast(error), Navigator.of(context).pop()});
}).catchError((error) =>
{Helpers.showErrorToast(error), Navigator.of(context).pop()});
}
endCall() {
closeRoute();
_liveCareProvider.endCall(widget.patientData, false, doctorprofile['DoctorID']).then((result) {
_liveCareProvider
.endCall(widget.patientData, false, doctorprofile['DoctorID'])
.then((result) {
print(result);
}).catchError((error) => {Helpers.showErrorToast(error), Navigator.of(context).pop()});
}).catchError((error) =>
{Helpers.showErrorToast(error), Navigator.of(context).pop()});
}
endCallWithCharge() {
_liveCareProvider.endCallWithCharge(widget.patientData.vcId, doctorprofile['DoctorID']).then((result) {
_liveCareProvider
.endCallWithCharge(widget.patientData.vcId, doctorprofile['DoctorID'])
.then((result) {
closeRoute();
print('end callwith charge');
print(result);
}).catchError((error) => {Helpers.showErrorToast(error), Navigator.of(context).pop()});
}).catchError((error) =>
{Helpers.showErrorToast(error), Navigator.of(context).pop()});
}
closeRoute() {

@ -59,7 +59,6 @@ class _DischargedPatientState extends State<DischargedPatient> {
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
SizedBox(
height: 12,
),
@ -70,6 +69,7 @@ class _DischargedPatientState extends State<DischargedPatient> {
},
marginTop: 0,
suffixIcon: IconButton(
onPressed: () {},
icon: Icon(
DoctorApp.filter_1,
color: Colors.black,
@ -170,14 +170,14 @@ class _DischargedPatientState extends State<DischargedPatient> {
? model
.filterData[
index]
.nationalityName
.nationalityName!
.trim()
: model.filterData[index].nationality !=
null
? model
.filterData[
index]
.nationality
.nationality!
.trim()
: model.filterData[index].nationalityId !=
null
@ -203,7 +203,7 @@ class _DischargedPatientState extends State<DischargedPatient> {
.network(
model.filterData[index].nationalityFlagURL !=
null
? model.filterData[index].nationalityFlagURL
? model.filterData[index].nationalityFlagURL!
: '',
height:
25,
@ -320,7 +320,7 @@ class _DischargedPatientState extends State<DischargedPatient> {
text: model.filterData[index].admissionDate ==
null
? ""
: TranslationBase.of(context).admissionDate +
: TranslationBase.of(context).admissionDate! +
" : ",
style: TextStyle(
fontSize:
@ -385,7 +385,7 @@ class _DischargedPatientState extends State<DischargedPatient> {
.w300,
),
AppText(
"${AppDateUtils.convertStringToDate(model.filterData[index].dischargeDate).difference(AppDateUtils.getDateTimeFromServerFormat(model.filterData[index].admissionDate)).inDays + 1}",
"${AppDateUtils.convertStringToDate(model.filterData[index].dischargeDate!).difference(AppDateUtils.getDateTimeFromServerFormat(model.filterData[index].admissionDate!)).inDays + 1}",
fontSize:
15,
fontWeight:

@ -9,7 +9,8 @@ class CustomEditableText extends StatefulWidget {
Key key,
required this.controller,
this.hint,
this.isEditable = false, this.isSubmitted,
this.isEditable = false,
this.isSubmitted,
}) : super(key: key);
final TextEditingController controller;
@ -36,7 +37,7 @@ class _CustomEditableTextState extends State<CustomEditableText> {
borderRadius: BorderRadius.all(Radius.circular(20)),
border: Border.fromBorderSide(
BorderSide(
color: Colors.grey[300],
color: Colors.grey[300]!,
width: 2,
),
),
@ -62,7 +63,6 @@ class _CustomEditableTextState extends State<CustomEditableText> {
child: Icon(
DoctorApp.edit_1,
size: 20,
),
onTap: () {
setState(() {
@ -79,11 +79,9 @@ class _CustomEditableTextState extends State<CustomEditableText> {
hintText: widget.hint,
//TranslationBase.of(context).addoperationReports,
controller: widget.controller,
validationError: widget.controller
.text.isEmpty &&
widget.isSubmitted
? TranslationBase.of(context)
.emptyMessage
validationError:
widget.controller.text.isEmpty && widget.isSubmitted
? TranslationBase.of(context).emptyMessage
: null,
maxLines: 1,
minLines: 1,

Loading…
Cancel
Save