SMLBR00100_혈액은행결과관리.xrw 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLBR00100.xrw
  4. * 설 명 : 혈액은행 결과관리
  5. * 설 계 자 : (주)에이씨케이 -
  6. * 작 성 자 : (주)에이씨케이 - 조철형
  7. * 작 성 일 : 2007.8.28
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title/>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <testpatlist>
  20. <patlist>
  21. <chk/>
  22. <bcno/>
  23. <pid/>
  24. <hngnm/>
  25. <lastreptdt/>
  26. <spcacptdt/>
  27. <prcpdd/>
  28. <erprcpflag/>
  29. </patlist>
  30. </testpatlist>
  31. </main>
  32. <send>
  33. </send>
  34. <init>
  35. <LB0106>
  36. <cd/>
  37. <nm/>
  38. </LB0106>
  39. </init>
  40. <hidden>
  41. <refparam>
  42. <searchflag>1</searchflag>
  43. <searchtext/>
  44. <startdd/>
  45. <enddd/>
  46. <tsectcd/>
  47. <rstflag>2</rstflag>
  48. <testlrgkind>B</testlrgkind>
  49. <sectcd/>
  50. </refparam>
  51. <abresult>
  52. </abresult>
  53. <onclickbtnref/>
  54. <nm/>
  55. <aborslt>
  56. <aborslt/>
  57. </aborslt>
  58. </hidden>
  59. </root>
  60. </instance>
  61. <script type="javascript" ev:event="xforms-model-construct-done">
  62. <![CDATA[
  63. fBaseInfoRef("0106|0602|0108|0109|0603|0210|0000|1301|0402|");
  64. model.removenode("/root/init/LB0603[2]");
  65. model.setvalue("/root/hidden/refparam/sectcd", "00");
  66. model.setvalue("/root/hidden/refparam/tsectcd", "00");
  67. model.setvalue("/root/hidden/refparam/startdd",getCurrentDate());
  68. model.setvalue("/root/hidden/refparam/enddd",getCurrentDate());
  69. combo4.disabled = true;
  70. model.refresh();
  71. //model.setFocus("ipt_testpsn");
  72. model.setFocus("ID_txt");
  73. group3.disabled = true;
  74. ]]>
  75. </script>
  76. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  77. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  78. <script type="javascript" src="../../../lis/commonweb/js/LLZ001.js"/>
  79. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init"/>
  80. <submission id="TRLBR00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/testpatlist"/>
  81. <submission id="TRLLR80105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/aborslt"/>
  82. </model>
  83. <script type="javascript">
  84. <![CDATA[
  85. function fSetRefFromdd() {
  86. var fromdd = model.getValue("/root/hidden/refparam/startdd");
  87. var todd = model.getValue("/root/hidden/refparam/enddd");
  88. var mDate = todd.toDate("YYYYMMDD").getAddDate(-3);
  89. if(mDate.getDateFormat("YYYYMMDD") > fromdd) {
  90. messageBox("3일 이내의 기간만 검색","I006");
  91. return false;
  92. }else if(todd < fromdd) {
  93. messageBox("기간설정이 잘못", "E005");
  94. return false;
  95. }else {
  96. return true;
  97. }
  98. }
  99. function fOnclickBtnRef(gbn){
  100. if(!fSetRefFromdd()) return;
  101. fSetClear2();
  102. var sear = model.getvalue("/root/hidden/refparam/searchtext").getTrim();
  103. if(gbn == "Q" && sear ==""){
  104. return;
  105. }
  106. if(sear.isNumber()){ //숫자이면
  107. model.setvalue("/root/hidden/refparam/searchflag", "2"); //등록번호조회
  108. }else{ //문자이고
  109. if(model.getvalue("/root/hidden/refparam/searchflag") != "3"){ //이름조회가 아니라면
  110. model.setvalue("/root/hidden/refparam/searchflag", "1"); //검체번호
  111. }
  112. }
  113. //if(model.getvalue("/root/hidden/refparam/searchflag") == "1" && sear !="" && gbn == "Q"){
  114. model.setvalue("/root/hidden/refparam/searchtext" , sear.toUpperCase());
  115. iptSearch.selBegin = 0;
  116. iptSearch.selEnd = iptSearch.currentText.length;
  117. //}
  118. model.copyNode("/root/send/data1","/root/hidden/refparam") ;
  119. if(gbn != "Q"){
  120. model.setvalue("/root/send/data1/searchtext" , "");
  121. }
  122. submit("TRLBR00101");
  123. model.copyNode("/root/send/data1","/root/hidden/default");
  124. for(i=1 ;i<grd_patList.rows;i++){
  125. if(model.getvalue("/root/main/testpatlist/patlist["+i+"]/rsltstat") == "-"){
  126. grd_patList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/icnRSTFLAG_N.gif";
  127. grd_patList.cellstyle("background-position", i, 1) = "center"
  128. }else if(model.getvalue("/root/main/testpatlist/patlist["+i+"]/rsltstat") == "1"){
  129. grd_patList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/icnRSTFLAG_1.gif";
  130. grd_patList.cellstyle("background-position", i, 1) = "center"
  131. }
  132. else if(model.getvalue("/root/main/testpatlist/patlist["+i+"]/rsltstat") == "2"){
  133. grd_patList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/icnRSTFLAG_2.gif";
  134. grd_patList.cellstyle("background-position", i, 1) = "center"
  135. }
  136. else if(model.getvalue("/root/main/testpatlist/patlist["+i+"]/rsltstat") == "4"){
  137. grd_patList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/icnRSTFLAG_3.gif";
  138. grd_patList.cellstyle("background-position", i, 1) = "center"
  139. }
  140. else if(model.getvalue("/root/main/testpatlist/patlist["+i+"]/rsltstat") == "3"){
  141. grd_patList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/icnRSTFLAG_F.gif";
  142. grd_patList.cellstyle("background-position", i, 1) = "center"
  143. }
  144. //응급 검사 일경우 뻘건색 표시 20090831 승현 추가
  145. if(model.getvalue("/root/main/testpatlist/patlist["+i+"]/erprcpflag") == "Y"){ //응급
  146. grd_patList.rowStyle(i, "data", "background-color") = "#f7a08b";
  147. }else{
  148. grd_patList.rowStyle(i, "data", "background-color") = "#ffffff";
  149. }
  150. }
  151. //엔터키로 조회 했다는 상태값 설정
  152. model.setValue("/root/hidden/onclickbtnref", gbn);
  153. if(gbn == "Q" && grd_patList.rows > 1) {
  154. if(model.getValue("/root/hidden/refparam/searchflag") == "2"){
  155. //등록번호로 조회시 환자목록 자동 선택 막음 ==> 환자목록 반드시 클릭후 결과 입력 하도록 수정
  156. //오류남 2009.05.18 김성희 수정
  157. //grd_patList.row= 1;
  158. fPatListClick2();
  159. }else {
  160. grd_patList.row= 1;
  161. fPatListClick(1);
  162. }
  163. }
  164. //--------------------------------------------------------------------
  165. // BMT 실시 정보
  166. fGetBMTInfo("info");
  167. }
  168. function fPatListClick(row){
  169. //var strBcno = model.getValue("/root/main/testpatlist/patlist["+row+"]")
  170. model.copyNode("/root/send/data1","/root/hidden/refparam") ;
  171. model.copyNode("/root/send/data2","/root/main/testpatlist/patlist["+row+"]");
  172. model.makeValue("root/send/userdeptflagcd", model.getValue("/root/init/LB0000/nm"));
  173. model.makeValue("root/send/bloodrsltflag","Y");
  174. submit("TRLLR80101");
  175. // model.resetNode("/root/hidden/aborslt");
  176. // model.refresh()
  177. // model.setvalue("/root/hidden/aborslt/aborslt","");
  178. submit("TRLLR80105");
  179. //model.copyNode("/root/send/data1","/root/hidden/default");
  180. //model.copyNode("/root/send/data2","/root/hidden/default");
  181. var HiddenYN = model.getValue("/root/init/LB0402/nm");
  182. if(HiddenYN == "Y"){
  183. fhiddenrow();
  184. }
  185. fRemakeList();
  186. }
  187. function fPatListClick2(){
  188. model.copyNode("/root/send/data1","/root/hidden/refparam") ;
  189. model.copyNode("/root/send/data2","/root/main/testpatlist/patlist["+1+"]");
  190. submit("TRLLR80103");
  191. var HiddenYN = model.getValue("/root/init/LB0402/nm");
  192. if(HiddenYN == "Y"){
  193. fhiddenrow();
  194. }
  195. //model.copyNode("/root/send/data1","/root/hidden/default");
  196. //model.copyNode("/root/send/data2","/root/hidden/default");
  197. fRemakeList();
  198. }
  199. ]]>
  200. </script>
  201. </xhtml:head>
  202. <xhtml:body guideline="1,526;1,746;1,506;1,422;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  203. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  204. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:119px; height:14px; ">혈액은행결과관리</caption>
  205. </group>
  206. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
  207. <caption id="caption16" class="tit_2" style="left:5px; top:184px; width:115px; height:13px; ">환자목록</caption>
  208. <line id="line4" class="line_1" style="x1:0px; y1:199px; x2:320px; y2:199px; "/>
  209. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" style="left:0px; top:10px; width:320px; height:164; "/>
  210. <caption id="caption4" class="search_name" style="left:15px; top:73px; width:94px; height:17px; ">작업일자 :</caption>
  211. <caption id="caption5" class="search_name" style="left:15px; top:97px; width:94px; height:17px; ">시행부서 :</caption>
  212. <caption id="caption1" class="search_name" style="left:15px; top:121px; width:94px; height:17px; ">결과구분 :</caption>
  213. <select1 id="combo2" ref="/root/hidden/refparam/rstflag" class="combo_default" appearance="minimal" style="left:105px; top:120px; width:200px; height:19px; ">
  214. <choices>
  215. <item>
  216. <label>전체</label>
  217. <value>0</value>
  218. </item>
  219. <item>
  220. <label>미검사</label>
  221. <value>1</value>
  222. </item>
  223. <item>
  224. <label>미완료</label>
  225. <value>2</value>
  226. </item>
  227. <item>
  228. <label>최종보고</label>
  229. <value>3</value>
  230. </item>
  231. </choices>
  232. </select1>
  233. <select1 id="combo3" ref="/root/hidden/refparam/sectcd" class="combo_default" appearance="minimal" style="left:105px; top:96px; width:90px; height:19px; ">
  234. <choices>
  235. <itemset nodeset="/root/init/LB0603">
  236. <label ref="nm"/>
  237. <value ref="cd"/>
  238. </itemset>
  239. </choices>
  240. <script type="javascript" ev:event="xforms-value-changed">
  241. <![CDATA[
  242. var etc = model.getvalue("/root/hidden/refparam/sectcd");
  243. if(etc == "00"){
  244. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0602";
  245. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  246. combo4.disabled = true;
  247. }
  248. else{
  249. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0602[cd= '00' or etc01='"+ etc +"']";
  250. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  251. combo4.disabled = false;
  252. }
  253. combo4.refresh();
  254. ]]>
  255. </script>
  256. </select1>
  257. <input id="input1" ref="/root/hidden/refparam/startdd" class="input_search" inputtype="date" style="left:105px; top:72px; width:90px; height:19px; "/>
  258. <caption id="caption2" class="search_no_b" style="left:199px; top:73px; width:15px; height:20px; vertical-align:middle; ">~</caption>
  259. <input id="input2" ref="/root/hidden/refparam/enddd" class="input_search" inputtype="date" style="left:215px; top:72px; width:90px; height:19px; "/>
  260. <button id="button6" class="btn1_letter2" style="left:249px; top:145px; width:56px; height:22px; ">
  261. <caption>조회</caption>
  262. <script type="javascript" ev:event="onclick">
  263. <![CDATA[
  264. fOnclickBtnRef();
  265. ]]>
  266. </script>
  267. </button>
  268. <import id="import1" instancetype="merge" src="SSLBR80100_혈액은행검사항목상세.xrw" style="left:325px; top:14px; width:870px; height:730px; "/>
  269. <line id="line13" class="line_4" style="x1:244px; y1:145px; x2:244px; y2:167px; "/>
  270. <select1 id="combo1" ref="/root/hidden/refparam/searchflag" class="combo_search" appearance="minimal" style="left:105px; top:18px; width:200px; height:19px; ">
  271. <choices>
  272. <item>
  273. <label>바코드번호</label>
  274. <value>1</value>
  275. </item>
  276. <item>
  277. <label>등록번호</label>
  278. <value>2</value>
  279. </item>
  280. <item>
  281. <label>환자성명</label>
  282. <value>3</value>
  283. </item>
  284. </choices>
  285. </select1>
  286. <caption id="caption18" class="search_name" style="left:15px; top:19px; width:94px; height:17px; ">검색구분 :</caption>
  287. <line id="line6" class="line_7" style="x1:14px; y1:66px; x2:299px; y2:66px; "/>
  288. <datagrid id="grd_patList" nodeset="/root/main/testpatlist/patlist" caption="^바코드번호^등록번호^성명^결과일시^접수일시^처방일자^응급구문" colsep="^" colwidth="22, 90, 80, 80,120, 120, 80, 0" dataheight="23" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:204px; width:320px; height:529px; font-weight:bold; ">
  289. <col ref="chk" style="text-align:center; "/>
  290. <col ref="bcno"/>
  291. <col ref="pid"/>
  292. <col ref="hngnm"/>
  293. <col ref="lastreptdt" format="yyyy-mm-dd hh:nn:ss"/>
  294. <col ref="spcacptdt" format="yyyy-mm-dd hh:nn:ss"/>
  295. <col ref="prcpdd" format="yyyy-mm-dd"/>
  296. <col ref="erprcpflag"/>
  297. <script type="javascript" ev:event="onclick">
  298. <![CDATA[
  299. var row = grd_patList.row;
  300. if(grd_patList.isCell(event.target) && grd_patList.row >= grd_patList.fixedRows ){
  301. if(row > 0){
  302. grd_TestInfoCnts.rebuildStyle();
  303. grd_TestInfoCnts.allStyle("all","background-color") = "#ffffff";
  304. fPatListClick(row);
  305. }
  306. }
  307. ]]>
  308. </script>
  309. <script type="javascript" ev:event="onaftersort">
  310. <![CDATA[
  311. grd_patList.gridToInstance();
  312. ]]>
  313. </script>
  314. </datagrid>
  315. <input id="iptSearch" ref="/root/hidden/refparam/searchtext" class="input_button" navindex="1" imemode="disabled" inputtype="button" style="left:105px; top:42px; width:200px; height:19px; ">
  316. <script type="javascript" ev:event="onbuttonclick">
  317. <![CDATA[
  318. fOnclickBtnRef("Q");
  319. ]]>
  320. </script>
  321. </input>
  322. <select1 id="combo4" ref="/root/hidden/refparam/tsectcd" class="combo_default" appearance="minimal" style="left:195px; top:96px; width:110px; height:19px; ">
  323. <choices>
  324. <itemset nodeset="/root/init/LB0602">
  325. <label ref="nm"/>
  326. <value ref="cd"/>
  327. </itemset>
  328. </choices>
  329. </select1>
  330. <input id="input3" ref="/root/hidden/aborslt/aborslt" style="left:192px; top:151px; width:45px; height:19px; text-align:left; "/>
  331. <caption id="caption7" class="search_name" style="left:15px; top:150px; width:170px; height:20px; color:#ff0000; ">간호정보조사지의 혈액형</caption>
  332. </group>
  333. <group id="group5" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  334. <button id="button1" class="btn3_letter6" style="left:83px; top:3px; width:104px; height:22px; ">
  335. <caption>특이결과등록</caption>
  336. <script type="javascript" ev:event="DOMActivate">
  337. <![CDATA[
  338. fSpcfRsltSave();
  339. ]]>
  340. </script>
  341. </button>
  342. <button id="button2" class="btn3_letter7" style="left:190px; top:3px; width:116px; height:22px; ">
  343. <caption>부적합검체등록</caption>
  344. <script type="javascript" ev:event="onclick">
  345. <![CDATA[
  346. //window.load("SMLLJ90100_부적합검체등록.xrw","modeless", "", "width:360px; height:465;min:hidden;max:hidden;align:center");
  347. //modal("SPLLJ90100");
  348. if(model.getValue("/root/main/TestInfo/getSpcInfo/bcno") != ""){
  349. model.makeValue("/root/hidden/bcno", model.getValue("/root/main/TestInfo/getSpcInfo/bcno"));
  350. }else{
  351. model.makeValue("/root/hidden/bcno", "");
  352. }
  353. modal("SPLLJ90100_부적합검체등록","","","","","/root/hidden/bcno","/root/hidden/bcno");
  354. ]]>
  355. </script>
  356. </button>
  357. <button id="button3" class="btn3_letter6" style="left:309px; top:3px; width:104px; height:22px; ">
  358. <caption>수정결과등록</caption>
  359. <script type="javascript" ev:event="DOMActivate">
  360. <![CDATA[
  361. fUpdtRslt();
  362. ]]>
  363. </script>
  364. </button>
  365. <button id="button8" class="btn3_letter4" style="left:0px; top:3px; width:80px; height:22px; ">
  366. <caption>TAT조회</caption>
  367. </button>
  368. <button id="button5" class="btn3_letter4" style="left:414px; top:3px; width:80px; height:22px; ">
  369. <caption>이력조회</caption>
  370. <script type="javascript" ev:event="DOMActivate">
  371. <![CDATA[
  372. if(model.getvalue("/root/hidden/refparam/searchtext") == "" && model.getValue("/root/hidden/refparam/searchflag") == "2"){
  373. setParameter ( "SMMMO02500_cond", getPatientInfo("pid"));
  374. }else if(model.getvalue("/root/hidden/refparam/searchtext") != "" && model.getValue("/root/hidden/refparam/searchflag") == "2"){
  375. setParameter ( "SMMMO02500_cond", model.getvalue("/root/hidden/refparam/searchtext"));
  376. }
  377. open ( "SMMMO02500" );
  378. ]]>
  379. </script>
  380. </button>
  381. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  382. <button id="btn_rsltsave" class="btn4_letter4" visibility="hidden" style="left:879px; top:3px; width:80px; height:22px; ">
  383. <caption>결과저장</caption>
  384. <script type="javascript" ev:event="onclick">
  385. <![CDATA[
  386. fInsRsltSave();
  387. ]]>
  388. </script>
  389. </button>
  390. <button id="btn_MdlRept" class="btn4_letter4" style="left:962px; top:3px; width:80px; height:22px; ">
  391. <caption>예비결과</caption>
  392. <script type="javascript" ev:event="onclick">
  393. <![CDATA[
  394. fSetMdlRept();
  395. ]]>
  396. </script>
  397. </button>
  398. <button id="btn_LstRept" class="btn4_letter4" style="left:1044px; top:3px; width:80px; height:22px; ">
  399. <caption>최종보고</caption>
  400. <script type="javascript" ev:event="onclick">
  401. <![CDATA[
  402. fSetLstRept();
  403. ]]>
  404. </script>
  405. </button>
  406. <button id="btn_cle" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  407. <caption>초기화</caption>
  408. <script type="javascript" ev:event="onclick">
  409. <![CDATA[
  410. fSetClear();
  411. ]]>
  412. </script>
  413. </button>
  414. <button id="button7" class="btn4_letter2" style="left:902px; top:3px; width:56px; height:22px; ">
  415. <caption>재검</caption>
  416. <script type="javascript" ev:event="onclick">
  417. <![CDATA[
  418. fInsJeaGeom();
  419. ]]>
  420. </script>
  421. </button>
  422. </group>
  423. <script type="javascript" ev:event="onkeyup">
  424. <![CDATA[
  425. fKeyEvent();
  426. ]]>
  427. </script>
  428. <script type="javascript" ev:event="onmenu">
  429. <![CDATA[
  430. var popupParam = event.description;
  431. fOnmenu(popupParam);
  432. ]]>
  433. </script>
  434. <group id="Group_idChk" style="left:466px; top:240px; width:280px; height:165px; background-color:#ff99cc; border-color:#5abaff; border-width:1px; border-style:solid; ">
  435. <caption id="caption3" style="left:19px; top:19px; width:242px; height:70px; font-size:18pt; font-weight:bold; ">검사자를 입력하세요</caption>
  436. <textarea id="ID_txt" ref="/root/hidden/nm" overflow="hidden" style="left:34px; top:89px; width:195px; height:55px; font-size:22pt; "/>
  437. <button id="button4" style="left:232px; top:119px; width:42px; height:25px; font-size:8pt; font-weight:bold; color:#003399; text-align:center; background-image:../../../lis\commonweb\images\btn_lis.gif; background-repeat:no-repeat; background-stretch:stretch; ">
  438. <caption>닫기</caption>
  439. <script type="javascript" ev:event="onclick">
  440. <![CDATA[
  441. Group_idChk.visible = false;
  442. ]]>
  443. </script>
  444. </button>
  445. </group>
  446. </xhtml:body>
  447. </xhtml:html>