WD: vida plus episode changes
parent
f3876e9ef1
commit
6392620df7
@ -0,0 +1,3 @@
|
|||||||
|
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2.45416 1.79596C4.93831 0.272187 7.16683 0.879476 8.51311 1.89051C8.73459 2.05683 8.8866 2.17067 8.99975 2.24754C9.11292 2.17067 9.26492 2.05683 9.4864 1.89051C10.8327 0.879476 13.0612 0.272187 15.5454 1.79596C17.2631 2.8496 18.2296 5.0505 17.8904 7.57926C17.5496 10.1202 15.905 12.9941 12.422 15.5721C11.2125 16.4678 10.3248 17.1253 8.99976 17.1253C7.67471 17.1253 6.78702 16.4678 5.57754 15.5721C2.09453 12.9941 0.449878 10.1202 0.109088 7.57926C-0.230066 5.0505 0.73646 2.8496 2.45416 1.79596Z" fill="#459BF1"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 628 B |
@ -0,0 +1,92 @@
|
|||||||
|
class FavoriteDiseaseDetails {
|
||||||
|
String? categoryCode;
|
||||||
|
int? categoryId;
|
||||||
|
String? chapterCode;
|
||||||
|
String? codeRange;
|
||||||
|
String? createdBy;
|
||||||
|
String? diseaseType;
|
||||||
|
String? diseases;
|
||||||
|
String? diseasesCode;
|
||||||
|
int? diseasesId;
|
||||||
|
int? favoritesId;
|
||||||
|
int? hospitalGroupId;
|
||||||
|
int? hospitalId;
|
||||||
|
int? icdId;
|
||||||
|
String? icdSubVersion;
|
||||||
|
String? icdType;
|
||||||
|
String? icdVersion;
|
||||||
|
bool? isDeleted;
|
||||||
|
String? parentDiseasesCode;
|
||||||
|
String? problemCode;
|
||||||
|
String? problemDescription;
|
||||||
|
int? problemMasterId;
|
||||||
|
int? problemMasterRevisionId;
|
||||||
|
String? problemName;
|
||||||
|
String? problemType;
|
||||||
|
String? rowVersion;
|
||||||
|
String? sectionCode;
|
||||||
|
int? specificationId;
|
||||||
|
|
||||||
|
FavoriteDiseaseDetails.fromJson(Map<String, dynamic> json) {
|
||||||
|
categoryCode = json['CategoryCode'];
|
||||||
|
categoryId = json['CategoryId'];
|
||||||
|
chapterCode = json['ChapterCode'];
|
||||||
|
codeRange = json['CodeRange'];
|
||||||
|
createdBy = json['CreatedBy'];
|
||||||
|
diseaseType = json['DiseaseType'];
|
||||||
|
diseases = json['Diseases'];
|
||||||
|
diseasesCode = json['DiseasesCode'];
|
||||||
|
diseasesId = json['DiseasesId'];
|
||||||
|
favoritesId = json['FavoritesId'];
|
||||||
|
hospitalGroupId = json['HospitalGroupID'];
|
||||||
|
hospitalId = json['HospitalID'];
|
||||||
|
icdId = json['IcdId'];
|
||||||
|
icdSubVersion = json['IcdSubVersion'];
|
||||||
|
icdType = json['IcdType'];
|
||||||
|
icdVersion = json['IcdVersion'];
|
||||||
|
isDeleted = json['IsDeleted'];
|
||||||
|
parentDiseasesCode = json['ParentDiseasesCode'];
|
||||||
|
problemCode = json['ProblemCode'];
|
||||||
|
problemDescription = json['ProblemDescription'];
|
||||||
|
problemMasterId = json['ProblemMasterID'];
|
||||||
|
problemMasterRevisionId = json['ProblemMasterRevisionID'];
|
||||||
|
problemName = json['ProblemName'];
|
||||||
|
problemType = json['ProblemType'];
|
||||||
|
rowVersion = json['RowVersion'];
|
||||||
|
sectionCode = json['SectionCode'];
|
||||||
|
specificationId = json['SpecificationId'];
|
||||||
|
}
|
||||||
|
|
||||||
|
// toJson method
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
return {
|
||||||
|
'CategoryCode': categoryCode,
|
||||||
|
'CategoryId': categoryId,
|
||||||
|
'ChapterCode': chapterCode,
|
||||||
|
'CodeRange': codeRange,
|
||||||
|
'CreatedBy': createdBy,
|
||||||
|
'DiseaseType': diseaseType,
|
||||||
|
'Diseases': diseases,
|
||||||
|
'DiseasesCode': diseasesCode,
|
||||||
|
'DiseasesId': diseasesId,
|
||||||
|
'FavoritesId': favoritesId,
|
||||||
|
'HospitalGroupID': hospitalGroupId,
|
||||||
|
'HospitalID': hospitalId,
|
||||||
|
'IcdId': icdId,
|
||||||
|
'IcdSubVersion': icdSubVersion,
|
||||||
|
'IcdType': icdType,
|
||||||
|
'IcdVersion': icdVersion,
|
||||||
|
'IsDeleted': isDeleted,
|
||||||
|
'ParentDiseasesCode': parentDiseasesCode,
|
||||||
|
'ProblemCode': problemCode,
|
||||||
|
'ProblemDescription': problemDescription,
|
||||||
|
'ProblemMasterID': problemMasterId,
|
||||||
|
'ProblemMasterRevisionID': problemMasterRevisionId,
|
||||||
|
'ProblemName': problemName,
|
||||||
|
'ProblemType': problemType,
|
||||||
|
'RowVersion': rowVersion,
|
||||||
|
'SectionCode': sectionCode,
|
||||||
|
'SpecificationId': specificationId,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
class AuditDiagnosis {
|
||||||
|
String? approvedBy;
|
||||||
|
String? approvedOn;
|
||||||
|
String? createdBy;
|
||||||
|
String? createdOn;
|
||||||
|
String? deletedBy;
|
||||||
|
String? deletedOn;
|
||||||
|
String? deletedRemarks;
|
||||||
|
String? diagnosisType;
|
||||||
|
bool? isEventIdentifiedExternally;
|
||||||
|
bool? isResolved;
|
||||||
|
String? modifiedBy;
|
||||||
|
String? modifiedOn;
|
||||||
|
int? patientId;
|
||||||
|
int? patientProblemRevisionId;
|
||||||
|
String? remarks;
|
||||||
|
String? status;
|
||||||
|
|
||||||
|
AuditDiagnosis.fromJson(Map<String, dynamic> json) {
|
||||||
|
approvedBy = json['approvedBy'];
|
||||||
|
approvedOn = json['approvedOn'];
|
||||||
|
createdBy = json['createdBy'];
|
||||||
|
createdOn = json['createdOn'];
|
||||||
|
deletedBy = json['deletedBy'];
|
||||||
|
deletedOn = json['deletedOn'];
|
||||||
|
deletedRemarks = json['deletedRemarks'];
|
||||||
|
diagnosisType = json['diagnosisType'];
|
||||||
|
isEventIdentifiedExternally = json['isEventIdentifiedExternally'];
|
||||||
|
isResolved = json['isResolved'];
|
||||||
|
modifiedBy = json['modifiedBy'];
|
||||||
|
modifiedOn = json['modifiedOn'];
|
||||||
|
patientId = json['patientId'];
|
||||||
|
patientProblemRevisionId = json['patientProblemRevisionId'];
|
||||||
|
remarks = json['remarks'];
|
||||||
|
status = json['status'];
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
class DiagnosisType {
|
||||||
|
String? diagnosisType;
|
||||||
|
String? name;
|
||||||
|
|
||||||
|
|
||||||
|
DiagnosisType.fromJson(Map<String, dynamic> json) {
|
||||||
|
diagnosisType = json['diagnosisType'] ?? '';
|
||||||
|
name = json['name'] ?? '';
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,190 @@
|
|||||||
|
class PatientPreviousDiagnosis {
|
||||||
|
bool? active;
|
||||||
|
int? admissionId;
|
||||||
|
int? admissionRequestId;
|
||||||
|
int? appointmentId;
|
||||||
|
String? approvedBy;
|
||||||
|
String? approvedOn;
|
||||||
|
int? assessmentId;
|
||||||
|
int? chiefComplainId;
|
||||||
|
int? clinicGroupId;
|
||||||
|
int? clinicId;
|
||||||
|
String? condition;
|
||||||
|
String? createdBy;
|
||||||
|
String? createdOn;
|
||||||
|
String? deletedBy;
|
||||||
|
String? deletedByDoctorName;
|
||||||
|
String? deletedOn;
|
||||||
|
String? deletedRemarks;
|
||||||
|
String? diagnosisType;
|
||||||
|
int? doctorId;
|
||||||
|
int? episodeId;
|
||||||
|
int? hospitalGroupId;
|
||||||
|
int? hospitalId;
|
||||||
|
dynamic icdCodeDetailsDto;
|
||||||
|
String? icdSubVersion;
|
||||||
|
String? icdType;
|
||||||
|
dynamic icdVersion;
|
||||||
|
String? location;
|
||||||
|
String? loginUserId;
|
||||||
|
String? modifiedBy;
|
||||||
|
String? modifiedOn;
|
||||||
|
String? module;
|
||||||
|
String? parentLocation;
|
||||||
|
int? patientId;
|
||||||
|
dynamic patientProblemChangeHistories;
|
||||||
|
int? patientProblemId;
|
||||||
|
int? patientProblemRevisionId;
|
||||||
|
int? pomrId;
|
||||||
|
bool? previousProblem;
|
||||||
|
int? problemId;
|
||||||
|
String? problemName;
|
||||||
|
String? remarks;
|
||||||
|
bool? resolved;
|
||||||
|
String? selectedCategoryCode;
|
||||||
|
String? selectedChapterCode;
|
||||||
|
String? selectedDisease;
|
||||||
|
String? selectedIcdCode;
|
||||||
|
String? selectedSectionCode;
|
||||||
|
String? status;
|
||||||
|
List<VisitWisePatientDiagnosis>? visitWisePatientDiagnoses;
|
||||||
|
bool? visitWiseSelected;
|
||||||
|
|
||||||
|
PatientPreviousDiagnosis.fromJson(Map<String, dynamic> json) {
|
||||||
|
active = json['active'];
|
||||||
|
admissionId = json['admissionId'];
|
||||||
|
admissionRequestId = json['admissionRequestId'];
|
||||||
|
appointmentId = json['appointmentId'];
|
||||||
|
approvedBy = json['approvedBy'];
|
||||||
|
approvedOn = json['approvedOn'];
|
||||||
|
assessmentId = json['assessmentId'];
|
||||||
|
chiefComplainId = json['chiefComplainId'];
|
||||||
|
clinicGroupId = json['clinicGroupId'];
|
||||||
|
clinicId = json['clinicId'];
|
||||||
|
condition = json['condition'];
|
||||||
|
createdBy = json['createdBy'];
|
||||||
|
createdOn = json['createdOn'];
|
||||||
|
deletedBy = json['deletedBy'];
|
||||||
|
deletedByDoctorName = json['deletedByDoctorName'];
|
||||||
|
deletedOn = json['deletedOn'];
|
||||||
|
deletedRemarks = json['deletedRemarks'];
|
||||||
|
diagnosisType = json['diagnosisType'];
|
||||||
|
doctorId = json['doctorId'];
|
||||||
|
episodeId = json['episodeId'];
|
||||||
|
hospitalGroupId = json['hospitalGroupId'];
|
||||||
|
hospitalId = json['hospitalId'];
|
||||||
|
icdCodeDetailsDto = json['icdCodeDetailsDto'];
|
||||||
|
icdSubVersion = json['icdSubVersion'];
|
||||||
|
icdType = json['icdType'];
|
||||||
|
icdVersion = json['icdVersion'];
|
||||||
|
location = json['location'];
|
||||||
|
loginUserId = json['loginUserId'];
|
||||||
|
modifiedBy = json['modifiedBy'];
|
||||||
|
modifiedOn = json['modifiedOn'];
|
||||||
|
module = json['module'];
|
||||||
|
parentLocation = json['parentLocation'];
|
||||||
|
patientId = json['patientId'];
|
||||||
|
patientProblemChangeHistories = json['patientProblemChangeHistories'];
|
||||||
|
patientProblemId = json['patientProblemId'];
|
||||||
|
patientProblemRevisionId = json['patientProblemRevisionId'];
|
||||||
|
pomrId = json['pomrId'];
|
||||||
|
previousProblem = json['previousProblem'];
|
||||||
|
problemId = json['problemId'];
|
||||||
|
problemName = json['problemName'];
|
||||||
|
remarks = json['remarks'];
|
||||||
|
resolved = json['resolved'];
|
||||||
|
selectedCategoryCode = json['selectedCategoryCode'];
|
||||||
|
selectedChapterCode = json['selectedChapterCode'];
|
||||||
|
selectedDisease = json['selectedDisease'];
|
||||||
|
selectedIcdCode = json['selectedIcdCode'];
|
||||||
|
selectedSectionCode = json['selectedSectionCode'];
|
||||||
|
status = json['status'];
|
||||||
|
visitWiseSelected = json['visitWiseSelected'];
|
||||||
|
if (json['visitWisePatientDiagnoses'] != null) {
|
||||||
|
visitWisePatientDiagnoses = [];
|
||||||
|
json['visitWisePatientDiagnoses'].forEach((v) {
|
||||||
|
visitWisePatientDiagnoses!.add(VisitWisePatientDiagnosis.fromJson(v));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class VisitWisePatientDiagnosis {
|
||||||
|
bool? active;
|
||||||
|
int? admissionId;
|
||||||
|
int? appointmentId;
|
||||||
|
String? approvedBy;
|
||||||
|
String? approvedOn;
|
||||||
|
int? assessmentId;
|
||||||
|
int? clinicId;
|
||||||
|
String? condition;
|
||||||
|
String? createdBy;
|
||||||
|
String? createdOn;
|
||||||
|
String? deletedBy;
|
||||||
|
String? deletedOn;
|
||||||
|
String? deletedRemarks;
|
||||||
|
String? diagnosisType;
|
||||||
|
int? doctorId;
|
||||||
|
int? episodeId;
|
||||||
|
int? hospitalGroupId;
|
||||||
|
int? hospitalId;
|
||||||
|
String? icdSubVersion;
|
||||||
|
String? icdType;
|
||||||
|
dynamic icdVersion; // Adjust type if necessary
|
||||||
|
bool? isPreviousProblem;
|
||||||
|
String? location;
|
||||||
|
String? loginUserId;
|
||||||
|
String? modifiedBy;
|
||||||
|
String? modifiedOn;
|
||||||
|
int? patientDiagnosisId;
|
||||||
|
int? patientId;
|
||||||
|
int? patientProblemRevisionId;
|
||||||
|
int? pomrId;
|
||||||
|
String? problemName;
|
||||||
|
String? remarks;
|
||||||
|
bool? resolved;
|
||||||
|
bool? selected;
|
||||||
|
String? selectedDisease;
|
||||||
|
int? selectedDoctorId;
|
||||||
|
String? selectedIcdCode;
|
||||||
|
|
||||||
|
VisitWisePatientDiagnosis.fromJson(Map<String, dynamic> json) {
|
||||||
|
active = json['active'];
|
||||||
|
admissionId = json['admissionId'];
|
||||||
|
appointmentId = json['appointmentId'];
|
||||||
|
approvedBy = json['approvedBy'];
|
||||||
|
approvedOn = json['approvedOn'];
|
||||||
|
assessmentId = json['assessmentId'];
|
||||||
|
clinicId = json['clinicId'];
|
||||||
|
condition = json['condition'];
|
||||||
|
createdBy = json['createdBy'];
|
||||||
|
createdOn = json['createdOn'];
|
||||||
|
deletedBy = json['deletedBy'];
|
||||||
|
deletedOn = json['deletedOn'];
|
||||||
|
deletedRemarks = json['deletedRemarks'];
|
||||||
|
diagnosisType = json['diagnosisType'];
|
||||||
|
doctorId = json['doctorId'];
|
||||||
|
episodeId = json['episodeId'];
|
||||||
|
hospitalGroupId = json['hospitalGroupId'];
|
||||||
|
hospitalId = json['hospitalId'];
|
||||||
|
icdSubVersion = json['icdSubVersion'];
|
||||||
|
icdType = json['icdType'];
|
||||||
|
icdVersion = json['icdVersion'];
|
||||||
|
isPreviousProblem = json['isPreviousProblem'];
|
||||||
|
location = json['location'];
|
||||||
|
loginUserId = json['loginUserId'];
|
||||||
|
modifiedBy = json['modifiedBy'];
|
||||||
|
modifiedOn = json['modifiedOn'];
|
||||||
|
patientDiagnosisId = json['patientDiagnosisId'];
|
||||||
|
patientId = json['patientId'];
|
||||||
|
patientProblemRevisionId = json['patientProblemRevisionId'];
|
||||||
|
pomrId = json['pomrId'];
|
||||||
|
problemName = json['problemName'];
|
||||||
|
remarks = json['remarks'];
|
||||||
|
resolved = json['resolved'];
|
||||||
|
selected = json['selected'];
|
||||||
|
selectedDisease = json['selectedDisease'];
|
||||||
|
selectedDoctorId = json['selectedDoctorId'];
|
||||||
|
selectedIcdCode = json['selectedIcdCode'];
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,83 @@
|
|||||||
|
class SearchDiagnosis {
|
||||||
|
String? category;
|
||||||
|
String? categoryId;
|
||||||
|
String? codeRange;
|
||||||
|
String? diseaseType;
|
||||||
|
String? diseases;
|
||||||
|
String? diseasesBCode;
|
||||||
|
String? diseasesCode;
|
||||||
|
String? diseasesDataId;
|
||||||
|
String? diseasesId;
|
||||||
|
String? diseasesName;
|
||||||
|
int? hospitalGroupId;
|
||||||
|
int? hospitalId;
|
||||||
|
String? icdSubVersion;
|
||||||
|
String? icdType;
|
||||||
|
List<String>? icdVersion;
|
||||||
|
String? icdVersionDisplay;
|
||||||
|
bool? isDeleted;
|
||||||
|
String? layerID;
|
||||||
|
String? parentDiseasesCode;
|
||||||
|
String? specification;
|
||||||
|
int? specificationId;
|
||||||
|
String? specificationNo;
|
||||||
|
|
||||||
|
// Default constructor
|
||||||
|
SearchDiagnosis();
|
||||||
|
|
||||||
|
// fromJson constructor
|
||||||
|
SearchDiagnosis.fromJson(Map<String, dynamic> json) {
|
||||||
|
category = json['category'];
|
||||||
|
categoryId = json['categoryId'];
|
||||||
|
codeRange = json['codeRange'];
|
||||||
|
diseaseType = json['diseaseType'];
|
||||||
|
diseases = json['diseases'];
|
||||||
|
diseasesBCode = json['diseasesBCode'];
|
||||||
|
diseasesCode = json['diseasesCode'];
|
||||||
|
diseasesDataId = json['diseasesDataId'];
|
||||||
|
diseasesId = json['diseasesId'];
|
||||||
|
diseasesName = json['diseasesName'];
|
||||||
|
hospitalGroupId = json['hospitalGroupId'];
|
||||||
|
hospitalId = json['hospitalId'];
|
||||||
|
icdSubVersion = json['icdSubVersion'];
|
||||||
|
icdType = json['icdType'];
|
||||||
|
icdVersion = json['icdVersion'] != null
|
||||||
|
? List<String>.from(json['icdVersion'])
|
||||||
|
: null;
|
||||||
|
icdVersionDisplay = json['icdVersionDisplay'];
|
||||||
|
isDeleted = json['isDeleted'] == "True";
|
||||||
|
layerID = json['layerID'];
|
||||||
|
parentDiseasesCode = json['parentDiseasesCode'];
|
||||||
|
specification = json['specification'];
|
||||||
|
specificationId = json['specificationId'];
|
||||||
|
specificationNo = json['specificationNo'];
|
||||||
|
}
|
||||||
|
|
||||||
|
// toJson method
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
return {
|
||||||
|
'category': category,
|
||||||
|
'categoryId': categoryId,
|
||||||
|
'codeRange': codeRange,
|
||||||
|
'diseaseType': diseaseType,
|
||||||
|
'diseases': diseases,
|
||||||
|
'diseasesBCode': diseasesBCode,
|
||||||
|
'diseasesCode': diseasesCode,
|
||||||
|
'diseasesDataId': diseasesDataId,
|
||||||
|
'diseasesId': diseasesId,
|
||||||
|
'diseasesName': diseasesName,
|
||||||
|
'hospitalGroupId': hospitalGroupId,
|
||||||
|
'hospitalId': hospitalId,
|
||||||
|
'icdSubVersion': icdSubVersion,
|
||||||
|
'icdType': icdType,
|
||||||
|
'icdVersion': icdVersion,
|
||||||
|
'icdVersionDisplay': icdVersionDisplay,
|
||||||
|
'isDeleted': isDeleted.toString(),
|
||||||
|
'layerID': layerID,
|
||||||
|
'parentDiseasesCode': parentDiseasesCode,
|
||||||
|
'specification': specification,
|
||||||
|
'specificationId': specificationId,
|
||||||
|
'specificationNo': specificationNo,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,97 @@
|
|||||||
|
class PatientPhysicalExamination {
|
||||||
|
int? patientPhysicalExaminationRevisionID;
|
||||||
|
int? patientPhysicalExaminationID;
|
||||||
|
int? patientID;
|
||||||
|
int? physicalExaminationSystemID;
|
||||||
|
String? physicalExaminationDescription;
|
||||||
|
int? physicalExaminationCondition;
|
||||||
|
String? remark;
|
||||||
|
int? assessmentId;
|
||||||
|
String? userType;
|
||||||
|
int? specialtyID;
|
||||||
|
String? specialityDescription;
|
||||||
|
String? loginUserId;
|
||||||
|
bool? isMandatory;
|
||||||
|
String? examinationType;
|
||||||
|
dynamic additionalParams; // Use dynamic for null or varied types
|
||||||
|
int? hospitalGroupID;
|
||||||
|
int? hospitalID;
|
||||||
|
int? dbCRUDOperation;
|
||||||
|
bool? isActive;
|
||||||
|
int? createdBy;
|
||||||
|
String? createdOn;
|
||||||
|
int? modifiedBy;
|
||||||
|
String? modifiedOn;
|
||||||
|
int? approvedBy;
|
||||||
|
String? approvedOn;
|
||||||
|
String? rowVersion;
|
||||||
|
int? pomrid;
|
||||||
|
|
||||||
|
// Default constructor
|
||||||
|
PatientPhysicalExamination();
|
||||||
|
|
||||||
|
// fromJson constructor
|
||||||
|
PatientPhysicalExamination.fromJson(Map<String, dynamic> json) {
|
||||||
|
patientPhysicalExaminationRevisionID =
|
||||||
|
json['patientPhysicalExaminationRevisionID'];
|
||||||
|
patientPhysicalExaminationID = json['patientPhysicalExaminationID'];
|
||||||
|
patientID = json['patientID'];
|
||||||
|
physicalExaminationSystemID = json['physicalExaminationSystemID'];
|
||||||
|
physicalExaminationDescription = json['physicalExaminationDescription'];
|
||||||
|
physicalExaminationCondition = json['physicalExaminationCondition'];
|
||||||
|
remark = json['remark'];
|
||||||
|
assessmentId = json['assessmentId'];
|
||||||
|
userType = json['userType'];
|
||||||
|
specialtyID = json['specialtyID'];
|
||||||
|
specialityDescription = json['specialityDescription'];
|
||||||
|
loginUserId = json['loginUserId'];
|
||||||
|
isMandatory = json['isMandatory'];
|
||||||
|
examinationType = json['examinationType'];
|
||||||
|
additionalParams = json['additionalParams'];
|
||||||
|
hospitalGroupID = json['hospitalGroupID'];
|
||||||
|
hospitalID = json['hospitalID'];
|
||||||
|
dbCRUDOperation = json['dbCRUDOperation'];
|
||||||
|
isActive = json['isActive'];
|
||||||
|
createdBy = json['createdBy'];
|
||||||
|
createdOn = json['createdOn'];
|
||||||
|
modifiedBy = json['modifiedBy'];
|
||||||
|
modifiedOn = json['modifiedOn'];
|
||||||
|
approvedBy = json['approvedBy'];
|
||||||
|
approvedOn = json['approvedOn'];
|
||||||
|
rowVersion = json['rowVersion'];
|
||||||
|
pomrid = json['pomrid'];
|
||||||
|
}
|
||||||
|
|
||||||
|
// toJson method
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
return {
|
||||||
|
'patientPhysicalExaminationRevisionID': patientPhysicalExaminationRevisionID,
|
||||||
|
'patientPhysicalExaminationID': patientPhysicalExaminationID,
|
||||||
|
'patientID': patientID,
|
||||||
|
'physicalExaminationSystemID': physicalExaminationSystemID,
|
||||||
|
'physicalExaminationDescription': physicalExaminationDescription,
|
||||||
|
'physicalExaminationCondition': physicalExaminationCondition,
|
||||||
|
'remark': remark,
|
||||||
|
'assessmentId': assessmentId,
|
||||||
|
'userType': userType,
|
||||||
|
'specialtyID': specialtyID,
|
||||||
|
'specialityDescription': specialityDescription,
|
||||||
|
'loginUserId': loginUserId,
|
||||||
|
'isMandatory': isMandatory,
|
||||||
|
'examinationType': examinationType,
|
||||||
|
'additionalParams': additionalParams,
|
||||||
|
'hospitalGroupID': hospitalGroupID,
|
||||||
|
'hospitalID': hospitalID,
|
||||||
|
'dbCRUDOperation': dbCRUDOperation,
|
||||||
|
'isActive': isActive,
|
||||||
|
'createdBy': createdBy,
|
||||||
|
'createdOn': createdOn,
|
||||||
|
'modifiedBy': modifiedBy,
|
||||||
|
'modifiedOn': modifiedOn,
|
||||||
|
'approvedBy': approvedBy,
|
||||||
|
'approvedOn': approvedOn,
|
||||||
|
'rowVersion': rowVersion,
|
||||||
|
'pomrid': pomrid,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,54 @@
|
|||||||
|
class PostPhysicalExaminationModel {
|
||||||
|
bool? isChecked;
|
||||||
|
bool? selected;
|
||||||
|
int? pomrid;
|
||||||
|
int? patientID;
|
||||||
|
bool? isClinicPhysicalExamination;
|
||||||
|
int? physicalExaminationSystemID;
|
||||||
|
String? physicalExaminationDescription;
|
||||||
|
int? specialityID;
|
||||||
|
dynamic selectedOptions;
|
||||||
|
bool? isMandatory;
|
||||||
|
String? specialityDescription;
|
||||||
|
int? physicalExaminationCondition;
|
||||||
|
String? loginUserId;
|
||||||
|
String? remark;
|
||||||
|
|
||||||
|
PostPhysicalExaminationModel();
|
||||||
|
|
||||||
|
PostPhysicalExaminationModel.fromJson(Map<String, dynamic> json) {
|
||||||
|
isChecked = json['isChecked'];
|
||||||
|
selected = json['selected'];
|
||||||
|
pomrid = json['pomrid'];
|
||||||
|
patientID = json['patientID'];
|
||||||
|
isClinicPhysicalExamination = json['isClinicPhysicalExamination'];
|
||||||
|
physicalExaminationSystemID = json['physicalExaminationSystemID'];
|
||||||
|
physicalExaminationDescription = json['physicalExaminationDescription'];
|
||||||
|
specialityID = json['specialityID'];
|
||||||
|
selectedOptions = json['selectedOptions'];
|
||||||
|
isMandatory = json['isMandatory'];
|
||||||
|
specialityDescription = json['specialityDescription'];
|
||||||
|
physicalExaminationCondition = json['physicalExaminationCondition'];
|
||||||
|
loginUserId = json['loginUserId'];
|
||||||
|
remark = json['remark'];
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
return {
|
||||||
|
'isChecked': isChecked,
|
||||||
|
'selected': selected,
|
||||||
|
'pomrid': pomrid,
|
||||||
|
'patientID': patientID,
|
||||||
|
'isClinicPhysicalExamination': isClinicPhysicalExamination,
|
||||||
|
'physicalExaminationSystemID': physicalExaminationSystemID,
|
||||||
|
'physicalExaminationDescription': physicalExaminationDescription,
|
||||||
|
'specialityID': specialityID,
|
||||||
|
'selectedOptions': selectedOptions,
|
||||||
|
'isMandatory': isMandatory,
|
||||||
|
'specialityDescription': specialityDescription,
|
||||||
|
'physicalExaminationCondition': physicalExaminationCondition,
|
||||||
|
'loginUserId': loginUserId,
|
||||||
|
'remark': remark,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,94 @@
|
|||||||
|
import 'package:doctor_app_flutter/core/model/SOAP/assessment/audit_diagnosis.dart';
|
||||||
|
import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart';
|
||||||
|
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
|
class AuditItem extends StatelessWidget {
|
||||||
|
final AuditDiagnosis auditDiagnosis;
|
||||||
|
|
||||||
|
const AuditItem({super.key, required this.auditDiagnosis});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
|
children: [
|
||||||
|
AppText(
|
||||||
|
auditDiagnosis.createdBy ?? '',
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 12,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
AppText(
|
||||||
|
getDate(auditDiagnosis.createdOn?.isNotEmpty== true ? auditDiagnosis.createdOn ?? '' : auditDiagnosis.modifiedOn??''),
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 10,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
SizedBox(height: 4,),
|
||||||
|
Row(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
|
children: [
|
||||||
|
AppText(
|
||||||
|
"${TranslationBase.of(context).diagnosis}: ${auditDiagnosis.diagnosisType}",
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 12,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
AppText(
|
||||||
|
getTime(auditDiagnosis.createdOn?.isNotEmpty== true ? auditDiagnosis.createdOn ?? '' : auditDiagnosis.modifiedOn??''),
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 10,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 4,
|
||||||
|
),
|
||||||
|
|
||||||
|
Visibility(
|
||||||
|
visible: auditDiagnosis.deletedRemarks?.isEmpty == true,
|
||||||
|
child: AppText(
|
||||||
|
//todo handle the item after the discussion from the vidapro team this is temporary
|
||||||
|
"${TranslationBase.of(context).remarks}: ${auditDiagnosis.remarks?.isNotEmpty == true? auditDiagnosis.remarks : TranslationBase.of(context).noRemarks}",
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 12,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Visibility(
|
||||||
|
visible: auditDiagnosis.deletedRemarks?.isNotEmpty == true,
|
||||||
|
child: AppText(
|
||||||
|
//todo handle the item after the discussion from the vidapro team this is temporary
|
||||||
|
"${TranslationBase.of(context).deletedRemarks}${auditDiagnosis.deletedRemarks}",
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 12,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
String getDate(String dateTime) {
|
||||||
|
if (dateTime.isEmpty) return '';
|
||||||
|
DateTime now = DateTime.now();
|
||||||
|
return DateFormat('dd MMM yyyy').format(now);
|
||||||
|
}
|
||||||
|
|
||||||
|
String getTime(String dateTime) {
|
||||||
|
if (dateTime.isEmpty) return '';
|
||||||
|
DateTime now = DateTime.now();
|
||||||
|
return DateFormat('hh:mm a').format(now);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,62 @@
|
|||||||
|
import 'package:doctor_app_flutter/core/model/SOAP/assessment/audit_diagnosis.dart';
|
||||||
|
import 'package:doctor_app_flutter/screens/patients/profile/soap_update_vida_plus/assessment/widget/audit_item.dart';
|
||||||
|
import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart';
|
||||||
|
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
class AuditListBottomSheet extends StatelessWidget {
|
||||||
|
final List<AuditDiagnosis> auditList;
|
||||||
|
|
||||||
|
const AuditListBottomSheet({super.key, required this.auditList});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return SizedBox(
|
||||||
|
height: (auditList.length>1)?MediaQuery.sizeOf(context).height*.56:MediaQuery.sizeOf(context).height*.28,
|
||||||
|
child: Material(
|
||||||
|
color: Color(0xFFF7F7F7),
|
||||||
|
shape: RoundedRectangleBorder(borderRadius: BorderRadius.only(topLeft: Radius.circular(20), topRight: Radius.circular(20))),
|
||||||
|
child: Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(horizontal: 20.0, vertical: 32),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
AppText(
|
||||||
|
TranslationBase.of(context).audit,
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
fontSize: 24,
|
||||||
|
color: Color(0xFF2B353E),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 16,
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: (auditList.length>1)?MediaQuery.sizeOf(context).height*.25:MediaQuery.sizeOf(context).height*.12,
|
||||||
|
child: Material(
|
||||||
|
shape: RoundedRectangleBorder(
|
||||||
|
borderRadius: BorderRadius.circular(10)),
|
||||||
|
color: Colors.white,
|
||||||
|
child: Column(
|
||||||
|
mainAxisSize: MainAxisSize.max,
|
||||||
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
|
children: [
|
||||||
|
Expanded(
|
||||||
|
child: ListView.separated(
|
||||||
|
|
||||||
|
itemCount: auditList.length,
|
||||||
|
itemBuilder: (context, index) => AuditItem(
|
||||||
|
auditDiagnosis: auditList[index],
|
||||||
|
),
|
||||||
|
separatorBuilder: (_, __) => Divider(),
|
||||||
|
))
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,20 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
class EmptyDropDown extends StatelessWidget{
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Padding(
|
||||||
|
padding: const EdgeInsets.all(12.0),
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Expanded(child: SizedBox.shrink()),
|
||||||
|
Align(
|
||||||
|
alignment: Alignment.centerLeft,
|
||||||
|
child: Icon(Icons.keyboard_arrow_down),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,416 @@
|
|||||||
|
import 'dart:async';
|
||||||
|
|
||||||
|
import 'package:doctor_app_flutter/config/config.dart';
|
||||||
|
import 'package:doctor_app_flutter/config/size_config.dart';
|
||||||
|
import 'package:doctor_app_flutter/core/model/SOAP/assessment/diagnosis_type.dart';
|
||||||
|
import 'package:doctor_app_flutter/core/model/SOAP/assessment/search_diagnosis.dart';
|
||||||
|
import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart';
|
||||||
|
import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart';
|
||||||
|
import 'package:doctor_app_flutter/screens/base/base_view.dart';
|
||||||
|
import 'package:doctor_app_flutter/screens/patients/profile/soap_update_vida_plus/assessment/widget/empty_dropdown.dart';
|
||||||
|
import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart';
|
||||||
|
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
|
||||||
|
import 'package:doctor_app_flutter/widgets/shared/text_fields/app-textfield-custom.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
|
import 'package:hexcolor/hexcolor.dart';
|
||||||
|
|
||||||
|
List<String> patientState = ["", "Stable", "Not Stable", "Not Defined"];
|
||||||
|
|
||||||
|
class FavoriteDiagnosis extends StatefulWidget {
|
||||||
|
final PatiantInformtion patientInfo;
|
||||||
|
|
||||||
|
const FavoriteDiagnosis({super.key, required this.patientInfo});
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<FavoriteDiagnosis> createState() => _FavoriteDiagnosisState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _FavoriteDiagnosisState extends State<FavoriteDiagnosis> {
|
||||||
|
final TextEditingController filteredSearchController =
|
||||||
|
TextEditingController();
|
||||||
|
bool showAllDiagnosis = true;
|
||||||
|
String status = '';
|
||||||
|
String? selectedItem;
|
||||||
|
String? selectedFavorite;
|
||||||
|
TextEditingController remarksController = TextEditingController();
|
||||||
|
Timer? _tTimer;
|
||||||
|
SOAPViewModel? model;
|
||||||
|
SearchDiagnosis? selectedDiagnosis;
|
||||||
|
|
||||||
|
void _onTextChanged(String text) {
|
||||||
|
if (_tTimer != null) {
|
||||||
|
_tTimer!.cancel();
|
||||||
|
}
|
||||||
|
_tTimer = Timer(Duration(milliseconds: 500), () {
|
||||||
|
_onStopped(text);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
void _onStopped(String searchText) async {
|
||||||
|
await model?.searchDiagnosis(widget.patientInfo, searchText);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return BaseView<SOAPViewModel>(
|
||||||
|
onModelReady: (model) {
|
||||||
|
this.model = model;
|
||||||
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||||
|
model.favoriteDiagnosis(widget.patientInfo);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
builder: (_, model, w) => SingleChildScrollView(
|
||||||
|
child: Padding(
|
||||||
|
padding:
|
||||||
|
const EdgeInsets.symmetric(vertical: 12, horizontal: 16),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
AppText(
|
||||||
|
TranslationBase.of(context).addDiagnosis,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
color: Color(0xFF2E303A),
|
||||||
|
fontSize: 16,
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 16,
|
||||||
|
),
|
||||||
|
Material(
|
||||||
|
shape: RoundedRectangleBorder(
|
||||||
|
borderRadius: BorderRadius.circular(10),
|
||||||
|
side: BorderSide(
|
||||||
|
width: 1,
|
||||||
|
color: Color(0xFFEFEFEF),
|
||||||
|
)),
|
||||||
|
color: Colors.white,
|
||||||
|
child: Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(
|
||||||
|
horizontal: 16.0, vertical: 12),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
AppText(
|
||||||
|
TranslationBase.of(context).diagnosis,
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 11,
|
||||||
|
color: Color(0xFF2E303A),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 4,
|
||||||
|
),
|
||||||
|
model.favoriteDiagnosisDetails.isEmpty
|
||||||
|
? EmptyDropDown()
|
||||||
|
: DropdownButtonHideUnderline(
|
||||||
|
child: DropdownButton(
|
||||||
|
dropdownColor: Colors.white,
|
||||||
|
iconEnabledColor: Colors.black,
|
||||||
|
icon: Icon(Icons.keyboard_arrow_down),
|
||||||
|
isExpanded: true,
|
||||||
|
itemHeight: null,
|
||||||
|
value: selectedFavorite == null
|
||||||
|
? model.favoriteDiagnosisDetails.first
|
||||||
|
.diseases
|
||||||
|
: selectedFavorite,
|
||||||
|
iconSize: 25,
|
||||||
|
elevation: 16,
|
||||||
|
onChanged: (newValue) async {
|
||||||
|
if (newValue != null)
|
||||||
|
setState(() {
|
||||||
|
selectedFavorite = newValue;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
items: model.favoriteDiagnosisDetails
|
||||||
|
.map((item) {
|
||||||
|
return DropdownMenuItem(
|
||||||
|
child: AppText(
|
||||||
|
item.diseases ?? '',
|
||||||
|
fontSize: 14,
|
||||||
|
letterSpacing: -0.96,
|
||||||
|
color: AppGlobal.appTextColor,
|
||||||
|
fontWeight: FontWeight.normal,
|
||||||
|
textAlign: TextAlign.left,
|
||||||
|
),
|
||||||
|
value: item.diseases,
|
||||||
|
);
|
||||||
|
}).toList(),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
|
SizedBox(
|
||||||
|
height: 8,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
margin: EdgeInsets.only(bottom: 12),
|
||||||
|
child: AppText(
|
||||||
|
TranslationBase.of(context).condition,
|
||||||
|
fontWeight: FontWeight.bold,
|
||||||
|
fontFamily: 'Poppins',
|
||||||
|
fontSize: 11,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
// Row(
|
||||||
|
// children: [
|
||||||
|
// Expanded(
|
||||||
|
// child: InkWell(
|
||||||
|
// onTap: () {
|
||||||
|
// setState(() {
|
||||||
|
// status = "";
|
||||||
|
// });
|
||||||
|
// },
|
||||||
|
// child: Row(
|
||||||
|
// children: [
|
||||||
|
// Container(
|
||||||
|
// padding: EdgeInsets.all(2.0),
|
||||||
|
// margin: EdgeInsets.symmetric(horizontal: 6),
|
||||||
|
// width: 20,
|
||||||
|
// height: 20,
|
||||||
|
// decoration: BoxDecoration(
|
||||||
|
// color: Colors.white,
|
||||||
|
// shape: BoxShape.circle,
|
||||||
|
// border:
|
||||||
|
// Border.all(color: Colors.grey, width: 1),
|
||||||
|
// ),
|
||||||
|
// child: Container(
|
||||||
|
// decoration: BoxDecoration(
|
||||||
|
// color: status == 1
|
||||||
|
// ? HexColor("#D02127")
|
||||||
|
// : Colors.white,
|
||||||
|
// shape: BoxShape.circle,
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// AppText(
|
||||||
|
// TranslationBase.of(context).acute,
|
||||||
|
// fontWeight: FontWeight.normal,
|
||||||
|
// fontFamily: 'Poppins',
|
||||||
|
// fontSize: SizeConfig.textMultiplier! * 1.6,
|
||||||
|
// ),
|
||||||
|
// ],
|
||||||
|
// ),
|
||||||
|
// )),
|
||||||
|
// Expanded(
|
||||||
|
// child: InkWell(
|
||||||
|
// onTap: () {
|
||||||
|
// setState(() {
|
||||||
|
// status = "2";
|
||||||
|
// });
|
||||||
|
// },
|
||||||
|
// child: Row(
|
||||||
|
// children: [
|
||||||
|
// Container(
|
||||||
|
// padding: EdgeInsets.all(2.0),
|
||||||
|
// margin: EdgeInsets.symmetric(horizontal: 6),
|
||||||
|
// width: 20,
|
||||||
|
// height: 20,
|
||||||
|
// decoration: BoxDecoration(
|
||||||
|
// color: Colors.white,
|
||||||
|
// shape: BoxShape.circle,
|
||||||
|
// border: Border.all(
|
||||||
|
// color: Colors.grey, width: 1),
|
||||||
|
// ),
|
||||||
|
// child: Container(
|
||||||
|
// decoration: BoxDecoration(
|
||||||
|
// color: status == 2
|
||||||
|
// ? HexColor("#D02127")
|
||||||
|
// : Colors.white,
|
||||||
|
// shape: BoxShape.circle,
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// AppText(
|
||||||
|
// TranslationBase.of(context).subAcute,
|
||||||
|
// fontWeight: FontWeight.normal,
|
||||||
|
// fontFamily: 'Poppins',
|
||||||
|
// fontSize: SizeConfig.textMultiplier! * 1.6,
|
||||||
|
// ),
|
||||||
|
// ],
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// Expanded(
|
||||||
|
// child: InkWell(
|
||||||
|
// onTap: () {
|
||||||
|
// setState(() {
|
||||||
|
// status = "3";
|
||||||
|
// });
|
||||||
|
// },
|
||||||
|
// child: Row(
|
||||||
|
// children: [
|
||||||
|
// Container(
|
||||||
|
// padding: EdgeInsets.all(2.0),
|
||||||
|
// margin: EdgeInsets.symmetric(horizontal: 6),
|
||||||
|
// width: 20,
|
||||||
|
// height: 20,
|
||||||
|
// decoration: BoxDecoration(
|
||||||
|
// color: Colors.white,
|
||||||
|
// shape: BoxShape.circle,
|
||||||
|
// border: Border.all(
|
||||||
|
// color: Colors.grey, width: 1),
|
||||||
|
// ),
|
||||||
|
// child: Container(
|
||||||
|
// decoration: BoxDecoration(
|
||||||
|
// color: status == 3
|
||||||
|
// ? HexColor("#D02127")
|
||||||
|
// : Colors.white,
|
||||||
|
// shape: BoxShape.circle,
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// AppText(
|
||||||
|
// TranslationBase.of(context).chronic,
|
||||||
|
// fontWeight: FontWeight.normal,
|
||||||
|
// fontFamily: 'Poppins',
|
||||||
|
// fontSize: SizeConfig.textMultiplier! * 1.6,
|
||||||
|
// ),
|
||||||
|
// ],
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// ],
|
||||||
|
// ),
|
||||||
|
SizedBox(
|
||||||
|
width: MediaQuery.sizeOf(context).width,
|
||||||
|
height: 24,
|
||||||
|
child: ListView.builder(
|
||||||
|
shrinkWrap: true,
|
||||||
|
scrollDirection: Axis.horizontal,
|
||||||
|
itemCount: model.conditionTypeList.length,
|
||||||
|
itemBuilder: (context, index) => InkWell(
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
status = model.conditionTypeList[index];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.all(2.0),
|
||||||
|
margin:
|
||||||
|
EdgeInsets.symmetric(horizontal: 6),
|
||||||
|
width: 20,
|
||||||
|
height: 20,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
border: Border.all(
|
||||||
|
color: Colors.grey, width: 1),
|
||||||
|
),
|
||||||
|
child: Container(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: status ==
|
||||||
|
model.conditionTypeList[index]
|
||||||
|
? HexColor("#D02127")
|
||||||
|
: Colors.white,
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
AppText(
|
||||||
|
model.conditionTypeList[index],
|
||||||
|
fontWeight: FontWeight.normal,
|
||||||
|
fontFamily: 'Poppins',
|
||||||
|
fontSize:
|
||||||
|
SizeConfig.textMultiplier! * 1.6,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
)),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 8,
|
||||||
|
),
|
||||||
|
Material(
|
||||||
|
shape: RoundedRectangleBorder(
|
||||||
|
borderRadius: BorderRadius.circular(10),
|
||||||
|
side: BorderSide(
|
||||||
|
width: 1,
|
||||||
|
color: Color(0xFFEFEFEF),
|
||||||
|
)),
|
||||||
|
color: Colors.white,
|
||||||
|
child: Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(
|
||||||
|
horizontal: 16.0, vertical: 12),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
AppText(
|
||||||
|
TranslationBase.of(context).diagnoseType,
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 11,
|
||||||
|
color: Color(0xFF2E303A),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 4,
|
||||||
|
),
|
||||||
|
model.diagnosisTypeList.isEmpty
|
||||||
|
? EmptyDropDown()
|
||||||
|
: DropdownButtonHideUnderline(
|
||||||
|
child: DropdownButton(
|
||||||
|
itemHeight: null,
|
||||||
|
dropdownColor: Colors.white,
|
||||||
|
iconEnabledColor: Colors.black,
|
||||||
|
icon: Icon(Icons.keyboard_arrow_down),
|
||||||
|
isExpanded: true,
|
||||||
|
value: selectedItem == null
|
||||||
|
? model.diagnosisTypeList.keys.first
|
||||||
|
: selectedItem,
|
||||||
|
iconSize: 25,
|
||||||
|
elevation: 16,
|
||||||
|
onChanged: (newValue) async {
|
||||||
|
if (newValue != null)
|
||||||
|
setState(() {
|
||||||
|
selectedItem = newValue;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
items: model.diagnosisTypeList.keys
|
||||||
|
.map((item) {
|
||||||
|
return DropdownMenuItem(
|
||||||
|
child: Padding(
|
||||||
|
padding: const EdgeInsets.all(8.0),
|
||||||
|
child: AppText(
|
||||||
|
item ?? '',
|
||||||
|
fontSize: 14,
|
||||||
|
letterSpacing: -0.96,
|
||||||
|
color: AppGlobal.appTextColor,
|
||||||
|
fontWeight: FontWeight.normal,
|
||||||
|
textAlign: TextAlign.left,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
value: item,
|
||||||
|
);
|
||||||
|
}).toList(),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
margin: EdgeInsets.only(top: 8),
|
||||||
|
child: AppTextFieldCustom(
|
||||||
|
hintText: TranslationBase.of(context).remarks,
|
||||||
|
controller: remarksController,
|
||||||
|
minLines: 2,
|
||||||
|
maxLines: 4,
|
||||||
|
inputType: TextInputType.multiline,
|
||||||
|
onChanged: (value) {},
|
||||||
|
onClick: () {},
|
||||||
|
onFieldSubmitted: () {},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 16,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue