SMLLF10700_CDSS마스터관리.xrw 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLLF10600_CDSS마스터관리.xrw
  4. * 설 명 : 검사결과코드관리
  5. * 설 계 자 : (주)에이씨케이 -
  6. * 작 성 자 : (주)에이씨케이 - 이재민
  7. * 작 성 일 : 2010.04.09
  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>
  18. <main>
  19. <testlist>
  20. <tclscd/>
  21. <tclsnm/>
  22. <yn/>
  23. </testlist>
  24. <cdsslist>
  25. <seqno/>
  26. <tclscd/>
  27. <msgkind/>
  28. <rsltstat/>
  29. <rulekind/>
  30. <refs/>
  31. <rulerst/>
  32. <resendday/>
  33. <sendyn/>
  34. <recipient1/>
  35. <recipient2/>
  36. <ioflag/>
  37. </cdsslist>
  38. </main>
  39. <send>
  40. <codeflag/>
  41. <testlrgcd/>
  42. <testmdlcd/>
  43. <tclscd/>
  44. <cdsslist/>
  45. <userdeptflagcd/>
  46. <seqno/>
  47. <selectgbn/>
  48. </send>
  49. <init>
  50. </init>
  51. <hidden>
  52. <ref>
  53. <selectgbn>1</selectgbn>
  54. <testlrgcd>00</testlrgcd>
  55. <testmdlcd>00</testmdlcd>
  56. </ref>
  57. </hidden>
  58. </root>
  59. </instance>
  60. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  61. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  62. <script type="javascript" ev:event="xforms-ready">
  63. <![CDATA[
  64. model.setValue("/root/send/codeflag", "0104|0102|0000|0111|0106|"); //0104 대분류 0102 중분류
  65. submit("TRLZZ00101");
  66. fSelectGbn();
  67. model.setValue("/root/hidden/ref/selectgbn","1");
  68. model.refresh();
  69. ]]>
  70. </script>
  71. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/LB"/>
  72. <submission id="TRLLF90804" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/cdsslist"/>
  73. <submission id="TXLLF90901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/cdsslist"/>
  74. <submission id="TRLLF90803" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/testlist"/>
  75. </model>
  76. <script type="javascript">
  77. <![CDATA[
  78. // 조회구분에서 대분류와 중분류의 값을 받아 검사목록을 출력
  79. function fGettestRsltlist(){
  80. model.removeNodeset("/root/main/rsltcdlist");
  81. model.refresh();
  82. model.makeValue("/root/send/selectgbn", model.getValue("/root/hidden/ref/selectgbn"));
  83. model.setValue("/root/send/testlrgcd", model.getValue("/root/hidden/ref/testlrgcd"));
  84. model.setValue("/root/send/testmdlcd", model.getValue("/root/hidden/ref/testmdlcd"));
  85. //model.setValue("/root/send/userdeptflagcd", model.getValue("/root/init/LB0000/nm"));
  86. //alert(model.getValue("/root/send/userdeptflagcd"));
  87. submit("TRLLF90803");
  88. }
  89. //검사목록 조회
  90. function fClickResultList(){
  91. var row = testlist.row;
  92. model.removeNodeset("/root/main/cdsslist");
  93. model.setValue("/root/send/tclscd" , model.getValue("/root/main/testlist["+row+"]/tclscd"));
  94. submit("TRLLF90804");
  95. }
  96. //행추가
  97. function fInsRowAdd() {
  98. var row = testlist.row;
  99. cdsslist.addRow();
  100. model.setValue("root/main/cdsslist["+cdsslist.row+"]/tclscd", model.getValue("root/main/testlist["+row+"]/tclscd"));
  101. model.setValue("root/main/cdsslist["+cdsslist.row+"]/msgkind", "S");
  102. model.setValue("root/main/cdsslist["+cdsslist.row+"]/rsltstat", "2");
  103. model.setValue("root/main/cdsslist["+cdsslist.row+"]/rulekind", "C");
  104. model.setValue("root/main/cdsslist["+cdsslist.row+"]/refs", "-");
  105. model.setValue("root/main/cdsslist["+cdsslist.row+"]/rulerst", "-");
  106. model.setValue("root/main/cdsslist["+cdsslist.row+"]/resendday", "-");
  107. model.setValue("root/main/cdsslist["+cdsslist.row+"]/sendyn", "Y");
  108. model.setValue("root/main/cdsslist["+cdsslist.row+"]/recipient1" , "N");
  109. model.setValue("root/main/cdsslist["+cdsslist.row+"]/recipient2" , "N");
  110. model.setValue("root/main/cdsslist["+cdsslist.row+"]/ioflag" , "A");
  111. }
  112. //행삭제
  113. function fInsRowdel() {
  114. var row = cdsslist.row;
  115. cdsslist.rowStatus(row) = 4;
  116. }
  117. //저장 데이터 확인
  118. function checkGridUpdate(grid){
  119. var iData = grid.getUpdateDataXml("insert");
  120. var uData = grid.getUpdateDataXml("update");
  121. var dData = grid.getUpdateDataXml("delete");
  122. if (iData=="" && uData=="" && dData=="") return false;
  123. else{
  124. return true;
  125. }
  126. }
  127. // 결과목록 삽입, 삭제, 수정
  128. function fExeEqmtSave() {
  129. if(messageBox("", "Q002")==6){
  130. if(!checkGridUpdate(cdsslist)){
  131. alert("저장할 자료가 존재하지 않습니다.");
  132. return;
  133. }
  134. if(testlist.row == -1){
  135. messageBox("검사항목을 선택하십시오", "I");
  136. return;
  137. }
  138. var row = cdsslist.row;
  139. model.setValue("/root/send/cdsslist", cdsslist.getUpdateData());
  140. //alert(model.getValue("/root/send/cdsslist"));
  141. //model.setValue("/root/send/seqno", model.getValue("/root/main/cdsslist["+row+"]/tclscd/@seqno")
  142. submit("TXLLF90901");
  143. fClickResultList();
  144. }
  145. }
  146. // 콤보박스 활성화
  147. function ftestcombo(){
  148. var CD = model.getValue("/root/hidden/ref/testlrgcd");
  149. if(CD == "00"){
  150. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102";
  151. model.setvalue("/root/hidden/ref/testmdlcd" , "00");
  152. testmdlcd.disabled = true;
  153. }
  154. else{
  155. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102[cd= '00' or etc01='"+ CD +"']";
  156. model.setvalue("/root/hidden/ref/testmdlcd" , "00");
  157. testmdlcd.disabled = false;
  158. }
  159. testmdlcd.refresh();
  160. }
  161. function fSelectGbn(){
  162. //검사분류 선택
  163. if(cmb_selectgbn.value == "1"){
  164. //첫번째 콤보에 대분류 셋팅
  165. testlrgcd.choices.itemset.attribute("nodeset") = "/root/init/LB0104";
  166. //두번째 콤보에 중분류 셋팅
  167. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102";
  168. }
  169. //시행부서 선택
  170. else if(cmb_selectgbn.value == "2"){
  171. //첫번째 콤보에 계코드 셋팅
  172. testlrgcd.choices.itemset.attribute("nodeset") = "/root/init/LB0111";
  173. //두번째 콤보에 검사계코드 셋팅
  174. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0106";
  175. }
  176. model.setvalue("/root/hidden/ref/testlrgcd", "00");
  177. model.setvalue("/root/hidden/ref/testmdlcd", "00");
  178. testlrgcd.refresh();
  179. testmdlcd.refresh();
  180. }
  181. //첫번째 콤보 선택시, 두번째 콤보 셋팅
  182. function fSetSelect02(){
  183. var select01 = model.getvalue("/root/hidden/ref/testlrgcd");
  184. //검사분류선택
  185. if(cmb_selectgbn.value == "1"){
  186. if(select01 == "00"){
  187. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102";
  188. }
  189. else{
  190. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102[cd= '00' or etc01='"+ select01 +"']";
  191. }
  192. model.setValue("/root/hidden/ref/testmdlcd" , "00");
  193. testmdlcd.refresh();
  194. }
  195. //시행부서 선택
  196. else if(cmb_selectgbn.value == "2"){
  197. if(select01 == "00"){
  198. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0106";
  199. }
  200. else{
  201. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0106[cd= '00' or etc01='"+ select01 +"']";
  202. }
  203. model.setValue("/root/hidden/ref/testmdlcd" , "00");
  204. testmdlcd.refresh();
  205. }
  206. //ftestcombo();
  207. }
  208. ]]>
  209. </script>
  210. </xhtml:head>
  211. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  212. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744; ">
  213. <line id="line1" class="line_1" style="x1:0px; y1:70px; x2:490px; y2:70px; "/>
  214. <datagrid id="testlist" nodeset="/root/main/testlist" caption="검사코드^검사명^룰여부" colsep="^" colwidth="100, 281, 60" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:75px; width:490px; height:669px; ">
  215. <col ref="tclscd"/>
  216. <col ref="tclsnm"/>
  217. <col ref="yn"/>
  218. <script type="javascript" ev:event="onclick">
  219. <![CDATA[
  220. if(testlist.isCell(event.target) && testlist.row >= testlist.fixedRows){
  221. fClickResultList();
  222. }
  223. ]]>
  224. </script>
  225. <script type="javascript" ev:event="onaftersort">
  226. <![CDATA[
  227. testlist.gridToInstance();
  228. ]]>
  229. </script>
  230. </datagrid>
  231. <caption id="caption1" class="tit_2" style="left:5px; top:55px; width:131px; height:14px; ">검사코드목록</caption>
  232. <button id="button2" class="btn2_letter3" style="left:1142px; top:49px; width:53px; height:19px; ">
  233. <caption>행추가</caption>
  234. <script type="javascript" ev:event="DOMActivate">
  235. <![CDATA[
  236. fInsRowAdd();
  237. ]]>
  238. </script>
  239. </button>
  240. <datagrid id="cdsslist" nodeset="/root/main/cdsslist" caption="일련번호^검사코드^전송유형^결과유형^룰유형^부등호^룰값^재전송구간^전송여부^주치의^처방의^입원외래구분" colsep="^" colwidth="55, 75, 85, 80, 80, 60, 110, 80, 65, 50, 50" dataheight="23" defaultrows="1" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:500px; top:75px; width:694px; height:669px; ">
  241. <col ref="seqno" visibility="hidden"/>
  242. <col ref="tclscd" visibility="hidden"/>
  243. <col ref="msgkind" type="combo" _key="true">
  244. <choices>
  245. <item>
  246. <label>SMS</label>
  247. <value>S</value>
  248. </item>
  249. <item>
  250. <label>notify</label>
  251. <value>N</value>
  252. </item>
  253. </choices>
  254. </col>
  255. <col ref="rsltstat" type="combo" style="left:120px; top:23px; width:402px; height:23px; ">
  256. <choices>
  257. <item>
  258. <label>중간보고</label>
  259. <value>2</value>
  260. </item>
  261. <item>
  262. <label>최종보고</label>
  263. <value>4</value>
  264. </item>
  265. </choices>
  266. </col>
  267. <col ref="rulekind" type="combo">
  268. <choices>
  269. <item>
  270. <label>Critical</label>
  271. <value>C</value>
  272. </item>
  273. <item>
  274. <label>Low</label>
  275. <value>L</value>
  276. </item>
  277. <item>
  278. <label>High</label>
  279. <value>H</value>
  280. </item>
  281. <item>
  282. <label>배양(양성)</label>
  283. <value>M</value>
  284. </item>
  285. <item>
  286. <label>패턴(포함)</label>
  287. <value>P</value>
  288. </item>
  289. <item>
  290. <label>범위</label>
  291. <value>R</value>
  292. </item>
  293. </choices>
  294. </col>
  295. <col ref="refs" type="combo">
  296. <choices>
  297. <item>
  298. <label>없음</label>
  299. <value>-</value>
  300. </item>
  301. <item>
  302. <label>
  303. <![CDATA[이상 (>=)]]>
  304. </label>
  305. <value>1</value>
  306. </item>
  307. <item>
  308. <label>
  309. <![CDATA[초과 (>)]]>
  310. </label>
  311. <value>2</value>
  312. </item>
  313. <item>
  314. <label>
  315. <![CDATA[이하 (<=)]]>
  316. </label>
  317. <value>3</value>
  318. </item>
  319. <item>
  320. <label>
  321. <![CDATA[미만 (<)]]>
  322. </label>
  323. <value>4</value>
  324. </item>
  325. <item>
  326. <label>일치 (=)</label>
  327. <value>5</value>
  328. </item>
  329. <item>
  330. <label>포함 (like)</label>
  331. <value>6</value>
  332. </item>
  333. </choices>
  334. </col>
  335. <col ref="rulerst" type="input"/>
  336. <col ref="resendday" type="input"/>
  337. <col ref="sendyn" type="combo">
  338. <choices>
  339. <item>
  340. <label>YES</label>
  341. <value>Y</value>
  342. </item>
  343. <item>
  344. <label>NO</label>
  345. <value>N</value>
  346. </item>
  347. </choices>
  348. </col>
  349. <col checkvalue="Y,N" ref="recipient1" type="checkbox"/>
  350. <col checkvalue="Y,N" ref="recipient2" type="checkbox"/>
  351. <col ref="ioflag" type="combo" style="left:120px; top:23px; width:402px; height:23px; ">
  352. <choices>
  353. <item>
  354. <label>전체</label>
  355. <value>A</value>
  356. </item>
  357. <item>
  358. <label>입원</label>
  359. <value>I</value>
  360. </item>
  361. <item>
  362. <label>외래</label>
  363. <value>O</value>
  364. </item>
  365. </choices>
  366. </col>
  367. <script type="javascript" ev:event="onaftersort">
  368. <![CDATA[
  369. cdsslist.gridToInstance();
  370. ]]>
  371. </script>
  372. </datagrid>
  373. <caption id="caption3" class="tit_2" style="left:500px; top:55px; width:131px; height:14px; ">CDSS RULE LIST</caption>
  374. <line id="line2" class="line_1" style="x1:500px; y1:70px; x2:1194px; y2:70px; "/>
  375. <group id="group1" style="left:0px; top:10px; width:1195px; height:35px; ">
  376. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:35px; "/>
  377. <line id="line3" class="line_4" style="x1:1108px; y1:7px; x2:1108px; y2:29px; "/>
  378. <button id="button3" class="btn1_letter2" style="left:1123px; top:8px; width:56px; height:22px; ">
  379. <caption>조회</caption>
  380. <script type="javascript" ev:event="DOMActivate">
  381. <![CDATA[
  382. fGettestRsltlist() ;
  383. ]]>
  384. </script>
  385. </button>
  386. <caption id="caption2" class="search_name" style="left:15px; top:9px; width:90px; height:17px; ">검사분류 :</caption>
  387. <select1 id="testlrgcd" ref="/root/hidden/ref/testlrgcd" appearance="minimal" itemcount="10" style="left:191px; top:8px; width:110px; height:19px; ">
  388. <choices>
  389. <itemset nodeset="/root/init/LB0104">
  390. <label ref="nm"/>
  391. <value ref="cd"/>
  392. </itemset>
  393. </choices>
  394. <script type="javascript" ev:event="xforms-value-changed">
  395. <![CDATA[
  396. fSetSelect02();
  397. //ftestcombo();
  398. ]]>
  399. </script>
  400. </select1>
  401. <select1 id="testmdlcd" ref="/root/hidden/ref/testmdlcd" appearance="minimal" itemcount="10" style="left:303px; top:8px; width:130px; height:19px; ">
  402. <choices>
  403. <itemset nodeset="/root/init/LB0102">
  404. <label ref="nm"/>
  405. <value ref="cd"/>
  406. </itemset>
  407. </choices>
  408. <script type="javascript" ev:event="xforms-value-changed">
  409. <![CDATA[
  410. fGettestRsltlist() ;
  411. ]]>
  412. </script>
  413. </select1>
  414. <select1 id="cmb_selectgbn" ref="/root/hidden/ref/selectgbn" class="combo_search" visibility="visible" appearance="minimal" style="left:109px; top:8px; width:80px; height:19px; ">
  415. <choices>
  416. <item>
  417. <label>검사분류</label>
  418. <value>1</value>
  419. </item>
  420. <item>
  421. <label>시행부서</label>
  422. <value>2</value>
  423. </item>
  424. </choices>
  425. <script type="javascript" ev:event="xforms-select">
  426. <![CDATA[
  427. fSelectGbn();
  428. ]]>
  429. </script>
  430. </select1>
  431. </group>
  432. <button id="button1" class="btn2_letter3" style="left:1086px; top:49px; width:53px; height:19px; ">
  433. <caption>행삭제</caption>
  434. <script type="javascript" ev:event="DOMActivate">
  435. <![CDATA[
  436. fInsRowdel();
  437. ]]>
  438. </script>
  439. </button>
  440. </group>
  441. <group id="group4" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  442. <button id="button5" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  443. <caption>초기화</caption>
  444. <script type="javascript" ev:event="onclick">
  445. <![CDATA[
  446. model.reset();
  447. ]]>
  448. </script>
  449. </button>
  450. <button id="button11" class="btn4_letter2" style="left:1068px; top:3px; width:56px; height:22px; ">
  451. <caption>저장</caption>
  452. <script type="javascript" ev:event="DOMActivate">
  453. <![CDATA[
  454. fExeEqmtSave();
  455. ]]>
  456. </script>
  457. </button>
  458. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  459. </group>
  460. <group id="group2" style="left:0px; top:0px; width:1195px; height:13px; ">
  461. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">CDSS RULE 관리</caption>
  462. </group>
  463. </xhtml:body>
  464. </xhtml:html>