|
|
|
|
@ -27,11 +27,18 @@ import '../../../../../core/model/SOAP/assessment/patch_assessment_req_model.dar
|
|
|
|
|
class AddAssessmentDetails extends StatefulWidget {
|
|
|
|
|
final MySelectedAssessment mySelectedAssessment;
|
|
|
|
|
final List<MySelectedAssessment> mySelectedAssessmentList;
|
|
|
|
|
final Function(MySelectedAssessment mySelectedAssessment, bool isUpdate) addSelectedAssessment;
|
|
|
|
|
final Function(MySelectedAssessment mySelectedAssessment, bool isUpdate)
|
|
|
|
|
addSelectedAssessment;
|
|
|
|
|
final PatiantInformtion patientInfo;
|
|
|
|
|
final bool isUpdate;
|
|
|
|
|
|
|
|
|
|
AddAssessmentDetails({Key? key, required this.mySelectedAssessment, required this.addSelectedAssessment, required this.patientInfo, this.isUpdate = false, required this.mySelectedAssessmentList});
|
|
|
|
|
AddAssessmentDetails(
|
|
|
|
|
{Key? key,
|
|
|
|
|
required this.mySelectedAssessment,
|
|
|
|
|
required this.addSelectedAssessment,
|
|
|
|
|
required this.patientInfo,
|
|
|
|
|
this.isUpdate = false,
|
|
|
|
|
required this.mySelectedAssessmentList});
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
|
_AddAssessmentDetailsState createState() => _AddAssessmentDetailsState();
|
|
|
|
|
@ -43,38 +50,66 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
|
|
|
|
|
TextEditingController conditionController = TextEditingController();
|
|
|
|
|
TextEditingController typeController = TextEditingController();
|
|
|
|
|
TextEditingController icdNameController = TextEditingController();
|
|
|
|
|
TextEditingController morphologyController = TextEditingController();
|
|
|
|
|
String? selectedMorphologyCode = null;
|
|
|
|
|
|
|
|
|
|
GlobalKey key = new GlobalKey<AutoCompleteTextFieldState<MasterKeyModel>>();
|
|
|
|
|
bool isFormSubmitted = false;
|
|
|
|
|
bool complexDiagnosis = true;
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
|
void initState() {
|
|
|
|
|
// TODO: implement initState
|
|
|
|
|
super.initState();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
|
ProjectViewModel projectViewModel = Provider.of(context);
|
|
|
|
|
|
|
|
|
|
remarkController.text = widget.mySelectedAssessment.remark ?? "";
|
|
|
|
|
appointmentIdController.text = widget.mySelectedAssessment.appointmentId.toString();
|
|
|
|
|
appointmentIdController.text =
|
|
|
|
|
widget.mySelectedAssessment.appointmentId.toString();
|
|
|
|
|
if (widget.isUpdate) {
|
|
|
|
|
if (widget.mySelectedAssessment.selectedDiagnosisCondition != null)
|
|
|
|
|
conditionController.text = projectViewModel.isArabic ? widget.mySelectedAssessment.selectedDiagnosisCondition!.nameAr! : widget.mySelectedAssessment.selectedDiagnosisCondition!.nameEn!;
|
|
|
|
|
conditionController.text = projectViewModel.isArabic
|
|
|
|
|
? widget.mySelectedAssessment.selectedDiagnosisCondition!.nameAr!
|
|
|
|
|
: widget.mySelectedAssessment.selectedDiagnosisCondition!.nameEn!;
|
|
|
|
|
if (widget.mySelectedAssessment.selectedDiagnosisType != null)
|
|
|
|
|
typeController.text = projectViewModel.isArabic ? widget.mySelectedAssessment.selectedDiagnosisType!.nameAr! : widget.mySelectedAssessment.selectedDiagnosisType!.nameEn!;
|
|
|
|
|
if (widget.mySelectedAssessment.selectedICD != null) icdNameController.text = widget.mySelectedAssessment.selectedICD!.code;
|
|
|
|
|
typeController.text = projectViewModel.isArabic
|
|
|
|
|
? widget.mySelectedAssessment.selectedDiagnosisType!.nameAr!
|
|
|
|
|
: widget.mySelectedAssessment.selectedDiagnosisType!.nameEn!;
|
|
|
|
|
if (widget.mySelectedAssessment.selectedICD != null)
|
|
|
|
|
icdNameController.text = widget.mySelectedAssessment.selectedICD!.code;
|
|
|
|
|
}
|
|
|
|
|
InputDecoration textFieldSelectorDecoration(String hintText, String? selectedText, bool isDropDown, {IconData? icon, String? validationError}) {
|
|
|
|
|
InputDecoration textFieldSelectorDecoration(
|
|
|
|
|
String hintText, String? selectedText, bool isDropDown,
|
|
|
|
|
{IconData? icon, String? validationError}) {
|
|
|
|
|
return new InputDecoration(
|
|
|
|
|
fillColor: Colors.white,
|
|
|
|
|
contentPadding: EdgeInsets.symmetric(vertical: 15, horizontal: 10),
|
|
|
|
|
focusedBorder: OutlineInputBorder(
|
|
|
|
|
borderSide: BorderSide(color: (validationError != null ? Colors.red.shade700 : Color(0xFFEFEFEF)), width: 2.5),
|
|
|
|
|
borderSide: BorderSide(
|
|
|
|
|
color: (validationError != null
|
|
|
|
|
? Colors.red.shade700
|
|
|
|
|
: Color(0xFFEFEFEF)),
|
|
|
|
|
width: 2.5),
|
|
|
|
|
borderRadius: BorderRadius.circular(8),
|
|
|
|
|
),
|
|
|
|
|
enabledBorder: OutlineInputBorder(
|
|
|
|
|
borderSide: BorderSide(color: (validationError != null ? Colors.red.shade700 : Color(0xFFEFEFEF)), width: 2.5),
|
|
|
|
|
borderSide: BorderSide(
|
|
|
|
|
color: (validationError != null
|
|
|
|
|
? Colors.red.shade700
|
|
|
|
|
: Color(0xFFEFEFEF)),
|
|
|
|
|
width: 2.5),
|
|
|
|
|
borderRadius: BorderRadius.circular(8),
|
|
|
|
|
),
|
|
|
|
|
disabledBorder: OutlineInputBorder(
|
|
|
|
|
borderSide: BorderSide(color: (validationError != null ? Colors.red.shade700 : Color(0xFFEFEFEF)), width: 2.5),
|
|
|
|
|
borderSide: BorderSide(
|
|
|
|
|
color: (validationError != null
|
|
|
|
|
? Colors.red.shade700
|
|
|
|
|
: Color(0xFFEFEFEF)),
|
|
|
|
|
width: 2.5),
|
|
|
|
|
borderRadius: BorderRadius.circular(8),
|
|
|
|
|
),
|
|
|
|
|
hintText: selectedText != null ? selectedText : hintText,
|
|
|
|
|
@ -95,8 +130,12 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
|
|
|
|
|
},
|
|
|
|
|
builder: (_, model, w) => AppScaffold(
|
|
|
|
|
baseViewModel: model,
|
|
|
|
|
isLoading: model.state == ViewState.BusyLocal,
|
|
|
|
|
isShowAppBar: true,
|
|
|
|
|
appBar: BottomSheetTitle(title: widget.isUpdate ? TranslationBase.of(context).updateAssessmentDetails : TranslationBase.of(context).addAssessmentDetails),
|
|
|
|
|
appBar: BottomSheetTitle(
|
|
|
|
|
title: widget.isUpdate
|
|
|
|
|
? TranslationBase.of(context).updateAssessmentDetails
|
|
|
|
|
: TranslationBase.of(context).addAssessmentDetails),
|
|
|
|
|
backgroundColor: Theme.of(context).scaffoldBackgroundColor,
|
|
|
|
|
body: SingleChildScrollView(
|
|
|
|
|
child: Center(
|
|
|
|
|
@ -105,277 +144,396 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
|
|
|
|
|
FractionallySizedBox(
|
|
|
|
|
widthFactor: 0.9,
|
|
|
|
|
child: Container(
|
|
|
|
|
child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 16,
|
|
|
|
|
),
|
|
|
|
|
Row(children: [
|
|
|
|
|
Checkbox(
|
|
|
|
|
value: complexDiagnosis,
|
|
|
|
|
onChanged: (bool? value) {
|
|
|
|
|
complexDiagnosis = value!;
|
|
|
|
|
setState(() {});
|
|
|
|
|
},
|
|
|
|
|
checkColor: Colors.white,
|
|
|
|
|
activeColor: Colors.green,
|
|
|
|
|
),
|
|
|
|
|
Text(
|
|
|
|
|
TranslationBase.of(context).complexDiagnosis,
|
|
|
|
|
),
|
|
|
|
|
]),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 16,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
margin: EdgeInsets.only(left: 0, right: 0, top: 15),
|
|
|
|
|
child: AppTextFieldCustom(
|
|
|
|
|
// height: 55.0,
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
hintText: TranslationBase.of(context).appointmentNumber,
|
|
|
|
|
isTextFieldHasSuffix: false,
|
|
|
|
|
enabled: false,
|
|
|
|
|
controller: appointmentIdController,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 10,
|
|
|
|
|
),
|
|
|
|
|
Column(children: [
|
|
|
|
|
InkWell(
|
|
|
|
|
onTap: model.listOfICD10 != null
|
|
|
|
|
? () {
|
|
|
|
|
child: Column(
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
children: [
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 16,
|
|
|
|
|
),
|
|
|
|
|
Row(children: [
|
|
|
|
|
Checkbox(
|
|
|
|
|
value: complexDiagnosis,
|
|
|
|
|
onChanged: (bool? value) {
|
|
|
|
|
complexDiagnosis = value!;
|
|
|
|
|
setState(() {});
|
|
|
|
|
},
|
|
|
|
|
checkColor: Colors.white,
|
|
|
|
|
activeColor: Colors.green,
|
|
|
|
|
),
|
|
|
|
|
Text(
|
|
|
|
|
TranslationBase.of(context).complexDiagnosis,
|
|
|
|
|
),
|
|
|
|
|
]),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 16,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
margin: EdgeInsets.only(left: 0, right: 0, top: 15),
|
|
|
|
|
child: AppTextFieldCustom(
|
|
|
|
|
// height: 55.0,
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
hintText:
|
|
|
|
|
TranslationBase.of(context).appointmentNumber,
|
|
|
|
|
isTextFieldHasSuffix: false,
|
|
|
|
|
enabled: false,
|
|
|
|
|
controller: appointmentIdController,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 10,
|
|
|
|
|
),
|
|
|
|
|
Column(children: [
|
|
|
|
|
InkWell(
|
|
|
|
|
onTap: model.listOfICD10 != null
|
|
|
|
|
? () {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedICD = null;
|
|
|
|
|
icdNameController.text = 'null';
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
child: AppTextFieldCustom(
|
|
|
|
|
onChanged: (text) {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment.selectedICD = null;
|
|
|
|
|
icdNameController.text = 'null';
|
|
|
|
|
icdNameController.text;
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
child: AppTextFieldCustom(
|
|
|
|
|
onChanged: (text) {
|
|
|
|
|
setState(() {
|
|
|
|
|
icdNameController.text;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
onClick: model.listOfICD10 != null
|
|
|
|
|
? () {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedICD = null;
|
|
|
|
|
icdNameController.text = 'null';
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
hintText:
|
|
|
|
|
TranslationBase.of(context).nameOrICD,
|
|
|
|
|
maxLines: 1,
|
|
|
|
|
minLines: 1,
|
|
|
|
|
controller: icdNameController,
|
|
|
|
|
enabled: true,
|
|
|
|
|
isTextFieldHasSuffix: true,
|
|
|
|
|
suffixIcon: IconButton(
|
|
|
|
|
onPressed: () {
|
|
|
|
|
if (icdNameController.text.length <=
|
|
|
|
|
2) {
|
|
|
|
|
DrAppToastMsg.showErrorToast(
|
|
|
|
|
"Please enter 3 or more characters");
|
|
|
|
|
} else {
|
|
|
|
|
model.listOfICD10!.clear();
|
|
|
|
|
model
|
|
|
|
|
.callAddAssessmentLookupsServices(
|
|
|
|
|
searchKey:
|
|
|
|
|
icdNameController.text);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
icon: Icon(
|
|
|
|
|
Icons.search,
|
|
|
|
|
color: Colors.grey.shade600,
|
|
|
|
|
)),
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
)),
|
|
|
|
|
|
|
|
|
|
model.listOfICD10.length > 0 &&
|
|
|
|
|
icdNameController.text.isNotEmpty
|
|
|
|
|
? Container(
|
|
|
|
|
color: Colors.white,
|
|
|
|
|
height: MediaQuery.of(context).size.height *
|
|
|
|
|
0.4,
|
|
|
|
|
//height to 9% of screen height,
|
|
|
|
|
child: ListView.builder(
|
|
|
|
|
shrinkWrap: true,
|
|
|
|
|
itemCount: model.listOfICD10.length,
|
|
|
|
|
itemBuilder: (context, index) {
|
|
|
|
|
return InkWell(
|
|
|
|
|
child: ListTile(
|
|
|
|
|
title: AppText(
|
|
|
|
|
model.listOfICD10[index]
|
|
|
|
|
.description +
|
|
|
|
|
" / " +
|
|
|
|
|
model.listOfICD10[index]
|
|
|
|
|
.code
|
|
|
|
|
.toString()
|
|
|
|
|
.trim(),
|
|
|
|
|
fontSize: 12.0)),
|
|
|
|
|
onTap: () {
|
|
|
|
|
model.getMorphologyDiagnosis(model
|
|
|
|
|
.listOfICD10[index].code
|
|
|
|
|
.toString()
|
|
|
|
|
.trim());
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedICD =
|
|
|
|
|
model.listOfICD10[index];
|
|
|
|
|
icdNameController.text = model
|
|
|
|
|
.listOfICD10[index]
|
|
|
|
|
.description;
|
|
|
|
|
model.listOfICD10.clear();
|
|
|
|
|
setState(() {});
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
))
|
|
|
|
|
: SizedBox()
|
|
|
|
|
// CustomAutoCompleteTextField(
|
|
|
|
|
// isShowError: isFormSubmitted && widget.mySelectedAssessment.selectedICD == null,
|
|
|
|
|
// child: Row(
|
|
|
|
|
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
|
|
// mainAxisSize: MainAxisSize.min,
|
|
|
|
|
// children: [
|
|
|
|
|
// AutoCompleteTextField<MasterKeyModel>(
|
|
|
|
|
// decoration: TextFieldsUtils.textFieldSelectorDecoration(TranslationBase.of(context).nameOrICD, null, true, suffixIcon: null),
|
|
|
|
|
// controller: icdNameController,
|
|
|
|
|
// itemSubmitted: (item) => setState(() {
|
|
|
|
|
// widget.mySelectedAssessment.selectedICD = item;
|
|
|
|
|
// // icdNameController.text = '${item.code.trim()}/${item.description}';
|
|
|
|
|
// icdNameController.text = '${item.description}';
|
|
|
|
|
// }),
|
|
|
|
|
// key: key,
|
|
|
|
|
// suggestions: model.listOfICD10,
|
|
|
|
|
// suggestionsAmount: model.listOfICD10.length,
|
|
|
|
|
// itemBuilder: (context, suggestion) =>
|
|
|
|
|
// new Padding(child: AppText(suggestion.description + " / " + suggestion.code.toString(), fontSize: 12.0), padding: EdgeInsets.all(8.0)),
|
|
|
|
|
// itemSorter: (a, b) => 1,
|
|
|
|
|
// itemFilter: (suggestion, input) =>
|
|
|
|
|
// // suggestion.description.toLowerCase().startsWith(input.toLowerCase()) ||
|
|
|
|
|
// // suggestion.description.toLowerCase().startsWith(input.toLowerCase()) ||
|
|
|
|
|
// // suggestion.code.toLowerCase().startsWith(input.toLowerCase()),
|
|
|
|
|
// suggestion.description.toLowerCase().contains(input.toLowerCase()) ||
|
|
|
|
|
// // suggestion.description.toLowerCase().startsWith(input.toLowerCase()) ||
|
|
|
|
|
// suggestion.code.toLowerCase().contains(input.toLowerCase()),
|
|
|
|
|
//
|
|
|
|
|
// ),
|
|
|
|
|
// Expanded(
|
|
|
|
|
// child: IconButton(
|
|
|
|
|
// onPressed: () {
|
|
|
|
|
// print(icdNameController.text);
|
|
|
|
|
// if (icdNameController.text.length <= 3) {
|
|
|
|
|
// DrAppToastMsg.showErrorToast("Please enter 4 or more characters");
|
|
|
|
|
// } else {
|
|
|
|
|
// model.listOfICD10.clear();
|
|
|
|
|
// model.callAddAssessmentLookupsServices(searchKey: icdNameController.text);
|
|
|
|
|
// }
|
|
|
|
|
// },
|
|
|
|
|
// icon: Icon(Icons.search),
|
|
|
|
|
// ),
|
|
|
|
|
// ),
|
|
|
|
|
// ],
|
|
|
|
|
// ),
|
|
|
|
|
// )
|
|
|
|
|
]),
|
|
|
|
|
if ((model.morphologyList != null &&
|
|
|
|
|
model.morphologyList.isNotEmpty) ||
|
|
|
|
|
morphologyController.text.isNotEmpty) ...{
|
|
|
|
|
AppTextFieldCustom(
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
onClick: model.listOfICD10 != null
|
|
|
|
|
onClick: model.morphologyList != null
|
|
|
|
|
? () {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment.selectedICD = null;
|
|
|
|
|
icdNameController.text = 'null';
|
|
|
|
|
});
|
|
|
|
|
MasterKeyDailog dialog = MasterKeyDailog(
|
|
|
|
|
list: model.listOfDiagnosisCondition!,
|
|
|
|
|
okText: TranslationBase.of(context).ok,
|
|
|
|
|
selectedStringValue: widget
|
|
|
|
|
.mySelectedAssessment
|
|
|
|
|
.morphologyCode,
|
|
|
|
|
okFunction:
|
|
|
|
|
(MasterKeyModel selectedValue) {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.morphologyCode =
|
|
|
|
|
selectedValue.code;
|
|
|
|
|
morphologyController.text =
|
|
|
|
|
selectedValue.code;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
showDialog(
|
|
|
|
|
barrierDismissible: false,
|
|
|
|
|
context: context,
|
|
|
|
|
builder: (BuildContext context) {
|
|
|
|
|
return dialog;
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
hintText: TranslationBase.of(context).nameOrICD,
|
|
|
|
|
hintText: TranslationBase.of(context).morphology,
|
|
|
|
|
maxLines: 1,
|
|
|
|
|
minLines: 1,
|
|
|
|
|
controller: icdNameController,
|
|
|
|
|
enabled: true,
|
|
|
|
|
controller: morphologyController,
|
|
|
|
|
isTextFieldHasSuffix: true,
|
|
|
|
|
suffixIcon: IconButton(
|
|
|
|
|
onPressed: () {
|
|
|
|
|
if (icdNameController.text.length <= 2) {
|
|
|
|
|
DrAppToastMsg.showErrorToast("Please enter 3 or more characters");
|
|
|
|
|
} else {
|
|
|
|
|
model.listOfICD10!.clear();
|
|
|
|
|
model.callAddAssessmentLookupsServices(searchKey: icdNameController.text);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
icon: Icon(
|
|
|
|
|
Icons.search,
|
|
|
|
|
color: Colors.grey.shade600,
|
|
|
|
|
)),
|
|
|
|
|
enabled: false,
|
|
|
|
|
hasBorder: true,
|
|
|
|
|
validationError: isFormSubmitted &&
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.morphologyCode ==
|
|
|
|
|
null
|
|
|
|
|
? TranslationBase.of(context).emptyMessage
|
|
|
|
|
: null,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
)),
|
|
|
|
|
|
|
|
|
|
model.listOfICD10.length > 0 && icdNameController.text.isNotEmpty
|
|
|
|
|
? Container(
|
|
|
|
|
color: Colors.white,
|
|
|
|
|
height: MediaQuery.of(context).size.height * 0.4, //height to 9% of screen height,
|
|
|
|
|
child: ListView.builder(
|
|
|
|
|
shrinkWrap: true,
|
|
|
|
|
itemCount: model.listOfICD10.length,
|
|
|
|
|
itemBuilder: (context, index) {
|
|
|
|
|
return InkWell(
|
|
|
|
|
child: ListTile(title: AppText(model.listOfICD10[index].description + " / " + model.listOfICD10[index].code.toString(), fontSize: 12.0)),
|
|
|
|
|
onTap: () {
|
|
|
|
|
widget.mySelectedAssessment.selectedICD = model.listOfICD10[index];
|
|
|
|
|
icdNameController.text = model.listOfICD10[index].description;
|
|
|
|
|
model.listOfICD10.clear();
|
|
|
|
|
setState(() {});
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
))
|
|
|
|
|
: SizedBox()
|
|
|
|
|
// CustomAutoCompleteTextField(
|
|
|
|
|
// isShowError: isFormSubmitted && widget.mySelectedAssessment.selectedICD == null,
|
|
|
|
|
// child: Row(
|
|
|
|
|
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
|
|
// mainAxisSize: MainAxisSize.min,
|
|
|
|
|
// children: [
|
|
|
|
|
// AutoCompleteTextField<MasterKeyModel>(
|
|
|
|
|
// decoration: TextFieldsUtils.textFieldSelectorDecoration(TranslationBase.of(context).nameOrICD, null, true, suffixIcon: null),
|
|
|
|
|
// controller: icdNameController,
|
|
|
|
|
// itemSubmitted: (item) => setState(() {
|
|
|
|
|
// widget.mySelectedAssessment.selectedICD = item;
|
|
|
|
|
// // icdNameController.text = '${item.code.trim()}/${item.description}';
|
|
|
|
|
// icdNameController.text = '${item.description}';
|
|
|
|
|
// }),
|
|
|
|
|
// key: key,
|
|
|
|
|
// suggestions: model.listOfICD10,
|
|
|
|
|
// suggestionsAmount: model.listOfICD10.length,
|
|
|
|
|
// itemBuilder: (context, suggestion) =>
|
|
|
|
|
// new Padding(child: AppText(suggestion.description + " / " + suggestion.code.toString(), fontSize: 12.0), padding: EdgeInsets.all(8.0)),
|
|
|
|
|
// itemSorter: (a, b) => 1,
|
|
|
|
|
// itemFilter: (suggestion, input) =>
|
|
|
|
|
// // suggestion.description.toLowerCase().startsWith(input.toLowerCase()) ||
|
|
|
|
|
// // suggestion.description.toLowerCase().startsWith(input.toLowerCase()) ||
|
|
|
|
|
// // suggestion.code.toLowerCase().startsWith(input.toLowerCase()),
|
|
|
|
|
// suggestion.description.toLowerCase().contains(input.toLowerCase()) ||
|
|
|
|
|
// // suggestion.description.toLowerCase().startsWith(input.toLowerCase()) ||
|
|
|
|
|
// suggestion.code.toLowerCase().contains(input.toLowerCase()),
|
|
|
|
|
//
|
|
|
|
|
// ),
|
|
|
|
|
// Expanded(
|
|
|
|
|
// child: IconButton(
|
|
|
|
|
// onPressed: () {
|
|
|
|
|
// print(icdNameController.text);
|
|
|
|
|
// if (icdNameController.text.length <= 3) {
|
|
|
|
|
// DrAppToastMsg.showErrorToast("Please enter 4 or more characters");
|
|
|
|
|
// } else {
|
|
|
|
|
// model.listOfICD10.clear();
|
|
|
|
|
// model.callAddAssessmentLookupsServices(searchKey: icdNameController.text);
|
|
|
|
|
// }
|
|
|
|
|
// },
|
|
|
|
|
// icon: Icon(Icons.search),
|
|
|
|
|
// ),
|
|
|
|
|
// ),
|
|
|
|
|
// ],
|
|
|
|
|
// ),
|
|
|
|
|
// )
|
|
|
|
|
]),
|
|
|
|
|
if (widget.mySelectedAssessment.selectedICD != null)
|
|
|
|
|
Column(
|
|
|
|
|
children: [
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 3,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
width: MediaQuery.of(context).size.width * 0.7,
|
|
|
|
|
child: AppText(
|
|
|
|
|
widget.mySelectedAssessment.selectedICD!.description + (' (${widget.mySelectedAssessment.selectedICD!.code} )'),
|
|
|
|
|
color: Color(0xFF575757),
|
|
|
|
|
fontSize: 10,
|
|
|
|
|
fontWeight: FontWeight.w700,
|
|
|
|
|
letterSpacing: -0.4,
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 7,
|
|
|
|
|
),
|
|
|
|
|
AppTextFieldCustom(
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
onClick: model.listOfDiagnosisCondition != null
|
|
|
|
|
? () {
|
|
|
|
|
MasterKeyDailog dialog = MasterKeyDailog(
|
|
|
|
|
list: model.listOfDiagnosisCondition!,
|
|
|
|
|
okText: TranslationBase.of(context).ok,
|
|
|
|
|
selectedValue: widget.mySelectedAssessment.selectedDiagnosisCondition,
|
|
|
|
|
okFunction: (MasterKeyModel selectedValue) {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment.selectedDiagnosisCondition = selectedValue;
|
|
|
|
|
conditionController.text =
|
|
|
|
|
projectViewModel.isArabic ? widget.mySelectedAssessment.selectedDiagnosisCondition!.nameAr! : widget.mySelectedAssessment.selectedDiagnosisCondition!.nameEn!;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
showDialog(
|
|
|
|
|
barrierDismissible: false,
|
|
|
|
|
context: context,
|
|
|
|
|
builder: (BuildContext context) {
|
|
|
|
|
return dialog;
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
hintText: TranslationBase.of(context).condition,
|
|
|
|
|
maxLines: 1,
|
|
|
|
|
minLines: 1,
|
|
|
|
|
controller: conditionController,
|
|
|
|
|
isTextFieldHasSuffix: true,
|
|
|
|
|
enabled: false,
|
|
|
|
|
hasBorder: true,
|
|
|
|
|
validationError: isFormSubmitted && widget.mySelectedAssessment.selectedDiagnosisCondition == null ? TranslationBase.of(context).emptyMessage : null,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 10,
|
|
|
|
|
),
|
|
|
|
|
AppTextFieldCustom(
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
onClick: model.listOfDiagnosisType != null
|
|
|
|
|
? () {
|
|
|
|
|
MasterKeyDailog dialog = MasterKeyDailog(
|
|
|
|
|
list: model.listOfDiagnosisType!,
|
|
|
|
|
okText: TranslationBase.of(context).ok,
|
|
|
|
|
selectedValue: widget.mySelectedAssessment.selectedDiagnosisType !=null ? widget.mySelectedAssessment.selectedDiagnosisType : null,
|
|
|
|
|
okFunction: (MasterKeyModel selectedValue) {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment.selectedDiagnosisType = selectedValue;
|
|
|
|
|
typeController.text = projectViewModel.isArabic ? selectedValue.nameAr! : selectedValue.nameEn!;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
showDialog(
|
|
|
|
|
barrierDismissible: false,
|
|
|
|
|
context: context,
|
|
|
|
|
builder: (BuildContext context) {
|
|
|
|
|
return dialog;
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
hintText: TranslationBase.of(context).dType,
|
|
|
|
|
maxLines: 1,
|
|
|
|
|
minLines: 1,
|
|
|
|
|
enabled: true,
|
|
|
|
|
isTextFieldHasSuffix: true,
|
|
|
|
|
controller: typeController,
|
|
|
|
|
hasBorder: true,
|
|
|
|
|
validationError: isFormSubmitted && widget.mySelectedAssessment.selectedDiagnosisType == null ? TranslationBase.of(context).emptyMessage : null,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 10,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
margin: EdgeInsets.only(left: 0, right: 0, top: 15),
|
|
|
|
|
child: AppTextFieldCustom(
|
|
|
|
|
hintText: TranslationBase.of(context).remarks,
|
|
|
|
|
maxLines: 18,
|
|
|
|
|
minLines: 5,
|
|
|
|
|
inputType: TextInputType.multiline,
|
|
|
|
|
controller: remarkController,
|
|
|
|
|
onChanged: (value) {
|
|
|
|
|
widget.mySelectedAssessment.remark = remarkController.text;
|
|
|
|
|
},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: SizeConfig.heightMultiplier! *
|
|
|
|
|
(SizeConfig.isHeightVeryShort
|
|
|
|
|
? 20
|
|
|
|
|
: SizeConfig.isHeightShort
|
|
|
|
|
? 15
|
|
|
|
|
: 10),
|
|
|
|
|
),
|
|
|
|
|
])),
|
|
|
|
|
if (widget.mySelectedAssessment.selectedICD != null)
|
|
|
|
|
Column(
|
|
|
|
|
children: [
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 3,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
width:
|
|
|
|
|
MediaQuery.of(context).size.width * 0.7,
|
|
|
|
|
child: AppText(
|
|
|
|
|
widget.mySelectedAssessment.selectedICD!
|
|
|
|
|
.description +
|
|
|
|
|
(' (${widget.mySelectedAssessment.selectedICD!.code} )'),
|
|
|
|
|
color: Color(0xFF575757),
|
|
|
|
|
fontSize: 10,
|
|
|
|
|
fontWeight: FontWeight.w700,
|
|
|
|
|
letterSpacing: -0.4,
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 7,
|
|
|
|
|
),
|
|
|
|
|
AppTextFieldCustom(
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
onClick: model.listOfDiagnosisCondition != null
|
|
|
|
|
? () {
|
|
|
|
|
MasterKeyDailog dialog = MasterKeyDailog(
|
|
|
|
|
list: model.listOfDiagnosisCondition!,
|
|
|
|
|
okText: TranslationBase.of(context).ok,
|
|
|
|
|
selectedValue: widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisCondition,
|
|
|
|
|
okFunction:
|
|
|
|
|
(MasterKeyModel selectedValue) {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisCondition =
|
|
|
|
|
selectedValue;
|
|
|
|
|
conditionController
|
|
|
|
|
.text = projectViewModel
|
|
|
|
|
.isArabic
|
|
|
|
|
? widget
|
|
|
|
|
.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisCondition!
|
|
|
|
|
.nameAr!
|
|
|
|
|
: widget
|
|
|
|
|
.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisCondition!
|
|
|
|
|
.nameEn!;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
showDialog(
|
|
|
|
|
barrierDismissible: false,
|
|
|
|
|
context: context,
|
|
|
|
|
builder: (BuildContext context) {
|
|
|
|
|
return dialog;
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
hintText: TranslationBase.of(context).condition,
|
|
|
|
|
maxLines: 1,
|
|
|
|
|
minLines: 1,
|
|
|
|
|
controller: conditionController,
|
|
|
|
|
isTextFieldHasSuffix: true,
|
|
|
|
|
enabled: false,
|
|
|
|
|
hasBorder: true,
|
|
|
|
|
validationError: isFormSubmitted &&
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisCondition ==
|
|
|
|
|
null
|
|
|
|
|
? TranslationBase.of(context).emptyMessage
|
|
|
|
|
: null,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 10,
|
|
|
|
|
),
|
|
|
|
|
AppTextFieldCustom(
|
|
|
|
|
height: Utils.getTextFieldHeight(),
|
|
|
|
|
onClick: model.listOfDiagnosisType != null
|
|
|
|
|
? () {
|
|
|
|
|
MasterKeyDailog dialog = MasterKeyDailog(
|
|
|
|
|
list: model.listOfDiagnosisType!,
|
|
|
|
|
okText: TranslationBase.of(context).ok,
|
|
|
|
|
selectedValue: widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisType !=
|
|
|
|
|
null
|
|
|
|
|
? widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisType
|
|
|
|
|
: null,
|
|
|
|
|
okFunction:
|
|
|
|
|
(MasterKeyModel selectedValue) {
|
|
|
|
|
setState(() {
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisType =
|
|
|
|
|
selectedValue;
|
|
|
|
|
typeController.text =
|
|
|
|
|
projectViewModel.isArabic
|
|
|
|
|
? selectedValue.nameAr!
|
|
|
|
|
: selectedValue.nameEn!;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
showDialog(
|
|
|
|
|
barrierDismissible: false,
|
|
|
|
|
context: context,
|
|
|
|
|
builder: (BuildContext context) {
|
|
|
|
|
return dialog;
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
: null,
|
|
|
|
|
hintText: TranslationBase.of(context).dType,
|
|
|
|
|
maxLines: 1,
|
|
|
|
|
minLines: 1,
|
|
|
|
|
enabled: true,
|
|
|
|
|
isTextFieldHasSuffix: true,
|
|
|
|
|
controller: typeController,
|
|
|
|
|
hasBorder: true,
|
|
|
|
|
validationError: isFormSubmitted &&
|
|
|
|
|
widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisType ==
|
|
|
|
|
null
|
|
|
|
|
? TranslationBase.of(context).emptyMessage
|
|
|
|
|
: null,
|
|
|
|
|
onChanged: (value) {},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 10,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
margin: EdgeInsets.only(left: 0, right: 0, top: 15),
|
|
|
|
|
child: AppTextFieldCustom(
|
|
|
|
|
hintText: TranslationBase.of(context).remarks,
|
|
|
|
|
maxLines: 18,
|
|
|
|
|
minLines: 5,
|
|
|
|
|
inputType: TextInputType.multiline,
|
|
|
|
|
controller: remarkController,
|
|
|
|
|
onChanged: (value) {
|
|
|
|
|
widget.mySelectedAssessment.remark =
|
|
|
|
|
remarkController.text;
|
|
|
|
|
},
|
|
|
|
|
onFieldSubmitted: () {},
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: SizeConfig.heightMultiplier! *
|
|
|
|
|
(SizeConfig.isHeightVeryShort
|
|
|
|
|
? 20
|
|
|
|
|
: SizeConfig.isHeightShort
|
|
|
|
|
? 15
|
|
|
|
|
: 10),
|
|
|
|
|
),
|
|
|
|
|
])),
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
@ -386,17 +544,26 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
|
|
|
|
|
height: 0,
|
|
|
|
|
)
|
|
|
|
|
: CustomBottomSheetContainer(
|
|
|
|
|
label: (widget.isUpdate ? TranslationBase.of(context).updateAssessmentDetails : TranslationBase.of(context).addAssessmentDetails),
|
|
|
|
|
label: (widget.isUpdate
|
|
|
|
|
? TranslationBase.of(context).updateAssessmentDetails
|
|
|
|
|
: TranslationBase.of(context).addAssessmentDetails),
|
|
|
|
|
onTap: () async {
|
|
|
|
|
setState(() {
|
|
|
|
|
isFormSubmitted = true;
|
|
|
|
|
});
|
|
|
|
|
widget.mySelectedAssessment.remark = remarkController.text;
|
|
|
|
|
widget.mySelectedAssessment.appointmentId = int.parse(appointmentIdController.text);
|
|
|
|
|
if (widget.mySelectedAssessment.selectedDiagnosisCondition != null &&
|
|
|
|
|
widget.mySelectedAssessment.selectedDiagnosisType != null &&
|
|
|
|
|
widget.mySelectedAssessment.appointmentId =
|
|
|
|
|
int.parse(appointmentIdController.text);
|
|
|
|
|
if (widget.mySelectedAssessment
|
|
|
|
|
.selectedDiagnosisCondition !=
|
|
|
|
|
null &&
|
|
|
|
|
widget.mySelectedAssessment.selectedDiagnosisType !=
|
|
|
|
|
null &&
|
|
|
|
|
widget.mySelectedAssessment.selectedICD != null) {
|
|
|
|
|
await submitAssessment(isUpdate: widget.isUpdate, model: model, mySelectedAssessment: widget.mySelectedAssessment);
|
|
|
|
|
await submitAssessment(
|
|
|
|
|
isUpdate: widget.isUpdate,
|
|
|
|
|
model: model,
|
|
|
|
|
mySelectedAssessment: widget.mySelectedAssessment);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
),
|
|
|
|
|
@ -405,44 +572,54 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
submitAssessment({SOAPViewModel? model, MySelectedAssessment? mySelectedAssessment, bool isUpdate = false}) async {
|
|
|
|
|
submitAssessment(
|
|
|
|
|
{SOAPViewModel? model,
|
|
|
|
|
MySelectedAssessment? mySelectedAssessment,
|
|
|
|
|
bool isUpdate = false}) async {
|
|
|
|
|
Map<String, dynamic> profile = await sharedPref.getObj(DOCTOR_PROFILE);
|
|
|
|
|
DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile);
|
|
|
|
|
GifLoaderDialogUtils.showMyDialog(context);
|
|
|
|
|
if (isUpdate) {
|
|
|
|
|
PostAssessmentRequestUpdateModel patchAssessmentReqModel = PostAssessmentRequestUpdateModel(
|
|
|
|
|
patientMRN: widget.patientInfo.patientMRN,
|
|
|
|
|
episodeId: widget.patientInfo.episodeNo,
|
|
|
|
|
appointmentNo: widget.patientInfo.appointmentNo,
|
|
|
|
|
createdByName: doctorProfile.doctorName,
|
|
|
|
|
createdBy: doctorProfile.doctorID,
|
|
|
|
|
icdCodeDetails: [
|
|
|
|
|
PostAssessmentRequestUpdateModel patchAssessmentReqModel =
|
|
|
|
|
PostAssessmentRequestUpdateModel(
|
|
|
|
|
patientMRN: widget.patientInfo.patientMRN,
|
|
|
|
|
episodeId: widget.patientInfo.episodeNo,
|
|
|
|
|
appointmentNo: widget.patientInfo.appointmentNo,
|
|
|
|
|
createdByName: doctorProfile.doctorName,
|
|
|
|
|
createdBy: doctorProfile.doctorID,
|
|
|
|
|
icdCodeDetails: [
|
|
|
|
|
new IcdCodeDetailsUpdate(
|
|
|
|
|
remarks: mySelectedAssessment!.remark,
|
|
|
|
|
complexDiagnosis: complexDiagnosis,
|
|
|
|
|
conditionId: mySelectedAssessment!.selectedDiagnosisCondition!.id,
|
|
|
|
|
conditionId:
|
|
|
|
|
mySelectedAssessment!.selectedDiagnosisCondition!.id,
|
|
|
|
|
prevIcdCode10ID: mySelectedAssessment.icdCode10ID,
|
|
|
|
|
diagnosisTypeId: mySelectedAssessment.selectedDiagnosisType!.id,
|
|
|
|
|
icdcode10Id: mySelectedAssessment.selectedICD!.code)
|
|
|
|
|
icdcode10Id: mySelectedAssessment.selectedICD!.code,
|
|
|
|
|
//todo will update the morphology here
|
|
|
|
|
)
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
await model?.patchAssessment(patchAssessmentReqModel);
|
|
|
|
|
} else {
|
|
|
|
|
// Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
|
|
|
|
|
// DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile);
|
|
|
|
|
PostAssessmentRequestModel postAssessmentRequestModel = new PostAssessmentRequestModel(
|
|
|
|
|
patientMRN: widget.patientInfo.patientMRN,
|
|
|
|
|
episodeId: widget.patientInfo.episodeNo,
|
|
|
|
|
appointmentNo: widget.patientInfo.appointmentNo,
|
|
|
|
|
createdByName: doctorProfile.doctorName,
|
|
|
|
|
createdBy: doctorProfile.doctorID,
|
|
|
|
|
icdCodeDetails: [
|
|
|
|
|
new IcdCodeDetails(
|
|
|
|
|
remarks: mySelectedAssessment!.remark,
|
|
|
|
|
complexDiagnosis: complexDiagnosis,
|
|
|
|
|
conditionId: mySelectedAssessment!.selectedDiagnosisCondition!.id,
|
|
|
|
|
diagnosisTypeId: mySelectedAssessment.selectedDiagnosisType!.id,
|
|
|
|
|
icdcode10Id: mySelectedAssessment.selectedICD!.code)
|
|
|
|
|
PostAssessmentRequestModel postAssessmentRequestModel =
|
|
|
|
|
PostAssessmentRequestModel(
|
|
|
|
|
patientMRN: widget.patientInfo.patientMRN,
|
|
|
|
|
episodeId: widget.patientInfo.episodeNo,
|
|
|
|
|
appointmentNo: widget.patientInfo.appointmentNo,
|
|
|
|
|
createdByName: doctorProfile.doctorName,
|
|
|
|
|
createdBy: doctorProfile.doctorID,
|
|
|
|
|
icdCodeDetails: [
|
|
|
|
|
IcdCodeDetails(
|
|
|
|
|
remarks: mySelectedAssessment!.remark,
|
|
|
|
|
complexDiagnosis: complexDiagnosis,
|
|
|
|
|
conditionId: mySelectedAssessment!.selectedDiagnosisCondition!.id,
|
|
|
|
|
diagnosisTypeId: mySelectedAssessment.selectedDiagnosisType!.id,
|
|
|
|
|
icdcode10Id: mySelectedAssessment.selectedICD!.code,
|
|
|
|
|
morphologyCode: mySelectedAssessment.morphologyCode,
|
|
|
|
|
)
|
|
|
|
|
]);
|
|
|
|
|
await model?.postAssessment(postAssessmentRequestModel);
|
|
|
|
|
}
|
|
|
|
|
|