123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[
- /**
- * 최초 로딩시
- */
- // function fProcBtn() {
- // if (getUserInfo("jobkindcd").indexOf("03") > -1) { //의사인 경우 '저장만 보이게'
- // opener.btn_save.visible = "true";
- // opener.btn_complete.visible = "false";
- // opener.btn_cancel.visible = "false";
- // }
- // if (getUserInfo("dutplcecd") == "4072000000" || getUserInfo("dutplcecd") == '4070700000') { //심사팀, 심사파트인 경우
- // opener.btn_save.visible = "true";
- // opener.btn_complete.visible = "true";
- // opener.btn_cancel.visible = "true";
- //
- // }
- //
- // if (model.getValue("/root/main/detlinfo/master/status") == "C") {
- // opener.btn_save.disabled = true;
- // opener.btn_complete.disabled = true;
- // opener.btn_cancel.disabled = false;
- // } else {//if (model.getValue("/root/main/detlinfo/master/status") == "A") {
- // opener.btn_save.disabled = false;
- // opener.btn_complete.disabled = false;
- // opener.btn_cancel.disabled = true;
- // }
- // }
- //
- // /**
- // * 설명 비고 팝업
- // */
- // function fShowDesc(sarg,) {
- // var iEventX = parseInt(event.clientX, 10) - 315;
- // var iEventY = parseInt(event.clientY, 10) + 10;
- //
- // grp_desc.attribute("style") = style="left:"+ iEventX +"px; top:"+ iEventY +"px; width:315px; height:230px; ";
- //
- // var iLen = arguments.length;
- // var s = "";
- //
- // for (var i = 0; i < iLen; i++) {
- // var arr = arguments[i].split('|');
- // s += "\n"+ model.getValue("/root/init/hardcd"+arr[0]+"/hardcd[hardcd='"+arr[1]+"']/hardcdnm");
- // }
- //
- // if (iLen > 1) {
- // s = s.substr(1);
- // }
- //
- // model.setValue("/root/hidden/desc", s);
- // model.refresh();
- // grp_desc.visible = true;
- // }
- //
- //
- // /**
- // * 현재 의료질 향상 점검표 서식 정보 저장
- // */
- // function fConfirm(status) {
- // var msg = "저장";
- // model.makeValue("/root/main/detlinfo/master/status", status);
- // switch (status) {
- // case "A":
- // msg = "저장";
- // break;
- // case "C":
- // msg = "종결";
- // break;
- // case "R":
- // model.makeValue("/root/main/detlinfo/master/status", "A");
- // msg = "종결취소";
- // break;
- // default :
- // msg = "저장";
- // }
- //
- //
- // //기타진단 저장 그리드 자료를 서식 자료로
- // var s = "/root/main/diaginfo/diagcdlist";
- // var iCnt = getNodesetCount(s);
- // var iFirst = 9;
- //
- // var diagnm = "";
- // var poa = "";
- // var diagcd = "";
- // for (var i = 1; i<= 10; i++) {//i <= iCnt; i++) { //기타진단 저장 그리드 자료를 서식 자료로
- // if (i > iCnt) {
- // diagcd = "";
- // diagnm = "";
- // poa = "";
- // } else {
- // diagcd = model.getValue("/root/main/diaginfo/diagcdlist["+i+"]/diagcd");
- // diagnm = model.getValue("/root/main/diaginfo/diagcdlist["+i+"]/diaghngnm");
- // poa = model.getValue("/root/main/diaginfo/diagcdlist["+i+"]/poa");
- // }
- // model.setValue("/root/main/detlinfo/formdetl[itemcd='DI0100"+ ((iFirst++)+"").getLeftPad(2, "0") +"']/itemval1", diagcd);
- // model.setValue("/root/main/detlinfo/formdetl[itemcd='DI0100"+ ((iFirst++)+"").getLeftPad(2, "0") +"']/itemval1", diagnm);
- // model.setValue("/root/main/detlinfo/formdetl[itemcd='DI0100"+ ((iFirst++)+"").getLeftPad(2, "0") +"']/itemval1", poa);
- // }
- //
- // //수술 합병증 관련 그리드 선택을 델리미터('|') 포함된 문자열로
- // s = grd2_3.nodeset;
- // iCnt = getNodesetCount(s);
- // var rslt = "";
- // for (var i = 1; i <= iCnt; i++) {
- // if (model.getValue(s+"["+ i +"]/chk") == "true") {
- // rslt += "|" + model.getValue(s+"["+ i +"]/hardcd");
- // }
- // }
- //
- // //if (iCnt > 1) {
- // //rslt = rslt.substring(1);
- // model.setValue("/root/main/detlinfo/formdetl[itemcd='DI010054']/itemval1" , rslt);
- // //}
- //
- // if (!fValidAll()) {
- // return;
- // }
- //
- // //로그인 구분에 따라.. status설정?? 20130508
- // model.makeValue("/root/main/detlinfo/masterinfo", getPrcpNodeListCSV(instance1.selectNodes("/root/main/detlinfo/master")));
- //
- // if (submit("TXMMR09000")) {
- // if (model.getValue("/root/hidden/savedetl/rslt/success") == "true") {
- // messageBox(msg+"되었습니다.", "I000");
- // fProcBtn();
- // }
- // }
- //
- //
- // }
- //
- // /**
- // * 주/기타 진단 팝업
- // */
- // function fPopDiag(o) {
- // setParameter("SPMMO03100_patinfo", model.getValue("/root/send/reqdata/pid")+"▦"+model.getValue("/root/send/reqdata/orddd"));
- // fPrcpModal ("SPMMO03100", 5, 40);
- // if ( getParameter( "SPMMO03100_rtn_useyn" ) == "Y" ) {
- // var rtn = getParameter( "SPMMO03100_rtn" ); //이걸 왜 델리미터 문자열로 반환해서 이고생인지.. 걍 인스턴스로 주던가 하면 명확할텐데.. 넘겨줄때 스트링문자열로 바꿔 넘겨받아서 또 잘라서 배열이나 다른 형태로 또 바꿔.. 에효!!
- // var list = fTransList(rtn); //델리미터로 구분된 문자열을 자바형태의 ArrayList로 변환
- //
- // if (o.grid == "" || o.grid == "undefined" || o.grid == undefined) {
- // document.all(o.cd).value = list.get(0).get("diagcd");
- // document.all(o.nm).value = list.get(0).get("diaghngnm");
- // } else {
- // var t = document.all(o.grid);
- // var iRow = t.row;
- // var iTot = iRow + list.length();
- // var j = 0;
- //
- // for (var i = iRow; i < iTot; i++) { //현재 로우부터 선택된 행 만큼
- // var m = list.get(j++);
- // if (i >= t.rows) {
- // t.addRow(); //행이 없을 경우 행추가
- // }
- // t.valueMatrix(i, t.colRef(o.cd)) = m.get("diagcd");
- // t.valueMatrix(i, t.colRef(o.nm)) = m.get("diaghngnm");
- // }
- // }
- // model.refresh();
- // setParameter( "SPMMO03100_rtn_useyn", "" );
- // }
- //
- //
- // }
- //
- // /**
- // * 필수 입력 및 유효성 체크
- // * attribute이용
- // * ex) required="Y" , requiredEither="{obj:'rdo2_1_1b', msg:'예/아니오'}", requiredWith="{obj:['rdo1_1_1', 'rdo1_1_2', 'rdo1_1_3'], msg:'수술전 검사 시점', when:'B'}"
- // */
- // function fValidAll() {
- // var w = document.controls;
- // for (var i =0; i < w.length; i++) {
- // var o = w.item(i);
- //
- // var v = null;
- // //필수 입력
- // if (o.attribute("required") != "" ) {
- // eval("v = "+o.attribute("required")); //넣어두기는 object형태로 넣어뒀는데.. 문자열로 인식해서 eval로 다시 오브젝트 형태로 바꿔줌
- // if (o.value == "") {
- // messageBox(v.msg+"은(는)", "I003");
- // model.setFocus(o.attribute("id"));
- // return;
- // }
- // }
- //
- // //두개의 값중 하나는 필수
- // if (o.attribute("requiredEither") != "" ) {
- // if (o.value == "") {
- // eval("v = "+o.attribute("requiredEither"));
- //
- // if (document.all(v.obj).value == "") {
- // messageBox(v.msg+" 둘중 하나를 반드시 ", "C002");
- // model.setFocus(v.obj);
- // return;
- // }
- // }
- // }
- //
- // //연결된 다른 컨트롤의 값이 필수
- // if (o.attribute("requiredWithOne") != "") {
- //
- // if (o.value != "") {
- // eval("v ="+o.attribute("requiredWithOne"));
- // var arr = v.obj;
- // var bExist = false;
- // if (o.elementName == "xforms:select1" && o.attribute("appearance") == "full") { //라디오 일 경우 해당 컨트롤이 체크된 경우만 체크 수행
- // if (v.when != o.value) {
- // continue;
- // }
- // }
- // for (var j = 0; j < arr.length && !bExist; j++) {
- // var t = document.all(arr[j]);
- // if (t.value != "") {
- // bExist = true;
- // break;
- // }
- // }
- // if (!bExist) {
- // messageBox(v.msg+" 중 하나를 반드시 ", "C002");
- // model.setFocus(v.obj);
- // return;
- // }
- // }
- // }
- //
- // //연결된 다른 컨트롤의 값이 필수
- // if (o.attribute("requiredWithAll") != "") {
- //
- // if (o.value != "") {
- // eval("v ="+o.attribute("requiredWithAll"));
- // var arr = v.obj;
- // var bExist = true;
- // if (o.elementName == "xforms:select1" && o.attribute("appearance") == "full") { //라디오 일 경우 해당 컨트롤이 체크된 경우만 체크 수행
- // if (v.when != o.value) {
- // continue;
- // }
- // }
- // for (var j = 0; j < arr.length && bExist; j++) {
- // var t = document.all(arr[j]);
- //
- // if (t.elementName == "xforms:datagrid") { //데이타 그리드 일때 체크된 값이 있는지 체크
- // var iChk = getNodesetCount(t.nodeset+"[chk='true']");
- // if (iChk == 0) {
- // bExist = false;
- // }
- // } else {
- // if (t.value == "") {
- // bExist = false;
- // }
- // }
- // }
- // if (!bExist) {
- // messageBox(v.msg+" 를 반드시 ", "C002");
- // model.setFocus(v.obj);
- // return;
- // }
- // }
- // }
- // }
- //
- //
- //
- // var poi = model.getValue("/root/main/detlinfo/formdetl[itemcd='DI010008']/itemval1") ;
- // if (poi =="") {
- // messageBox("주진단의 POI이 없습니다", "I999");
- // return;
- // }
- //
- //
- // //외과 예외사항
- // var patdeptcd = model.getValue("/root/main/detlinfo/formdetl[itemcd='DI010001']/itemval1") ;
- // if (patdeptcd =="2040000000") {
- // if (rdo_5933.value == "" && rdo_5934.value =="") {
- // var msg ="[개복술/복강경수술] 여부 또는 [편측/양측] 여부를 반드시 입력하셔야 합니다";
- // messageBox(msg, "I999");
- // return;
- // }
- // }
- // return true;
- // }
- //
- // /**
- // * 진단 팝업으로 받은 델리미터 문자열을 ArrayList<Map>(emr/common/util.js)로 변경해서 반환
- // */
- // function fTransList(s) {
- // var colSep = "▦";
- // var rowSep = "▩";
- //
- // var arrRow = s.split(rowSep);
- // var list = new ArrayList();
- // for (var i = 1; i < arrRow.length; i++) {
- // var arrName = arrRow[0].split(colSep);
- // var arrCol = arrRow[i].split(colSep);
- // var curMap = new Map();
- // for (var j = 0; j < arrCol.length; j++) {
- // curMap.put(arrName[j], arrCol[j]);
- // }
- // if (arrCol.length > 0 && arrRow[i] != "") {
- // list.add(curMap);
- // }
- // }
- // return list;
- // }
- ]]></Script>
|