/** - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩ 진료지원 - 검사실대기환자현황(17) ( SMMNV00100_검사실대기환자현황(17).xrw - JScript ) - Version : 1) : Ver.1.00.01 - Author : 이창록 - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩ **/ var inquiryTime = 5 * 1000 ; // 5초 (재조회시간) var clockTime = 100 ; // 1초 (시계) var clockID ; var DispItemSrch ; var testview; var inquiryID; var paramipaddr=""; var paramorddeptcd=""; var paramexp=""; var gTimerID; var gIntervalTime = 500; var gTimeCnt; var leftsize; var copyNodeCnt; var mainNodeCnt; var nextPatListSrch; var cnt; var testmsg; var testmsgtm; /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : 대기안내 환자조회화면초기화 * @param : * @param : * @return : * @--------------------------------------------------- */ function fInitialize(){ cnt = 5;//default로 보여주는 row수 setWindowSize(); clockID = window.setInterval("clock();" , clockTime); //1초 DispItemSrch = window.setInterval("fOrdRoomDispItemSrch(cnt)", 5000); //100) ; //10초 } /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : DataTime 조회. * @param : * @param : * @return : * @--------------------------------------------------- */ function clock(){ var tdate = getCurrentDateTime().substring(0, 4) + "년 " + getCurrentDateTime().substring(4, 6) + "월 " + getCurrentDateTime().substring(6, 8) + "일 " + getCurrentDate().toDate().getDayOfWeek("K") + "요일 "; var ttime = getCurrentDateTime().substring(8, 11) + ":" + getCurrentDateTime().substring(11, 13); model.setValue("/root/hidden/date", tdate) ; model.setValue("/root/hidden/time", ttime) ; model.refresh(); } /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : 전광판에 표시할 항목 조회. * @param : * @param : * @return : * @--------------------------------------------------- */ function fOrdRoomDispItemSrch(Parm_Cnt){ if(checkOpener()){ paramipaddr =opener.javascript.getParameter("paramipaddr"); paramorddeptcd =opener.javascript.getParameter("paramorddeptcd"); }else{ paramipaddr =getUserInfo("ipaddr"); paramorddeptcd =getUserInfo("dutplcecd"); } model.makeValue("/root/send/reqdata/orddeptcd" ,paramorddeptcd); model.makeValue("/root/send/reqdata/ipaddr" ,paramipaddr); model.makeValue("/root/send/reqdata/dispflag" ,"S"); if(submit("TRMNV00101")){ var waitimgdispyn = model.getValue("/root/init/ordroominfo/ordroomdispiteminfo/waitimgdispyn"); var orddeptnm = model.getValue("/root/init/ordroominfo/ordroomdispiteminfo/orddeptnm"); if(orddeptnm!=model.getValue("/root/main/cond/ordroominfo/orddeptnm")){ model.setValue("/root/main/cond/ordroominfo/orddeptnm",orddeptnm); } var grd_cols = model.getValue("/root/init/ordroominfo/grddispinfo/grd_cols"); var grdDispCols = grd_cols.split("^").length; var bodyobj = document.body; var instnode = instance1.selectNodes("/root/init/ordroominfo/ordroompatlist"); model.removeNodeset("root/nodeinfo/ordroominfo/ordroompatlist"); model.makeNode("root/nodeinfo/ordroominfo/ordroompatlist"); for(var j =0; j <=instnode.length;j++){ var dispcol0 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol0"); var dispcol1 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol1"); var dispcol2 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol2"); var dispcol3 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol3"); var dispcol4 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol4"); var dispcol5 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol5"); var dispcol6 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol6"); var dispcol7 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol7"); var dispcol8 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol8"); var dispcol9 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol9"); var dispcol10 = model.getValue("/root/init/ordroominfo/ordroompatlist["+j+"]/dispcol10"); if(dispcol0!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol0",dispcol0); } if(dispcol1!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol1",dispcol1); } if(dispcol2!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol2",dispcol2); } if(dispcol3!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol3",dispcol3); } if(dispcol4!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol4",dispcol4); } if(dispcol5!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol5",dispcol5); } if(dispcol6!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol6",dispcol6); } if(dispcol7!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol7",dispcol7); } if(dispcol8!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol8",dispcol8); } if(dispcol9!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol9",dispcol9); } if(dispcol10!=""){ model.makeValue("/root/nodeinfo/ordroominfo/ordroompatlist["+j+"]/dispcol10",dispcol10); } } var bfcnt = model.getValue("/root/tmp/colsizeinfo/bfcnt"); if(grd_ordroompatlist.caption != grd_cols){ if(bfcnt!=grdDispCols){ bfcnt=bfcnt; }else{ bfcnt=grdDispCols; } for(var i=0;i <=bfcnt;i++){ var cap_id="cap_dispcol"+i; bodyobj.removeChild(cap_id); } if(grdDispCols==2){ var pWidTh=624; var pLeft =624; }else if(grdDispCols==3){ var pWidTh=416; var pLeft =416; }else if(grdDispCols==4){ var pWidTh=312; var pLeft =312; }else if(grdDispCols==5){ var pWidTh=250; var pLeft =250; }else if(grdDispCols==6){ var pWidTh=212; var pLeft =212; }else{ var pWidTh=193; var pLeft =185; } for(var i=0;i Parm_Cnt ){ NodeinfoCnt=Parm_Cnt; } // 기본적으로 5 row setting for(var cnt =1;cnt <=NodeinfoCnt;cnt++){ if(cnt==1){ copyNodesetType("root/main/ordroominfo/ordroompatlist","/root/nodeinfo/ordroominfo/ordroompatlist["+cnt+"]","replace"); }else{ copyNodesetType("root/main/ordroominfo/ordroompatlist","/root/nodeinfo/ordroominfo/ordroompatlist["+cnt+"]","after"); } } grd_ordroompatlist.dataHeight=124; var BeGrdCcnt = model.getValue("/root/temp/grid/begrddcnt"); var GrdCnt =getNodesetCount("/root/main/ordroominfo/ordroompatlist"); //grd_ordroompatlist.rebuildStyle(); grd_ordroompatlist.rebuild(); //if(GrdCnt!=BeGrdCcnt){ //grd_ordroompatlist.rebuildStyle(); //} for(var k =1;k<=GrdCnt;k++){ var sDispcol9 = grd_ordroompatlist.valueMatrix(k,grd_ordroompatlist.colRef("dispcol9")); var cmt1 = "검사중"; var cmt2 = "진료중입니다."; if(sDispcol9!=""){ if((sDispcol9==cmt1)||(sDispcol9==cmt2)){ grd_ordroompatlist.rowstyle(k,"data", "background-color") = "#660000"; }else{ grd_ordroompatlist.rowstyle(k,"data", "background-color") = "#000044"; } }else{ grd_ordroompatlist.rowstyle(k,"data", "background-color") = "#000044"; } grd_ordroompatlist.rowstyle(k,"data", "color") = "#ffffff"; grd_ordroompatlist.rowstyle(k,"data", "font-family") = "HY각헤드라인M"; grd_ordroompatlist.rowstyle(k,"data", "font-size") = "40pt"; grd_ordroompatlist.rowstyle(k,"data", "text-align") = "center"; } model.removeNodeset("/root/temp/grid/begridcnt"); model.makeValue("/root/temp/grid/begrddcnt",GrdCnt); model.removeNodeset("root/main_copy/ordroominfo/ordroompatlist"); model.makeNode("root/main_copy/ordroominfo/ordroompatlist"); var RollTestMsg = model.getValue("/root/init/ordroominfo/msginfo/testroompatmsglist[1]/msg"); var RollTestMsgFromTm = model.getValue("/root/init/ordroominfo/msginfo/testroompatmsglist[1]/msgfromtm"); var RollTestMsgToTm = model.getValue("/root/init/ordroominfo/msginfo/testroompatmsglist[1]/msgtotm"); var CurrenTm = getCurrentTime().substr(0,4); if((RollTestMsg!="")&&(RollTestMsgFromTm!="9999")&&(RollTestMsgToTm!="9999")){ if((RollTestMsgFromTm <=CurrenTm)&&(RollTestMsgToTm >=CurrenTm)){ model.setValue("/root/hidden/callmsg",RollTestMsg); }else{ model.setValue("/root/hidden/callmsg",model.getValue("/root/init/ordroominfo/msginfo/testroompatmsglist[2]/msg")); } }else{ model.setValue("/root/hidden/callmsg",model.getValue("/root/init/ordroominfo/msginfo/testroompatmsglist/msg")); } copyNodesetType("root/main_copy/ordroominfo/ordroompatlist","/root/main/ordroominfo/ordroompatlist","replace"); } model.refresh(); fMsgMove(); } /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : 전광판 깜박걸림 표시 * @param : * @param : * @return : * @--------------------------------------------------- */ function fViewRow(){ var col = model.instance1.selectSingleNode("/root/main/ordroominfo/ordroompatlist"); var childNodeList = col.childNodes; var childNode; var cnt=1; window.clearInterval(gTimerID); gTimerID = window.setInterval("fViewRow()", gIntervalTime); if(gTimeCnt%2 == 0){ while( childNode = childNodeList.nextNode() ) { if(cnt ==1){ grd_ordroompatlist.valueMatrix(1,grd_ordroompatlist.colRef(childNode.nodeName))=""; } } }else{ while( childNode = childNodeList.nextNode() ) { if(cnt ==1){ var nodeValue = model.getValue("/root/nodeinfo/ordroominfo/ordroompatlist[1]/"+childNode.nodeName); grd_ordroompatlist.valueMatrix(1,grd_ordroompatlist.colRef(childNode.nodeName))=nodeValue; } } } grd_ordroompatlist.refresh(); gTimeCnt++; } /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : 'ESC' or 'Q' 키를 누르면 타이머 해제 및 윈도우 닫기 * @param : * @param : * @return : * @--------------------------------------------------- */ function fClearTimer(){ var keyPressed = event.keyCode ; if(keyPressed == 27 || keyPressed == 81) // 'ESC' or 'Q' 키가 눌려진 경우 { var answer = messageBox("진행현황 안내 프로그램 종료합니다.", "I") ; if(answer == 1) { fCloseBoard(); } } } function fCloseBoard(){ if (clockID != "") window.clearInterval(clockID); if (inquiryID != "") window.clearInterval(inquiryID); model.close(); } /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : 전광판 메세지 * @param : * @param : * @return : * @--------------------------------------------------- */ function fMsgMove(){ testmsgtm = 30; testmsg = model.getValue("/root/hidden/callmsg"); var str1 =""; var str3 =""; //문서의 기존 내용을 삭제 brs_msg.Document.open(); //신규 문서 내용 적용 brs_msg.Document.write(str1 +testmsgtm+ str2 + testmsg + str3); } /** * @group : * @ver : 2010.05.19 * @by : 이창록 * @--------------------------------------------------- * @type : function * @access : public * @desc : 다음 대기환자 조회(소대기 화면에서는 다음 page 안씀) * @param : * @param : * @return : * @--------------------------------------------------- */ function fNextPatListSrch(){ copyNodeCnt = getNodesetCount("/root/nodeinfo/ordroominfo/ordroompatlist"); mainNodeCnt = getNodesetCount("/root/main/ordroominfo/ordroompatlist"); var main_copyNodeCnt = getNodesetCount("/root/main_copy/ordroominfo/ordroompatlist"); var GrdChgCnt = Math.round(copyNodeCnt/5)-1;//test var duplcnt = model.getValue("/root/hidden/flaginfo/duplcnt"); var i = parseInt(mainNodeCnt)+1; // var GrdChgCnt = Math.round(copyNodeCnt/5)-1; var nextNodeCnt =i+5; if(parseInt(mainNodeCnt) < parseInt(copyNodeCnt)){ if(GrdChgCnt < 2){ if(copyNodeCnt!=main_copyNodeCnt){ for(var mCnt=i; mCnt <=nextNodeCnt; mCnt++){ if(mCnt==i){ copyNodesetType("root/main/ordroominfo/ordroompatlist","/root/nodeinfo/ordroominfo/ordroompatlist["+mCnt+"]","replace"); }else{ copyNodesetType("root/main/ordroominfo/ordroompatlist","/root/nodeinfo/ordroominfo/ordroompatlist["+mCnt+"]","after"); } } for(var k =1;k<=mainNodeCnt;k++){ grd_ordroompatlist.rowstyle(k, "data", "background-color") = "#000044"; grd_ordroompatlist.rowstyle(k,"data", "font-family") = "HY각헤드라인M"; grd_ordroompatlist.rowstyle(k,"data", "font-size") = "40pt"; grd_ordroompatlist.rowstyle(k,"data", "text-align") = "center"; //grd_ordroompatlist.rowstyle(k,"data", "font-weight") = "bold"; grd_ordroompatlist.rowstyle(k,"data", "color") = "#ffffff"; } copyNodesetType("root/main_copy/ordroominfo/ordroompatlist","/root/main/ordroominfo/ordroompatlist","after"); }else{ fOrdRoomDispItemSrch(); } }else{ if(copyNodeCnt!=main_copyNodeCnt){ var k = parseInt(main_copyNodeCnt)+1; var nextNodeCnt2 =k+5; for(var mCnt=k; mCnt < nextNodeCnt2; mCnt++){ if(mCnt==k){ copyNodesetType("root/main/ordroominfo/ordroompatlist","/root/nodeinfo/ordroominfo/ordroompatlist["+mCnt+"]","replace"); }else{ copyNodesetType("root/main/ordroominfo/ordroompatlist","/root/nodeinfo/ordroominfo/ordroompatlist["+mCnt+"]","after"); } } for(var k =1;k<=mainNodeCnt;k++){ //grd_ordroompatlist.rowstyle(k, "data", "background-color") = "#000044"; grd_ordroompatlist.rowstyle(k,"data", "font-family") = "HY각헤드라인M"; grd_ordroompatlist.rowstyle(k,"data", "font-size") = "40pt"; grd_ordroompatlist.rowstyle(k,"data", "text-align") = "center"; //grd_ordroompatlist.rowstyle(k,"data", "font-weight") = "bold"; grd_ordroompatlist.rowstyle(k,"data", "color") = "#39008f"; } copyNodesetType("root/main_copy/ordroominfo/ordroompatlist","/root/main/ordroominfo/ordroompatlist","after"); }else{ fOrdRoomDispItemSrch(); } } }else{ fOrdRoomDispItemSrch(); } model.refresh(); }