This commit is contained in:
myname 2022-10-12 12:39:23 +09:00
commit 7ab0b7e84c
39 changed files with 3308 additions and 119 deletions

View File

@ -117,6 +117,9 @@ public class LoginVO implements Serializable{
private String isSelect; private String isSelect;
/*20221012 대시보드를 위해 직급 코드 추가*/
private String ofcpsNm;
public String getId() { public String getId() {
return id; return id;
} }
@ -402,6 +405,12 @@ public class LoginVO implements Serializable{
public void setIsSelect(String isSelect) { public void setIsSelect(String isSelect) {
this.isSelect = isSelect; this.isSelect = isSelect;
} }
public String getOfcpsNm() {
return ofcpsNm;
}
public void setOfcpsNm(String ofcpsNm) {
this.ofcpsNm = ofcpsNm;
}
} }

View File

@ -1,53 +1,33 @@
package kcc.kccadr.adjPgrMgr.exmp.answer.web; package kcc.kccadr.adjPgrMgr.exmp.answer.web;
import java.util.Map;
import javax.annotation.Resource;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.cmm.RestResponse;
import org.apache.commons.lang3.StringUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute; 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.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
/** /**
* 조정위원 관리 구현 클래스
* *
* @author 김봉호 * @author : 이호영
* @since 2021.08.21 * @fileName : ExmpAnswerManagerController.java
* @version 1.0 * @date : 2022.10.11
* @see <pre> * @description : 답변서 관리
* &lt;&lt; 개정이력(Modification Information) &gt;&gt; * ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
* 2022.10.11 이호영 최초 생성
*
*
* *
* 수정일 수정자 수정내용
* ------- -------- ---------------------------
* 2021.08.21 김봉호 최초 생성
* </pre>
*/ */
@Controller @Controller
public class ExmpAnswerManagerController { public class ExmpAnswerManagerController {
@ -82,17 +62,21 @@ public class ExmpAnswerManagerController {
exmpManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); exmpManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
exmpManageVO.setLastIndex(paginationInfo.getLastRecordIndex()); exmpManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
exmpManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); exmpManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
// 답변서 코드
exmpManageVO.setCodeId("CC003");
paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpManageVO)); paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpManageVO));
model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpManageVO)); model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpManageVO));
return "kccadr/adjPgrMgr/exmp/exmpAnswerManagerList"; return "kccadr/adjPgrMgr/exmp/answer/exmpAnswerManagerList";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAnswerManagerCreate.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAnswerManagerCreate.do")
public String exmpAnswerManagerCreate(ExmpManageVO exmpManageVO) throws Exception { public String exmpAnswerManagerCreate(ExmpManageVO exmpManageVO) throws Exception {
return "kccadr/adjPgrMgr/exmp/exmpAnswerManagerCreate"; return "kccadr/adjPgrMgr/exmp/answer/exmpAnswerManagerCreate";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAnswerManagerModify.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAnswerManagerModify.do")
@ -103,7 +87,7 @@ public class ExmpAnswerManagerController {
model.addAttribute("fileList", resultMap.get("fileList")); model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo")); model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list")); model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/exmpAnswerManagerModify"; return "kccadr/adjPgrMgr/exmp/answer/exmpAnswerManagerModify";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAnswerManagerDetail.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAnswerManagerDetail.do")
@ -115,7 +99,7 @@ public class ExmpAnswerManagerController {
model.addAttribute("mgrInfo", resultMap.get("mgrInfo")); model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list")); model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/exmpAnswerManagerDetail"; return "kccadr/adjPgrMgr/exmp/answer/exmpAnswerManagerDetail";
} }

View File

@ -1,12 +1,11 @@
package kcc.kccadr.adjPgrMgr.exmp.app.service; package kcc.kccadr.adjPgrMgr.exmp.app.service;
import kcc.kccadr.adjPgrMgr.adjDept.service.AdjustDeptManageVO;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.RestResponse;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.RestResponse;
public interface ExmpAppManageService { public interface ExmpAppManageService {
Integer selectExmpAppManagerCount(ExmpManageVO exmpManageVO) throws Exception; Integer selectExmpAppManagerCount(ExmpManageVO exmpManageVO) throws Exception;

View File

@ -1,19 +1,13 @@
package kcc.kccadr.adjPgrMgr.exmp.app.web; package kcc.kccadr.adjPgrMgr.exmp.app.web;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; import java.util.List;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import java.util.Map;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovFileMngService; import javax.annotation.Resource;
import kcc.com.cmm.service.EgovFileMngUtil; import javax.servlet.http.HttpServletRequest;
import kcc.com.cmm.service.FileVO;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.cmm.RestResponse;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
@ -25,12 +19,16 @@ import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import javax.servlet.http.HttpServletRequest; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import java.time.LocalDateTime; import kcc.com.cmm.service.EgovFileMngService;
import java.util.List; import kcc.com.cmm.service.EgovFileMngUtil;
import java.util.Map; import kcc.com.cmm.service.FileVO;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.cmm.RestResponse;
/** /**
@ -61,7 +59,16 @@ public class ExmpAppManagerController {
private EgovFileMngService fileMngService; private EgovFileMngService fileMngService;
///kccadr/adjPgrMgr/expm/AdjustExpmManagerList.do /**
* @methodName : exmpAppManagerList
* @author : 이호영
* @date : 2022.10.11
* @description : 예문관리 LIST
* @param exmpAppManageVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do")
public String exmpAppManagerList(@ModelAttribute("exmpAppManageVO") ExmpManageVO exmpAppManageVO , ModelMap model) throws Exception { public String exmpAppManagerList(@ModelAttribute("exmpAppManageVO") ExmpManageVO exmpAppManageVO , ModelMap model) throws Exception {
if(exmpAppManageVO.getPageUnit() != 10) { if(exmpAppManageVO.getPageUnit() != 10) {
@ -88,13 +95,13 @@ public class ExmpAppManagerController {
model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpAppManageVO)); model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpAppManageVO));
return "kccadr/adjPgrMgr/exmp/exmpAppManagerList"; return "kccadr/adjPgrMgr/exmp/app/exmpAppManagerList";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerCreate.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerCreate.do")
public String exmpAppManagerCreate(ExmpManageVO exmpAppManageVO, ModelMap model) throws Exception { public String exmpAppManagerCreate(ExmpManageVO exmpAppManageVO, ModelMap model) throws Exception {
return "kccadr/adjPgrMgr/exmp/exmpAppManagerCreate"; return "kccadr/adjPgrMgr/exmp/app/exmpAppManagerCreate";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerModify.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerModify.do")
@ -105,7 +112,7 @@ public class ExmpAppManagerController {
model.addAttribute("fileList", resultMap.get("fileList")); model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo")); model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list")); model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/exmpAppManagerModify"; return "kccadr/adjPgrMgr/exmp/app/exmpAppManagerModify";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/updateExmpManager.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/updateExmpManager.do")
@ -169,7 +176,7 @@ public class ExmpAppManagerController {
model.addAttribute("mgrInfo", resultMap.get("mgrInfo")); model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list")); model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/exmpAppManagerDetail"; return "kccadr/adjPgrMgr/exmp/app/exmpAppManagerDetail";
} }

View File

@ -0,0 +1,136 @@
package kcc.kccadr.adjPgrMgr.exmp.effect.web;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.cmm.RestResponse;
import org.apache.commons.lang3.StringUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
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.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
/**
*
* @author : 이호영
* @fileName : ExmpEffectManagerController.java
* @date : 2022.10.11
* @description : 예문관리 - 신청취지
* ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
* 2022.10.11 이호영 최초 생성
*
*
*
*/
@Controller
public class ExmpEffectManagerController {
@Resource(name = "ExmpAppManageService")
private ExmpAppManageService exmpAppManageService;
@Resource(name="EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
@Resource(name="EgovFileMngService")
private EgovFileMngService fileMngService;
/**
* @methodName : exmpEffectManagerList
* @author : 이호영
* @date : 2022.10.11
* @description : 도움말 목록
* @param exmpManageVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpEffectManagerList.do")
public String exmpEffectManagerList(@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
if(exmpManageVO.getPageUnit() != 10) {
exmpManageVO.setPageUnit(exmpManageVO.getPageUnit());
}
if("".equals(exmpManageVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
exmpManageVO.setSearchSortCnd("T1.Exmp_CC_TY");
exmpManageVO.setSearchSortOrd("asc");
}
/** paging */
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(exmpManageVO.getPageIndex());
paginationInfo.setRecordCountPerPage(exmpManageVO.getPageUnit());
paginationInfo.setPageSize(exmpManageVO.getPageSize());
exmpManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
exmpManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
exmpManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
// 의견 코드
exmpManageVO.setCodeId("05");
paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpManageVO));
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpManageVO));
return "kccadr/adjPgrMgr/exmp/effect/exmpEffectManagerList";
}
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpEffectManagerCreate.do")
public String exmpEffectManagerCreate(ExmpManageVO exmpManageVO) throws Exception {
return "kccadr/adjPgrMgr/exmp/effect/exmpEffectManagerCreate";
}
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpEffectManagerModify.do")
public String exmpEffectManagerModify(@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
Map<String, Object> resultMap = exmpAppManageService.selectExmpAppManagerInfo(exmpManageVO);;
model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/effect/exmpEffectManagerModify";
}
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpEffectManagerDetail.do")
public String exmpEffectManagerDetail( ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
Map<String, Object> resultMap = exmpAppManageService.selectExmpAppManagerInfo(exmpManageVO);;
model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/effect/exmpEffectManagerDetail";
}
}

View File

@ -0,0 +1,134 @@
package kcc.kccadr.adjPgrMgr.exmp.help.web;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.cmm.RestResponse;
import org.apache.commons.lang3.StringUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
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.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
/**
*
* @author : 이호영
* @fileName : ExmpHelpManagerController.java
* @date : 2022.10.11
* @description :
* ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
* 2022.10.11 이호영 최초 생성
*
*
*
*/
@Controller
public class ExmpHelpManagerController {
@Resource(name = "ExmpAppManageService")
private ExmpAppManageService exmpAppManageService;
@Resource(name="EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
@Resource(name="EgovFileMngService")
private EgovFileMngService fileMngService;
/**
* @methodName : exmpHelpManagerList
* @author : 이호영
* @date : 2022.10.11
* @description : 도움말 목록
* @param exmpManageVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpHelpManagerList.do")
public String exmpHelpManagerList(@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
if(exmpManageVO.getPageUnit() != 10) {
exmpManageVO.setPageUnit(exmpManageVO.getPageUnit());
}
if("".equals(exmpManageVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
exmpManageVO.setSearchSortCnd("T1.Exmp_CC_TY");
exmpManageVO.setSearchSortOrd("asc");
}
/** paging */
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(exmpManageVO.getPageIndex());
paginationInfo.setRecordCountPerPage(exmpManageVO.getPageUnit());
paginationInfo.setPageSize(exmpManageVO.getPageSize());
exmpManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
exmpManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
exmpManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
// 의견 코드
exmpManageVO.setCodeId("05");
paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpManageVO));
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpManageVO));
return "kccadr/adjPgrMgr/exmp/help/exmpHelpManagerList";
}
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpHelpManagerCreate.do")
public String exmpHelpManagerCreate(ExmpManageVO exmpManageVO) throws Exception {
return "kccadr/adjPgrMgr/exmp/help/exmpHelpManagerCreate";
}
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpHelpManagerModify.do")
public String exmpHelpManagerModify(@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
Map<String, Object> resultMap = exmpAppManageService.selectExmpAppManagerInfo(exmpManageVO);;
model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/help/exmpHelpManagerModify";
}
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpHelpManagerDetail.do")
public String exmpHelpManagerDetail( ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
Map<String, Object> resultMap = exmpAppManageService.selectExmpAppManagerInfo(exmpManageVO);;
model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/help/exmpHelpManagerDetail";
}
}

View File

@ -1,53 +1,36 @@
package kcc.kccadr.adjPgrMgr.exmp.opinion.web; package kcc.kccadr.adjPgrMgr.exmp.opinion.web;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; import java.util.Map;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO; import javax.annotation.Resource;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.cmm.RestResponse;
import org.apache.commons.lang3.StringUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute; 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.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import javax.servlet.http.HttpServletRequest; import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import java.time.LocalDateTime; import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import java.util.List; import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import java.util.Map;
/** /**
* 조정위원 관리 구현 클래스
* *
* @author 김봉호 * @author : 이호영
* @since 2021.08.21 * @fileName : ExmpOpinionManagerController.java
* @version 1.0 * @date : 2022.10.11
* @see <pre> * @description : 의견 예문관리
* &lt;&lt; 개정이력(Modification Information) &gt;&gt; * ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
* 2022.10.11 이호영 최초 생성
*
*
* *
* 수정일 수정자 수정내용
* ------- -------- ---------------------------
* 2021.08.21 김봉호 최초 생성
* </pre>
*/ */
@Controller @Controller
public class ExmpOpinionManagerController { public class ExmpOpinionManagerController {
@ -62,6 +45,16 @@ public class ExmpOpinionManagerController {
/**
* @methodName : exmpOpinionManagerList
* @author : 이호영
* @date : 2022.10.11
* @description : 의견 목록
* @param exmpManageVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerList.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerList.do")
public String exmpOpinionManagerList(@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO , ModelMap model) throws Exception { public String exmpOpinionManagerList(@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO , ModelMap model) throws Exception {
if(exmpManageVO.getPageUnit() != 10) { if(exmpManageVO.getPageUnit() != 10) {
@ -82,17 +75,21 @@ public class ExmpOpinionManagerController {
exmpManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); exmpManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
exmpManageVO.setLastIndex(paginationInfo.getLastRecordIndex()); exmpManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
exmpManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); exmpManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
// 의견 코드
exmpManageVO.setCodeId("CC007");
paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpManageVO)); paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpManageVO));
model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpManageVO)); model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpManageVO));
return "kccadr/adjPgrMgr/exmp/exmpOpinionManagerList"; return "kccadr/adjPgrMgr/exmp/opinion/exmpOpinionManagerList";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerCreate.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerCreate.do")
public String exmpOpinionManagerCreate(ExmpManageVO exmpManageVO) throws Exception { public String exmpOpinionManagerCreate(ExmpManageVO exmpManageVO) throws Exception {
return "kccadr/adjPgrMgr/exmp/exmpOpinionManagerCreate"; return "kccadr/adjPgrMgr/exmp/opinion/exmpOpinionManagerCreate";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerModify.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerModify.do")
@ -103,7 +100,7 @@ public class ExmpOpinionManagerController {
model.addAttribute("fileList", resultMap.get("fileList")); model.addAttribute("fileList", resultMap.get("fileList"));
model.addAttribute("mgrInfo", resultMap.get("mgrInfo")); model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list")); model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/exmpOpinionManagerModify"; return "kccadr/adjPgrMgr/exmp/opinion/exmpOpinionManagerModify";
} }
@RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerDetail.do") @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpOpinionManagerDetail.do")
@ -115,7 +112,7 @@ public class ExmpOpinionManagerController {
model.addAttribute("mgrInfo", resultMap.get("mgrInfo")); model.addAttribute("mgrInfo", resultMap.get("mgrInfo"));
model.addAttribute("list", resultMap.get("list")); model.addAttribute("list", resultMap.get("list"));
return "kccadr/adjPgrMgr/exmp/exmpOpinionManagerDetail"; return "kccadr/adjPgrMgr/exmp/opinion/exmpOpinionManagerDetail";
} }

View File

@ -0,0 +1,251 @@
package kcc.kccadr.adjPgrMgr.iop.service;
import kcc.com.cmm.ComDefaultVO;
public class InsteadOfPaymentManageVO extends ComDefaultVO {
/**
*
*/
private static final long serialVersionUID = -3466869341114607249L;
/* adr_sbmt_mgr :: 조정사건결재 TB */
private String adr_seq; /* 조정일련번호 */
private String adr_sn; /* 조정회차 */
private String sbmt_seq; /* 결재일련번호 */
private String sbmt_ty; /* 결재종류구분 */
private String sbmt_mem_ty; /* 조정부결재구분 10-승인, 20-결재 */
private String sbmt_step_cnt; /* 총결재단계수 */
private String sbmt_id1; /* 결재자ID1 */
private String sbmt_yn1; /* 결재여부1 - Y/N/A */
private String sbmt_de1; /* 결재일시1 */
private String sbmt_id2; /* 결재자ID2 */
private String sbmt_yn2; /* 결재여부2 */
private String sbmt_de2; /* 결재일시2 */
private String sbmt_id3; /* 결재자ID3 */
private String sbmt_yn3; /* 결재여부3 */
private String sbmt_de3; /* 결재일시3 */
private String sbmt_id4; /* 결재자ID4 */
private String sbmt_yn4; /* 결재여부4 */
private String sbmt_de4; /* 결재일시4 */
private String sbmt_id5; /* 결재자ID5 */
private String sbmt_yn5; /* 결재여부5 */
private String sbmt_de5; /* 결재일시5 */
private String sbmt_id6; /* 결재자ID6 */
private String sbmt_yn6; /* 결재여부6 */
private String sbmt_de6; /* 결재일시6 */
/* adr_sbmt_mgr_hstry :: 조정사건결재히스토리 TB */
private String sbmt_sbstt_seq; /* 결재대리인일련번호 */
private String agnt_sbmt_id; /* 대상결재자ID-ID1,ID2,ID3,ID4,ID5,ID6*/
private String sbmt_id_sbstt; /* 대리결재자ID */
private String sbmt_id_bef; /* 이전결재자ID */
/* 공통 */
private String frst_regist_pnttm; /* 등록일시 */
private String frst_register_id; /* 등록자 */
private String last_updt_pnttm; /* 수정일시 */
private String last_updusr_id; /* 수정자 */
public String getAdr_seq() {
return adr_seq;
}
public void setAdr_seq(String adr_seq) {
this.adr_seq = adr_seq;
}
public String getAdr_sn() {
return adr_sn;
}
public void setAdr_sn(String adr_sn) {
this.adr_sn = adr_sn;
}
public String getSbmt_seq() {
return sbmt_seq;
}
public void setSbmt_seq(String sbmt_seq) {
this.sbmt_seq = sbmt_seq;
}
public String getSbmt_ty() {
return sbmt_ty;
}
public void setSbmt_ty(String sbmt_ty) {
this.sbmt_ty = sbmt_ty;
}
public String getSbmt_mem_ty() {
return sbmt_mem_ty;
}
public void setSbmt_mem_ty(String sbmt_mem_ty) {
this.sbmt_mem_ty = sbmt_mem_ty;
}
public String getSbmt_step_cnt() {
return sbmt_step_cnt;
}
public void setSbmt_step_cnt(String sbmt_step_cnt) {
this.sbmt_step_cnt = sbmt_step_cnt;
}
public String getSbmt_id1() {
return sbmt_id1;
}
public void setSbmt_id1(String sbmt_id1) {
this.sbmt_id1 = sbmt_id1;
}
public String getSbmt_yn1() {
return sbmt_yn1;
}
public void setSbmt_yn1(String sbmt_yn1) {
this.sbmt_yn1 = sbmt_yn1;
}
public String getSbmt_de1() {
return sbmt_de1;
}
public void setSbmt_de1(String sbmt_de1) {
this.sbmt_de1 = sbmt_de1;
}
public String getSbmt_id2() {
return sbmt_id2;
}
public void setSbmt_id2(String sbmt_id2) {
this.sbmt_id2 = sbmt_id2;
}
public String getSbmt_yn2() {
return sbmt_yn2;
}
public void setSbmt_yn2(String sbmt_yn2) {
this.sbmt_yn2 = sbmt_yn2;
}
public String getSbmt_de2() {
return sbmt_de2;
}
public void setSbmt_de2(String sbmt_de2) {
this.sbmt_de2 = sbmt_de2;
}
public String getSbmt_id3() {
return sbmt_id3;
}
public void setSbmt_id3(String sbmt_id3) {
this.sbmt_id3 = sbmt_id3;
}
public String getSbmt_yn3() {
return sbmt_yn3;
}
public void setSbmt_yn3(String sbmt_yn3) {
this.sbmt_yn3 = sbmt_yn3;
}
public String getSbmt_de3() {
return sbmt_de3;
}
public void setSbmt_de3(String sbmt_de3) {
this.sbmt_de3 = sbmt_de3;
}
public String getSbmt_id4() {
return sbmt_id4;
}
public void setSbmt_id4(String sbmt_id4) {
this.sbmt_id4 = sbmt_id4;
}
public String getSbmt_yn4() {
return sbmt_yn4;
}
public void setSbmt_yn4(String sbmt_yn4) {
this.sbmt_yn4 = sbmt_yn4;
}
public String getSbmt_de4() {
return sbmt_de4;
}
public void setSbmt_de4(String sbmt_de4) {
this.sbmt_de4 = sbmt_de4;
}
public String getSbmt_id5() {
return sbmt_id5;
}
public void setSbmt_id5(String sbmt_id5) {
this.sbmt_id5 = sbmt_id5;
}
public String getSbmt_yn5() {
return sbmt_yn5;
}
public void setSbmt_yn5(String sbmt_yn5) {
this.sbmt_yn5 = sbmt_yn5;
}
public String getSbmt_de5() {
return sbmt_de5;
}
public void setSbmt_de5(String sbmt_de5) {
this.sbmt_de5 = sbmt_de5;
}
public String getSbmt_id6() {
return sbmt_id6;
}
public void setSbmt_id6(String sbmt_id6) {
this.sbmt_id6 = sbmt_id6;
}
public String getSbmt_yn6() {
return sbmt_yn6;
}
public void setSbmt_yn6(String sbmt_yn6) {
this.sbmt_yn6 = sbmt_yn6;
}
public String getSbmt_de6() {
return sbmt_de6;
}
public void setSbmt_de6(String sbmt_de6) {
this.sbmt_de6 = sbmt_de6;
}
public String getSbmt_sbstt_seq() {
return sbmt_sbstt_seq;
}
public void setSbmt_sbstt_seq(String sbmt_sbstt_seq) {
this.sbmt_sbstt_seq = sbmt_sbstt_seq;
}
public String getAgnt_sbmt_id() {
return agnt_sbmt_id;
}
public void setAgnt_sbmt_id(String agnt_sbmt_id) {
this.agnt_sbmt_id = agnt_sbmt_id;
}
public String getSbmt_id_sbstt() {
return sbmt_id_sbstt;
}
public void setSbmt_id_sbstt(String sbmt_id_sbstt) {
this.sbmt_id_sbstt = sbmt_id_sbstt;
}
public String getSbmt_id_bef() {
return sbmt_id_bef;
}
public void setSbmt_id_bef(String sbmt_id_bef) {
this.sbmt_id_bef = sbmt_id_bef;
}
public String getFrst_regist_pnttm() {
return frst_regist_pnttm;
}
public void setFrst_regist_pnttm(String frst_regist_pnttm) {
this.frst_regist_pnttm = frst_regist_pnttm;
}
public String getFrst_register_id() {
return frst_register_id;
}
public void setFrst_register_id(String frst_register_id) {
this.frst_register_id = frst_register_id;
}
public String getLast_updt_pnttm() {
return last_updt_pnttm;
}
public void setLast_updt_pnttm(String last_updt_pnttm) {
this.last_updt_pnttm = last_updt_pnttm;
}
public String getLast_updusr_id() {
return last_updusr_id;
}
public void setLast_updusr_id(String last_updusr_id) {
this.last_updusr_id = last_updusr_id;
}
}

View File

@ -0,0 +1,104 @@
package kcc.kccadr.adjPgrMgr.iop.web;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
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.servlet.ModelAndView;
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.FileVO;
import kcc.com.cmm.util.DateUtil;
import kcc.com.cmm.util.IpUtil;
import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.user.service.CheckAdrProcessUtil;
import kcc.kccadr.adjPgrMgr.apm.service.ApmService;
import kcc.kccadr.adjPgrMgr.apm.service.ApmVO;
import kcc.kccadr.adjPgrMgr.cmm.service.PgrCmmService;
import kcc.kccadr.adjPgrMgr.cmm.service.PgrCmmVO;
import kcc.kccadr.adjPgrMgr.drt.service.DrtService;
import kcc.kccadr.adjPgrMgr.drt.service.DrtVO;
import kcc.kccadr.adjPgrMgr.ent.service.EntService;
import kcc.kccadr.adjPgrMgr.ent.service.EntVO;
import kcc.kccadr.adjPgrMgr.iam.service.InternalApprovManageService;
import kcc.kccadr.adjPgrMgr.iam.service.InternalApprovManageVO;
import kcc.kccadr.adjPgrMgr.iop.service.InsteadOfPaymentManageVO;
import kcc.kccadr.adjReqMgrPast.service.AdjReqMgrPastVO;
import kcc.kccadr.adjcclt.service.AdjstConciliatorService;
import kcc.kccadr.adjcclt.service.AdjstConciliatorVO;
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
import kcc.kccadr.adjreqmgr.web.AdjReqMgrController;
import kcc.kccadr.adjst.service.AdjstReqService;
import kcc.kccadr.adjst.service.AdjstReqVO;
import kcc.kccadr.cmm.CmmUtil;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
import kcc.kccadr.ozSchd.web.OzSchdExportUtil;
import kcc.let.uss.umt.service.EgovUserManageService;
import kcc.let.uss.umt.service.UserManageVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
@Controller
public class InsteadOfPaymentManageController {
// @Resource(name = "apmService")
// private ApmService apmService;
@RequestMapping(value = "/kccadr/adjPgrMgr/iop/insteadOfPaymentManageList.do")
public String insteadOfPaymentManageList(@ModelAttribute("insteadOfPaymentManageVO") InsteadOfPaymentManageVO insteadOfPaymentManageVO , ModelMap model, HttpServletRequest request) throws Exception {
String auth = EgovUserDetailsHelper.isAuthenticated() ? null : EgovUserDetailsHelper.getAuthenticatedUser().toString();
LoginVO loginVO = "anonymousUser".equals(auth) ? null : (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
if (loginVO == null) {
model.addAttribute("msg", "로그인 해주세요.");
return "redirect:/web/user/login/ssoLogin.do";
}
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(insteadOfPaymentManageVO.getPageIndex());
paginationInfo.setRecordCountPerPage(insteadOfPaymentManageVO.getPageUnit());
paginationInfo.setPageSize(insteadOfPaymentManageVO.getPageSize());
insteadOfPaymentManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
insteadOfPaymentManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
insteadOfPaymentManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
// paginationInfo.setTotalRecordCount(adjReqMgrPastService.selectAdjReqMgrPastListCount(insteadOfPaymentManageVO));
model.addAttribute("paginationInfo", paginationInfo);
// list
// List<InsteadOfPaymentManageVO> list = adjReqMgrPastService.selectAdjReqMgrPastList(adjReqMgrPastVO);
List<InsteadOfPaymentManageVO> list = new ArrayList<InsteadOfPaymentManageVO>();
// 임시
model.addAttribute("list", list);
return "kccadr/adjPgrMgr/iop/insteadOfPaymentManageList";
}
}

View File

@ -162,6 +162,20 @@ public class EgovMainController {
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
@RequestMapping(value = "/cmm/main/mainPage.do") @RequestMapping(value = "/cmm/main/mainPage.do")
public String selectGetMgtMainPage(HttpServletRequest request, ModelMap model, HttpSession session) throws Exception{ public String selectGetMgtMainPage(HttpServletRequest request, ModelMap model, HttpSession session) throws Exception{
LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
System.out.println("loginVO.getOfcpsNm() :: "+ loginVO.getOfcpsNm());
/*
* 30 : 센터장(부서장)
* 40 : 위원장
* */
if("40".equals(loginVO.getOfcpsNm()) || "30".equals(loginVO.getOfcpsNm()))
{
//executives -> exctv
return "redirect:/cmm/main/exctvMainPage.do";
}
{//관리자 오늘 사용자수 {//관리자 오늘 사용자수
StatsVO statsVO = new StatsVO(); StatsVO statsVO = new StatsVO();
List<?> conectStats = conectStatsService.selectMainConectStats(statsVO); List<?> conectStats = conectStatsService.selectMainConectStats(statsVO);
@ -392,6 +406,22 @@ public class EgovMainController {
return "main/EgovMainView"; return "main/EgovMainView";
} }
/**
* @methodName : exctvMainPage
* @author : 이호영
* @date : 2022.10.12
* @description :
* @param model
* @param session
* @return
* @throws Exception
*/
@RequestMapping(value = "/cmm/main/exctvMainPage.do")
public String exctvMainPage(ModelMap model, HttpSession session) throws Exception{
return "main/exctvMainView";
// return "main/EgovMainView";
}
/** /**
* Head메뉴를 조회한다. * Head메뉴를 조회한다.
* @param menuManageVO MenuManageVO * @param menuManageVO MenuManageVO

View File

@ -64,6 +64,7 @@ public class EgovSessionMapping extends EgovUsersByUsernameMapping {
String strOrgnztNm = rs.getString("orgnzt_nm"); String strOrgnztNm = rs.getString("orgnzt_nm");
String strAuthority = rs.getString("authority"); String strAuthority = rs.getString("authority");
String strMberSeq = rs.getString("mber_seq"); String strMberSeq = rs.getString("mber_seq");
String ofcpsNm = rs.getString("ofcps_nm");
// 세션 항목 설정 // 세션 항목 설정
@ -80,6 +81,9 @@ public class EgovSessionMapping extends EgovUsersByUsernameMapping {
loginVO.setAuthority(strAuthority); loginVO.setAuthority(strAuthority);
loginVO.setMembSeq(strMberSeq); loginVO.setMembSeq(strMberSeq);
/*20221012 대시보드를 위해 직급 코드 추가*/
loginVO.setOfcpsNm(ofcpsNm);
return new EgovUserDetails(strUserId, strPassWord, strEnabled, loginVO); return new EgovUserDetails(strUserId, strPassWord, strEnabled, loginVO);
} }
} }

View File

@ -31,7 +31,7 @@
jdbcUsersByUsernameQuery="SELECT USER_ID, ESNTL_ID AS PASSWORD, 1 ENABLED, USER_NM, USER_ZIP, jdbcUsersByUsernameQuery="SELECT USER_ID, ESNTL_ID AS PASSWORD, 1 ENABLED, USER_NM, USER_ZIP,
USER_ADRES, USER_EMAIL, USER_SE, '-' ORGNZT_ID, ESNTL_ID, USER_ADRES, USER_EMAIL, USER_SE, '-' ORGNZT_ID, ESNTL_ID,
'-' ORGNZT_NM, AUTHOR_CODE AS AUTHORITY, mber_seq AS mber_seq '-' ORGNZT_NM, AUTHOR_CODE AS AUTHORITY, mber_seq AS mber_seq, ofcps_nm as ofcps_nm
FROM COMVNUSERMASTER A FROM COMVNUSERMASTER A
INNER JOIN LETTNEMPLYRSCRTYESTBS B ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID INNER JOIN LETTNEMPLYRSCRTYESTBS B ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID
WHERE CONCAT(USER_SE, USER_ID) = ?" WHERE CONCAT(USER_SE, USER_ID) = ?"

View File

@ -48,7 +48,7 @@
ELSE S2.CODE_NM ||' 외'|| (COUNT(*)-1) || '건' ELSE S2.CODE_NM ||' 외'|| (COUNT(*)-1) || '건'
END EXMP_NMS END EXMP_NMS
FROM ADR_EXMP_DTL S1 INNER JOIN LETTCCMMNDETAILCODE S2 FROM ADR_EXMP_DTL S1 INNER JOIN LETTCCMMNDETAILCODE S2
ON S1.EXMP_CD = S2.CODE AND CODE_ID = 'CC040' ON S1.EXMP_CD = S2.CODE AND CODE_ID = #codeId#
WHERE 1=1 WHERE 1=1
AND S1.EXMP_CC_TY = T1.EXMP_CC_TY AND S1.EXMP_CC_TY = T1.EXMP_CC_TY
GROUP BY S1.EXMP_CC_TY GROUP BY S1.EXMP_CC_TY

View File

@ -7,18 +7,18 @@
<application generated-by="eclipse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zeroturnaround.com" xsi:schemaLocation="http://www.zeroturnaround.com http://update.zeroturnaround.com/jrebel/rebel-2_1.xsd"> <application generated-by="eclipse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zeroturnaround.com" xsi:schemaLocation="http://www.zeroturnaround.com http://update.zeroturnaround.com/jrebel/rebel-2_1.xsd">
<classpath> <classpath>
<dir name="${rebel.workspace.path}/kcc_adr_advc_git/target/classes"> <dir name="D:/Development/git_repository/kcc_adr_advc_git/target/classes">
</dir> </dir>
</classpath> </classpath>
<web> <web>
<link target="/"> <link target="/">
<dir name="${rebel.workspace.path}/kcc_adr_advc_git/target/m2e-wtp/web-resources"> <dir name="D:/Development/git_repository/kcc_adr_advc_git/target/m2e-wtp/web-resources">
<exclude name="/"/> <exclude name="/"/>
</dir> </dir>
</link> </link>
<link target="/"> <link target="/">
<dir name="${rebel.workspace.path}/kcc_adr_advc_git/src/main/webapp"> <dir name="D:/Development/git_repository/kcc_adr_advc_git/src/main/webapp">
</dir> </dir>
</link> </link>
</web> </web>

View File

@ -76,6 +76,7 @@
<pattern>/cop/*</pattern><!-- 내부서비스관리 --> <pattern>/cop/*</pattern><!-- 내부서비스관리 -->
<pattern>/sys/research/userResearch.do</pattern><!-- 만족도테스트 --> <pattern>/sys/research/userResearch.do</pattern><!-- 만족도테스트 -->
<pattern>/cmm/main/mainPage.do</pattern><!-- 메인페이지 --> <pattern>/cmm/main/mainPage.do</pattern><!-- 메인페이지 -->
<pattern>/cmm/main/exctvMainPage.do</pattern><!-- 메인페이지 -->
<pattern>/kccadr/*</pattern><!-- 전자조정시스템 --> <pattern>/kccadr/*</pattern><!-- 전자조정시스템 -->
</decorator> </decorator>

View File

@ -90,13 +90,13 @@
<!-- cont_tit --> <!-- cont_tit -->
<div class="cont_tit"> <div class="cont_tit">
<h2>신청예문관리</h2> <h2>신청원인예문관리</h2>
<ul class="cont_nav"> <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li> <li class="home"><a href="/"><i></i></a></li>
<li> <li>
<p>조정진행관리</p> <p>조정진행관리</p>
</li> </li>
<li><span class="cur_nav">신청예문관리</span></li> <li><span class="cur_nav">신청원인예문관리</span></li>
</ul> </ul>
</div> </div>
<!-- //cont_tit --> <!-- //cont_tit -->

View File

@ -0,0 +1,352 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%
/**
* @Class Name : AdjustDeptManagerCreate.jsp
* @Description : 관리자 일정관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.16 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<title>예문관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
$(document).ready( function() {
$("#filebutton").click(function () {
$("#file_temp").trigger("click");
});
});
function fncRowAdd(){
// 등록가능한 갯수
var len = $("select[name*=exmpCd]:first option").length;
var rowLen = $(".addTb > table > tbody > tr").length;
var obj = $(".addTb > table > tbody > tr:last");
var cloneObj = obj.clone(true);
console.log('cloneObj : ',cloneObj);
if(len == 0 || rowLen >= (len-1)){
alert("등록가능한 항목은 갯수는 " + (len-1) + "개 입니다.");
return false;
}
var exmpCd = cloneObj.find("select[name*=exmpCd]");
var exmpCn = cloneObj.find("textarea[name*=exmpCn]");
exmpCd.val("");
exmpCn.val("");
exmpCd.attr("name", exmpCd.attr("name").replace(/[0-9]/gi, rowLen));
exmpCn.attr("name", exmpCn.attr("name").replace(/[0-9]/gi, rowLen));
obj.after(cloneObj);
}
function fncRowDel(){
var rowLen = $(".addTb > table > tbody > tr").length;
if(rowLen == 1){
alert("더이상 삭제할 수 없습니다.");
return false;
}
$(".addTb > table > tbody > tr:last").remove();
}
function fncSave(){
var exmpCcTy = "<c:out value='${mgrInfo.exmpCcTy}' />";
if(exmpCcTy != ''){
saveProcess();
}else{
$.ajax({
type: "POST",
url: "/kccadr/adjPgrMgr/exmp/existsExmpManagerDataCheck.do",
data: JSON.stringify({exmpCcTy : $("#exmpCcTy").val()
,codeId : $('#codeId').val()}),
dataType:'json',
async: false,
processData: false,
contentType: "application/json",
cache: false,
success: function (returnData) {
if(returnData.status == "OK"){
saveProcess();
}else{
alert(returnData.data);
return false;
}
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function saveProcess(){
if(!validation()){
return false;
}
if(confirm("해당내용을 저장 하시겠습니까?")){
var data = new FormData(document.getElementById("createForm"));
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type:"POST",
url: "/kccadr/adjPgrMgr/exmp/insertExmpAppManager.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
if(returnData.status == "OK"){
alert(returnData.data);
fncDetail();
}else{
alert(returnData.data);
}
},
error:function(request , status, error){
console.log('request : ', request);
console.log('status : ', status);
console.log('error : ', error);
}
});
}
}
function validation(){
var obj = $(".addTb > table > tbody > tr");
var flag = true;
if($("#exmpTit").val() == ''){
alert("제목을 입력해주세요.");
return flag = false;
}
if($("#exmpCcTy").val() == ''){
alert("저작물을 선택해주세요.");
return flag = false;
}
var validArr = [];
$.each(obj , function(idx, elm){
var cd = $(this).find("select[name*=exmpCd]").val();
var cn = $(this).find("textarea[name*=exmpCn]").val();
validArr[idx] = cd;
var textLen = conByteLeng(cn); //예문 입력 내용 Byte 계산 처리
if(cd == ''){
alert("항목을 선택해주세요.["+(idx+1)+"]");
return flag = false;
}
if(cn == ''){
alert("예문내용을 입력해주세요.["+(idx+1)+"]");
return flag = false;
}
if(Number(textLen) > 2000){
alert("예문 내용의 길이는 2000자를 넘을 수 없습니다.");
return flag = false;
}
});
var checkObj = validArr.reduce((accu, curr) => {
accu[curr] = (accu[curr] || 0)+1;
return accu;
}, {});
$.each(checkObj, function(key, value){
if(parseInt(value) > 1){
alert("동일한 항목을 중복으로 등록하실 수 없습니다.");
return flag = false;
}
});
return flag;
}
function fncGoList(){
var varFrom = document.getElementById("createForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do'/>";
varFrom.submit();
}
function fncDetail(){
var varFrom = document.getElementById("createForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerDetail.do'/>";
varFrom.submit();
}
</script>
<style>
#exmpTit{width: 95%}
</style>
</head>
<body>
<form:form id="createForm" name="createForm" commandName="exmpManageVO" method="post">
<input type="hidden" name="limitcount" value="3" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="searchCondition" value="<c:out value='${exmpManageVO.searchCondition}'/>"/>
<input type="hidden" name="searchKeyword" value="<c:out value='${exmpManageVO.searchKeyword}'/>"/>
<input type="hidden" name="pageIndex" value="<c:out value='${exmpManageVO.pageIndex}'/>"/>
<input type="hidden" name="codeId" id="codeId" value="<c:out value="${exmpManageVO.codeId}" />" />
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>신청서예문등록</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><p>조정진행관리</p></li>
<li><p>신청서예문관리</p></li>
<li><span class="cur_nav">신청서예문등록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<p class="tb_tit">예문 저작물종류</p>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 150px">
<col style="width: auto;">
<col style="width: 150px">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>제목</th>
<td>
<input type="text" placeholder="제목을 입력해주세요." name="exmpTit" id="exmpTit" value="">
</td>
<th>저작물종류</th>
<td>
<kc:select codeId="CC002" name="exmpCcTy" id="exmpCcTy" defaultText="선택" defaultValue="" selectedValue="${mgrInfo.exmpCcTy}"/>
<%-- <kc:select codeId="CC002" name="exmpCcTy" id="exmpCcTy" defaultText="선택" defaultValue=""/> --%>
</td>
</tr>
<tr>
<th><span class="">첨부파일</span></th>
<td class="upload_area" colspan="3">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btnType01 btn_add_file">파일 첨부하기</button>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: 60%;">
<col style="width: auto;">
<col style="width: 20%;">
<col style="width: 10%;">
</colgroup>
<thead>
<!-- <th>
<input type="checkbox" id="all_check"><label for="all_check"></label>
</th> -->
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap fileAfter file_list_div">
<table>
<colgroup>
<col style="width: 60%">
<col style="width: 10%">
<col style="width: 20%">
<col style="width: 10%">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<div class="tb_tit">
<p>항목추가</p>
<div class="btn_wrap">
<button type="button" class="btn_plus" onclick="fncRowAdd(); return false;"><i></i></button>
<button type="button" class="btn_minus" onclick="fncRowDel(); return false;"><i></i></button>
</div>
</div>
<div class="list tbType01 addTb">
<table>
<colgroup>
<col style="width: 27%">
<col style="width: auto">
</colgroup>
<thead>
<tr>
<th>항목</th>
<th>예문내용</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<kc:select codeId="CC040" name="exmpList[0].exmpCd" id="test" defaultText="선택" defaultValue="" selectedValue="" css="style='width:200px; height:38px;'"/>
</td>
<td>
<textarea name="exmpList[0].exmpCn" placeholder="예문을 입력해주세요." style="resize: none; width:96%; margin: 10px 0;"></textarea>
</td>
</tr>
</tbody>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button class="btnType06" onclick="fncSave(); return false;">저장</button>
<button class="btnType03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,174 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%pageContext.setAttribute("crlf", "\r\n"); %>
<%
/**
* @Class Name : AdjustDeptManagerCreate.jsp
* @Description : 관리자 일정관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.16 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<title>예문관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
function fn_egov_downFile(atchFileId, fileSn){
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
}
function fncGoList(){
var varFrom = document.getElementById("detailForm");
varFrom.exmpCcTy.value = '';
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do'/>";
varFrom.submit();
}
function fncEdit(){
var varFrom = document.getElementById("detailForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerModify.do'/>";
varFrom.submit();
}
</script>
</head>
<body>
<form:form id="detailForm" name="detailForm" commandName="exmpManageVO" method="post">
<input type="hidden" name="exmpCcTy" value="<c:out value='${mgrInfo.exmpCcTy}'/>"/>
<input type="hidden" name="searchCondition" value="<c:out value='${exmpManageVO.searchCondition}'/>"/>
<input type="hidden" name="searchKeyword" value="<c:out value='${exmpManageVO.searchKeyword}'/>"/>
<input type="hidden" name="pageIndex" value="<c:out value='${exmpManageVO.pageIndex}'/>"/>
<input type="hidden" name="codeId" value="<c:out value="${exmpManageVO.codeId}" />" />
<input type="hidden" name="exmpMgrId" value="<c:out value="${exmpManageVO.exmpMgrId}" />" />
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>신청서예문상세</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><p>조정진행관리</p></li>
<li><p>신청서예문관리</p></li>
<li><span class="cur_nav">신청서예문상세</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<p class="tb_tit">예문 저작물종류</p>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 150px">
<col style="width: auto;">
<col style="width: 150px">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>제목</th>
<td>
<c:out value='${mgrInfo.exmpTit}' />
</td>
<th>저작물종류</th>
<td>
<kc:code codeId="CC002" code="${mgrInfo.exmpCcTy}"/>
</td>
</tr>
<c:if test="${not empty fileList }">
<tr>
<th><span class="">첨부파일</span></th>
<td class="upload_area" colspan="3">
<ul class="file_list">
<%--<c:import url="/web/kccadr/kccadrCom/adjstFileDownloadBasicInfo.do"/>--%>
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<li><a href="javascript:fn_egov_downFile('<c:out value='${fileList.atchFileId}' />','<c:out value='${fileList.fileSn}' />')" title="다운로드"><c:out value='${fileList.orignlFileNm}' /></a></li>
</c:forEach>
</ul>
</td>
</tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<div class="tb_tit">
<p>항목추가</p>
<%--<div class="btn_wrap">
<button type="button" class="btn_plus" onclick="fncRowAdd(); return false;"><i></i></button>
<button type="button" class="btn_minus" onclick="fncRowDel(); return false;"><i></i></button>
</div>--%>
</div>
<div class="list tbType01 addTb">
<table>
<colgroup>
<col style="width: 20%">
<col style="width: auto">
</colgroup>
<thead>
<tr>
<th>항목</th>
<th>예문내용</th>
</tr>
</thead>
<tbody>
<c:choose>
<c:when test="${fn:length(list) eq 0}">
<tr>
<td>
<kc:select codeId="CC040" name="exmpList[0].exmpCd" id="test" defaultText="선택" defaultValue="" selectedValue="" css="style='width:200px; height:38px;'"/>
</td>
<td>
<textarea name="exmpList[0].exmpCn" placeholder="예문을 입력해주세요." style="resize: none; width:96%; margin: 10px 0;"></textarea>
</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td>
<kc:code codeId="CC040" code="${list.exmpCd}"/>
</td>
<td style="text-align: left; line-height: 30px; padding: 10px;">
<c:out value="${fn:replace(list.exmpCn, crlf , '<br/>')}" escapeXml="false" />
</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button class="btnType06" onclick="fncEdit(); return false;">수정</button>
<button class="btnType03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,189 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt_rt" %>
<%
/**
* @Class Name : AdjustDeptManagerList.jsp
* @Description : 조정부관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.09 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
function fncSelectConciliatorManageList(){
linkPage(1);
}
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ;
listForm.searchCondition.value = $('#searchCondition').val();
listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do'/>";
listForm.submit();
}
function fncCreate() {
var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerCreate.do'/>";
listForm.submit();
}
function fn_egov_checkAll(){
var FLength = document.getElementsByName("memSeqArr").length;
var checkAllValue = document.getElementById('checkAll').checked;
//undefined
if( FLength == 1){
document.getElementById("memSeqArr0").checked = checkAllValue;
} else {
for(var i=0; i < FLength; i++) {
document.getElementsByName("memSeqArr")[i].checked = checkAllValue;
}
}
}
function fncDetailPage(exmpMgrId){
var listForm = document.listForm ;
listForm.exmpMgrId.value = exmpMgrId;
listForm.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerDetail.do'/>";
listForm.submit();
}
</script>
<title>신청서예문관리</title>
</head>
<body>
<form:form id="listForm" name="listForm" method="post">
<input type="hidden" name="pageIndex" value="<c:out value='${exmpAppManageVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${exmpAppManageVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${exmpAppManageVO.searchSortOrd}" />" />
<input type="hidden" name="codeId" value="<c:out value="${exmpAppManageVO.codeId}" />" />
<input type="hidden" name="expmCcTy" value="" />
<input type="hidden" name="exmpMgrId" value="" />
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>신청취지예문관리</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>조정진행관리</p>
</li>
<li><span class="cur_nav">신청취지예문관리</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_top -->
<div class="list_top">
<p>총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}"/></span>건</p>
<div class="list_util">
<select name="searchCondition" id="searchCondition">
<option value="" <c:if test="${empty exmpAppManageVO.searchCondition}">selected="selected"</c:if>>전체</option>
<option value="1" <c:if test="${exmpAppManageVO.searchCondition eq '1'}">selected="selected"</c:if>>제목</option>
<option value="2" <c:if test="${exmpAppManageVO.searchCondition eq '2'}">selected="selected"</c:if>>항목</option>
</select>
<input type="text" id=searchKeyword name="searchKeyword" class="search_input" placeholder="검색어를 입력하세요" value="<c:out value='${exmpAppManageVO.searchKeyword}'/>">
<button class="btn_search" onclick="fncSelectConciliatorManageList(); return false;">검색</button>
</div>
</div>
<!-- //list_top -->
<!-- list -->
<div class="list tbType01">
<table>
<colgroup>
<col style="width: 10%">
<col style="width: 10%">
<col style="width: auto">
<col style="width: 25%">
<col style="width: 10%">
</colgroup>
<thead>
<tr>
<th>번호</th>
<th>저작물</th>
<th>제목</th>
<th>항목</th>
<th>등록일</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td>
<c:if test="${exmpAppManageVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((exmpAppManageVO.pageIndex -1)*exmpAppManageVO.pageUnit) ) - status.index }"/>
</c:if>
<c:if test="${exmpAppManageVO.searchSortOrd eq 'asc' }">
<c:out value="${(exmpAppManageVO.pageIndex - 1) * exmpAppManageVO.pageUnit + status.count}"/>
</c:if>
</td>
<td>
<kc:code codeId="${list.codeId}" code="${list.exmpCcTy}"/>
</td>
<td>
<a href="#" onclick="fncDetailPage('${list.exmpMgrId}');"><c:out value="${list.exmpTit}"/></a>
</td>
<td>
<c:out value="${list.exmpNms}"/>
</td>
<td>
<c:out value="${list.frstRegistPnttm}"/>
</td>
</tr>
</c:forEach>
<c:if test="${empty list}">
<tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<div class="btn_wrap btn_layout02">
<button class="btnType02" onclick="fncCreate(); return false;" >등록</button>
</div>
<!-- page -->
<!-- <div class="page"> -->
<%-- <ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" /> --%>
<!-- </div> -->
<!-- //page -->
</div>
</div>
</div>
<!-- //cont -->
<!-- //cont -->
</form:form>
</body>
</html>

View File

@ -0,0 +1,372 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%
/**
* @Class Name : AdjustDeptManagerCreate.jsp
* @Description : 관리자 일정관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.16 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<title>예문관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
$(document).ready( function() {
$("#filebutton").click(function () {
$("#file_temp").trigger("click");
});
});
function fncRowAdd(){
// 등록가능한 갯수
var len = $("select[name*=exmpCd]:first option").length;
var rowLen = $(".addTb > table > tbody > tr").length;
var obj = $(".addTb > table > tbody > tr:last");
var cloneObj = obj.clone(true);
if(len == 0 || rowLen >= (len-1)){
alert("등록가능한 항목은 갯수는 " + (len-1) + "개 입니다.");
return false;
}
var exmpCd = cloneObj.find("select[name*=exmpCd]");
var exmpCn = cloneObj.find("textarea[name*=exmpCn]");
exmpCd.val("");
exmpCn.val("");
exmpCd.attr("name", exmpCd.attr("name").replace(/[0-9]/gi, rowLen));
exmpCn.attr("name", exmpCn.attr("name").replace(/[0-9]/gi, rowLen));
obj.after(cloneObj);
}
function fncRowDel(){
var rowLen = $(".addTb > table > tbody > tr").length;
if(rowLen == 1){
alert("더이상 삭제할 수 없습니다.");
return false;
}
$(".addTb > table > tbody > tr:last").remove();
}
function fn_modifyBtn(){
var exmpCcTy = "<c:out value='${mgrInfo.exmpCcTy}' />";
if(exmpCcTy != ''){
saveProcess();
}else{
$.ajax({
type: "POST",
url: "/kccadr/adjPgrMgr/exmp/existsExmpManagerDataCheck.do",
data: JSON.stringify({exmpCcTy : $("#exmpCcTy").val()}),
dataType:'json',
async: false,
processData: false,
contentType: "application/json",
cache: false,
success: function (returnData) {
if(data.status == "OK"){
saveProcess();
}else{
alert(returnData.data);
return false;
}
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function fn_modifyBtn(){
if(!validation()){
return false;
}
if(confirm("해당내용을 수정 하시겠습니까?")){
var data = new FormData(document.getElementById("modifyForm"));
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type:"POST",
url: "/kccadr/adjPgrMgr/exmp/updateExmpManager.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
if(returnData.result == "SUCCESS"){
alert("정상적으로 등록되었습니다.");
fncDetail();
}
},
error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
}
function validation(){
var obj = $(".addTb > table > tbody > tr");
var flag = true;
if($("#exmpTit").val() == ''){
alert("제목을 입력해주세요.");
return flag = false;
}
if($("#exmpCcTy").val() == ''){
alert("저작물을 선택해주세요.");
return flag = false;
}
var validArr = [];
$.each(obj , function(idx, elm){
var cd = $(this).find("select[name*=exmpCd]").val();
var cn = $(this).find("textarea[name*=exmpCn]").val();
validArr[idx] = cd;
var textLen = conByteLeng(cn); //예문 입력 내용 Byte 계산 처리
if(cd == ''){
alert("항목을 선택해주세요.["+(idx+1)+"]");
return flag = false;
}
if(cn == ''){
alert("예문내용을 입력해주세요.["+(idx+1)+"]");
return flag = false;
}
if(Number(textLen) > 2000){
alert("예문 내용의 길이는 2000자를 넘을 수 없습니다.");
return flag = false;
}
});
var checkObj = validArr.reduce((accu, curr) => {
accu[curr] = (accu[curr] || 0)+1;
return accu;
}, {});
$.each(checkObj, function(key, value){
if(parseInt(value) > 1){
alert("동일한 항목을 중복으로 등록하실 수 없습니다.");
return flag = false;
}
});
return flag;
}
function fncGoList(){
var varFrom = document.getElementById("modifyForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do'/>";
varFrom.submit();
}
function fncDetail(){
var varFrom = document.getElementById("modifyForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpAppManagerDetail.do'/>";
varFrom.submit();
}
</script>
<style>
#exmpTit{width: 95%}
</style>
</head>
<body>
<form:form id="modifyForm" name="modifyForm" commandName="exmpAppManageVO" method="post">
<input type="hidden" name="atchFileId" value="<c:out value='${mgrInfo.atchFileId}'/>"/>
<input type="hidden" name="limitcount" value="3" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="searchCondition" value="<c:out value='${exmpAppManageVO.searchCondition}'/>"/>
<input type="hidden" name="searchKeyword" value="<c:out value='${exmpAppManageVO.searchKeyword}'/>"/>
<input type="hidden" name="pageIndex" value="<c:out value='${exmpAppManageVO.pageIndex}'/>"/>
<input type="hidden" name="searchSortOrd" value="<c:out value="${exmpAppManageVO.searchSortOrd}" />"/>
<input type="hidden" name="exmpMgrId" value="<c:out value='${mgrInfo.exmpMgrId}' />">
<input type="hidden" name="codeId" id="codeId" value="<c:out value='${mgrInfo.codeId}' />">
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>신청서예문수정</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><p>조정진행관리</p></li>
<li><p>신청서예문관리</p></li>
<li><span class="cur_nav">신청서예문수정</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<p class="tb_tit">예문 저작물종류</p>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 150px">
<col style="width: auto;">
<col style="width: 150px">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>제목</th>
<td>
<input type="text" placeholder="제목을 입력해주세요." name="exmpTit" id="exmpTit" value="<c:out value='${mgrInfo.exmpTit}' />">
</td>
<th>저작물종류</th>
<td>
<kc:code codeId="CC002" code="${mgrInfo.exmpCcTy}"/>
<input type="hidden" name="exmpCcTy" value="<c:out value='${mgrInfo.exmpCcTy}'/>"/>
</td>
</tr>
<tr>
<th><span class="">첨부파일</span></th>
<td class="upload_area" colspan="3">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btnType01 btn_add_file">파일 첨부하기</button>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: 60%;">
<col style="width: auto;">
<col style="width: 20%;">
<col style="width: 10%;">
</colgroup>
<thead>
<!-- <th>
<input type="checkbox" id="all_check"><label for="all_check"></label>
</th> -->
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap fileAfter file_list_div">
<table>
<colgroup>
<col style="width: 60%">
<col style="width: 10%">
<col style="width: 20%">
<col style="width: 10%">
</colgroup>
<thead>
<!-- <th>
<input type="checkbox" id="all_check"><label for="all_check"></label>
</th> -->
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_<c:out value='${fileList.atchFileId}' />_<c:out value='${fileList.fileSn}' /> uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="<c:out value='${fileList.fileSize}' />">
<td class="td_filename">
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
<span class="file_name_text"><c:out value='${fileList.orignlFileNm}' /></span>
</td>
<td class="td_filesort">
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
</td>
<td class="td_filesize">
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('<c:out value='${fileList.atchFileId}' />', '<c:out value='${fileList.fileSn}' />'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<div class="tb_tit">
<p>항목추가</p>
<div class="btn_wrap">
<button type="button" class="btn_plus" onclick="fncRowAdd(); return false;"><i></i></button>
<button type="button" class="btn_minus" onclick="fncRowDel(); return false;"><i></i></button>
</div>
</div>
<div class="list tbType01 addTb">
<table>
<colgroup>
<col style="width: 27%">
<col style="width: auto">
</colgroup>
<thead>
<tr>
<th>항목</th>
<th>예문내용</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<input type="hidden" name="exmpList[${status.index}].exmpDtlId" value="<c:out value='${list.exmpDtlId}' />">
<td>
<kc:select codeId="CC040" name="exmpList[${status.index}].exmpCd" defaultText="선택" defaultValue="" selectedValue="${list.exmpCd}" css="style='width:200px; height:38px;'"/>
</td>
<td>
<textarea name="exmpList[<c:out value='${status.index}' />].exmpCn" placeholder="예문을 입력해주세요." style="resize: none; width:96%; margin: 10px 0;"><c:out value='${list.exmpCn}' /></textarea>
</td>
</tr>
</c:forEach>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button class="btnType06" onclick="fn_modifyBtn(); return false;">수정</button>
<button class="btnType03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,178 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt_rt" %>
<%
/**
* @Class Name : AdjustDeptManagerList.jsp
* @Description : 조정부관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.09 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
function fncSelectConciliatorManageList(){
linkPage(1);
}
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ;
listForm.searchCondition.value = $('#searchCondition').val();
listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/adjPgrMgr/expm/expmOpinionManagerList.do'/>";
listForm.submit();
}
function fncCreate() {
var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpHelpManagerCreate.do'/>";
listForm.submit();
}
function fn_egov_checkAll(){
var FLength = document.getElementsByName("memSeqArr").length;
var checkAllValue = document.getElementById('checkAll').checked;
//undefined
if( FLength == 1){
document.getElementById("memSeqArr0").checked = checkAllValue;
} else {
for(var i=0; i < FLength; i++) {
document.getElementsByName("memSeqArr")[i].checked = checkAllValue;
}
}
}
function fncDetailPage(exmpMgrId){
var listForm = document.listForm ;
listForm.exmpMgrId.value = exmpMgrId;
listForm.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpHelpManagerDetail.do'/>";
listForm.submit();
}
</script>
<title>의견예문관리</title>
</head>
<body>
<form:form id="listForm" name="listForm" method="post">
<input type="hidden" name="pageIndex" value="<c:out value='${exmpManageVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${exmpManageVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${exmpManageVO.searchSortOrd}" />" />
<input type="hidden" name="codeId" value="<c:out value="${exmpManageVO.codeId}" />" />
<input type="hidden" name="exmpMgrId" value="0" />
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>진행단계 도움말 관리</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>조정진행관리</p>
</li>
<li><span class="cur_nav">진행단계 도움말 관리</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_top -->
<div class="list_top">
<p>총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}"/></span>건</p>
<div class="list_util">
<select name="searchCondition" id="searchCondition">
<option value="" <c:if test="${empty exmpManageVO.searchCondition}">selected="selected"</c:if>>전체</option>
<option value="1" <c:if test="${exmpManageVO.searchCondition eq '1'}">selected="selected"</c:if>>제목</option>
<%-- <option value="2" <c:if test="${exmpManageVO.searchCondition eq '2'}">selected="selected"</c:if>>항목</option> --%>
</select>
<input type="text" id=searchKeyword name="searchKeyword" class="search_input" placeholder="검색어를 입력하세요" value="<c:out value='${exmpManageVO.searchKeyword}'/>">
<button class="btn_search" onclick="fncSelectConciliatorManageList(); return false;">검색</button>
</div>
</div>
<!-- //list_top -->
<!-- list -->
<div class="list tbType01">
<table>
<colgroup>
<col style="width: 10%">
<col style="width: auto">
<col style="width: 10%">
</colgroup>
<thead>
<tr>
<th>번호</th>
<th>제목</th>
<th>등록일</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td>
<c:if test="${exmpManageVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((exmpManageVO.pageIndex -1)*exmpManageVO.pageUnit) ) - status.index }"/>
</c:if>
<c:if test="${exmpManageVO.searchSortOrd eq 'asc' }">
<c:out value="${(exmpManageVO.pageIndex - 1) * exmpManageVO.pageUnit + status.count}"/>
</c:if>
</td>
<td>
<a href="#" onclick="fncDetailPage('${list.exmpMgrId}');"><c:out value="${list.exmpTit}"/></a>
</td>
<td>
<c:out value="${list.frstRegistPnttm}"/>
</td>
</tr>
</c:forEach>
<c:if test="${empty list}">
<tr><td colspan="3"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<div class="btn_wrap btn_layout02">
<button class="btnType02" onclick="fncCreate(); return false;" >등록</button>
</div>
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
<!-- //page -->
</div>
</div>
</div>
<!-- //cont -->
<!-- //cont -->
</form:form>
</body>
</html>

View File

@ -0,0 +1,386 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%
/**
* @Class Name : AdjustDeptManagerCreate.jsp
* @Description : 관리자 일정관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.16 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<title>의견예문등록</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
$(document).ready( function() {
$("#filebutton").click(function () {
$("#file_temp").trigger("click");
});
});
function fncRowAdd(){
// 등록가능한 갯수
var len = $("select[name*=exmpCd]:first option").length;
var rowLen = $(".addTb > table > tbody > tr").length;
var obj = $(".addTb > table > tbody > tr:last");
var cloneObj = obj.clone(true);
console.log('cloneObj : ',cloneObj);
if(len == 0 || rowLen >= (len-1)){
alert("등록가능한 항목은 갯수는 " + (len-1) + "개 입니다.");
return false;
}
var exmpCd = cloneObj.find("select[name*=exmpCd]");
var exmpCn = cloneObj.find("textarea[name*=exmpCn]");
exmpCd.val("");
exmpCn.val("");
exmpCd.attr("name", exmpCd.attr("name").replace(/[0-9]/gi, rowLen));
exmpCn.attr("name", exmpCn.attr("name").replace(/[0-9]/gi, rowLen));
obj.after(cloneObj);
}
function fncRowDel(){
var rowLen = $(".addTb > table > tbody > tr").length;
if(rowLen == 1){
alert("더이상 삭제할 수 없습니다.");
return false;
}
$(".addTb > table > tbody > tr:last").remove();
}
// function fncSave(){
// var exmpCcTy = "<c:out value='${mgrInfo.exmpCcTy}' />";
// if(exmpCcTy != ''){
// saveProcess();
// }else{
// $.ajax({
// type: "POST",
// url: "/kccadr/adjPgrMgr/exmp/existsExmpManagerDataCheck.do",
// data: JSON.stringify({exmpCcTy : 0
// ,codeId : $('#codeId').val()}),
// dataType:'json',
// async: false,
// processData: false,
// contentType: "application/json",
// cache: false,
// success: function (data) {
// if(data.status == "OK"){
// saveProcess();
// }else{
// alert(data.message);
// return false;
// }
// },
// error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
// });
// }
// }
function saveProcess(){
if(!validation()){
return false;
}
if(confirm("해당내용을 저장 하시겠습니까?")){
var data = new FormData(document.getElementById("createForm"));
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type:"POST",
url: "/kccadr/adjPgrMgr/exmp/insertExmpAppManager.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
alert(returnData.data);
if(data.status == "OK"){
fncDetail();
}
},
error:function(request , status, error){
console.log('request : ', request);
console.log('status : ', status);
console.log('error : ', error);
}
});
}
}
function validation(){
var obj = $(".addTb > table > tbody > tr");
var flag = true;
if($("#exmpTit").val() == ''){
alert("제목을 입력해주세요.");
return flag = false;
}
var validArr = [];
$.each(obj , function(idx, elm){
var cn = $(this).find("textarea[name*=exmpCn]").val();
var textLen = conByteLeng(cn); //예문 입력 내용 Byte 계산 처리
if(cn == ''){
alert("예문내용을 입력해주세요.["+(idx+1)+"]");
return flag = false;
}
if(Number(textLen) > 2000){
alert("예문 내용의 길이는 2000자를 넘을 수 없습니다.");
return flag = false;
}
});
var checkObj = validArr.reduce((accu, curr) => {
accu[curr] = (accu[curr] || 0)+1;
return accu;
}, {});
$.each(checkObj, function(key, value){
if(parseInt(value) > 1){
alert("동일한 항목을 중복으로 등록하실 수 없습니다.");
return flag = false;
}
});
return flag;
}
function fncGoList(){
var varFrom = document.getElementById("createForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpOpinionManagerList.do'/>";
varFrom.submit();
}
function fncDetail(){
var varFrom = document.getElementById("createForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpOpinionManagerDetail.do'/>";
varFrom.submit();
}
</script>
<style>
#exmpTit{width: 95%}
</style>
</head>
<body>
<form:form id="createForm" name="createForm" commandName="exmpManageVO" method="post">
<input type="hidden" name="atchFileId" value="<c:out value='${mgrInfo.atchFileId}'/>"/>
<input type="hidden" name="limitcount" value="3" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="searchCondition" value="<c:out value='${exmpManageVO.searchCondition}'/>"/>
<input type="hidden" name="searchKeyword" value="<c:out value='${exmpManageVO.searchKeyword}'/>"/>
<input type="hidden" name="pageIndex" value="<c:out value='${exmpManageVO.pageIndex}'/>"/>
<input type="hidden" name="codeId" id="codeId" value="<c:out value="${exmpManageVO.codeId}" />" />
<input type="hidden" name="exmpCcTy" id="exmpCcTy" value="" />
<!-- <input type="hidden" name="exmpTit" value="답변서예문" /> -->
<!-- <input type="hidden" name="allrowFileExtsn" value="JPG,GIF,PNG,BMP" /> --><!-- 허용 확장자 -->
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>의견예문등록</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><p>조정진행관리</p></li>
<li><p>의견예문관리</p></li>
<li><span class="cur_nav">의견예문등록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<p class="tb_tit">의견</p>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 150px">
<col style="width: auto;">
<col style="width: 150px">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>제목</th>
<td>
<input type="text" placeholder="제목을 입력해주세요." name="exmpTit" id="exmpTit" value="<c:out value='${mgrInfo.exmpTit}' />">
</td>
<!-- <th>저작물종류</th> -->
<!-- <td> -->
<%-- <c:choose> --%>
<%-- <c:when test="${not empty mgrInfo}"> --%>
<%-- <kc:code codeId="CC002" code="${mgrInfo.exmpCcTy}"/> --%>
<%-- <input type="hidden" name="exmpCcTy" value="<c:out value='${mgrInfo.exmpCcTy}'/>"/> --%>
<%-- </c:when> --%>
<%-- <c:otherwise> --%>
<%-- <kc:select codeId="CC002" name="exmpCcTy" id="exmpCcTy" defaultText="선택" defaultValue="" selectedValue="${mgrInfo.exmpCcTy}"/> --%>
<%-- </c:otherwise> --%>
<%-- </c:choose> --%>
<!-- </td> -->
</tr>
<tr>
<th><span class="">첨부파일</span></th>
<td class="upload_area" colspan="3">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btnType01 btn_add_file">파일 첨부하기</button>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: 60%;">
<col style="width: auto;">
<col style="width: 20%;">
<col style="width: 10%;">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap fileAfter file_list_div">
<table>
<colgroup>
<col style="width: 60%">
<col style="width: 10%">
<col style="width: 20%">
<col style="width: 10%">
</colgroup>
<thead>
<!-- <th>
<input type="checkbox" id="all_check"><label for="all_check"></label>
</th> -->
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_<c:out value='${fileList.atchFileId}' />_<c:out value='${fileList.fileSn}' /> uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="<c:out value='${fileList.fileSize}' />">
<td class="td_filename">
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
<span class="file_name_text"><c:out value='${fileList.orignlFileNm}' /></span>
</td>
<td class="td_filesort">
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
</td>
<td class="td_filesize">
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('<c:out value='${fileList.atchFileId}' />', '<c:out value='${fileList.fileSn}' />'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<div class="tb_tit">
<p>예문내용</p>
<!-- <div class="btn_wrap"> -->
<!-- <button type="button" class="btn_plus" onclick="fncRowAdd(); return false;"><i></i></button> -->
<!-- <button type="button" class="btn_minus" onclick="fncRowDel(); return false;"><i></i></button> -->
<!-- </div> -->
</div>
<div class="list tbType01 addTb">
<table>
<colgroup>
<%-- <col style="width: 27%"> --%>
<col style="width: auto">
</colgroup>
<thead>
<tr>
<!-- <th>항목</th> -->
<th>예문내용</th>
</tr>
</thead>
<tbody>
<c:choose>
<c:when test="${fn:length(list) eq 0}">
<tr>
<!-- <td> -->
<%-- <kc:select codeId="CC040" name="exmpList[0].exmpCd" id="test" defaultText="선택" defaultValue="" selectedValue="" css="style='width:200px; height:38px;'"/> --%>
<!-- </td> -->
<td>
<textarea name="exmpList[0].exmpCn" placeholder="예문을 입력해주세요." style="resize: none; width:96%; margin: 10px 0;"></textarea>
</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<!-- <td> -->
<%-- <kc:select codeId="CC040" name="exmpList[${status.index}].exmpCd" defaultText="선택" defaultValue="" selectedValue="${list.exmpCd}" css="style='width:200px; height:38px;'"/> --%>
<!-- </td> -->
<td>
<textarea name="exmpList[<c:out value='${status.index}' />].exmpCn" placeholder="예문을 입력해주세요." style="resize: none; width:96%; margin: 10px 0;"><c:out value='${list.exmpCn}' /></textarea>
</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button class="btnType06" onclick="saveProcess(); return false;">저장</button>
<button class="btnType03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,151 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%pageContext.setAttribute("crlf", "\r\n"); %>
<%
/**
* @Class Name : AdjustDeptManagerCreate.jsp
* @Description : 관리자 일정관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.16 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<title>예문관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
function fn_egov_downFile(atchFileId, fileSn){
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
}
function fncGoList(){
var varFrom = document.getElementById("detailForm");
varFrom.exmpCcTy.value = '';
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpOpinionManagerList.do'/>";
varFrom.submit();
}
function fncEdit(){
var varFrom = document.getElementById("detailForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpOpinionManagerModify.do'/>";
varFrom.submit();
}
</script>
</head>
<body>
<form:form id="detailForm" name="detailForm" commandName="exmpManageVO" method="post">
<input type="hidden" name="exmpCcTy" value="<c:out value='${mgrInfo.exmpCcTy}'/>"/>
<input type="hidden" name="searchCondition" value="<c:out value='${exmpManageVO.searchCondition}'/>"/>
<input type="hidden" name="searchKeyword" value="<c:out value='${exmpManageVO.searchKeyword}'/>"/>
<input type="hidden" name="pageIndex" value="<c:out value='${exmpManageVO.pageIndex}'/>"/>
<input type="hidden" name="codeId" value="<c:out value="${exmpManageVO.codeId}" />" />
<input type="hidden" name="exmpMgrId" value="<c:out value="${exmpManageVO.exmpMgrId}" />" />
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>의견예문상세</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><p>조정진행관리</p></li>
<li><p>의견예문관리</p></li>
<li><span class="cur_nav">의견예문상세</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<p class="tb_tit">의견</p>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 150px">
<col style="width: auto;">
<col style="width: 150px">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>제목</th>
<td>
<c:out value='${mgrInfo.exmpTit}' />
</td>
</tr>
<c:if test="${not empty fileList }">
<tr>
<th><span class="">첨부파일</span></th>
<td class="upload_area" colspan="3">
<ul class="file_list">
<%--<c:import url="/web/kccadr/kccadrCom/adjstFileDownloadBasicInfo.do"/>--%>
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<li><a href="javascript:fn_egov_downFile('<c:out value='${fileList.atchFileId}' />','<c:out value='${fileList.fileSn}' />')" title="다운로드"><c:out value='${fileList.orignlFileNm}' /></a></li>
</c:forEach>
</ul>
</td>
</tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<div class="tb_tit">
<p>예문</p>
<%--<div class="btn_wrap">
<button type="button" class="btn_plus" onclick="fncRowAdd(); return false;"><i></i></button>
<button type="button" class="btn_minus" onclick="fncRowDel(); return false;"><i></i></button>
</div>--%>
</div>
<div class="list tbType01 addTb">
<table>
<colgroup>
<col style="width: auto">
</colgroup>
<thead>
<tr>
<th>예문내용</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td style="text-align: left; line-height: 30px; padding: 10px;">
<c:out value="${fn:replace(list.exmpCn, crlf , '<br/>')}" escapeXml="false" />
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button class="btnType06" onclick="fncEdit(); return false;">수정</button>
<button class="btnType03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,357 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%
/**
* @Class Name : AdjustDeptManagerCreate.jsp
* @Description : 관리자 일정관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.16 김봉호 최초 생성
* @author 김봉호
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<title>의견예문수정</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
$(document).ready( function() {
$("#filebutton").click(function () {
$("#file_temp").trigger("click");
});
});
function fncRowAdd(){
// 등록가능한 갯수
var len = $("select[name*=exmpCd]:first option").length;
var rowLen = $(".addTb > table > tbody > tr").length;
var obj = $(".addTb > table > tbody > tr:last");
var cloneObj = obj.clone(true);
if(len == 0 || rowLen >= (len-1)){
alert("등록가능한 항목은 갯수는 " + (len-1) + "개 입니다.");
return false;
}
var exmpCd = cloneObj.find("select[name*=exmpCd]");
var exmpCn = cloneObj.find("textarea[name*=exmpCn]");
exmpCd.val("");
exmpCn.val("");
exmpCd.attr("name", exmpCd.attr("name").replace(/[0-9]/gi, rowLen));
exmpCn.attr("name", exmpCn.attr("name").replace(/[0-9]/gi, rowLen));
obj.after(cloneObj);
}
function fncRowDel(){
var rowLen = $(".addTb > table > tbody > tr").length;
if(rowLen == 1){
alert("더이상 삭제할 수 없습니다.");
return false;
}
$(".addTb > table > tbody > tr:last").remove();
}
function fn_modifyBtn(){
var exmpCcTy = "<c:out value='${mgrInfo.exmpCcTy}' />";
if(exmpCcTy != ''){
saveProcess();
}else{
$.ajax({
type: "POST",
url: "/kccadr/adjPgrMgr/exmp/existsExmpManagerDataCheck.do",
data: JSON.stringify({exmpCcTy : $("#exmpCcTy").val()}),
dataType:'json',
async: false,
processData: false,
contentType: "application/json",
cache: false,
success: function (returnData) {
if(returnData.status == "OK"){
saveProcess();
}else{
alert(returnData.data);
return false;
}
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function fn_modifyBtn(){
if(!validation()){
return false;
}
if(confirm("해당내용을 수정 하시겠습니까?")){
var data = new FormData(document.getElementById("modifyForm"));
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type:"POST",
url: "/kccadr/adjPgrMgr/exmp/updateExmpManager.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
if(returnData.status == "OK"){
alert("정상적으로 등록되었습니다.");
fncDetail();
}
},
error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
}
function validation(){
var obj = $(".addTb > table > tbody > tr");
var flag = true;
if($("#exmpTit").val() == ''){
alert("제목을 입력해주세요.");
return flag = false;
}
if($("#exmpCcTy").val() == ''){
alert("저작물을 선택해주세요.");
return flag = false;
}
var validArr = [];
$.each(obj , function(idx, elm){
var cd = $(this).find("select[name*=exmpCd]").val();
var cn = $(this).find("textarea[name*=exmpCn]").val();
validArr[idx] = cd;
var textLen = conByteLeng(cn); //예문 입력 내용 Byte 계산 처리
if(cd == ''){
alert("항목을 선택해주세요.["+(idx+1)+"]");
return flag = false;
}
if(cn == ''){
alert("예문내용을 입력해주세요.["+(idx+1)+"]");
return flag = false;
}
if(Number(textLen) > 2000){
alert("예문 내용의 길이는 2000자를 넘을 수 없습니다.");
return flag = false;
}
});
var checkObj = validArr.reduce((accu, curr) => {
accu[curr] = (accu[curr] || 0)+1;
return accu;
}, {});
$.each(checkObj, function(key, value){
if(parseInt(value) > 1){
alert("동일한 항목을 중복으로 등록하실 수 없습니다.");
return flag = false;
}
});
return flag;
}
function fncGoList(){
var varFrom = document.getElementById("modifyForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpOpinionManagerList.do'/>";
varFrom.submit();
}
function fncDetail(){
var varFrom = document.getElementById("modifyForm");
varFrom.action = "<c:url value='/kccadr/adjPgrMgr/exmp/exmpOpinionManagerDetail.do'/>";
varFrom.submit();
}
</script>
<style>
#exmpTit{width: 95%}
</style>
</head>
<body>
<form:form id="modifyForm" name="modifyForm" commandName="exmpManageVO" method="post">
<input type="hidden" name="atchFileId" value="<c:out value='${mgrInfo.atchFileId}'/>"/>
<input type="hidden" name="limitcount" value="3" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="searchCondition" value="<c:out value='${exmpManageVO.searchCondition}'/>"/>
<input type="hidden" name="searchKeyword" value="<c:out value='${exmpManageVO.searchKeyword}'/>"/>
<input type="hidden" name="pageIndex" value="<c:out value='${exmpManageVO.pageIndex}'/>"/>
<input type="hidden" name="searchSortOrd" value="<c:out value="${exmpManageVO.searchSortOrd}" />"/>
<input type="hidden" name="exmpMgrId" value="<c:out value='${mgrInfo.exmpMgrId}' />">
<input type="hidden" name="codeId" id="codeId" value="<c:out value='${mgrInfo.codeId}' />">
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>의견예문수정</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><p>조정진행관리</p></li>
<li><p>의견예문관리</p></li>
<li><span class="cur_nav">의견예문수정</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<p class="tb_tit">의견</p>
<div class="tbType02">
<table>
<colgroup>
<col style="width: 150px">
<col style="width: auto;">
<col style="width: 150px">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>제목</th>
<td>
<input type="text" placeholder="제목을 입력해주세요." name="exmpTit" id="exmpTit" value="<c:out value='${mgrInfo.exmpTit}' />">
</td>
</tr>
<tr>
<th><span class="">첨부파일</span></th>
<td class="upload_area" colspan="3">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btnType01 btn_add_file">파일 첨부하기</button>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: 60%;">
<col style="width: auto;">
<col style="width: 20%;">
<col style="width: 10%;">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap fileAfter file_list_div">
<table>
<colgroup>
<col style="width: 60%">
<col style="width: 10%">
<col style="width: 20%">
<col style="width: 10%">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_<c:out value='${fileList.atchFileId}' />_<c:out value='${fileList.fileSn}' /> uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="<c:out value='${fileList.fileSize}' />">
<td class="td_filename">
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
<span class="file_name_text"><c:out value='${fileList.orignlFileNm}' /></span>
</td>
<td class="td_filesort">
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
</td>
<td class="td_filesize">
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('<c:out value='${fileList.atchFileId}' />', '<c:out value='${fileList.fileSn}' />'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<div class="tb_tit">
<p>예문</p>
<!-- <div class="btn_wrap"> -->
<!-- <button type="button" class="btn_plus" onclick="fncRowAdd(); return false;"><i></i></button> -->
<!-- <button type="button" class="btn_minus" onclick="fncRowDel(); return false;"><i></i></button> -->
<!-- </div> -->
</div>
<div class="list tbType01 addTb">
<table>
<colgroup>
<col style="width: auto">
</colgroup>
<thead>
<tr>
<th>예문내용</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<input type="hidden" name="exmpList[${status.index}].exmpDtlId" value="<c:out value='${list.exmpDtlId}' />">
<td>
<textarea name="exmpList[<c:out value='${status.index}' />].exmpCn" placeholder="예문을 입력해주세요." style="resize: none; width:96%; margin: 10px 0;"><c:out value='${list.exmpCn}' /></textarea>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button class="btnType06" onclick="fn_modifyBtn(); return false;">수정</button>
<button class="btnType03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,181 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt_rt" %>
<%
/**
* @Class Name : AdjustDeptManagerList.jsp
* @Description : 결재 및 대결 관리 목록
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2022.10.11 이호영 최초 생성
* @author 이호영
* @since 2021.08.21
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
$(document).ready(function(){
});
function fn_Create(){
var goForm = document.goForm;
//등록 URL 입력 란
goForm.action = "";
//goForm.action = "<c:url value='/kccadr/adjReqMgOff/adjReqMgrPastBasicRegist.do' />";
goForm.submit();
}
</script>
<title>결제 및 대결 관리 목록</title>
</head>
<body>
<form id="listForm" name="listForm" method="post">
<input type="hidden" name="pageIndex" value="<c:out value='${insteadOfPaymentManageVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${insteadOfPaymentManageVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${insteadOfPaymentManageVO.searchSortOrd}" />" />
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>결재 및 대결 관리 목록</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>조정진행관리</p>
</li>
<li><span class="cur_nav">결재 및 대결 관리 목록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_top -->
<div class="list_top">
<div class="list_util">
<div class="detail_search">
<ul>
<li>
<p class="tit_text">검색조건</p>
<select name="searchCondition2" id="searchCondition" title="선택">
<option value="">선택</option>
<option value="10">검색조건</option>
<option value="20">검색조건</option>
<option value="30">검색조건</option>
</select>
<input type="text" class="search_input" id="searchKeyword" name="searchKeyword" value="${insteadOfPaymentManageVO.searchKeyword }" placeholder="검색어를 입력하세요.">
</li>
<!-- <li> -->
<!-- <p class="tit_text">결재상태</p> -->
<!-- <div class="check_wrap"> -->
<%-- <c:set var="searchStatus" value="${fn:join(insteadOfPaymentManageVO.searchStatusArr, ',') }"/> --%>
<%-- <span><input type="checkbox" ${fn:indexOf(searchStatus, '99') ne -1 ? 'checked' : ''} value="99" name="searchStatusArr" id="searchSatus1" ><label for="searchSatus1">전체</label> </span> --%>
<%-- <span><input type="checkbox" ${fn:indexOf(searchStatus, '01') ne -1 ? 'checked' : ''} value="01" name="searchStatusArr" id="searchSatus2" ><label for="searchSatus2">결재대기</label></span> --%>
<%-- <span><input type="checkbox" ${fn:indexOf(searchStatus, '02') ne -1 ? 'checked' : ''} value="02" name="searchStatusArr" id="searchSatus3" ><label for="searchSatus3">결재진행</label></span> --%>
<%-- <span><input type="checkbox" ${fn:indexOf(searchStatus, '03') ne -1 ? 'checked' : ''} value="03" name="searchStatusArr" id="searchSatus4" ><label for="searchSatus4">결재완료</label></span> --%>
<%-- <span><input type="checkbox" ${fn:indexOf(searchStatus, '04') ne -1 ? 'checked' : ''} value="04" name="searchStatusArr" id="searchSatus5" ><label for="searchSatus5">반려</label></span> --%>
<!-- </div> -->
<!-- </li> -->
<li>
<p class="tit_text">결재일자</p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<div class="radio_wrap">
<%-- <span><input ${insteadOfPaymentManageVO.searchMonth eq '1' ? 'checked' : ''} value="1" type="radio" name="searchMonth" id="month1" ><label for="month1">1개월</label></span> --%>
<%-- <span><input ${insteadOfPaymentManageVO.searchMonth eq '3' ? 'checked' : ''} value="3" type="radio" name="searchMonth" id="month3"><label for="month3">3개월</label></span> --%>
<%-- <span><input ${insteadOfPaymentManageVO.searchMonth eq '6' ? 'checked' : ''} value="6" type="radio" name="searchMonth" id="month6"><label for="month6">6개월</label></span> --%>
<%-- <span><input ${insteadOfPaymentManageVO.searchMonth eq '99' ? 'checked' : ''} value="99" type="radio" name="searchMonth" id="monthEtc"><label for="monthEtc">기간지정</label></span> --%>
<div class="sel_date" id="sel_date">
<input type="text" class="startDate inp" title="검색시작일" id="startDate01" name="searchStartDt" value="${insteadOfPaymentManageVO.searchStartDt}" data-datecontrol="true" ${insteadOfPaymentManageVO.searchMonth ne '99' ? 'readonly' : ''}>
<div class="calendar_in" id="calendarName_startDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('startDate01-lry','',this)"class="btn_cal" ${insteadOfPaymentManageVO.searchMonth ne '99' ? 'disabled' : ''} ></button>
<div id="startDate01-lry" class="calendarPop" style="display: none;">
<iframe id="startDate01-ifrm" name="startDate01-ifrm" class="calendar-frame" src="/kccadrPb/adm/calendar.html" title=" 달력 팝업" frameborder="0" scrolling="no"></iframe>
</div>
</div> ~
<input type="text" class="endDate inp" title="검색종료일" id="endDate" name="searchEndDt" value="${insteadOfPaymentManageVO.searchEndDt}" data-datecontrol="true" ${insteadOfPaymentManageVO.searchMonth ne '99' ? 'readonly' : ''}>
<div class="calendar_in" id="calendarName_endDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('endDate-lry','',this)" class="btn_cal" ${insteadOfPaymentManageVO.searchMonth ne '99' ? 'disabled' : ''}></button>
<div id="endDate-lry" class="calendarPop" style="display: none;">
<iframe id="endDate-ifrm" name="endDate-ifrm" class="calendar-frame" src="/kccadrPb/adm/calendar.html" title=" 달력 팝업" frameborder="0" scrolling="no"></iframe>
</div>
</div>
</div>
</div>
<button class="btnType07 btn_search" onclick="fncGoList(); return false;">검색</button>
</li>
</ul>
</div>
</div>
</div>
<!-- //list_top -->
<!-- list -->
<div class="list tbType01">
<table>
<colgroup>
<col style="width: 20%;">
<col style="width: 15%;">
<col style="width: 15%;">
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 15%;">
</colgroup>
<thead>
<tr>
<th>결재구분</th>
<th>조정번호</th>
<th>신청내용</th>
<th>결재요청일</th>
<th>결재완료일</th>
<th>결재진행</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list }" varStatus="status">
<!-- 추후 데이터 생기면 개발 -->
<!-- 추후 데이터 생기면 개발 -->
<!-- 추후 데이터 생기면 개발 -->
</c:forEach>
<tr><td colspan="6"><spring:message code="common.nodata.msg" /></td></tr>
</tbody>
</table>
</div>
<!-- //list -->
<div class="btn_wrap btn_layout02">
<button class="btnType02" onclick="fn_Create(); return false;" >등록</button>
</div>
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
<!-- //page -->
</div>
</div>
</div>
<!-- //cont -->
</form>
<form id="goForm" name="goForm" action="" method="post">
<input type="hidden" id="adrSeq" name="adrSeq" value="" />
</form>
</body>
</html>

View File

@ -0,0 +1,189 @@
<%--
Class Name : EgovMainView.jsp
Description : 메인화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2011.08.31 JJY 경량환경 버전 생성
author : 실행환경개발팀 JJY
since : 2011.08.31
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ page import="java.util.Date" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="ko" >
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>관리자 대시보드</title>
<script src="<c:url value='/js/jquery.js' />"></script>
<!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.js"></script> -->
<%-- <script src="<c:url value='/js/new_main.js' />"></script> --%>
<link rel="stylesheet" href="/kccadrPb/adm/css/dashboard.css">
<script type="text/javaScript" language="javascript">
//상세화면 - 조정진행관리, 조정종결관리 구분
function fncGoDetail(adrSeq, adrSn, type) {
if(type == 'C'){ //조정 처리 현황
var listForm = document.closeListListForm ;
listForm.adrSeq.value = adrSeq;
listForm.adrSn.value = adrSn;
listForm.action = "/kccadr/adjclsmgr/adjCloseMangeDetail.do";
listForm.submit();
}else{
if(type == 'R'){ //최근 조정 접수
var listForm = document.receiptListForm ;
}else{ //조정 진행 사건
var listForm = document.progressListForm ;
}
listForm.adrSeq.value = adrSeq;
listForm.adrSn.value = adrSn;
listForm.action = "<c:url value='/kccadr/adjPgrMgr/apm/apmDetail.do'/>";
listForm.submit();
}
}
</script>
</head>
<body>
<div class="cont_wrap">
<div class="box">
<!-- <div class="cont_tit"> -->
<!-- <h2>대시보드(위원장, 부서장)</h2> -->
<!-- <ul class="cont_nav"> -->
<!-- <li class="home"><a href="/"><i></i></a></li> -->
<!-- <li> -->
<!-- <p>xxx</p> -->
<!-- </li> -->
<!-- <li><span class="cur_nav">대시보드</span></li> -->
<!-- </ul> -->
<!-- </div> -->
<div class="cont leader_cont">
<div class="tb_tit">
<p>나의 결재 요청</p>
<div class="btn_wrap">
<button type="button" class="btn_plus" title="더보기"><i></i></button>
</div>
</div>
<div class="list tbType01">
<table>
<colgroup>
<col style="width:10%;" />
<col style="width:15%;" />
<col style="width:auto;" />
<col style="width:15%;" />
<col style="width:15%;" />
<col style="width:15%;" />
</colgroup>
<thead>
<tr>
<th>결재구분</th>
<th>조정번호</th>
<th>신청내용</th>
<th>결재요청일</th>
<th>결재완료일</th>
<th>결재이동</th>
</tr>
</thead>
<tbody>
<tr>
<td>접수결재</td>
<td>2022조정075</td>
<td>컴퓨터프로그램</td>
<td>2022-09-01 18:00</td>
<td>2022-09-01 18:00</td>
<td><button class="status_req">결재하기</button></td>
</tr>
<tr>
<td>접수결재</td>
<td>2022조정074</td>
<td>편집저작물</td>
<td>2022-09-01 18:00</td>
<td>2022-09-01 18:00</td>
<td>결재진행(위원장)</td>
</tr>
<tr>
<td>접수결재</td>
<td>2022조정073</td>
<td>편집저작물</td>
<td>2022-09-01 18:00</td>
<td>2022-09-01 18:00</td>
<td>결재완료</td>
</tr>
</tbody>
</table>
</div>
<div class="tb_tit">
<p>사건 진행 현황</p>
<div class="btn_wrap">
<button type="button" class="btn_plus" title="더보기"><i></i></button>
</div>
</div>
<div class="list tbType01">
<table>
<colgroup>
<col style="width:13%;" />
<col style="width:15%;" />
<col style="width:13%;" />
<col style="width:auto;" />
<col style="width:13%;" />
<col style="width:15%;" />
</colgroup>
<thead>
<tr>
<th>신청일자</th>
<th>조정번호</th>
<th>신청인</th>
<th>신청내용</th>
<th>조정부</th>
<th>조정상태</th>
</tr>
</thead>
<tbody>
<tr>
<td>2022-09-01</td>
<td>2022조정075</td>
<td>홍길동</td>
<td>컴퓨터프로그램</td>
<td>합의5부</td>
<td>기일통지서승인</td>
</tr>
<tr>
<td>2022-09-01</td>
<td>2022조정074</td>
<td>홍길동</td>
<td>편집저작물</td>
<td>합의5부</td>
<td>접수결재요청</td>
</tr>
<tr>
<td>2022-09-01</td>
<td>2022조정073</td>
<td>홍길동</td>
<td>편집저작물</td>
<td>합의5부</td>
<td>배당결재요청</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@ -100,6 +100,11 @@ function goExpPage(num) {
{//접수페이지 {//접수페이지
goUrl = "<c:url value='/web/kccadr/adjstExp/adjstReqRegistInformation.do'/>"; goUrl = "<c:url value='/web/kccadr/adjstExp/adjstReqRegistInformation.do'/>";
} }
else if(num==3)
{// 진행사항
goUrl = "<c:url value='/web/kccadr/adjstExp/adjstIncidentList.do'/>";
frm.searchStatus.value = '';
}
else if(num==4) else if(num==4)
{// 열랍 발급 {// 열랍 발급
goUrl = "<c:url value='/web/kccadr/adjstExp/adjstIncidentList.do'/>"; goUrl = "<c:url value='/web/kccadr/adjstExp/adjstIncidentList.do'/>";
@ -111,7 +116,6 @@ function goExpPage(num) {
} }
else else
{ {
// return false;
goUrl = "<c:url value='/web/kccadr/adjstExpDetail/adjstReqStatusDetail.do' />" goUrl = "<c:url value='/web/kccadr/adjstExpDetail/adjstReqStatusDetail.do' />"
} }

View File

@ -172,7 +172,7 @@ p+.list_util{width: auto;}
.btn_wrap .btn_check i{width: 20px; height: 20px; display: inline-block; background-image: url(/kccadrPb/adm/image/btn_check.png); vertical-align: middle; margin-top: -5px;} .btn_wrap .btn_check i{width: 20px; height: 20px; display: inline-block; background-image: url(/kccadrPb/adm/image/btn_check.png); vertical-align: middle; margin-top: -5px;}
/* //btn */ /* //btn */
.cont .list{width: 100%; min-height: 465px; border-top: 1px solid #000; border-bottom: 1px solid #cccccc; overflow: hidden;} .cont .list{width: 100%; border-top: 1px solid #000; border-bottom: 1px solid #cccccc; overflow: hidden;}
.tb_tit{font-size: 22px; padding-left: 20px; position: relative; font-weight: 500; margin-bottom: 18px; margin-top: 60px; display: flex; justify-content: space-between; align-items: center;} .tb_tit{font-size: 22px; padding-left: 20px; position: relative; font-weight: 500; margin-bottom: 18px; margin-top: 60px; display: flex; justify-content: space-between; align-items: center;}
.tb_tit:first-child{margin-top: 0;} .tb_tit:first-child{margin-top: 0;}