@ -1,3 +1,4 @@
import ' package:autocomplete_textfield/autocomplete_textfield.dart ' ;
import ' package:doctor_app_flutter/client/base_app_client.dart ' ;
import ' package:doctor_app_flutter/config/config.dart ' ;
import ' package:doctor_app_flutter/core/enum/master_lookup_key.dart ' ;
@ -377,6 +378,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
TextEditingController remarkController = TextEditingController ( ) ;
TextEditingController appointmentIdController = TextEditingController (
text: " 234567 " ) ;
GlobalKey key = new GlobalKey < AutoCompleteTextFieldState < MasterKeyModel > > ( ) ;
@ override
Widget build ( BuildContext context ) {
@ -385,7 +387,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
. of ( context )
. size ;
InputDecoration textFieldSelectorDecoration ( String hintText ,
String selectedText , bool isDropDown ) {
String selectedText , bool isDropDown ,{ IconData icon } ) {
/ / TODO: make one Input InputDecoration for all
return InputDecoration (
focusedBorder: OutlineInputBorder (
@ -401,7 +403,7 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
borderRadius: BorderRadius . circular ( 8 ) ,
) ,
hintText: selectedText ! = null ? selectedText : hintText ,
suffixIcon: isDropDown ? Icon ( Icons. arrow_drop_down ) : null ,
suffixIcon: isDropDown ? Icon ( icon? ? Icons. arrow_drop_down ) : null ,
hintStyle: TextStyle (
fontSize: 14 ,
color: Colors . grey . shade600 ,
@ -418,9 +420,9 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
if ( model . listOfDiagnosisType . length = = 0 ) {
await model . getMasterLookup ( MasterKeysService . DiagnosisType ) ;
}
/ / if ( model . listOfICD10 . length = = 0 ) {
/ / await model . getMasterLookup ( MasterKeysService . ICD10 ) ;
/ / }
if ( model . listOfICD10 . length = = 0 ) {
await model . getMasterLookup ( MasterKeysService . ICD10 ) ;
}
} ,
builder: ( _ , model , w ) = >
AppScaffold (
@ -472,43 +474,28 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
child: InkWell (
onTap: model . listOfDiagnosisType ! = null
? ( ) {
MasterKeyDailog dialog = MasterKeyDailog (
isICD: true ,
list: model . listOfDiagnosisType ,
selectedValue: widget
. mySelectedAssessment
. selectedICD ,
okText: TranslationBase
. of ( context )
. ok ,
okFunction:
( MasterKeyModel selectedValue ) {
setState ( ( ) {
widget . mySelectedAssessment
. selectedICD =
selectedValue ;
} ) ;
} ,
) ;
showDialog (
barrierDismissible: false ,
context: context ,
builder: ( BuildContext context ) {
return dialog ;
} ,
) ;
setState ( ( ) {
widget . mySelectedAssessment . selectedICD = null ;
} ) ;
}
: null ,
child: TextField (
child: widget . mySelectedAssessment . selectedICD = = null ? AutoCompleteTextField < MasterKeyModel > (
decoration: textFieldSelectorDecoration ( " Name or ICD " , widget . mySelectedAssessment . selectedICD ! = null ? widget . mySelectedAssessment . selectedICD . nameEn : null , true , icon: EvaIcons . search ) ,
itemSubmitted: ( item ) = > setState ( ( ) = > widget . mySelectedAssessment . selectedICD = item ) ,
key: key ,
suggestions: model . listOfICD10 ,
itemBuilder: ( context , suggestion ) = > new Padding (
child: Texts ( suggestion . description + " / " + suggestion . code . toString ( ) ) ,
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 ( ) )
,
) : TextField (
decoration: textFieldSelectorDecoration (
" Name / ICD " ,
widget . mySelectedAssessment
. selectedICD ! =
null
? widget . mySelectedAssessment
. selectedICD . nameEn
: null ,
true ) ,
widget . mySelectedAssessment . selectedICD ! = null ? widget . mySelectedAssessment . selectedICD . code : " Name or ICD " ,
widget . mySelectedAssessment . selectedICD ! = null ? widget . mySelectedAssessment . selectedICD . nameEn : null , true , icon: EvaIcons . search ) ,
enabled: false ,
) ,
) ,