@ -4,7 +4,6 @@ import 'package:doctor_app_flutter/config/size_config.dart';
import ' package:doctor_app_flutter/core/enum/view_state.dart ' ;
import ' package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart ' ;
import ' package:doctor_app_flutter/core/viewModel/project_view_model.dart ' ;
import ' package:doctor_app_flutter/core/model/SOAP/Assessment/patch_assessment_req_model.dart ' ;
import ' package:doctor_app_flutter/core/model/SOAP/master_key_model.dart ' ;
import ' package:doctor_app_flutter/core/model/SOAP/Assessment/post_assessment_request_model.dart ' ;
import ' package:doctor_app_flutter/core/model/SOAP/selected_items/my_selected_assement.dart ' ;
@ -26,6 +25,8 @@ import 'package:doctor_app_flutter/widgets/shared/text_fields/text_fields_utils.
import ' package:flutter/material.dart ' ;
import ' package:provider/provider.dart ' ;
import ' ../../../../../core/model/SOAP/assessment/patch_assessment_req_model.dart ' ;
class AddAssessmentDetails extends StatefulWidget {
final MySelectedAssessment mySelectedAssessment ;
final List < MySelectedAssessment > mySelectedAssessmentList ;
@ -48,7 +49,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
GlobalKey key = new GlobalKey < AutoCompleteTextFieldState < MasterKeyModel > > ( ) ;
bool isFormSubmitted = false ;
bool complexDiagnosis = true ;
@ override
Widget build ( BuildContext context ) {
ProjectViewModel projectViewModel = Provider . of ( context ) ;
@ -97,7 +98,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
builder: ( _ , model , w ) = > AppScaffold (
baseViewModel: model ,
isShowAppBar: true ,
appBar: BottomSheetTitle ( title: 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 (
@ -110,6 +111,26 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
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 (
@ -153,11 +174,10 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
maxLines: 1 ,
minLines: 1 ,
controller: icdNameController ,
enabled: true ,
enabled: true ,
isTextFieldHasSuffix: true ,
suffixIcon: IconButton (
onPressed: ( ) {
print ( icdNameController . text ) ;
if ( icdNameController . text . length < = 3 ) {
DrAppToastMsg . showErrorToast ( " Please enter 4 or more characters " ) ;
} else {
@ -367,7 +387,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
height: 0 ,
)
: CustomBottomSheetContainer (
label: ( widget . isUpdate ? ' Update Assessment Details ' : ' Add Assessment Details ' ) ,
label: ( widget . isUpdate ? TranslationBase . of ( context ) . updateAssessmentDetails: TranslationBase . of ( context ) . addAssessmentDetails ) ,
onTap: ( ) async {
setState ( ( ) {
isFormSubmitted = true ;
@ -387,23 +407,30 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
}
submitAssessment ( { SOAPViewModel model , MySelectedAssessment mySelectedAssessment , bool isUpdate = false } ) async {
Map profile = await sharedPref . getObj ( DOCTOR_PROFILE ) ;
DoctorProfileModel doctorProfile = DoctorProfileModel . fromJson ( profile ) ;
GifLoaderDialogUtils . showMyDialog ( context ) ;
if ( isUpdate ) {
PatchAssessmentReqModel patchAssessmentReqModel = PatchAssessmentReqModel (
PostAssessmentRequestUpdateModel patchAssessmentReqModel = PostAssessmentRequestUpdateModel (
patientMRN: widget . patientInfo . patientMRN ,
episodeI D : widget . patientInfo . episodeNo ,
episodeI d : widget . patientInfo . episodeNo ,
appointmentNo: widget . patientInfo . appointmentNo ,
createdByName: doctorProfile . doctorName ,
createdBy: doctorProfile . doctorID ,
icdCodeDetails: [
new IcdCodeDetailsUpdate (
remarks: mySelectedAssessment . remark ,
complexDiagnosis: true ,
complexDiagnosis: complexDiagnosis ,
conditionId: mySelectedAssessment . selectedDiagnosisCondition . id ,
prevIcdCode10ID: mySelectedAssessment . icdCode10ID ,
diagnosisTypeId: mySelectedAssessment . selectedDiagnosisType . id ,
icdcode10Id: mySelectedAssessment . selectedICD . code ,
prevIcdCode10ID: mySelectedAssessment . icdCode10ID ) ;
icdcode10Id: mySelectedAssessment . selectedICD . code ) ] ) ;
await model . patchAssessment ( patchAssessmentReqModel ) ;
} else {
Map profile = await sharedPref . getObj ( DOCTOR_PROFILE ) ;
DoctorProfileModel doctorProfile = DoctorProfileModel . fromJson ( profile ) ;
/ / Map profile = await sharedPref . getObj ( DOCTOR_PROFILE ) ;
/ / DoctorProfileModel doctorProfile = DoctorProfileModel . fromJson ( profile ) ;
PostAssessmentRequestModel postAssessmentRequestModel = new PostAssessmentRequestModel (
patientMRN: widget . patientInfo . patientMRN ,
episodeId: widget . patientInfo . episodeNo ,
@ -413,7 +440,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
icdCodeDetails: [
new IcdCodeDetails (
remarks: mySelectedAssessment . remark ,
complexDiagnosis: true ,
complexDiagnosis: complexDiagnosis ,
conditionId: mySelectedAssessment . selectedDiagnosisCondition . id ,
diagnosisTypeId: mySelectedAssessment . selectedDiagnosisType . id ,
icdcode10Id: mySelectedAssessment . selectedICD . code )