1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 응급환자리스트 ( SMMMO04400_응급환자리스트.xrw - JScript )
-
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var sERPATLIST_PATH = "/root/main/erpatinfo/erpatlist";
- var sORDERBY = "";
- /**
- * @desc : 화면 초기화
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fInitialize_SMMMO04400(){
- model.removeNodeset(sERPATLIST_PATH);
- model.setValue("/root/main/cond/srchdd" , getCurrentDate());
-
- var openflag = model.getValue(opener.root.list.erpatlistflag);
- var reopenflag = model.getValue(opener.root.reopen.reopenflag); //진료대상자 리스트 open여부
- var chngcolflag= model.getValue(opener.root.chngcol.chngcolflag); //컬럼변경 여부
-
- // 하드코드 테이블 한번에 조회하도록 프로그램 수정
- fGethardcdArrayList(new Array(
- "hardcdno|1" , //응급의학과 부서코드 조회
- "colorflag|113", //색깔변경 구분 Flag 조회
- "calltime|190", // 응급실 의사호출 관련 자동 호출 시간
- "bpcallyn|226" //응급실 BP호출 적용여부
- ),
- new Array(
- "root/init",
- "root/init",
- "root/init",
- "root/init"
- )
- );
-
- zbcfGetCodeList(new Array("M0623", "M0720"), new Array("/root/init/M0623", "/root/init/M0720")); //공통코드 보험유형 조회
-
- if(openflag == "N"){ //응급환자리스트 최초open
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept" , "D"); //부서코드 콤보
- addComboInstance("/root/init/orddept", "deptcd^depthngnm", "-^전체", "dept"); //부서콤보 전체항목 추가
-
- fReqSectionInfo(); //기본구역 정보 조회
- addComboInstance("/root/init/section", "typecd^typenm", "-^전체", "section"); //기본구역 전체항목 추가
- model.copyNode(opener.root.temp.erpatlist, root.init);
- model.setValue(opener.root.list.erpatlistflag, "Y");
-
- if(reopenflag != "Y"){ //다시 열린 경우가 아니면, 기본 조회 조건 설정
- model.setValue("/root/main/cond/orddeptcd" , "-"); //getUserInfo("dutplcecd")); //진료과 (2008. 09.03 응급탭의 경우 전체로 조회하도록 요청 : 조범준)
- model.setValue("/root/main/cond/medispclid" , "-"); //getUserInfo("userid")); //의사 (2008. 09.03 응급탭의 경우 전체로 조회하도록 요청 : 조범준)
- model.setValue("/root/main/cond/atdoctid" , "-");
- model.setValue("/root/main/cond/erorddeptcd" , "-");
- model.setValue("/root/main/cond/ermedispclid" , "-");
-
- if (model.getValue(root.main.cond.orddeptcd) == "-") {
- model.makeValue("/root/init/userlist/usercombo/userid", "-");
- model.makeValue("/root/init/userlist/usercombo/usernm", "전체");
- model.makeValue("/root/init/userlist2/usercombo/userid", "-");
- model.makeValue("/root/init/userlist2/usercombo/usernm", "전체");
- model.makeValue("/root/init/eruserlist/usercombo/userid", "-");
- model.makeValue("/root/init/eruserlist/usercombo/usernm", "전체");
- } else {
- addComboInstance("/root/init/userlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
- addComboInstance("/root/init/userlist2", "userid^usernm", "-^전체", "usercombo");//의사콤보 전체항목 추가
- addComboInstance("/root/init/eruserlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
- }
- model.refresh();
- }else{ //다시 열린 경우, main에 ordtab의 condlist(화면이 닫힐때 설정된 정보)를 그대로 재설정
- try {
- model.copyNode(root.main.cond, opener.root.reopen.condlist.condlist);
- } catch(E) {
- model.setValue("/root/main/cond/orddeptcd" , getUserInfo("dutplcecd"));
- model.setValue("/root/main/cond/medispclid" , getUserInfo("userid"));
- model.setValue("/root/main/cond/atdoctid" , "-");
- model.setValue("/root/main/cond/erorddeptcd" , "-");
- model.setValue("/root/main/cond/ermedispclid" , "-");
-
- if (model.getValue(root.main.cond.orddeptcd) == "-") {
- model.makeValue("/root/init/userlist/usercombo/userid", "-");
- model.makeValue("/root/init/userlist/usercombo/usernm", "전체");
- model.makeValue("/root/init/userlist2/usercombo/userid", "-");
- model.makeValue("/root/init/userlist2/usercombo/usernm", "전체");
- model.makeValue("/root/init/eruserlist/usercombo/userid", "-");
- model.makeValue("/root/init/eruserlist/usercombo/usernm", "전체");
- } else {
- addComboInstance("/root/init/userlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
- addComboInstance("/root/init/userlist2", "userid^usernm", "-^전체", "usercombo");//의사콤보 전체항목 추가
- addComboInstance("/root/init/eruserlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
- }
- model.refresh();
- }
-
- model.setValue(opener.root.reopen.reopenflag, "N");
-
- mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist" , cmb_orddept.value, "0330", "", "M");
- addComboInstance("/root/init/userlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
-
- mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist2" , cmb_orddept.value, "0330", "", "A");
- addComboInstance("/root/init/userlist2", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
-
- mmbfGetUserComboList("/root/send/reqdata", "/root/init/eruserlist" , cmb_erorddeptcd.value, "0330");
- addComboInstance("/root/init/eruserlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
-
- model.refresh();
- }
- model.copyNode(opener.root.cond.erpatlist, root.main.cond);
- reqOrderInfoOfCol("SMMMO04400", "grd_erpatlist"); //입원환자리스트 컬럼 조회 및 설정
- }else if(openflag == "Y"){ //응급환자리스트 다시open
- model.copyNode(root.init, opener.root.temp.erpatlist);
- model.copyNode(root.main.cond, opener.root.cond.erpatlist);
-
- 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("grd_erpatlist", refdata, sizedata, frozencol); //입원환자리스트 컬럼 설정, 기존에 조회한 내용으로 처리
- }
- }
- if(chngcolflag == "Y"){ //컬럼설정을 통해 재설정 한 경우, 컬럼순서를 다시 조회 처리
- reqOrderInfoOfCol("SMMMO04400", "grd_erpatlist"); //외래환자리스트 컬럼 조회 및 설정
- model.setValue(opener.root.chngcol.chngcolflag, "N");
- }
-
- fReqERPatList();
-
- opener.javascript.fCtrlBtnDisable(false); //응급환자리스트 조회 완료 전에 button disabled
- }
- /**
- * @desc : 응급실Triage
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fOpenERTriage(){
- var iRow = grd_erpatlist.row;
- if(iRow < 1){
- return;
- }
- var sa = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/sa");
- var temp = sa.split("/");
- var paramstr = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/pid") + "▦" +
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/indd") + "▦" +
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/cretno") + "▦" +
- temp[0] + "▦" +
- temp[1] + "▦" +
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/etctel1") + "▦" +
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/hngnm") + "▦" +
-
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/orddeptcd") + "▦" +
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/orddeptnm") + "▦" +
- model.getValue(sERPATLIST_PATH + "[" + iRow + "]/orddoctid");
-
- setParameter("SPMNE04400_param", paramstr);
- modal("SPMNE04400");
-
- setParameter("SPMNE04400_param", "");
- fReqERPatList();
- }
- /**
- * @desc : 응급환자리스트 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqERPatList(){
- model.removeNodeset("/root/send/reqdata");
- model.makeNode("/root/send/reqdata");
- model.copyNode("/root/send/reqdata", "/root/main/cond");
-
- var compsrefcnts = model.getValue("/root/init/userscrnenvinfo/gridseq/compsrefcnts");
- var compssizecnts = model.getValue("/root/init/userscrnenvinfo/gridseq/compssizecnts");
-
- if(isNull(compsrefcnts)) compsrefcnts = "";
- if(isNull(compssizecnts)) compssizecnts = "";
-
- model.makeValue("/root/send/reqdata/compsrefcnts", compsrefcnts);
- model.makeValue("/root/send/reqdata/compssizecnts", compssizecnts);
-
- if(submit("TRMMO04401")==true){
- model.copyNode(opener.root.temp.erpatlist, root.init);
- model.copyNode(opener.root.cond.erpatlist, root.main.cond);
- var ercurpatcnt = grd_erpatlist.rows -1;
- model.makeValue("/root/main/erpatinfo/erpatcnt/ercurpatcnt", ercurpatcnt);
- out_curpatcnt.refresh();
- }
-
- var orderby = model.getValue("/root/main/cond/orderby");
- var sortcol = model.getValue("/root/main/cond/sortcol");
- if(sortcol != "" && orderby != ""){
- sORDERBY = orderby;
- //nodeListSort(grd_erpatlist.nodeset, grd_erpatlist.colAttribute(sortcol, "ref"), sORDERBY);
- grd_erpatlist.colsort(sortcol) = sORDERBY
- grd_erpatlist.sort(1, 1, grd_erpatlist.rows -1, grd_erpatlist.cols -1) = "usersort";
- grd_erpatlist.gridToInstance();
- }
- fChngColorERPatList(); //응급 환자 중증 상태에 따라 색깔을 변경
- grd_erpatlist.refresh();
- }
- /**
- * @desc : 환자 선택 후, 환자 정보 조회 및 기록지 화면 연동
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fSelectERPat(){
- // 환자 선택 로그 시작
- fStartLogCheck("fSelectERPat");
- var step1Elapsed = null; // 외래 환자선택 진행 가능여부 체크 시간
- var step2Elapsed = null; // 입원 환자선택 상단정보 설정 시간
- var step3Elapsed = null; // 처방+기록+그외 팝업창 처리
-
- var ordrecflag = model.getValue(opener.root.main.cond.ordrecflag);
- var currow = grd_erpatlist.row;
- if(currow < 1){
- return;
- }
-
- // 진행가능 한지 여부 체크
- fStartLogTempCheck("fSelectERPat_Step1");
- if( getGlobalVariable("able_sel_patlist", "M") == "N" ) { // 환자 선택 가능 여부 체크 2012.09.03 엄영만
- messageBox("현재 로그인한 '"+ getUserInfo("dutplcenm") +"' 부서는 기록저장 및 처방발행이 불가능한 부서 입니다.\n\n다시 로그인 후 진행 하십시오.","E");
- return false;
- }
-
- if(fChkArrivalTime()== false) { //응급실 콜비짓 여부에 따라 처방/기록 인증저장 제한하기 위한 값 셋팅 20100526 LYJ
- model.makeValue("/root/main/cond/callvisityn" , "N");
- parent.window.javascript.setParameter("SMMMO04100_callvisityn", "N");
- messageBox("응급실 Visit Time을 등록 하지 않으면 기록과 처방은 임시저장만 가능 합니다.", "E");
- } else {
- model.makeValue("/root/main/cond/callvisityn" , "Y");
- parent.window.javascript.setParameter("SMMMO04100_callvisityn", "Y");
- }
-
-
- //처방, CP화면에 modal 또는 modaless가 뜬 경우, 환자 선택 불가
- if(fChkScrnDisable()==false){
- return;
- }
-
- //변경요청(8106) : 응급간호에서 삭제처리한 환자 선택 시 blocking 메세지 처리 추가 (2009.10.09 JJE)
- //triage 기록지 여부 체크 전, 삭제환자 여부 체크하여 처방입력 blocking
- var instcd = getUserInfo("dutplceinstcd");
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var visitno= model.getValue(sERPATLIST_PATH + "[" + currow + "]/visitno");
- fChkInCnclYN(pid, orddd, cretno, "C"); //return 없음, 진료기록창만 호출하므로 아래에서 컨트롤 함
-
- //응급실 의사 결정 관련 알림 팝업 엄영만 2012.07.25
- // 메세지 블러킹 처리 2012.08.10 추후 상황을 봐서 진행 하기로 함.
- var adflag = model.getValue(sERPATLIST_PATH + "[" + currow + "]/adflag"); // 입원의사결정 상태(공통코드 M0720 A:병실입원, B:병실입원(EICU), C:병실입원(응급입원실), H:귀가, D:DNR, E:기타, X:삭제)
- var chosdd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/chosdd"); // 내원시간
- if(adflag != "A" && adflag != "B" && adflag != "C" && adflag != "H" && adflag != "D") {
- var inDateTime = chosdd.toDate("YYYYMMDDhhmm");
- var currentDateTime = new Date();
-
- var sInfoHour = fGetHardCDList("Y", 544, 3); // 응급실 의사결정 정보제공 시간
- var sErrHour = fGetHardCDList("Y", 545, 3); // 응급실 의사결정 환자선택 불가 시간
- if(isNull(sInfoHour)) {
- sInfoHour = "12";
- }
- if(isNull(sErrHour)) {
- sErrHour = "24";
- }
-
- var checkDateTime = chosdd.toDate("YYYYMMDDhhmm").getAddDate(parseInt(sErrHour), "h"); // 입원시간 기준 4시간 이후
- var nDifferenceSeconde = currentDateTime.getTime() - inDateTime.getTime(); // 초 간격
- var nDifferenceHour = Math.floor(nDifferenceSeconde/1000/60/60); // 시간 차이
-
- var nCheckSeconde = 0;
- var nCheckHour = 0;
- var nCheckMinute = 0;
-
- if ( nDifferenceHour >= parseInt(sInfoHour) && nDifferenceHour < parseInt(sErrHour) && adflag != "E") { // 본원 4시간으로 변경 2016.11.01, 본원 12시간으로 변경 2016.05.02 엄영만
- nCheckSeconde = checkDateTime.getTime() - currentDateTime.getTime();
- nCheckHour = Math.floor(nCheckSeconde/1000/60/60); // 시간 차이
- nCheckMinute = Math.floor((nCheckSeconde/1000/60) % 60); // 분 차이
- //경고메시지(20160428 이윤주)
- if(messageBox("응급실 환자에 대해 내원시간 기준 "+ sErrHour +"시간이내에 입/퇴원 의사결정을 하셔야 합니다.\n입/퇴원 의사결정까지 " + nCheckHour + "시간 " + nCheckMinute + "분 남았습니다.\n\n입/퇴원 의사결정 하시겠습니까?", "Q999") == "6") {
- fIntensionDecision(); // 의사결정 화면 팝업후 종료 처리
- return;
- }
- } else if ( nDifferenceHour >= parseInt(sErrHour) ) {
- nCheckSeconde = currentDateTime.getTime() - checkDateTime.getTime();
- nCheckHour = Math.floor(nCheckSeconde/1000/60/60); // 시간 차이
- nCheckMinute = Math.floor((nCheckSeconde/1000/60) % 60); // 분 차이
-
- if(fContainsHardCD("342", "Y")) { // 342 입퇴원 의사 결정에 따른 처방 블러킹 여부(본원만 블러킹) : 블러킹 처리 2012.12.03 엄영만 => 20160428 이윤주 변경
- messageBox("응급실 환자에 대해 내원시간 기준 "+ sErrHour +"시간이내에 입/퇴원 의사결정을 하셔야 합니다.\n\n의사결정이 되지 않을경우 처방 입력이 불가하니 업무에 차질 없도록 협조 부탁 드립니다. -진료처장-\n\n정확한 입/퇴원 의사결정 시간이 " + nCheckHour +"시간 " + nCheckMinute + "분 초과 하였습니다.\n의사결정을 '기타'로 하신경우는 다른항목으로 변경 하셔야 합니다.", "I999");
- fIntensionDecision(); // 의사결정 화면 팝업후 종료 처리
- return;
- } else {
- if(messageBox("응급실 환자에 대해 내원시간 기준 "+ sErrHour +"시간이내에 입/퇴원 의사결정을 하셔야 합니다.\n정확한 입/퇴원 의사결정 시간이 " + nCheckHour +"시간 " + nCheckMinute + "분 초과 하였습니다.\n의사결정을 '기타'로 하신경우는 다른항목으로 변경 하셔야 합니다.\n\n입/퇴원 의사결정 하시겠습니까?", "Q999") == "6") {
- fIntensionDecision(); // 의사결정 화면 팝업후 종료 처리
- return;
- }
- }
- }
- }
-
- //CP환자 여부 확인
- if(fChkCPPatValid(currow)==false){
- return;
- }
-
- // 응급환자에 대한 중증체류시간 팝업 띄우는 부분 시작
- // 작성일 2010.03.09
- // 작성자 김광성(kskim)
- // 관련 xrw : SPMMO21300_중증체류시간
- var wndobj = getOpenWindow("SPMMO21300");
- var sysMessageobj = getViewer("sysMessage");
-
- if( wndobj == null ){
- if( !isNull( model.getValue(sERPATLIST_PATH + "[" + currow + "]/recovwardnm") ) ){
- var SPMMO21300_param = pid+ "▦" + orddd + "▦" + cretno + "▦" + visitno;
- sysMessageobj.window.javascript.setParameter("SPMMO21300_param", SPMMO21300_param);
- sysMessageobj.window.javascript.open("SPMMO21300",1,1280 - 300,100,"SPMMO21300", "", "", "", "", "", "" );
- sysMessageobj.window.javascript.getOpenWindow("SPMMO21300"); // SPMMO21300 윈도우를 열고나서 윈도우 객체를 가져옴
- }
- } else {
- if( !isNull( model.getValue(sERPATLIST_PATH + "[" + currow + "]/recovwardnm") ) ){
- var SPMMO21300_param = pid+ "▦" + orddd + "▦" + cretno + "▦" + visitno;
- sysMessageobj.window.javascript.setParameter("SPMMO21300_param", SPMMO21300_param);
- wndobj.javascript.fStartWnd(); // SPMMO21300팝업 화면 데이터 reflash기능을 담당
- } else {
- wndobj.javascript.fCloseWnd();
- }
- }
- // 응급환자에 대한 중증체류시간 팝업 띄우는 부분 끝. kskim
-
- // 진료기록에 수정된 사항이 있을 경우 저장할 것인지 묻는 함수 호출 : 2009. 07. 27 김영학
- var mainobj = getMainViewer();
- var mainscrnid = mainobj.javascript.getScreenID(); //메인화면의 기록지 ID
- if(mainscrnid == "SMMMR00100"){
- var prvIntRecPamInfRtn = mainobj.window.javascript.fPrevInitRecPamInfo();
- if(prvIntRecPamInfRtn == false){
- return;
- }// 기록지에 필수 입력사항을 입력하지 않았을 때 그냥 넘어가 버리는 오류 수정 20100305 LYJ
- }
- step1Elapsed = fEndLogTempCheck("fSelectERPat_Step1");
-
- // 상단정보 설정
- fStartLogTempCheck("fSelectERPat_Step2");
- if(!fReqERPatPamInfo()) { return; }
- step2Elapsed = fEndLogTempCheck("fSelectERPat_Step2");
-
- // 진료기록, 처방화면 연동
- fStartLogTempCheck("fSelectERPat_Step3");
- var recflag = opener.model.getValue("/root/main/cond/recflag");
- var inCnclYN = model.getValue("/root/hidden/erincnclinfo/info/incnclyn"); //응급간호 삭제 여부
- if (recflag == "Y" || inCnclYN == "Y") { //inCnclYN 조건 추가 (2009.10.26 by JJE)
- opener.javascript.fOpenPrcpMainWnd("Y");
- } else {
- opener.javascript.fOpenPrcpMainWnd("N");
- }
- step3Elapsed = fEndLogTempCheck("fSelectERPat_Step3");
-
- var recnaviyn = opener.model.getValue("/root/main/cond/recnaviyn");
- var mainObj = getMainViewer();
- var curPrcpObj = mainObj.javascript.getOpenWindow("SMMMO00100"); //활성화된 처방Main 화면 object loading
- if (curPrcpObj != null && recnaviyn == "N") { // 처방창이 팝업 된경우만 체크
- var sLogParam = "userid:" + getUserInfo("userid") + "|" // item02
- + "instcd:" + model.getValue(sERPATLIST_PATH + "["+ currow +"]/instcd") + "|" // item03
- + "pid:" + model.getValue(sERPATLIST_PATH + "["+ currow +"]/pid") + "|" // item04
- + "orddd:" + model.getValue(sERPATLIST_PATH + "["+ currow +"]/indd") + "|" // item05
- + "cretno:" + model.getValue(sERPATLIST_PATH + "["+ currow +"]/cretno") + "|" // item06
- + "orddeptcd:" + model.getValue(sERPATLIST_PATH + "["+ currow +"]/orddeptcd") + "|" // item07
- + "orddrid:" + model.getValue(sERPATLIST_PATH + "["+ currow +"]/medispclid") + "|" // item08
- + step1Elapsed + "|" // 진행가능 한지 여부 체크 // item09
- + step2Elapsed + "|" // 상단정보 // item10
- + step3Elapsed // 처방+기록+그외 팝업창 처리 // item11
- ;
- fEndLogCheck("fSelectERPat", sLogParam);
- }
- }
- /**
- * @desc : 응급환자 상단정보 호출
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqERPatPamInfo(){
- var iRow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/pid");
- var indd = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/cretno");
- var instcd = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/instcd");
- var srchdd = model.getValue("/root/main/cond/srchdd");
- var callvisityn = model.getValue("/root/main/cond/callvisityn"); // 응급실 콜비짓 여부 추가 20100526 LYJ
-
- var param = "E" + "▦" + pid + "▦" + indd + "▦" + cretno + "▦" + instcd + "▦" + srchdd + "▦" + callvisityn ;// 응급실 콜비짓 여부 추가 20100526 LYJ
- setParameter("condparam", param);
- modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
-
- var useyn = getParameter("SPMMO08900_rtn_useyn");
- if(useyn == "Y"){
- setParameter("SPMMO08900_rtn_useyn", "");
- return true;
- }else{
- return false;
- }
- }
- /**
- * @desc : 응급실 인턴의사관리
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fOpenErInternMngt(){
- var iRow = grd_erpatlist.row;
- if(iRow < 1){
- return;
- }
- var pid = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/cretno");
- var orddeptcd = model.getValue(sERPATLIST_PATH + "[" + iRow + "]/orddeptcd");
- var param = pid + "▦" + orddd + "▦" + cretno + "▦" + orddeptcd;
- setParameter("SPMMO06300_param", param);
- modal("SPMMO06300");
-
- fReqERPatList();
- }
- /**
- * @desc : 그리드 data 엑셀화일로 저장
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fSaveGridToExcel(){
- saveGridToExcel(grd_erpatlist);
- }
- /**
- * @desc : 응급실호출 등록 화면 Open
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fOpenERCallDr(){
- var currow = grd_erpatlist.row;
- if(currow < 1){
- return;
- }
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var visitno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/visitno");
- var param = pid + "▦" + orddd + "▦" + cretno + "▦" + visitno;
-
- if(model.getValue("/root/init/calltime/hardcd/hardcd")=="-"){
- setParameter("SPMMO06700_param", param);
- modal("SPMMO06700");
- }else{
- setParameter("SPMMO32000_param", param);
- modal("SPMMO32000");
- }
- fReqERPatList();
- }
- /**
- * @desc : 권역외상센터호출 등록 화면 Open 2013.04.03
- * @
- * @param :
- * @return :
- * @author : 김지선
- * @---------------------------------------------------
- */
- function fOpenTRCallDr(){
- var currow = grd_erpatlist.row;
- if(currow < 1){
- return;
- }
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var nm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var intm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/intm");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var visitno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/visitno");
- var param = pid + "▦" + nm + "▦" + orddd + "▦" + intm + "▦" + cretno + "▦" + visitno;
-
- setParameter("SPMMO08000_param", param);
- modal("SPMMO08000");
-
- fReqERPatList();
- }
- /**
- * @desc : 기본구역 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqSectionInfo(){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/baseclsflag" , "B");
- model.makeValue("/root/send/reqdata/supbasetypecd", "BD");
- submit("TRMMO04402");
- }
- /**
- * @desc : 응급환자 정보에 따라 그리드의 row와 cell font color변경
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fChngColorERPatList(){
- var colorflag = model.getValue("/root/init/colorflag/hardcd/hardcd");
- var totrow = grd_erpatlist.rows;
- var curcol = grd_erpatlist.colRef("serdiagflag");
- var currecovcol = grd_erpatlist.colRef("recovwardnm");
- var curadrvflag = grd_erpatlist.colRef("adrvflag");
-
- for(var rowcnt = 1 ; rowcnt < totrow ; rowcnt++){
- var serdiagval = model.getValue(sERPATLIST_PATH + "[" + rowcnt + "]/serdiagflag");
- var recovwardnm = model.getValue(sERPATLIST_PATH + "[" + rowcnt + "]/recovwardnm");
- var color = model.getValue(sERPATLIST_PATH + "[" + rowcnt + "]/color");
- var adrvcolor = model.getValue(sERPATLIST_PATH + "[" + rowcnt + "]/adrvcolor");
- //var adrvflag = model.getValue(sERPATLIST_PATH + "[" + rowcnt + "]/adrvflag");
-
- if(serdiagval != "-" || serdiagval != ""){
- serdiagval = parseInt(serdiagval);
- switch(serdiagval){
- case 1:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#ff0000";
- break;
- case 2:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#ff6600";
- break;
- case 3:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#0000ff";
- break;
- case 4:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#000000";
- break;
- case 5:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#000000";
- break;
- case 8:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#000000";
- break;
- default:
- grd_erpatlist.cellstyle("color", rowcnt, curcol) = "#ffffff";
- break;
- }
- }
-
- if (!isNull(recovwardnm )) {
- grd_erpatlist.cellstyle("color", rowcnt, currecovcol) = "#ff0000";
- }
-
- if (!isNull(adrvcolor )) {
- grd_erpatlist.cellstyle("color", rowcnt, curadrvflag) = "#ff0000";
- }
- grd_erpatlist.rowStyle(rowcnt, "data", "background-color") = "#" + color;
- }
- }
- /**
- * @desc : (응급)관심환자등록창 호출
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fCallWndConcPatRgst(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var hngnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- var indd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var instcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/instcd");
- var seqno = "";
- var param = "I" + "▩" + pid + "▩" + hngnm + "▩" + indd + "▩" + cretno + "▩" + seqno + "▩" + instcd;
- setParameter("param", param);
-
- open("SPMMO08200");
-
- //modal("SPMMO08200");
- //fReqERPatList();
- }
- /**
- * @desc : (응급)주의요망환자창 호출
- * @
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fCallWndWarnPat(){
- var nCurRow = grd_erpatlist.row;
- var sPid = model.getValue(sERPATLIST_PATH + "[" + nCurRow + "]/pid");
- var sHngnm = model.getValue(sERPATLIST_PATH + "[" + nCurRow + "]/hngnm");
-
- setParameter("SMMMO19100_warncd" , sPid);
- setParameter("SMMMO19100_warnnm" , sHngnm);
-
- modal("SMMMO19100");
-
- clearParameter("SMMMO19100_warncd");
- clearParameter("SMMMO19100_warnnm");
- }
- /**
- * @desc : CP환자 여부 검사
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fChkCPPatValid(currow){
- fChkErTriagePatList();
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var cpyn = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cpyn");
- var hngnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- var orddeptcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddeptcd");
- var ioflag = model.getValue(sERPATLIST_PATH + "[" + currow + "]/ioflag");
- if(isNull(orddeptcd)) orddeptcd = model.getValue("/root/main/cond/orddeptcd");
- if(isNull(ioflag)) ioflag = "E";
-
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/pid" , pid);
- model.makeValue("/root/send/reqdata/orddd" , orddd);
- model.makeValue("/root/send/reqdata/cretno" , cretno);
- model.makeValue("/root/send/reqdata/hngnm" , hngnm);
- model.makeValue("/root/send/reqdata/prcpgenrflag", ioflag);
- model.makeValue("/root/send/reqdata/srchtabflag" , "E"); //대상자리스트탭 구분
-
- if(submit("TRMMO04303")==true){
- var cppatnode = model.instance1.selectNodes("/root/init/rsltgetdata/getdata");
- if(cppatnode.length < 1){ //cp적용환자 tbl에 유효한 데이터가 없는 경우
- model.setValue(opener.root.cpflag, "N");
- return true;
- }else{ //CP적용환자 tbl에 유효한 데이터가 있는 경우
- var appstat = model.getValue("/root/init/rsltgetdata/getdata/appstat");
- var cpgnm = model.getValue("/root/init/rsltgetdata/getdata/cpgnm");
- var cpgappno = model.getValue("/root/init/rsltgetdata/getdata/cpgappno");
- var msgcnts = model.getValue("/root/init/rsltgetdata/getdata/msgcnts");
- var msgflag = model.getValue("/root/init/rsltgetdata/getdata/msgflag");
- var prtlflagcd = model.getValue("/root/init/rsltgetdata/getdata/prtlflagcd"); //01:CP,02:CPG
-
- if(appstat == 52){
- //case52: 입원장 CP
- var rtnval = messageBox(msgcnts, msgflag);
- if(rtnval == 6){
- model.setValue(opener.root.cpflag, "X"); // CP Main open
- return true;
- }else{
- model.setValue(opener.root.cpflag, "N");
- if(fUpdtCPPatAppStatVal(41) != false && instance1.selectSingleNode(sERPATLIST_PATH + "[" + currow + "]/cpyn") != null){ //41 : CP 취소
- model.setValue(sERPATLIST_PATH + "[" + currow + "]/cpyn", "N");
- return;
- }else{
- return false;
- }
- }
-
- }else{
- if( prtlflagcd == "02" && isNull(appstat) && msgflag == "P" ){ //모니터링구분:대상자탐색 Case. CPG & 호출flag:Popup(appyn:평가용여부)
- //CPG적용대상자 알림 팝업 호출 (2009.05.04)
- setParameter("SMMMO041_hngnm" , hngnm);
- setParameter("SMMMO041_pid" , pid);
- setParameter("SMMMO041_cretno" , cretno);
- setParameter("SMMMO041_orddd" , orddd);
- setParameter("SMMMO041_ordtype" , ioflag);
- setParameter("SMMMO041_orddeptcd" , orddeptcd);
- setParameter("SMMMO041_slipnm" , model.getValue(root.init.rsltgetdata.getdata.msgcnts)); //cpgno▦cpghistseq▦cpgnm▦slipno▦slipnm▦valusgeyn▦valunm▦guidedocucnts
- setParameter("SMMMO041_cpgmntrflag", appstat); //null, SPMMP03200화면에서 cpgmntrflag(M or S)으로 따짐
- setParameter("SMMMO041_cpgappno" , cpgappno); //적용중인 CP가 존재하면 값이 있음
- setParameter("SMMMO041_cpgnm" , cpgnm); //적용중인 CP가 존재하면 값이 있음
-
- modal("SPMMP03200"); //CP대상자 알람 팝업
-
- if( cpgappno > 0 && cpgappno != getParameter("SPMMP032_cpgappno") && instance1.selectSingleNode(sERPATLIST_PATH + "[" + currow + "]/cpyn") != null){ //진행중인 CP가 있는데 팝업에서 Drop한 경우 CP여부 N으로..
- model.setValue(sERPATLIST_PATH + "[" + currow + "]/cpyn", "N");
- }
- if( !isNull(getParameter("SPMMP032_cpgappno")) && getParameter("SPMMP032_cpgappno") > 0 ){
- model.setValue(opener.root.cpflag, "Y"); //CPG적용한 경우, MGPS 호출
- }else{
- model.setValue(opener.root.cpflag, "N"); //미적용 시 처방 화면 호출
- }
-
- clearParameter("SPMMP032_cpgappno");
- clearParameter("SMMMO041_hngnm");
- clearParameter("SMMMO041_pid");
- clearParameter("SMMMO041_cretno");
- clearParameter("SMMMO041_orddd");
- clearParameter("SMMMO041_ordtype");
- clearParameter("SMMMO041_orddeptcd");
- clearParameter("SMMMO041_slipnm");
- clearParameter("SMMMO041_cpgmntrflag");
- clearParameter("SMMMO041_cpgappno");
- clearParameter("SMMMO041_cpgnm");
-
- return true;
-
- }else{
- //case 12 : D0 ~ D1 CP
- //그외 case : (10 : 진행중...)
- if( !isNull(msgcnts) && !isNull(msgflag) ){
- //12: D0 처방일과 == 입원일 -> Drop 유도
- //그외: 오늘날짜 > CP퇴원예정일 -> Drop 유도
- messageBox(msgcnts, msgflag);
- setParameter("SMMMO043_cpgappno", cpgappno); //drop 팝업에서 인식할 수 있는 param
- setParameter("SMMMO043_drop" , "N"); //drop 팝업에서 인식할 수 있는 param
-
- modal("SPMMP02300");
-
- model.setValue(opener.root.cpflag, "N");
- if( getParameter("SMMMO043_drop") == "Y" ){
- model.setValue(sINPATLIST_PATH + "[" + currow + "]/cpyn", "N");
- }else{
- return false;
- }
- clearParameter("SMMMO043_cpgappno");
- clearParameter("SMMMO043_drop");
- return true;
- }
-
- model.setValue(opener.root.cpflag, "Y");
- return true;
- }
- }
- }
- }
- }
- /**
- * @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;
- }
- }
- /**
- * @desc : 응급실의사 호출내역
- * @
- * @param :
- * @return :
- * @author :
- * @---------------------------------------------------
- */
- function fOpenErCallDrHist(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var hngnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- setParameter("SPMMO06800_pid", pid);
- setParameter("SPMMO06800_hngnm", hngnm);
- open("SPMMO06800");
- }
- /**
- * @desc : Visit Time 체크하여 처방창 오픈 유무 결정
- * @ 타과나 call time이 없을 경우는 처방창이 열리지만 같은과나 해당의사의 경우
- * @ Visit Time이 없을 경우는 처방창이 열리지 않도록 함
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fChkArrivalTime() {
- var userdeptcd = getUserInfo("dutplcecd");
- var userid = getUserId();
- var currow = grd_erpatlist.row;
- var orddoctid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddoctid");
- var orddeptcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/erorddeptcd");
- var erorddeptcd = model.getValue("/root/init/hardcdno/hardcd/hardcd");
- if (userdeptcd != erorddeptcd) { // 응급의학과가 아니면 도착시간이 없으면 처방창을 열지 못하도록 함.
- if (userid == orddoctid || userdeptcd == orddeptcd) { // 담당의 아이디 조건에서 과 포함함 : 2009. 07. 04)
- var visttm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/visttm");
- if (visttm =="------") {
- return false;
- }
- }
- }
- }
- /**
- * @desc : 진료대상자 리스트 출력
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fPrtPatList() {
- var rptid = "RPMMO04104";
- var desNode = "/root/main/erpatinfo/erpatlist";
- model.makeValue("/root/main/cond/orddeptnm", cmb_orddept.label);
- model.makeValue("/root/main/cond/orddrnm", combo5.label);
- model.makeValue("/root/main/cond/sectionnm", combo1.label);
- exeReportPreview(rptid, "XMLSTR", desNode);
- }
- /**
- * @desc : 중증응급 (마우스 오른쪽 버튼 이벤트 )
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fErRecoverWardRgst() {
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var indd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var hngnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- var recovwardcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/recovwardcd");
-
- setParameter("SPMNE04600_pid" , pid);
- setParameter("SPMNE04600_indd" , indd);
- setParameter("SPMNE04600_cretno" , cretno);
- setParameter("SPMNE04600_hngnm" , hngnm);
- setParameter("SPMNE04600_recovwardcd" , recovwardcd);
- modal("SPMNE04600"); // 중증응급등록
- fReqERPatList(); // 응급대상자 리스트 재조회
- }
- /**
- * @desc : 중증응급 환자조회
- * @param :
- * @return :
- * @author : 엄영만 2015.05.22
- * @---------------------------------------------------
- */
- function fErRecoverWardSrch() {
- open("SPMNE04700"); // 중증응급 환자조회
- }
- /**
- * @desc : Triage기록 작성유무
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fChkErTriagePatList() {
- var currow = grd_erpatlist.row;
- var messageobj = getViewer("sysMessage");
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno")
- var sa = model.getValue(sERPATLIST_PATH + "[" + currow + "]/sa");
- var hngnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- var orddeptcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddeptcd");
- var orddeptnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddeptnm");
- var orddrid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddoctid");
-
- var condparam = sa.split("/");
- var sex = condparam[0];
- var age = condparam[1];
- model.makeValue("/root/send/reqdata/pid" , pid);
- model.makeValue("/root/send/reqdata/orddd" , orddd);
- model.makeValue("/root/send/reqdata/cretno" , cretno);
-
- if (submit("TRMMO04403")==true) {
- var cnts = model.getValue("/root/hidden/pattriagelist/erpatlist/pid");
- if (isNull(cnts)) {
- if (messageBox ( "Triage 기록이 작성되지 않았습니다. \n 작성하시겠습니까?", "Q" ) == "6" ) {
- var param = pid + "▦" + orddd + "▦" + cretno + "▦" + sex + "▦" + age + "▦▦" + hngnm + "▦" + orddeptcd + "▦" + orddeptnm + "▦" + orddrid;
- messageobj.window.javascript.setParameter("SPMNE04400_param", param); //parameter
- curErTriageObj = getOpenWindow("SPMNE04400"); //활성화된 진료기록 화면 object loading
- if (curErTriageObj != null) {
- curErTriageObj.window.javascript.fInitialize_SPMNE04400();
- curErTriageObj.window.activate();
- } else {
- //messageobj.window.javascript.open("SPMNE04400", 2, null, null, "SPMNE04400", "", "", "", false);
- messageobj.window.javascript.open("SPMNE04400", 2, null, null, "SPMNE04400", "", "", "", false);
- curErTriageObj = getOpenWindow("SPMNE04400"); //활성화된 진료기록 화면 object loading
- curErTriageObj.window.activate();
- }
- } else {
- curErTriageObj = getOpenWindow("SPMNE04400"); //활성화된 진료기록 화면 object loading
- if (curErTriageObj != null) {
- curErTriageObj.javascript.button2.dispatch("DOMActivate");
- }
- }
- } else {
- curErTriageObj = getOpenWindow("SPMNE04400"); //활성화된 진료기록 화면 object loading
- if (curErTriageObj != null) {
- curErTriageObj.javascript.button2.dispatch("DOMActivate");
- }
- }
- }
- }
- /**
- * @desc : 간호 TPR 조회
- * @
- * @param :
- * @return :
- * @author :박유진 20091102
- * @---------------------------------------------------
- */
- function fCallCareTPRInfo(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var indd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var instcd = getUserInfo("dutplceinstcd");
- setParameter("SMMNR00900_Param", "pid▦indd▦cretno▦instcd▦gbn▩" + pid + "▦" + indd + "▦" + cretno + "▦" + instcd +"▦dr▩");
- var curNurTprObj = getOpenWindow("SMMNR00900"); //활성화된 간호 TPR 화면 object loading
- if(curNurTprObj != null){ //간호 TPR 화면 refresh
- curNurTprObj.javascript.fInitViewer();
- curNurTprObj.javascript.fInitialize("init");
- } else {
- open("SMMNR00900");
- }
- }
- /**
- * @desc : 의사 스케쥴등록
- * @
- * @param :
- * @return :
- * @author :박유진
- * @---------------------------------------------------
- */
- function fSaveErCallVisit(){
- open("SPMMO30000");
- }
- /**
- * @desc : 중증 의사 호출
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fOpenNurseERCallDr(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno")
- var visitno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/visitno")
- var param = pid + "▦" + orddd + "▦" + cretno + "▦" + visitno;
- setParameter("SMMNE05200_param", param);
- modal("SMMNE05200");
- fReqERPatList();
- }
- /**
- * @desc : 중증 의사 당직 관리
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fOpenNurseERDrScheDrList() {
- modal("SMMNE05100");
- }
- /**
- * @desc : 중증의사 Visit 등록
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fOpenNurseERVisitDr() {
- modal("SMMNE05300");
- }
- /**
- * @desc : 호출 의사 사용자 관리
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fOpenDrList() {
- var bpcallyn = model.getValue("/root/init/bpcallyn/hardcd/hardcd");
- if ( !isNull(bpcallyn) && bpcallyn == "Y") {
- setParameter("SMMNE05000_bpcallyn", "Y");
- setParameter("SMMNE05000_param", "Y^Y^Y^Y^Y^Y^Y");
- } else {
- setParameter("SMMNE05000_bpcallyn", "N");
- setParameter("SMMNE05000_param", "Y^Y^Y^Y^N^Y^Y");
- }
-
- modal("SMMNE05000");
- }
- /**
- * @desc : 응급실호출 등록 화면 Open
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fOpenDrCallDeaction(){
- var currow = grd_erpatlist.row;
- if(currow < 1){
- return;
- }
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var visitno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/visitno");
- var param = pid + "▦" + orddd + "▦" + cretno + "▦" + visitno;
- setParameter("SPMMO32300_param", param);
- modal("SPMMO32300");
- fReqERPatList();
- }
- /**
- * @desc : 응급실호출 내역추가 화면 Open
- * @
- * @param :
- * @return :
- * @author : 김소정
- * @---------------------------------------------------
- */
- function fOpenDrCallAddition(){
- var currow = grd_erpatlist.row;
- if(currow < 1){
- return;
- }
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var visitno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/visitno");
- var param = pid + "▦" + orddd + "▦" + cretno + "▦" + visitno;
- setParameter("SPMMO32400_param", param);
- modal("SPMMO32400");
- fReqERPatList();
- }
- /**
- * @desc : 전공의 등록
- * @
- * @param :
- * @event : 팝업창 내 환자 적용 EVENT
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fRgstCnclAtDoct(){
- var mypatinfo = "";
- var currow = grd_erpatlist.row
- var deptcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddeptcd");
- var userdeptcd = getUserInfo("dutplcecd");
- if (deptcd != userdeptcd) {
- messageBox("환자의 진료과가 다르면 담당의 적용을 할 수 없습니다.", "I");
- return;
- }
-
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var indd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var seqno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/seqno");
- var orddeptcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddeptcd");
- var tmpstr = "▦" + pid +
- "▦" + indd +
- "▦" + cretno +
- "▦" + seqno +
- "▦" + orddeptcd +
- "▩";
- mypatinfo += tmpstr;
-
- setParameter("apntflag" , "atdoct"); //화면 적용 구분을 전공의 등록으로 적용
- setParameter("mypatinfo", mypatinfo);
- modal("SPMMO16200");
- fReqERPatList();
- }
- /**
- * @desc : 내 환자 적용/해제
- * @
- * @param :
- * @event : 팝업창 내 환자 적용 EVENT
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fRgstCnclMyPat(){
- var mypatinfo = "";
- var totrow = grd_erpatlist.rows;
- for(var currow = 1 ; currow < totrow ; currow++){
- if(grd_erpatlist.isSelected(currow)){
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var indd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var seqno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/seqno");
- var deptcd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/orddeptcd");
- var tmpstr = "▦" + pid + "▦" + indd + "▦" + cretno + "▦" + seqno + "▦" + deptcd + "▩" ;
- mypatinfo += tmpstr;
- }
- }
-
- setParameter("apntflag", "mypat"); //화면 적용 구분을 내 환자 적용
- setParameter("mypatinfo", mypatinfo);
- modal("SPMMO10700");
-
- fReqERPatList();
- }
- /**
- * @desc : 응급환자 의사결정
- * @
- * @param :
- * @return :
- * @author :
- * @---------------------------------------------------
- */
- function fIntensionDecision(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue("/root/main/erpatinfo/erpatlist[" + currow + "]/pid");
- var hngnm = model.getValue("/root/main/erpatinfo/erpatlist[" + currow + "]/hngnm");
- var indd = model.getValue("/root/main/erpatinfo/erpatlist[" + currow + "]/indd");
- var cretno = model.getValue("/root/main/erpatinfo/erpatlist[" + currow + "]/cretno");
- var instcd = getUserInfo("dutplceinstcd");
- setParameter("SSPMMO26000_Param", pid + "▦" + hngnm + "▦" + indd + "▦" + cretno + "▦" + instcd);
- modal("SPMMO26000");
- if(getParameter("adflag").length > 0){
- model.setValue("/root/main/erpatinfo/erpatlist[" + currow + "]/adflag",getParameter("adflag"));
- grd_erpatlist.refresh();
- clearParameter("adflag");
- }
- }
- /**
- * @desc : 빈병상 현황
- * @
- * @param :
- * @return :
- * @author :
- * @---------------------------------------------------
- */
- function fEmptyBedCheck(){
- setParameter("SMPMI00100_MENUPARAM", "A");
- modal("SPPMI02001");
- }
- /**
- * @desc : 입원의뢰서
- * @
- * @param :
- * @return :
- * @author :
- * @---------------------------------------------------
- */
- function fEnterHosReq(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue("/root/main/erpatinfo/erpatlist[" + currow + "]/pid");
- setParameter("SPMMO00100_pid", pid);
- modal("SPMMO00100");
- var rtn = model.getValue("/root/temp/SPMMO00100_rtn");
- if(rtn=="true"){ //입원결정서가 성공적으로 저장됐을시 리스트의 내용을 갱신해준다.
- btn_req.dispatch("DOMActivate");
- }
- }
- /**
- * @desc : 안전사고 보고
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fPatQi(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var orddd = model.getValue(sERPATLIST_PATH + "[" + currow + "]/indd");
- var cretno = model.getValue(sERPATLIST_PATH + "[" + currow + "]/cretno");
- var ordtype = "E";
- var oprsrvno = "";
-
- setParameter("SMMQR00100_PARAM2", pid + "▦" + orddd + "▦" + cretno + "▦" + ordtype+"▦" + oprsrvno);
- modal("../../../emr/qiweb/xrw/SMMQR00100", "","", "", "SMMQR00100", "", "");
- }
- /**
- * @desc : 환자라벨출력
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fPrintPatLabel(){
- var currow = grd_erpatlist.row;
- var pid = model.getValue(sERPATLIST_PATH + "[" + currow + "]/pid");
- var patnm = model.getValue(sERPATLIST_PATH + "[" + currow + "]/hngnm");
- var sexage = model.getValue(sERPATLIST_PATH + "[" + currow + "]/sa");
-
- setParameter("SMMMB00100_scrnid", "SMMMO04100");
- setParameter("SMMMB00100_pid", pid);
- setParameter("SMMMB00100_patnm", patnm);
- setParameter("SMMMB00100_sexage", sexage);
-
- modal("SMMMB00100");
- }
|