SMMMO05800.xjs 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  3. * System Name : KNUH2.0
  4. * Job Name : EMR
  5. * Creator :
  6. * Make Date : 2015-02-17
  7. * Description :
  8. *---------------------------------------------------------------------------------------
  9. * Modify Date Modifier Modify Description
  10. *---------------------------------------------------------------------------------------
  11. * 2015-02-17 Live Converter TF->XP
  12. *
  13. *---------------------------------------------------------------------------------------
  14. ****************************************************************************************/
  15. //var sOPRECINFOLIST_PATH = "/root/main/oprecinfo/opreclist";
  16. var arErrorCode = new HashArray();
  17. //=======================================================================================
  18. // Function
  19. //---------------------------------------------------------------------------------------
  20. /***************************************************************************************************
  21. * Function : fInitialize_SMMMO05800
  22. * Description : 수술장부 초기화
  23. * Argument :
  24. * return type :
  25. * Creator :
  26. ***************************************************************************************************/
  27. function fInitialize_SMMMO05800(){
  28. ds_main_cond.setColumn(0,"fromdd", utlf_getCurrentDate());
  29. ds_main_cond.setColumn(0,"todd" , utlf_getCurrentDate());
  30. lf_mmbfGetDeptCodeComboList(ds_init_orddept, "D") //부서코드 콤보
  31. dsf_addDsItem( ds_init_orddept, "deptcd", "depthngnm", "전체", "-", "above"); //병동콤보 전체항목 추가
  32. ds_init_userlist.clearData();
  33. dsf_addDsItem( ds_init_userlist, "userid", "usernm", "전체", "-", "above"); //의사콤보(담당교수) 전체항목 추가
  34. // zbcfGetCodeList(new Array("M0017"), new Array("/root/init/M0017"));
  35. var arrParam = [{dsNm: "ds_init_M0017", cdGrpId: "M0017"}]
  36. appf_getCodeList(arrParam);
  37. ds_main_opreclist.clearData();
  38. ds_main_cond.setColumn(0,"perfdeptcd", "-");
  39. ds_main_cond.setColumn(0,"perfdrid", "-");
  40. }
  41. /***************************************************************************************************
  42. * Function : fReqOpRecInfo
  43. * Description : 수술장부 조회
  44. * Argument :
  45. * return type :
  46. * Creator :
  47. ***************************************************************************************************/
  48. function fReqOpRecInfo(){
  49. ds_send_reqdata.copyData(ds_main_cond);
  50. var oParam = {};
  51. oParam.id = "TRMMO05201";
  52. oParam.service = "prcpmngtapp.OpMngt";
  53. oParam.method = "reqGetOpRecInfoList";
  54. oParam.inds = "req=ds_send_reqdata";
  55. oParam.outds = "ds_main_opreclist=opreclist";
  56. oParam.async = false;
  57. oParam.callback = "cf_TRMMO05201";
  58. tranf_submit(oParam);
  59. if(arErrorCode.pop("TRMMO05201") > -1){
  60. ds_main_totcnt.setColumn(0,"totcnt",ds_main_opreclist.rowcount);
  61. }
  62. }
  63. /***************************************************************************************************
  64. * Function : cf_TRMMO05201
  65. * Description : TRMMO05201 콜백함수
  66. * Argument :
  67. * return type :
  68. * Creator :
  69. ***************************************************************************************************/
  70. function cf_TRMMO05201(sSvcId, nErrorCode, sErrorMsg) {
  71. arErrorCode.push(sSvcId, nErrorCode);
  72. }
  73. /***************************************************************************************************
  74. * Function : fSrchDiag
  75. * Description : 진단 검색
  76. * Argument :
  77. * return type :
  78. * Creator :
  79. ***************************************************************************************************/
  80. function fSrchDiag(){
  81. var diagnm = lf_getDsValue(ds_main_cond,0,"diaghngnm");
  82. if(diagnm.length > 1){
  83. var ch = diagnm.charAt(1);
  84. if(utlf_isNum(ch) == true){ //입력값의 두번째 자리 문자가 숫자인 경우 코드로 검색
  85. frmf_setParameter("SPMMO00800_cond1", 1);
  86. frmf_setParameter("SPMMO00800_cond2", 1);
  87. frmf_setParameter("SPMMO00800_cond3", "E");
  88. frmf_setParameter("SPMMO00800_cond4", utlf_getCurrentDate());
  89. frmf_setParameter("SPMMO00800_cond5", diagnm);
  90. }else{ //입력값의 두번쨰 자리 문자가 숫자가 아닌 경우 단어 검색
  91. bFlag = utlf_isHangul(diagnm);
  92. if(bFlag == "E"){ //입력값이 영문인 경우
  93. frmf_setParameter("SPMMO00800_cond1", 2);
  94. frmf_setParameter("SPMMO00800_cond2", 2);
  95. frmf_setParameter("SPMMO00800_cond3", "E");
  96. frmf_setParameter("SPMMO00800_cond4", utlf_getCurrentDate());
  97. frmf_setParameter("SPMMO00800_cond5", diagnm);
  98. }else if(bFlag == "H"){ //입력값이 한글인 경우
  99. frmf_setParameter("SPMMO00800_cond1", 2);
  100. frmf_setParameter("SPMMO00800_cond2", 2);
  101. frmf_setParameter("SPMMO00800_cond3", "H");
  102. frmf_setParameter("SPMMO00800_cond4", utlf_getCurrentDate());
  103. frmf_setParameter("SPMMO00800_cond5", diagnm);
  104. }else{
  105. sysf_messageBox("검색어를 정확하게", "C001");
  106. return;
  107. }
  108. }
  109. }else{
  110. sysf_messageBox("검색어는 두 글자 이상", "C001");
  111. return;
  112. }
  113. frmf_modal("SPMMO00800", "SPMMO00800", "", "", "", "", "", "", "", "", "", "", "M");
  114. var useyn = frmf_getParameter("SPMMO00800_rtn_useyn");
  115. if(useyn == "Y"){
  116. frmf_setParameter("SPMMO00800_rtn_useyn", "");
  117. var rtnparam = frmf_getParameter("SPMMO00800_rtn");
  118. rtnparam = rtnparam.split("▩");
  119. var tmpstr = rtnparam[0];
  120. tmpstr = tmpstr.split("▦");
  121. ds_main_cond.setColumn(0,"diaghngnm", tmpstr[2]);
  122. ds_main_cond.setColumn(0,"diagcd" , tmpstr[9]);
  123. }else{
  124. ds_main_cond.setColumn(0,"diaghngnm", "");
  125. ds_main_cond.setColumn(0,"diagcd" , "");
  126. }
  127. }
  128. /***************************************************************************************************
  129. * Function : fSearchOpTermCD
  130. * Description : 수술용어코드 검색
  131. * Argument :
  132. * return type :
  133. * Creator :
  134. ***************************************************************************************************/
  135. function fSearchOpTermCD(){
  136. var ophngnm = lf_getDsValue(ds_main_cond,0,"ophngnm");
  137. if(ophngnm.length > 1){ //입력값의 두번째가 숫자인 경우, 코드검색
  138. var ch = ophngnm.charAt(1);
  139. if(utlf_isNum(ch) == true){
  140. var param = "1▦1▦E▦" + utlf_getCurrentDate() + "▦" + ophngnm;
  141. }else{
  142. var bflag = utlf_isHangul(ophngnm);
  143. if(bflag == "E"){ //영문명 검색
  144. var param = "2▦4▦H▦" + utlf_getCurrentDate() + "▦" + ophngnm;
  145. }else if(bflag == "H"){ //한글명 검색
  146. var param = "2▦4▦H▦" + utlf_getCurrentDate() + "▦" + ophngnm;
  147. }
  148. }
  149. }
  150. frmf_setParameter("SPMMO05200_param", param);
  151. // modal("SPMMO05200");
  152. frmf_modal("SPMMO05200", "SPMMO05200", "", "", "", "", "", "", "", "", "", "", "M");
  153. var useyn = frmf_getParameter("SPMMO05200_rtn_useyn");
  154. if(useyn == "Y"){
  155. frmf_setParameter("SPMMO05200_rtn_useyn" , "");
  156. var rtnparam = frmf_getParameter("SPMMO05200_rtn_param");
  157. rtnparam = rtnparam.split("▩");
  158. var tmpstr = rtnparam[0];
  159. tmpstr = tmpstr.split("▦");
  160. ds_main_cond.setColumn(0,"opcd" , tmpstr[0]);
  161. ds_main_cond.setColumn(0,"ophngnm" , tmpstr[3]);
  162. }else{
  163. frmf_setParameter("SPMMO05200_rtn_useyn" , "");
  164. ds_main_cond.setColumn(0,"opcd" , "");
  165. ds_main_cond.setColumn(0,"ophngnm", "");
  166. }
  167. }
  168. ]]></Script>