SMMNV21000_안센터전광판가야할곳관리.xrw 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736
  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. <masterinfo>
  11. <masterlist>
  12. </masterlist>
  13. </masterinfo>
  14. <usedeptinfo>
  15. <usedeptlist/>
  16. </usedeptinfo>
  17. <detlinfo>
  18. <detllist/>
  19. <saveflag/>
  20. </detlinfo>
  21. <ordschelist>
  22. <ordschelistinfo>
  23. <pid/>
  24. <roomcd/>
  25. <cretno/>
  26. <orddeptcd/>
  27. <ordtm/>
  28. <hngnm/>
  29. <sa/>
  30. <rrgstno/>
  31. <fsexamnm/>
  32. <orddrnm/>
  33. </ordschelistinfo>
  34. </ordschelist>
  35. <waitpatinfo>
  36. <waitpatlist/>
  37. </waitpatinfo>
  38. </main>
  39. <send>
  40. <pid/>
  41. <hngnm/>
  42. <cretno/>
  43. <orddd/>
  44. <orddeptcd/>
  45. <orddrid>-</orddrid>
  46. <userid>-</userid>
  47. </send>
  48. <send2>
  49. <ordflag>-</ordflag>
  50. <orddrid>-</orddrid>
  51. <orddeptcd/>
  52. <orddd/>
  53. </send2>
  54. <init/>
  55. <hidden>
  56. <msgrgst>
  57. <msg/>
  58. </msgrgst>
  59. <waitroommsg>
  60. <msg/>
  61. </waitroommsg>
  62. <orddrid>-</orddrid>
  63. </hidden>
  64. <temp>
  65. </temp>
  66. </root>
  67. </instance>
  68. <submission id="TRMNV21201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/masterinfo"/>
  69. <submission id="TRMNV21105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/usedeptinfo"/>
  70. <submission id="TRMNV21202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/detlinfo"/>
  71. <submission id="TRMNV21303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/ordschelist"/>
  72. <submission id="TRMNV21302" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/detlinfo"/>
  73. <submission id="TXMNV21001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/detlinfo"/>
  74. <submission id="TRMNV21304" mediatype="application/x-www-form-urlencoded" method="urlencoded-post" ref="/root/send2" resultref="/root/init/subdeptcd"/>
  75. <submission id="TRMNV21305" mediatype="application/x-www-form-urlencoded" method="urlencoded-post" ref="/root/send2" resultref="/root/main/waitpatinfo"/>
  76. </model>
  77. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  78. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  79. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  80. <script type="javascript">
  81. <![CDATA[
  82. function fDeptMstList() //진료과 선택시 대기자 리스트 가져오기
  83. {
  84. model.resetInstanceNode("/root/main/masterinfo/masterlist");
  85. model.resetInstanceNode("/root/main/usedeptinfo/usedeptlist");
  86. model.resetInstanceNode("/root/main/detlinfo/detllist");
  87. submit("TRMNV21201"); // 가야할 곳 마스터 조회
  88. submit("TRMNV21105"); // 진료/검사실 기준자료
  89. }
  90. function fSetMenuGroupSeq(toSeq, type) // 순서 변경 함수
  91. {
  92. var isSeq = grd_detllist.row; //클릭한 로우
  93. var fixRow = grd_detllist.fixedRows;
  94. if(isSeq > 0){ // 클릭한 로우가 존재할 때
  95. var srcSeq = (isSeq > toSeq) ? isSeq+1 : isSeq; //클릭한 행과 이동할 행을 비교하여 클릭한 행이 클 때는
  96. grd_detllist.insertRow(toSeq, type, false); // 이동할 위치에 행을 하나 삽입한다.
  97. model.copyNode("/root/main/detlinfo/detllist["+grd_detllist.row+"]", "/root/main/detlinfo/detllist["+srcSeq+"]");
  98. // alert("srcSeq위치에행을삭제한다"+srcSeq);
  99. grd_detllist.deleteRow(srcSeq, false);
  100. if(isSeq > toSeq){
  101. startRow = toSeq;
  102. endRow = isSeq;
  103. grd_detllist.row = startRow; //위로 올릴때 포커스는 시작점
  104. //alert("start"+startRow);
  105. if(isSeq==startRow) // 순서 위로 변경시 변경한 순서와 처음 순서가 같을 때
  106. {
  107. model.makeValue("/root/chkvalue/chk","Y");
  108. //alert("위"+model.getValue("/root/chkvalue/chk"));
  109. }
  110. }else{
  111. startRow = isSeq;
  112. endRow = toSeq;
  113. grd_detllist.row = endRow; //밑으로 내릴 때 포커스는 끝나는점
  114. //alert("end"+endRow);
  115. if(isSeq==endRow) // 순서 밑으로 변경시 변경한 순서와 처음 순서가 같을 때
  116. {
  117. model.makeValue("/root/chkvalue/chk","Y");
  118. //alert("아래"+model.getValue("/root/chkvalue/chk"));
  119. }
  120. }
  121. model.refresh();
  122. }else{
  123. messageBox("변경할 메뉴그룹을","C002");
  124. }
  125. }
  126. function fSchPatinfo() // 환자정보 조회
  127. {
  128. model.resetInstanceNode("/root/main/ordschelist");
  129. if(submit("TRMNV21303")){ // 대기자 리스트 조회
  130. var patcnt = getNodesetCount("/root/main/ordschelist/ordschelistinfo");
  131. if(patcnt==1) {
  132. model.setValue("/root/send/hngnm",model.getValue("/root/main/ordschelist/ordschelistinfo/hngnm"));
  133. model.setValue("/root/send/cretno",model.getValue("/root/main/ordschelist/ordschelistinfo/cretno"));
  134. model.setValue("/root/send/orddeptcd",model.getValue("/root/main/ordschelist/ordschelistinfo/orddeptcd"));
  135. model.setValue("/root/send/orddrid",'-');
  136. fDeptMstList();
  137. fOrdScheList();
  138. model.setValue("/root/send/orddrid",model.getValue("/root/main/ordschelist/ordschelistinfo/orddrid"));
  139. }else{
  140. model.setValue("/root/send/hngnm","");
  141. model.setValue("/root/send/cretno","");
  142. model.setValue("/root/send/orddeptcd","");
  143. model.resetInstanceNode("/root/main/detlinfo/detllist");
  144. messageBox("대기 환자만 적용 가능합니다","I");
  145. }
  146. }
  147. model.refresh();
  148. }
  149. function fOrdScheList() // 가야할 곳 리스트 조회
  150. {
  151. if (model.getValue("/root/send/pid")!="" && model.getValue("/root/send/orddeptcd")!="" ){
  152. model.resetInstanceNode("/root/main/detlinfo/detllist");
  153. submit("TRMNV21302"); // 가야할 곳 리스트 조회
  154. if(model.getValue("/root/main/detlinfo/saveflag/chkdone")!='-'){
  155. messageBox("완료된 건이 존재하는 환자입니다.", "I");
  156. }
  157. model.refresh();
  158. }else{
  159. messageBox("환자를 ","C002");
  160. }
  161. }
  162. function fOrdPatWaitSeqChng(){
  163. var ordtm = model.getValue("/root/main/ordschelist/ordschelistinfo/ordtm");
  164. var CurrentTime= getCurrentTime();
  165. CurrentTime = CurrentTime.substr(0,4) ;
  166. /*var curtm = */
  167. if (model.getValue("/root/send/pid")!="" && model.getValue("/root/send/orddeptcd")!="" ){
  168. for (i =1; i<grd_detllist.rows; i++ ) {
  169. var dispord = model.getValue("/root/main/detlinfo/detllist[" + i + "]/dispord");
  170. var chk = model.getValue("/root/main/detlinfo/detllist[" + i + "]/status");
  171. if (isNull(dispord)) {
  172. messageBox("Plz, Insert the Display Order", "I");
  173. return;
  174. }
  175. // var status = model.getValue("/root/main/detlinfo/detllist[" + i + "]/status");
  176. if(chk != '완료' && grd_detllist.rowStatus(i) !=4 ){
  177. grd_detllist.rowStatus(i) = 1;
  178. }
  179. if(model.getValue("/root/main/detlinfo/detllist[" + i + "]/ordtm")==""){
  180. model.setValue("/root/main/detlinfo/detllist[" + i + "]/ordtm",ordtm);
  181. }
  182. }
  183. grd_detllist.refresh();
  184. if(CurrentTime <= '1230'){
  185. var dayflag = "A";
  186. }else if(CurrentTime >= '1230'){
  187. var dayflag = "P";
  188. }
  189. if(ordtm <= '1230'){
  190. var ordflag = "A";
  191. }else if(ordtm >= '1230'){
  192. var ordflag = "P";
  193. }
  194. if(dayflag != ordflag){
  195. messageBox("환자의 예약 시간이 현재 적용하려는 진료실 구분과 다릅니다.", "I");
  196. model.resetInstanceNode("/root/main/detlinfo/detllist");
  197. return;
  198. }
  199. model.makeValue("/root/send/savedata", grd_detllist.getUpdateData()); // 분류코드의 업데이트 된 내용을 savedata에 넣는다
  200. submit("TXMNV21001");
  201. var existroomyn = model.getValue("/root/main/detlinfo/detllist[1]/existroomyn");
  202. if(existroomyn=="N"){
  203. var ordroomnm = model.getValue("/root/main/detlinfo/detllist[1]/ordroomnm");
  204. messageBox("["+ordroomnm+"] 요일 마스터를 확인하세요", "I");
  205. model.resetInstanceNode("/root/main/detlinfo/detllist");
  206. }
  207. if(model.getValue("/root/main/detlinfo/detllist[1]/status")=="C"){
  208. messageBox("완료된 건이 존재하여 수정할 수 없는 환자입니다.", "I");
  209. }
  210. }
  211. }
  212. ]]>
  213. </script>
  214. <script type="javascript" ev:event="xforms-ready">
  215. <![CDATA[
  216. var spid = model.getValue("/root/hidden/target/pid");
  217. var CurrentDate = getCurrentDate();
  218. model.setValue("/root/send/orddd",CurrentDate);
  219. model.setValue("/root/send/orddrid","-");
  220. model.setValue("/root/send/userid","-");
  221. var dutplcecd=getUserInfo("dutplcecd");
  222. // dutplcecd='2120000000';
  223. model.setValue("/root/send2/orddd",CurrentDate);
  224. model.setValue("/root/send2/orddeptcd",dutplcecd);
  225. model.setValue("/root/send2/orddrid","-");
  226. // 진료과 선택시 담당의, 세부진료과, 담당직원 가져오는 코드 셋팅
  227. if(submit("TRMNV21304")==true){
  228. model.makeValue("/root/init/temp/subdeptcd/orddeptdrcdlist/orddeptdrid","-");
  229. model.makeValue("/root/init/temp/subdeptcd/orddeptdrcdlist/orddeptdrnm","");
  230. copyNodesetType("/root/init/subdeptcd/orddeptdrcdlist", "/root/init/temp/subdeptcd/orddeptdrcdlist", "before");
  231. }
  232. button3.dispatch("DOMActivate");
  233. if (spid != null && spid != "") {
  234. model.setValue("/root/send/pid",model.getValue("/root/hidden/target/pid"));
  235. model.setValue("/root/send/hngnm",model.getValue("/root/hidden/target/hngnm"));
  236. model.setValue("/root/send/cretno",model.getValue("/root/hidden/target/cretno"));
  237. model.setValue("/root/send/orddeptcd",model.getValue("/root/hidden/target/orddeptcd"));
  238. fDeptMstList();
  239. fOrdScheList();
  240. } else {
  241. // 상단정보체크
  242. var paminfo = getGlobalVariable("paminfo"); //프로그램에 따라 원무정보(paminfo), 환자기본정보(patflag) get
  243. if(paminfo.length > 0) {//원무 정보(기본 정보)가 있는 경우
  244. model.removenode("/root/main/paminfo");
  245. model.makeNode("/root/main/paminfo");
  246. setCSVToNode("/root/main/paminfo", paminfo);
  247. var pid = model.getValue("/root/main/paminfo/list/pid");
  248. var hngnm = model.getValue("/root/main/paminfo/list/hngnm");
  249. var cretno = model.getValue("/root/main/paminfo/list/cretno");
  250. var orddeptcd = model.getValue("/root/main/paminfo/list/orddeptcd");
  251. model.setValue("/root/send/pid",pid);
  252. model.setValue("/root/send/hngnm",hngnm);
  253. model.setValue("/root/send/cretno",cretno);
  254. model.setValue("/root/send/orddeptcd",orddeptcd);
  255. if(!isNull(pid)){
  256. fSchPatinfo();
  257. }
  258. }
  259. // else {
  260. // var pid ="19510760";
  261. // var orddeptcd ="2120000000";
  262. //
  263. // model.setValue("/root/send/pid",pid);
  264. // model.setValue("/root/send/hngnm","");
  265. // model.setValue("/root/send/cretno","1");
  266. // model.setValue("/root/send/orddeptcd",orddeptcd);
  267. //
  268. // fDeptMstList();
  269. // fOrdScheList();
  270. // }
  271. }
  272. model.refresh();
  273. ]]>
  274. </script>
  275. </xhtml:head>
  276. <xhtml:body pagewidth="750" pageheight="890">
  277. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" style="left:0px; top:604px; width:733px; height:35px; "/>
  278. <group id="group2" style="left:0px; top:0px; width:735px; height:585px; ">
  279. <datagrid id="grd_detllist" nodeset="/root/main/detlinfo/detllist" caption="순서^가야할 곳(리스트)^구분^진료실^ordroomcd^orddeptcd^seqno^pid^orddd^cretno^mainseqno^patnm^orddrid^status^ordtm" colsep="^" colwidth="30,150,50,90,0,0,0,0,0,0,0,0,0,0,0" dataheight="25" extendlastcol="scroll" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:1px; top:106px; width:364px; height:473px; ">
  280. <col ref="dispord" style="left:20px; top:23px; width:98px; height:18px; text-align:center; "/>
  281. <col ref="roomnm" style="text-align:center; "/>
  282. <col disabled="true" ref="roomtype" type="combo">
  283. <choices>
  284. <item>
  285. <label>오전</label>
  286. <value>A</value>
  287. </item>
  288. <item>
  289. <label>오후</label>
  290. <value>P</value>
  291. </item>
  292. <item>
  293. <label>전체</label>
  294. <value>D</value>
  295. </item>
  296. <item>
  297. <label>진료</label>
  298. <value>O</value>
  299. </item>
  300. <item>
  301. <label>검사실</label>
  302. <value>T</value>
  303. </item>
  304. </choices>
  305. </col>
  306. <col ref="ordroomnm"/>
  307. <col ref="ordroomcd" visibility="hidden"/>
  308. <col ref="orddeptcd" visibility="hidden"/>
  309. <col ref="subseqno" visibility="hidden"/>
  310. <col ref="pid" visibility="hidden"/>
  311. <col ref="orddd" visibility="hidden"/>
  312. <col ref="cretno" visibility="hidden"/>
  313. <col ref="mainseqno" visibility="hidden"/>
  314. <col ref="patnm" visibility="hidden"/>
  315. <col ref="orddrid" visibility="hidden"/>
  316. <col ref="status" visibility="hidden"/>
  317. <col ref="ordtm" visibility="hidden"/>
  318. </datagrid>
  319. <caption id="caption20" class="tit_2" style="left:374px; top:89px; width:118px; height:13px; ">가야할 곳 제목</caption>
  320. <caption id="caption3" class="tit_2" style="left:373px; top:372px; width:211px; height:13px; ">진료/검사실 기준자료(추가)</caption>
  321. <button id="button9" class="icon_top_direction" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:216px; top:84px; width:26px; height:19px; background-image:../../../com/commonweb/images/btn_send_up.gif; ">
  322. <caption/>
  323. <script type="javascript" ev:event="DOMActivate">
  324. <![CDATA[
  325. if(grd_detllist.row<=0)
  326. {
  327. messageBox("환자를 선택","I008");
  328. return;
  329. }
  330. if (grd_detllist.row <= 1 ) {
  331. messageBox("최상위입니다.","I");
  332. } else {
  333. var chk = grd_detllist.valueMatrix(grd_detllist.row,grd_detllist.colRef("status"));
  334. var nextchk = grd_detllist.valueMatrix(grd_detllist.row-1,grd_detllist.colRef("status"));
  335. if( chk != '완료' &&nextchk !='완료'){
  336. fSetMenuGroupSeq(grd_detllist.row-1, "above");
  337. }else{
  338. messageBox("이미 완료된 건입니다.","I");
  339. }
  340. }
  341. ]]>
  342. </script>
  343. <hint>
  344. <![CDATA[위로]]>
  345. </hint>
  346. </button>
  347. <line id="line2" class="line_1" style="x1:371px; y1:105px; x2:733px; y2:105px; "/>
  348. <datagrid id="grd_masterlist" nodeset="/root/main/masterinfo/masterlist" caption="번호^담당의^가야할 곳 (제목)" colsep="^" colwidth="0, 90, 230" dataheight="25" explorerbar="sort" extendlastcol="scroll" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:371px; top:108px; width:362px; height:259px; ">
  349. <col ref="mainseqno" visibility="hidden" style="left:20px; top:23px; width:98px; height:18px; text-align:center; "/>
  350. <col ref="usernm" style="text-align:center; "/>
  351. <col ref="titl" style="text-align:center; "/>
  352. <script type="javascript" ev:event="ondblclick">
  353. <![CDATA[
  354. var pid = model.getValue("/root/send/pid");
  355. var orddd = model.getValue("/root/send/orddd");
  356. var cretno= model.getValue("/root/send/cretno");
  357. var patnm= model.getValue("/root/send/hngnm");
  358. var orddrid= model.getValue("/root/send/orddrid");
  359. var ordtm = model.getValue("/root/main/ordschelist/ordschelistinfo/ordtm");
  360. var chkdone = getNodesetCount("/root/main/detlinfo/saveflag/chkdone");
  361. var saveflag = '-';
  362. if(chkdone>0){
  363. var saveflag = model.getValue("/root/main/detlinfo/saveflag/chkdone");
  364. }
  365. if (isDataCell() == true && model.getValue("/root/send/pid")!="" && model.getValue("/root/send/orddeptcd")!="" && (saveflag == "-"||saveflag =="")){
  366. model.makeNode("/root/send/reqdata/mainseqno");
  367. model.setValue("/root/send/reqdata/mainseqno", model.getValue("/root/main/masterinfo/masterlist[" + grd_masterlist.row + "]/mainseqno"));
  368. model.resetInstanceNode("/root/main/detlinfo/detllist");
  369. submit("TRMNV21202"); // 가야할곳 마스터 클릭시 상세 리스트 조회
  370. for (i =1; i<grd_detllist.rows; i++ ) {
  371. model.makeValue("/root/main/detlinfo/detllist["+i+"]/pid",pid);
  372. model.makeValue("/root/main/detlinfo/detllist["+i+"]/orddd",orddd);
  373. model.makeValue("/root/main/detlinfo/detllist["+i+"]/cretno",cretno);
  374. model.makeValue("/root/main/detlinfo/detllist["+i+"]/patnm",patnm);
  375. model.makeValue("/root/main/detlinfo/detllist["+i+"]/orddrid",orddrid);
  376. model.makeValue("/root/main/detlinfo/detllist["+i+"]/ordtm",ordtm);
  377. }
  378. model.refresh();
  379. }else{
  380. if(saveflag != "-"){
  381. return;
  382. }else{
  383. messageBox("환자를 선택","I008");
  384. }
  385. }
  386. ]]>
  387. </script>
  388. </datagrid>
  389. <button id="btn_to_down" class="icon_bottom_direction" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:246px; top:84px; width:26px; height:19px; background-image:../../../com/commonweb/images/btn_send_down.gif; ">
  390. <caption/>
  391. <script type="javascript" ev:event="DOMActivate">
  392. <![CDATA[
  393. if(grd_detllist.row<=0)
  394. {
  395. messageBox("환자를 선택","I008");
  396. return;
  397. }
  398. if( grd_detllist.rows-grd_detllist.fixedRows > grd_detllist.row )
  399. {
  400. var chk = grd_detllist.valueMatrix(grd_detllist.row,grd_detllist.colRef("status"));
  401. var nextchk = grd_detllist.valueMatrix(grd_detllist.row+1,grd_detllist.colRef("status"));
  402. if( chk != '완료' && nextchk !='완료'){
  403. fSetMenuGroupSeq(grd_detllist.row+1, "below");
  404. }else{
  405. messageBox("이미 완료된 건입니다.","I");
  406. }
  407. }
  408. else
  409. {
  410. messageBox("최하위 메뉴그룹이","E005");
  411. }
  412. ]]>
  413. </script>
  414. <hint>
  415. <![CDATA[아래로]]>
  416. </hint>
  417. </button>
  418. <caption id="caption7" class="tit_2" style="left:3px; top:89px; width:118px; height:13px; ">환자별 가야할 곳</caption>
  419. <line id="line4" class="line_1" style="x1:370px; y1:388px; x2:732px; y2:388px; "/>
  420. <button id="button12" class="btn5_letter2" disable.background-image="../../../com/commonweb/images/dis_btn2_letter4.gif" style="left:321px; top:84px; width:42px; height:19px; font-weight:bold; background-image:../../../com/commonweb/images/btn2_letter4.gif; ">
  421. <caption>저장</caption>
  422. <script type="javascript" ev:event="DOMActivate">
  423. <![CDATA[
  424. fOrdPatWaitSeqChng();
  425. button3.dispatch("DOMActivate");
  426. ]]>
  427. </script>
  428. </button>
  429. <line id="line5" class="line_1" style="x1:2px; y1:105px; x2:366px; y2:105px; "/>
  430. <datagrid id="grd_room" nodeset="/root/main/usedeptinfo/usedeptlist" caption="구분^진료/검사실명^seq^orddeptcd" colsep="^" colwidth="100, 220,0,0" dataheight="25" explorerbar="sort" extendlastcol="scroll" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:370px; top:391px; width:362px; height:190px; ">
  431. <col disabled="true" ref="ampmflag" type="combo">
  432. <choices>
  433. <item>
  434. <label>오전</label>
  435. <value>A</value>
  436. </item>
  437. <item>
  438. <label>오후</label>
  439. <value>P</value>
  440. </item>
  441. <item>
  442. <label>전체</label>
  443. <value>D</value>
  444. </item>
  445. <item>
  446. <label>진료</label>
  447. <value>O</value>
  448. </item>
  449. <item>
  450. <label>검사실</label>
  451. <value>T</value>
  452. </item>
  453. </choices>
  454. </col>
  455. <col ref="roomnm"/>
  456. <col ref="seqno" visibility="hidden"/>
  457. <col ref="orddeptcd" visibility="hidden"/>
  458. <script type="javascript" ev:event="ondblclick">
  459. <![CDATA[
  460. if (isDataCell() == true && model.getValue("/root/send/pid")!="" && model.getValue("/root/send/orddeptcd")!="" ){
  461. var row = grd_room.row;
  462. var ordroomcd = model.getValue("/root/main/usedeptinfo/usedeptlist[" + row + "]/seqno");
  463. var roomnm = model.getValue("/root/main/usedeptinfo/usedeptlist[" + row + "]/roomnm");
  464. var orddeptcd = model.getValue("/root/main/usedeptinfo/usedeptlist[" + row + "]/orddeptcd");
  465. var roomtype = model.getValue("/root/main/usedeptinfo/usedeptlist[" + row + "]/ampmflag");
  466. var pid = model.getValue("/root/send/pid");
  467. var orddd = model.getValue("/root/send/orddd");
  468. var cretno= model.getValue("/root/send/cretno");
  469. var patnm= model.getValue("/root/send/hngnm");
  470. var orddrid= model.getValue("/root/send/orddrid");
  471. var ordtm = model.getValue("/root/main/ordschelist/ordschelistinfo/ordtm");
  472. grd_detllist.addRow();
  473. grd_detllist.colDisabled(grd_detllist.colRef("roomtype")) = true;
  474. var roomrow = grd_detllist.rows -1;
  475. if(grd_detllist.rows>1){
  476. var mainseqno = grd_detllist.valueMatrix(grd_detllist.rows-2,grd_detllist.colRef("mainseqno"));
  477. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/mainseqno" , mainseqno);
  478. }
  479. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/dispord" , roomrow+1);
  480. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/ordroomcd" , ordroomcd);
  481. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/roomnm" , roomnm);
  482. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/orddeptcd" , orddeptcd);
  483. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/roomtype" , roomtype);
  484. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/pid" , pid);
  485. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/orddd" , orddd);
  486. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/cretno" , cretno);
  487. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/patnm" , patnm);
  488. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/orddrid" , orddrid);
  489. model.setValue("/root/main/detlinfo/detllist[" + roomrow + "]/ordtm" , ordtm);
  490. } else {
  491. messageBox("환자를 선택","I008");
  492. }
  493. ]]>
  494. </script>
  495. </datagrid>
  496. <group id="grp_sea" style="left:0px; top:0px; width:733px; height:58px; vertical-align:top; ">
  497. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:18px; width:733px; height:33px; "/>
  498. <button id="button1" class="btn1_letter2" navindex="5" style="left:660px; top:24px; width:56px; height:22px; ">
  499. <caption>조회</caption>
  500. <script type="javascript" ev:event="DOMActivate">
  501. <![CDATA[
  502. fOrdScheList();
  503. ]]>
  504. </script>
  505. </button>
  506. <line id="line3" class="line_4" style="x1:575px; y1:23px; x2:575px; y2:49px; "/>
  507. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:185px; height:14px; ">환자별 가야할 곳 적용</caption>
  508. <input id="ipt_pid" ref="/root/send/pid" style="left:103px; top:25px; width:100px; height:19px; ">
  509. <script type="javascript" ev:event="onkeypress">
  510. <![CDATA[
  511. if (event.keyCode == "13")
  512. {
  513. setInputNodeCurText();
  514. var pid = model.getValue("/root/send/pid");
  515. if(!isNull(pid)){
  516. fSchPatinfo();
  517. }else{
  518. messageBox("대기환자만 적용 가능합니다","I");
  519. }
  520. }
  521. ]]>
  522. </script>
  523. </input>
  524. <caption id="caption2" class="search_name" style="left:13px; top:26px; width:100px; height:17px; ">등록번호 :</caption>
  525. <output id="ipt_hngnm" ref="/root/send/hngnm" class="output_fix" disabled="true" appearance="output" style="left:210px; top:26px; width:100px; height:19px; "/>
  526. <button id="button8" class="btn2_letter9" style="left:325px; top:25px; width:119px; height:19px; ">
  527. <caption>상단환자 정보 연동</caption>
  528. <script type="javascript" ev:event="DOMActivate">
  529. <![CDATA[
  530. // 상단정보체크
  531. var paminfo = getGlobalVariable("paminfo"); //프로그램에 따라 원무정보(paminfo), 환자기본정보(patflag) get
  532. if(paminfo.length > 0) {//원무 정보(기본 정보)가 있는 경우
  533. model.removenode("/root/main/paminfo");
  534. model.makeNode("/root/main/paminfo");
  535. setCSVToNode("/root/main/paminfo", paminfo);
  536. var pid = model.getValue("/root/main/paminfo/list/pid");
  537. var hngnm = model.getValue("/root/main/paminfo/list/hngnm");
  538. var cretno = model.getValue("/root/main/paminfo/list/cretno");
  539. var orddeptcd = model.getValue("/root/main/paminfo/list/orddeptcd");
  540. model.setValue("/root/send/pid",pid);
  541. model.setValue("/root/send/hngnm",hngnm);
  542. model.setValue("/root/send/cretno",cretno);
  543. model.setValue("/root/send/orddeptcd",orddeptcd);
  544. if(!isNull(pid)){
  545. fSchPatinfo();
  546. }else{
  547. messageBox("대기환자만 적용 가능합니다","I");
  548. }
  549. }
  550. ]]>
  551. </script>
  552. </button>
  553. </group>
  554. <button id="button2" class="btn2_letter2" disable.background-image="../../../com/commonweb/images/dis_btn2_letter4.gif" style="left:276px; top:84px; width:42px; height:19px; font-weight:bold; background-image:../../../com/commonweb/images/btn2_letter4.gif; ">
  555. <caption>삭제</caption>
  556. <script type="javascript" ev:event="DOMActivate">
  557. <![CDATA[
  558. if(grd_detllist.row<=0)
  559. {
  560. messageBox("환자를 선택","I008");
  561. return;
  562. }
  563. var chk = grd_detllist.valueMatrix(grd_detllist.row,grd_detllist.colRef("status"));
  564. if( chk != '완료' || isNull(chk)){
  565. grd_detllist.rowStatus(grd_detllist.row) =4;
  566. }else{
  567. messageBox("이미 완료된 건입니다.","I");
  568. }
  569. ]]>
  570. </script>
  571. </button>
  572. <output id="pid" ref="/root/main/ordschelist/ordschelistinfo/pid" class="output_fix" navindex="1" appearance="output" style="left:61px; top:56px; width:87px; height:19px; text-align:center; "/>
  573. <output id="hngnm" ref="/root/main/ordschelist/ordschelistinfo/hngnm" class="output_fix" navindex="2" imemode="hangul" appearance="output" style="left:148px; top:56px; width:82px; height:19px; text-align:center; "/>
  574. <output id="sa" ref="/root/main/ordschelist/ordschelistinfo/sa" class="output_fix" appearance="output" style="left:230px; top:56px; width:72px; height:19px; text-align:center; "/>
  575. <output id="rrgstno" ref="/root/main/ordschelist/ordschelistinfo/rrgstno" class="output_fix" navindex="5" appearance="output" maxlength="6" style="left:302px; top:56px; width:113px; height:19px; text-align:center; "/>
  576. <caption id="caption85" class="cell_1" style="left:0px; top:56px; width:60px; height:20px; vertical-align:middle; ">환자정보</caption>
  577. <caption id="caption1" class="cell_1" style="left:416px; top:56px; width:60px; height:20px; vertical-align:middle; ">진료정보</caption>
  578. <output id="orddrnm" ref="/root/main/ordschelist/ordschelistinfo/orddrnm" class="output_fix" appearance="output" style="left:477px; top:56px; width:70px; height:19px; text-align:center; "/>
  579. <output id="ordtm" ref="/root/main/ordschelist/ordschelistinfo/ordtm" class="output_fix" appearance="output" style="left:671px; top:56px; width:61px; height:19px; text-align:center; "/>
  580. <caption id="caption4" class="cell_1" style="left:611px; top:56px; width:60px; height:20px; vertical-align:middle; ">예약시간</caption>
  581. <output id="fsexamnm" ref="/root/main/ordschelist/ordschelistinfo/fsexamnm" class="output_fix" appearance="output" style="left:547px; top:56px; width:61px; height:19px; text-align:center; "/>
  582. </group>
  583. <button id="button3" class="btn1_letter2" navindex="5" style="left:655px; top:613px; width:56px; height:22px; ">
  584. <caption>조회</caption>
  585. <script type="javascript" ev:event="DOMActivate">
  586. <![CDATA[
  587. submit("TRMNV21305"); // 가야할 곳 미등록 대기환자 리스트 조회
  588. model.refresh();
  589. ]]>
  590. </script>
  591. </button>
  592. <caption id="caption5" class="search_name" style="left:8px; top:613px; width:100px; height:17px; ">진료구분 :</caption>
  593. <line id="line1" class="line_4" style="x1:570px; y1:609px; x2:570px; y2:637px; "/>
  594. <caption id="caption8" class="tit_2" style="left:0px; top:588px; width:175px; height:13px; ">가야할 곳 미등록 대기환자</caption>
  595. <datagrid id="datagrid1" nodeset="/root/main/waitpatinfo/waitpatlist" caption="진료의^예약시간^도착시간^특이^특이^특이^특이^등록번호^환자명^S/A^초진^재진차트^재진차트^Remark" colsep="^" colwidth="75, 55, 55, 30, 30, 30, 30, 80, 85, 50, 50, 30, 30, 80" dataheight="25" explorerbar="sort" extendlastcol="scroll" frozencols="5" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" style="left:5px; top:643px; width:725px; height:175px; ">
  596. <col ref="orddrnm" style="text-align:center; "/>
  597. <col ref="ordtm" style="text-align:center; "/>
  598. <col ref="nursacptdt"/>
  599. <col ref="grdevipyn"/>
  600. <col ref="grdereferyn"/>
  601. <col ref="grde"/>
  602. <col disabled="true" ref="uncoamtyn" type="combo" visibility="hidden">
  603. <choices>
  604. <item>
  605. <label>$</label>
  606. <value>Y</value>
  607. </item>
  608. </choices>
  609. </col>
  610. <col ref="pid"/>
  611. <col ref="hngnm"/>
  612. <col ref="sa"/>
  613. <col ref="fsexamnm"/>
  614. <col ref="chrtflag"/>
  615. <col ref="chrtflage"/>
  616. <col ref="telrsrvrem"/>
  617. <script type="javascript" ev:event="ondblclick">
  618. <![CDATA[
  619. var pid = datagrid1.valueMatrix(datagrid1.row,datagrid1.colRef("pid"));
  620. if (isDataCell() == true && pid !=""){
  621. model.setValue("/root/send/pid",pid);
  622. fSchPatinfo();
  623. }else{
  624. messageBox("환자를 선택","I008");
  625. }
  626. ]]>
  627. </script>
  628. </datagrid>
  629. <select1 id="rdo_ordflag" ref="/root/send2/ordflag" navindex="7" appearance="full" cols="3" overflow="visible" style="left:105px; top:613px; width:130px; height:20px; border-style:none; ">
  630. <choices>
  631. <item>
  632. <label>오전</label>
  633. <value>A</value>
  634. </item>
  635. <item>
  636. <label>오후</label>
  637. <value>P</value>
  638. </item>
  639. <item>
  640. <label>전체</label>
  641. <value>-</value>
  642. </item>
  643. </choices>
  644. </select1>
  645. <select1 id="cmb_orddrid" ref="/root/send2/orddrid" navindex="8" appearance="minimal" style="left:335px; top:613px; width:100px; height:19px; ">
  646. <choices>
  647. <itemset nodeset="/root/init/subdeptcd/orddeptdrcdlist">
  648. <label ref="orddeptdrnm"/>
  649. <value ref="orddeptdrid"/>
  650. </itemset>
  651. </choices>
  652. </select1>
  653. <caption id="caption9" class="search_name" style="left:260px; top:613px; width:90px; height:17px; ">담당의 :</caption>
  654. <button id="button16" class="btn3_letter11" style="left:570px; top:82px; width:164px; height:22px; ">
  655. <caption>가야할 곳 기준자료 등록</caption>
  656. <script type="javascript" ev:event="DOMActivate">
  657. <![CDATA[
  658. modal("SPMNV21200","1","1","1","SPMNV21200","","","","false");
  659. ]]>
  660. </script>
  661. </button>
  662. <caption id="caption15" style="left:0px; top:825px; width:730px; height:60px; font-weight:normal; background-color:#ffff99; ">
  663. <![CDATA[1. '가야할 곳 미등록 대기환자' 리스트 더블 클릭 또는 등록번호 직접 입력하여 '환자별 가야할 곳' 적용 가능함.
  664. ('가야할 곳 미등록 대기환자'는 전광판 대기자리스트에 조회되지 않음)
  665. 2. '가야할 곳 제목' 더블 클릭 후 '환자별 가야할 곳' 저장 즉시 가야할 곳 순서대로 전광판 대기자리스트 조회됨.
  666. 3. '환자별 가야할곳'추가(진료/검사실명 더블클릭)/삭제 시 개인별 수정적용되며, '가야할곳 기준자료'내용은 변경되지 않음.]]>
  667. </caption>
  668. <select1 id="combo1" ref="/root/hidden/orddrid" navindex="8" appearance="minimal" style="left:488px; top:83px; width:80px; height:19px; ">
  669. <choices>
  670. <itemset nodeset="/root/init/subdeptcd/orddeptdrcdlist">
  671. <label ref="orddeptdrnm"/>
  672. <value ref="orddeptdrid"/>
  673. </itemset>
  674. </choices>
  675. <script type="javascript" ev:event="xforms-value-changed">
  676. <![CDATA[
  677. var orddrid = model.getValue("/root/hidden/orddrid");
  678. var orgorddrid = model.getValue("/root/send/orddrid");
  679. model.setValue("/root/send/orddrid",orddrid);
  680. model.resetInstanceNode("/root/main/masterinfo/masterlist");
  681. submit("TRMNV21201"); // 가야할 곳 마스터 조회
  682. model.setValue("/root/send/orddrid",orgorddrid);
  683. ]]>
  684. </script>
  685. </select1>
  686. </xhtml:body>
  687. </xhtml:html>