SMPPI00400_환자별약제관리.xrw 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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. <picmdrrulist/>
  11. <patinfo>
  12. <patinfolist/>
  13. </patinfo>
  14. <picmrudtlist>
  15. <rulecd/>
  16. </picmrudtlist>
  17. </main>
  18. <send>
  19. <data1>
  20. <pid/>
  21. <rulecd/>
  22. <prcpcd/>
  23. <aplydd/>
  24. <hngnm/>
  25. </data1>
  26. <data2/>
  27. </send>
  28. <init/>
  29. <hidden/>
  30. <temp>
  31. <calcscorcd/>
  32. <aplydd/>
  33. <sflag/>
  34. </temp>
  35. <source>
  36. <srchcond/>
  37. <pid/>
  38. <hngnm/>
  39. <rrgstno1/>
  40. <rrgstno2/>
  41. <acptdd/>
  42. </source>
  43. </root>
  44. </instance>
  45. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  46. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  47. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  48. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  49. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  50. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  51. <script type="javascript" src="../../../com/batchinfoweb/js/ZSB001.js"/>
  52. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  53. <script type="javascript" ev:event="xforms-ready">
  54. <![CDATA[
  55. model.removeNodeset("/root/main/picmdrrulist");
  56. // (PAM.js) submission id="TRPAM00101" 를 사용하여 진료과 / 의사명 Combo item을 가져온다.
  57. pamGetDeptCDDrIDList();
  58. ipt_aplydd.value = getCurrentDate();
  59. ]]>
  60. </script>
  61. <script type="javascript">
  62. <![CDATA[
  63. ]]>
  64. </script>
  65. <submission id="TRPPI00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data1" replace="instance" resultref="/root/main/picmdrrulist"/>
  66. <submission id="TRPPI00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp" replace="instance" resultref="/root/main/picmrudtlist"/>
  67. <submission id="TXPPI00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data2" replace="instance" resultref="/root/temp"/>
  68. <submission id="TRPAM00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance" resultref="/root/hidden/tmp"/>
  69. </model>
  70. </xhtml:head>
  71. <xhtml:body guideline="1,1213;2,783;" style="margin-left:0; margin-top:0; margin-right:0; margin-bottom:0; ">
  72. <group id="group1" style="left:0px; top:0px; width:1211px; height:13px; ">
  73. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:155px; height:14px; ">환자별 약제관리</caption>
  74. </group>
  75. <group id="group3" scroll="auto" style="left:0px; top:13px; width:1211px; height:732px; ">
  76. <group id="group2" style="left:0px; top:10px; width:1211px; height:40px; vertical-align:top; ">
  77. <shape id="roundrect1" appearance="roundrect" style="left:0px; top:0px; width:1211px; height:40px; "/>
  78. <button id="btn_search" class="btn1_letter2" navindex="6" style="left:1130px; top:10px; width:56px; height:22px; ">
  79. <caption>조회</caption>
  80. <script type="javascript" ev:event="DOMActivate">
  81. <![CDATA[
  82. submit("TRPPI00401");
  83. ]]>
  84. </script>
  85. </button>
  86. <line id="line13" class="line_4" style="x1:1107px; y1:7px; x2:1107px; y2:34px; "/>
  87. <caption id="caption5" class="search_name" style="left:30px; top:11px; width:86px; height:17px; ">환자번호 :</caption>
  88. <caption id="caption2" class="search_name" visibility="hidden" style="left:424px; top:11px; width:86px; height:17px; ">제어코드 :</caption>
  89. <caption id="caption3" class="search_name" visibility="hidden" style="left:875px; top:10px; width:86px; height:17px; ">수가코드 :</caption>
  90. <caption id="caption4" class="search_name" style="left:655px; top:11px; width:86px; height:17px; ">적 용 일 :</caption>
  91. <input id="ipt_rulecd" ref="/root/send/data1/rulecd" class="input_search" visibility="hidden" style="left:515px; top:10px; width:103px; height:19px; ">
  92. <script type="javascript" ev:event="onkeyup">
  93. <![CDATA[
  94. if (event.keyCode == '13') {
  95. inputEnterKey("btn_search", "DOMActivate");
  96. }
  97. ]]>
  98. </script>
  99. </input>
  100. <input id="ipt_prcpcd" ref="/root/send/data1/prcpcd" class="input_search" visibility="hidden" style="left:966px; top:9px; width:103px; height:19px; ">
  101. <script type="javascript" ev:event="onkeyup">
  102. <![CDATA[
  103. if (event.keyCode == '13') {
  104. inputEnterKey("btn_search", "DOMActivate");
  105. }
  106. ]]>
  107. </script>
  108. </input>
  109. <input id="ipt_aplydd" ref="/root/send/data1/aplydd" class="input_search" inputtype="date" format="yyyy-mm-dd" style="left:743px; top:10px; width:103px; height:19px; ">
  110. <script type="javascript" ev:event="onkeyup">
  111. <![CDATA[
  112. if (event.keyCode == '13') {
  113. inputEnterKey("btn_search", "DOMActivate");
  114. }
  115. ]]>
  116. </script>
  117. </input>
  118. <button id="button2" class="icon_search" navindex="5" style="left:233px; top:11px; width:16px; height:16px; ">
  119. <caption/>
  120. <script type="javascript" ev:event="DOMActivate">
  121. <![CDATA[
  122. var srch_pid = model.getValue("/root/send/data1/pid");
  123. if(srch_pid) {
  124. model.setValue("/root/source/pid", srch_pid);
  125. model.setValue("/root/source/srchcond", "1");
  126. } else {
  127. model.resetInstanceNode("/root/source");
  128. }
  129. modal("SPPMC02500", "1","150", "150", "SPPMC02500", "/root/source", "/root/send", "", "");
  130. var srch_pid = model.getValue("/root/main/patinfo/patinfolist/pid");
  131. var srch_hngnm = model.getValue("/root/main/patinfo/patinfolist/hngnm");
  132. if (srch_pid) { // SPPMC02500_환자조회 화면에서 조회한 경우임
  133. model.removeNodeset("/root/main/patinfo/patinfolist"); // patinfolist가 제거됨 (resetInstanceNode의 경우 값은 지우고 노드는 남아있음)
  134. model.makeNode("/root/main/patinfo/patinfolist"); // SPPMC02500_환자조회 팝업을 다시 조회할 경우를 위해 다시 노드를 추가함
  135. model.setValue("/root/send/data1/pid", srch_pid);
  136. model.setValue("/root/send/data1/hngnm", srch_hngnm);
  137. }
  138. model.refresh();
  139. ]]>
  140. </script>
  141. </button>
  142. <input id="ipt_pid" ref="/root/send/data1/pid" class="input_search" style="left:124px; top:10px; width:103px; height:19px; "/>
  143. <input id="ipt_hngnm" ref="/root/send/data1/hngnm" class="input_search" editable="false" style="left:255px; top:10px; width:145px; height:19px; "/>
  144. </group>
  145. <caption id="caption1" class="tit_2" style="left:5px; top:63px; width:157px; height:13px; ">환자별 약제관리 List</caption>
  146. <line id="line1" class="line_1" style="x1:0px; y1:79px; x2:1204px; y2:78px; "/>
  147. <datagrid id="grd_picmdrrulist" nodeset="/root/main/picmdrrulist" class="datagrid2" caption="환자번호^환자명^제어코드^수가코드^처방명^타병원일수^진료과^비고^시작일^종료일^기관코드" colsep="^" colwidth="97, 100, 80, 106, 250, 75, 110, 160, 100, 100, 0" dataheight="23" defaultrows="0" explorerbar="sort" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:85px; width:1205px; height:640px; ">
  148. <col ref="pid" type="inputbutton"/>
  149. <col ref="hngnm" type="input"/>
  150. <col ref="rulecd" type="output"/>
  151. <col ref="prcpcd" type="inputbutton"/>
  152. <col ref="prcpnm" type="output"/>
  153. <col ref="thospdayno" type="input"/>
  154. <col itemcount="20" ref="orddeptcd" type="combo" style="text-align:center; ">
  155. <choices>
  156. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  157. <label ref="nm"/>
  158. <value ref="cd"/>
  159. </itemset>
  160. </choices>
  161. </col>
  162. <col ref="remark" type="input"/>
  163. <col ref="fromdd" type="inputdate" format="yyyy-mm-dd"/>
  164. <col ref="todd" type="inputdate" format="yyyy-mm-dd"/>
  165. <col ref="instcd" type="output" visibility="hidden"/>
  166. <script type="javascript" ev:event="onbuttonclick">
  167. <![CDATA[
  168. var rowno = grd_picmdrrulist.row;
  169. if(grd_picmdrrulist.col == grd_picmdrrulist.colRef("prcpcd")) {
  170. modal("../../../pam/calcscormngtweb/xrw/SMPIC00200_수가조회", "", "200", "200" ,"SMPIC00200_수가조회", "", "");
  171. var vprcpcd = model.getValue("/root/temp/picmmech/picmmech_calcscorcd");
  172. var vprcpnm = model.getValue("/root/temp/picmmech/picmmech_ordnm");
  173. model.setValue("/root/temp/calcscorcd", vprcpcd);
  174. model.setValue("/root/temp/aplydd", model.getValue("/root/send/data1/aplydd"));
  175. model.setValue("/root/temp/sflag", "Y");
  176. submit("TRPPI00101");
  177. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("prcpcd")) = vprcpcd;
  178. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("prcpnm")) = vprcpnm;
  179. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("rulecd")) = model.getValue("/root/main/picmrudtlist/rulecd");
  180. model.resetInstanceNode("/root/temp");
  181. }
  182. if(grd_picmdrrulist.col == grd_picmdrrulist.colRef("pid")) {
  183. var srch_pid = grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("pid"));
  184. if(srch_pid) {
  185. model.setValue("/root/source/pid", srch_pid);
  186. model.setValue("/root/source/srchcond", "1");
  187. } else {
  188. model.resetInstanceNode("/root/source");
  189. }
  190. modal("SPPMC02500", "1","150", "150", "SPPMC02500", "/root/source", "/root/send", "", "");
  191. var srch_pid = model.getValue("/root/main/patinfo/patinfolist/pid");
  192. var srch_hngnm = model.getValue("/root/main/patinfo/patinfolist/hngnm");
  193. if (srch_pid) { // SPPMC02500_환자조회 화면에서 조회한 경우임
  194. model.removeNodeset("/root/main/patinfo/patinfolist"); // patinfolist가 제거됨 (resetInstanceNode의 경우 값은 지우고 노드는 남아있음)
  195. model.makeNode("/root/main/patinfo/patinfolist"); // SPPMC02500_환자조회 팝업을 다시 조회할 경우를 위해 다시 노드를 추가함
  196. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("pid")) = srch_pid;
  197. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("hngnm")) = srch_hngnm;
  198. }
  199. }
  200. model.refresh();
  201. ]]>
  202. </script>
  203. </datagrid>
  204. <button id="button5" class="btn2_letter4" visibility="visible" style="left:1140px; top:57px; width:64px; height:19px; ">
  205. <caption>엑셀저장</caption>
  206. <script type="javascript" ev:event="DOMActivate">
  207. <![CDATA[
  208. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  209. if (fileName != "")
  210. {
  211. grd_picmdrrulist.saveExcel(fileName, "타병원결과목록", true, true, "", "", true);
  212. }
  213. ]]>
  214. </script>
  215. </button>
  216. <button id="btn_rowdel" class="btn2_letter3" style="left:1084px; top:57px; width:53px; height:19px; ">
  217. <caption>행삭제</caption>
  218. <script type="javascript" ev:event="DOMActivate">
  219. <![CDATA[
  220. var row = grd_picmdrrulist.row;
  221. grd_picmdrrulist.deleteRow(row);
  222. ]]>
  223. </script>
  224. </button>
  225. <button id="btn_rowadd" class="btn2_letter3" style="left:1028px; top:57px; width:53px; height:19px; ">
  226. <caption>행추가</caption>
  227. <script type="javascript" ev:event="DOMActivate">
  228. <![CDATA[
  229. grd_picmdrrulist.addRow();
  230. var rowno = grd_picmdrrulist.row;
  231. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("fromdd")) = getCurrentDate();
  232. grd_picmdrrulist.valueMatrix(rowno, grd_picmdrrulist.colRef("todd")) = "99991231";
  233. model.refresh();
  234. ]]>
  235. </script>
  236. </button>
  237. </group>
  238. <group id="group4" scroll="auto" style="left:0px; top:744px; width:1211px; height:40px; ">
  239. <line id="line23" class="line_6" style="x1:0px; y1:3px; x2:1211px; y2:3px; "/>
  240. <button id="button1" class="btn4_letter3" style="left:1134px; top:10px; width:68px; height:22px; ">
  241. <caption>저 장</caption>
  242. <script type="javascript" ev:event="DOMActivate">
  243. <![CDATA[
  244. if ( messageBox("","Q002")==6 ) {
  245. var update = getGridUpdateData( grd_picmdrrulist);
  246. if(update == ""){
  247. messageBox("업데이트 정보가 없습니다.", "I");
  248. return 0;
  249. } else {
  250. model.setValue("/root/send/data2", update);
  251. submit("TXPPI00401");
  252. }
  253. }
  254. btn_search.dispatch("DOMActivate");
  255. ]]>
  256. </script>
  257. </button>
  258. </group>
  259. </xhtml:body>
  260. </xhtml:html>