songjunekeun 5 年之前
父节点
当前提交
40a7cca91b

+ 31 - 4
app/src/main/java/com/dbs/mplus/knuh/MainActivity.java

@@ -75,10 +75,37 @@ public class MainActivity extends AppCompatActivity {
           @Override
           public void run() {
             if (result == null || result.getPropertyCount() == 0) {
-              ConsentConfig.SETTING_DATA.put("SESSION_TIME", "0");
+//              ConsentConfig.SETTING_DATA.put("SESSION_TIME", "0");
+              csAlert.show();
+              csAlert.setContent("기본 정보 설정에 실패하였습니다. \n다시 시도해주세요.", ConsentConfig.ALERT_BTN_TYPE);
+              csAlert.btnConfirm2.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                  csAlert.dismiss();
+                  finishAffinity();
+                }
+              });
             } else {
-              String sessionTime = result.getProperty("responseData").toString().trim();
-              ConsentConfig.SETTING_DATA.put("SESSION_TIME", sessionTime);
+              String baseData = result.getProperty("responseData").toString().trim();
+              String[] strAr = baseData.split(",");
+
+              for (int i = 0; i < strAr.length; i++) {
+                String[] dataAr = strAr[i].split("[|]");
+
+                String key   = "";
+                String value = "";
+                for (int j = 0; j < dataAr.length; j++) {
+
+                  if (j == 0) {
+                    key = dataAr[j];
+                  } else {
+                    value = dataAr[j];
+                  }
+
+                  ConsentConfig.SETTING_DATA.put(key.trim(), value.trim());
+                }
+              }
+
             }
             permissionCheck();
           }
@@ -103,7 +130,7 @@ public class MainActivity extends AppCompatActivity {
     Log.e(TAG, "mData -- > " + mData);
 
     if (Util.checkNetwork(mContext) == true) {
-      HttpRunnable runnable = new HttpRunnable(ConsentConfig.HOST_HOSPITAL, ConsentConfig.GET_SESSION_TIME, mData, callBack);
+      HttpRunnable runnable = new HttpRunnable(ConsentConfig.HOST_HOSPITAL, ConsentConfig.GET_BASE_DATA, mData, callBack);
       Thread thread = new Thread(runnable);
       thread.start();
     } else {

+ 15 - 9
app/src/main/java/com/dbs/mplus/knuh/activity/ConsentActivity.java

@@ -296,22 +296,28 @@ public class ConsentActivity extends AppCompatActivity {
     chkMyPatient = (CheckBox) findViewById(R.id.chkMyPatient);
 
     leftMenu.setRadioGroupDraw(indexPage);
-    chkMyPatient.setVisibility(View.GONE);
 
-//    if (!indexPage.equals("I")) {
-//      wardLayout.setVisibility(View.INVISIBLE);
-//      chkMyPatient.setVisibility(View.GONE);
-//    }
-//
-//    if(jobKindCd.indexOf("03") == 0){
-//      chkMyPatient.setVisibility(View.GONE);
-//    }
+    if (!indexPage.equals("I")) {
+      wardLayout.setVisibility(View.INVISIBLE);
+      chkMyPatient.setVisibility(View.GONE);
+    } else if (indexPage.equals("I")) {
+      if (ConsentConfig.SETTING_DATA.get("MY_PATIENT").equals("Y")) {
+        chkMyPatient.setVisibility(View.VISIBLE);
+      } else {
+        chkMyPatient.setVisibility(View.GONE);
+      }
+    }
+
+    if(jobKindCd.indexOf("03") == 0){
+      chkMyPatient.setVisibility(View.GONE);
+    }
 
     tvMainDate.setText(Util.nowDate());
 
     dateLayout.setOnClickListener(leftMenu.onClickListener);
     radioGroup.setOnCheckedChangeListener(leftMenu.onCheckedChangeListener);
     patientSearchLayout.setOnClickListener(leftMenu.onClickListener);
+    etPatientId.setOnEditorActionListener(leftMenu.onEditorActionListener);
 
     leftMenu.getWardList();
     leftMenu.getDeptList();

+ 17 - 1
app/src/main/java/com/dbs/mplus/knuh/activity/activityEvent/LeftMenu.java

@@ -7,13 +7,17 @@ import android.content.res.ColorStateList;
 import android.graphics.Color;
 import android.provider.CalendarContract;
 import android.util.Log;
+import android.view.KeyEvent;
 import android.view.View;
+import android.view.inputmethod.EditorInfo;
 import android.widget.AdapterView;
 import android.widget.DatePicker;
+import android.widget.EditText;
 import android.widget.LinearLayout;
 import android.widget.RadioButton;
 import android.widget.RelativeLayout;
 import android.widget.Spinner;
+import android.widget.TextView;
 
 import androidx.appcompat.app.AppCompatActivity;
 import androidx.appcompat.widget.AppCompatRadioButton;
@@ -55,7 +59,7 @@ public class LeftMenu {
 
   private HashMap<String, String> patientSearchMap = null;
 
-  private String patientState = "";
+  public String patientState = "";
 
   public LeftMenu(Context context, AppCompatActivity activity) {
     this.mContext   = context;
@@ -231,6 +235,18 @@ public class LeftMenu {
     }
   };
 
+  public EditText.OnEditorActionListener onEditorActionListener = new EditText.OnEditorActionListener() {
+    @Override
+    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+      if (actionId == EditorInfo.IME_ACTION_DONE) {
+        if (v == instance.etPatientId) {
+          getPatientList();
+        }
+      }
+      return false;
+    }
+  };
+
   private void setDate(String date) {
     instance.tvMainDate.setText(date);
   }

+ 22 - 1
app/src/main/java/com/dbs/mplus/knuh/consent/ConsentFacade.java

@@ -310,6 +310,27 @@ public class ConsentFacade {
   }
 
   private String getUiStyle() {
+
+    String visible = "false";
+    if (!instance.indexPage.equals("O")) {
+      if (instance.indexPage.equals("SR")) {
+        if (instance.leftMenu.patientState.equals("0")) {
+          visible = "true";
+        } else {
+          if (ConsentConfig.SETTING_DATA.get("ELECTR_CMP").equals("Y")) {
+            visible = "true";
+          }
+        }
+      } else {
+        if (ConsentConfig.SETTING_DATA.get("ELECTR_CMP").equals("Y")) {
+          visible = "true";
+        }
+      }
+
+    } else if (instance.indexPage.equals("O")) {
+      visible = "true";
+    }
+
     String uiStyle = "{                                                                                                                             " +
                      "  'required-input': {                                                                                                         " +
                      "    'border': {                                                                                                               " +
@@ -346,7 +367,7 @@ public class ConsentFacade {
                      "        'visible': 'true'                                                                                                     " +
                      "      },                                                                                                                      " +
                      "      'tempsave2': {                                                                                                          " +
-                     "        'visible': 'true',                                                                                                    " +
+                     "        'visible': '" + visible + "',                                                                                                    " +
                      "        'enabled': 'true',                                                                                                    " +
                      "        'text': '" + mContext.getString(R.string.confirmSave) + "'                                                            " +
                      "      },                                                                                                                      " +

+ 15 - 0
app/src/main/java/com/dbs/mplus/knuh/fragment/SearchFragment.java

@@ -11,9 +11,11 @@ import androidx.recyclerview.widget.RecyclerView;
 import android.content.Context;
 import android.os.Bundle;
 import android.util.Log;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.view.inputmethod.EditorInfo;
 import android.widget.AdapterView;
 import android.widget.EditText;
 import android.widget.LinearLayout;
@@ -98,6 +100,7 @@ public class SearchFragment extends Fragment {
 
   private void setEvent() {
     searchClickLayout.setOnClickListener(onClickListener);
+    etPatientId.setOnEditorActionListener(onEditorActionListener);
   }
 
   private View.OnClickListener onClickListener = new View.OnClickListener() {
@@ -109,6 +112,18 @@ public class SearchFragment extends Fragment {
     }
   };
 
+  public EditText.OnEditorActionListener onEditorActionListener = new EditText.OnEditorActionListener() {
+    @Override
+    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+      if (actionId == EditorInfo.IME_ACTION_DONE) {
+        if (v == etPatientId) {
+          getConsentList(categoryId);
+        }
+      }
+      return false;
+    }
+  };
+
   /** Spinner List API **/
   /**
    * 동의서 검색 조건에 필요한 카테고리 데이터를 가져온다

+ 1 - 1
app/src/main/java/com/dbs/mplus/knuh/util/ConsentConfig.java

@@ -23,7 +23,7 @@ public class ConsentConfig {
   public static final String GET_SIGN_DATA         = "GetSignImage";       // 서명 이미지
   public static final String GET_USER_INFO         = "GetUserInfo";        // 사용자 정보
   public static final String GET_OCR_TAG           = "GetOcrTag";          // ocrTag 채번
-  public static final String GET_SESSION_TIME      = "GetSessionTime";
+  public static final String GET_BASE_DATA         = "GetBaseData";
 
   public static final String HOST_CONSENT = BuildConfig.CONSENT_SERVER_URL + "ConsentSvc.asmx";
   public static final String GET_CONSENT_CATEGORYY   = "GetCategoryForDropdown";  // 동의서 찾기시 카테고리 리스트

+ 1 - 0
app/src/main/res/layout/activity_left.xml

@@ -361,6 +361,7 @@
                     android:text="@string/myPatient"
                     android:buttonTint="@color/darkGray"
                     android:background="@android:color/transparent"
+                    android:visibility="gone"
                     android:textSize="14sp"/>
             </LinearLayout>
         </LinearLayout>