SPPIJ03700_수술예방적항생제사유조회.xrw 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * @(#)SPPIJ03700_수술예방적항생제사유조회.xrw
  4. * 수정이력
  5. * - 2014.01.15 / 최초작성 / 이경민
  6. -->
  7. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  8. <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">
  9. <xhtml:head>
  10. <xhtml:title>수술 예방적 항생제 사유조회</xhtml:title>
  11. <model id="model1">
  12. <instance id="instance1">
  13. <root xmlns="">
  14. <main>
  15. <patinfo>
  16. <patinfolist>
  17. <pid/>
  18. </patinfolist>
  19. </patinfo>
  20. <optanti>
  21. <optantilist/>
  22. </optanti>
  23. </main>
  24. <send>
  25. <drgno/>
  26. <cd_name/>
  27. <instcd>031</instcd>
  28. <opkind>A</opkind>
  29. <pid/>
  30. <orddd/>
  31. <orddeptcd/>
  32. <medispclid/>
  33. <calcscorcd/>
  34. </send>
  35. <init>
  36. </init>
  37. <hidden>
  38. <sppmc02500>
  39. <cond>
  40. <srchcond/>
  41. <pid/>
  42. </cond>
  43. </sppmc02500>
  44. <smpic00200>
  45. <judgsrch>
  46. <con2_gsflag/>
  47. <con3_search1/>
  48. <con4_search2/>
  49. <con1_dd/>
  50. <con5_insu/>
  51. </judgsrch>
  52. </smpic00200>
  53. </hidden>
  54. <temp>
  55. <picmmech>
  56. <picmmech_calcscorcd/>
  57. </picmmech>
  58. </temp>
  59. </root>
  60. </instance>
  61. <script type="javascript" ev:event="xforms-ready">
  62. <![CDATA[
  63. // 화면을 초기화한다.
  64. fInitialize();
  65. ]]>
  66. </script>
  67. <submission id="TRPIJ00203" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/list1"/>
  68. <submission id="TRPIJ00204" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/hidden/list2"/>
  69. <submission id="TRPIJ03700" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/optanti"/>
  70. </model>
  71. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  72. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  73. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  74. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  75. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  76. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  77. <script type="javascript">
  78. <![CDATA[
  79. // -----------------------
  80. // ▶ 화면초기화
  81. // -----------------------
  82. function fInitialize() {
  83. //model.setValue("/root/send/orddd", getCurrentDate());
  84. model.refresh();
  85. submit("TRPIJ00203");
  86. //btn_select.dispatch("DOMActivate");
  87. }
  88. // ----------------------------------------------------------------------
  89. // ▶ 동일진료일 명세서조회
  90. // ----------------------------------------------------------------------
  91. function fGetDocuList() {
  92. var chk = true;
  93. // if (model.getValue("/root/send/orddd") == "") {
  94. // chk = false;
  95. // messageBox("기준년월은", "I003"); //I003=필수입력입니다.
  96. // model.setFocus("ipt_orddd");
  97. // }
  98. if (chk == true) {
  99. submit("TRPIJ03700");
  100. }
  101. }
  102. // 화면을 초기화한다.
  103. function fSpclGridInsertRow(){
  104. grd_drgalist.AddRow();
  105. grd_drgalist.bottomRow = grd_drgalist.rows;
  106. }
  107. function fSpclGridDeleteRow(){
  108. for (var i = 0; i < grd_drgalist.selectedRows; i++) {
  109. var sel = grd_drgalist.selectedRow(i);
  110. grd_drgalist.rowstatus(sel) = "4";
  111. }
  112. }
  113. ]]>
  114. </script>
  115. </xhtml:head>
  116. <xhtml:body pagewidth="960" pageheight="660" guideline="1,1163;2,727;2,739;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  117. <group id="grp_tle" style="left:0px; top:0px; width:865px; height:13px; ">
  118. <caption id="cap_title" class="tit_1" style="left:0px; top:0px; width:216px; height:15px; ">수술 예방적 항생제 사유조회</caption>
  119. </group>
  120. <group id="grp_biz" scroll="auto" style="left:0px; top:19px; width:942px; height:609px; ">
  121. <datagrid id="grd_drgalist" nodeset="/root/main/optanti/optantilist" class="datagrid3" visibility="visible" caption="환자번호^환자명^입원일자^퇴원일자^진료과^진료과명^주치의ID^주치의^처방코드^처방자ID^처방자^처방일자^등록일자^퇴&#xA;원^사유" colsep="^" colwidth="55, 49, 70, 70, 35, 99, 33, 52, 75, 31, 49, 70, 70, 32, 210" dataheight="23" ellipsis="true" explorerbar="sortshowmove" mergecellsfixedcols="bycol" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="32" rowsep="|" tooltip="true" style="left:0px; top:92px; width:940px; height:514px; ">
  122. <col ref="pid" type="input" style="text-align:center; "/>
  123. <col ref="patnm" type="output" style="text-align:center; "/>
  124. <col ref="orddd" type="output" format="yyyy-mm-dd" style="text-align:left; "/>
  125. <col ref="dschdd" type="output" format="yyyy-mm-dd" style="text-align:left; "/>
  126. <col ref="orddeptcd" type="output" visibility="hidden" style="text-align:left; "/>
  127. <col ref="orddeptnm" type="output" style="text-align:center; "/>
  128. <col ref="medispclid" type="output" visibility="hidden"/>
  129. <col ref="medispclnm" type="output" style="text-align:center; "/>
  130. <col ref="calcscorcd" type="input" maxlength="5" style="text-align:center; "/>
  131. <col ref="rgstrid" type="output" visibility="hidden" style="text-align:left; "/>
  132. <col ref="rgstrnm" type="output" style="text-align:center; "/>
  133. <col ref="prcpdd" type="output" format="yyyy-mm-dd" style="text-align:left; "/>
  134. <col ref="rgstdd" type="output" format="yyyy-mm-dd" style="text-align:left; "/>
  135. <col ref="dscdrug" type="output" style="text-align:center; "/>
  136. <col ref="resncnts" type="input" style="text-align:left; "/>
  137. </datagrid>
  138. <caption id="cap_judgtrgtman" class="tit_2" style="left:4px; top:71px; width:234px; height:13px; ">수술 예방적 항생제 사유조회 리스트</caption>
  139. <line id="line1" class="line_1" style="x1:0px; y1:87px; x2:940px; y2:87px; "/>
  140. <group id="group1" style="left:0px; top:5px; width:940px; height:55px; vertical-align:top; ">
  141. <shape id="roundrect3" appearance="roundrect" style="left:0px; top:0px; width:940px; height:53px; "/>
  142. <button id="btn_select" class="btn1_letter2" navindex="32" style="left:875px; top:10px; width:56px; height:22px; ">
  143. <caption>조회</caption>
  144. <script type="javascript" ev:event="DOMActivate">
  145. <![CDATA[
  146. fGetDocuList();
  147. ]]>
  148. </script>
  149. </button>
  150. <line id="line3" class="line_4" style="x1:860px; y1:5px; x2:860px; y2:38px; "/>
  151. <caption id="caption30" class="search_name" style="left:8px; top:6px; width:95px; height:17px; ">환자번호 :</caption>
  152. <input id="ipt_personalsearch" ref="/root/send/pid" class="input_search" imemode="hangul" inputtype="button" maxlength="10" style="left:95px; top:5px; width:90px; height:19px; ">
  153. <hint>
  154. <![CDATA[환자성명으로 검색시 2자 이상 입력하세요.]]>
  155. </hint>
  156. <script type="javascript" ev:event="onkeypress">
  157. <![CDATA[
  158. if (event.keyCode == '13') { // Enter 입력 시에
  159. if (ipt_personalsearch.currentText.length > 1) { // 2글자 이상이면
  160. setInputNodeCurText(); // (tfHelper.js) 현재 인풋값 노드 반영
  161. fGetDocuList();
  162. }
  163. }
  164. ]]>
  165. </script>
  166. <script type="javascript" ev:event="onbuttonclick">
  167. <![CDATA[
  168. var ipt_pid = model.getValue("/root/send/pid");
  169. if (ipt_pid) {
  170. model.setValue("/root/hidden/sppmc02500/cond/srchcond", "1"); // 검색조건 : 등록번호로 설정
  171. model.setValue("/root/hidden/sppmc02500/cond/pid", ipt_pid);
  172. } else {
  173. model.resetInstanceNode("/root/hidden/sppmc02500/cond");
  174. }
  175. modal("SPPMC02500", 1,150, 150, "SPPMC02500", "/root/hidden/sppmc02500/cond", "/root/send", "", "");
  176. var srch_pid = model.getValue("/root/main/patinfo/patinfolist/pid");
  177. if (srch_pid) { // SPPMC02500_환자조회 화면에서 조회한 경우임
  178. model.removeNodeset("/root/main/patinfo/patinfolist"); // patinfolist가 제거됨 (resetInstanceNode의 경우 값은 지우고 노드는 남아있음)
  179. model.makeNode("/root/main/patinfo/patinfolist"); // SPPMC02500_환자조회 팝업을 다시 조회할 경우를 위해 다시 노드를 추가함
  180. model.setValue("/root/send/pid", srch_pid);
  181. }
  182. model.refresh();
  183. ]]>
  184. </script>
  185. </input>
  186. <caption id="caption1" class="search_name" style="left:8px; top:29px; width:95px; height:17px; ">입원일자 :</caption>
  187. <input id="ipt_fromdate" ref="/root/send/orddd" class="input_search" inputtype="date" format="yyyy-mm-dd" style="left:95px; top:27px; width:90px; height:19px; "/>
  188. <select1 id="cmb_orddeptcd" ref="/root/send/orddeptcd" class="combo_search" appearance="minimal" style="left:329px; top:6px; width:121px; height:19px; ">
  189. <choices>
  190. <itemset nodeset="/root/init/list1/deptlist">
  191. <label ref="depthngnm"/>
  192. <value ref="deptcd"/>
  193. </itemset>
  194. </choices>
  195. <script type="javascript" ev:event="xforms-value-changed">
  196. <![CDATA[
  197. model.removenode("/root/hidden/list2");
  198. submit("TRPIJ00204");
  199. ]]>
  200. </script>
  201. </select1>
  202. <caption id="caption9" class="search_name" style="left:245px; top:7px; width:86px; height:17px; ">진료과:</caption>
  203. <select1 id="cmb_orddrid" ref="/root/send/medispclid" class="combo_search" appearance="minimal" style="left:330px; top:28px; width:80px; height:19px; ">
  204. <choices>
  205. <itemset nodeset="/root/hidden/list2/atdoctlist">
  206. <label ref="atdocthngnm"/>
  207. <value ref="atdoctid"/>
  208. </itemset>
  209. </choices>
  210. </select1>
  211. <caption id="caption8" class="search_name" style="left:244px; top:27px; width:86px; height:17px; ">주치의:</caption>
  212. <input id="ipt_cd" ref="/root/send/calcscorcd" class="input_search" inputtype="button" _chartype="upper" style="left:560px; top:5px; width:112px; height:19px; ">
  213. <script type="javascript" ev:event="onbuttonclick">
  214. <![CDATA[
  215. // 처방시작일 또는 종료일이 입력된 경우 해당 날짜를 수가조회 기준일자로 설정
  216. model.setValue("/root/hidden/smpic00200/judgsrch/con2_gsflag", "S");
  217. model.setValue("/root/hidden/smpic00200/judgsrch/con3_search1", model.getValue("/root/send/choicdsrch" ));
  218. model.setValue("/root/hidden/smpic00200/judgsrch/con4_search2", model.getValue("/root/send/calcscorcd")); // SMPIC00200_수가조회 용
  219. model.setValue("/root/hidden/smpic00200/judgsrch/con1_dd", getCurrentDate());
  220. var insukindcd = model.getValue("/root/send/insukindcd");
  221. if (insukindcd == "11") {
  222. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "insu");
  223. }
  224. else if (insukindcd == "21" || insukindcd == "22") {
  225. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "proc");
  226. }
  227. else if (insukindcd == "31") {
  228. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "indus");
  229. }
  230. else if (insukindcd == "41") {
  231. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "autm");
  232. }
  233. model.removeNodeset("/root/hidden/smpic00200/rslt/mech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
  234. model.removeNodeset("/root/hidden/smpic00200/rslt/picmmech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
  235. modal("SMPIC00200", 1,150, 150, "SMPIC00200", "root/hidden/smpic00200", "/root/temp", "", "");
  236. model.setValue("/root/send/calcscorcd", model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  237. model.refresh();
  238. ]]>
  239. </script>
  240. </input>
  241. <caption id="caption2" class="search_name" style="left:469px; top:6px; width:86px; height:17px; ">코드조회 :</caption>
  242. </group>
  243. <button id="btn_excelsave" class="btn2_letter4" _auth="P" style="left:875px; top:67px; width:64px; height:19px; ">
  244. <caption>엑셀저장</caption>
  245. <script type="javascript" ev:event="DOMActivate">
  246. <![CDATA[
  247. grd_drgalist.gridToInstance();
  248. if (grd_drgalist.rows > 1) {
  249. var fileName = window.fileDialog("save", "", false, cap_title.value, "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  250. if (fileName != "") {
  251. grd_drgalist.saveExcel(fileName, "sheetname:;colhiddenextend:true;rowhiddenextend:false;col_3:label;col_4:label;col_5:label;col_6:label;", true, true, "", "", true);
  252. }
  253. } else {
  254. messageBox("엑셀저장할 내역이", "I004"); ///엑셀저장할 내역이 없습니다.
  255. }
  256. ]]>
  257. </script>
  258. </button>
  259. </group>
  260. <button id="btn_cancel" class="btn4_letter2" style="left:884px; top:633px; width:56px; height:22px; ">
  261. <caption>종료</caption>
  262. <close ev:event="DOMActivate"/>
  263. </button>
  264. </xhtml:body>
  265. </xhtml:html>