123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 수술마취일정 확정 ( SMMMO05500_수술마취일정확정.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var sOPANSTCNFM_PATH = "/root/main/opanstpatinfo/opanstcnfmpatlist";
- /**
- * @desc : 수술마취일정확정 화면 초기화
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fInitialize_SMMMO05500(){
-
- // 2008.09.11 마취staff 이외에는 일괄확정 버튼 disable
- var jobposcd = getUserInfo("jobposcd");
- var dutplcecd = getUserInfo("dutplcecd");
- //alert(jobposcd);
- //alert(dutplcecd);
- //reqHardCodeInfo("/root/send/reqdata", "/root/init/formcd", 85); //수술전 평가지 서식코드
- submit("TRMMO05503");
- reqHardCodeInfo("/root/send/reqdata", "/root/init/hardcd", 18);
- anstdeptcd = model.getValue("/root/init/hardcd/hardcd/hardcd");
- if(dutplcecd == anstdeptcd) {
- if( jobposcd == "1799" || jobposcd == "1800") {
- btn_cnfm.disabled = true;
- } else {
- btn_cnfm.disabled = false;
- }
- } else { // 마취과가 아니면 disable
- btn_cnfm.disabled = true;
- }
-
- var opcnfmdd = (getCurrentDate().toDate()).getAddDate(1);
- model.setValue("/root/main/cond/opcnfmdd", opcnfmdd.getDateFormat()); //수술예정일자 +1
- zbcfGetCodeList(new Array("M0013",
- "M0017",
- "M0020",
- "M0377"),
- new Array("/root/init/M0013",
- "/root/init/M0017",
- "/root/init/M0020",
- "/root/init/M0377"));
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept" , "D"); //부서코드 콤보
- mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist" , anstdeptcd, "0330"); //마취통증의학과 의사 조회
- reqOpRoomList(getCurrentDate(), "/root/init/oproomlist", "total"); //수술방 콤보 조회
-
- fReqOpAnstScheReq(); //수술마취의뢰 정규, 비정규 조회
- model.refresh();
- }
- /**
- * @desc : 수술마취일정 일괄확정
- * @
- * @param : pflag - 처리구분(total:전체)
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fCnfmOpAnstSche(pflag){
-
- var header = "status▦oprsrvno▦ophistno▦pid▦opcnfmdd▦oppatflagcd▦opstatcd▦mainoprsrvno▦oproomcd▦ccrtno▦anstreqflag▦orddeptcd▦perfdrid▦opfromtmcd▦reqrsncd▦aprvreqno▦opschedd▦opusetm▦opendtmcd▩";
- for(var i = 1 ; i < grd_opanstcnfmpatlist.rows; i++){
- var opstatcd = model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opstatcd");
- if(opstatcd >= 20){ //확정된 경우는 skip;
- continue;
- }
-
- if( //grd_opanstcnfmpatlist.isselected(i) == true ||
- pflag == "total"
- ||model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/sel") == "true"){
-
- var child = "i▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/oprsrvno") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/ophistno") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/pid") + "▦" +
- model.getValue("/root/main/cond/opcnfmdd") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/oppatflagcd") + "▦" +
- "20" + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/mainoprsrvno")+ "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/oproomcd") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/ccrtno") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/anstreqflag") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/orddeptcd") + "▦" + //chart 호출 parameter
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/perfdrid") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opfromtmcd") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/reqrsncd") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/aprvreqno") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opschedd") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opusetm") + "▦" +
- model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opendtmcd") + "▩";
-
- header += child;
- }
-
- }
-
- model.setValue("/root/send/savedata", header);
- if(submit("TXMMO05501")){
- fReqOpAnstScheReq();
- }
- }
- /**
- * @desc : 수술마취일정 정규/비정규 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqOpAnstScheReq(){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/opschedd", model.getValue("/root/main/cond/opcnfmdd"));
- model.removeNodeset(grd_opanstcnfmpatlist.nodeset);
- initGridStyle("grd_opanstcnfmpatlist"); // 그리드 속성 초기화
- initGridStyle("grd_opanstwaitpatlist"); // 그리드 속성 초기화
- if(submit("TRMMO05501")){
- fDispOpStat();
- // [요청번호: 13643, TASK번호: 51229, 우선순위:SY]
- // 요청제목: 수술마취 일정 조정 대기자리스트 전달사항 컬럼 추가(기 반영된 사항 중 누락 건)
- // 수술대기환자 리스트 전달사항 표시 2010.04.26
- // by김광성. kskim
- fCheckWaitOpdelivefact();
- }
- }
- /**
- * @desc : 수술상태 display, 확정:파란색, 의뢰:검정
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fDispOpStat(){
- for(var i = 1; i < grd_opanstcnfmpatlist.rows; i++){
- var opstatcd = model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opstatcd");
- if(opstatcd == 10){ //의뢰
- grd_opanstcnfmpatlist.rowStyle(i, "all", "color") = "#000000";
- }else if(opstatcd == 15){ //가확정
- grd_opanstcnfmpatlist.rowStyle(i, "all", "color") = "#008000";
- }else if(opstatcd == 20){ //확정
- grd_opanstcnfmpatlist.rowStyle(i, "all", "color") = "#0000ff";
- }
-
- // 수술전달 사항(opdelivefact)컬럼 정보에 값이 있을 경우 내용이 있음을 알리는 이미지 표시
- // 2010.04.19. 김광성. kskim
- fCheckOpdelivefact(i);
- }
-
- // 09.02.02 방별 grouping
- for(var i = 1; i < grd_opanstcnfmpatlist.rows; i++) {
- var oproomnm = model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/oproomnm");
- switch(oproomnm) {
- case "1": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "2": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "3": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "4": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "5": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "6": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "7": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "8": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "9": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "10": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "11": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "12": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "13": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "14": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "15": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "16": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "17": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "18": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "19": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "20": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "21": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "22": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "23": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "24": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "25": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "26": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "27": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "28": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "29": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "30": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "31": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- case "DR": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#C3E1FE"; break;}
- case "ANGIO": { grd_opanstcnfmpatlist.rowStyle(i, "all", "background-color") = "#ffffff"; break;}
- }
- }
- //(e)
- grd_opanstcnfmpatlist.refresh();
- }
- /**
- * @desc : 수술전상태평가표 기록지
- * @
- * @param :
- * @return :
- * @author : 박유미
- * @---------------------------------------------------
- */
- function fPreOpAssemRec() {
-
- messageBox("진료대상자리스트 수술탭에서 작성하시기 바랍니다.", "E");
- return;
-
- var formseqno = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/formseqno");
- if( isNull( formseqno) || formseqno == "0") {
- if ( (grd_opanstcnfmpatlist.rows > 1) && (grd_opanstcnfmpatlist.row >= 1 && grd_opanstcnfmpatlist.mouseRow <= grd_opanstcnfmpatlist.rows) ) {
- model.removeNodeset("/root/send/reqdata");
- model.makeNode("/root/send/reqdata");
- model.copyNode("/root/send/reqdata", sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]");
-
- model.removeNodeset("/root/hidden/paminfo");
- model.makeNode("/root/hidden/paminfo");
- if (submit("TRMMO05502")== true) {; //원무키 조회
-
- if("" == model.getValue("/root/hidden/paminfo/paminfo/ioflag")) { //dsc 환자(임의로 원무키값 setting함)
- var pid = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/pid");
- var hngnm = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/hngnm");
- var sa = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/sa");
- var perfdeptnm = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/perfdeptnm");
- var roomcd = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/roomcd");
- var oprsrvno = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/oprsrvno");
- var opcnfmdd = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/opcnfmdd");
-
- var disparam = pid +"▦" + hngnm +"▦" + sa+"▦" + perfdeptnm +"▦" + roomcd + "▦";
-
- setParameter("pid", pid);
- setParameter("orddd", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/opcnfmdd")); //확정일자
- setParameter("cretno", 0);
- setParameter("ioflag", "D");
- setParameter("orddeptcd", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/perfdeptcd")); //집도과
- setParameter("orddrid", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/perfdrid")); //집도의
- setParameter("disppatinfo", disparam); //등록번호▦환자명▦성별/나이▦진료과▦병실▦
- setParameter("oprsrvno", oprsrvno);
- setParameter("opcnfmdd", opcnfmdd);
- } else {
-
- var pid = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/pid");
- var hngnm = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/hngnm");
- var sa = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/sa");
- var orddeptnm = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/orddeptnm");
- var roomcd = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/roomcd");
- var oprsrvno = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/oprsrvno");
- var opcnfmdd = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/opcnfmdd");
-
- var disparam = pid +"▦" + hngnm +"▦" + sa+"▦" + orddeptnm +"▦" + roomcd + "▦";
-
- setParameter("pid", model.getValue("/root/hidden/paminfo/paminfo/pid"));
- setParameter("orddd", model.getValue("/root/hidden/paminfo/paminfo/orddd"));
- setParameter("cretno", model.getValue("/root/hidden/paminfo/paminfo/cretno"));
- setParameter("ioflag", model.getValue("/root/hidden/paminfo/paminfo/ioflag"));
- setParameter("orddeptcd", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/orddeptcd"));
- setParameter("orddrid", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/perfdrid"));
- setParameter("disppatinfo", disparam); //등록번호▦환자명▦성별/나이▦진료과▦병실▦
- setParameter("oprsrvno", oprsrvno);
- setParameter("opcnfmdd", opcnfmdd);
- }
- } else {
- return;
- }
- //mmbfGetHardCodeInfo("/root/send/reqdata", "/root/init/formcd", 85); //수술전 평가지 서식코드
- var formcd = model.getValue("/root/init/formcd/hardcd/hardcd");
- setParameter("openmode", "newform"); //오픈모드는 “recform”
- setParameter("formcd", formcd);
- modal("SSMMR01100", 1, 0, 0 ,"", "", "");
-
- //술전평가표 저장후 formseqno 넘겨받음
- var param = getParameter("SSMMR01100_formrecseq");
-
- if(param != "" && param != "0") {
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/formseqno", param);
- model.makeValue("/root/send/reqdata/oprsrvno", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/oprsrvno"));
- model.makeValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/formseqno", param);
- submit("TXMMO05502");
- clearParameter("SSMMR01100_formrecseq");
- } else if (param =="0" || isNull(param)){
- model.makeValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/formseqno", "");
- clearParameter("SSMMR01100_formrecseq");
- }
- }
- } else{
-
- var pid = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/pid");
- var hngnm = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/hngnm");
- var sa = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/sa");
- var orddeptnm = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/orddeptnm");
- var roomcd = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/roomcd");
- var oprsrvno = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/oprsrvno");
- var opcnfmdd = model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/opcnfmdd");
-
- var disparam = pid +"▦" + hngnm +"▦" + sa+"▦" + orddeptnm +"▦" + roomcd + "▦";
-
- setParameter("openmode", "recform"); //오픈모드는 “recform”
- setParameter("disppatinfo", disparam); //등록번호▦환자명▦성별/나이▦진료과▦병실▦
- setParameter("formrecseq", model.getValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/formseqno"));
- modal("SSMMR01100", 1, 0, 0 ,"", "", "");
- var param = getParameter("SSMMR01100_formrecseq");
- if (param =="0"){
- model.makeValue(sOPANSTCNFM_PATH + "["+ grd_opanstcnfmpatlist.row +"]/formseqno", "");
- clearParameter("SSMMR01100_formrecseq");
- }
- }
- model.refresh();
- }
- /**
- * @desc : EMR부서콤보 조회
- * @
- * @param : ref - reference path
- * rsltref - result reference path
- * orddeptflag- 진료과구분
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function mmbfGetDeptCodeComboList(ref, rsltref, orddeptflag, stnddd){
- var mmb_rsltref = "/root/hidden/mmb/orddept";
- model.removeNode(mmb_rsltref);
- model.makeNode(mmb_rsltref);
-
- model.removeNode(ref);
- model.makeValue(ref + "/orddeptflag", orddeptflag);
- if(stnddd != ""){
- model.makeValue(ref + "/stnddd", stnddd);
- }
- if(submit("TRMMB04101", "false", ref, mmb_rsltref)==true){
- model.copyNode(rsltref, mmb_rsltref);
- model.removeNode(mmb_rsltref);
- }
- //model.refresh();
- }
- /**
- * @desc : EMR사용자콤보 조회
- * @
- * @param : ref - reference path
- * rsltref - result reference path
- * deptcd - 부서코드
- * jobkindcd - 직종코드
- * jobposcd - 직책코드
- * specordyn - 선택진료여부
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function mmbfGetUserComboList(ref, rsltref, deptcd, jobkindcd, specordyn){
- var mmb_rsltref = "/root/hidden/mmb/userlist";
- model.removeNode(mmb_rsltref);
- model.makeNode(mmb_rsltref);
-
- model.removeNode(ref);
- model.makeValue(ref + "/deptcd" , deptcd); //부서코드
- model.makeValue(ref + "/jobkindcd", jobkindcd); //직종코드(의사:0330)
- model.makeValue(ref + "/specordyn", specordyn); //선택진료여부
- if(submit("TRMMB04102", "false", ref, mmb_rsltref)==true){
- model.copyNode(rsltref, mmb_rsltref);
- model.removeNode(mmb_rsltref);
- }
- //model.refresh();
- }
- /**
- * @desc : 콤보박스에 원하는 instance node와 value를 설정
- * @
- * @param :
- * @event :
- * @return :
- * @---------------------------------------------------
- */
- function addComboInstance(combopath, nodename, nodeval, parentnode){
- var xmlNode = model.instances(0).selectSingleNode(combopath + "/" + parentnode);
- if(xmlNode == null){
- return;
- }
- nodename = nodename.split("^");
- nodeval = nodeval.split("^");
- if(nodename.length != nodeval.length){
- return;
- }
-
- var label = model.instances(0).createElement(nodename[0]);
- var val = model.instances(0).createElement(nodename[1]);
- var combo = model.instances(0).createElement(parentnode);
- label.value = "" + nodeval[0] + "";
- val.value = "" + nodeval[1] + "";
-
- combo.appendChild(label);
- combo.appendChild(val);
-
- chkNode = model.instances(0).selectSingleNode(combopath);
- if(chkNode == null){
- model.makeNode(combopath);
- srcNode = model.instances(0).selectSingleNode(combopath);
- }else{
- srcNode = model.instances(0).selectSingleNode(combopath);
- }
-
- desNode = model.instances(0).selectSingleNode(combopath + "/" + parentnode);
- srcNode.insertBefore(combo, desNode);
- //model.refresh();
- }
- /**
- * @desc : 수술방 조회(combo 설정)
- * @param : opschedd - 수술예약일자
- * : queryflag - Query구분자(day : 일자, total : 전체, detl :부서, 의사, 일자 )
- * @return :
- * @authur : 오지훈 2007. 6. 30
- */
- function reqOpRoomList(opschedd, desRef, queryflag, perfdeptcd, perfdrid){
- var resultRef = "/root/hidden/mmo/oproomlist";
- model.makeNode(resultRef);
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/opschedd" , opschedd);
- model.makeValue("/root/send/reqdata/queryflag", queryflag);
- if(queryflag == "detl"){
- model.makeValue("/root/send/reqdata/perfdeptcd", perfdeptcd);
- model.makeValue("/root/send/reqdata/perfdrid" , perfdrid);
-
- }
- var rtnval = submit("TRMMO05704", false, "/root/send/reqdata", resultRef);
- if(rtnval == true){
- copyNodeType(desRef, resultRef, "replace");
- }
- }
- /**
- * @desc : 하드코드 조회
- * @
- * @param : ref - reference path
- * rsltref - result reference path
- * hardcd - 하드코드
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function reqHardCodeInfo(ref, rsltref, hardcd){
- var mmb_rsltref = "/root/hidden/mmb/hardcd";
- model.removeNode(mmb_rsltref);
- model.makeNode(mmb_rsltref);
-
- model.removeNode(ref);
- model.makeValue(ref + "/hardcd", hardcd);
- if(submit("TRMMB04103", "false", ref, mmb_rsltref)==true){
- model.copyNode(rsltref, mmb_rsltref);
- model.removeNode(mmb_rsltref);
- }
- //model.refresh();
- }
- /**
- * @desc : 그리드 data 엑셀화일로 저장
- * @
- * @param :
- * @event :
- * @return :
- * @---------------------------------------------------
- */
- function saveGridToExcel(grdObj, colhiddenyn){
- var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
- if (isNull(colhiddenyn)) {
- colhidden = "true";
- } else {
- colhidden = colhiddenyn;
- }
-
- if (fileName != ""){
- grdObj.saveExcel(fileName, "SheetName", colhidden, true, "", "", true);
- }
- }
- /**
- * @desc : 수술전달 사항(opdelivefact)컬럼 정보에 값이 있을 경우 'C'로 표기된 이미지 표시함
- @ 요구사항 : [요청번호: 12869, TASK번호: 48146, 우선순위: SY]
- @ 요청제목 : 수술마취 의뢰에 전달사항 입력 시 마취과 확정/조정 화면에 전달사항 컬럼 추가 및 팝업 조회 기능 요청
- * @authur : 김광성. kskim 2010.04.19
- * @---------------------------------------------------
- */
- function fCheckOpdelivefact(idx){
- // 수술마취 정규환자 리스트
- var opdelivefact = model.getValue(grd_opanstcnfmpatlist.nodeset + "[" + idx + "]/opdelivefact");
- var opdelivefactCol = grd_opanstcnfmpatlist.colRef("tempopdelivefact");
- if ( !isNull(opdelivefact) ){
- grd_opanstcnfmpatlist.cellstyle("background-image" , idx, opdelivefactCol, idx, opdelivefactCol ) = "../../../com/commonweb/images/icon_list.gif";
- grd_opanstcnfmpatlist.cellstyle("color" , idx, opdelivefactCol , idx, opdelivefactCol ) = "transparent";
- grd_opanstcnfmpatlist.cellstyle("cursor" , idx, opdelivefactCol , idx, opdelivefactCol ) = "hand";
- }
- }
- /**
- * @desc : 수술전달 사항(opdelivefact)컬럼 정보에 값이 있을 경우 별도 표기된 이미지 표시함
- @ 요구사항 : [요청번호: 12869, TASK번호: 48146, 우선순위: SY]
- @ 요청제목 : 수술마취 의뢰에 전달사항 입력 시 마취과 확정/조정 화면에 전달사항 컬럼 추가 및 팝업 조회 기능 요청
- * @authur : 김광성. kskim 2010.04.19
- * @---------------------------------------------------
- */
- function fCheckWaitOpdelivefact(){
- // 수술마취 비정규의뢰환자 리스트
- var nodeList = grd_opanstwaitpatlist.nodeset;
- var nodeCount = nodeList.length;
- for(var idx =1; idx <= nodeCount; idx++){
- var waitopdelivefact = model.getValue(grd_opanstwaitpatlist.nodeset + "[" + idx + "]/opdelivefact");
- var waitopdelivefactCol = grd_opanstwaitpatlist.colRef("tempopdelivefact");
- if ( !isNull(waitopdelivefact) ){
- grd_opanstwaitpatlist.cellstyle("background-image" , idx, waitopdelivefactCol, idx, waitopdelivefactCol ) = "../../../com/commonweb/images/icon_list.gif";
- grd_opanstwaitpatlist.cellstyle("color" , idx, waitopdelivefactCol , idx, waitopdelivefactCol ) = "transparent";
- grd_opanstwaitpatlist.cellstyle("cursor" , idx, waitopdelivefactCol , idx, waitopdelivefactCol ) = "hand";
- }
- }
-
- grd_opanstwaitpatlist.refresh();
- }
- /**
- * @desc : 수술전달 사항(opdelivefact)컬럼 정보에 값이 있을 경우 SPMMO05500_수술전달사항 팝업
- @ 요구사항 : [요청번호: 13643, TASK번호: 51229, 우선순위:SY]
- @ 요청제목: 수술마취 일정 조정 대기자리스트 전달사항 컬럼 추가(기 반영된 사항 중 누락 건)
- * @authur : 김광성. kskim 2010.04.26
- * @---------------------------------------------------
- */
- function fOpenSPMMO05500(grdID){
- if(grdID == "grd_opanstcnfmpatlist"){
- if( isDataCell() ){
- var col = grd_opanstcnfmpatlist.col;
- var row = grd_opanstcnfmpatlist.row;
- var delivfactCol = grd_opanstcnfmpatlist.colRef("tempopdelivefact");
- var opdelivefact = model.getValue(grd_opanstcnfmpatlist.nodeset + "[" + row + "]/opdelivefact");
- if( !isNull(opdelivefact) && col == delivfactCol ){
- setParameter("SPMMO05500_param", opdelivefact);
- modal("SPMMO05500","1","600","250","SPMMO05500",'','','','', '', '');
- }
- }
- }
- else if(grdID == "grd_opanstwaitpatlist"){
- if( isDataCell() ){
- var col = grd_opanstwaitpatlist.col;
- var row = grd_opanstwaitpatlist.row;
- var delivfactCol = grd_opanstwaitpatlist.colRef("tempopdelivefact");
- var opdelivefact = model.getValue(grd_opanstwaitpatlist.nodeset + "[" + row + "]/opdelivefact");
- if( !isNull(opdelivefact) && col == delivfactCol ){
- setParameter("SPMMO05500_param", opdelivefact);
- modal("SPMMO05500","1","600","250","SPMMO05500",'','','','', '', '');
- }
- }
- }
- }
- // 수술마취확정취소
- function fCancelOpAnstSche() {
- var str = "";
- var cnt = 0;
- var saveCnt = 0;
-
- var header = "oprsrvno▦ophistno▩";
- var savedata = "";
-
- for(var i = 1 ; i < grd_opanstcnfmpatlist.rows; i++){
- var opstatcd = model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opstatcd");
-
- if(opstatcd != 20 ){ //확정 상태에서만 선택 가능
- continue;
- }
-
- if(model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/sel") != "Y"){ //선택
- continue;
- }
-
- // 선택된 수술 중 카트 불출 상태가 불출 이전일 경우에만 취소 가능
- if (model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/ccrtstat") == "N" || model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/anstccrtstat") == "N") {
- str = str + "["
- + model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/pid") + " "
- + model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/hngnm") + "]\t"
- + model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/perfdeptnm") + " "
- + model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/perfdrnm") + " - "
- + model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/opnm") + "\r\n" ;
- cnt ++;
- } else {
- savedata += model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/oprsrvno") + "▦"
- + model.getValue(sOPANSTCNFM_PATH + "[" + i + "]/ophistno") + "▩";
- saveCnt ++;
- }
- }
-
- if (cnt > 0) {
- messageBox(str + "\r\n위 수술은 수술카트가 이미 불출된 상태이므로 확정취소가 불가능합니다.", "I999");
- }
-
- if (saveCnt > 0) {
- model.removeNodeset("/root/send/canceldata");
- model.makeValue("/root/send/canceldata", header + savedata);
- if(submit("TXMMO05503")){
- //fReqOpAnstScheReq();
- fReqOpAnstSche();
- }
- }
-
- }
|