12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 진료대상자리스트 ( SMMMO04100_진료대상자리스트.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var curPrcpObj; // 처방 화면 window object
- var curCpObj; // CP화면 window object
- var curCpSrchObj; // CP검색 화면 window object
- var curExamRsltObj; // 검사결과 화면 window object
- var curEmrRecObj; // 진료기록 화면 window object
- /**
- * @desc : 진료대상자 리스트 화면 초기화
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fInitializeDone_SMMO04100(){
- fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/main/interface", "006");
- fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/main/ordtab", "007");
-
- /*
- //20091201 HJS 미니진료대상자리스트가 뜰때는 진료대상자를 닫아버린다.
- var curPatListMiniWnd = getOpenWindow("SPMMO04200");
- if ( curPatListMiniWnd != null ) {
- curPatListMiniWnd.javascript.fPatListMiniClose();
- }
- */
- var sAbleSelPatlist = fCheckAbleSelPat(); // 환자선택시 진료 가능 부서 여부 체크시 사용
- setGlobalVariable("able_sel_patlist", sAbleSelPatlist, "M");
-
- fGethardcdArrayList(new Array(
- "dentdept|242"
- ),
- new Array(
- "/root/init"
- )
- );
- var ordtab = getGlobalVariable("ordtab");
- if(ordtab.length < 1){ //최초 open, 외래를 기본으로
- /*
- var jobposcd = getUserInfo("jobposcd");
- if (jobposcd == "1775" || jobposcd == "1800") {
- btn_in.selected = true;
- btn_in.dispatch("DOMActivate");
- } else {
- btn_out.selected = true;
- btn_out.dispatch("DOMActivate");
- }
- */
- var tabinfo = model.getValue("/root/main/ordtab/answcnt");
- if (tabinfo == "001") {
- var btnobj = document.controls.item("btn_out");
- } else if (tabinfo == "002") {
- var btnobj = document.controls.item("btn_in");
- } else if (tabinfo == "003") {
- var btnobj = document.controls.item("btn_er");
- } else if (tabinfo == "004") {
- var btnobj = document.controls.item("btn_op");
- } else if (tabinfo == "005") {
- var btnobj = document.controls.item("btn_srch");
- } else if (tabinfo == "006") {
- var btnobj = document.controls.item("btn_cnst");
- } else {
- var jobposcd = getUserInfo("jobposcd");
- if (jobposcd == "1775" || jobposcd == "1800") {
- var btnobj = document.controls.item("btn_in");
- } else {
- var btnobj = document.controls.item("btn_out");
- }
- }
- btnobj.selected = true;
- btnobj.dispatch("DOMActivate");
- }else{ //ordtab이 설정된 경우, close후 다시 열린 경우
- ordtabarr = ordtab.split("^");
- var caseid = ordtabarr[0]; //탭정보
- var condlist = ordtabarr[1]; //조회조건
- if (caseid =="") {
- var tabinfo = model.getValue("/root/main/ordtab/answcnt");
- if (tabinfo == "001") {
- var btnobj = document.controls.item("btn_out");
- } else if (tabinfo == "002") {
- var btnobj = document.controls.item("btn_in");
- } else if (tabinfo == "003") {
- var btnobj = document.controls.item("btn_er");
- } else if (tabinfo == "004") {
- var btnobj = document.controls.item("btn_op");
- } else if (tabinfo == "005") {
- var btnobj = document.controls.item("btn_srch");
- } else if (tabinfo == "006") {
- var btnobj = document.controls.item("btn_cnst");
- } else {
- var btnobj = document.controls.item("btn_out");
- }
- } else {
- var btnobj = document.controls.item("btn_" + caseid);
- }
- model.setValue("/root/reopen/reopenflag", "Y");
- setCSVToNode("/root/reopen/condlist", condlist, "condlist"); //cond설정
-
- btnobj.selected = true;
- btnobj.dispatch("DOMActivate");
- }
- }
- /**
- * @desc : 처방Main 화면 Open, CP환자인 경우 CP Main 화면 Open 또는 CP검색화면 Open (CP업무 추가 2007.09.27)
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- var gsLogParam = "";
- function fOpenPrcpMainWnd(sRecFlag){
- // 환자 선택 로그 시작
- var ordrecflag = model.getValue("/root/main/cond/ordrecflag");
- var recnaviyn = model.getValue("/root/main/cond/recnaviyn");
-
- gsLogParam = ""; // 전역 로그변수 초기화
- fStartLogCheck("fOpenPrcpMainWnd");
-
- var sLogParam = "";
- var step1Elapsed = 0; // 처방 관련 화면 설정 시간
- var step2Elapsed = 0; // 기록 화면 설정 설정 시간
- var step3Elapsed = 0; // 처방 화면 설정 설정 시간
-
- var cpflag = model.getValue(root.cpflag);
- var pid = model.getValue(root.source.pid);
- var ordtype = model.getValue("/root/main/paminfo/list/ordtype");
-
- fStartLogTempCheck("fOpenPrcpMainWnd_Step1");
- fReloadOrdWnd(pid, ordtype); //활성화된 진료관련 화면 재조회
- step1Elapsed = fEndLogTempCheck("fOpenPrcpMainWnd_Step1");
-
- var monitorNumber = app.monitorNumber;
- var consulyn = model.getValue("/root/source/consulyn");
-
- var mainObj = getMainViewer();
- var curCpObj = mainObj.javascript.getOpenWindow("SMMMP00800"); //활성화된 CP Main 화면 object loading
- var curPrcpObj = mainObj.javascript.getOpenWindow("SMMMO00100"); //활성화된 처방Main 화면 object loading
- var curCpSrchObj = mainObj.javascript.getOpenWindow("SPMMP01200"); //활성화된 CP 검색 화면 object loading
-
- if (sRecFlag == "Y") { // EMR에 클릭 된경우
- if(curPrcpObj != null) { curPrcpObj.javascript.fPrcpWndClose(); } //활성화된 처방Main 화면이 있는 경우 close
- if(curCpObj != null) { curCpObj.javascript.fCloseGPS(); } //활성화된 CP Main화면이 있는 경우 close
- if(curCpSrchObj != null){ curCpSrchObj.javascript.fCpSrchWndClose(); } //활성화된 CP검색화면이 있는 경우 close
- clearParameter("SMMMO04100_ANSWCNT");
- fChngEMRScrn();// 진료기록 Open
- } else { // EMR에 체크 되지 않은경우
- var answcnt = model.getValue("/root/main/interface/answcnt"); // 환경설정의 질문값을 가져온다.
- setParameter("SMMMO04100_ANSWCNT", answcnt);
-
- if(cpflag == "N"){ //처방 Main Open
- if(curCpObj != null) {curCpObj.javascript.fCloseGPS();} //활성화된 CP Main화면이 있는 경우 close
- if(curCpSrchObj != null){curCpSrchObj.javascript.fCpSrchWndClose();} //활성화된 CP검색화면이 있는 경우 close
-
- if(curPrcpObj == null){ //활성화된 처방화면이 없는 경우, 신규화면을 오픈
- mainObj.javascript.setParameter("SMMMO00100_ordrecflag", model.getValue("/root/main/cond/ordrecflag"));
- mainObj.javascript.setParameter("SMMMO00100_callvisityn", getParameter("SMMMO04100_callvisityn"));// 응급실 콜비짓 여부
- var sysMessageobj = getViewer("sysMessage");
- if (answcnt == "004"|| answcnt =="") { // 처방창과 기록창 모두 오픈
- sysMessageobj.window.javascript.setParameter("SMMMO04100_ANSWCNT", answcnt);
- sysMessageobj.window.javascript.open("SMMMO00100", 2, null, null, "SMMMO00100", "", "", "", false);
- } else { // 기록창만 블라인드
- fChngMainEMRScrn();// 진료기록 Open
- if (ordrecflag =="Y") {
- clearParameter("SMMMO04100_ANSWCNT");
- }
- sysMessageobj.window.javascript.open("SMMMO00100", 2, null, null, "SMMMO00100", "", "", "", false);
- }
- }else{
- fStartLogTempCheck("fOpenPrcpMainWnd_Step3");
- if(curPrcpObj.javascript.fPrcpSavePatList()){}
- curPrcpObj.model.setValue("root/init/bfprcpload" , "N"); //전처방을 초기화한다.
-
- fStartLogCheck("fXReReady");
- curPrcpObj.javascript.fXReReady(consulyn);
- sLogParam = fgetLogParam();// item02~item10
- fEndLogCheck("fXReReady", sLogParam);
- step3Elapsed = fEndLogTempCheck("fOpenPrcpMainWnd_Step3");
-
- if (consulyn=="T"){
- ordrecflag = "N"
- }
- if (ordrecflag =="Y") {
- clearParameter("SMMMO04100_ANSWCNT");
- }
-
- if (consulyn !="T"){
-
- fStartLogTempCheck("fOpenPrcpMainWnd_Step2");
- fStartLogCheck("fChngMainEMRScrn");
-
- fChngMainEMRScrn();
- recnaviyn = model.getValue("/root/main/cond/recnaviyn");
- if(recnaviyn == "N") {
- sLogParam = fgetLogParam();// item02~item10
- fEndLogCheck("fChngMainEMRScrn", sLogParam);
- }
- step2Elapsed = fEndLogTempCheck("fOpenPrcpMainWnd_Step2");
- }
- }
- mainObj.window.activate();
- } else if(cpflag =="Y"){ //CP Main Open
-
- if(curPrcpObj != null){curPrcpObj.javascript.fPrcpWndClose();} //활성화된 처방Main화면이 있는 경우 close
- if(curCpSrchObj != null){curCpSrchObj.javascript.fCpSrchWndClose();} //활성화된 CP검색화면이 있는 경우 close
-
- if(curCpObj == null){ //활성화된 CP화면이 없는 경우, 신규화면을 오픈
- mainObj.javascript.setParameter("SMMMO00100_ordrecflag", model.getValue("/root/main/cond/ordrecflag"));
- var sysMessageobj = getViewer("sysMessage");
- mainObj.window.javascript.open("SMMMP00800", "2", "0", "0", "SMMMP00800", "", "", "", false);
- } else{
- curCpObj.javascript.fReconstruct();
- }
-
- } else if(cpflag =="X"){ //CP 검색 Open
- if(curCpObj != null){curCpObj.javascript.fCloseGPS();} //활성화된 CP Main화면이 있는 경우 close
- if(curPrcpObj != null){curPrcpObj.javascript.fPrcpWndClose();} //활성화된 처방Main화면이 있는 경우 close
-
- if(curCpSrchObj == null){
- mainObj.javascript.open("SPMMP01200", monitorNumber, null, null, "SPMMP01200", "", "", "", false);
- }
- }
-
- if (consulyn !="T"){ //kskim 중증체류시간 화면(SPMMO21300) 닫기
- fCloseSPMMO21300Wnd();
- }
- }
-
- if (cpflag == "N" && curPrcpObj != null && recnaviyn == "N" ) { // EMR에 클릭 된경우
- sLogParam = fgetLogParam() + "|" // item02~item10
- + step1Elapsed + "|" // 처방 관련 화면 설정 // item11
- + step2Elapsed + "|" // 기록 화면 설정 // item12
- + step3Elapsed // 처방 화면 설정 // item13
- ;
- fEndLogCheck("fOpenPrcpMainWnd", sLogParam);
- }
- }
- /**
- * @desc : 공통으로 사용할 속도체크를 위한 로그 정보
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fgetLogParam() {
- var sRtn = "";
- var sOrdDd = "";
- var sOrdDrId = "";
-
- if(isNull(gsLogParam)) {
- var pamInfoCvs = getGlobalVariable("paminfo"); //상단정보가 있을 경우는 검색
- if(pamInfoCvs != null){ //cvs가 null이 아닌 경우에만 처리함.
- model.removeNodeSet ("/root/main/paminfo/list");
- setCSVToNode ("/root/main/paminfo", pamInfoCvs);
- if( "O" == model.getValue("/root/main/paminfo/list/ioflag")) {
- sOrdDd = model.getValue("/root/main/paminfo/list/orddd");
- sOrdDrId = model.getValue("/root/main/paminfo/list/orddrid");
- } else {
- sOrdDd = model.getValue("/root/main/paminfo/list/indd");
- sOrdDrId = model.getValue("/root/main/paminfo/list/medispclid");
- }
-
- gsLogParam = "userid:" + getUserInfo("userid") + "|" // item02
- + "instcd:" + getUserInfo("dutplceinstcd") + "|" // item03
- + "pid:" + model.getValue("/root/main/paminfo/list/pid") + "|" // item04
- + "orddd:" + sOrdDd + "|" // item05
- + "cretno:" + model.getValue("/root/main/paminfo/list/cretno") + "|" // item06
- + "orddeptcd:" + model.getValue("/root/main/paminfo/list/orddeptcd") + "|" // item07
- + "orddrid:" + sOrdDrId + "|" // item08
- + "scrnid:" + model.getValue("/root/main/cond/scrnid") + "|" // item09
- + "caseid:" + model.getValue("/root/main/cond/caseid"); // item10
- }
- }
-
- sRtn = gsLogParam;
-
- return sRtn;
- }
- /**
- * @desc : 활성화된 진료관련 화면 Reload
- * : 환자 변경시 활성화된 진료관련 화면 재조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReloadOrdWnd(sPid, sOrdType) {
- //활성화된 통합기록 조회 화면 object loading
- var sLogParam = fgetLogParam(); // item02~item10
- var mainObj = getMainViewer();
-
- var curExamRecObj = getOpenWindow("SMMRI00400");
- if(curExamRecObj != null) { //통합기록 조회화면 refresh;
- fStartLogCheck("fReloadOrdWnd_SMMRI00400");
-
- mainObj.window.javascript.setParameter("SMMRI00400_param_pid", sPid);
- mainObj.window.javascript.setParameter("SMMRI00400_param_chosflag", sOrdType);
- curExamRecObj.javascript.fInitalize();
- activateChild("SMMRI00400");
-
- fEndLogCheck("fReloadOrdWnd_SMMRI00400", sLogParam);
- }
-
- //활성화된 검사결과 화면 object loading
- var curExamRsltObj = getOpenWindow("SMAER00800");
- if(curExamRsltObj != null){ //검사결과 화면 refresh;
- fStartLogCheck("fReloadOrdWnd_SMAER00800");
-
- curExamRsltObj.model.setvalue("/root/send/data/singdata/srchpid", sPid );
- curExamRsltObj.javascript.btn_srch.dispatch("DOMActivate");
-
- fEndLogCheck("fReloadOrdWnd_SMAER00800", sLogParam);
- }
-
- //활성화된 간호 TPR 화면 object loading
- var curNurTprObj = getOpenWindow("SMMNR00900");
- if(curNurTprObj != null){ //간호 TPR 화면 refresh : 2008-11-28 : 김영학 ;
- fStartLogCheck("fReloadOrdWnd_SMMNR00900");
- curNurTprObj.javascript.fInitialize("init");
- fEndLogCheck("fReloadOrdWnd_SMMNR00900", sLogParam);
- }
-
- //활성화된 간호 TPR 화면 object loading
- var curNurBSEMRObj = getOpenWindow("SMMNR02500");
- if(curNurBSEMRObj != null){ //혈당간호기록 refresh : 2008-12-24 : 김영학 ;
- fStartLogCheck("fReloadOrdWnd_SMMNR02500");
-
- curNurBSEMRObj.javascript.fInitialize("init");
-
- fEndLogCheck("fReloadOrdWnd_SMMNR02500", sLogParam);
- }
-
- //활성화된 그래프 서식 화면 object loading
- var curGrphObj = getOpenWindow("SPMRF05200");
- if(curGrphObj != null){ //그래프 서식 refresh : 2009-01-02 : 박민규 SW 요청 : 김영학 ;
- fStartLogCheck("fReloadOrdWnd_SPMRF05200");
-
- curGrphObj.javascript.fInitialize();
-
- fEndLogCheck("fReloadOrdWnd_SPMRF05200", sLogParam);
- }
-
- //활성화된 Consult 화면 object loading
- var curCunsultObj = getOpenWindow("SMMMR05000");
- if(curCunsultObj != null ){ //Consult 화면 refresh;
- fStartLogCheck("fReloadOrdWnd_SMMMR05000");
-
- curCunsultObj.javascript.fInitalize();
-
- fEndLogCheck("fReloadOrdWnd_SMMMR05000", sLogParam);
- }
- //활성화된 검사결과 화면 object loading
- var curExamRsltNewObj = getOpenWindow("SMMMI00100");
- if(curExamRsltNewObj != null){ //검사결과 화면 NEW refresh;
- fStartLogCheck("fReloadOrdWnd_SMMMI00100");
-
- curExamRsltNewObj.model.setvalue("/root/send/data/singdata/srchpid", sPid );
- curExamRsltNewObj.javascript.btn_srch.dispatch("DOMActivate");
-
- fEndLogCheck("fReloadOrdWnd_SMMMI00100", sLogParam);
- }
- }
- /**
- * @desc : 진료기록화면 Open
- * : 메인화면에 기록지가 없는 경우, 새 기록지 open
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenOrdRecMainWnd(param){
- var mainObj = getMainViewer();
- if(param == ""){
- var ordrecflag = model.getValue("/root/main/cond/ordrecflag");
- if(ordrecflag == "N"){
- var wndid = "SMMMR00100";
- }else{
- var wndid = "SMMMB08100";
- }
- }else{
- var wndid = "SMMMR03700";
- }
- var scrnID = mainObj.javascript.getScreenID();
- if(scrnID == wndid){
- mainObj.javascript.fInitPamInfo();
-
- }else{
- mainObj.javascript.navigate(wndid);
- }
- }
- /**
- * @desc : 빈xrw open
- * @ : 처방화면이 진료대상자에 종속되는 것을 막기위해 main화면에 empty화면을 navigate한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenEmptyWnd(){
- var mainObj = getMainViewer();
- var scrnID = mainObj.javascript.getScreenID();
- if(scrnID == "SMMMB08100"){
- mainObj.javascript.fInitPamInfo();
- }else{
- mainObj.javascript.navigate("SMMMB08100"); //빈기록지 open
- }
- }
- /**
- * @desc : 처방에서 저장 후, 현 진료대상자 화면 재조회 처리(iviewer dispatch)
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPrcpCallPatList(){
- iviewer1.window.javascript.btn_req.dispatch("DOMActivate");
- }
- /**
- * @desc : 진료대상자리스트 button disabled control
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fCtrlBtnDisable(bflag){
- btn_out.disabled = bflag;
- btn_in.disabled = bflag;
- btn_er.disabled = bflag;
- btn_op.disabled = bflag;
- btn_srch.disabled = bflag;
- btn_cnst.disabled = bflag;
- model.refresh();
- }
- /**
- * @desc : 외래 tab button 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnOut(){
- model.setValue("/root/main/cond/scrnid", "SMMMO04200");
- model.setValue("/root/main/cond/grdid", "grd_outpatlist");
- model.setValue("/root/main/cond/caseid", "out");
-
- //진료기록 창에 현재 진료대상자의 Tab id를 넘겨준다. 안치원 대리님 요청사항
- setParameter("SMMMO04100_medirec_caseid", model.getValue("/root/main/cond/caseid"));
-
- fCtrlBtnDisable(true); //loading이 완료되기 전에 탭 이동을 막는다.
- iviewer1.src="SMMMO04200_외래환자리스트.xrw";
- }
- /**
- * @desc : 입원 tab button 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnIn(){
- model.setValue("/root/main/cond/scrnid", "SMMMO04300");
- model.setValue("/root/main/cond/grdid", "grd_inpatlist");
- model.setValue("/root/main/cond/caseid", "in");
-
- //진료기록 창에 현재 진료대상자의 Tab id를 넘겨준다. 안치원 대리님 요청사항
- setParameter("SMMMO04100_medirec_caseid", model.getValue("/root/main/cond/caseid"));
-
- fCtrlBtnDisable(true); //loading이 완료되기 전에 탭 이동을 막는다.
- iviewer1.src="SMMMO04300_입원환자리스트.xrw";
- }
- /**
- * @desc : 응급 tab button 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnEr(){
- model.setValue("/root/main/cond/scrnid", "SMMMO04400");
- model.setValue("/root/main/cond/grdid", "grd_erpatlist");
- model.setValue("/root/main/cond/caseid", "er");
-
- //진료기록 창에 현재 진료대상자의 Tab id를 넘겨준다. 안치원 대리님 요청사항
- setParameter("SMMMO04100_medirec_caseid", model.getValue("/root/main/cond/caseid"));
-
- fCtrlBtnDisable(true); //loading이 완료되기 전에 탭 이동을 막는다.
- iviewer1.src="SMMMO04400_응급환자리스트.xrw";
- }
- /**
- * @desc : 수술 tab button 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnOp(){
- model.setValue("/root/main/cond/scrnid", "SMMMO04500");
- model.setValue("/root/main/cond/grdid", "grd_oppatlist");
- model.setValue("/root/main/cond/caseid", "op");
-
- //진료기록 창에 현재 진료대상자의 Tab id를 넘겨준다. 안치원 대리님 요청사항
- setParameter("SMMMO04100_medirec_caseid", model.getValue("/root/main/cond/caseid"));
-
- fCtrlBtnDisable(true); //loading이 완료되기 전에 탭 이동을 막는다.
- iviewer1.src="SMMMO04500_수술환자리스트.xrw";
- }
- /**
- * @desc : 환자검색 tab button 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnSrch(){
- model.setValue("/root/main/cond/scrnid", "SMMMO04700");
- model.setValue("/root/main/cond/grdid", "grd_srchpatlist");
- model.setValue("/root/main/cond/caseid", "srch");
-
- //진료기록 창에 현재 진료대상자의 Tab id를 넘겨준다. 안치원 대리님 요청사항
- setParameter("SMMMO04100_medirec_caseid", model.getValue("/root/main/cond/caseid"));
-
- fCtrlBtnDisable(true); //loading이 완료되기 전에 탭 이동을 막는다.
- iviewer1.src="SMMMO04700_환자검색.xrw";
- }
- /**
- * @desc : 의뢰 tab button 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnCnst(){
- model.setValue("/root/main/cond/scrnid", "SMMMO04800");
- model.setValue("/root/main/cond/grdid", "grd_cnstpatlist");
- model.setValue("/root/main/cond/caseid", "cnst");
-
- //진료기록 창에 현재 진료대상자의 Tab id를 넘겨준다. 안치원 대리님 요청사항
- setParameter("SMMMO04100_medirec_caseid", model.getValue("/root/main/cond/caseid"));
-
- fCtrlBtnDisable(true); //loading이 완료되기 전에 탭 이동을 막는다.
- iviewer1.src="SMMMO04800_의뢰환자리스트.xrw";
- }
- /**
- * @desc : OCS Check Box 클릭시 처리
- * : check 할 경우 처방화면만 열리고 진료기록 화면을 열지 않는다.
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkCheckBoxOCS(){
- var ordrecflag = model.getValue("/root/main/cond/ordrecflag");
- if(ordrecflag == "Y"){
- model.setValue("/root/main/cond/ordrecflag", "N");
- }else{
- model.setValue("/root/main/cond/ordrecflag", "Y");
- }
- model.setValue("/root/main/cond/chngflag", "Y");
- model.refresh();
- }
- /**
- * @desc : ordtab정보 설정
- * : 진료대상자 close후, 다시 열리는 경우 최종 정보로 setting할 수 있게 한다.
- *
- * : ordtab구성
- * : 1. 진료대상자 tab id
- * : 2. 진료대상자 tab 조회 cond instance
- * : 3. 진료대상자 column설정 정보
- * : 4. OCS check 여부
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fSetOrdTabInfo(){
- var caseid = model.getValue("/root/main/cond/caseid");
- var condlist = getNodeListCSV(model.instance1.selectNodes("/root/cond/" + caseid + "patlist"));
- var ordtab = caseid + "^" + condlist;
- setGlobalVariable("ordtab", ordtab);
- }
- /**
- * @desc : 화면ID의 grid의 column 순서 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function reqOrderInfoOfCol(scrnid, grdid, compscd){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/scrnid", scrnid);
- if (!isNull(compscd)) {
- model.makeValue("/root/send/reqdata/compscd", compscd);
- }
- if(submit("TRMMB01103")){
- var xmlnode = model.instance1.selectSingleNode("/root/init/userscrnenvinfo/gridseq");
- if(xmlnode != null){
- var refdata = model.getValue("/root/init/userscrnenvinfo/gridseq/compsrefcnts");
- var sizedata = model.getValue("/root/init/userscrnenvinfo/gridseq/compssizecnts");
- var frozencol = model.getValue("/root/init/userscrnenvinfo/gridseq/frozencol");
-
- setOrderInfoOfCol(grdid, refdata, sizedata, frozencol); //외래환자리스트 컬럼 설정
- }
- }
- }
- /**
- * @desc : 컬럼 순서 정보 설정
- * @
- * @param : grid ID : 그리드ID
- * : refdata : 그리드 ref데이터 구분자 '^'
- * : sizedata : 그리드 size데이터 구분자 '^'
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function setOrderInfoOfCol(grdid, refdata, sizedata, frozencol){
- var grdobj = document.controls.item(grdid);
- var refarr = refdata.split("^");
- var sizearr = sizedata.split("^");
- var nFrozenCols = 0;
-
- if(refarr.length > 0) {
- for(var i = 0; i < grdobj.cols; i++){
- grdobj.colWidth(i) = 0;
- }
- }
-
- grdobj.mergeCellsFixedRows = "never";
- for(var i = 0; i < refarr.length; i++){
- var colcnt = grdobj.colref("" + refarr[i] + "");
- grdobj.colMove(i, colcnt, "before", false);
-
- var size = sizearr[i];
- if(size == 0){ // size of column 0 -> hidden
- grdobj.colHidden(i) = true;
- }else{
- grdobj.colHidden(i) = false;
- }
- grdobj.colWidth(i) = eval(size);
- }
-
- if(!isNull(frozencol)){ // 고정 컬럼 적용
- nFrozenCols = grdobj.colRef(frozencol);
- if(nFrozenCols>0) {
- grdobj.frozenCols = nFrozenCols;
- } else {
- grdobj.frozenCols = 0;
- }
- } else {
- grdobj.frozenCols = 0;
- }
-
- grdobj.mergeCellsFixedRows = "bycolrec";
- grdobj.rebuild();
- }
- /**
- * @desc : 컬럼설정 버튼 클릭
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnSetCol(){
- var scrnid = model.getValue("/root/main/cond/scrnid");
- var grdid = model.getValue("/root/main/cond/grdid");
- var caseid = model.getValue("/root/main/cond/caseid");
- setParameter("SMMMO04100_param_scrnid", scrnid);
- setParameter("SMMMO04100_param_grdid" , grdid);
- setParameter("SMMMO04100_param_caseid", caseid);
- modal("SPMMB01100");
-
- var useyn = getParameter("SPMMB01100_rtn_useyn");
- if(useyn == "Y"){
- model.setValue("/root/chngcol/chngcolflag", "Y");
- var btnObj = document.controls.item("btn_" + caseid);
- btnObj.dispatch("DOMActivate");
- }
- }
- /**
- * @desc : 처방화면, CP화면에 modal로 뜬 화면이 있는지 여부를 검사한다.
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fChkScrnDisable(){
- var cpflag = model.getValue(opener.root.cpflag); //cpflag여부
- if(cpflag == "N"){
- var wndobj = getOpenWindow("SMMMO00100");
-
- }else if(cpflag == "Y"){
- var wndobj = getOpenWindow("SMMMP00800");
- }
-
- if(wndobj != null){
- var varstatus = wndobj.window.javascript.getScreenDisabled();
-
- if(varstatus == true){
- return false;
- }
- }
-
- return true;
- }
- /**
- * @desc : 통합기록 조회 open
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnTotRecSrch(){
- var pid = model.getValue("/root/source/pid");
- if(pid == ""){
- messageBox("통합기록조회를 검색할 환자를", "C002");
- return;
- }
- var mainobj = getMainViewer();
- var xpt = window.screenleft + eval(0);
- var ypt = window.screenTop + eval(0);
- var coord = getRelativeCoordinate ( xpt, ypt );
- var mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
- mainobj.javascript.open("SMAER00800", mon, xpt, ypt, "SMAER00800", "/root/source/pid", "/root/send/data/singdata/srchpid");
- }
- /**
- * @desc : 환자 수술여부 및 수술처방 확인
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fChkPatOpPrcp(pid, stnddd, cretno){
- model.removeNodeset("root/send/reqdata");
- model.makeValue("/root/send/reqdata/pid" , pid);
- model.makeValue("/root/send/reqdata/stnddd", stnddd);
- model.makeValue("/root/send/reqdata/cretno", cretno);
- if(submit("TRMMO04109",false)){
- var opprcpflag = model.getValue(root.main.opprcpinfo.opprcpinfo.opprcpflag);
- if(opprcpflag == "N"){
- return false;
- }
- }
- return true;
- }
- /**
- * @desc : 환자 등록번호를 통한 환자 이름 가져오기
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
-
- function fPatSrch(s_val, flag){
- if(flag == "1"){
- model.makeValue("/root/tmp/pid", s_val);
- } else if(flag == "2"){
- model.makeValue("/root/tmp/hngnm", s_val);
- }
- model.makeValue("/root/tmp/srchcond", flag);
- model.makeValue("/root/tmp/autoflag","Y"); // 1건인경우 자동으로닫힘
-
- model.resetInstanceNode("/root/main/patinfo/patinfolist");
- modal("SPPMC02500", 1,10, 10, "SPPMC02500", "/root/tmp", "/root/send");
-
- model.refresh();
- }
- /**
- * @desc : CP환자 적용상태값 변경
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fUpdtCPPatAppStatVal(appstat){
- var cpgappno = model.getValue("/root/init/rsltgetdata/getdata/cpgappno");
- model.removeNodeset("/root/send/savedata");
- model.makeValue("/root/send/savedata/cpgappno", cpgappno);
- model.makeValue("/root/send/savedata/appstat" , appstat);
- if(submit("TXMMO04301")==false){
- return false;
- }
- }
- function fChngEMRScrn(){
- model.addLog("EMR OPEN START");
-
- var mainobj = getMainViewer();
- var messageobj = getViewer("sysMessage");
- var mainscrnid = mainobj.javascript.getScreenID(); //메인화면의 기록지 ID
-
- curFormLoaderObj = getOpenWindow("SSMMR01100"); //활성화된 서식로더창 체크
- if(curFormLoaderObj != null){ //서식로더 Close : 2009-06-03 : 이상현 D/L 요청 : 김영학 ;
- curFormLoaderObj.javascript.fClose();
- } //서식로더 close()
-
- var cpflag = model.getValue("/root/cpflag");
-
- var ordrecflag = model.getValue("/root/main/cond/ordrecflag"); //OCS 체크여부
- var chngflag = model.getValue("/root/main/cond/chngflag"); //OCS 체크여부
- var dutplcecd = getUserInfo("dutplcecd"); //사용자부서
- var operation = getGlobalVariable("operation"); //수술정보
- var wndid = "SMMMR00100"; //진료기록화면이 default
-
- var dentdeptcd = model.getValue("/root/init/dentdept/hardcd[hardcd='" + getUserInfo("dutplcecd") + "']/hardcd");
-
- if(dutplcecd == "2090000000" || dutplcecd == "2090300000"){ //사용자부서가 마취통증의학과, 통증클리닉인 경우
- if(operation.length > 0){ //수술환자리스트에서 환자 선택된 경우, 메인화면은 '마취환자기록' loading
- wndid = "SMMMR03700";
- }
- }else{
- if(ordrecflag == "Y"){
- wndid = "SMMMB08100";
- }
- }
- var chngflag = model.setValue("/root/main/cond/chngflag", "N"); //OCS 체크여부
- /*
- //20091130 HJS - 수진키 다를 경우 블러킹
- var pamStr = chkEmrListPaminfo();
- var pamKey = pamStr.split("|");
- setParameter("SMMMR00100_PATINFO_PID", pamKey[0]);
- setParameter("SMMMR00100_PATINFO_ORDDD", pamKey[1]);
- setParameter("SMMMR00100_PATINFO_CRETNO", pamKey[2]);
- */
- if(mainscrnid == wndid){
- if(wndid == "SMMMR03700"){
- mainobj.javascript.fFormInit();
- }else{
- mainobj.javascript.fRecMainReady();
- }
- }else{
- mainobj.javascript.navigate(wndid); //진료기록
- }
-
- //kskim
- //중증체류시간 화면(SPMMO21300) 닫기
- fCloseSPMMO21300Wnd();
- }
- function fChngMainEMRScrn() {
- var mainobj = getMainViewer();
- var messageobj = getViewer("sysMessage");
- var mainscrnid = mainobj.javascript.getScreenID(); //메인화면의 기록지 ID
- var cpflag = model.getValue(root.cpflag);
- var consulyn = model.getValue("/root/source/consulyn");
-
- model.setValue("/root/main/cond/recnaviyn", "N"); // 메인기록창을 navigate로 실행하면 다음 submit에서 오류 발생 원인 불명확
-
- curFormLoaderObj = getOpenWindow("SSMMR01100"); //활성화된 서식로더창 체크
- if(curFormLoaderObj != null){ //서식로더 Close : 2009-06-03 : 이상현 D/L 요청 : 김영학 ;
- //knuh 20120104 최원돈 OCS 진료대상자 OCS 조회 시 환자메모를 자동으로 사라지게 설정 SMMMO04100.js, SPMMR05600.js, MMR00100.js
- var curMemoObj = getOpenWindow("SPMMR05600");
- if(curMemoObj != null){curMemoObj.javascript.window.close();} //환자메모 화면 close
- curFormLoaderObj.javascript.fClose();
- } //서식로더 close()
-
- if (cpflag =="Y"){
- var curPrcpObj= getOpenWindow("SMMMP00800");
- } else {
- var curPrcpObj= getOpenWindow("SMMMO00100");
- }
- var ordrecflag = model.getValue("/root/main/cond/ordrecflag"); //OCS 체크여부
- if (consulyn=="T"){
- ordrecflag = "N"
- }//LYJ
- var chngflag = model.getValue("/root/main/cond/chngflag"); //OCS 체크여부
- if(mainobj != null){
- var dutplcecd = getUserInfo("dutplcecd"); //사용자부서
- var operation = getGlobalVariable("operation"); //수술정보
- var wndid = "SMMMR00100"; //진료기록화면이 default
- var dentdeptcd = model.getValue("/root/init/dentdept/hardcd[hardcd='" + getUserInfo("dutplcecd") + "']/hardcd");
- if(dutplcecd == "2090000000" || dutplcecd == "2090300000"){ //사용자부서가 마취통증의학과, 통증클리닉인 경우
- if(operation.length > 0){ //수술환자리스트에서 환자 선택된 경우, 메인화면은 '마취환자기록' loading
- if(ordrecflag == "Y"){
- wndid = "SMMMB08100";
- }else if ("O" != model.getValue("/root/main/cond/recinfo")) {
- wndid = "SMMMR03700";
- }
- }else{
- if(ordrecflag == "Y"){
- wndid = "SMMMB08100";
- }
- }
- }else{
- if(ordrecflag == "Y"){
- wndid = "SMMMB08100";
- }
- }
- if (curPrcpObj != null) {
- curPrcpObj.model.setValue("root/init/bfprcpload" , "Y"); //전처방화면 최초 생성 여부
- curPrcpObj.model.setValue("root/init/fstopenflag", "N"); //처방화면이 최초 생성 여부
- }
- model.setValue("/root/main/cond/chngflag", "N"); //OCS 체크여부
- if(mainscrnid == wndid){
- if(wndid == "SMMMR03700"){
- mainobj.javascript.fFormInit();
- }else{
- mainobj.javascript.fRecMainReady();
- }
- }else{
- model.setValue("/root/main/cond/recnaviyn", "Y");
- mainobj.window.javascript.navigate(wndid);
- }
- }else{ //전처방화면이 최초 생성된 경우, bfprcpload를 Y로 변경, 추후 tab변경시 메인화면 변경이 되지 않게함
- if (curPrcpObj != null) {
- curPrcpObj.model.setValue("root/init/bfprcpload", "Y"); //전처방화면 최초 생성 여부
- }
- }
- //자가보유처방 조회 (최초 처방창을 열때만 호출한다.) 20100210 by LYJ
- var mainObj = getMainViewer();
- var curPrcpObj = mainObj.javascript.getOpenWindow("SMMMO00100");
- if (opener.model.getValue("/root/hidden/selfhld/selfopenyn") != "Y" ){
- if ( curPrcpObj != null){
- curPrcpObj.javascript.fSelfHldPrcpModal();
- }
- }
- //kimsj 처방시 미비기록 유무 확인(message) -- SMMMO00100.js, SMMMO02100.js에서 submit 실행
- if (curPrcpObj != null){
- curPrcpObj.javascript.fValidRecInfoMsg();
- }
- }
- /**
- * @desc : 진료기록 오픈시 원무정보체크
- * @ : 진료대상자리스트와 상단(혹은 global variable)의 불일치여부 체크를 위해.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function chkEmrListPaminfo(){
- if(getScreenID() == "SMMMO04100") {
- var pid = "";
- var orddd = "";
- var cretno = "";
- var gridObj = null;
- var INSTANCE_PATH = "";
-
- if(getScreenID(iviewer1.document.url) == "SMMMO04200") { // 외래
- gridObj = iviewer1.document.controls.item("grd_outpatlist");
- INSTANCE_PATH = "/root/main/outpatinfo/outpatlist";
- } else if(getScreenID(iviewer1.document.url) == "SMMMO04300") { // 입원
- gridObj = iviewer1.document.controls.item("grd_inpatlist");
- INSTANCE_PATH = "/root/main/inpatinfo/inpatlist";
- } else if(getScreenID(iviewer1.document.url) == "SMMMO04400") { // 응급
- gridObj = iviewer1.document.controls.item("grd_erpatlist");
- INSTANCE_PATH = "/root/main/erpatinfo/erpatlist";
- } else if(getScreenID(iviewer1.document.url) == "SMMMO04500") { // 수술
- gridObj = iviewer1.document.controls.item("grd_oppatlist");
- INSTANCE_PATH = "/root/main/oppatinfo/oppatlist";
- } else if(getScreenID(iviewer1.document.url) == "SMMMO04700") { // 검색
- gridObj = iviewer1.document.controls.item("grd_srchpatlist");
- INSTANCE_PATH = "/root/main/patsrchinfo/patsrchlist";
- } else if(getScreenID(iviewer1.document.url) == "SMMMO04800") { // 의뢰
- gridObj = iviewer1.document.controls.item("grd_cnstpatlist");
- INSTANCE_PATH = "/root/main/cnstpatinfo/cnstpatlist";
- }
- pid = iviewer1.model.getValue(INSTANCE_PATH + "[" + gridObj.row + "]/pid");
- if(getScreenID(iviewer1.document.url) == "SMMMO04500") { // 수술
- if (getPatientInfoDetail("indd") == "") {
- orddd = getPatientInfoDetail("orddd");
- } else {
- orddd = getPatientInfoDetail("indd");
- }
- cretno = getPatientInfoDetail("cretno");
- } else { // 나머지탭.
- if (iviewer1.model.getValue(INSTANCE_PATH + "[" + gridObj.row + "]/orddd") == "") {
- orddd = iviewer1.model.getValue(INSTANCE_PATH + "[" + gridObj.row + "]/indd");
- } else {
- orddd = iviewer1.model.getValue(INSTANCE_PATH + "[" + gridObj.row + "]/orddd");
- }
- cretno = iviewer1.model.getValue(INSTANCE_PATH + "[" + gridObj.row + "]/cretno");
- }
- return pid+"|"+orddd+"|"+cretno;
- } else {
- return "";
- }
- }
- /**
- * @desc : 화면타이틀을 설정한다
- * @ : 형식 : 화면명 + 로그인과 + 로그인한 사용자 + 로그인일시
- * @param :
- * @return :
- * @author : 김영학 2008-11-19
- * @---------------------------------------------------
- function initWndTitle() {
- if (getGlobalVariable("userinfos") != "") {
- var scrnTitle = document.title + " " ;
- scrnTitle += getUserInfo("dutplcenm") + " ";
- scrnTitle += getUserName() + " ";
- scrnTitle += getTitleLoginDate() + " ";
- document.title = scrnTitle;
- }
- }
- */
- /**
- * @desc : EMR Check Box 클릭시 처리
- * : check 할 경우 진료기록 화면만 연다.
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fClkCheckBoxEMR(){
- var recflag = model.getValue("/root/main/cond/recflag");
- var consulyn = model.getValue("/root/source/consulyn");
- if (consulyn=="T"){
- recflag = "N"
- }//LYJ
- if(recflag == "Y"){
- model.setValue("/root/main/cond/recflag", "N");
- }else{
- model.setValue("/root/main/cond/recflag", "Y");
- }
- model.setValue("/root/main/cond/chngflag", "Y");
- model.refresh();
- }
- /**
- * @desc : 진료대상자 출력
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fPrtPatList() {
- iviewer1.window.javascript.fPrtPatList();
- }
- /**
- * @desc : 사용자 답변 조회
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fGetUserEnvOcsOrdAnsw(ref, rsltref, qestcd){
- /*
- var mmb_rsltref = "/root/hidden/interface";
- model.removeNode(mmb_rsltref);
- model.makeNode(mmb_rsltref);
- model.removeNode(ref);
- model.makeValue(ref + "/interqestcd", qestcd);
- if(submit("TRMMB01104", "false", ref, mmb_rsltref)==true){
- model.makeNode(rsltref);
- model.copyNode(rsltref, mmb_rsltref);
- model.removeNode(mmb_rsltref);
- }
- */
- model.removeNodeset(rsltref);
- model.makeNode(rsltref);
- var viewerObj = getViewer("sysMessage");
- //KNUH_20110208, 주희경, 로그인 시 미리 데이터를 조회해 놓고 copy해서 쓰는 방식으로 변경
- var srcNode = viewerObj.window.instance1.selectSingleNode(gvOrderBasicInfoPath +"/interface[qestcd='"+qestcd+"']");
- var targetNode = instance1.selectSingleNode(rsltref);
- var srcChildNodes = srcNode.childNodes;
-
- for(i=0; i<srcChildNodes.length; i++)
- {
- targetNode.appendChild(srcChildNodes.item(i));
- }
- model.refresh();
- }
- function fChkRecInCorrectPid(pid, hngnm) {
- model.removenode("/root/hidden/recinfo/");
- submit("TRMMO04129");
- var xmlnode = model.instance1.selectSingleNode("/root/hidden/recinfo/reclist");
- if(xmlnode != null){
- setParameter("SMMMO04100_pid", pid);
- setParameter("SMMMO04100_hngnm", hngnm);
- modal("SPMMO17800");
- clearParameter("SMMMO04100_pid");
- clearParameter("SMMMO04100_hngnm");
- }
- }
- /**
- * @desc : 진료대상자리스트 닫기.(미니진료대상자리스트 띄울때 닫아버린다.)
- * @
- * @param :
- * @return :
- * @author : 한재상
- * @---------------------------------------------------
- */
- function fPatListClose() {
- window.close();
- }
- /**
- * @desc : 중증체류시간 화면(SPMMO21300) 닫기
- *@author: 김광성(kskim)
- */
- function fCloseSPMMO21300Wnd(){
- var wndobj21300 = getOpenWindow("SPMMO21300");
- var viewerSrc = iviewer1.attribute("src");
- if( viewerSrc != "SMMMO04400_응급환자리스트.xrw" ){
- //alert("SMMMO04400");
- if( wndobj21300 != null ){
- wndobj21300.javascript.fCloseWnd();
- }
- }
- }
- /**
- * @desc : 진료대상자리스트에서 더블클릭시 각 탭에서 블러킹 및 체크 용도로 사용.
- 로직은 추가하되 submission은 각 대상자 화면에 추가해야함.
- * tabkind >>> O:외래, I:입원, E:응급, OP:수술, SRCH:환자검색
- * @author : 한재상(maxizm)
- */
- function fChkBfPrcpLoad(tabkind) {
- var sChkAfterPrcpYn = fGetHardCDList("Y", 221, 3); // 221 후인증 체크 사용여부
- if(sChkAfterPrcpYn == "Y") {
- // 1. 진료대상자에서 후인증관련 블러킹 처리. (전체탭에 대해서)
- model.makeValue("/root/send/aftcert/pid", "");
- model.makeValue("/root/send/aftcert/orddd", "");
- model.makeValue("/root/send/aftcert/cretno", "");
- model.makeValue("/root/send/aftcert/userdeptcd", getUserInfo("dutplcecd")); // 사용자 소속과
- model.makeValue("/root/send/aftcert/userkind", "D"); // 의사 : "D", 그외 : "E"
- model.makeValue("/root/send/aftcert/execkind", "patlist"); // 의사 : "D", 그외 : "E"
- model.makeValue("/root/send/aftcert/orddrid", getUserInfo("userid"));
-
- submit("TRMMO02705", false);
-
- if ( parseInt(model.getValue("/root/hidden/aftcert/aftcertcnt")) > 0 ) {
- messageBox("후인증 미비 내역이 존재합니다. 인증 후 진행하시기 바랍니다.", "C");
- modal ( "SMMMO02700");
- return false;
- }
- }
- return true;
- }
- /**
- * @desc : 진료대상자리스트에서 더블클릭시 환자의 정보 조회 및 체크
- * @ 미수금 체크(patuncoinfo), 민원환자체크(complaininfo)
- * @param : pid:환자번호
- * @return : True:계속진행, False:진행 중단
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fCheckSelectPatInfo(ioflag, pid){
- if (isNull(pid)) { return false; }
-
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/pid", pid);
- model.makeValue("/root/send/reqdata/ioflag", ioflag);
- if(submit("TRMMO04114")){
- // 미수금 안내 메세지창 팝업
- var nodePatUnco = instance1.selectNodes("/root/hidden/selectpatinfo/patuncoinfo");
- if( nodePatUnco != null && nodePatUnco.length > 0 ){
- var nPatUncoAmt = model.getValue("/root/hidden/selectpatinfo/patuncoinfo/outuncoamt");
- if (parseInt(nPatUncoAmt) > 0 ) {
- messageBox("미수금("+ nPatUncoAmt +"원)이 있으니 수납 후 진료토록 안내바랍니다.\n\n문의사항:원무과", "I");
- }
- }
-
- // 민원환자 안내 메세지창 팝업
- //2012/11/29 Start
- if(ioflag=="O" && pid !=""){ //외래일 경우만 처리
- var chk = model.getValue("/root/hidden/selectpatinfo/complaininfo/chk");
- if(chk=="Y"){
- setParameter("SPMMO50200_pid", pid);
- setParameter("SPMMO50200_ioflag", ioflag);
- modal("SPMMO50200_민원확인");
- clearParameter("SPMMO50200_pid");
- clearParameter("SPMMO50200_ioflag");
- }
- }
- //2012/11/29 End
- /*
- var nodeComplain = instance1.selectNodes("/root/hidden/selectpatinfo/complaininfo");
- if( nodeComplain != null && nodeComplain.length > 0 ){
- var sPatName = model.getValue("/root/hidden/selectpatinfo/complaininfo/hngnm");
- var sOrdDate = model.getValue("/root/hidden/selectpatinfo/complaininfo/orddate");
- var sIoFlagNm = model.getValue("/root/hidden/selectpatinfo/complaininfo/ioflagnm");
- var sOfidocAcptDate = model.getValue("/root/hidden/selectpatinfo/complaininfo/ofidocacptdate");
-
- var sMsg = sPatName + "님은 "+ sIoFlagNm + "(" + sOrdDate + ") 진료받은 환자로 " + sOfidocAcptDate + " 건강보험심사평가원에\n진료비가 적정한지 여부를 요청한 민원제기 된 환자이오니 참조하여 주시기 바랍니다."
- if(getUserInfo("dutplceinstcd") == "031") {
- sMsg = sMsg + "\n\n문의사항:심사팀(6135)"
- } else {
- sMsg = sMsg + "\n\n문의사항:심사팀(2188)"
- }
- messageBox(sMsg , "I");
- }
- */
- }
-
- return true;
- // modal ("SMPAM00100");
- }
- /**
- * @desc : 진료대상자리스트에서 환자 선택 가능여부 조회
- * @ 로그인 부서를 체크하여 진료가능한 부서 인지 체크 2012.09.03
- * @param : pid:환자번호
- * @return : True:계속진행, False:진행 중단
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fCheckAbleSelPat() {
- var sRtn = "Y";
-
- var sUserOrdDeptYn = fGetHardCDList("Y", 335, 3); // 진료부서 체크 사용 여부
- if(sUserOrdDeptYn == "Y" ) { // 환자선택시 진료 가능 부서 여부 체크 추가 2012.09.03 엄영만
- model.makeNode("/root/temp/checkselpatorddept");
- model.makeNode("/root/temp/checkselpatexpdept");
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/temp/checkselpatorddept", "O"); // 진료부서 체크 외래 부서 기준으로 체크
- fGetHardCDList("N", 336, 0 , "/root/temp/checkselpatexpdept"); // 336 진료부서 체크 제외 부서
-
- var sUserDeptCD = getUserInfo("dutplcecd"); // 로그인 부서
- var ordDeptNode = instance1.selectSingleNode("/root/temp/checkselpatorddept/dept[deptcd='"+ sUserDeptCD +"']"); // 진료가능부서
- var expDeptNode = instance1.selectSingleNode("/root/temp/checkselpatexpdept/hardcd[hardcd='"+sUserDeptCD+"']"); // 진료가능부서 체크 제외 부서
-
- if( ordDeptNode == null && expDeptNode == null) {
- sRtn = "N";
- }
- model.removeNode("/root/temp/checkselpatorddept");
- model.removeNode("/root/temp/checkselpatexpdept");
- }
-
- return sRtn;
- }
|