SMMNW20010_BMT 이식환자관리.xrw 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258
  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>BMT 이식환자관리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <init>
  10. <cmbinfo>
  11. <trnptkindcd>
  12. <A0161/>
  13. </trnptkindcd>
  14. <btype>
  15. <M0376>
  16. <cdid/>
  17. <cdnm/>
  18. </M0376>
  19. </btype>
  20. </cmbinfo>
  21. </init>
  22. <main>
  23. <cond>
  24. <pid/>
  25. <hngnm/>
  26. <sex/>
  27. <age/>
  28. </cond>
  29. <patinfo>
  30. <patlist>
  31. <pid/>
  32. <hngnm/>
  33. <sex/>
  34. <age/>
  35. <trnptkind/>
  36. <trnptkindcd/>
  37. <trnptdd/>
  38. <pattrnptbfbtype/>
  39. <dnorbtype/>
  40. </patlist>
  41. </patinfo>
  42. <paminfo/>
  43. </main>
  44. <temp>
  45. <tempcodeinfo/>
  46. </temp>
  47. </root>
  48. </instance>
  49. <script type="javascript" ev:event="xforms-ready">
  50. <![CDATA[
  51. var pid="";
  52. var indd="";
  53. var cretno="";
  54. model.makeNode("/root/main/paminfo");
  55. var node = getGlobalVariable("paminfo");
  56. setCSVToNode("/root/main/paminfo", node);
  57. //팝업화면이 아닐경우 상단에 환자 정보가 있는지 여부를 확인하고
  58. if (model.getValue("/root/main/paminfo/list/pid") != "") { //상단정보에 환자가 셋팅되어 있을 경우
  59. pid = model.getValue("/root/main/paminfo/list/pid");
  60. } else {
  61. //팝업으로 뜬화면인가 여부확인.팝업일 경우 팝업화면 파라메터를 가지고온다.
  62. if(checkOpener()) {
  63. pid = opener.javascript.getParameter("SMMNW20010_PID");
  64. }
  65. }
  66. zbcfGetCodeList( new Array("M0376"), new Array("/root/init/cmbinfo/btype") );
  67. //BMT 코드성 데이터 조회.(기존의 공통코드로 사용했던것들을 BMT에서 관리하도록 수정 후)
  68. aboGetCodeList( new Array("A0161"), new Array("/root/init/cmbinfo/trnptkindcd"));
  69. //환자 등록번호가 존재할 경우에는
  70. if(pid != "") {
  71. model.setValue(ipt_pid.attribute("ref"), pid);
  72. ipt_pid.refresh();
  73. fSearchPatInfo();
  74. }
  75. ]]>
  76. </script>
  77. <submission id="TRMNW20010" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/patinfo"/>
  78. <submission id="TRABO02103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/temp/tempcodeinfo"/>
  79. </model>
  80. <script type="javascript">
  81. <![CDATA[
  82. function fSearchPatInfo() {
  83. model.makeValue("/root/send/reqdata/pid", model.getValue(ipt_pid.attribute("ref")));
  84. submit("TRMNW20010");
  85. //model.copyNode("/root/main/cond", "/root/main/patinfo/patlist");
  86. model.refresh();
  87. }
  88. ]]>
  89. </script>
  90. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  91. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  92. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  93. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  94. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  95. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  96. <script type="javascript" src="../../../ast/hsctweb/js/bmtcommon.js"/>
  97. </xhtml:head>
  98. <xhtml:body pagewidth="385" pageheight="235" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  99. <group id="grp_biz" scroll="auto" style="left:0px; top:0px; width:365px; height:235px; ">
  100. <caption id="caption6" class="tit_2" style="left:0px; top:5px; width:178px; height:15px; ">BMT 이식환자관리</caption>
  101. <line id="line1" class="line_1" style="x1:0px; y1:20px; x2:360px; y2:20px; "/>
  102. <input id="ipt_pid" ref="/root/main/patinfo/patlist/pid" disabled="true" style="left:77px; top:26px; width:100px; height:19px; ">
  103. <script type="javascript" ev:event="onkeypress">
  104. <![CDATA[
  105. if(event.keyCode == 13) {
  106. //setInputNodeCurText();
  107. fSearchPatInfo();
  108. }
  109. ]]>
  110. </script>
  111. <script type="javascript" ev:event="DOMFocusOut">
  112. <![CDATA[
  113. //setInputNodeCurText();
  114. fSearchPatInfo();
  115. ]]>
  116. </script>
  117. </input>
  118. <input id="ipt_hngnm" ref="/root/main/patinfo/patlist/hngnm" disabled="true" style="left:257px; top:26px; width:100px; height:19px; "/>
  119. <line id="line2" class="line_2" style="x1:0px; y1:47px; x2:360px; y2:47px; "/>
  120. <caption id="caption2" class="cell_1" style="left:0px; top:25px; width:75px; height:23px; text-align:center; ">등록번호</caption>
  121. <caption id="caption3" class="cell_1" style="left:180px; top:25px; width:75px; height:23px; text-align:center; ">환자명</caption>
  122. <line id="line3" class="line_2" style="x1:0px; y1:71px; x2:360px; y2:71px; "/>
  123. <caption id="caption4" class="cell_1" style="left:0px; top:49px; width:75px; height:23px; text-align:center; ">이식종류</caption>
  124. <line id="line6" class="line_2" style="x1:0px; y1:95px; x2:360px; y2:95px; "/>
  125. <line id="line7" class="line_3" style="x1:0px; y1:192px; x2:360px; y2:192px; "/>
  126. <caption id="caption5" class="cell_1" style="left:0px; top:73px; width:75px; height:23px; text-align:center; ">이식일</caption>
  127. <line id="line4" class="line_2" style="x1:0px; y1:147px; x2:360px; y2:147px; "/>
  128. <caption id="caption14" style="left:4px; top:191px; width:356px; height:29px; color:#ff0000; ">*상기환자는 동종조혈모세포 이식환자로 수혈 시 주의를 요합니다</caption>
  129. <line id="line5" class="line_1" style="x1:0px; y1:120px; x2:360px; y2:120px; "/>
  130. <caption id="caption1" class="tit_2" style="left:0px; top:105px; width:240px; height:13px; ">환자/공여자 정보(이식전 혈액형)</caption>
  131. <caption id="caption11" class="cell_1" style="left:0px; top:125px; width:75px; height:23px; text-align:center; ">Recipient</caption>
  132. <caption id="caption7" class="cell_1" style="left:0px; top:149px; width:75px; height:23px; text-align:center; ">Donor</caption>
  133. <line id="line8" class="line_2" style="x1:0px; y1:171px; x2:360px; y2:171px; "/>
  134. <select1 id="radio2" ref="/root/main/patinfo/patlist/trnptkind" class="radio_default" disabled="true" appearance="full" cols="2" rows="1" overflow="visible" style="left:78px; top:50px; width:90px; height:20px; border-style:none; ">
  135. <choices>
  136. <item>
  137. <label>자가</label>
  138. <value>1</value>
  139. </item>
  140. <item>
  141. <label>동종</label>
  142. <value>2</value>
  143. </item>
  144. </choices>
  145. <script type="javascript" ev:event="xforms-select">
  146. <![CDATA[
  147. // 자가일때는 공여자 정보 모두 비활성화
  148. // 동종일 때 아래와 맞게 활성화/비활성화 시킨다
  149. // Related : 01 Sibling Standard , 02 Sibling NST, 03 FMM Standard, 04 FMM NST, 05 FM Standard, 06 FM NST
  150. // Unrelated : 07 Unrelated Standard, 08 Unrealted NST
  151. // Cord : 09 Cord Standard , 10 Cord NST
  152. if (model.getValue("/root/main/hsctinfo/trnptinfo/trnptkind") == "1") {
  153. // 만약 이식종류를 변경할 때 관련 공여자 정보가 있을 경우 진행해서는 안된다.
  154. if ( model.getValue("/root/main/hsctinfo/dnorinfo/dnorid") != "" ||
  155. model.getValue("/root/main/hsctinfo/ubmtinfo/dnorid") != "" ||
  156. model.getValue("/root/main/hsctinfo/cordinfo[" + 1 + "]/dnorid") != "" ) {
  157. messageBox("다른 이식종류로 이미 공여자가 등록되어 있으므로 이식종류를 변경 ", "E001");
  158. model.setValue("/root/main/hsctinfo/trnptinfo/trnptkind", "2");
  159. model.refresh();
  160. return;
  161. }
  162. model.setValue("/root/main/hsctinfo/trnptinfo/trnpttype", "1");
  163. model.setValue("/root/main/hsctinfo/trnptinfo/trnptkindcd", "");
  164. model.refresh();
  165. fSetDisabled("AUTO");
  166. } else {
  167. model.setValue("/root/main/hsctinfo/trnptinfo/trnpttype", "2");
  168. fSetDisabled("ALLO");
  169. }
  170. ]]>
  171. </script>
  172. </select1>
  173. <select1 id="cmb_trnptkindcd" ref="/root/main/patinfo/patlist/trnptkindcd" class="combo_default" disabled="true" appearance="minimal" style="left:175px; top:50px; width:183px; height:19px; ">
  174. <choices>
  175. <itemset nodeset="/root/init/cmbinfo/trnptkindcd/A0161">
  176. <label ref="cdnm"/>
  177. <value ref="cdid"/>
  178. </itemset>
  179. </choices>
  180. <script type="javascript" ev:event="xforms-select">
  181. <![CDATA[
  182. var strnptkindcd = model.getValue("/root/main/hsctinfo/trnptinfo/trnptkindcd");
  183. if ( strnptkindcd == "09" || strnptkindcd == "10") {
  184. if ( model.getValue("/root/main/hsctinfo/dnorinfo/dnorid") != "" ||
  185. model.getValue("/root/main/hsctinfo/ubmtinfo/dnorid") != "" ) {
  186. messageBox("다른 이식종류로 공여자가 등록되어 있으므로 Sub 이식종류를 변경 ", "E001");
  187. model.setValue("/root/main/hsctinfo/trnptinfo/trnptkindcd", model.getValue("/root/temp/trnptkindcd"));
  188. model.refresh();
  189. return;
  190. }
  191. model.setValue("/root/main/hsctinfo/trnptinfo/trnpttype", "4");
  192. fSetDisabled("CORD");
  193. } else if ( strnptkindcd == "07" || strnptkindcd == "08") {
  194. if ( model.getValue("/root/main/hsctinfo/dnorinfo/dnorid") != "" ||
  195. model.getValue("/root/main/hsctinfo/cordinfo[" + 1 + "]/dnorid") != "" ) {
  196. messageBox("다른 이식종류로 공여자가 등록되어 있으므로 Sub 이식종류를 변경 ", "E001");
  197. model.setValue("/root/main/hsctinfo/trnptinfo/trnptkindcd", model.getValue("/root/temp/trnptkindcd"));
  198. model.refresh();
  199. return;
  200. }
  201. model.setValue("/root/main/hsctinfo/trnptinfo/trnpttype", "3");
  202. fSetDisabled("UBMT");
  203. } else {
  204. if ( model.getValue("/root/main/hsctinfo/ubmtinfo/dnorid") != "" ||
  205. model.getValue("/root/main/hsctinfo/cordinfo[" + 1 + "]/dnorid") != "" ) {
  206. messageBox("다른 이식종류로 공여자가 등록되어 있으므로 Sub 이식종류를 변경 ", "E001");
  207. model.setValue("/root/main/hsctinfo/trnptinfo/trnptkindcd", model.getValue("/root/temp/trnptkindcd"));
  208. model.refresh();
  209. return;
  210. }
  211. model.setValue("/root/main/hsctinfo/trnptinfo/trnpttype", "2");
  212. fSetDisabled("ALLO");
  213. }
  214. // 이식종류를 변경할 때 이전에 공여자가 정리되지 않은 상태에서 변경할려고 할 때 변경하지 못하게 하기 위함.
  215. // 이때 Sub이식종류를 원래꺼로 돌리기 위해서 이전 정보를 백업한다.
  216. model.setValue("/root/temp/trnptkindcd", model.getValue("/root/main/hsctinfo/trnptinfo/trnptkindcd"));
  217. ]]>
  218. </script>
  219. </select1>
  220. <input id="input16" ref="/root/main/patinfo/patlist/trnptdd" class="input_default" disabled="true" inputtype="date" style="left:79px; top:74px; width:90px; height:19px; "/>
  221. <select1 id="cmb_pattrnptbfbtype" ref="/root/main/patinfo/patlist/pattrnptbfbtype" class="combo_default" disabled="true" navindex="1" appearance="minimal" style="left:78px; top:126px; width:115px; height:19px; ">
  222. <choices>
  223. <itemset nodeset="/root/init/cmbinfo/btype/M0376">
  224. <label ref="cdnm"/>
  225. <value ref="cdid"/>
  226. </itemset>
  227. </choices>
  228. </select1>
  229. <select1 id="combo1" ref="/root/main/patinfo/patlist/dnorbtype" class="combo_default" disabled="true" navindex="1" appearance="minimal" style="left:78px; top:150px; width:115px; height:19px; ">
  230. <choices>
  231. <itemset nodeset="/root/init/cmbinfo/btype/M0376">
  232. <label ref="cdnm"/>
  233. <value ref="cdid"/>
  234. </itemset>
  235. </choices>
  236. </select1>
  237. </group>
  238. </xhtml:body>
  239. </xhtml:html>