123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 환자요약 ( MMR04800_환자요약.xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- //var instance = document.models(0).instances(0);
- var instance;// = model.instances.item(0);
- var uInfo;// = getUserInfos();
- //uInfo = uInfo.split("|");
- //if (isPopup()) {
- // var pid = parent.model.getValue("/root/send/pid");
- //} else {
- // var pid = parent.model.getValue("/root/main/paminfo/list/pid");
- //}
- var pid = "";
- /**
- * @desc : 화면 초기화
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fInitalize()
- {
- model.setValue("/root/main/patinfo/patinfolist/pid" , model.property("pid"));
- model.setValue("/root/main/patinfo/patinfolist/hngnm", model.property("hngnm"));
- model.setValue("/root/main/cond/orddeptnm", model.property("deptnm"));
- model.setValue("/root/main/cond/orddrnm", model.property("medispclnm"));
- model.setValue("/root/main/cond/sexage", model.property("sexage"));
- model.setValue("/root/main/cond/wardroomnm", model.property("wardroomnm"));
-
- instance = model.instances.item(0);
- uInfo = getUserInfos();
- uInfo = uInfo.split("|");
-
- model.makeValue("/root/init/uid", uInfo[0]);
- model.makeValue("/root/init/udeptcd", uInfo[8]);
-
- model.setValue("/root/init/reqmedireclist/diffdt", 12); //검색 디폴트 12개월
- fAddDateReq("today");
-
- var srchcond = model.getValue("/root/envinit/srchcond/answcnt");
- var srchday = model.getValue("/root/envinit/srchday/answcnt");
-
- switch(srchcond)
- {
- case "001" :
- model.setValue("/root/init/schkind", "2");
- break;
- case "002" :
- model.setValue("/root/init/schkind", "3");
- break;
- case "003" :
- model.setValue("/root/init/schkind", "1");
- break;
- case "" :
- model.setValue("/root/init/schkind", "2");
- break;
- }
- radio1.refresh();
-
- switch(srchday)
- {
- case "001" :
- model.setValue("/root/init/reqmedireclist/diffdt", "1");
- break;
- case "002" :
- model.setValue("/root/init/reqmedireclist/diffdt", "3");
- break;
- case "003" :
- model.setValue("/root/init/reqmedireclist/diffdt", "6");
- break;
- case "004" :
- model.setValue("/root/init/reqmedireclist/diffdt", "12");
- break;
- case "005" :
- model.setValue("/root/init/reqmedireclist/diffdt", "-");
- break;
- }
- combo4.refresh();
-
- combo4.dispatch("xforms-value-changed");
-
-
-
- pid = model.property("pid"); //세션으로부터 환자등록번호를 파라미터로 받는다.
-
- //model.setValue("/root/main/patinfo/patinfolist/hngnm", model.property("hngnm"));
- if ( !isNull ( pid ) )
- {
- //ipt_pid.value = pid;
- model.setValue("/root/main/patinfo/patinfolist/pid", pid);
- fPidKeyPress(); //등록번호로 환자 정보조회
- fSelect_sub();
- //model.refresh();
- }
- if (isPopup())
- {
- //btn_detl.attribute("visibility") = "hidden";
- //btn_close.attribute("visibility") = "visiblle";
- var list = getGlobalVariable("emr_gsv_cmmsrckcond");
- if(list != "" && list != null){
- model.removeNodeset("/root/send");
- setCSVToNode("/root",list,"send");
- }
- //fSelect_Pop();
- } else {
- //fSelect_sub();
- }
- grd_smmlist.autoresize = true;
- model.refresh();
-
- }
- /**
- * @desc : 조회버튼 클릭
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fSrchClick()
- {
- if (isPopup()) {
- fSelect_Pop();
- } else {
- fSelect_sub();
- }
- }
- /**
- * @desc : 줄추가
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fAddrow()
- {
- var nodelistSmm = instance.selectNodes("/root/main/smmlist");
- var nodelength = nodelistSmm.length;
- var smmcnts = model.getValue("/root/main/smmlist[1]/smmcnts");
- if(smmcnts != "" || nodelength == 0)
- {
- //첫줄에 추가셀 생성요청[요청번호 : 12111, TaskNo : 46466, 우선순위 : SY] -박종훈 수정(2010.03.24)
- if (nodelength == 0)
- {
- grd_smmlist.addRow();
- }
- else
- {
- grd_smmlist.insertRow(1);
- }
-
- model.setValue("/root/main/smmlist[1]/smmdd", getCurrentDate());
- grd_smmlist.row = 1;
- grd_smmlist.col = 3;
- //grd_smmlist.editCell();
- //grd_smmlist.refresh();
-
- }
- }
- /**
- * @desc : 조회
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fSelect_sub()
- {
- var srchpid = model.getValue("/root/main/patinfo/patinfolist/pid");
- if (srchpid != "")
- {
- model.removeNodeset("/root/main/smmlist");
- model.removeNodeset("/root/send");
- model.makeValue("/root/send/pid", srchpid);
- model.makeValue("/root/send/validyn", "Y");
- model.makeValue("/root/send/schkind", model.getValue("/root/init/schkind"));
- model.makeValue("/root/send/getyn", "Y");
- model.makeValue("/root/send/fromdd", model.getValue("/root/init/reqmedireclist/recfromdt"));
- model.makeValue("/root/send/todd", model.getValue("/root/init/reqmedireclist/rectodt"));
- model.makeValue("/root/send/allyn", model.getValue("/root/init/allyn"));
- //////////////////////////////////////////////////////////////////////////
- //2011.05.01진상찬 페이지 처리추가(10건씩)
- var offset = parseInt(model.getValue("root/page/curpage"));
- //1page면 offset은 0, 1page가 아니면 offset은 page수 * 10 (한페이지당 10건씩 보여줌)
- if(offset == 1)
- {
- offset = offset - 1;
- }
- else
- {
- offset = (offset - 1) * 10;
- }
-
- model.makeValue("/root/send/reqdata/offset", String(offset)); //몇번째 데이터 부터 조회할지 지정
- model.makeValue("/root/send/reqdata/pagesize", model.getValue("root/page/pagesize")); //한페이지에 보여줄 건수(10건고정)
-
- //submit("TXMMR04801"); 진상찬 submit 수정
- submit("TRMOB00009");
-
- var maxpage = parseInt(model.getValue("/root/main/smmlistcnt/maxcnt"));
- if(maxpage < 10)
- {
- model.setValue("/root/page/maxpage", "1");
- }
- else
- {
- maxpage = (maxpage / 10) - ((maxpage % 10) / 10) + 1;
- model.setValue("/root/page/maxpage", String(maxpage));
- }
-
- var reqnodeList = instance1.selectNodes("/root/send");
- //////////////////////////////////////////////////////////////////////////
- // grd_smmlist.resizeCells();
- model.refresh();
- //2011-05-24 진상찬: 그리드에 row추가 막음
- //fAddrow();
- }
- else
- {
- messageBox("환자번호가 ", "I004");
- return;
- }
- }
- /**
- * @desc : 팝업시 조회
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fSelect_Pop()
- {
- var srchpid = model.getValue("/root/main/patinfo/patinfolist/pid");
- if (srchpid != "")
- {
- model.removeNodeset("/root/main/smmlist");
- model.makeValue("/root/send/pid", srchpid);
- model.makeValue("/root/send/getyn", "Y");
- model.makeValue("/root/send/schkind", model.getValue("/root/init/schkind"));
- model.makeValue("/root/send/validyn", model.getValue("/root/init/validyn"));
- model.makeValue("/root/send/fromdd", model.getValue("/root/init/reqmedireclist/recfromdt"));
- model.makeValue("/root/send/todd", model.getValue("/root/init/reqmedireclist/rectodt"));
- model.makeValue("/root/send/allyn", model.getValue("/root/init/allyn"));
- //////////////////////////////////////////////////////////////////////////
- //2011.05.01진상찬 페이지 처리추가(10건씩)
- var offset = parseInt(model.getValue("root/page/curpage"));
- //1page면 offset은 0, 1page가 아니면 offset은 page수 * 10 (한페이지당 10건씩 보여줌)
- if(offset == 1)
- {
- offset = offset - 1;
- }
- else
- {
- offset = (offset - 1) * 10;
- }
-
- model.makeValue("/root/send/reqdata/offset", String(offset)); //몇번째 데이터 부터 조회할지 지정
- model.makeValue("/root/send/reqdata/pagesize", model.getValue("root/page/pagesize")); //한페이지에 보여줄 건수(10건고정)
-
- //submit("TXMMR04801"); 진상찬 submit 수정
- submit("TRMOB00009");
-
- var maxpage = parseInt(model.getValue("/root/main/smmlistcnt/maxcnt"));
- if(maxpage < 10)
- {
- model.setValue("/root/page/maxpage", "1");
- }
- else
- {
- maxpage = (maxpage / 10) - ((maxpage % 10) / 10) + 1;
- model.setValue("/root/page/maxpage", String(maxpage));
- }
-
- var reqnodeList = instance1.selectNodes("/root/send");
- //////////////////////////////////////////////////////////////////////////
- if (reqnodeList.length > 0)
- {
- //alert(model.getValue("/root/send/pid"));
- //var csv = getNodeListCSV(reqnodeList);
- //setGlobalVariable("emr_gsv_cmmsrckcond",csv);
- }
- // grd_smmlist.resizeCells();
- //2011-05-24 진상찬: 그리드에 row추가 막음
- //fAddrow();
-
- model.refresh();
- }
- else
- {
- messageBox("환자번호가 ", "I004");
- return;
- }
- }
- /**
- * @desc : 화면 컨트롤 설정
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fResizeGrup(flag, heig, wid)
- {
- body.attribute("height") = heig;
- body.attribute("width") = wid;
- var titHeight = parseInt(grup_title.attribute("height"));
- var tTop = parseInt(grup_top.attribute("top"));
- var tHeight = parseInt(grup_top.attribute("height"));
- var bTop = parseInt(grup_body.attribute("top"));
- var bHeight = parseInt(grup_body.attribute("height"));
- var mTop = parseInt(grup_bottom.attribute("top"));
- var mHeight = parseInt(grup_bottom.attribute("height"));
- if(flag == "1")
- {
- btn_excel.attribute("left") = wid - 4 - 56 + "px";
- grup_title.attribute("width") = wid - 2;
- grup_top.attribute("top") = 0;
- grup_top.attribute("height") = 0;
- grup_top.attribute("width") = 0;
- grup_top.attribute("visibility") = "hidden";
- grup_body.attribute("left") = 0;
- grup_body.attribute("top") = tTop;
- grup_body.attribute("height") = (heig - (tHeight + mHeight) + 1);
- grup_body.attribute("width") = wid - 2;
- grd_smmlist.attribute("left") = 0;
- grd_smmlist.attribute("border-style") = "none";
- grd_smmlist.attribute("height") = (heig - (tHeight + mHeight) + 1);
- grd_smmlist.attribute("width") = wid - 2;
- grup_bottom.attribute("left") = 0;
- grup_bottom.attribute("top") = (heig - mHeight - 2);
- grup_bottom.attribute("width") = wid - 2;
- line12.attribute("x1") = "1px";
- line12.attribute("x2") = wid - 2 + "px";
- line12.attribute("y1") = "24px";
- line12.attribute("y2") = "24px";
- line1.attribute("x1") = "1px";
- line1.attribute("x2") = wid - 2 + "px";
- line1.attribute("y1") = "0px";
- line1.attribute("y2") = "0px";
- line2.attribute("x1") = "1px";
- line2.attribute("x2") = wid - 2 + "px";
- line2.attribute("y1") = "0px";
- line2.attribute("y2") = "0px";
- btn_save.attribute("left") = wid - 4 - 56 + "px";
- btn_del.attribute("left") = wid - 6 - 112 + "px";
- btn_end.attribute("left") = wid - 8 - 168 + "px";
- //btn_close.attribute("left") = wid - 10 - 224 + "px";
- }
- model.refresh();
- }
- /**
- * @desc : 상세조회 클릭
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fClickPop()
- {
- modal("../../../emr/medirecweb/xrw/SSMMR04800_진료요약기록.xrw", 1, 0, 0, "", "", "");
- if(opener.window.javascript.getParameter("SSMMP04800_rtn") == "Y")
- fSelect_sub();
- g_changeYn = "N";
- }
- /**
- * @desc : 작성자와 사용자의 일치여부
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fChkAuth(selrow)
- {
- var recudpcd = model.getValue("/root/main/smmlist[" + selrow + "]/recdeptcd");
- var rtn = true;
- if(recudpcd != uInfo[8])
- {
- rtn = false;
- }
- return rtn;
- }
- /**
- * @desc : 창닫기전 변경된 내용 저장여부 확인
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- * @---------------------------------------------------
- */
- function fClose()
- {
- var updateData = grd_smmlist.getUpdateData();
- var updateData = updateData.split("▩");
- if (updateData.length > 3 && (isPopup()))
- {
- var rtn = messageBox("환자요약에 변경된 정보가 있습니다 ", "Q002");
- if (rtn == 6)
- fSave();
- }
- }
- /**
- * @desc : 환자번호 정보조회
- * @id :
- * @event : onkeypress
- * @return : void
- * @authur : 박종훈
- */
- function fPidKeyPress()
- {
- var pid = model.getValue("/root/main/patinfo/patinfolist/pid");
- model.makeValue("/root/send/srchcond", "1");
- model.makeValue("/root/send/pid", pid);
- //inputEnterKey("btn_search", "DOMActivate");
- //환자등록번호 체크
- if(pid.length >= 1 )
- {
- if(submit("TRPMC02500"))
- {
- //fSearch는 인적사항 화면을 임포트 해간 화면에서 구현해 주어야 하는 함수이다.
- if( getNodesetCount("/root/main/patinfo/patinfolist") > 0 )
- {
- if (isPopup())
- {
- //fSelect_Pop();
- }
- else
- {
- //fSelect_sub();
- }
- }
- else
- {
- model.resetInstanceNode("/root/main/patinfo/patinfolist");
- messageBox("없는 환자 번호 입니다.", "E999", "");
- model.refresh();
- }
- }
- }
- else
- {
- messageBox("환자등록번호를 정확히", "C001");
- }
- }
- /**
- * @desc : 환자이름 정보조회
- * @id :
- * @event : onkeypress
- * @return : void
- * @authur : 박종훈
- */
- function fPnmKeyPress()
- {
- model.makeValue("/root/send/srchcond", "2");
- model.makeValue("/root/send/hngnm", ipt_hngnm.currentText);
- inputEnterKey("btn_pinfosearch", "DOMActivate");
- }
- /**
- * @desc : 환자정보조회 팝업
- * @id :
- * @event : DOMActivate
- * @return : void
- * @authur : 박종훈
- */
- function fPopPtinfo()
- {
- modal("SPPMC02500", "1","150", "150", "SPPMC02500", "/root/send", "/root/send");
- model.resetInstanceNode("/root/send");
- fSelect_Pop();
- }
- /**
- * @desc : 상용구 팝업
- * @id :
- * @event : DOMActivate
- * @return : void
- * @authur : 박종훈
- */
- function fPopCommUse()
- {
- setParameter("comn_chosflag", "C") // C : 상용구
- setParameter("comn_formprogflag", "A") // A: Summary, B : 주호소
- setParameter("openmode", "select");
- //modal("SPMRF04700");
- modal("SPMRF04900");
- var rtn = getParameter("comncnts"); //내용
- setParameter("comncnts", "");
-
- var re = /▦/i;
- var re1 = /▩/i;
-
- rtn = rtn.replace(re, "");
- rtn = rtn.replace(re1, "");
-
- var reccnts = model.getValue("/root/main/smmlist[" + grd_smmlist.row + "]/smmcnts");
- if (rtn == "")
- {
- return;
- }
- if (reccnts == "")
- {
- model.setValue("/root/main/smmlist[" + grd_smmlist.row + "]/smmcnts", rtn);
- fAddrow();
- }
- else
- {
- model.setValue("/root/main/smmlist[" + grd_smmlist.row + "]/smmcnts", reccnts + " " + rtn);
- grd_smmlist.addStatus(grd_smmlist.row, "update");
- }
- model.refresh();
- // grd_smmlist.resizeCells();
- }
- /**
- * @desc : 진료기록 리스트 조회조건 시작일, 종료일 셋팅
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fAddDateReq(diffFlag)
- {
- var frdd = model.getValue("/root/init/reqmedireclist/recfromdt");
- var todd = model.getValue("/root/init/reqmedireclist/rectodt");
- var srcdd = new Date();
- var destdd = new Date();
- var diffdt;
- if (diffFlag == "next")
- {
- srcdd = todd.toDate();
- srcdd = srcdd.getAddDate(1, "D");
- frdd = srcdd.getDateFormat();
-
- diffdt = parseInt(model.getValue("/root/init/reqmedireclist/diffdt")) * 1;
- destdd = srcdd.getAddDate(diffdt, "M");
- todd = destdd.getDateFormat();
- model.makeValue("/root/init/allyn", "N");
- }
- else if (diffFlag == "back")
- {
- srcdd = frdd.toDate();
- srcdd = srcdd.getAddDate(-1, "D");
- todd = srcdd.getDateFormat();
-
- diffdt = parseInt(model.getValue("/root/init/reqmedireclist/diffdt")) * -1;
- destdd = srcdd.getAddDate(diffdt, "M");
- frdd = destdd.getDateFormat();
- model.makeValue("/root/init/allyn", "N");
- }
- else if (diffFlag == "today")
- {
- todd = getCurrentDate();
- var today = new Date();
- var frday = new Date();
- var diffdt = parseInt(model.getValue("/root/init/reqmedireclist/diffdt")) * -1;
- frday = today.getAddDate(diffdt , "M");
- frdd = frday.getDateFormat();
- model.makeValue("/root/init/allyn", "N");
- }
- else
- {
- if (model.getValue("/root/init/reqmedireclist/diffdt") != "-")
- {
- var today = todd.toDate();
- var frday = new Date();
- var diffdt = parseInt(model.getValue("/root/init/reqmedireclist/diffdt")) * -1;
- frday = today.getAddDate(diffdt , "M");
- frdd = frday.getDateFormat();
-
- button2.disabled = false;
- ipt_formrecdtfr.disabled = false;
- ipt_formrecdtto.disabled = false;
- button6.disabled = false;
- button3.disabled = false;
-
- model.makeValue("/root/init/allyn", "N");
- }
- else
- {
- button2.disabled = true;
- ipt_formrecdtfr.disabled = true;
- ipt_formrecdtto.disabled = true;
- button6.disabled = true;
- button3.disabled = true;
-
- model.makeValue("/root/init/allyn", "Y");
- }
- }
- model.setValue("/root/init/reqmedireclist/recfromdt", frdd);
- model.setValue("/root/init/reqmedireclist/rectodt", todd);
- ipt_formrecdtfr.refresh();
- ipt_formrecdtto.refresh();
- }
|