SPMMO07600_진단검색.xrw 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>진단검색</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <diaginfo>
  11. <diagcdlist>
  12. <status/>
  13. <dispdiagcd/>
  14. <diagengnm/>
  15. <diaghngnm/>
  16. <orgdiagnm/>
  17. <spclinfo/>
  18. <orgdiagcd/>
  19. <tootfact/>
  20. <icd10cd/>
  21. <diagcd/>
  22. </diagcdlist>
  23. </diaginfo>
  24. </main>
  25. <send>
  26. <cond3/>
  27. <cond4/>
  28. <cond5/>
  29. <synmflag>Y</synmflag>
  30. <scrnflag/>
  31. <diagsrchmetd/>
  32. </send>
  33. <init>
  34. <diagsrchcond1/>
  35. <diagsrchnm/>
  36. <srchmode/>
  37. </init>
  38. </root>
  39. </instance>
  40. <script type="javascript">
  41. <![CDATA[
  42. function getDiagNodeListCSV(nodeList, rowid) {
  43. if( nodeList.length == 0 ){
  44. return;
  45. }
  46. var sColSep = "▦";
  47. var sRowSep = "▩";
  48. var rCSV = "";
  49. var childNodeList = nodeList.item(0).childNodes;
  50. var childNodeCnt = childNodeList.length;
  51. if( childNodeCnt == 0 ){
  52. return;
  53. }
  54. var i, j;
  55. for( i = 0; i < childNodeCnt - 1; i++) {
  56. rCSV += childNodeList.item(i).nodeName + sColSep;
  57. }
  58. rCSV += childNodeList.item(i).nodeName + sRowSep;
  59. model.getValue("/root/main/diaginfo/diagcdlist[" + rowid + "]/icd10cd")
  60. model.getValue("/root/main/diaginfo/diagcdlist[" + rowid + "]/diagengnm")
  61. var node;
  62. var cnt = 1;
  63. var selCnt = 0;
  64. while( node = nodeList.nextNode() ) {
  65. if (cnt == rowid) {
  66. //if (model.getValue ( "/root/main/diaginfo/diagcdlist[" + cnt++ + "]/status" ) == "I" ) {
  67. childNodeList = node.childNodes;
  68. for( i = 0; i < childNodeCnt - 1; i++) {
  69. rCSV += childNodeList.item(i).text + sColSep;
  70. }
  71. rCSV += childNodeList.item(i).text + sRowSep;
  72. selCnt++;
  73. }
  74. cnt++;
  75. }
  76. if ( selCnt == 0 ) {
  77. return "N"
  78. } else {
  79. return rCSV;
  80. }
  81. }
  82. /**
  83. * @desc : 진단 검색
  84. * @param :
  85. * @return :
  86. * @authur : HIT 진료
  87. */
  88. function fGetDiagSrch() {
  89. //초기화 작업
  90. model.removeNodeset ( "/root/main/diaginfo/diagcdlist" );
  91. opener.javascript.setParameter( "SPMMO07600_rtn", "" );
  92. opener.javascript.setParameter( "SPMMO07600_rtn_useyn", "N");
  93. var cond3 = opener.javascript.getParameter ( "SPMMO07600_cond3" ); //한영구분(H: 한글, E:영문)
  94. var cond4 = opener.javascript.getParameter ( "SPMMO07600_cond4" ); //기준일자: 외래일때는 진료일자, 입원일때는 처방일자
  95. var cond5 = opener.javascript.getParameter ( "SPMMO07600_cond5" ); //검색내용
  96. var srchmodecond = opener.javascript.getParameter ( "SPMMO07600_srchmode" ); //검색위치
  97. model.setValue("/root/init/diagsrchnm", cond5);
  98. if (cond5 == "") {
  99. alert("검색어가 없습니다. 검색어 입력 후 진행하세요.");
  100. return ;
  101. }
  102. var word = (cond5.getTrimLeft()).getTrimRight(); //좌,우측의 공백을 제거
  103. word = word.split(" ");
  104. if(word.length > 1){
  105. var fst = word[0].concat("% ");
  106. var sec = word[1].concat("%");
  107. cond5 = fst.concat(sec);
  108. }else{
  109. cond5 = word[0].concat("%");
  110. }
  111. model.setValue("/root/send/cond3", cond3 );
  112. model.setValue("/root/send/cond4", cond4 );
  113. model.setValue("/root/send/cond5", cond5 );
  114. submit("TRMMO07601");
  115. }
  116. ]]>
  117. </script>
  118. <submission id="TRMMO07601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/diaginfo"/>
  119. <script type="javascript" ev:event="xforms-ready">
  120. <![CDATA[
  121. model.setFocus("ipt_search");
  122. ]]>
  123. </script>
  124. <script type="javascript" ev:event="xforms-model-construct-done">
  125. <![CDATA[
  126. ]]>
  127. </script>
  128. </model>
  129. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  130. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  131. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  132. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  133. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  134. <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO00100.js"/>
  135. </xhtml:head>
  136. <xhtml:body pagewidth="810" pageheight="330" style="word-wrap:word; ">
  137. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:4px; top:6px; width:801px; height:33px; background-color:#fffbf2; border-color:#ffd799; "/>
  138. <datagrid id="grd_diaghist" nodeset="/root/main/diaginfo/diagcdlist" autoresize="true" caption="진단코드^영문명^한글명^icd10cd^diagcd" colsep="^" colwidth="100, 280, 280, 100, 0" explorerbar="sortshow" style="left:5px; top:49px; width:800px; height:249px; ">
  139. <col ref="dispdiagcd" style="text-align:left; "/>
  140. <col ref="diagengnm"/>
  141. <col ref="diaghngnm"/>
  142. <col ref="icd10cd"/>
  143. <col ref="diagcd" visibility="hidden"/>
  144. <script type="javascript" ev:event="ondblclick">
  145. <![CDATA[
  146. if(isDataCell()){
  147. var rtn1 = getDiagNodeListCSV ( model.instances(0).selectNodes( "/root/main/diaginfo/diagcdlist" ), grd_diaghist.row);
  148. opener.javascript.setParameter( "SPMMO07600_rtn", rtn1 );
  149. window.close();
  150. }
  151. ]]>
  152. </script>
  153. </datagrid>
  154. <line id="line4" class="line_1" style="x1:5px; y1:44px; x2:805px; y2:44px; "/>
  155. <button id="button1" class="btn4_letter2" style="left:750px; top:304px; width:56px; height:22px; ">
  156. <caption>취소</caption>
  157. <script type="javascript" ev:event="DOMActivate">
  158. <![CDATA[
  159. opener.javascript.setParameter( "SPMMO07600_rtn", "" );
  160. window.close();
  161. ]]>
  162. </script>
  163. </button>
  164. <!--button id="btn_copy" class="btn4_letter2" style="left:692px; top:304px; width:56px; height:22px; ">
  165. <caption>선택</caption>
  166. <script type="javascript" ev:event="DOMActivate">
  167. <![CDATA[
  168. // grd_diaghist.isSelected
  169. // var rtn1 = getDiagNodeListCSV ( model.instances(0).selectNodes( "/root/main/diaginfo/diagcdlist" ));
  170. // if ( rtn1 == "N" ) {
  171. // messageBox ( "선택된 진단이", "I004" );
  172. // } else {
  173. // opener.javascript.setParameter( "SPMMO07600_rtn", rtn1 );
  174. // window.close();
  175. // }
  176. ]]>
  177. </script>
  178. </button-->
  179. <caption id="caption3" class="search_name" style="left:11px; top:14px; width:79px; height:17px; vertical-align:middle; ">검색방법 :</caption>
  180. <caption id="caption4" class="search_name" style="left:531px; top:14px; width:86px; height:17px; ">검색어 :</caption>
  181. <input id="ipt_search" ref="/root/init/diagsrchnm" class="input_search" style="left:605px; top:14px; width:120px; height:19px; ">
  182. <script type="javascript" ev:event="onkeypress">
  183. <![CDATA[
  184. inputEnterKey("button3", "DOMActivate");
  185. ]]>
  186. </script>
  187. </input>
  188. <button id="button3" class="btn1_letter2" style="left:745px; top:12px; width:56px; height:22px; ">
  189. <caption>조회</caption>
  190. <script type="javascript" ev:event="DOMActivate">
  191. <![CDATA[
  192. var cond4 = getCurrentDate(); //기준일자
  193. var cond5 = model.getValue("/root/init/diagsrchnm"); //검색어
  194. var cond3 = fIsHangul(cond5); //한글, 영문구분
  195. if ( isNull(cond5)) {
  196. messageBox ( "검색어를", "C001" );
  197. return;
  198. } else if ( cond3 == "E" ){ //영문,숫자일때는 3글자 넣어야 검색가능
  199. if ( cond5.length < 2 ){
  200. messageBox ( "2글자 이상", "C001" );
  201. return;
  202. }
  203. }
  204. cond5 = "%" + cond5 + "%";
  205. model.setValue("/root/send/cond4", cond4);
  206. model.setValue("/root/send/cond5", cond5);
  207. submit("TRMMO07601");
  208. ]]>
  209. </script>
  210. </button>
  211. <line id="line6" style="x1:733px; y1:12px; x2:733px; y2:34px; border-color:#ffe4bb; border-left-style:solid; "/>
  212. </xhtml:body>
  213. </xhtml:html>