diff --git a/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovDepartmentManageTree.jsp b/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovDepartmentManageTree.jsp index 0b5a4af0..3d4cb062 100644 --- a/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovDepartmentManageTree.jsp +++ b/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovDepartmentManageTree.jsp @@ -67,7 +67,7 @@ "types" : { "#" : { /* "max_children" : 4, */ - "max_depth" : 40, + "max_depth" : 10, "valid_children" : ["root"] }, "root" : { @@ -107,6 +107,16 @@ //alert("select_node1"); + + if (data.node.parents.length<2){ + $("table.tbType02").hide(); + $("div.btn_layout01").hide(); + + }else if (data.node.parents.length==2){ + $("table.tbType02").show(); + $("div.btn_layout01").show(); + } + /* 코드 선택 */ var menuNo = data.node.id; var upperMenuId = data.node.parent; @@ -167,7 +177,7 @@ }); }) .on('rename_node.jstree', function (e, data) { //코드명 변경 - alert("rename"); + //alert("rename"); var nodeId = data.node.id; var oldText = data.old; var newText = data.text; @@ -183,7 +193,7 @@ if (confirm("코드명을 변경하시겠습니까?" )) { $.ajax({ type:"POST", - url:"", + url:"", //url:"", data:{ "menuNo" : nodeId, "upperMenuId" : upperMenuId, "menuNm" : newText , "nodeDepth" : data.node.parents.length }, dataType:'json', success : function(returnData, status) { @@ -208,8 +218,14 @@ }) .on('delete_node.jstree', function (e, data) { - alert("delete"); + //alert("delete"); + + var upperMenuId = data.node.parent; + modiNodeId = upperMenuId; + fn_delete_menuInfo(data); + /* 코드 삭제 */ + /* var upperMenuId = data.node.parent; if(data.node.parents.length == 1){ alert("최상위 공통코드는 삭제할수 없습니다."); @@ -245,11 +261,12 @@ } } } + */ }) .on('create_node.jstree', function(e, data) { //alert(data.node.parents.length); - if (data.node.parents.length >= 40) { + if (data.node.parents.length >= 10) { alert("더 이상 하위 코드를 생성할수 없습니다."); data.instance.refresh(); }else{ @@ -278,6 +295,8 @@ alert("코드가 추가 되었습니다."); //fn_select_menuNo(returnData.menuManageVO, returnData.menuManageVO.menuUserType); newNodeId = returnData.newMenuNo ; //코드추가후 노드선택 + modiNodeId = returnData.newMenuNo ; //코드추가후 노드선택 + //alert(returnData.newMenuNo); }else if(returnData.status == "dupl"){ alert("중복된 아이디가 있습니다.\n 중복된 아이디변경/삭제후 다시 추가해 주세요\n"+ "("+returnData.menuManageVO.codeNm+")"); return; @@ -343,7 +362,7 @@ }) .on("refresh.jstree", function (e,data) { - alert("refresh.jstree"); + //alert("refresh.jstree"); if(modiNodeId !=""){ $('#'+data.instance.get_node(modiNodeId).a_attr.id).trigger("click"); @@ -375,6 +394,123 @@ //alert("select_node7"); } + //코드 정보 삭제 + function fn_delete_menuInfo() { + //alert($('#menuNo').val()); + + var p_menuNo = $('#menuNo').val(); + + + if(p_menuNo == null || "undefined"== p_menuNo){ + alert("삭제 하려는 코드를 먼저 선택해주세요."); + return ; + } + + var menuForm = document.menuForm; + if(""==menuForm.menuNo.value){ + alert("코드는 필수 값입니다"); return false; + } + + var instance = $('#kopost_organization').jstree(true); + + + modiNodeId = $('#upperMenuId').val(); + + if (confirm("코드를 삭제 하시겠습니까?")){ + $.ajax({ + type:"POST", + "url" : "", + data:{ "menuNo" : p_menuNo, "upperMenuId" : $('#upperMenuId').val() }, + dataType:'json', + //timeout:(1000*30), + success : function(returnData, status) { + if (returnData.status == "success") { + //코드 목록 갱신 + var instance = $('#kopost_organization').jstree(true); + alert("코드 정보가 삭제 되었습니다."); + $("#kopost_organization").jstree("refresh"); + jstreeInit(); + } else if(returnData.status == "duplPk"){ + alert("삭제하려는 코드를 참조하고 있는 코드가 있습니다.\n 참조하는 코드를 삭제후 다시 시도해 주세요\n"+ "("+returnData.menuManageResultVO.menuCours+")"); + return; + } + else { + alert("코드 삭제가 실패되었습니다."); + return; + } + }, + error : function(request , status, error) { + alert("코드 삭제가 실패되었습니다.."); + }, + complete : function () { + $("#kopost_organization").jstree("refresh"); + } + }); + } + } + + //코드 정보 저장. 등록/수정 + function fn_save_menuInfo(menuNo) { + + var special_pattern = /[`~!@#$%^&*|\\\'\";:\/?.]/gi; + if(special_pattern.test(document.menuForm.menuNo.value) == true){ + alert("코드 코드는 특수문자를 쓸수 없습니다.") ; + return; + } + + var p_menuNo = $('#menuNo').val(); + + if(p_menuNo == null || "undefined"== p_menuNo){ + alert("저장 하려는 코드를 먼저 코드트리에서 생성해 주세요."); return ; + } + + var menuForm = document.menuForm; + if(""==menuForm.menuNo.value){ + alert("코드는 필수 값입니다"); return false; + } + + if(""==menuForm.menuDc.value){ + alert("코드 설명은 필수 값입니다"); return false; + } + + var url = ""; + url = ""; + var params = $(menuForm).serialize(); + $.ajax({ + type:"POST", + "url":url, + data:params, + dataType:'json', + async: false, + success : function(returnData, status) { + if (returnData.status == "success") { + alert("코드 정보가 저장되었습니다."); + //modiNodeId = $('#menuNo').val(); + modiNodeId = returnData.newMenuNo; + + } else if(returnData.status == "upperDupl"){ + alert("상위 코드 번호가 있습니다."); + return; + }else if(returnData.status == "dupl"){ + alert("이미 사용하고 있는 코드 번호가 있습니다."); + return; + }else if(returnData.status == "duplProNm"){ + alert("이미 사용하고 있는 프로그램파일명이 있습니다."); + return; + }else{ + alert("코드 정보 저장이 실패되었습니다."); return; + } + }, + error : function(request , status, error) { + alert("코드 정보 저장이 실패되었습니다."); + }, + complete : function () { + $("#kopost_organization").jstree("refresh"); + } + }); + + } + diff --git a/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovRankManageTree.jsp b/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovRankManageTree.jsp index 7882e8ec..9fc2011b 100644 --- a/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovRankManageTree.jsp +++ b/src/main/webapp/WEB-INF/jsp/cmm/uss/rnt/EgovRankManageTree.jsp @@ -107,7 +107,6 @@ //alert("select_node1"); - //alert(data.node.parents.length); if (data.node.parents.length<2){ $("table.tbType02").hide(); @@ -221,10 +220,8 @@ //alert("delete"); - var upperMenuId = data.node.parent; - - modiNodeId = upperMenuId; - + var upperMenuId = data.node.parent; + modiNodeId = upperMenuId; fn_delete_menuInfo(data); /* 코드 삭제 */ @@ -518,7 +515,6 @@ - // 초기 데이터 만드는 function function fn_makeList(data){ console.log(' makeList data : ', data);