Ver Fonte

중간커밋
- 임시저장 완료

songjunekeun há 5 anos atrás
pai
commit
b7d94efc2e

+ 16 - 9
app/src/main/java/com/dbs/mplus/knuh/adapter/ConsentListAdapter.java

@@ -14,6 +14,7 @@ import com.dbs.mplus.knuh.BuildConfig;
 import com.dbs.mplus.knuh.R;
 import com.dbs.mplus.knuh.activity.ConsentActivity;
 import com.dbs.mplus.knuh.consent.ConsentCreateParam;
+import com.dbs.mplus.knuh.consent.ConsentEvent;
 import com.dbs.mplus.knuh.consent.ConsentFacade;
 import com.dbs.mplus.knuh.httpTask.CallBack;
 import com.dbs.mplus.knuh.model.ConsentFormListVO;
@@ -37,6 +38,7 @@ public class ConsentListAdapter extends RecyclerView.Adapter<ConsentListAdapter.
   private Context                      mContext;
   private ConsentActivity instance;
   public  ArrayList<ConsentFormListVO> arrayList;
+  private ConsentEvent consentEvent;
 
   private String apiType = "";
 
@@ -128,23 +130,28 @@ public class ConsentListAdapter extends RecyclerView.Adapter<ConsentListAdapter.
       String formPrntNm      = consentFormListVO.getFormPrntNm();
       String certPass        = consentFormListVO.getCertUseYn();
       String _consentMstRid  = consentFormListVO.getConsentMstRid();
+      String formRid         = consentFormListVO.getFormRid();
       String guid            = consentFormListVO.getFormGuid();
       String linkFormCd      = consentFormListVO.getLinkFormCd();
       String ocrTag          = consentFormListVO.getOcrTag();
 
+
       if (holder.listLayer == v) {
         if (instance.centerMenu.patientInfoVO == null) {
           instance.showSingButtonDialog(mContext.getString(R.string.emptyPatientInfo));
         } else {
-          ConsentCreateParam consentCreateParam = new ConsentCreateParam(mContext, userDrFlag, consentState, consentStateEng);
-          HashMap<String, String> globalParam = consentCreateParam.setGlobalParam(instance.centerMenu.patientInfoVO, _consentMstRid);
-          ArrayList<HashMap<String, String>> mapArrayList = consentCreateParam.setFormParam(_consentMstRid, guid, formPrntNm, linkFormCd, ocrTag);
-
-          HashMap map = new HashMap();
-          map.put("globalParam", globalParam);
-          map.put("formListParam", mapArrayList);
-          ConsentFacade consentFacade = new ConsentFacade(mContext);
-          consentFacade.startConsent(map, certPass);
+          consentEvent = new ConsentEvent(mContext, instance, consentFormListVO);
+          consentEvent.consentOpenProc();
+
+//          ConsentCreateParam consentCreateParam = new ConsentCreateParam(mContext, userDrFlag, consentState, consentStateEng);
+//          HashMap<String, String> globalParam = consentCreateParam.setGlobalParam(instance.centerMenu.patientInfoVO, _consentMstRid);
+//          ArrayList<HashMap<String, String>> mapArrayList = consentCreateParam.setFormParam(_consentMstRid, formRid, guid, formPrntNm, formCd, linkFormCd, ocrTag);
+//
+//          HashMap map = new HashMap();
+//          map.put("globalParam", globalParam);
+//          map.put("formListParam", mapArrayList);
+//          ConsentFacade consentFacade = new ConsentFacade(mContext);
+//          consentFacade.startConsent(map, certPass);
         }
 
       } else if (holder.tvSubText == v) {

+ 16 - 3
app/src/main/java/com/dbs/mplus/knuh/consent/ConsentCreateParam.java

@@ -121,9 +121,11 @@ public class ConsentCreateParam {
       if (userDrFlag.equals("Y") && ordType.equals("O")) {
         mData.put("userId", mainDrId);
         mData.put("deptCd", ordDeptCd);
+        map.put("mainDrId", mainDrId);
       } else {
         mData.put("userId", loginUserId);
         mData.put("deptCd", logionUserDeptCd);
+        map.put("mainDrId", loginUserId);
       }
       mData.put("instCd", BuildConfig.INST_CD);
 
@@ -279,6 +281,9 @@ public class ConsentCreateParam {
       map.put("parCMDCBD_ContStaff2Name", "");
       map.put("parCMDCBD_ContStaff3Name", "");
       map.put("parCMDCBD_CardNo", "");
+
+      map.put("ordType", ordType);
+      map.put("ward", ward);
     }
 
 
@@ -286,7 +291,7 @@ public class ConsentCreateParam {
     return map;
   }
 
-  public ArrayList<HashMap<String, String>> setFormParam(String consentMstRid, String guid, String formPrntNm, String linkFormCd, String ocrTag) {
+  public ArrayList<HashMap<String, String>> setFormParam(String consentMstRid, String formRid, String guid, String formPrntNm, String formCd, String linkFormCd, String ocrTag) {
     ArrayList<HashMap<String, String>> mapArrayList = new ArrayList<HashMap<String, String>>();
     HashMap<String, String> map   = new HashMap<String, String>();
     HashMap<String, String> mData = new HashMap<String, String>();
@@ -301,6 +306,8 @@ public class ConsentCreateParam {
     map.put("parCMDCFT_1PrintNm", formPrntNm);
     map.put("rid", consentMstRid);
     map.put("guid", guid);
+    map.put("formCd", formCd);
+    map.put("formRid", formRid);
 
     mapArrayList.add(map);
 
@@ -312,10 +319,14 @@ public class ConsentCreateParam {
       try {
         SoapObject object = connection.execute().get();
 
+        Log.e(TAG, "link object-- > " + object);
+
         if (object.getPropertyCount() > 1) {
           String _consentMstRid = object.getProperty("consentMstRid").toString().trim();
-          String _formGuid = object.getProperty("formGuid").toString().trim();
-          String _formPrntNm = object.getProperty("formPrntNm").toString().trim();
+          String _formGuid      = object.getProperty("formGuid").toString().trim();
+          String _formPrntNm    = object.getProperty("formPrntNm").toString().trim();
+          String _formRid       = object.getProperty("formRid").toString().trim();
+          String _formCd        = object.getProperty("formCd").toString().trim();
 
           HashMap<String, String> linkMap = new HashMap<String, String>();
 
@@ -328,6 +339,8 @@ public class ConsentCreateParam {
           linkMap.put("parCMSGBD_ocr_cd", ocrTag.equals("") ? getOcrTag() : ocrTag);
           linkMap.put("rid", _consentMstRid);
           linkMap.put("guid", _formGuid);
+          linkMap.put("formRid", _formRid);
+          linkMap.put("formCd", _formCd);
           linkMap.put("parCMDCFT_1PrintNm", _formPrntNm);
 
           mapArrayList.add(linkMap);

+ 6 - 2
app/src/main/java/com/dbs/mplus/knuh/consent/ConsentEvent.java

@@ -61,7 +61,11 @@ public class ConsentEvent {
     } else {
       Log.e(TAG, "consentMstRid -- > " + consentMstRid);
       Log.e(TAG, "consentState -- > " + consentStateEng);
-      int state = checkConsentState(consentMstRid, consentStateEng);
+      int state = 0;
+      if (!consentMstRid.equals("0")) {
+        state = checkConsentState(consentMstRid, consentStateEng);
+      }
+
       Log.e(TAG, "state -- > " + state);
 
       if (state == -1 || state == 1) { // 상태조회 실패(-1)
@@ -71,7 +75,7 @@ public class ConsentEvent {
       } else {
         ConsentCreateParam consentCreateParam = new ConsentCreateParam(mContext, userDrFlag, consentState, consentStateEng);
         HashMap<String, String> globalParam = consentCreateParam.setGlobalParam(instance.centerMenu.patientInfoVO, consentMstRid);
-        ArrayList<HashMap<String, String>> mapArrayList = consentCreateParam.setFormParam(consentMstRid, guid, formPrntNm, linkFormCd, ocrTag);
+        ArrayList<HashMap<String, String>> mapArrayList = consentCreateParam.setFormParam(consentMstRid, formRid, guid, formPrntNm, formCd, linkFormCd, ocrTag);
 
         HashMap map = new HashMap();
         map.put("globalParam", globalParam);

+ 4 - 3
app/src/main/java/com/dbs/mplus/knuh/consent/ConsentFacade.java

@@ -30,6 +30,7 @@ import kr.co.clipsoft.eform.information.RunOption;
 import kr.co.clipsoft.eform.type.enumtype.LogLevel;
 import kr.co.clipsoft.eform.type.enumtype.Position;
 import kr.co.clipsoft.eform.type.enumtype.ScreenOrientation;
+import kr.co.clipsoft.eform.type.enumtype.TempSaveCheck;
 
 import static android.content.Context.INPUT_METHOD_SERVICE;
 
@@ -76,8 +77,8 @@ public class ConsentFacade {
     runOption.setIncludesDrawingOnTempDocument(true);  // 임시저장시 펜드로잉 정보 저장 여부
 
     runOption.setUseNextDocumentOpenDialogAfterSave(false);// 연속 출력시 저장 후 알림 여부
+    runOption.setSameCheckAsSaveWhenTempSave2(TempSaveCheck.Always);
 
-//    runOption.setInactivityTimeoutInMilisecond(1000 * 60 * sessionTime); //지정한 시간 1000 = 1초
 
     runOption.setUiStyle("{"
         + "'required-input':{'border':{'visible':'false','color':{'b':0,'g':0,'r':225,'a':120},'width':2},'background':{'visible':'true','color':{'b':0,'g':0,'r':225,'a':120}}}"
@@ -116,10 +117,10 @@ public class ConsentFacade {
     String fos = createFOS(consentData);
 
 //    Log.e(TAG, "create fos -- > " + fos);
-    Util.DEBUG(ConsentFacade.class, "create fos -- > " + fos);
+//    Util.LOG(ConsentFacade.class, "create fos -- > " + fos);
 
     eFormToolkit.setExitEventHandler(new EformExitEventHandler());
-    eFormToolkit.setResultEventHandler(new EFormSaveHandler(mContext, eFormToolkit));
+    eFormToolkit.setResultEventHandler(new EFormSaveHandler(mContext, eFormToolkit, consentData));
 
     eFormToolkit.setRunOption(createRunOption());
     if (SignWrapper.getInstance().isCertificate(userId) == true || certPass.equals("Y")) {

+ 195 - 3
app/src/main/java/com/dbs/mplus/knuh/consent/EFormSaveHandler.java

@@ -1,25 +1,217 @@
 package com.dbs.mplus.knuh.consent;
 
 import android.content.Context;
+import android.os.Build;
+import android.util.Log;
+
+import com.dbs.mplus.knuh.BuildConfig;
+import com.dbs.mplus.knuh.R;
+import com.dbs.mplus.knuh.activity.ConsentActivity;
+import com.dbs.mplus.knuh.httpTask.CallBack;
+import com.dbs.mplus.knuh.httpTask.HttpSoapConnection;
+import com.dbs.mplus.knuh.util.ConsentConfig;
+import com.dbs.mplus.knuh.util.Util;
+
+import org.ksoap2.serialization.SoapObject;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.concurrent.ExecutionException;
 
 import kr.co.clipsoft.eform.EFormToolkit;
 import kr.co.clipsoft.eform.event.IEventHandler;
 import kr.co.clipsoft.eform.event.ResultEventArgs;
+import kr.co.clipsoft.eform.type.enumtype.ResultCode;
 
-public class EFormSaveHandler implements IEventHandler<ResultEventArgs> {
+public class EFormSaveHandler implements IEventHandler<ResultEventArgs>, CallBack {
 
+  private static final String TAG = "EFormSaveHandler";
   private Context mContext;
   private EFormToolkit eFormToolkit;
+  private HashMap consentData;
+  private ConsentActivity instance = null;
+
+  private CallBack callBack = null;
+
+  private HashMap saveMapData = null;
 
+  private String buttonType = "";
 
-  public EFormSaveHandler(Context mContext, EFormToolkit eFormToolkit) {
+  public EFormSaveHandler(Context mContext, EFormToolkit eFormToolkit, HashMap consentData) {
     this.mContext     = mContext;
     this.eFormToolkit = eFormToolkit;
+    this.consentData  = consentData;
+    this.callBack     = this;
+    this.instance     = (ConsentActivity) mContext;
   }
 
   @Override
   public void eventReceived(Object o, ResultEventArgs resultEventArgs) {
-    eFormToolkit.sendEFormViewerOkEvent();
+
+//    eFormToolkit.sendEFormViewerOkEvent();
+    saveMapData = createSaveData(resultEventArgs, consentData);
+    saveProcess(saveMapData, resultEventArgs);
+
+  }
+
+  private HashMap createSaveData(ResultEventArgs eventArgs, HashMap consentData) {
+    HashMap resultMap = new HashMap();
+    int index = eventArgs.getFormOpenSequence() - 1;
+    Log.e(TAG, "index -- > " + index);
+    HashMap<String, String> globalParam = (HashMap<String, String>) consentData.get("globalParam");
+    ArrayList<HashMap<String, String>> formListParam = (ArrayList<HashMap<String, String>>) consentData.get("formListParam");
+    HashMap<String, String> formParam = (HashMap<String, String>) formListParam.get(index);
+
+    String userId            = Util.getStringPreference(mContext, "userInfo", "userId");
+    String userDeptCd        = Util.getStringPreference(mContext, "userInfo", "deptCd");
+    String patientCode       = globalParam.get("parCMDCHD_1PatientNo");
+    String clnDeptCode       = globalParam.get("parCMDCHD_1DepartmentCd");
+    int formRid              = Integer.parseInt(formParam.get("formRid"));
+    String formCd            = formParam.get("formCd");
+    int consentMstRid        = Integer.parseInt(formParam.get("rid"));
+    int rewriteConsentMstRid = 0;
+    String dataXml           = eventArgs.getDataXml();
+    String deviceType        = "AND";
+    String deviceIdentNo     = Util.getMACAddress();
+    String vistType          = globalParam.get("ordType");
+    String hosType           = BuildConfig.INST_CD;
+    String clnDate           = globalParam.get("parCMDCHD_1VisitDt"); //입원은 inDd, 외래는 ordDd;
+    String ward              = globalParam.get("ward");
+    String roomCd            = globalParam.get("parNUR_Fast_HospitalroomNo");
+    int orderNo              = 0;
+    String orderName         = "";
+    String orderCd           = "";
+    String ocrCode           = formParam.get("parCMSGBD_ocr_cd");
+    int cretNo               = Integer.parseInt(globalParam.get("parCMSGBD_Cretno"));
+    String createUserName    = userId;
+    String modifyUserName    = userId;
+    String mainDrId          = globalParam.get("mainDrId");
+    String pageCnt           = String.valueOf(eventArgs.getTotalPagesCount());
+    String actKind           = ""; // (임시 확인 : P), 인증 C, 삭제 CP
+    String clientType        = "M";
+    String opRsrvNo          = globalParam.get("parCMDCBD_OpRsrvNo");
+
+//    Util.LOG(EFormSaveHandler.class, "globalParam -- > " + consentData.get("globalParam"));
+//    Util.LOG(EFormSaveHandler.class, "formListParam -- > " + consentData.get("formListParam"));
+
+
+    String eptFilePath = eventArgs.getTempFilePath();
+    StringBuffer formXml = new StringBuffer();
+    if (eptFilePath != null && "".equals(eptFilePath) == false) {
+      try {
+        BufferedReader br = new BufferedReader(new FileReader(eptFilePath));
+        while (br.ready()) {
+          formXml.append(br.readLine());
+        }
+      } catch (Exception e1) {
+        e1.printStackTrace();
+        this.eFormToolkit.sendEFormViewerCancelEvent(mContext.getString(R.string.notReadEptFile));
+      }
+    }
+
+    File eptFile = new File(eptFilePath);
+    eptFile.delete();
+
+    resultMap.put("userId", userId);
+    resultMap.put("userDeptCd", userDeptCd);
+    resultMap.put("patientCode", patientCode);
+    resultMap.put("clnDeptCode", clnDeptCode);
+    resultMap.put("formRid", formRid);
+    resultMap.put("formCd", formCd);
+    resultMap.put("consentMstRid", consentMstRid);
+    resultMap.put("rewriteConsentMstRid", rewriteConsentMstRid);
+    resultMap.put("formXml", formXml.toString());
+    resultMap.put("dataXml", dataXml);
+    resultMap.put("deviceType", deviceType);
+    resultMap.put("deviceIdentNo", deviceIdentNo);
+    resultMap.put("vistType", vistType);
+    resultMap.put("hosType", hosType);
+    resultMap.put("clnDate", clnDate);
+    resultMap.put("ward", ward);
+    resultMap.put("roomCd", roomCd);
+    resultMap.put("orderNo", orderNo);
+    resultMap.put("orderName", orderName);
+    resultMap.put("orderCd", orderCd);
+    resultMap.put("ocrCode", ocrCode);
+    resultMap.put("cretNo", cretNo);
+    resultMap.put("createUserName", createUserName);
+    resultMap.put("modifyUserName", modifyUserName);
+    resultMap.put("mainDrId", mainDrId);
+    resultMap.put("pageCnt", pageCnt);
+    resultMap.put("clientType", clientType);
+    resultMap.put("opRsrvNo", opRsrvNo);
+
+    return resultMap;
+  }
+
+  private void saveProcess(HashMap saveData, ResultEventArgs eventArgs) {
+    buttonType = eventArgs.getResultCode().toString();
+    Log.e(TAG, "buttonType -- > " + buttonType);
+    switch (eventArgs.getResultCode()) {
+      case SAVE:       // 인증저장
+        saveData.put("actKind", "C");
+        saveData.put("consentState", "CERTIFY_CMP");
+//        eFormToolkit.sendEFormViewerOkEvent();
+        break;
+      case TEMP_SAVE:  // 임시저장
+        saveData.put("actKind", "P");
+        saveData.put("consentState", "TEMP");
+        Util.callHttp(mContext, ConsentConfig.HOST_CONSENT, ConsentConfig.SAVE_TEMP, saveData, callBack);
+//        eFormToolkit.sendEFormViewerOkEvent();
+        break;
+      case TEMP_SAVE2: // 확인저장
+        saveData.put("actKind", "P");
+        saveData.put("consentState", "ELECTR_CMP");
+//        eFormToolkit.sendEFormViewerOkEvent();
+        break;
+    }
+
+  }
+
+  @Override
+  public void result(SoapObject result) {
+    Log.e(TAG, "result !!  -- > " + result);
+    if (result == null) {
+      stop();
+    } else {
+      String res = result.getProperty("responseData").toString().trim();
+      int intRes = Integer.parseInt(res);
+
+      if (intRes == -1) {
+        stop();
+      } else {
+        String pid = saveMapData.get("patientCode").toString();
+        String inDd = saveMapData.get("clnDate").toString();
+        instance.centerMenu.getConsentList(pid, inDd);
+
+        eFormToolkit.sendEFormViewerOkEvent();
+      }
+
+
+    }
+
+  }
+
+  @Override
+  public void stop() {
+    String msg = "";
+    if (buttonType.equals(ResultCode.SAVE.toString())) {
+      msg = mContext.getString(R.string.cert);
+    } else if (buttonType.equals(ResultCode.TEMP_SAVE.toString())) {
+      msg = mContext.getString(R.string.temp);
+    } else if (buttonType.equals(ResultCode.TEMP_SAVE2.toString())) {
+      msg = mContext.getString(R.string.confirm);
+    }
+
+    eFormToolkit.sendEFormViewerCancelEvent(String.format(mContext.getString(R.string.saveFailed), msg));
+  }
+
+  @Override
+  public void error() {
+
   }
 }
 

+ 2 - 2
app/src/main/java/com/dbs/mplus/knuh/httpTask/HttpSoapConnection.java

@@ -50,14 +50,14 @@ public class HttpSoapConnection extends AsyncTask<Void, Void, SoapObject> {
       Log.e(TAG, "callMmethod -- > " + callMethod);
       HttpTransportSE hts = new HttpTransportSE(soapAction, ConsentConfig.CONNECT_TIMEOUT);
       hts.call(soapAction + callMethod, soapEnvelope);
-      
+
       if (soapEnvelope.getResponse() instanceof SoapObject) {
         soapResponse = (SoapObject) soapEnvelope.getResponse();
       } else {
         soapResponse = new SoapObject();
         soapResponse.addProperty(callMethod, soapEnvelope.getResponse());
       }
-      
+
       if (soapResponse != null) {
         return soapResponse;
       } else {

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

@@ -25,8 +25,9 @@ public class ConsentConfig {
   public static final String GET_CONSENT_CATEGORYY = "GetCategoryForDropdown";  // 동의서 찾기시 카테고리 리스트
   public static final String GET_CONSENT_SEARCH    = "GetConsentBySearch"; // 동의서 검색(찾기)
   public static final String GET_CONSENT_BY_FORMCD = "GetConsentByFormcd"; // 연계서식 정보 조회(수술 및 서식 동의서를 선택했을때)
-  public static final String GET_CONSENT_LIST = "GetConsentList"; // 동의서 이력 조회
-  public static final String CHECK_CONSENT_STATE = "CheckConsentState";
+  public static final String GET_CONSENT_LIST      = "GetConsentList"; // 동의서 이력 조회
+  public static final String CHECK_CONSENT_STATE   = "CheckConsentState";
+  public static final String SAVE_TEMP             = "SaveTempData";
 
 
   public final static int CONNECT_TIMEOUT   = 5000;

+ 65 - 5
app/src/main/java/com/dbs/mplus/knuh/util/Util.java

@@ -32,12 +32,16 @@ import com.dbs.mplus.knuh.httpTask.CallBack;
 import com.dbs.mplus.knuh.httpTask.HttpRunnable;
 
 import org.kobjects.base64.Base64;
+import org.xmlpull.v1.XmlPullParser;
+import org.xmlpull.v1.XmlPullParserException;
+import org.xmlpull.v1.XmlPullParserFactory;
 
 import java.io.BufferedInputStream;
 import java.io.BufferedOutputStream;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
+import java.io.StringReader;
 import java.io.UnsupportedEncodingException;
 import java.lang.reflect.Field;
 import java.net.NetworkInterface;
@@ -65,6 +69,50 @@ public class Util {
     return value;
   }
 
+  public static String nullToBlink(String value) {
+    if (value == null) {
+      value = "";
+    }
+
+    return value;
+  }
+
+  public void parse(String xml) {
+    try {
+      XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
+      XmlPullParser parser = factory.newPullParser();
+      parser.setInput(new StringReader(xml));
+      int eventType = parser.getEventType();
+      while(eventType != XmlPullParser.END_DOCUMENT) {
+        switch(eventType) {
+          case XmlPullParser.START_TAG:
+            // 태그명 가져오기
+            String startTag = parser.getName();
+            Class clz = this.getClass();
+            try {
+              // 태그명 필드 찾아서 값 설정
+              clz.getField(startTag).set(this, parser.nextText());
+            } catch (NoSuchFieldException e) {
+              // 없는필드 무시
+            } catch (IllegalAccessException e) {
+              e.printStackTrace();
+              // 발생할일이 없음
+            }
+            break;
+          case XmlPullParser.END_TAG:
+            String endTag = parser.getName();
+            break;
+        }
+        // 다음 이벤트 가져옴
+        eventType = parser.next();
+      }
+    } catch (XmlPullParserException e) {
+      e.printStackTrace();
+    } catch (IOException e) {
+      e.printStackTrace();
+    }
+  }
+
   /**
    * 현재날짜을 가져온다
    * @author jksong
@@ -572,23 +620,35 @@ public class Util {
     return dateFormat.format(date);
   }
 
-  public static void DEBUG(Class<?> clazz, String msg) {
+  public static void LOG(Class<?> clazz, String msg) {
 
-    printDebug(clazz, msg);
+    printDebug(clazz, msg, "error");
     //Log.d(MPlusFrameworkConstants.LOG_TAG, buildMessage(clazz, msg));
 
   }
 
-  private static void printDebug(Class<?> clazz, String msg) {
+  private static void printDebug(Class<?> clazz, String msg, String logType) {
     byte[] msgByte = msg.getBytes();
     int startIndex = 0;
     int bufferSize = 3500;
     while(msgByte.length > bufferSize) {
-      Log.d("JKSONG", buildMessage(clazz, new String(msgByte, startIndex, bufferSize-startIndex)));
+      if (logType.equals("error")) {
+        Log.e("JKSONG", buildMessage(clazz, new String(msgByte, startIndex, bufferSize-startIndex)));
+      } else {
+        Log.d("JKSONG", buildMessage(clazz, new String(msgByte, startIndex, bufferSize-startIndex)));
+      }
+
       startIndex = bufferSize;
       bufferSize = bufferSize + 3500;
     }
-    Log.d("JKSONG", buildMessage(clazz, new String(msgByte, startIndex, msgByte.length-startIndex)));
+
+    if (logType.equals("error")) {
+      Log.e("JKSONG", buildMessage(clazz, new String(msgByte, startIndex, msgByte.length-startIndex)));
+
+    } else {
+      Log.d("JKSONG", buildMessage(clazz, new String(msgByte, startIndex, msgByte.length-startIndex)));
+    }
+
   }
 
   private static final SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss.SSS", Locale.getDefault());

+ 3 - 0
app/src/main/res/values/strings.xml

@@ -98,10 +98,13 @@
     <string name="permissionCheck">전자동의서 로그인을 위해 파일 접근 권한 및 DeviceId 획득을 위한 전화번호 권한이 필요합니다.</string>
     <string name="permissionDenied">권한 허용이 되지 않아 사용하실 수 없습니다. [설정] > [애플리케이션] > %1$s 에서 권한을 허용해주세요.</string>
     <string name="networkError">무선통신이 연결되어있지 않습니다.</string>
+    <string name="notReadEptFile">EPT 파일을 읽을수 없습니다.</string>
+    <string name="saveFailed">%1s저장에 실패하였습니다.</string>
 
     <string name="viewer">뷰어</string>
     <string name="ERROR_000">뷰어 호출에 실패하였습니다.</string>
     <string name="ERROR_001">뷰어를 설치해주세요.</string>
     <string name="ERROR_002">뷰어 버전 정보가 일치하지 않습니다 앱 업데이트가 필요합니다.</string>
     <string name="ERROR_006">뷰어 실행 권한이 불충분합니다 </string>
+
 </resources>