123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398 |
- /**
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 진료지원 - 검사실대기환자현황(40) ( SMMNV00200_검사실대기환자현황(40).xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- - Author : 이창록
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- **/
-
- var inquiryTime = 5 * 1000 ; // 5초 (재조회시간)
- var clockTime = 100 ; // 1초 (시계)
- var clockID ;
- var paramipaddr="";
- var paramgrpflag="";
- var paramroomdcd="";
- var paramorddeptcd="";
- var testmsg;
- var testmsgtm;
- var nextPatListSrch;
- var maxGroup = 12; //대대기에 표시할 진료실 최대 개수
- var perGroup = 3; //대대기 한 화면에 표시할 진료실 개수
- var tempTo;
- /**
- * @group :
- * @ver : 2010.05.19
- * @by : 이창록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 대기안내 환자조회화면초기화
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(){
- setWindowSize();
- clockID = window.setInterval("clock();" , clockTime); //1초
- fOrdRoomDispItemSrch();
- fPatMsgSrch();
- nextPatListSrch= window.setInterval("fTestRoomWaitPatList()",5000);
- msgSrch = window.setInterval("fNextPatMsgSrch()",5000);
- }
- /**
- * @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 :Parm_Flag=> grd_rebuild 여부,Parm_Cnt=>default로 보여주는 row 수
- * @param :Parm_NextPageFlag=>그룹페이지여부,Parm_GrpPageNum=>그룹수
- * @return :
- * @---------------------------------------------------
- */
- function fOrdRoomDispItemSrch(){
-
- if(checkOpener()){
- paramipaddr =opener.javascript.getParameter("paramipaddr");
- paramroomdcd =opener.javascript.getParameter("paramroomcd");
- paramgrpflag =opener.javascript.getParameter("paramgrpflag");
- 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" ,"L");
- model.makeValue("/root/send/reqdata/grpflag" ,paramgrpflag);
-
- if(submit("TRMNV00102")){
- var waitimgdispyn = model.getValue("/root/init/ordroominfo/ordroomdispiteminfo/waitimgdispyn");
- if(waitimgdispyn=="Y"){
- img_his012.attribute("visibility")="visible";
- }else{
- img_his012.attribute("visibility")="hidden";
- }
- model.removeNodeset("root/init_copy/ordroominfo/testroombaseinfo/testroominfo");
- model.makeNode("root/init_copy/ordroominfo/testroombaseinfo/testroominfo");
- var depthngnm = model.getValue("/root/init/ordroominfo/testroombaseinfo/testroominfo/depthngnm");
- if( depthngnm!=model.getValue("/root/cond/ordroominfo/depthngnm")){
- model.setValue("/root/cond/ordroominfo/depthngnm",depthngnm);
- }
- var i, z, y;
- var itemid;
- for(i = 1; i <= getNodesetCount("/root/init/ordroominfo/testroombaseinfo/testroominfo") && i <= 3; i++ ) {
- itemid = "room1" + i;
- var roomnm = model.getValue("/root/init/ordroominfo/testroombaseinfo/testroominfo[" + i + "]/roomnm");
- document.all.item(itemid+"_roomnumb").value = roomnm ;
- var m = 1;
- for(m = 1; m <= 5; m++ ) { //한 그룹에 표시할 환자수
- document.all.item(itemid+"_pat"+m).value = "";
- document.all.item(itemid+"_pid"+m).value = "";
- document.all.item(itemid+"_patmsg"+m).value = "";
- document.all.item(itemid+"_seq"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_seq"+m).attribute("color")="#ffffff";
- document.all.item(itemid+"_pat"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_pat"+m).attribute("color")="#ffffff";
- document.all.item(itemid+"_pid"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_pid"+m).attribute("color")="#ffffff";
- document.all.item(itemid+"_patmsg"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_patmsg"+m).attribute("color")="#ffffff";
- }
- var k = 1;
- for(j = 1; j <= getNodesetCount("/root/init/ordroominfo/ordroompatlist"); j++ ) {
- if(model.getValue("/root/init/ordroominfo/testroombaseinfo/testroominfo[" + i + "]/roomcd") == model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/excuroomcd") && k <=5) { //한 그룹에 표시할 환자수
- document.all.item(itemid+"_pat"+k).value = model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/starpatnm");
- document.all.item(itemid+"_pid"+k).value = model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/pid");
- var infocmt = model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/infocmt");
- var cmt1 = "검사중";
- var cmt2 = "진료중입니다.";
- if((infocmt==cmt1)||(infocmt==cmt2)){
- document.all.item(itemid+"_seq"+k).refresh();
-
- document.all.item(itemid+"_seq"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_seq"+k).attribute("color")="#ffff00";
- document.all.item(itemid+"_pat"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_pat"+k).attribute("color")="#ffff00";
- document.all.item(itemid+"_pid"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_pid"+k).attribute("color")="#ffff00";
- document.all.item(itemid+"_patmsg"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_patmsg"+k).attribute("color")="#ffff00";
- }
- document.all.item(itemid+"_patmsg"+k).value = infocmt;
-
- k = k+1;
- }
- }
- if(i==1){
- copyNodesetType("root/init_copy/ordroominfo/testroombaseinfo/testroominfo","root/init/ordroominfo/testroombaseinfo/testroominfo["+i+"]","replace");
- }else{
- copyNodesetType("root/init_copy/ordroominfo/testroombaseinfo/testroominfo","root/init/ordroominfo/testroombaseinfo/testroominfo["+i+"]","after");
- }
- }
- }
-
- 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"));
- }
- model.refresh();
-
- }
- /**
- * @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 (nextPatListSrch != "") window.clearInterval(nextPatListSrch);
- model.close();
- }
- /**
- * @group :
- * @ver : 2010.05.19
- * @by : 이창록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 전광판 메세지
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMsgMove(){
- testmsgtm = 10;
- testmsg = model.getValue("/root/hidden/callmsg");
- var str1 ="<body bgcolor=#CCECFF SCROLL=no leftmargin=0 topmargin=10 marginwidth=0 marginheight=0><marquee Scrollamount=";
- var str2 ="><font face=돋움체 color=#000000 b style=' font-size:25pt;' ><b>";
- var str3 ="</b></font></marquee></body>";
-
- //문서의 기존 내용을 삭제
- brs_msg.Document.open();
- //신규 문서 내용 적용
- brs_msg.Document.write(str1 +testmsgtm+ str2 + testmsg + str3);
- }
- function fPatMsgMove(){
- var patmsgtm = 400;
- var patmsg = model.getValue("/root/init/ordroominfo/msginfo/patindlmsglist/msg");
-
- var str1 ="<body bgcolor=#CCECFF SCROLL=no leftmargin=0 topmargin=10 marginwidth=0 marginheight=55><marquee direction=right SCROLLDELAY=";
- var str2 ="><font face=돋움체 color=#000000 b style=' font-size:15pt;' ><b>";
- var str3 ="</b></font></marquee></body>";
-
- //문서의 기존 내용을 삭제
- brs_patmsg.Document.open();
- //신규 문서 내용 적용
- brs_patmsg.Document.write(str1 +"UP"+ str2 + patmsg + str3);
- }
- /**
- * @group :
- * @ver : 2010.05.19
- * @by : 이창록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 다음 대기실에 대기환자 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fTestRoomWaitPatList(){
- var mainNode = getNodesetCount("/root/init/ordroominfo/testroombaseinfo/testroominfo");
- var init_copyNode = getNodesetCount("/root/init_copy/ordroominfo/testroombaseinfo/testroominfo");
- var CapChgCnt = Math.round(mainNode/3)-1;//test
- var i = parseInt(init_copyNode)+1;
- var nextNodeCnt = i+3;
- if(mainNode!=init_copyNode){
-
- for(var mCnt=i; mCnt < nextNodeCnt; mCnt++){
- var d =(mCnt-parseInt(init_copyNode));
- itemid = "room1" + d;
-
- var roomnm = model.getValue("/root/init/ordroominfo/testroombaseinfo/testroominfo[" + mCnt + "]/roomnm");
- document.all.item(itemid+"_roomnumb").value = roomnm ;
-
- var m = 1;
- for(m = 1; m <= 5; m++ ) { //한 그룹에 표시할 환자수
- document.all.item(itemid+"_pat"+m).value = "";
- document.all.item(itemid+"_pid"+m).value = "";
- document.all.item(itemid+"_patmsg"+m).value = "";
- document.all.item(itemid+"_seq"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_seq"+m).attribute("color")="#ffffff";
- document.all.item(itemid+"_pat"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_pat"+m).attribute("color")="#ffffff";
- document.all.item(itemid+"_pid"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_pid"+m).attribute("color")="#ffffff";
- document.all.item(itemid+"_patmsg"+m).attribute("background-color")="#000044";
- document.all.item(itemid+"_patmsg"+m).attribute("color")="#ffffff";
- }
-
- var k = 1;
-
- for(j = 1; j <= getNodesetCount("/root/init/ordroominfo/ordroompatlist"); j++ ) {
- if(model.getValue("/root/init/ordroominfo/testroombaseinfo/testroominfo[" + mCnt + "]/roomcd") == model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/excuroomcd") && k <=5) { //한 그룹에 표시할 환자수
- document.all.item(itemid+"_pat"+k).value = model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/starpatnm");
- document.all.item(itemid+"_pid"+k).value = model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/pid");
- var infocmt = model.getValue("/root/init/ordroominfo/ordroompatlist[" + j + "]/infocmt");
- var cmt1 = "검사중";
- var cmt2 = "진료중입니다.";
- if((infocmt==cmt1)||(infocmt==cmt2)){
- document.all.item(itemid+"_seq"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_seq"+k).attribute("color")="#ffff00";
- document.all.item(itemid+"_pat"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_pat"+k).attribute("color")="#ffff00";
- document.all.item(itemid+"_pid"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_pid"+k).attribute("color")="#ffff00";
- document.all.item(itemid+"_patmsg"+k).attribute("background-color")="#660000";
- document.all.item(itemid+"_patmsg"+k).attribute("color")="#ffff00";
- }
- document.all.item(itemid+"_patmsg"+k).value = infocmt;
- k = k+1;
- }
- }
- copyNodesetType("root/init_copy/ordroominfo/testroombaseinfo/testroominfo","root/init/ordroominfo/testroombaseinfo/testroominfo["+mCnt+"]","after");
- }
- }else{
- fOrdRoomDispItemSrch();
- }
- }
- /**
- * @group :
- * @ver : 2010.05.19
- * @by : 이창록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 전광판 메세지
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPatMsgSrch(){
- var patmsgCnt =getNodesetCount("/root/init/ordroominfo/msginfo/patindlmsglist");
- var patmsgCopyCnt =getNodesetCount("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist");
- if(patmsgCnt > 0){
- model.removeNodeset("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist");
- model.makeNode("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist");
- for(var m=1;m<=2;m++){
- var itemid = "cap_patmsg" + m;
- var patmsg = model.getValue("/root/init/ordroominfo/msginfo/patindlmsglist["+m+"]/msg");
- document.all.item(itemid).value=patmsg;
- if(m==1){
- copyNodesetType("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist","/root/init/ordroominfo/msginfo/patindlmsglist["+m+"]","replace");
- }else{
- copyNodesetType("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist","/root/init/ordroominfo/msginfo/patindlmsglist["+m+"]","after");
- }
- }
- }
-
- }
- /**
- * @group :
- * @ver : 2010.05.19
- * @by : 이창록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 전광판 다음메세지
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fNextPatMsgSrch(){
-
- var patmsgCnt =getNodesetCount("/root/init/ordroominfo/msginfo/patindlmsglist");
- var patmsgCopyCnt =getNodesetCount("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist");
- var i = parseInt(patmsgCopyCnt)+1;
- var nextNodeCnt = i+2;
- if(patmsgCopyCnt > 0){
- if(patmsgCnt!=patmsgCopyCnt){
- for(var mCnt=i;mCnt<nextNodeCnt;mCnt++){
- var m =mCnt-parseInt(patmsgCopyCnt);
- var itemid = "cap_patmsg" + m;
- var patmsg = model.getValue("/root/init/ordroominfo/msginfo/patindlmsglist["+mCnt+"]/msg");
- document.all.item(itemid).value=patmsg;
- copyNodesetType("/root/init_msginfo/ordroominfo/msginfo/patindlmsglist","/root/init/ordroominfo/msginfo/patindlmsglist["+mCnt+"]","after");
- }
- }else{
- fPatMsgSrch();
- }
- }
- }
|