1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522 |
- /*
- 마취간호기록(SMMNP08000.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01 2010-03-25 오후 1:26:26 taebum
- */
- var sAncrPath = "/root/main/lists/mnphancr"; //마취간호기록 XPath
- var sAneuPath = "/root/main/lists/mnphaneulist";//마취간호기록 참여자 정보 XPath
- //화면 오픈시 이벤트
- function fFormInit() {
- group7.visible = false;
- //통합기초코드 로딩
- zbcfGetCodeList(new Array("M0260","M0020","M0270"),
- new Array("/root/init/M0260", "/root/init/M0020",
- "/root/init/M0270"));
- //수술방,마취의,마취간호사 조회
- fGetOpenAnstInfo();
- model.setValue("/root/HideData/condition/opcnfmdd",getCurrentDate());
- addComboItem( "combo2", "전체", "A");
- model.setValue("/root/HideData/condition/oproomcd", "A");
- model.setValue("/root/HideData/condition/anstmthdcd","01 02");//조회조건 전신,부위로 setting
- model.setValue("/root/HideData/condition/opstatcd", "40");//조회조건 수술중 setting
- checkbox3.refresh();
- checkbox4.refresh();
- combo2.refresh();
- input7.refresh();
- model.removeNodeSet("/root/HideData/opschelists/schelist");
- datagrid5.refresh();
- model.removeNodeSet("/root/HideData/CareRecLists/carereclist");
- datagrid8.refresh();
- bbt_save.disabled = true;
- btn_rgst_sct.disabled = true;
- //2008-08-11 오후 10:15:34 taebum 자동 현재일자 스케줄 조회
- fGetNursHardCdInfo("'041','077','REC'", getCurrentDate());
- fGetOpScheList();
- }
- //수술방,마취의,마취간호사 조회
- function fGetOpenAnstInfo(){
- model.removenode("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/searchdd", getCurrentDate());
- submit("TRMNP00600");
- }
- //수술스케줄 조회
- function fGetOpScheList(){
- var sOpcnfmdd = model.getValue("/root/HideData/condition/opcnfmdd");
- var sOproomcd = model.getValue("/root/HideData/condition/oproomcd");
- var sOnstmthdcd = model.getValue("/root/HideData/condition/anstmthdcd");
- var sOpstatcd = model.getValue("/root/HideData/condition/opstatcd");
- var sPid = model.getValue("/root/HideData/condition/pid");
- model.removenode("/root/send");
- model.makeValue("/root/send/opcnfmdd" , sOpcnfmdd );
- model.makeValue("/root/send/oproomcd" , sOproomcd );
- model.makeValue("/root/send/anstmthdcd", sOnstmthdcd );
- model.makeValue("/root/send/opstatcd" , sOpstatcd );
- model.makeValue("/root/send/pid" , sPid );
- /*******************************/
- //조회내용 초기화
- model.resetInstanceNode("/root/HideData/displaypinfo");
- model.resetInstanceNode("/root/main/lists/mnphancr");
- model.resetInstanceNode("/root/main/lists/timeinfo");
- model.removeNodeset("/root/HideData/anstdrlists/anstdrlist");
- model.removeNodeset("/root/main/lists/mnphaneulist");
- model.removeNodeset("/root/main/lists/mnphansrlist1");
- model.removeNodeset("/root/main/lists/mnphansrlist2");
- model.removeNodeset("/root/main/lists/mnphanemlist");
- model.removeNodeset("/root/HideData/CareRecLists/carereclist");
- /********************************/
- model.removeNodeset("/root/HideData/opschelists/schelist");
- datagrid5.refresh();
- if(submit("TRMNP00602")){
- //건수 정보 setting
- var iTotalRows = datagrid5.rows - datagrid5.fixedrows;
- var iTotalAnstCnt = 0;
- var iTotalGAnstCnt = 0;
- var iTotalPAnstCnt = 0;
- var iTotalRecoCnt = 0;
- var iTotalNoSignCnt = 0;
- var sTmpGcnt = "";
- var sTmpPcnt = "";
- var sTmpAnstmthdcdnm = "";
- var sTmpRecovseqno = "";
- var sTmpPkidatetimes = "";//인증일시
- if(iTotalRows > 0){
- for(var i = 1; i <= iTotalRows; i++){
- sTmpGcnt = model.getValue("/root/HideData/opschelists/schelist["+i+"]/gcnt");
- sTmpPcnt = model.getValue("/root/HideData/opschelists/schelist["+i+"]/pcnt");
- sTmpAnstmthdcdnm = model.getValue("/root/HideData/opschelists/schelist["+i+"]/anstmthdcdnm");
- sTmpOprsrvno_ancr = model.getValue("/root/HideData/opschelists/schelist["+i+"]/oprsrvno_ancr");
- sTmpPkidatetimes = model.getValue("/root/HideData/opschelists/schelist["+i+"]/pkidatetimems");
- if(sTmpGcnt == "1"){
- iTotalGAnstCnt++;
- }
- if(sTmpPcnt == "1"){
- iTotalPAnstCnt++;
- }
- if(sTmpAnstmthdcdnm != "" && sTmpAnstmthdcdnm != "" && sTmpAnstmthdcdnm !="undefined" && sTmpAnstmthdcdnm != "-"){
- iTotalAnstCnt++;
- }
- if((sTmpOprsrvno_ancr != "" && sTmpOprsrvno_ancr != "undeinfed" && sTmpOprsrvno_ancr != null && sTmpOprsrvno_ancr != "-")
- && ((sTmpPkidatetimes != "" && sTmpPkidatetimes != "undeinfed" && sTmpPkidatetimes != null && sTmpPkidatetimes != "-"))){
- datagrid5.cellstyle("color", i, 0, i, 27) = "#0078FF"; //회복기록작성
- }
- if(sTmpOprsrvno_ancr != "" && sTmpOprsrvno_ancr != "undeinfed" && sTmpOprsrvno_ancr != null && sTmpOprsrvno_ancr != "-"){
- iTotalRecoCnt++;
- }
- if( (sTmpOprsrvno_ancr != "" && sTmpOprsrvno_ancr != "undeinfed" && sTmpOprsrvno_ancr != null && sTmpOprsrvno_ancr != "-")
- && (sTmpPkidatetimes == "" || sTmpPkidatetimes == "undeinfed" || sTmpPkidatetimes == null || sTmpPkidatetimes == "-")){
- datagrid5.cellstyle("color", i, 0, i, 27) = "#ff0000"; //미인증
- //datagrid5.cellstyle("font", i, 0, i, 27) = "weight";
- iTotalNoSignCnt++;
- }
- }
- model.setValue("/root/HideData/schelisttotalinfo/totalanstcnt" , iTotalAnstCnt);
- model.setValue("/root/HideData/schelisttotalinfo/totalganstcnt", iTotalGAnstCnt);
- model.setValue("/root/HideData/schelisttotalinfo/totalpanstcnt", iTotalPAnstCnt);
- model.setValue("/root/HideData/schelisttotalinfo/totalrecocnt" , iTotalRecoCnt);
- model.setValue("/root/HideData/schelisttotalinfo/totalnosigncnt" , iTotalNoSignCnt);
- output2.refresh();
- output3.refresh();
- output6.refresh();
- output9.refresh();
- output17.refresh();
- }
- }
- }
- //수술스케줄 환자 더블 클릭 시
- function fOnDoulbeClickScheList(row){
- var iCurrentRow = 0;
- if(row < 1)
- iCurrentRow = datagrid5.row;
- else
- iCurrentRow = row;
- if(iCurrentRow < 1){
- return false;
- }
- var iOpStat = model.getValue("/root/HideData/opschelists/schelist["+iCurrentRow+"]/opstatnm");
- if(iOpStat != "대기" && iOpStat != "수술" && iOpStat != "회복" && iOpStat != "종료" ){
- messageBox("기록을 작성할 수 없는 환자 입니다. 진행상태를 확인하시기 바랍니다.","");
- return false;
- }
- group7.visible = true;
- //===================================================
- //추후 마감관련 추가 필요
- //===================================================
- //----------------------------------
- //상단 정보 올리기
- var sPath = "/root/HideData/opschelists/schelist";
- var sPatFlag = model.getValue(sPath+"["+iCurrentRow+"]/oppatflagcd");
- if (sPatFlag == "") {
- sPatFlag = "I";
- }
- var param = "T▦" // 01 O:외래, I:입원구분, T:수술예약
- + model.getValue(sPath+"["+iCurrentRow+"]/pid" ) + "▦" // 02 등록번호
- + model.getValue(sPath+"["+iCurrentRow+"]/opcnfmdd" ) + "▦" // 03 수술시작일자
- + model.getValue(sPath+"["+iCurrentRow+"]/cretno" ) + "▦" // 04 cretno(없는 경우 ""로 처리)
- + model.getValue(sPath+"["+iCurrentRow+"]/instcd" ) + "▦" // 05 기관코드
- + model.getValue(sPath+"["+iCurrentRow+"]/perfdeptcd" ) + "▦" // 06 집도과부서
- + model.getValue(sPath+"["+iCurrentRow+"]/perfdrid" ) + "▦" // 07 집도의ID
- + sPatFlag + "▦" // 08 환자구분
- + "F▦" // 09 F -처리구분 무조건 F로 설정
- + model.getValue(sPath+"["+iCurrentRow+"]/oprsrvno" ) + "▦" // 10 수술예약번호
- + model.getValue(sPath+"["+iCurrentRow+"]/ophistno" ) + "▦" // 11 수술이력번호
- + model.getValue(sPath+"["+iCurrentRow+"]/opcnfmdd" ) + "▦"; // 12 조회일자 2007-09-13 오지훈 추가...
- setParameter("condparam", param);
- //modal("SPMMO08900"); // modal("SPMMO08900", "1", "5","25");
- modal("SPMMO08900", 1, "", "", "", "SPMMO08900", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
- //----------------------------------
- //선택한 수술예약번호 setting
- model.setValue("/root/HideData/condition/oprsrvno", model.getValue(sPath+"["+iCurrentRow+"]/oprsrvno"));
- //환자 정보 setting(스케쥴 및 환자 수술정보)
- model.setValue("/root/HideData/displaypinfo/pinfo1", model.getValue(sPath+"["+iCurrentRow+"]/opcnfmdate"));
- model.setValue("/root/HideData/displaypinfo/pinfo2", model.getValue(sPath+"["+iCurrentRow+"]/oppatflagnm")+ " " +
- model.getValue(sPath+"["+iCurrentRow+"]/hngnm") + " " +
- model.getValue(sPath+"["+iCurrentRow+"]/sa") + " " +
- model.getValue(sPath+"["+iCurrentRow+"]/pid") );
- model.setValue("/root/HideData/displaypinfo/pinfo3", model.getValue(sPath+"["+iCurrentRow+"]/oproomnm") + " " +
- model.getValue(sPath+"["+iCurrentRow+"]/perfdeptnm") + " " +
- model.getValue(sPath+"["+iCurrentRow+"]/perfdrnm") + " " +
- model.getValue(sPath+"["+iCurrentRow+"]/dranstmthdcdnm") );
- output24.refresh();
- output25.refresh();
- output26.refresh();
- //마취간호기록 정보 조회
- fGetAnstNurRecInfo(row);
- }
- //Menu 오른쪽 클릭시 이벤트
- function fShowMenu(pData){
- var Idx = Number(pData);
- var iCurrentRow = datagrid5.row;
- if(iCurrentRow < 1){
- return;
- }
- var sPath = "/root/HideData/opschelists/schelist";
- switch(Idx) {
- case 1 :
- /*
- SMMNR00900_Param
- pid▦indd▦cretno▦instcd▦openflag▩ ==> 등록번호▦입원일자▦생성번호▦기관코드▦화면호출구분▩
- //sParamInfo = "pid▦indd▦cretno▦instcd▩31263▦20080822▦1▦012▩"
- */
- var iCurrentRow = datagrid5.row;
- var sTmpPid = model.getValue("/root/HideData/opschelists/schelist[" + iCurrentRow + "]/pid");
- var sTmpIndd = model.getValue("/root/HideData/opschelists/schelist[" + iCurrentRow + "]/indd");
- var sTmpCretno = model.getValue("/root/HideData/opschelists/schelist[" + iCurrentRow + "]/cretno");
- var sTmpInrmdd = getCurrentDate();
- var sTmpInrmtm = getCurrentTime().substr(0, 4);
- var sTmpRecodeptcd = "";
- var sTmpInstcd = getUserInfo("dutplceinstcd");
- //2008-09-30 오전 2:56:49 taebum 회복실관련 임상관찰 연동 추가사항
- //setParameter("SMMNR00900_Param", "pid▦indd▦cretno▦instcd▩"+sTmpPid+"▦"+sTmpIndd+"▦"+sTmpCretno+"▦"+sTmpInstcd+"▩");
- setParameter("SMMNR00900_SpParam", "pid▦indd▦cretno▦instcd▦inrmdd▦dutplcecd▩"+sTmpPid+"▦"+sTmpIndd+"▦"+sTmpCretno+"▦"+sTmpInstcd+"▦"+sTmpInrmdd+sTmpInrmtm+"▦"+sTmpRecodeptcd+"▩");
- //modal("SMMNR00900");
- open("SMMNR00900", "", "100", "100", "SMMNR00900", "", "");
- //setParameter("SMMNR00900_Param", "");
- break;
- case 2 :
- var pid = model.getValue("/root/HideData/opschelists/schelist[" + iCurrentRow + "]/pid");
- var prcpnm = model.getValue("/root/HideData/opschelists/schelist[" + iCurrentRow + "]/opcdnm");
- var kind = "5";//기타
- var arvposcd = getPatientInfoDetail("wardcd");//병동코드
- var rsrvdt = "";
- //var startposcd = "3073300000";//회복실 부서코드
- var startposcd = getUserInfo("dutplcecd");
- fInsTranCallOP(pid, prcpnm, kind, rsrvdt, arvposcd, startposcd);
- break;
- case 16: //입실취소 구현해야함.
- fInOutRoomCancel(); // 마취간호기록 입실취소
- break;
- default :
- alert("등록된 메뉴정보가 존재하지 않습니다.");
- break;
- }
- }
- /**
- * 마취간호기록 입실 취소 기능
- * 2010-04-08 오후 2:05:48 taebum 추후 개발요청할 수 있음.
- *
- */
- function fInOutRoomCancel(){
- /*
- 입실 취소 하려면...
- 현재 서버의 수술진행상태가 수술일 경우 종료이상일 경우 취소 불가.
- EMR.MNPHANCR의 기록이 임시저장일 경우에만 DELETE 로직을 수행해야 함.
- EMR.MNPHANCR의 기록삭제시 MNPHANSR, MNPHANEU, MNPHANEM을 함께 삭제 처리 해야 함.
- 삭제 처리후 OPRS의 수술진행상태를 대기(30)상태로 update한다.
- */
- var sOprsrvno = model.getValue(sAncrPath+"/oprsrvno");
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/oprsrvno", sOprsrvno);
- //서브밋 추가 하세요~
- return;
- }
- /**
- * @group :
- * @ver : 2008.08.26
- * @by : 김 진 명
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수술실 이송요원 호출 함수
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInsTranCallOP(pid, prcpnm, kind, rsrvdt, arvposcd, startposcd){
- setParameter("status", "OP");
- setParameter("pid", pid);
- setParameter("prcpnm", prcpnm);
- setParameter("kind", kind);
- setParameter("rsrvdt", rsrvdt);
- setParameter("arvposcd", arvposcd);
- setParameter("startposcd", startposcd);
- modal("SMMNB01810" ,"", "300", "150", "SMMNB01810", "", "");
- }
- /**
- * @group :
- * @ver : 2010-03-26 오후 12:18:01
- * @by : taebum
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 마취간호기록 정보 조회
- * @param : row 현재 선택된 행
- * @return :
- * @---------------------------------------------------
- */
- function fGetAnstNurRecInfo(row){
- var iCurrentRow = 0;
- if(row < 1)
- iCurrentRow = datagrid5.row;
- else
- iCurrentRow = row;
- if(iCurrentRow < 1){
- return false;
- }
- //마취간호기록은 마취기록과 동일하게 주수술에 대한 기록만 함.
- //2010-03-26 오후 2:22:07 여의도 마취과 전정숙 UM
- var sMainOprsrvno = model.getValue("/root/HideData/opschelists/schelist["+iCurrentRow+"]/mainoprsrvno");
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/mainoprsrvno", sMainOprsrvno);
- if(submit("TRMNP00603")){
- var sSignkey = model.getValue(sAncrPath+"/pkidatetimems");
- if(sSignkey != null && sSignkey != "" && sSignkey != "undifined"){
- bbt_save.disabled = true;
- btn_rgst_sct.disabled = false;
- }else{
- bbt_save.disabled = false;
- btn_rgst_sct.disabled = false;
- }
- var sInrmdttm = model.getValue(sAncrPath+"/inrmdttm");//입실저장일시
- var sOutrmdttm = model.getValue(sAncrPath+"/outrmdttm");//퇴실저장일시
- var sRecinuserid = model.getValue(sAncrPath+"/recinuserid"); //입실저장 최초등록자ID
- var sRecoutuserid = model.getValue(sAncrPath+"/recoutuserid"); //퇴실저장 최초등록자ID
- var sTmpStat = model.getValue(sAncrPath+"/recstat");
- if(sTmpStat == "u"){
- if( sInrmdttm != "" &&
- sInrmdttm != null &&
- sInrmdttm != "undefined" &&
- sInrmdttm != "undefined" &&
- sInrmdttm != "" &&
- sInrmdttm != null &&
- sRecinuserid != "" ){
- inp_inrmdt.attribute("color") = "#0000ff";
- inp_inrmtm.attribute("color") = "#0000ff";
- }
- if( sOutrmdttm != "" &&
- sOutrmdttm != null &&
- sOutrmdttm != "undefined" &&
- sOutrmdttm != "undefined" &&
- sOutrmdttm != "" &&
- sOutrmdttm != null &&
- sRecoutuserid != "" ){
- inp_outrmdt.attribute("color") = "#0000ff";
- inp_outrmtm.attribute("color") = "#0000ff";
- }
- }else{
- //장비사용여부 해당없음 체크
- model.setValue("/root/main/lists/mnphancr/eqmtuseyn", "Y");
- chk_eqmtuseyn.refresh();
- inp_inrmdt.attribute("color") = "#000000";
- inp_inrmtm.attribute("color") = "#000000";
- inp_outrmdt.attribute("color") = "#000000";
- inp_outrmtm.attribute("color") = "#000000";
- }
- //*수술참여자 마취의사 정보 생성(마취기록에서 작성한 마취의 정보)
- fMakeAnstDrList();
- //간호기록 TypeII 조회
- CareRecList_Read();
- //장비사용여부 버튼 활성화
- fOnClickEquseYnCheck();
- //마취참여자 의사 마취의 콤보에 셋팅
- if(sTmpStat == "i"){
- model.setValue(sAncrPath + "/anstdrid", model.getValue("/root/HideData/anstdrlists/anstdrlist/anstdrid"));
- }
- //마취의 데이터가 존재할 경우 마취방법 기준자료를 조회한다.
- if(model.getValue("/root/main/lists/mnphancr/anstdrid") != ""){
- fValueChangedAnstDoctCombo();
- }
- var sTripanstflag = model.getValue("/root/main/lists/timeinfo/tripanstflag"); //출장마취여부
- var sPainanstflag = model.getValue("/root/main/lists/timeinfo/painanstflag"); //통증마취여부
- var sUserInstcd = getUserInfo("dutplceinstcd");
- //출장마취 또는 통증마취일 경우 입/퇴실 저장버튼 활성화.
- //서울성모, 성빈센트인 경우는 통증마취(집도과가 마취통증의학과)인 경우가 없으므로 수술간호기록에서 연동함.
- if(sTripanstflag == "Y" ||
- (sPainanstflag == "Y" && (model.getValue("/root/code/codeinfo/codelist[cdgrupid = '077' and supcdid = '02' and cdid = '"+ sUserInstcd +"']/cdid")
- || model.getValue("/root/code/codeinfo/codelist[cdgrupid = '077' and supcdid = '03' and cdid = '"+ sUserInstcd +"']/cdid")
- || model.getValue("/root/code/codeinfo/codelist[cdgrupid = '077' and supcdid = '05' and cdid = '"+ sUserInstcd +"']/cdid")))){
- inp_inrmdt.disabled = false;
- inp_inrmtm.disabled = false;
- inp_outrmdt.disabled = false;
- inp_outrmtm.disabled = false;
- button12.disabled = false;
- button14.disabled = false;
- bbt_inroom.disabled = false;
- bbt_outroom.disabled = false;
- combo1.disabled = false;
- img2.disabled = false;
- }else{
- //출장마취 또는 통증마취가 아닌 경우 수술간호기록의 입/퇴실 저장일시를 조회하여 보여주며, 입/퇴실 저장 버튼 및 입력기능 비활성화
- //수술간호기록에 저장된 입실일/퇴실일/퇴실장소 정보 set
- model.setValue("/root/main/lists/mnphancr/inrmdd" , model.getValue("/root/main/lists/timeinfo/opcrinrmdd"));
- model.setValue("/root/main/lists/mnphancr/inrmtm" , model.getValue("/root/main/lists/timeinfo/opcrinrmtm"));
- model.setValue("/root/main/lists/mnphancr/outrmdd" , model.getValue("/root/main/lists/timeinfo/opcroutrmdd"));
- model.setValue("/root/main/lists/mnphancr/outrmtm" , model.getValue("/root/main/lists/timeinfo/opcroutrmtm"));
- model.setValue("/root/main/lists/mnphancr/outplcecode" , model.getValue("/root/main/lists/timeinfo/opcropoutrmplcecd"));
- inp_inrmdt.refresh();
- inp_inrmtm.refresh();
- inp_outrmdt.refresh();
- inp_outrmtm.refresh();
- combo1.refresh();
- model.setValue("/root/main/lists/mnphancr/outplcenm",combo1.label);
- ipt_opoutrmplcenm.refresh();
- inp_inrmdt.disabled = true;
- inp_inrmtm.disabled = true;
- inp_outrmdt.disabled = true;
- inp_outrmtm.disabled = true;
- combo1.disabled = true;
- ipt_opoutrmplcenm.disabled = true;
- button12.disabled = true;
- button14.disabled = true;
- bbt_inroom.disabled = true;
- bbt_outroom.disabled = true;
- img2.disabled = true;
- }
- }
- group7.visible = false;
- }
- /**
- * 수술참여자 마취의사 정보 생성(마취기록에서 작성한 마취의 정보)
- */
- function fMakeAnstDrList(){
- model.removeNodeSet("/root/HideData/anstdrlists");
- datagrid2.refresh();
- var AnstGridXpath = "/root/HideData/anstdrlists/anstdrlist";
- var sAnstDri1 = model.getValue("/root/main/lists/timeinfo/anstdrid1");
- var sAnstDri2 = model.getValue("/root/main/lists/timeinfo/anstdrid2");
- var sAnstDri3 = model.getValue("/root/main/lists/timeinfo/anstdrid3");
- var iGridCnt = 0;
- if(sAnstDri1 != null && sAnstDri1 != "" && sAnstDri1 != "undefined"){
- iGridCnt++;
- model.makeValue(AnstGridXpath+"["+iGridCnt+"]/displayanstdrid",sAnstDri1);
- model.makeValue(AnstGridXpath+"["+iGridCnt+"]/anstdrid" ,sAnstDri1);
- }
- if(sAnstDri2 != null && sAnstDri2 != "" && sAnstDri2 != "undefined"){
- iGridCnt++;
- model.makeValue(AnstGridXpath+"["+iGridCnt+"]/displayanstdrid",sAnstDri2);
- model.makeValue(AnstGridXpath+"["+iGridCnt+"]/anstdrid" ,sAnstDri2);
- }
- if(sAnstDri3 != null && sAnstDri3 != "" && sAnstDri3 != "undefined"){
- iGridCnt++;
- model.makeValue(AnstGridXpath+"["+iGridCnt+"]/displayanstdrid",sAnstDri3);
- model.makeValue(AnstGridXpath+"["+iGridCnt+"]/anstdrid" ,sAnstDri3);
- }
- datagrid2.refresh();
- }
- //저장 버튼 클릭 시 이벤트(임시:U, 확정:C, 입실:I, 퇴실:O)
- function fSave(sFlag){
- var sTripanstflag = model.getValue("/root/main/lists/timeinfo/tripanstflag"); //출장마취여부
- var sPainanstflag = model.getValue("/root/main/lists/timeinfo/painanstflag"); //통증마취여부
- //마취간호기록 Header정보
- var sAncrInsHeader = "status▦"+
- "oprsrvno▦pid▦ioflag▦orddd▦cretno▦"+
- "inrmdttm▦outrmdttm▦outplcecode▦outplcenm▦recinuserid▦"+
- "recindttm▦saveindttm▦recoutuserid▦recoutdttm▦saveoutdttm▦"+
- "patopinsndsmsid▦patopoutsndsmsid▦eqmtuseyn▦umbilicalcordligdt▦umbilicalcordligyn▦"+
- "prevantibioticsyn▦ansafeconfirmid▦anpatsafeconfirmid▦remfact▦deptremark▦"+
- "pkidatetimems▦saveflag▦hngnm▦org_recinuserid▦org_recoutuserid▦anstccrtno▦org_anstccrtno▩";
- //입실저장일 경우
- if(sFlag == "I"){
- if(inp_inrmtm.value == "" || (inp_inrmtm.value.replace(' ', '')).length < 4){
- messageBox("입실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmtm");
- return;
- }else if(inp_inrmdt.value == "" || (inp_inrmdt.value.replace(' ', '')).length < 8){
- messageBox("입실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmdt");
- return;
- }else{
- //환자 도착시간보다 입실시간이 작을 경우 메세지 호출 추가
- //var sPatArriveDt = model.getValue("/root/main/MnphopcrData/MnphopcrList/patarrvdt") +
- // model.getValue("/root/main/MnphopcrData/MnphopcrList/patarrvtm");
- //var sInroomDt = model.getValue("/root/init/workinst/datetimedata/patinroomdd")+
- // model.getValue("/root/init/workinst/datetimedata/patinroomhh");
- //if(sPatArriveDt > sInroomDt){
- // messageBox("환자도착 시간을 확인 하시기 바랍니다.", "I000");
- // model.setFocus("inp_patinroomhh");
- // return;
- //}
- }
- //퇴실저장일 경우
- }else if(sFlag == "O"){
- if(inp_inrmdt.value == "" || (inp_inrmdt.value.replace(' ', '')).length < 8){
- messageBox("입실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmdt");
- return;
- }
- if(inp_inrmtm.value == "" || (inp_inrmtm.value.replace(' ', '')).length < 4){
- messageBox("입실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmtm");
- return;
- }
- if(model.getValue(sAncrPath + "/org_recinuserid") == ""){
- messageBox("입실일시를 저장 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmdt");
- return;
- }
- if(inp_outrmdt.value == "" || (inp_outrmdt.value.replace(' ', '')).length < 8){
- messageBox("퇴실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_outrmdt");
- return;
- }
- if(inp_outrmtm.value == "" || (inp_outrmtm.value.replace(' ', '')).length < 4 ){
- messageBox("퇴실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_outrmtm");
- return;
- }
- if(inp_inrmdt.value + inp_inrmtm.value > inp_outrmdt.value + inp_outrmtm.value ){
- messageBox("퇴실일시가 입실일시보다 이전입니다. 퇴실일시를 확인 하십시오.", "I000");
- model.setFocus("inp_outrmtm");
- return;
- }
- //=========================================================================================
- //2008-06-27 오후 3:42:06 taebum add 추가 요구사항
- if(combo1.value == "" || combo1.value == "undefined" || combo1.value == null || combo1.value == "00" || combo1.value == "-"){
- messageBox("퇴실장소를 입력 하시기 바랍니다.", "I000");
- model.setFocus("combo1");
- return;
- }
- if (window.alert("퇴실 저장 하시겠습니까?." ,"퇴실장소 확인", 1 | 32) != 1){
- messageBox("퇴실 저장이 취소 되었습니다.", "I000");
- return;
- }
- //인증저장일 경우
- }else if(sFlag == "C"){
- if(inp_inrmdt.value == "" || (inp_inrmdt.value.replace(' ', '')).length < 8){
- messageBox("입실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmdt");
- return;
- }
- if(inp_inrmtm.value == "" || (inp_inrmtm.value.replace(' ', '')).length < 4){
- messageBox("입실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmtm");
- return;
- }
- if(inp_outrmdt.value == "" || (inp_outrmdt.value.replace(' ', '')).length < 8){
- messageBox("퇴실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_outrmdt");
- return;
- }
- if(inp_outrmtm.value == "" || (inp_outrmtm.value.replace(' ', '')).length < 4 ){
- messageBox("퇴실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_outrmtm");
- return;
- }
- if(inp_inrmdt.value + inp_inrmtm.value > inp_outrmdt.value + inp_outrmtm.value ){
- messageBox("퇴실일시가 입실일시보다 이전입니다. 퇴실일시를 확인 하십시오.", "I000");
- model.setFocus("inp_outrmtm");
- return;
- }
- if(combo1.value == "" || combo1.value == "undefined" || combo1.value == null || combo1.value == "00" || combo1.value == "-"){
- messageBox("퇴실장소를 입력 하시기 바랍니다.", "I000");
- model.setFocus("combo1");
- return;
- }
- //출장마취 또는 통증마취일 경우(서울성모, 빈센트의 경우 마취과로 의뢰를 해도 통증마취가 아님 유효성 체크에서 제외시킴. K. J. M 2010.07.12)
- if(sTripanstflag == "Y" ||
- (sPainanstflag == "Y" && (model.getValue("/root/code/codeinfo/codelist[cdgrupid = '077' and supcdid = '02' and cdid = '"+ getUserInfo("dutplceinstcd") +"']/cdid")
- || model.getValue("/root/code/codeinfo/codelist[cdgrupid = '077' and supcdid = '03' and cdid = '"+ getUserInfo("dutplceinstcd") +"']/cdid")
- || model.getValue("/root/code/codeinfo/codelist[cdgrupid = '077' and supcdid = '05' and cdid = '"+ getUserInfo("dutplceinstcd") +"']/cdid")))){
- if(model.getValue(sAncrPath + "/org_recinuserid") == ""){
- messageBox("입실일시를 저장 하시기 바랍니다.", "I000");
- model.setFocus("inp_inrmdt");
- return;
- }
- if(model.getValue(sAncrPath + "/org_recoutuserid") == ""){
- messageBox("퇴실일시를 저장 하시기 바랍니다.", "I000");
- model.setFocus("inp_outrmdt");
- return;
- }
- }
- }
- model.removenode("/root/send");
- var sAncrInsData = fMakeAncrData(sFlag);
- model.makeValue("/root/send/reqdata/mnphancr", sAncrInsHeader+sAncrInsData); //마취간호기록 정보
- if(!fValidCheckAneu()){
- return;
- }
- model.makeValue("/root/send/reqdata/mnphaneu", datagrid3.getUpdateData());//마취간호기록 참여자 정보
- model.makeValue("/root/send/reqdata/mnphansrlist1", datagrid4.getUpdateData());//마취안전 점검 정보
- model.makeValue("/root/send/reqdata/mnphansrlist2", datagrid6.getUpdateData());//마취환자 안전관리 점검 정보
- model.makeValue("/root/send/reqdata/mnphanemlist", grd_opeqmtlist.getUpdateData());//마취간호기록-장비사용정보
- if(submit("TXMNP00601")){
- //수술 스케줄 재조회
- fGetOpScheList();
- //해당 환자 저장 데이터 재조회
- var selRow = datagrid5.findRow(model.getValue("/root/HideData/condition/oprsrvno"), 1, datagrid5.colRef("oprsrvno"));
- datagrid5.row = selRow;
- fOnDoulbeClickScheList(selRow);
- }
- }
- //마취간호기록 저장 데이터생성
- // sFlag - 임시:U, 확정:C, 입실:I, 퇴실:O
- function fMakeAncrData(sFlag){
- /*
- //데이터 정렬 순서
- var sAncrInsHeader = "status▦"+
- "oprsrvno▦pid▦ioflag▦orddd▦cretno▦"+
- "inrmdttm▦outrmdttm▦outplcecode▦outplcenm▦recinuserid▦"+
- "recindttm▦saveindttm▦recoutuserid▦recoutdttm▦saveoutdttm▦"+
- "patopinsndsmsid▦patopoutsndsmsid▦eqmtuseyn▦umbilicalcordligdt▦umbilicalcordligyn▦"+
- "prevantibioticsyn▦ansafeconfirmid▦anpatsafeconfirmid▦remfact▦deptremark▦"+
- "pkidatetimems▦saveflag▦hngnm▦org_recinuserid▦org_recoutuserid▦anstccrtno▦org_anstccrtno▩";
- */
- var sResultData = "";
- var sRecStat = model.getValue(sAncrPath+"/recstat");
- var sPid = model.getValue(sAncrPath+"/pid");
- var sOprsrvno = model.getValue(sAncrPath+"/oprsrvno");
- var sIoflag = model.getValue(sAncrPath+"/ioflag");
- var sOrddd = model.getValue(sAncrPath+"/orddd");
- var sCretno = model.getValue(sAncrPath+"/cretno");
- var sInrmdttm = model.getValue(sAncrPath+"/inrmdd")
- +model.getValue(sAncrPath+"/inrmtm");
- var sOutrmdttm = model.getValue(sAncrPath+"/outrmdd")
- +model.getValue(sAncrPath+"/outrmtm");
- var sOutplcecode = model.getValue(sAncrPath+"/outplcecode");
- var sOutplcenm = model.getValue(sAncrPath+"/outplcenm");
- var sRecinuserid = "";
- var sRecindttm = "";
- var sSaveindttm = "";
- var sRecoutuserid = "";
- var sRecoutdttm = "";
- var sSaveoutdttm = "";
- //입실저장
- if(sFlag == "I"){
- //입실저장ID가 없을 경우(처음 입실저장시)
- if(sRecinuserid == "" || sRecinuserid == null || sRecinuserid == "undefined"){
- sRecinuserid = getUserInfo("userid");
- sRecindttm = getCurrentDate()+ getCurrentTime();
- }else{
- sRecinuserid = model.getValue(sAncrPath+"/recinuserid");
- sRecindttm = model.getValue(sAncrPath+"/recindttm");
- }
- sSaveindttm = getCurrentDate()+ getCurrentTime();
- //퇴실저장
- }else if(sFlag == "O"){
- //퇴실저장ID가 없을 경우(처음 퇴실저장시)
- if(sRecoutuserid == "" || sRecoutuserid == null || sRecoutuserid == "undefined"){
- sRecoutuserid = getUserInfo("userid");
- sRecoutdttm = getCurrentDate()+ getCurrentTime();
- }else{
- sRecoutuserid = model.getValue(sAncrPath+"/recoutuserid");
- sRecoutdttm = model.getValue(sAncrPath+"/recoutdttm");
- }
- sSaveoutdttm = getCurrentDate()+ getCurrentTime();
- }else{
- //인증관련
- var CertFlag = true;
- if (sFlag == "C") {
- CertFlag = fSignProcessSet();
- }
- if (CertFlag == false) return; // 인증실패
- sRecinuserid = model.getValue(sAncrPath+"/recinuserid");
- sRecindttm = model.getValue(sAncrPath+"/recindttm");
- sSaveindttm = model.getValue(sAncrPath+"/saveindttm");
- sRecoutuserid = model.getValue(sAncrPath+"/recoutuserid");
- sRecoutdttm = model.getValue(sAncrPath+"/recoutdttm");
- sSaveoutdttm = model.getValue(sAncrPath+"/saveoutdttm");
- }
- var sPatopinsndsmsid = model.getValue(sAncrPath+"/patopinsndsmsid");
- var sPatopoutsndsmsid = model.getValue(sAncrPath+"/patopoutsndsmsid");
- var sEqmtuseyn = model.getValue(sAncrPath+"/eqmtuseyn");
- var sUmbilicalcordligdt = model.getValue(sAncrPath+"/umbilicalcordligdt");
- var sUmbilicalcordligyn = model.getValue(sAncrPath+"/umbilicalcordligyn");
- var sPrevantibioticsyn = model.getValue(sAncrPath+"/prevantibioticsyn");
- var sAnsafeconfirmid = model.getValue(sAncrPath+"/ansafeconfirmid");
- var sAnpatsafeconfirmid = model.getValue(sAncrPath+"/anpatsafeconfirmid");
- var sRemfact = model.getValue(sAncrPath+"/remfact");
- var sDeptremark = model.getValue(sAncrPath+"/deptremark");
- var sPkidatetimems = model.getValue(sAncrPath+"/pkidatetimems");
- var hngnm = model.getValue(sAncrPath+"/hngnm");
- var org_recinuserid = model.getValue(sAncrPath+"/org_recinuserid");
- var org_recoutuserid = model.getValue(sAncrPath+"/org_recoutuserid");
- var anstccrtno = model.getValue(sAncrPath+"/anstccrtno");
- var org_anstccrtno = model.getValue(sAncrPath+"/org_anstccrtno");
- sResultData = sRecStat+"▦"
- +sOprsrvno+"▦"+sPid+"▦"+sIoflag+"▦"+sOrddd+"▦"+sCretno+"▦"+sInrmdttm+"▦"
- +sOutrmdttm+"▦"+sOutplcecode+"▦"+sOutplcenm+"▦"+sRecinuserid+"▦"+sRecindttm+"▦"
- +sSaveindttm+"▦"+sRecoutuserid+"▦"+sRecoutdttm+"▦"+sSaveoutdttm+"▦"+sPatopinsndsmsid+"▦"
- +sPatopoutsndsmsid+"▦"+sEqmtuseyn+"▦"+sUmbilicalcordligdt+"▦"+sUmbilicalcordligyn+"▦"+sPrevantibioticsyn+"▦"
- +sAnsafeconfirmid+"▦"+sAnpatsafeconfirmid+"▦"+sRemfact+"▦"+sDeptremark+"▦"+sPkidatetimems+"▦"+sFlag+"▦"
- +hngnm+"▦"+org_recinuserid+"▦"+org_recoutuserid+"▦"+anstccrtno+"▦"+org_anstccrtno+"▩";
- return sResultData;
- }
- // ※ 전자서명 호출_20100413_SMY
- function fSignProcessSet(){
- if (Sign.signprocess() == true){ // ▶ 전자인증 관련 환자 인적 정보를 보내줌.
- var Signinfo = "pid" +"▦" // 01 등록번호
- + "orddd" +"▦" // 02 입원일자(입원,응급)/진료일자(외래)
- + "cretno" +"▦" // 03 생성번호
- + "signno" +"▦" // 04 서명번호(인증번호)
- + "recdd" +"▦" // 05 실제 기록이 이루어진 기록일자
- + "rectm" +"▦" // 06 실제 기록이 이루어진 기록시간
- + "recsaveflag" +"▦" // 07 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- + "signflag" +"▦" // 08 서명자료구분(01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- + "signgenrflag" +"▦" // 09 외래/입원구분(코드정의서 M0010 참조)
- + "formcd" +"▦" // 10 각 기록지별 서식코드 0000002473 N57 간호 수술간호기록
- + "orddeptcd" +"▦" // 11 진료부서코드
- + "orddrid" +"▦" // 12 진료의사ID (집도의)
- + "signbfcnts" +"▦" // 13 ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- + "signaftcnts" +"▩" // 14 ▶ 공인인증 처리후 데이터
- + model.getValue(sAncrPath+"/pid") +"▦" // 01 등록번호
- + model.getValue(sAncrPath+"/orddd") +"▦" // 02 입원일자(입원,응급)/진료일자(외래)
- + model.getValue(sAncrPath+"/cretno") +"▦" // 03 생성번호
- + model.getValue(sAncrPath+"/pkidatetimems") +"▦" // 04 서명번호(인증번호)
- + getCurrentDate() +"▦" // 05 실제 기록이 이루어진 기록일자
- + getCurrentTime() +"▦" // 06 실제 기록이 이루어진 기록시간
- + "N" +"▦" // 07 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- + "02" +"▦" // 08 서명자료구분(01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- + model.getValue(sAncrPath+"/ioflag") +"▦" // 09 외래/입원구분(코드정의서 M0010 참조) 2008-05-27 오후 3:32:35 김태범 null 값 넘어오는 부분 수정
- + model.getValue("/root/code/codeinfo/codelist[cdgrupid='REC' and supcdid = 'ANCR']/cdid") +"▦" // 10 각 기록지별 서식코드 0000002473 N57 간호 수술간호기록
- + model.getValue(sAncrPath+"/orddeptcd") +"▦" // 11 진료부서코드
- + model.getValue(sAncrPath+"/orddrid") +"▦" // 12 진료의사ID
- + Sign.signedInfos[1] +"▦" // 13 ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- + Sign.signedInfos[2] +"▩"; // 14 ▶ 공인인증 처리후 데이터
- model.makeValue("/root/send/reqdata/signinfo", Signinfo); //마취간호기록 인증정보
- }else{
- return false;
- }
- }
- /* ------------------------------------------------- */
- /* desc : 인증데이터 만들기_20100413_SMY */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fMake_SignData(){
- // ▶ 기록 관련 인스턴스 전체를 copy, 인증에 저장할 모든 Instance AddNode한다.
- Sign.addnode("/root/main/lists/mnphancr");
- Sign.addnode("/root/main/lists/timeinfo");
- //마취의
- model.makeValue(Sign.XPATH_SIGNINFO + "/mnphancr/anstdrnm",
- model.getValue("/root/init/anstinfolists/anstdoclist[userid = '" + model.getValue(Sign.XPATH_SIGNINFO + "/mnphancr/anstdrid") + "']/usernm"));
- //마취방법(마취간호기록)
- model.makeValue(Sign.XPATH_SIGNINFO + "/mnphancr/anstccrtnm",
- model.getValue("/root/init/anstcartinfo/anstdrlist[anstccrtno = '" + model.getValue(Sign.XPATH_SIGNINFO + "/mnphancr/anstccrtno") + "']/anstmthdnm"));
- //마취방법(마취기록)
- model.makeValue(Sign.XPATH_SIGNINFO + "/mnphancr/anstmthdcdnm", model.getValue(sAncrPath + "/anstmthdcdnm"));
- //마취안전 점검 확인간호사
- model.makeValue(Sign.XPATH_SIGNINFO + "/mnphancr/ansafeconfirmnm",
- model.getValue("/root/init/anstinfolists/anstnurlist[userid = '" + model.getValue(Sign.XPATH_SIGNINFO + "/mnphancr/ansafeconfirmid") + "']/usernm"));
- //마취환자 안전관리 점검 확인간호사
- model.makeValue(Sign.XPATH_SIGNINFO + "/mnphancr/anpatsafeconfirmnm",
- model.getValue("/root/init/anstinfolists/anstnurlist[userid = '" + model.getValue(Sign.XPATH_SIGNINFO + "/mnphancr/anpatsafeconfirmid") + "']/usernm"));
- //마취참여의
- var iAnstDrTempIcnt = 0;
- var sAnstDrid = "";
- model.makeNode("/root/hidden/temp/anstdrlists");
- for(var i = 1; i<= getNodesetCount("/root/HideData/anstdrlists/anstdrlist"); i++){
- sAnstDrid = model.getValue("/root/HideData/anstdrlists/anstdrlist["+i+"]/anstdrid");
- if(sAnstDrid != ""){
- iAnstDrTempIcnt++;
- model.makeNode("/root/hidden/temp/anstdrlists/anstdrlist["+iAnstDrTempIcnt+"]");
- model.copyNode("/root/hidden/temp/anstdrlists/anstdrlist["+iAnstDrTempIcnt+"]","/root/HideData/anstdrlists/anstdrlist["+i+"]");
- model.makeValue("/root/hidden/temp/anstdrlists/anstdrlist["+iAnstDrTempIcnt+"]/anstdrnm",
- model.getValue("/root/init/anstinfolists/anstdoclist[userid = '" + model.getValue("/root/hidden/temp/anstdrlists/anstdrlist["+iAnstDrTempIcnt+"]/anstdrid") + "']/usernm"));
- }
- }
- if(iAnstDrTempIcnt > 0){
- Sign.addnode("/root/hidden/temp/anstdrlists");
- }
- //마취참여간호사
- var iAnstNrTempIcnt = 0;
- var sAnstNrid = "";
- model.makeNode("/root/hidden/temp/mnphaneulists");
- for(var i = 1; i<= getNodesetCount("/root/main/lists/mnphaneulist"); i++){
- sAnstNrid = model.getValue("/root/main/lists/mnphaneulist["+i+"]/entrid");
- if(sAnstNrid != ""){
- iAnstNrTempIcnt++;
- model.makeNode("/root/hidden/temp/mnphaneulists/mnphaneulist["+iAnstNrTempIcnt+"]");
- model.copyNode("/root/hidden/temp/mnphaneulists/mnphaneulist["+iAnstNrTempIcnt+"]","/root/main/lists/mnphaneulist["+i+"]");
- model.makeValue("/root/hidden/temp/mnphaneulists/mnphaneulist["+iAnstNrTempIcnt+"]/entrnm",
- model.getValue("/root/init/anstinfolists/anstnurlist[userid = '" + model.getValue("/root/hidden/temp/mnphaneulists/mnphaneulist["+iAnstNrTempIcnt+"]/entrid") + "']/usernm"));
- }
- }
- if(iAnstNrTempIcnt > 0){
- Sign.addnode("/root/hidden/temp/mnphaneulists");
- }
- var xTimePath = Sign.XPATH_SIGNINFO + "/timeinfo";
- //수술전평가서
- if(model.getValue(xTimePath + "/opbftestyn") != ""){
- model.setValue(xTimePath + "/opbftestyn", rdo_opbftestyn.label);
- }
- //수혈여부
- if(model.getValue(xTimePath + "/tnsyn") != ""){
- model.setValue(xTimePath + "/tnsyn", rdo_tnsyn.label);
- }
- //PCA
- if(model.getValue(xTimePath + "/pcarecyn") != ""){
- model.setValue(xTimePath + "/pcarecyn", rdo_pcarecyn.label);
- }
- //마취안전점검
- var tempNodeAnsr1Info = instance1.selectSingleNode("/root/main/lists/mnphansrlist1");
- var sAnsr1CheckFlag = "false";
- var sAnsr1Status = "";
- var iAnsr1TempIcnt = 0;
- model.makeNode("/root/hidden/temp/mnphansrlists1");
- if(tempNodeAnsr1Info != null) {
- for(var i = 1; i<= tempNodeAnsr1Info.length; i++){
- sAnsr1CheckFlag = model.getValue("/root/main/lists/mnphansrlist1["+i+"]/checkflag");
- sAnsr1Status = model.getValue("/root/main/lists/mnphansrlist1["+i+"]/status");
- if((sAnsr1CheckFlag == "true" && sAnsr1Status == "u" )||
- (sAnsr1CheckFlag == "true" && sAnsr1Status == "i" ) ){
- iAnsr1TempIcnt++;
- model.makeNode("/root/hidden/temp/mnphansrlists1/mnphansrlist1["+iAnsr1TempIcnt+"]");
- model.copyNode("/root/hidden/temp/mnphansrlists1/mnphansrlist1["+iAnsr1TempIcnt+"]","/root/main/lists/mnphansrlist1["+i+"]");
- //불필요한 상태정보는 삭제함.
- model.removeNodeSet("/root/hidden/temp/mnphansrlists1/mnphansrlist1["+iAnsr1TempIcnt+"]/status");
- model.removeNodeSet("/root/hidden/temp/mnphansrlists1/mnphansrlist1["+iAnsr1TempIcnt+"]/checkflag");
- }
- }
- }
- if(iAnsr1TempIcnt > 0){
- Sign.addnode("/root/hidden/temp/mnphansrlists1");
- }
- //마취환자 안전관리 점검
- var tempNodeAnsr2Info = instance1.selectSingleNode("/root/main/lists/mnphansrlist2");
- var sAnsr2CheckFlag = "false";
- var sAnsr2Status = "";
- var iAnsr2TempIcnt = 0;
- model.makeNode("/root/hidden/temp/mnphansrlists2");
- if(tempNodeAnsr2Info != null) {
- for(var i = 1; i<= tempNodeAnsr2Info.length; i++){
- sAnsr2CheckFlag = model.getValue("/root/main/lists/mnphansrlist2["+i+"]/checkflag");
- sAnsr2Status = model.getValue("/root/main/lists/mnphansrlist2["+i+"]/status");
- if((sAnsr2CheckFlag == "true" && sAnsr2Status == "u" )||
- (sAnsr2CheckFlag == "true" && sAnsr2Status == "i" ) ){
- iAnsr2TempIcnt++;
- model.makeNode("/root/hidden/temp/mnphansrlists2/mnphansrlist2["+iAnsr2TempIcnt+"]");
- model.copyNode("/root/hidden/temp/mnphansrlists2/mnphansrlist2["+iAnsr2TempIcnt+"]","/root/main/lists/mnphansrlist2["+i+"]");
- //불필요한 상태정보는 삭제함.
- model.removeNodeSet("/root/hidden/temp/mnphansrlists2/mnphansrlist2["+iAnsr2TempIcnt+"]/status");
- model.removeNodeSet("/root/hidden/temp/mnphansrlists2/mnphansrlist2["+iAnsr2TempIcnt+"]/checkflag");
- }
- }
- }
- if(iAnsr2TempIcnt > 0){
- Sign.addnode("/root/hidden/temp/mnphansrlists2");
- }
- //장비사용기록
- var iMnphAnemTempIcnt = 0;
- var sMnphAnemCheckFlag = "false";
- model.removeNodeSet("/root/hidden/temp/mnphanemlists");
- model.makeNode("/root/hidden/temp/mnphanemlists");
- for(var i = 1; i<= getNodesetCount("/root/main/lists/mnphanemlist"); i++){
- sMnphAnemCheckFlag = model.getValue("/root/main/lists/mnphanemlist["+i+"]/checkflag");
- if(sMnphAnemCheckFlag != "true"){
- iMnphAnemTempIcnt++;
- model.makeNode("/root/hidden/temp/mnphanemlists/mnphanemlist["+iMnphAnemTempIcnt+"]");
- model.copyNode("/root/hidden/temp/mnphanemlists/mnphanemlist["+iMnphAnemTempIcnt+"]","/root/main/lists/mnphanemlist["+i+"]");
- }
- }
- if(iMnphAnemTempIcnt > 0){
- Sign.addnode("/root/hidden/temp/mnphanemlists");
- }
- /*
- //간호기록
- var iCareRecTempIcnt = 0;
- var sRecdd = "";
- model.makeNode("/root/hidden/temp/carereclists");
- for(var i = 1; i<= getNodesetCount("/root/HideData/CareRecLists/carereclist"); i++){
- sRecdd = model.getValue("/root/HideData/CareRecLists/carereclist["+i+"]/recdd");
- if(sRecdd != ""){
- iCareRecTempIcnt++;
- model.makeNode("/root/hidden/temp/carereclists/anstdrlist["+iCareRecTempIcnt+"]");
- model.copyNode("/root/hidden/temp/carereclists/anstdrlist["+iCareRecTempIcnt+"]","/root/HideData/CareRecLists/carereclist["+i+"]");
- model.setValue("/root/hidden/temp/carereclists/anstdrlist["+iCareRecTempIcnt+"]/dnarflag",
- model.getValue("/root/init/M0260/M0260[cdid = '" + model.getValue("/root/hidden/temp/carereclists/anstdrlist["+iCareRecTempIcnt+"]/dnarflag") + "']/cdnm"));
- }
- }
- if(iCareRecTempIcnt > 0){
- Sign.addnode("/root/hidden/temp/carereclists");
- }
- */
- }
- //마취 참여간호사 정보 추가 버튼 클릭시
- function fOnClickAddAnNur(){
- datagrid3.addRow(); // 입력할 행 추가.
- var cur_row = datagrid3.row; // 추가된 행 번호 가져오기
- var cnt_row = datagrid3.rows; // 현재 행의 갯수 가져오기
- model.setValue(sAneuPath+"["+cur_row+"]/entridflag","N3");//마취간호사
- model.setValue(sAneuPath+"["+cur_row+"]/oprsrvno",model.getValue(sAncrPath+"/oprsrvno"));
- }
- //마취 참여자 정보 변경시
- function fValuChangedAneu(){
- var sNurid = model.getValue(sAneuPath+"["+datagrid3.row+"]/entrid");
- if(sNurid == "" || sNurid == null || sNurid =="undefined"){
- sNurid = "";
- }
- model.setValue(sAneuPath+"["+datagrid3.row+"]/displayentrid",sNurid);
- var sNurnm = model.getValue("init/anstinfolists/anstnurlist[userid='"+sNurid+"']/usernm");
- if(sNurnm == "" || sNurnm == null || sNurnm =="undefined"){
- sNurnm = "";
- }
- //중복 입력 check
- if(sNurid != ""){
- for(var i = 1; i <= datagrid3.rows; i++){
- if(sNurid == model.getValue(sAneuPath+"["+i+"]/entrid")){
- if(i == datagrid3.row){//현재 선택된 행 제외
- continue;
- }
- messageBox(model.getValue("init/anstinfolists/anstnurlist[userid='"+sNurid+"']/usernm")+"선생님은 이미 등록되었습니다. 추가", "E001");
- model.setValue(sAneuPath+"["+datagrid3.row+"]/entrnm", "");
- model.setValue(sAneuPath+"["+datagrid3.row+"]/entrid", "");
- model.setValue(sAneuPath+"["+datagrid3.row+"]/displayentrid", "");
- datagrid3.refresh();
- return;
- }
- }
- }
- model.setValue(sAneuPath+"["+datagrid3.row+"]/entrnm", sNurnm);
- model.setValue(sAneuPath+"["+datagrid3.row+"]/displayentrid", sNurid);
- datagrid3.refresh();
- }
- /**
- * 마취 참여자 정보 삭제 버튼을 클릭하였을 경우 이벤트
- *
- */
- function fClickDeleteBtn(){
- var cur_row = datagrid3.row; // 행 번호 가져오기
- var iStatus = datagrid3.rowstatus(cur_row);
- if(cur_row <= 0 || cur_row =="undefined") {
- alert("삭제할 참여자 정보를 선택하시기 바랍니다...");
- return;
- }
- if (iStatus == 1 || iStatus == 3){ // 새로 삽입된 행이면
- datagrid3.deleteitem(cur_row);
- }else if (iStatus == 4){ // 삭제로 표시된 행이면
- datagrid3.removestatus(cur_row, "delete");
- }else{
- datagrid3.addStatus(cur_row, "delete");
- }
- }
- /**
- * 참여자 정보 저장시 validation 체크
- */
- function fValidCheckAneu(){
- var iGridCnt = getNodesetCount(sAneuPath);
- if(iGridCnt > 0){
- for(var i = 1; i <= iGridCnt; i++){
- var sNurid = model.getValue(sAneuPath+"["+i+"]/entrid");
- if(sNurid == null || sNurid == "" || sNurid == "undefined"){
- model.alert(i+"번째 수술 참여 마취간호사 정보를 입력하거나 삭제하시기 바랍니다.");
- return false;
- }
- }
- }
- return true;
- }
- /**
- * 전체선택버튼 클릭 시
- * sFlag - A:마취안전 점검 , B:마취환자 안전관리 점검
- */
- function fOnClickAllCheck(sFlag){
- var sButtonName = "";
- var sAnstGridXpath = "";
- var iButtonid = "";
- var iGridid = "";
- switch(sFlag){
- case "A" : //마취안전 점검
- sButtonName = button3.label;
- iButtonid = "button3";
- sAnstGridXpath = "/root/main/lists/mnphansrlist1";
- iGridid = "datagrid4";
- break;
- case "B" : //마취환자 안전관리 점검
- sButtonName = button5.label;
- iButtonid = "button5";
- sAnstGridXpath = "/root/main/lists/mnphansrlist2";
- iGridid = "datagrid6";
- break;
- default :
- break;
- }
- if(sAnstGridXpath != ""){
- var iGridCnt = getNodesetCount(sAnstGridXpath);
- if(iGridCnt > 0){
- for(var i = 1; i <= iGridCnt; i++){
- if(sButtonName == "전체선택"){
- model.setValue(sAnstGridXpath+"["+i+"]/checkflag", "true");
- eval(iGridid).addStatus(i, "insert"); //grid status상태 변경 - 서버로 데이터를 전달해야 하므로.
- }else if(sButtonName == "전체해제"){
- eval(iGridid).addStatus(i, "insert"); //grid status상태 변경 - 서버로 데이터를 전달해야 하므로.
- model.setValue(sAnstGridXpath+"["+i+"]/checkflag", "false");
- }
- }
- eval(iGridid).refresh();
- switch(sButtonName){
- case "전체선택" :
- eval(iButtonid).value = "전체해제";
- break;
- case "전체해제" :
- eval(iButtonid).value = "전체선택";
- break;
- default :
- break;
- }
- }
- }
- }
- // 수술장비조회 팝업 호출
- function fOpEqmtPopup(){
- var sTempOprsrvno = model.getValue("/root/main/lists/mnphancr/oprsrvno");
- if(sTempOprsrvno == "" || sTempOprsrvno == null || sTempOprsrvno =="undefined"){
- return;
- }
- var sMsg = "";
- var sOPEqmtCD = "";
- //설치부서가 수술실 마취1,3,4...방이 만들어질 경우 수정 필요
- //여의도 마취수술방 부서코드가 생성되어 - 2010-04-08 오전 9:04:40 taebum 적용함.
- setParameter("SPMNP00300_searchFlag","ANSTGIROK");
- modal("SPMNP00301");
- getParameter("SPMNP00300_Return");
- sMsg = getParameter("SPMNP00300_Return");
- if(sMsg == "") return;
- var iRow = grd_opeqmtlist.rows-grd_opeqmtlist.fixedrows;
- var sTempGridXpath = "/root/main/lists/mnphanemlist";
- for(var i =1; i < sMsg.split("▩").length-1; i++){
- sOPEqmtCD = getArrayData(sMsg, i,0);
- if(model.getValue(sTempGridXpath+"[opeqmtcd ='"+sOPEqmtCD+"']/opeqmtcd") != "") continue;
- //
- if ((iRow == 0) ||(model.getValue(sTempGridXpath+"["+iRow+"]/opeqmtcd") !="")) {
- grd_opeqmtlist.addRow(false);
- iRow++;
- }
- model.setValue(sTempGridXpath+"["+iRow+"]/checkflag", "false");
- model.setValue(sTempGridXpath+"["+iRow+"]/oprsrvno", sTempOprsrvno);
- model.setValue(sTempGridXpath+"["+iRow+"]/opeqmtcd", getArrayData(sMsg, i,0));
- model.setValue(sTempGridXpath+"["+iRow+"]/org_opeqmtcd", getArrayData(sMsg, i,0));
- model.setValue(sTempGridXpath+"["+iRow+"]/opeqmtnm", getArrayData(sMsg, i,1));
- }
- grd_opeqmtlist.refresh();
- //2010-04-01 오후 3:09:45 refresh 이후에 상태값을 변경해야 서버로 전송됨.
- var iRow = grd_opeqmtlist.rows-grd_opeqmtlist.fixedrows;
- if(iRow < 1){
- return;
- }
- for (var i = iRow; i > 0; i--){
- grd_opeqmtlist.addStatus(i, "insert");
- }
- }
- /**
- * 장비삭제 버튼 클릭 시 이벤트
- */
- function fOnClickOpeqDelBtn(){
- var iRow = grd_opeqmtlist.rows-grd_opeqmtlist.fixedrows;
- if(iRow < 1){
- return;
- }
- for (var i = iRow; i > 0; i--){
- model.setValue("/root/main/lists/mnphanemlist["+i+"]/checkflag","true");
- grd_opeqmtlist.addStatus(i, "insert");
- }
- grd_opeqmtlist.refresh();
- }
- //장비사용기록 해당없음 체크시 이벤트
- function fOnClickEquseYnCheck(){
- var sEqmtuseyn = model.getValue("/root/main/lists/mnphancr/eqmtuseyn");
- if(sEqmtuseyn == "Y"){
- fOnClickOpeqDelBtn();
- btn_settingstrdt.disabled = true;
- btn_settingenddt.disabled = true;
- bbt_opeqmt.disabled = true;
- btn_eqmtinfo.disabled = true;
- }else{
- btn_settingstrdt.disabled = false;
- btn_settingenddt.disabled = false;
- bbt_opeqmt.disabled = false;
- btn_eqmtinfo.disabled = false;
- }
- var iRow = grd_opeqmtlist.rows-grd_opeqmtlist.fixedrows;
- if(iRow < 1){
- return;
- }
- //grid 활성화 비활성화 로직
- for (var i = iRow; i > 0; i--){
- if(sEqmtuseyn == "Y"){
- grd_opeqmtlist.addStatus(i, "insert");
- grd_opeqmtlist.isReadOnly(i, grd_opeqmtlist.colRef("checkflag"), i, grd_opeqmtlist.colRef("totm")) = true;
- }else{
- model.setValue("/root/main/lists/mnphanemlist["+i+"]/checkflag","false");
- grd_opeqmtlist.addStatus(i, "insert");
- grd_opeqmtlist.isReadOnly(i, grd_opeqmtlist.colRef("checkflag"), i, grd_opeqmtlist.colRef("totm")) = false;
- }
- }
- grd_opeqmtlist.refresh();
- }
- //-----------------------------------------------------------------
- // 간호일지타입II 화면 호출
- //-----------------------------------------------------------------
- function fSMMNR03400Call() {
- // 간호일지 호출시 기본 작업 내역
- // - 기록 구분 정보
- // SMMNR03400_ParamBase : recflag▦dutplaccd▦reclnkkey => 기록구분▦부서코드▦기록연계키
- // SMMNR03400_ParamPrcp : prcpflag▦prcpnm => 처방구분▦처방정보
- // - 기록구분(recflag) :
- // O : 외래 F : 기능검사 I : 주사실
- // D : DSC S : 전문간호 H : 가정간호
- // E : 응급실 A : 마취과 R : 회복실
- // L : 투석실 B : 혈당기록
- // - 부서코드(dutplaccd) :
- // 12611 : 외래 33100 : 기능검사 31900 : 주사실
- // 34100 : DSC 미정 : 전문간호 50112 : 가정간호
- // 82015 : 응급실 10900 : 마취과 31170 : 회복실
- // 31400 : 투석실 00001 : 혈당기록
- var wPath = "/root/init/WorkData" ; //
- model.makeValue(wPath+"/pid" , model.getValue(sAncrPath+ "/pid" )); // 환자번호
- model.makeValue(wPath+"/instcd" , model.getValue(sAncrPath+ "/instcd" )); // 기관코드
- model.makeValue(wPath+"/oprsrvno" , model.getValue(sAncrPath+ "/oprsrvno" )); // 의뢰번호
- model.makeValue(wPath+"/ophistno" , model.getValue(sAncrPath+ "/ophistno" )); // 이력번호
- if(model.getValue(wPath+"/pid") == ""){
- return;
- }
- var wPath = "/root/init/WorkData" ; //
- var parammsg = "recflag▦dutplaccd▦reclnkkey▩"
- + "A" + "▦"
- //+ "31170" + "▦" //2008-08-11 오후 5:22:30 taebum 주석처리
- + "900" + "▦"
- + model.getValue(wPath+ "/pid" ) + "," // 환자번호
- + model.getValue(wPath+ "/instcd" ) + "," // 기관코드
- + model.getValue(wPath+ "/oprsrvno" ) + "," // 의뢰번호
- + model.getValue(wPath+ "/ophistno" ) + "▩" ; // 이력번호
- setParameter("SMMNR03400_ParamBase",parammsg );
- modal("SMMNR03400");
- CareRecList_Read();
- }
- /* --------------------------------------------------*/
- /* desc : 간호특이사항 기록 조회 */
- /* --------------------------------------------------*/
- function CareRecList_Read() {
- var wPath = "/root/init/WorkData" ;
- model.removenode("/root/send");
- model.makeValue("/root/send/pid" , model.getValue(sAncrPath+ "/pid" )); // 환자번호
- model.makeValue("/root/send/instcd" , model.getValue("/root/HideData/opschelists/schelist["+datagrid5.row+"]/instcd")); // 기관코드
- //외래환자 추가되면서 외래/입원 구분으로 orddd, indd를 send로 보낸다 by 박영우 2010-03-03
- var oppatflagcd = model.getValue("/root/HideData/opschelists/schelist["+datagrid5.row+"]/oppatflagcd");
- if(oppatflagcd != "O") {
- model.makeValue("/root/send/indd" , model.getValue(sAncrPath+ "/orddd" )); // 입원일자
- model.makeValue("/root/send/cretno" , model.getValue(sAncrPath+ "/cretno" )); // 생성번호
- }
- else {
- model.makeValue("/root/send/orddd" , model.getValue(sAncrPath+ "/orddd" )); // 입원일자
- model.makeValue("/root/send/cretno" , model.getValue(sAncrPath+ "/cretno" )); // 생성번호
- }
- model.makeValue("/root/send/ioflag" , model.getValue("/root/init/WorkData/ioflag" )); // I/O 구분
- model.makeValue("/root/send/dnarflag" , "%"); // dnar 구분
- model.makeValue("/root/send/sortseq" , "A"); // 정렬순서(A:오름차순, D:내림차순)
- model.makeValue("/root/send/recflag" , "A");//기록구분 - 마취
- //model.makeValue("/root/send/reclnkkey",model.getValue(sAncrPath+ "/pid")+","
- // +model.getValue("/root/HideData/opschelists/schelist["+datagrid5.row+"]/instcd")+","
- // +model.getValue(sAncrPath+ "/oprsrvno")+","
- // +model.getValue("/root/HideData/opschelists/schelist["+datagrid5.row+"]/ophistno")); // 기록연계키
- model.makeValue("/root/send/reclnkkey",model.getValue(sAncrPath+ "/oprsrvno")+","
- +model.getValue("/root/HideData/opschelists/schelist["+datagrid5.row+"]/instcd"));
- model.makeValue("/root/send/prestdt" , getCurrentDate() + getCurrentTime()); // 현재일시
- model.removeNodeSet("/root/HideData/CareRecLists/carereclist");
- datagrid8.refresh();
- submit("TRMNP00604"); // 간호특이사항 기록 조회
- }
- /**
- * 마취의를 선택했을 경우 해당 마취의에 대한 마취방법 및 cartno 조회
- */
- function fValueChangedAnstDoctCombo(){
- var sAnstDrid = model.getValue("/root/main/lists/mnphancr/anstdrid");
- if(sAnstDrid == "" || sAnstDrid == "undefined" || sAnstDrid == null){
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/orddeptcd", model.getValue("/root/init/anstinfolists/anstdoclist[userid = '"+sAnstDrid+"']/orddeptcd"));//부서코드
- model.makeValue("/root/send/anstdrid", sAnstDrid);//마취의
- model.makeValue("/root/send/cartgubn", "A");//카트구분 A: 마취카트
- //model.removenode("/root/init/anstcartinfo");
- submit("TRMNP01100");
- }
- //수혈기록 조회 버튼 클릭 시 이벤트
- function fClickBloodBtn(){
- var sPath = "/root/main/lists/mnphancr/pid";
- var sPid = model.getValue(sPath);
- if(sPid != ""){
- setParameter("ioflag", "IPRC2");
- setParameter("pid", sPid);
- open("SMMNR01000");
- }
- }
- /**
- * PCA기록 조회 버튼 클릭 시 이벤트
- *
- */
- function fOnClickPCABtn(){
- var sAnstRecNo = model.getValue("/root/main/lists/timeinfo/anstrecno");
- if(sAnstRecNo != null && sAnstRecNo != "" && sAnstRecNo != "undefined"){
- setParameter("SMMNP00700_anstrecno", sAnstRecNo); //마취기록번호
- open("SPMNP00701", "", "100", "100", "SPMNP00701", "", "");
- }
- }
- /**
- * @desc : 수술전상태평가표 기록지
- * @
- * @param :
- * @return :
- * @author : 박유미씨 Source 코드 modify taebum
- * @---------------------------------------------------
- */
- function fPreOpAssemRec() {
- // 2009.05.29. 수술전평가서팝업 화면 체킹하기..
- 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];
- var curPrcpObj = mainObj.javascript.getOpenWindow("SSMMR06900"); //활성화된 수술전평가서팝업 화면 object loading
- if(curPrcpObj != null){ //활성화된 처방화면이 있는 경우, 처방창 클로징하기..
- curPrcpObj.activate();
- return;
- }
- model.removeNodeset("/root/HideData/oppretestinfo/opanstform");
- submit("TRMMR03714");
- formseqno = model.getValue("/root/HideData/oppretestinfo/opanstform/formseqno");
- if (formseqno == "" || formseqno == "0")
- {
- // 환자수술정보
- var node = getGlobalVariable("paminfo");
- model.removeNodeset("/root/main/paminfo/list");
- setCSVToNode("/root/main/paminfo", node);
- var sPid = model.getValue("/root/main/paminfo/list/pid"); // 환자번호
- var sPnm = model.getValue("/root/main/paminfo/list/hngnm"); // 환자명
- var sSex = model.getValue("/root/main/paminfo/list/sex"); // 성별
- var sAge = model.getValue("/root/main/paminfo/list/age"); // 나이
- var sIndd = model.getValue("/root/main/paminfo/list/indd"); // 입원일자
- var sOrddd = model.getValue("/root/main/paminfo/list/orddd"); // 진료일자
- var sCretNo = model.getValue("/root/main/paminfo/list/cretno"); // 환자 일자별 일련번호
- var sInstcd = model.getValue("/root/main/paminfo/list/instcd"); // 기관코드
- var sIOFlag = model.getValue("/root/main/paminfo/list/ioflag"); // 입원/외래 구분
- var sWardCD = model.getValue("/root/main/paminfo/list/wardcd");
- var sRoomCD = model.getValue("/root/main/paminfo/list/roomcd");
- var sOrdDeptCd = model.getValue("/root/main/paminfo/list/orddeptcd"); // 진료과코드
- var sOrdDrId = model.getValue("/root/main/paminfo/list/medispclid"); // 진료의사ID
- var sOrdDeptNm = model.getValue("/root/main/paminfo/list/orddeptnm"); // 진료과
- var sOrdDrNm = model.getValue("/root/main/paminfo/list/orddrnm"); // 진료의사
- // 2009.05.20. 입원/외래 파람처리를 위하여..
- var sPerfDeptCd = model.getValue("/root/main/oprsrvinfo/perfdeptcd"); // 집도과코드
- var sPerfDrId = model.getValue("/root/main/oprsrvinfo/perfdrid"); // 집도의ID
- var disparam = sPid +"▦" + sPnm +"▦" + sSex+ "/" + sAge+ "▦" + sOrdDeptNm +"▦" + sRoomCD + "▦";
- setParameter("pid", sPid);
- // 2009.05.20. 입원인 경우는 입원일/진료과를.. 이외는 진료일/집도과를..
- if (sIOFlag == "I" || sIOFlag == "D" || sIOFlag == "E") {
- setParameter("orddd", sIndd);
- setParameter("orddeptcd", sOrdDeptCd); //진료과
- } else {
- setParameter("orddd", sOrddd);
- setParameter("orddeptcd", sPerfDeptCd); //집도과
- }
- setParameter("cretno", sCretNo);
- setParameter("ioflag", sIOFlag);
- setParameter("orddrid", sPerfDrId); //집도의
- setParameter("disppatinfo", disparam); //등록번호▦환자명▦성별/나이▦진료과▦병실▦
- // 2009.02.24. 수술전평가서 띄울때 검사 측정치 등이 있으면 바로 세팅해서 보여달라는 요청
- // 파라메터 추가 : oprsrvno, opcnfmdd)
- var oprsrvno = model.getValue("/root/main/oprsrvinfo/oprsrvno");
- var opcnfmdd = model.getValue("/root/main/oprsrvinfo/opcnfmdd");
- setParameter("oprsrvno", oprsrvno);
- setParameter("opcnfmdd", opcnfmdd);
- setParameter("openmode", "newform"); //오픈모드는 “recform”
- var formcd = model.getValue("/root/main/lists/timeinfo/hardcd");
- setParameter("formcd", formcd);
- } else {
- // 2009.02.24. 수술전평가서 띄울때 검사 측정치 등이 있으면 바로 세팅해서 보여달라는 요청
- // 환자수술정보
- var node = getGlobalVariable("paminfo");
- model.removeNodeset("/root/main/paminfo/list");
- setCSVToNode("/root/main/paminfo", node);
- var sPid = model.getValue("/root/main/paminfo/list/pid"); // 환자번호
- var sPnm = model.getValue("/root/main/paminfo/list/hngnm"); // 환자명
- var sSex = model.getValue("/root/main/paminfo/list/sex"); // 성별
- var sAge = model.getValue("/root/main/paminfo/list/age"); // 나이
- var sIndd = model.getValue("/root/main/paminfo/list/indd"); // 입원일자
- var sOrddd = model.getValue("/root/main/paminfo/list/orddd"); // 진료일자
- var sCretNo = model.getValue("/root/main/paminfo/list/cretno"); // 환자 일자별 일련번호
- var sInstcd = model.getValue("/root/main/paminfo/list/instcd"); // 기관코드
- var sIOFlag = model.getValue("/root/main/paminfo/list/ioflag"); // 입원/외래 구분
- var sWardCD = model.getValue("/root/main/paminfo/list/wardcd");
- var sRoomCD = model.getValue("/root/main/paminfo/list/roomcd");
- var sOrdDeptCd = model.getValue("/root/main/paminfo/list/orddeptcd"); // 진료과코드
- var sOrdDrId = model.getValue("/root/main/paminfo/list/medispclid"); // 진료의사ID
- var sOrdDeptNm = model.getValue("/root/main/paminfo/list/orddeptnm"); // 진료과
- var sOrdDrNm = model.getValue("/root/main/paminfo/list/orddrnm"); // 진료의사
- var disparam = sPid +"▦" + sPnm +"▦" + sSex+ "/" + sAge+ "▦" + sOrdDeptNm +"▦" + sRoomCD + "▦";
- setParameter("disppatinfo", disparam); //등록번호▦환자명▦성별/나이▦진료과▦병실▦
- // 2009.02.24. 수술전평가서 띄울때 검사 측정치 등이 있으면 바로 세팅해서 보여달라는 요청
- // 파라메터 추가 : oprsrvno, opcnfmdd)
- var oprsrvno = model.getValue("/root/main/lists/mnphancr/oprsrvno");
- var opcnfmdd = model.getValue("/root/main/lists/mnphancr/opcnfmdd");
- setParameter("oprsrvno", oprsrvno);
- setParameter("opcnfmdd", opcnfmdd);
- setParameter("openmode", "recform"); //오픈모드는 “recform”
- setParameter("formrecseq", formseqno);
- }
- open("SSMMR06900", 1, 0, 0 ,"", "", "","caption:hidden;");
- }
- /**
- * 수술전 평가서 클릭시 이벤트
- * : 마취기록을 뛰운다.
- */
- function fOnClickOpPreButton(){
- open("SMMMR03700", 1, 0, 0 ,"", "", "","");
- }
- /**
- * @group :
- * @ver : 2007.10.17
- * @by : Grace
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Exel 저장
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveExcel(sButtonInfo){
- var sOprsrvno = model.getValue("/root/main/lists/mnphancr/oprsrvno");
- if(sOprsrvno == null || sOprsrvno == "" || sOprsrvno == "undefined"){
- return;
- }
- var fileName = null;
- if(sButtonInfo == "마취안전점검"){
- fileName = window.fileDialog("save", ",", false, "마취환자안전점검_"+getCurrentDate(), "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
- if (fileName != "" && fileName != null) {
- datagrid4.saveExcel(fileName, "SheetName", true, true, "", "", false);
- }
- }else if(sButtonInfo == "마취환자안전점검"){
- fileName = window.fileDialog("save", ",", false, "마취환자안전점검_"+getCurrentDate(), "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
- if (fileName != "" && fileName != null) {
- datagrid6.saveExcel(fileName, "SheetName", true, true, "", "", false);
- }
- }
- }
|