123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558 |
- /* ---------------------------------------------------------------------
-
- 분만환자 진행 현황 전광판 (SMMNV02800_분만진행현황전광판(40)..xfm - JScript )
-
- - Version :
- 1) : Ver.1.00.00
- : Create By 안도영
- : 2010.06.08
- ----------------------------------------------------------------------*/
- var submitIntervalTime = 5 * 1000 ; // 10초
- //var submitIntervalTime2 = 5 * 1000 ; // 5초
- var showGrdTime = 3 * 1000 ; // 3초
- var showMsgTime = 5 * 1000 ; // 10초
- //----------------(20080930)
- // 분만 재실현황
- var clockID ; // 하단줄의 시간 interval
- var grdintervalID ; // 그리드 조회 interval
- var grdintervalIDTop ; // 그리드 상단 올리기 interval
- var grdintervalIDDelay ; // 지연
- // 신생아 리스트
- var grdintervalID2 ; // 그리드 조회 interval
- var grdintervalIDTop2 ; // 그리드 상단 올리기 interval
- var grdintervalIDDelay2 ; // 지연
- var msgintervalID ; // msg 조회 interval
- var msgintervalIDTop ; // msg 상단 올리기 interval
- var msgintervalIDDelay ; // 지연
- /**
- * @group :
- * @ver : 2009.02.13
- * @by : 임여원
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 분만 대기 환자 조회 화면 초기화 작업
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(){
-
- model.removeNodeset("/root/main/partrtnpatlist/partrtnpatinfo");
- model.removeNodeset("/root/main/partrtnbabylist/partrtnbabyinfo");
- model.removeNodeset("/root/main/procercalllist/procercallmsginfo");
- model.setValue("/root/main/cond/partrtndd", getCurrentDate());
- model.refresh();
- fSetGrdTimer();
- setWindowSize(); //(20080130) 테스트중
-
- model.setFocus("lbl_header");
- }
- /*
- //--------------------------
- // 그리드 top row 제거 실행되는 함수
- //--------------------------
- function fshowGrdTime() {
- model.removenode("/root/main/oppatlist/oppatinfo[1]") ;
- setGridColor() ;
- model.refresh() ;
- }
- //--------------------------
- // Msg display 실행되는 함수
- //--------------------------
- function fshowMsgTime() {
- model.setValue("/root/hidden/callmsg", model.getValue("/root/main/msglist/msginfo[1]/callmsg")) ;
- model.removenode("/root/main/msglist/msginfo[1]") ;
- model.refresh() ;
- }
- */
- /**
- * @group :
- * @ver : 2007.10.09
- * @by : 문창곤
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 지정된 시간간격마다 그리드데이터 조회(화면 호출시 처음만 호출된다)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetGrdTimer(){
- //시간은 1초 단위로 갱신: 무한루프=> 0.1로 변경
- //clockID = window.setInterval("clock();", 1000);
- clockID = window.setInterval("clock();", 100); //0.1초
- //메시지 5초: 무한루프시켜야 함(그리드 test용으로 막음)
- msgintervalID = window.setInterval("fGetCallMessage();", submitIntervalTime); //5초
- //분만 화면에서 분만 대기 환자 조회시
- grdintervalID = window.setInterval("fGetPartrtnPatList();", submitIntervalTime); //5초
-
- // 아기정보(신생아 리스트) 조회시
- //grdintervalID2 = window.setInterval("fGetPartrtnBabyList();", submitIntervalTime); //5초
- }
- /**
- * @group :
- * @ver : 2007.10.09
- * @by : 문창곤
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : DataTime 조회.
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function clock() {
- var datetime = getCurrentDateTime().substring(0, 4) + "년 "
- + getCurrentDateTime().substring(4, 6) + "월 "
- + getCurrentDateTime().substring(6, 8) + "일 "
- + getCurrentDate().toDate().getDayOfWeek("K") + "요일 "
- + getCurrentDateTime().substring(8, 11) + "시 "
- + getCurrentDateTime().substring(11, 13) + "분 "
- + getCurrentDateTime().substring(13, 15) + "초" ;
- model.setValue("/root/hidden/time", datetime) ;
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.10.09
- * @by : 문창곤
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 분만환자 보호자 호출메시지 조회.
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetCallMessage(){
-
- var sPath = "/root/main/procercalllist";
- if(getNodesetCount(sPath + "/procercallmsginfo") == 0) {
- //model.removeNodeset("/root/main/msglist/msginfo") ;
- model.removeNodeset(sPath) ;
- model.refresh();
-
- model.copyNode("/root/send/reqdata", "/root/main/cond") ;
- setErrorOff();
-
- if ( submit("TRMNV02802",false) == true) {
- model.setValue("/root/init/msgStatus","msg:정상");
- model.refresh();
-
- model.setValue("/root/init/msgStatus1", "조회" );
- model.refresh();
- var msgCnt = getNodesetCount(sPath + "/procercallmsginfo") ;
- if (msgCnt > 0) {
- /*
- var TimerID = window.setInterval('window.setinterval("", 5000) ;'
- + 'model.setValue("/root/hidden/callmsg", model.getValue("/root/main/msglist/msginfo[1]/callmsg")) ;'
- + 'model.removenode("/root/main/msglist/msginfo[1]") ;'
- + 'model.refresh() ;', showMsgTime) ;
- */
- msgintervalIDTop = window.setInterval("fGetCallMessageSub1()", showMsgTime); //10초
- }else{
- model.setValue("/root/hidden/callmsg", "") ;
- tar_callmsg.refresh();
- }
- } else {
- model.setValue("/root/init/msgStatus","msg:장애");
- model.removeNodeset(sPath);
- model.refresh();
- }
- }
- }
- //-------------------------------
- // 분만환자 보호자 호출메시지 조회.
- //-------------------------------
- function fGetCallMessageSub1() {
-
- var sPath = "/root/main/procercalllist";
- // var timerID = window.setinterval("", 5000) ; //시간지연
- model.setValue("/root/hidden/callmsg", model.getValue(sPath + "/procercallmsginfo[1]/procercallmsg")) ;
- model.removenode(sPath + "/procercallmsginfo[1]") ;
- model.setValue("/root/init/msgStatus1", getNodesetCount(sPath + "/procercallmsginfo") );
- model.refresh();
- if ( getNodesetCount(sPath + "/procercallmsginfo") == 0) {
- model.setValue("/root/init/msgStatus1", "E:"+msgintervalIDTop );
- model.refresh() ;
- fGetCallMessage();
- window.clearInterval(msgintervalIDTop);
- }
- }
- /**
- * @group :
- * @ver : 2007.10.09
- * @by : 문창곤
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수술 및 분만환자 조회.[조회버튼클릭]
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- function fGetOpPartrtnPatList(){
- var sPath = "/root/main/oppatlist";
- if(getNodesetCount(sPath + "/oppatinfo") == 0)
- {
- //(20080211) oppatinfo까지 된것을 막음)
- model.removeNodeset(sPath);
- model.refresh();
- model.copyNode("/root/send/reqdata", "/root/main/cond");
- setErrorOff();
-
- if (submit("TRMNP06200",false) == true) {
- model.setValue("/root/init/grdStatus","grd:정상");
- model.refresh();
-
- model.setValue("/root/init/grdStatus1", "조회" );
- model.refresh() ;
-
- var ndCnt = getNodesetCount(sPath + "/oppatinfo") ;
- if ( ndCnt > 0) {
- setGridColor() ;
-
- grdintervalIDTop = window.setInterval("fGetOpPartrtnPatListSub1()", showGrdTime); //100) ; //7초
- }
- } else {
- model.setValue("/root/init/grdStatus","grd:장애");
- model.removeNodeset(sPath);
- model.refresh();
- }
- }
- }
- */
- //----------------------------
- // 자료를 상단으로 올리는 기능1 (재실환자 현황)
- //----------------------------
- function fGetOpPartrtnPatListSub1() {
-
- // var timerID = window.setinterval("", 5000) ; //상단올리기 지연시킴
- model.removenode("/root/main/partrtnpatlist/partrtnpatinfo[1]") ;
- //setGridColor() ;
- model.setValue("/root/init/grdStatus1", getNodesetCount("/root/main/partrtnpatlist/partrtnpatinfo") );
- model.refresh() ;
- if ( getNodesetCount("/root/main/partrtnpatlist/partrtnpatinfo") == 0) {
- model.setValue("/root/init/grdStatus1", "E:"+grdintervalIDTop );
- model.refresh() ;
- //fGetPartrtnPatList();
-
- window.clearInterval(grdintervalID);
- window.clearInterval(grdintervalIDTop);
-
- var togFlag = fGetBabyListTogFlag();
- if(togFlag =="N"){
- grdintervalID = window.setInterval("fGetPartrtnPatList();", submitIntervalTime); //5초
- fGetPartrtnPatList();
- }else if(togFlag =="Y"){
-
- grdintervalID2 = window.setInterval("fGetPartrtnBabyList();", submitIntervalTime); //5초
- //alert("!");
- model.toggle("아기정보");
- fGetPartrtnBabyList();
- }
- }
- }
- //----------------------------
- // 자료를 상단으로 올리는 기능2 (신생아 리스트)
- //----------------------------
- function fGetPartrtnBabyListSub1() {
-
- // var timerID = window.setinterval("", 5000) ; //상단올리기 지연시킴
- model.removenode("/root/main/partrtnbabylist/partrtnbabyinfo[1]") ;
- //setGridColor() ;
- model.setValue("/root/init/grdStatus1", getNodesetCount("/root/main/partrtnbabylist/partrtnbabyinfo") );
- model.refresh() ;
- if ( getNodesetCount("/root/main/partrtnbabylist/partrtnbabyinfo") == 0) {
- model.setValue("/root/init/grdStatus1", "E:"+grdintervalIDTop2 );
- model.refresh() ;
-
- //fGetPartrtnBabyList();
- window.clearInterval(grdintervalID2);
- window.clearInterval(grdintervalIDTop2);
-
- grdintervalID = window.setInterval("fGetPartrtnPatList();", submitIntervalTime); //5초
-
- model.toggle("재실환자");
- fGetPartrtnPatList();
- }
- }
- /**
- * @group :
- * @ver : 2007.10.09
- * @by : 문창곤
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수술예약번호 해당 호출메시지 검색
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function getCallMsg(Oprsrvno)
- {
- var msgCnt = getNodesetCount("/root/main/msglist/msginfo") ;
- var RtnValue = "NONE" ;
- if(msgCnt > 0)
- {
- for(var i=1;i<=msgCnt;i++)
- {
- if(Oprsrvno == model.getValue("/root/main/msglist/msginfo["+ i + "]/oprsrvno"))
- {
- RtnValue = model.getValue("/root/main/msglist/msginfo["+ i + "]/callmsg") ;
- model.removenode("/root/main/msglist/msginfo["+ i + "]");
- break ;
- }
- }
- }
- return RtnValue ;
- }
- /**
- * @group :
- * @ver : 2007.10.09
- * @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("분만 진행현황 안내 프로그램 종료를 ", "Q004") ;
- if(answer == 6) {
-
- if (clockID != "") window.clearInterval(clockID);
- if (msgintervalID != "") window.clearInterval(msgintervalID);
- if (grdintervalID != "") window.clearInterval(grdintervalID);
- if (grdintervalID2 != "") window.clearInterval(grdintervalID2);
-
- if (msgintervalIDTop != "") window.clearInterval(msgintervalIDTop);
- if (grdintervalIDTop != "") window.clearInterval(grdintervalIDTop);
- if (grdintervalIDTop2 != "") window.clearInterval(grdintervalIDTop2);
-
- model.close() ;
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.10.09
- * @by : 문창곤
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진행상태에 따른 글자색 설정
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- function setGridColor()
- {
- var ndCnt = getNodesetCount("/root/main/partrtnpatlist/partrtnpatinfo") ;
- var status ;
-
- for(var i=1;i<=ndCnt;i++)
- {
- status = model.getValue("/root/main/partrtnpatlist/partrtnpatinfo["+ i + "]/opstatcd") ;
- alert(status);
- if(status == "1") // 분만대기중 - 검정색
- grd_list.cellStyle("color", i, 3) = "#000000" ;
- else if( status == "2") // 진통중 - 분홍색
- grd_list.cellStyle("color", i, 3) = "#FF82FF" ;
- else if( status == "3") // 분만중 - 빨강색
- grd_list.cellStyle("color", i, 3) = "#FF0000" ;
- else if(status == "4") // 분만완료- 파랑색
- grd_list.cellStyle("color", i, 3) = "#0000FF" ;
- else if(status == "5") // 절대안정중 - 녹색
- grd_list.cellStyle("color", i, 3) = "#00CC66" ;
- else if(status == "6") // 안정중 - 청녹색
- grd_list.cellStyle("color", i, 3) = "#006600" ;
- }
- }
- */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 분만 진행현황 조회 */
- /* --------------------------------------------------*/
-
- function fGetPartrtnPatList(){
- var sPath = "/root/main/partrtnpatlist";
-
- if(getNodesetCount(sPath + "/partrtnpatinfo") == 0)
- {
-
- //(20080211) oppatinfo까지 된것을 막음)
- model.removeNodeset(sPath);
- //model.makeValue("/root/main/cond/oppartrtnflag","P"); //분만환자 조회 플래그
-
- model.refresh();
- model.copyNode("/root/send/reqdata", "/root/main/cond");
- setErrorOff();
-
- if (submit("TRMNV02801",false) == true) {
- model.setValue("/root/init/grdStatus","grd:정상");
- model.refresh();
-
- model.setValue("/root/init/grdStatus1", "조회" );
- model.refresh() ;
-
- var ndCnt = getNodesetCount(sPath + "/partrtnpatinfo") ;
- if ( ndCnt > 0) {
- //setGridColor() ;
- /*
- //5초간격으로 자료를 상단으로 올리는 기능
- var TimerID = window.setInterval('window.setinterval("", 5000) ;'
- + 'model.removenode("/root/main/oppatlist/oppatinfo[1]") ;'
- + 'setGridColor() ;'
- + 'model.refresh() ;', showGrdTime) ;
- */
- grdintervalIDTop = window.setInterval("fGetOpPartrtnPatListSub1()", showGrdTime); //100) ; //7초
- }
- } else {
- model.setValue("/root/init/grdStatus","grd:장애");
- model.removeNodeset(sPath);
- model.refresh();
- }
- }
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 아기정보(신생아리스트) 조회 */
- /* --------------------------------------------------*/
-
- function fGetPartrtnBabyList(){
- var sPath = "/root/main/partrtnbabylist";
- if(getNodesetCount(sPath + "/partrtnbabyinfo") == 0)
- {
-
- //(20080211) oppatinfo까지 된것을 막음)
- model.removeNodeset(sPath);
-
- model.refresh();
- model.copyNode("/root/send/reqdata", "/root/main/cond");
- setErrorOff();
-
- //if (submit("TRMNV02001",false) == true) {
- if (submit("TRMNV02803",false) == true) {
- model.setValue("/root/init/grdStatus","grd:정상");
- model.refresh();
-
- model.setValue("/root/init/grdStatus1", "조회" );
- model.refresh() ;
-
- var ndCnt = getNodesetCount(sPath + "/partrtnbabyinfo");
- //alert("ndCnt: " + ndCnt);
- if ( ndCnt > 0) {
- //alert("1");
- //setGridColor() ;
- /*
- //5초간격으로 자료를 상단으로 올리는 기능
- var TimerID = window.setInterval('window.setinterval("", 5000) ;'
- + 'model.removenode("/root/main/oppatlist/oppatinfo[1]") ;'
- + 'setGridColor() ;'
- + 'model.refresh() ;', showGrdTime) ;
- */
- grdintervalIDTop2 = window.setInterval("fGetPartrtnBabyListSub1()", showGrdTime); //100) ; //7초
- }
- } else {
- model.setValue("/root/init/grdStatus","grd:장애");
- model.removeNodeset(sPath);
- model.refresh();
-
- }
- }
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 아기정보(신생아리스트) 선조회 후 토글 여부 판단 */
- /* --------------------------------------------------*/
-
- function fGetBabyListTogFlag(){
- var sPath = "/root/main/partrtnbabylist";
-
- model.removeNodeset(sPath);
- model.refresh();
- model.copyNode("/root/send/reqdata", "/root/main/cond");
- setErrorOff();
-
- //if (submit("TRMNV02001",false) == true) {
- if (submit("TRMNV02803",false) == true) {
- var ndCnt = getNodesetCount(sPath + "/partrtnbabyinfo");
- var sPath = "/root/main/partrtnbabylist";
- model.removeNodeset(sPath);
- //alert("ndCnt: " + ndCnt);
- if ( ndCnt > 0) {
- return "Y";
- }
- else{
- return "N";
- }
- }
- }
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */
-
|