2022-10-12 12:38 관리자 직급관리 개발
This commit is contained in:
parent
80ce983b9f
commit
4f0f50e099
@ -1,19 +1,29 @@
|
||||
package kcc.kccadr.advcAprvl.web;
|
||||
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.List;
|
||||
import java.util.Properties;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import kcc.com.cmm.service.EgovCmmUseService;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineService;
|
||||
import kcc.kccadr.adjReqMgrOff.service.AdjReqMgrOffLineVO;
|
||||
import kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO;
|
||||
import kcc.let.sym.ccm.cde.service.EgovCcmCmmnDetailCodeManageService;
|
||||
import kcc.let.sym.mnu.mcm.service.EgovMenuCreateManageService;
|
||||
import kcc.let.sym.mnu.mpm.service.MenuManageJTreeVO;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
|
||||
@Controller
|
||||
@ -46,6 +56,13 @@ public class AdvcAprvlController {
|
||||
@Resource(name = "egovCryptoUtil")
|
||||
EgovCryptoUtil egovCryptoUtil;
|
||||
|
||||
/** EgovMenuManageService */
|
||||
@Resource(name = "meunCreateManageService")
|
||||
private EgovMenuCreateManageService menuCreateManageService;
|
||||
|
||||
//tree code 관리
|
||||
@Resource(name = "CmmnDetailCodeManageService")
|
||||
private EgovCcmCmmnDetailCodeManageService cmmnDetailCodeManageService;
|
||||
/**
|
||||
* auth : 이준호
|
||||
* 결재선 지정 팝업
|
||||
@ -56,6 +73,34 @@ public class AdvcAprvlController {
|
||||
return "kccadr/advcAprvl/popup/advcAprvlReqPop";
|
||||
}
|
||||
|
||||
/**
|
||||
* auth : 이준호
|
||||
* 결재선 지정 팝업
|
||||
* date : 2022.09.23
|
||||
*/
|
||||
@RequestMapping(value = {"/kccadr/advcAprvl/advcAprvlReqPopJtreeAjax.do"
|
||||
, "/kccadr/advcAprvl/advcAprvlReqPopJtreeAjax.do" }
|
||||
)
|
||||
public void advcAprvlReqPopJtreeAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("searchVO") CmmnDetailCodeVO searchVO,
|
||||
ModelMap model, HttpServletResponse response) throws Exception {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
response.setHeader("Content-Type", "text/html;charset=utf-8");
|
||||
PrintWriter out = new PrintWriter(new OutputStreamWriter(response.getOutputStream(), "UTF-8"));
|
||||
|
||||
//CmmnDetailCodeVO searchVO = new CmmnDetailCodeVO();
|
||||
List<CmmnDetailCodeVO> resultList = cmmnDetailCodeManageService.selectCmmnDetailCodeListAll(searchVO) ;
|
||||
|
||||
CmmnDetailCodeVO topCmmnDetailCodeVO = new CmmnDetailCodeVO();
|
||||
topCmmnDetailCodeVO.setParent("#");
|
||||
topCmmnDetailCodeVO.setId("0");
|
||||
topCmmnDetailCodeVO.setText("한국저작권위원회 분쟁조정본부");
|
||||
|
||||
resultList.add(0, topCmmnDetailCodeVO);
|
||||
mapper.writeValue(out, resultList);
|
||||
out.flush();
|
||||
}
|
||||
|
||||
/**
|
||||
* auth : 이준호
|
||||
* 결재선 대결 팝업
|
||||
|
||||
@ -549,6 +549,8 @@ public class EgovCcmCmmnCodeManageController {
|
||||
|
||||
LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
try{
|
||||
System.out.println("cmmnDetailCodeVO.getNodeDepth()");
|
||||
System.out.println(cmmnDetailCodeVO.getNodeDepth());
|
||||
String newCode = menuManageVO.getMenuNo() ;
|
||||
if(cmmnDetailCodeVO.getNodeDepth().equals("2")) { //LETTCCMMNCLCODE 테이블(분류코드)
|
||||
CmmnClCode cmmnClCodeVO = new CmmnClCode();
|
||||
|
||||
@ -67,11 +67,15 @@ public interface EgovCcmCmmnDetailCodeManageService {
|
||||
* @throws Exception
|
||||
*/
|
||||
void updateCmmnDetailCode(CmmnDetailCode cmmnDetailCode) throws Exception;
|
||||
|
||||
void updateCmmnDetailNmCode(CmmnDetailCode cmmnDetailCode) throws Exception;
|
||||
|
||||
List<CmmnDetailCode> selectCmmnCodeAllList(CmmnDetailCode cmmnDetailCode) throws Exception;
|
||||
|
||||
List<CmmnDetailCodeVO> selectCmmnDetailCodeListAll(CmmnDetailCodeVO searchVO) throws Exception;
|
||||
|
||||
List<CmmnDetailCodeVO> selectCmmnDetailCodeListWithCode(CmmnDetailCodeVO searchVO) throws Exception;
|
||||
|
||||
void updateCmmnDetailCodePk(CmmnDetailCodeVO cmmnDetailCodeVO) throws Exception;
|
||||
|
||||
}
|
||||
|
||||
@ -85,6 +85,10 @@ public class CmmnDetailCodeManageDAO extends EgovAbstractDAO {
|
||||
public void updateCmmnDetailCode(CmmnDetailCode cmmnDetailCode) throws Exception {
|
||||
update("CmmnDetailCodeManageDAO.updateCmmnDetailCode", cmmnDetailCode);
|
||||
}
|
||||
|
||||
public void updateCmmnDetailNmCode(CmmnDetailCode cmmnDetailCode) throws Exception {
|
||||
update("CmmnDetailCodeManageDAO.updateCmmnDetailNmCode", cmmnDetailCode);
|
||||
}
|
||||
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@ -97,6 +101,11 @@ public class CmmnDetailCodeManageDAO extends EgovAbstractDAO {
|
||||
return (List<CmmnDetailCodeVO>) list("CmmnDetailCodeManageDAO.selectCmmnDetailCodeListAll", searchVO);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public List<CmmnDetailCodeVO> selectCmmnDetailCodeListWithCode(CmmnDetailCodeVO searchVO) throws Exception{
|
||||
return (List<CmmnDetailCodeVO>) list("CmmnDetailCodeManageDAO.selectCmmnDetailCodeListWithCode", searchVO);
|
||||
}
|
||||
|
||||
public void updateCmmnDetailCodePk(CmmnDetailCodeVO cmmnDetailCodeVO) throws Exception{
|
||||
update("CmmnDetailCodeManageDAO.updateCmmnDetailCodePk", cmmnDetailCodeVO);
|
||||
}
|
||||
|
||||
@ -86,6 +86,11 @@ public class EgovCcmCmmnDetailCodeManageServiceImpl extends EgovAbstractServiceI
|
||||
cmmnDetailCodeManageDAO.updateCmmnDetailCode(cmmnDetailCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateCmmnDetailNmCode(CmmnDetailCode cmmnDetailCode) throws Exception {
|
||||
cmmnDetailCodeManageDAO.updateCmmnDetailNmCode(cmmnDetailCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CmmnDetailCode> selectCmmnCodeAllList(CmmnDetailCode cmmnDetailCode) throws Exception {
|
||||
return cmmnDetailCodeManageDAO.selectCmmnCodeAllList(cmmnDetailCode);
|
||||
@ -96,6 +101,11 @@ public class EgovCcmCmmnDetailCodeManageServiceImpl extends EgovAbstractServiceI
|
||||
return cmmnDetailCodeManageDAO.selectCmmnDetailCodeListAll(searchVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CmmnDetailCodeVO> selectCmmnDetailCodeListWithCode(CmmnDetailCodeVO searchVO) throws Exception {
|
||||
return cmmnDetailCodeManageDAO.selectCmmnDetailCodeListWithCode(searchVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateCmmnDetailCodePk(CmmnDetailCodeVO cmmnDetailCodeVO) throws Exception {
|
||||
cmmnDetailCodeManageDAO.updateCmmnDetailCodePk(cmmnDetailCodeVO);
|
||||
|
||||
@ -1,25 +1,37 @@
|
||||
package kcc.let.uss.rnt.web;
|
||||
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
|
||||
import kcc.com.cmm.ComDefaultVO;
|
||||
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
|
||||
import kcc.kccadr.cmm.RestResponse;
|
||||
import kcc.com.cmm.LoginVO;
|
||||
import kcc.com.cmm.service.CmmnDetailCode;
|
||||
import kcc.let.sym.ccm.cca.service.CmmnCode;
|
||||
import kcc.let.sym.ccm.cca.service.EgovCcmCmmnCodeManageService;
|
||||
import kcc.let.sym.ccm.ccc.service.CmmnClCode;
|
||||
import kcc.let.sym.ccm.ccc.service.EgovCcmCmmnClCodeManageService;
|
||||
import kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO;
|
||||
import kcc.let.sym.ccm.cde.service.EgovCcmCmmnDetailCodeManageService;
|
||||
import kcc.let.sym.mnu.mcm.service.MenuCreatVO;
|
||||
import kcc.let.sym.mnu.mpm.service.MenuManageJTreeVO;
|
||||
import kcc.let.sym.mnu.mpm.service.MenuManageVO;
|
||||
import kcc.let.uss.rnt.service.EgovCustomRankManageService;
|
||||
import kcc.let.uss.rnt.service.EgovCustomRankManageVO;
|
||||
|
||||
/**
|
||||
* 직급 관리하는 컨트롤러
|
||||
@ -43,6 +55,17 @@ public class EgovCustomRankManageController {
|
||||
@Resource(name = "EgovCustomRankManageService")
|
||||
private EgovCustomRankManageService egovCustomRankManageService;
|
||||
|
||||
//tree code 관리
|
||||
@Resource(name = "CmmnDetailCodeManageService")
|
||||
private EgovCcmCmmnDetailCodeManageService cmmnDetailCodeManageService;
|
||||
|
||||
//tree code 추가
|
||||
@Resource(name = "CmmnCodeManageService")
|
||||
private EgovCcmCmmnCodeManageService cmmnCodeManageService;
|
||||
|
||||
@Resource(name = "CmmnClCodeManageService")
|
||||
private EgovCcmCmmnClCodeManageService cmmnClCodeManageService;
|
||||
|
||||
@RequestMapping(value = "/uss/rnt/EgovRankManageTree.do")
|
||||
public String selectRankManage(@ModelAttribute("menuCreatVO") MenuCreatVO menuCreatVO, @ModelAttribute("searchVO") ComDefaultVO searchVO,
|
||||
ModelMap model, MenuManageVO menuManageVO , HttpSession session ) throws Exception {
|
||||
@ -73,11 +96,419 @@ public class EgovCustomRankManageController {
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = {"/uss/rnt/EgovRankDataLoad.do"}, method = RequestMethod.POST)
|
||||
//@RequestMapping(value = {"/uss/rnt/EgovRankDataLoad.do"}, method = RequestMethod.POST)
|
||||
/*
|
||||
public ResponseEntity<RestResponse> egovRankDataLoad(HttpServletRequest request , @RequestBody EgovCustomRankManageVO rankManageVO) throws Exception {
|
||||
System.out.println(" :::: egovRankDataLoad ::::");
|
||||
return ResponseEntity.ok().body(egovCustomRankManageService.egovRankDataLoad(rankManageVO.getCodeId()));
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
//기본 코드 트리 가져오기 - 직급
|
||||
@RequestMapping(value = {"/uss/rnt/EgovRankDataLoadJtreeAjax.do"
|
||||
, "/uss/rnt/EgovRankDataLoadJtreeAjax1.do" }
|
||||
)
|
||||
public void EgovRankDataLoadJtreeAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("searchVO") CmmnDetailCodeVO searchVO,
|
||||
ModelMap model, HttpServletResponse response) throws Exception {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
response.setHeader("Content-Type", "text/html;charset=utf-8");
|
||||
PrintWriter out = new PrintWriter(new OutputStreamWriter(response.getOutputStream(), "UTF-8"));
|
||||
|
||||
System.out.println("aaaaaaaaaaa");
|
||||
|
||||
//CmmnDetailCodeVO searchVO = new CmmnDetailCodeVO();
|
||||
searchVO.setId("CC401");
|
||||
List<CmmnDetailCodeVO> resultList = cmmnDetailCodeManageService.selectCmmnDetailCodeListWithCode(searchVO) ;
|
||||
|
||||
CmmnDetailCodeVO topCmmnDetailCodeVO = new CmmnDetailCodeVO();
|
||||
topCmmnDetailCodeVO.setParent("#");
|
||||
topCmmnDetailCodeVO.setId("CC401");
|
||||
topCmmnDetailCodeVO.setText("직급관리");
|
||||
|
||||
resultList.add(0, topCmmnDetailCodeVO);
|
||||
mapper.writeValue(out, resultList);
|
||||
out.flush();
|
||||
}
|
||||
|
||||
//기본 코드 트리 가져오기 - 직급
|
||||
@RequestMapping(value = {"/uss/rnt/EgovPstnDataLoadJtreeAjax.do"
|
||||
, "/uss/rnt/EgovRankDataLoadJtreeAjax1.do" }
|
||||
)
|
||||
public void EgovPstnDataLoadJtreeAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("searchVO") CmmnDetailCodeVO searchVO,
|
||||
ModelMap model, HttpServletResponse response) throws Exception {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
response.setHeader("Content-Type", "text/html;charset=utf-8");
|
||||
PrintWriter out = new PrintWriter(new OutputStreamWriter(response.getOutputStream(), "UTF-8"));
|
||||
|
||||
System.out.println("aaaaaaaaaaabbbbbbb");
|
||||
|
||||
//CmmnDetailCodeVO searchVO = new CmmnDetailCodeVO();
|
||||
searchVO.setId("CC402");
|
||||
List<CmmnDetailCodeVO> resultList = cmmnDetailCodeManageService.selectCmmnDetailCodeListWithCode(searchVO) ;
|
||||
|
||||
CmmnDetailCodeVO topCmmnDetailCodeVO = new CmmnDetailCodeVO();
|
||||
topCmmnDetailCodeVO.setParent("#");
|
||||
topCmmnDetailCodeVO.setId("CC402");
|
||||
topCmmnDetailCodeVO.setText("부서관리");
|
||||
|
||||
resultList.add(0, topCmmnDetailCodeVO);
|
||||
mapper.writeValue(out, resultList);
|
||||
out.flush();
|
||||
}
|
||||
|
||||
/**
|
||||
* 직급 코드 정보를 등록한다.
|
||||
*
|
||||
* @param partInfVO
|
||||
* @param model
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@RequestMapping("/uss/rnt/EgovRankDataInsertJtreeAjax.do")
|
||||
public ModelAndView insertCcmCmmnInfoInsertAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("cmmnDetailCodeVO") CmmnDetailCodeVO cmmnDetailCodeVO,
|
||||
ModelMap model) throws Exception {
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
MenuManageVO resultVO = new MenuManageVO();
|
||||
try {
|
||||
|
||||
String newCode = RandomStringUtils.random(3, new char[]{'1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J'}) ;
|
||||
|
||||
System.out.println("cmmnDetailCodeVO.getNodeDepth()");
|
||||
System.out.println(cmmnDetailCodeVO.getNodeDepth());
|
||||
|
||||
if(cmmnDetailCodeVO.getNodeDepth().equals("200")) { //LETTCCMMNCLCODE 테이블(분류코드)
|
||||
CmmnClCode cmmnClCode = new CmmnClCode(); //최초 들어올때 임의의 menuManageVO 생성
|
||||
cmmnClCode.setClCode(newCode);
|
||||
cmmnClCode.setClCodeNm("분류코드");
|
||||
cmmnClCode.setClCodeDc("분류코드설명");
|
||||
cmmnClCode.setUseAt("Y");
|
||||
cmmnClCode.setFrstRegisterId(user.getId());
|
||||
|
||||
cmmnDetailCodeVO.setCodeId(newCode); //에러시에 setCodeNm 을 보여주기 위해 미리 set 함
|
||||
cmmnDetailCodeVO.setCodeNm("분류코드");
|
||||
cmmnDetailCodeVO.setCodeDc("분류코드설명");
|
||||
cmmnDetailCodeVO.setUseAt("Y");
|
||||
cmmnDetailCodeVO.setParent("0");
|
||||
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
|
||||
//분류코드와 공통코드에 같은 아이디 jstree에 무한루프로 먼저 검색
|
||||
int duplCnt = cmmnCodeManageService.isExistCode(cmmnDetailCodeVO) ;
|
||||
if(duplCnt > 0 ) {
|
||||
modelAndView.addObject("status", "dupl");
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
return modelAndView;
|
||||
}
|
||||
cmmnClCodeManageService.insertCmmnClCode(cmmnClCode);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("3")){ //LETTCCMMNCODE 테이블(공통코드))
|
||||
CmmnCode cmmnCode = new CmmnCode();
|
||||
cmmnCode.setCodeId(newCode);
|
||||
cmmnCode.setCodeIdNm("공통코드");
|
||||
cmmnCode.setCodeIdDc("공통코드설명");
|
||||
cmmnCode.setClCode(menuManageVO.getUpperMenuId());
|
||||
cmmnCode.setUseAt("Y");
|
||||
cmmnCode.setFrstRegisterId(user.getId());
|
||||
|
||||
cmmnDetailCodeVO.setParent(menuManageVO.getUpperMenuId()); //에러시에 setCodeNm 을 보여주기 위해 미리 set 함
|
||||
cmmnDetailCodeVO.setCodeId(newCode);
|
||||
cmmnDetailCodeVO.setCodeNm("공통코드");
|
||||
cmmnDetailCodeVO.setCodeDc("공통코드설명");
|
||||
cmmnDetailCodeVO.setUseAt("Y");
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
|
||||
int duplCnt = cmmnCodeManageService.isExistCode(cmmnDetailCodeVO) ;
|
||||
if(duplCnt > 0 ) {
|
||||
modelAndView.addObject("status", "dupl");
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
return modelAndView;
|
||||
}
|
||||
cmmnCodeManageService.insertCmmnCode(cmmnCode);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("2")
|
||||
|| cmmnDetailCodeVO.getNodeDepth().equals("4")
|
||||
){ //LETTCCMMNDETAILCODE 테이블(상세코드))
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getUpperMenuId());
|
||||
cmmnDetailCodeVO.setCode(newCode);
|
||||
cmmnDetailCodeVO.setCodeNm("상세코드");
|
||||
cmmnDetailCodeVO.setCodeDc("상세코드설명");
|
||||
cmmnDetailCodeVO.setUseAt("Y");
|
||||
cmmnDetailCodeVO.setFrstRegisterId(user.getId());
|
||||
cmmnDetailCodeManageService.insertCmmnDetailCode(cmmnDetailCodeVO);
|
||||
newCode = menuManageVO.getUpperMenuId()+"__"+ newCode ;
|
||||
}
|
||||
modelAndView.addObject("newMenuNo", newCode);
|
||||
modelAndView.addObject("status", "success");
|
||||
}catch (Exception e) {
|
||||
modelAndView.addObject("status", "dupl");
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
}
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 코드 이름 변경한다.
|
||||
*
|
||||
* @param partInfVO
|
||||
* @param model
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping("/uss/rnt/EgovRankDataUpdateNmJtreeAjax.do")
|
||||
public ModelAndView updateMenuInfoNmUpdateAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("cmmnDetailCodeVO") CmmnDetailCodeVO cmmnDetailCodeVO,
|
||||
ModelMap model) throws Exception {
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
try{
|
||||
System.out.println("cmmnDetailCodeVO.getNodeDepth()");
|
||||
System.out.println(cmmnDetailCodeVO.getNodeDepth());
|
||||
if(cmmnDetailCodeVO.getNodeDepth().equals("200")) { //LETTCCMMNCLCODE 테이블(분류코드)
|
||||
CmmnClCode cmmnClCodeVO = new CmmnClCode();
|
||||
cmmnClCodeVO.setClCode(menuManageVO.getMenuNo());
|
||||
cmmnClCodeVO.setClCodeNm(menuManageVO.getMenuNm());
|
||||
cmmnClCodeVO.setLastUpdusrId(user.getId());
|
||||
cmmnClCodeManageService.updateCmmnClCodeNm(cmmnClCodeVO);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("3")){ //LETTCCMMNCODE 테이블(공통코드))
|
||||
CmmnCode cmmnCodeVO = new CmmnCode();
|
||||
cmmnCodeVO.setCodeId(menuManageVO.getMenuNo());
|
||||
cmmnCodeVO.setCodeIdNm(menuManageVO.getMenuNm());
|
||||
cmmnCodeVO.setLastUpdusrId(user.getId());
|
||||
cmmnCodeManageService.updateCmmnCodeNm(cmmnCodeVO);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("4")
|
||||
||cmmnDetailCodeVO.getNodeDepth().equals("2")){ //LETTCCMMNDETAILCODE 테이블(상세코드))
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getUpperMenuId());
|
||||
cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo().split("__")[1]);
|
||||
cmmnDetailCodeVO.setCodeNm(menuManageVO.getMenuNm());
|
||||
cmmnDetailCodeVO.setLastUpdusrId(user.getId());
|
||||
cmmnDetailCodeManageService.updateCmmnDetailNmCode(cmmnDetailCodeVO);
|
||||
}
|
||||
modelAndView.addObject("status", "success");
|
||||
}catch (Exception e) {
|
||||
modelAndView.addObject("status", "fail");
|
||||
}
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 공통 코드 정보를 조회한다.
|
||||
*
|
||||
* @param partInfVO
|
||||
* @param model
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping("/uss/rnt/EgovRankDataCodeInfoJtreeAjax.do")
|
||||
public ModelAndView EgovRankDataCodeInfoJtreeAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("cmmnDetailCodeVO") CmmnDetailCodeVO cmmnDetailCodeVO,
|
||||
@ModelAttribute("searchVO") ComDefaultVO searchVO , ModelMap model) throws Exception {
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getMenuNo());
|
||||
|
||||
/*if(cmmnDetailCodeVO.getMenuCodeChange().equals("Y")) {
|
||||
modelAndView.addObject("status", "success");
|
||||
return modelAndView;
|
||||
}*/
|
||||
|
||||
if(cmmnDetailCodeVO.getNodeDepth().equals("200")) { //LETTCCMMNCLCODE 테이블(분류코드)
|
||||
CmmnClCode cmmnClCode = new CmmnClCode();
|
||||
cmmnClCode.setClCode(menuManageVO.getMenuNo());
|
||||
|
||||
CmmnClCode cmmnClCodeVO = cmmnClCodeManageService.selectCmmnClCodeDetail(cmmnClCode);
|
||||
cmmnDetailCodeVO.setCodeId(cmmnClCodeVO.getClCode());
|
||||
cmmnDetailCodeVO.setCodeNm(cmmnClCodeVO.getClCodeNm());
|
||||
cmmnDetailCodeVO.setCodeDc(cmmnClCodeVO.getClCodeDc());
|
||||
cmmnDetailCodeVO.setUseAt(cmmnClCodeVO.getUseAt());
|
||||
cmmnDetailCodeVO.setParent("0");
|
||||
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("3")){ //LETTCCMMNCODE 테이블(공통코드)
|
||||
CmmnCode cmmnCode = new CmmnCode();
|
||||
cmmnCode.setCodeId(menuManageVO.getMenuNo());
|
||||
|
||||
CmmnCode cmmnCodeVO =cmmnCodeManageService.selectCmmnCodeDetail(cmmnCode);
|
||||
cmmnDetailCodeVO.setCodeId(cmmnCodeVO.getCodeId());
|
||||
cmmnDetailCodeVO.setCodeNm(cmmnCodeVO.getCodeIdNm());
|
||||
cmmnDetailCodeVO.setCodeDc(cmmnCodeVO.getCodeIdDc());
|
||||
cmmnDetailCodeVO.setUseAt(cmmnCodeVO.getUseAt());
|
||||
cmmnDetailCodeVO.setParent(cmmnCodeVO.getClCode());
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("2")
|
||||
|| cmmnDetailCodeVO.getNodeDepth().equals("4")
|
||||
){ //LETTCCMMNDETAILCODE 테이블(상세코드)
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getUpperMenuId());
|
||||
cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo().split("__")[1]);
|
||||
CmmnDetailCode cmmnDetailCode = new CmmnDetailCode();
|
||||
cmmnDetailCode = cmmnDetailCodeManageService.selectCmmnDetailCodeDetail(cmmnDetailCodeVO);
|
||||
|
||||
cmmnDetailCodeVO.setCodeId(cmmnDetailCode.getCode());
|
||||
cmmnDetailCodeVO.setCodeNm(cmmnDetailCode.getCodeNm());
|
||||
cmmnDetailCodeVO.setCodeDc(cmmnDetailCode.getCodeDc());
|
||||
cmmnDetailCodeVO.setUseAt(cmmnDetailCode.getUseAt());
|
||||
cmmnDetailCodeVO.setParent(cmmnDetailCode.getCodeId());
|
||||
cmmnDetailCodeVO.setSortNo(cmmnDetailCode.getSortNo());
|
||||
model.addAttribute("menuManageVO", cmmnDetailCodeVO);
|
||||
}
|
||||
modelAndView.addObject("status", "success");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 매뉴 정보를 삭제한다.(트리구조에서)
|
||||
*
|
||||
* @param partInfVO
|
||||
* @param model
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@RequestMapping(value = "/uss/rnt/EgovRankDataDeketeJtreeAjax.do")
|
||||
public ModelAndView EgovRankDataDeketeJtreeAjax(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("cmmnDetailCodeVO") CmmnDetailCodeVO cmmnDetailCodeVO,ModelMap model) throws Exception {
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getMenuNo());
|
||||
|
||||
|
||||
try {
|
||||
//cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo().split("__")[1]);
|
||||
cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo());
|
||||
cmmnDetailCodeVO.setCodeId("CC401");
|
||||
|
||||
cmmnDetailCodeManageService.deleteCmmnDetailCode(cmmnDetailCodeVO);
|
||||
modelAndView.addObject("status", "success");
|
||||
}catch(Exception e) {
|
||||
modelAndView.addObject("status", "fail");
|
||||
}
|
||||
|
||||
/*
|
||||
if(cmmnDetailCodeVO.getNodeDepth().equals("200")) { //lettccmmnclcode 테이블
|
||||
try {
|
||||
CmmnCodeVO searchCodeVO = new CmmnCodeVO(); //참조키 리스트 조회(공통코드)
|
||||
searchCodeVO.setClCode(menuManageVO.getMenuNo());
|
||||
int extCnt = cmmnCodeManageService.selectExistCmmncodeCnt(searchCodeVO) ;
|
||||
if(extCnt > 0) {
|
||||
modelAndView.addObject("status", "duplPk");
|
||||
return modelAndView;
|
||||
}
|
||||
CmmnClCode cmmnClCode = new CmmnClCode(); //분류코드
|
||||
cmmnClCode.setClCode(menuManageVO.getMenuNo());
|
||||
cmmnClCodeManageService.deleteCmmnClCode(cmmnClCode);
|
||||
modelAndView.addObject("status", "success");
|
||||
}catch(Exception e) {
|
||||
modelAndView.addObject("status", "fail");
|
||||
}
|
||||
}if(cmmnDetailCodeVO.getNodeDepth().equals("3")) { //공통코드
|
||||
try {
|
||||
CmmnCode cmmnCode = new CmmnCode();
|
||||
cmmnCode.setCodeId(menuManageVO.getMenuNo());
|
||||
cmmnCodeManageService.deleteCmmnCode(cmmnCode);
|
||||
modelAndView.addObject("status", "success");
|
||||
}catch(Exception e) {
|
||||
modelAndView.addObject("status", "fail");
|
||||
}
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("4")
|
||||
||cmmnDetailCodeVO.getNodeDepth().equals("2")){ //LETTCCMMNDETAILCODE 테이블(상세코드))
|
||||
try {
|
||||
//cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo().split("__")[1]);
|
||||
cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo());
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getUpperMenuId());
|
||||
|
||||
cmmnDetailCodeManageService.deleteCmmnDetailCode(cmmnDetailCodeVO);
|
||||
modelAndView.addObject("status", "success");
|
||||
}catch(Exception e) {
|
||||
modelAndView.addObject("status", "fail");
|
||||
}
|
||||
}
|
||||
*/
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 코드 정보를 수정한다.
|
||||
*
|
||||
* @param partInfVO
|
||||
* @param model
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@SuppressWarnings("unused")
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@RequestMapping("/uss/rnt/EgovRankDataUpdateJtreeAjax.do")
|
||||
public ModelAndView EgovRankDataUpdateJtreeAjax(
|
||||
@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
|
||||
@ModelAttribute("cmmnDetailCodeVO") CmmnDetailCodeVO cmmnDetailCodeVO,
|
||||
@ModelAttribute("searchVO") ComDefaultVO searchVO,
|
||||
ModelMap model) throws Exception {
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
try{
|
||||
System.out.println("cmmnDetailCodeVO.getNodeDepth()");
|
||||
System.out.println(cmmnDetailCodeVO.getNodeDepth());
|
||||
String newCode = menuManageVO.getMenuNo() ;
|
||||
System.out.println(newCode);
|
||||
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getUpperMenuId());
|
||||
cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo());
|
||||
cmmnDetailCodeVO.setTempCodeId(menuManageVO.getTmp_Id());
|
||||
cmmnDetailCodeVO.setCodeNm(menuManageVO.getMenuNm());
|
||||
cmmnDetailCodeVO.setCodeDc(menuManageVO.getMenuDc());
|
||||
cmmnDetailCodeVO.setUseAt(menuManageVO.getUseYn());
|
||||
cmmnDetailCodeVO.setLastUpdusrId(user.getId());
|
||||
//cmmnDetailCodeManageService.updateCmmnDetailCode(cmmnDetailCodeVO);
|
||||
cmmnDetailCodeManageService.updateCmmnDetailCodePk(cmmnDetailCodeVO);
|
||||
newCode = menuManageVO.getUpperMenuId()+"__"+menuManageVO.getMenuNo();
|
||||
|
||||
/*
|
||||
if(cmmnDetailCodeVO.getNodeDepth().equals("200")) { //LETTCCMMNCLCODE 테이블(분류코드)
|
||||
CmmnClCode cmmnClCodeVO = new CmmnClCode();
|
||||
cmmnClCodeVO.setClCode(menuManageVO.getMenuNo());
|
||||
cmmnClCodeVO.setTempClCode(menuManageVO.getTmp_Id());
|
||||
cmmnClCodeVO.setClCodeNm(menuManageVO.getMenuNm());
|
||||
cmmnClCodeVO.setClCodeDc(menuManageVO.getMenuDc());
|
||||
cmmnClCodeVO.setLastUpdusrId(user.getId());
|
||||
cmmnClCodeVO.setUseAt(menuManageVO.getUseYn());
|
||||
cmmnClCodeManageService.updateCmmnClCodePk(cmmnClCodeVO);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("3")){ //LETTCCMMNCODE 테이블(공통코드))
|
||||
CmmnCode cmmnCodeVO = new CmmnCode();
|
||||
cmmnCodeVO.setCodeId(menuManageVO.getMenuNo());
|
||||
cmmnCodeVO.setTempCodeId(menuManageVO.getTmp_Id());
|
||||
cmmnCodeVO.setCodeIdNm(menuManageVO.getMenuNm());
|
||||
cmmnCodeVO.setCodeIdDc(menuManageVO.getMenuDc());
|
||||
cmmnCodeVO.setUseAt(menuManageVO.getUseYn());
|
||||
cmmnCodeVO.setLastUpdusrId(user.getId());
|
||||
cmmnCodeManageService.updateCmmnCodePk(cmmnCodeVO);
|
||||
}else if(cmmnDetailCodeVO.getNodeDepth().equals("4")
|
||||
|| cmmnDetailCodeVO.getNodeDepth().equals("2")
|
||||
){ //LETTCCMMNDETAILCODE 테이블(상세코드))
|
||||
cmmnDetailCodeVO.setCodeId(menuManageVO.getUpperMenuId());
|
||||
cmmnDetailCodeVO.setCode(menuManageVO.getMenuNo());
|
||||
cmmnDetailCodeVO.setTempCodeId(menuManageVO.getTmp_Id());
|
||||
cmmnDetailCodeVO.setCodeNm(menuManageVO.getMenuNm());
|
||||
cmmnDetailCodeVO.setCodeDc(menuManageVO.getMenuDc());
|
||||
cmmnDetailCodeVO.setUseAt(menuManageVO.getUseYn());
|
||||
cmmnDetailCodeVO.setLastUpdusrId(user.getId());
|
||||
//cmmnDetailCodeManageService.updateCmmnDetailCode(cmmnDetailCodeVO);
|
||||
cmmnDetailCodeManageService.updateCmmnDetailCodePk(cmmnDetailCodeVO);
|
||||
newCode = menuManageVO.getUpperMenuId()+"__"+menuManageVO.getMenuNo();
|
||||
}
|
||||
*/
|
||||
modelAndView.addObject("status", "success");
|
||||
modelAndView.addObject("newMenuNo", newCode);
|
||||
modelAndView.addObject("nodeDepth", cmmnDetailCodeVO.getNodeDepth());
|
||||
}catch (Exception e) {
|
||||
modelAndView.addObject("status", "fail");
|
||||
}
|
||||
return modelAndView;
|
||||
}
|
||||
}
|
||||
@ -125,6 +125,17 @@
|
||||
]]>
|
||||
</update>
|
||||
|
||||
<update id="CmmnDetailCodeManageDAO.updateCmmnDetailNmCode">
|
||||
<![CDATA[
|
||||
UPDATE LETTCCMMNDETAILCODE
|
||||
SET CODE_NM = #codeNm#
|
||||
, LAST_UPDT_PNTTM = NOW()
|
||||
, LAST_UPDUSR_ID = #lastUpdusrId#
|
||||
WHERE CODE_ID = #codeId#
|
||||
AND CODE = #code#
|
||||
]]>
|
||||
</update>
|
||||
|
||||
<!-- <delete id="CmmnDetailCodeManageDAO.deleteCmmnDetailCode">
|
||||
<![CDATA[
|
||||
UPDATE LETTCCMMNDETAILCODE
|
||||
@ -173,7 +184,23 @@
|
||||
ORDER BY A.parent , A.sort+0
|
||||
]]>
|
||||
</select>
|
||||
|
||||
|
||||
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeListWithCode" parameterClass="CmmnDetailCodeVO" resultClass="CmmnDetailCodeVO">
|
||||
<![CDATA[
|
||||
SELECT * FROM (
|
||||
/*
|
||||
SELECT CL_CODE_NM AS text , CL_CODE AS id , '0' AS parent , USE_AT AS useAt , '' as sort FROM LETTCCMMNCLCODE
|
||||
UNION
|
||||
|
||||
SELECT CODE_ID_NM AS text , CODE_ID AS id , '0' AS parent, USE_AT AS useAt, '' as sort FROM LETTCCMMNCODE WHERE CODE_ID=id
|
||||
UNION
|
||||
*/
|
||||
SELECT CODE_NM AS text , CONCAT(CODE_ID,'__',CODE) AS id , CODE_ID AS parent , USE_AT AS useAt, SORT as sort FROM LETTCCMMNDETAILCODE WHERE CODE_ID=#id#
|
||||
) A
|
||||
ORDER BY A.parent , A.sort+0
|
||||
]]>
|
||||
</select>
|
||||
|
||||
<update id="CmmnDetailCodeManageDAO.updateCmmnDetailCodePk" parameterClass="CmmnDetailCode">
|
||||
UPDATE LETTCCMMNDETAILCODE
|
||||
SET CODE_NM = #codeNm#
|
||||
|
||||
@ -38,9 +38,347 @@
|
||||
*********************************
|
||||
*/
|
||||
$(document).ready(function() {
|
||||
loadProcess();
|
||||
//loadProcess();
|
||||
jstreeInit();
|
||||
});
|
||||
|
||||
var newNodeId = "";
|
||||
var modiNodeId = "";
|
||||
|
||||
function jstreeInit() {
|
||||
//alert("init_");
|
||||
$('#kopost_organization').jstree({
|
||||
"core" : {
|
||||
"animation" : 0,
|
||||
"multiple" : false,
|
||||
"check_callback" : true,
|
||||
"themes" : { "stripes" : true },
|
||||
"data" : {
|
||||
//"url" : "<c:url value='/sym/ccm/ccc/EgovCcmCmmnCodeTreeInitAjax.do'/>",
|
||||
"url" : "<c:url value='/uss/rnt/EgovPstnDataLoadJtreeAjax.do'/>",
|
||||
|
||||
"dataType" : "json",
|
||||
"data" : function (node) {
|
||||
console.log('node : ', node);
|
||||
return {'id' : node.id }
|
||||
}
|
||||
}
|
||||
},
|
||||
"types" : {
|
||||
"#" : {
|
||||
/* "max_children" : 4, */
|
||||
"max_depth" : 40,
|
||||
"valid_children" : ["root"]
|
||||
},
|
||||
"root" : {
|
||||
//"icon" : "/static/3.3.5/assets/images/tree_icon.png",
|
||||
"icon" : "glyphicon glyphicon-flash",
|
||||
"valid_children" : ["default"]
|
||||
},
|
||||
"default" : {
|
||||
"valid_children" : ["default","file"]
|
||||
},
|
||||
"file" : {
|
||||
//"icon" : "glyphicon glyphicon-file",
|
||||
"icon" : "jstree-file",
|
||||
"valid_children" : []
|
||||
}
|
||||
},
|
||||
"plugins" : [
|
||||
"contextmenu", "search",
|
||||
"types"
|
||||
//, "unique"
|
||||
//, "wholerow"
|
||||
// "dnd" move기능 삭제
|
||||
// "checkbox" 체크박스 삭제
|
||||
]
|
||||
})
|
||||
.bind('loaded.jstree', function(e, data) {
|
||||
//alert("loaded_");
|
||||
//console.log("jstree loaded");
|
||||
//$(this).jstree(true).open_all();
|
||||
$('#kopost_organization').jstree('open_node' , $('#0') )
|
||||
})
|
||||
.on('select_node.jstree', function (e, data) { //우클릭시
|
||||
//alert("select_node");
|
||||
if(!$('.organ_rightbox').is(":visible")){
|
||||
$(".organ_rightbox").show();
|
||||
}
|
||||
|
||||
//alert("select_node1");
|
||||
|
||||
/* 코드 선택 */
|
||||
var menuNo = data.node.id;
|
||||
var upperMenuId = data.node.parent;
|
||||
//하위 코드가 있으면 코드 변경못하게
|
||||
$('#nodeDepth').val(data.node.parents.length);
|
||||
$('#upperMenuId').val(upperMenuId);
|
||||
|
||||
//alert("select_node2");
|
||||
|
||||
if(data.node.children.length > 0){
|
||||
$('#menuNo').attr("readonly",true);
|
||||
|
||||
}else{
|
||||
$('#menuNo').attr("readonly",false);
|
||||
}
|
||||
|
||||
//alert("select_node3");
|
||||
|
||||
//코드 추가시 자동 선택되게
|
||||
if(newNodeId !=""){
|
||||
menuNo = newNodeId ;
|
||||
newNodeId = "";
|
||||
$('#'+data.instance.get_node(menuNo).a_attr.id).trigger("click"); //클릭 이벤트 발생
|
||||
}
|
||||
|
||||
//alert("select_node4");
|
||||
|
||||
$("#menuTopNm").text(data.node.text);
|
||||
|
||||
//alert("select_node5");
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/uss/rnt/EgovRankDataCodeInfoJtreeAjax.do' />",
|
||||
data:{ "menuNo" : menuNo, "upperMenuId" : upperMenuId, "nodeDepth" : data.node.parents.length},
|
||||
dataType:'json',
|
||||
async: false,
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
var cmmnClCodeVO = returnData.menuManageVO;
|
||||
//상세 정보 채우기
|
||||
fn_setting_menuNo(cmmnClCodeVO);
|
||||
|
||||
} else {
|
||||
alert("코드 조회가 실패되었습니다.");
|
||||
return;
|
||||
|
||||
}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
// alert("부서 정보 조회가 실패되었습니다.");
|
||||
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
},
|
||||
complete : function () {
|
||||
deleteLodingBar();
|
||||
}
|
||||
});
|
||||
})
|
||||
.on('rename_node.jstree', function (e, data) { //코드명 변경
|
||||
alert("rename");
|
||||
var nodeId = data.node.id;
|
||||
var oldText = data.old;
|
||||
var newText = data.text;
|
||||
var upperMenuId = data.node.parent;
|
||||
|
||||
if (data.node.parents.length == 1) {
|
||||
alert("최상위 공통코드 명은 변경할수 없습니다.");
|
||||
data.instance.refresh();
|
||||
}else if (data.node.parents.length > 0) {
|
||||
/* 부서명 변경 */
|
||||
if (oldText != newText) {
|
||||
//if (confirm("[" + oldText + "]" + "부서를 " + "[" + newText + "]" + "로 변경하시겠습니까?" )) {
|
||||
if (confirm("코드명을 변경하시겠습니까?" )) {
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/sym/ccm/ccc/EgovCcmCmmnInfoNmUpdateAjax.do' />",
|
||||
data:{ "menuNo" : nodeId, "upperMenuId" : upperMenuId, "menuNm" : newText , "nodeDepth" : data.node.parents.length },
|
||||
dataType:'json',
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
alert("코드명이 변경되었습니다.");
|
||||
} else { alert("코드명 변경이 실패되었습니다."); return;}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드명 변경이 실패되었습니다.");
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.instance.refresh();
|
||||
}
|
||||
}
|
||||
} else {/* 코드 추가 */
|
||||
|
||||
}
|
||||
})
|
||||
.on('delete_node.jstree', function (e, data) {
|
||||
|
||||
alert("delete");
|
||||
/* 코드 삭제 */
|
||||
var upperMenuId = data.node.parent;
|
||||
if(data.node.parents.length == 1){
|
||||
alert("최상위 공통코드는 삭제할수 없습니다.");
|
||||
data.instance.refresh();
|
||||
}else{
|
||||
if(data.node.children.length != 0){
|
||||
alert("하위 코드를 먼저 삭제 후 코드를 삭제해 주세요.");
|
||||
data.instance.refresh();
|
||||
}else{
|
||||
if (confirm("[" + data.node.text + "]" + " 코드를 삭제하시겠습니까?")){
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/sym/ccm/ccc/EgovCcmCmmnInfoDeleteAjax.do' />",
|
||||
data:{ "menuNo" : data.node.id , "upperMenuId" : upperMenuId, "nodeDepth" : data.node.parents.length },
|
||||
dataType:'json',
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
alert("코드 정보가 삭제되었습니다.");
|
||||
fn_init_menuInfo();
|
||||
} else { alert("코드 정보 삭제가 실패되었습니다."); return;}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드 정보 삭제가 실패되었습니다.");
|
||||
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.instance.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
.on('create_node.jstree', function(e, data) {
|
||||
//alert(data.node.parents.length);
|
||||
|
||||
if (data.node.parents.length >= 40) {
|
||||
alert("더 이상 하위 코드를 생성할수 없습니다.");
|
||||
data.instance.refresh();
|
||||
}else{
|
||||
if (confirm("코드를 추가하시겠습니까?")){
|
||||
var instance = data.instance;
|
||||
var menuNm = data.text;
|
||||
var upperMenuId = data.node.parent;
|
||||
var menuOrdr = 1;
|
||||
var childrenNodes = instance.get_node(upperMenuId).children;
|
||||
|
||||
// 하위 코드 있을 시 마지막 부서 sort_ord + 1
|
||||
if (childrenNodes.length > 1) {
|
||||
//var lastChildrenNode = instance.get_node(childrenNodes[childrenNodes.length - 2]);
|
||||
//sortOrd = lastChildrenNode.li_attr.sortOrd + 1;
|
||||
menuOrdr = childrenNodes.length ;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/uss/rnt/EgovRankDataInsertJtreeAjax.do' />",
|
||||
data:{ "menuNm" : menuNm, "upperMenuId" : upperMenuId, "nodeDepth" :data.node.parents.length },
|
||||
dataType:'json',
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if(returnData.status == "success") {
|
||||
alert("코드가 추가 되었습니다.");
|
||||
//fn_select_menuNo(returnData.menuManageVO, returnData.menuManageVO.menuUserType);
|
||||
newNodeId = returnData.newMenuNo ; //코드추가후 노드선택
|
||||
}else if(returnData.status == "dupl"){
|
||||
alert("중복된 아이디가 있습니다.\n 중복된 아이디변경/삭제후 다시 추가해 주세요\n"+ "("+returnData.menuManageVO.codeNm+")");
|
||||
return;
|
||||
}else{
|
||||
alert("코드 추가가 실패하였습니다.");
|
||||
return;
|
||||
}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드 추가가 실패되었습니다.")
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
}else{
|
||||
data.instance.refresh();
|
||||
}
|
||||
}
|
||||
})
|
||||
.on('move_node.jstree', function (e, data) {
|
||||
alert("move_node.jstree");
|
||||
|
||||
/* 코드 위치 변경 */
|
||||
var instance = data.instance;
|
||||
var menuNo = data.node.id;
|
||||
var childrenNodes = instance.get_node(menuNo).children;
|
||||
|
||||
// 하위 코드 있을 시 이동 금지
|
||||
/* if (childrenNodes.length > 1) {
|
||||
alert("하위 코드가 있으면 코드 이동을 할 수 없습니다.");
|
||||
data.instance.refresh();
|
||||
return;
|
||||
} */
|
||||
|
||||
if (confirm("코드 위치를 변경하시겠습니까?" )){
|
||||
//var partIdx = data.node.id;
|
||||
var upperMenuId = data.parent;
|
||||
var menuOrdr = data.position + 1;
|
||||
var sortOver = "A" ;
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/sym/mnu/mcm/EgovMenuInfoMoveAjax.do' />",
|
||||
data:{ "menuNo" : menuNo, "upperMenuId" : upperMenuId, "menuOrdr" : menuOrdr},
|
||||
dataType:'json',
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
alert("코드 위치가 변경되었습니다.");
|
||||
} else { alert("코드 위치 변경이 실패되었습니다."); return;}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드 위치 변경이 실패되었습니다.");
|
||||
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.instance.refresh();
|
||||
}
|
||||
})
|
||||
.on("refresh.jstree", function (e,data) {
|
||||
|
||||
alert("refresh.jstree");
|
||||
|
||||
if(modiNodeId !=""){
|
||||
$('#'+data.instance.get_node(modiNodeId).a_attr.id).trigger("click");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//코드 정보 세팅
|
||||
function fn_setting_menuNo(cmmnClCodeVO){
|
||||
//upperIdxs = upperIdxs.join("|");
|
||||
var tmpHtml = "";
|
||||
//alert("select_node6");
|
||||
if(cmmnClCodeVO!=null){
|
||||
$('#menuNo').val(cmmnClCodeVO.code);
|
||||
$('#tmp_Id').val(cmmnClCodeVO.codeId);
|
||||
$('#menuNm').val(cmmnClCodeVO.codeNm);
|
||||
$('#menuDc').val(cmmnClCodeVO.codeDc);
|
||||
$('#upperMenuIdText').text(cmmnClCodeVO.parent);
|
||||
$('#upperMenuId').val(cmmnClCodeVO.parent);
|
||||
$('#useYn').val(cmmnClCodeVO.useAt);
|
||||
$('#sort').val(cmmnClCodeVO.sortNo);
|
||||
$(".main1_delete_btn").removeAttr("onclick");
|
||||
$(".main1_delete_btn").attr("onclick", "fn_delete_menuInfo('"+cmmnClCodeVO.codeId+"');return false;");
|
||||
$(".main1_save_btn").removeAttr("onclick");
|
||||
$(".main1_save_btn").attr("onclick", "fn_save_menuInfo('"+cmmnClCodeVO.codeId+"');return false;");
|
||||
//selectupdate
|
||||
//$('#useYn').niceSelect('update');
|
||||
}
|
||||
//alert("select_node7");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 초기 데이터 만드는 function
|
||||
function fn_makeList(data){
|
||||
var resultList = data['dataList'];
|
||||
@ -276,10 +614,10 @@
|
||||
<div class="menu_wrap">
|
||||
<div class="menu_area">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType02 all_open" onclick="$('#rank_organization').jstree('open_all' );">모두열기</button>
|
||||
<button type="button" class="btnType03 all_close" onclick="$('#rank_organization').jstree('close_all');">모두닫기</button>
|
||||
<button type="button" class="btnType02 all_open" onclick="$('#kopost_organization').jstree('open_all' );">모두열기</button>
|
||||
<button type="button" class="btnType03 all_close" onclick="$('#kopost_organization').jstree('close_all');">모두닫기</button>
|
||||
</div>
|
||||
<div class="menu_list" id="rank_organization" class="jstree_orgChart">
|
||||
<div class="menu_list" id="kopost_organization" class="jstree_orgChart">
|
||||
<!-- <ul> -->
|
||||
<!-- <li>직급 -->
|
||||
<!-- <ul> -->
|
||||
|
||||
@ -37,13 +37,488 @@
|
||||
* jstree
|
||||
*********************************
|
||||
*/
|
||||
|
||||
|
||||
$(document).ready(function() {
|
||||
loadProcess();
|
||||
|
||||
//loadProcess();
|
||||
jstreeInit();
|
||||
});
|
||||
|
||||
var newNodeId = "";
|
||||
var modiNodeId = "";
|
||||
|
||||
function jstreeInit() {
|
||||
//alert("init_");
|
||||
$('#kopost_organization').jstree({
|
||||
"core" : {
|
||||
"animation" : 0,
|
||||
"multiple" : false,
|
||||
"check_callback" : true,
|
||||
"themes" : { "stripes" : true },
|
||||
"data" : {
|
||||
//"url" : "<c:url value='/sym/ccm/ccc/EgovCcmCmmnCodeTreeInitAjax.do'/>",
|
||||
"url" : "<c:url value='/uss/rnt/EgovRankDataLoadJtreeAjax.do'/>",
|
||||
|
||||
"dataType" : "json",
|
||||
"data" : function (node) {
|
||||
console.log('node : ', node);
|
||||
return {'id' : node.id }
|
||||
}
|
||||
}
|
||||
},
|
||||
"types" : {
|
||||
"#" : {
|
||||
/* "max_children" : 4, */
|
||||
"max_depth" : 4,
|
||||
"valid_children" : ["root"]
|
||||
},
|
||||
"root" : {
|
||||
//"icon" : "/static/3.3.5/assets/images/tree_icon.png",
|
||||
"icon" : "glyphicon glyphicon-flash",
|
||||
"valid_children" : ["default"]
|
||||
},
|
||||
"default" : {
|
||||
"valid_children" : ["default","file"]
|
||||
},
|
||||
"file" : {
|
||||
//"icon" : "glyphicon glyphicon-file",
|
||||
"icon" : "jstree-file",
|
||||
"valid_children" : []
|
||||
}
|
||||
},
|
||||
"plugins" : [
|
||||
"contextmenu", "search",
|
||||
"types"
|
||||
//, "unique"
|
||||
//, "wholerow"
|
||||
// "dnd" move기능 삭제
|
||||
// "checkbox" 체크박스 삭제
|
||||
]
|
||||
})
|
||||
.bind('loaded.jstree', function(e, data) {
|
||||
//alert("loaded_");
|
||||
//console.log("jstree loaded");
|
||||
//$(this).jstree(true).open_all();
|
||||
$('#kopost_organization').jstree('open_node' , $('#0') )
|
||||
})
|
||||
.on('select_node.jstree', function (e, data) { //우클릭시
|
||||
//alert("select_node");
|
||||
if(!$('.organ_rightbox').is(":visible")){
|
||||
$(".organ_rightbox").show();
|
||||
}
|
||||
|
||||
//alert("select_node1");
|
||||
|
||||
//alert(data.node.parents.length);
|
||||
|
||||
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;
|
||||
//하위 코드가 있으면 코드 변경못하게
|
||||
$('#nodeDepth').val(data.node.parents.length);
|
||||
$('#upperMenuId').val(upperMenuId);
|
||||
|
||||
//alert("select_node2");
|
||||
|
||||
if(data.node.children.length > 0){
|
||||
$('#menuNo').attr("readonly",true);
|
||||
|
||||
}else{
|
||||
$('#menuNo').attr("readonly",false);
|
||||
}
|
||||
|
||||
//alert("select_node3");
|
||||
|
||||
//코드 추가시 자동 선택되게
|
||||
if(newNodeId !=""){
|
||||
menuNo = newNodeId ;
|
||||
newNodeId = "";
|
||||
$('#'+data.instance.get_node(menuNo).a_attr.id).trigger("click"); //클릭 이벤트 발생
|
||||
}
|
||||
|
||||
//alert("select_node4");
|
||||
|
||||
$("#menuTopNm").text(data.node.text);
|
||||
|
||||
//alert("select_node5");
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/uss/rnt/EgovRankDataCodeInfoJtreeAjax.do' />",
|
||||
data:{ "menuNo" : menuNo, "upperMenuId" : upperMenuId, "nodeDepth" : data.node.parents.length},
|
||||
dataType:'json',
|
||||
async: false,
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
var cmmnClCodeVO = returnData.menuManageVO;
|
||||
//상세 정보 채우기
|
||||
fn_setting_menuNo(cmmnClCodeVO);
|
||||
|
||||
} else {
|
||||
alert("코드 조회가 실패되었습니다.");
|
||||
return;
|
||||
|
||||
}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
// alert("부서 정보 조회가 실패되었습니다.");
|
||||
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
},
|
||||
complete : function () {
|
||||
deleteLodingBar();
|
||||
}
|
||||
});
|
||||
})
|
||||
.on('rename_node.jstree', function (e, data) { //코드명 변경
|
||||
//alert("rename");
|
||||
var nodeId = data.node.id;
|
||||
var oldText = data.old;
|
||||
var newText = data.text;
|
||||
var upperMenuId = data.node.parent;
|
||||
|
||||
if (data.node.parents.length == 1) {
|
||||
alert("최상위 공통코드 명은 변경할수 없습니다.");
|
||||
data.instance.refresh();
|
||||
}else if (data.node.parents.length > 0) {
|
||||
/* 부서명 변경 */
|
||||
if (oldText != newText) {
|
||||
//if (confirm("[" + oldText + "]" + "부서를 " + "[" + newText + "]" + "로 변경하시겠습니까?" )) {
|
||||
if (confirm("코드명을 변경하시겠습니까?" )) {
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/uss/rnt/EgovRankDataUpdateNmJtreeAjax.do' />",
|
||||
data:{ "menuNo" : nodeId, "upperMenuId" : upperMenuId, "menuNm" : newText , "nodeDepth" : data.node.parents.length },
|
||||
dataType:'json',
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
alert("코드명이 변경되었습니다.");
|
||||
} else { alert("코드명 변경이 실패되었습니다."); return;}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드명 변경이 실패되었습니다.");
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.instance.refresh();
|
||||
}
|
||||
}
|
||||
} else {/* 코드 추가 */
|
||||
|
||||
}
|
||||
})
|
||||
.on('delete_node.jstree', function (e, data) {
|
||||
|
||||
//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("최상위 공통코드는 삭제할수 없습니다.");
|
||||
data.instance.refresh();
|
||||
}else{
|
||||
if(data.node.children.length != 0){
|
||||
alert("하위 코드를 먼저 삭제 후 코드를 삭제해 주세요.");
|
||||
data.instance.refresh();
|
||||
}else{
|
||||
if (confirm("[" + data.node.text + "]" + " 코드를 삭제하시겠습니까?")){
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/sym/ccm/ccc/EgovCcmCmmnInfoDeleteAjax.do' />",
|
||||
data:{ "menuNo" : data.node.id , "upperMenuId" : upperMenuId, "nodeDepth" : data.node.parents.length },
|
||||
dataType:'json',
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
alert("코드 정보가 삭제되었습니다.");
|
||||
fn_init_menuInfo();
|
||||
} else { alert("코드 정보 삭제가 실패되었습니다."); return;}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드 정보 삭제가 실패되었습니다.");
|
||||
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.instance.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
})
|
||||
.on('create_node.jstree', function(e, data) {
|
||||
//alert(data.node.parents.length);
|
||||
|
||||
if (data.node.parents.length >= 3) {
|
||||
alert("더 이상 하위 코드를 생성할수 없습니다.");
|
||||
data.instance.refresh();
|
||||
}else{
|
||||
if (confirm("코드를 추가하시겠습니까?")){
|
||||
var instance = data.instance;
|
||||
var menuNm = data.text;
|
||||
var upperMenuId = data.node.parent;
|
||||
var menuOrdr = 1;
|
||||
var childrenNodes = instance.get_node(upperMenuId).children;
|
||||
|
||||
// 하위 코드 있을 시 마지막 부서 sort_ord + 1
|
||||
if (childrenNodes.length > 1) {
|
||||
//var lastChildrenNode = instance.get_node(childrenNodes[childrenNodes.length - 2]);
|
||||
//sortOrd = lastChildrenNode.li_attr.sortOrd + 1;
|
||||
menuOrdr = childrenNodes.length ;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/uss/rnt/EgovRankDataInsertJtreeAjax.do' />",
|
||||
data:{ "menuNm" : menuNm, "upperMenuId" : upperMenuId, "nodeDepth" :data.node.parents.length },
|
||||
dataType:'json',
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if(returnData.status == "success") {
|
||||
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;
|
||||
}else{
|
||||
alert("코드 추가가 실패하였습니다.");
|
||||
return;
|
||||
}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드 추가가 실패되었습니다.")
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
}else{
|
||||
data.instance.refresh();
|
||||
}
|
||||
}
|
||||
})
|
||||
.on('move_node.jstree', function (e, data) {
|
||||
alert("move_node.jstree");
|
||||
|
||||
/* 코드 위치 변경 */
|
||||
var instance = data.instance;
|
||||
var menuNo = data.node.id;
|
||||
var childrenNodes = instance.get_node(menuNo).children;
|
||||
|
||||
// 하위 코드 있을 시 이동 금지
|
||||
/* if (childrenNodes.length > 1) {
|
||||
alert("하위 코드가 있으면 코드 이동을 할 수 없습니다.");
|
||||
data.instance.refresh();
|
||||
return;
|
||||
} */
|
||||
|
||||
if (confirm("코드 위치를 변경하시겠습니까?" )){
|
||||
//var partIdx = data.node.id;
|
||||
var upperMenuId = data.parent;
|
||||
var menuOrdr = data.position + 1;
|
||||
var sortOver = "A" ;
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"<c:url value='/sym/mnu/mcm/EgovMenuInfoMoveAjax.do' />",
|
||||
data:{ "menuNo" : menuNo, "upperMenuId" : upperMenuId, "menuOrdr" : menuOrdr},
|
||||
dataType:'json',
|
||||
//timeout:(1000*30),
|
||||
success : function(returnData, status) {
|
||||
if (status == "success") {
|
||||
alert("코드 위치가 변경되었습니다.");
|
||||
} else { alert("코드 위치 변경이 실패되었습니다."); return;}
|
||||
},
|
||||
error : function(request , status, error) {
|
||||
alert("코드 위치 변경이 실패되었습니다.");
|
||||
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
},
|
||||
complete : function () {
|
||||
data.instance.refresh();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data.instance.refresh();
|
||||
}
|
||||
})
|
||||
.on("refresh.jstree", function (e,data) {
|
||||
//alert("refresh.jstree");
|
||||
//alert(modiNodeId);
|
||||
|
||||
if(modiNodeId !=""){
|
||||
$('#'+data.instance.get_node(modiNodeId).a_attr.id).trigger("click");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//코드 정보 세팅
|
||||
function fn_setting_menuNo(cmmnClCodeVO){
|
||||
//upperIdxs = upperIdxs.join("|");
|
||||
var tmpHtml = "";
|
||||
//alert("select_node6");
|
||||
if(cmmnClCodeVO!=null){
|
||||
$('#menuNo').val(cmmnClCodeVO.code);
|
||||
$('#tmp_Id').val(cmmnClCodeVO.codeId);
|
||||
$('#menuNm').val(cmmnClCodeVO.codeNm);
|
||||
$('#menuDc').val(cmmnClCodeVO.codeDc);
|
||||
$('#upperMenuIdText').text(cmmnClCodeVO.parent);
|
||||
$('#upperMenuId').val(cmmnClCodeVO.parent);
|
||||
$('#useYn').val(cmmnClCodeVO.useAt);
|
||||
$('#sort').val(cmmnClCodeVO.sortNo);
|
||||
$(".main1_delete_btn").removeAttr("onclick");
|
||||
$(".main1_delete_btn").attr("onclick", "fn_delete_menuInfo('"+cmmnClCodeVO.codeId+"');return false;");
|
||||
$(".main1_save_btn").removeAttr("onclick");
|
||||
$(".main1_save_btn").attr("onclick", "fn_save_menuInfo('"+cmmnClCodeVO.codeId+"');return false;");
|
||||
//selectupdate
|
||||
//$('#useYn').niceSelect('update');
|
||||
}
|
||||
//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" : "<c:url value='/uss/rnt/EgovRankDataDeketeJtreeAjax.do'/>",
|
||||
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 = "<c:url value='/uss/rnt/EgovRankDataUpdateJtreeAjax.do'/>";
|
||||
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");
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 초기 데이터 만드는 function
|
||||
function fn_makeList(data){
|
||||
console.log(' makeList data : ', data);
|
||||
@ -270,10 +745,10 @@
|
||||
<div class="menu_wrap">
|
||||
<div class="menu_area">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType02 all_open" onclick="$('#rank_organization').jstree('open_all' );">모두열기</button>
|
||||
<button type="button" class="btnType03 all_close" onclick="$('#rank_organization').jstree('close_all');">모두닫기</button>
|
||||
<button type="button" class="btnType02 all_open" onclick="$('#kopost_organization').jstree('open_all' );">모두열기</button>
|
||||
<button type="button" class="btnType03 all_close" onclick="$('#kopost_organization').jstree('close_all');">모두닫기</button>
|
||||
</div>
|
||||
<div class="menu_list" id="rank_organization" class="jstree_orgChart">
|
||||
<div class="menu_list" id="kopost_organization" class="jstree_orgChart">
|
||||
|
||||
<!-- <ul> -->
|
||||
<!-- <li>직급 -->
|
||||
@ -298,7 +773,7 @@
|
||||
<th><span>직급코드</span></th>
|
||||
<td>
|
||||
<div id="select_part">
|
||||
<input type="text" name="menuNo" id="rankNo" />
|
||||
<input type="text" name="menuNo" id="menuNo" />
|
||||
<input type="hidden" id="tmp_Id" name="tmp_Id"/><!-- 이전메뉴 No -->
|
||||
</div>
|
||||
</td>
|
||||
@ -310,18 +785,26 @@
|
||||
<input type="hidden" id="tmp_Name" name="tmp_Name"/><!-- 이전메뉴 이름 -->
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th><span>상위 코드</span></th>
|
||||
<td>
|
||||
<span id="upperMenuIdText"></span>
|
||||
<input type="hidden" id="upperMenuId" name="upperMenuId"/><!-- 이전메뉴 No -->
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th><span>직급설명</span></th>
|
||||
<td>
|
||||
<input type="text" name="menuNm" id="menuNm" />
|
||||
<input type="hidden" id="tmp_Name" name="tmp_Name"/><!-- 이전메뉴 이름 -->
|
||||
<input type="text" name="menuDc" id="menuDc" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><span>코드순서</span></th>
|
||||
<td>
|
||||
<input type="text" name="menuNm" id="menuNm" />
|
||||
<input type="hidden" id="tmp_Name" name="tmp_Name"/><!-- 이전메뉴 이름 -->
|
||||
<input type="text" name="sort" id="sort" />
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -358,8 +841,8 @@
|
||||
|
||||
</div>
|
||||
<div class="area_right">
|
||||
<button type="button" class="btnType04" id="deleteBtn" onClick="fn_delete(); return false;">삭제</button>
|
||||
<button type="button" class="btnType06" id="saveBtn" onClick="fn_save(); return false;">저장</button>
|
||||
<button type="button" class="btnType04 main1_delete_btn" id="deleteBtn" onClick="fn_delete_menuInfo(); return false;">삭제</button>
|
||||
<button type="button" class="btnType06 main1_save_btn" id="saveBtn" onClick="fn_save_menuInfo(); return false;">저장</button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //btn_wrap -->
|
||||
|
||||
Loading…
Reference in New Issue
Block a user