2022-11-15 12:12 감리 대응 수정(조정위원 의견 관리 추가)

This commit is contained in:
myname 2022-11-15 12:13:01 +09:00
parent e5a1b7b71a
commit f6769e830f
7 changed files with 829 additions and 178 deletions

View File

@ -11,10 +11,14 @@ public interface ExmpAppManageService {
Integer selectExmpAppManagerCount(ExmpManageVO exmpManageVO) throws Exception;
Integer selectExmpOpinionsManagerCount(ExmpManageVO exmpManageVO) throws Exception;
Integer selectExmpOpinionsMgrCount(ExmpManageVO exmpManageVO) throws Exception;
List<ExmpManageVO> selectExmpAppManagerList(ExmpManageVO exmpManageVO) throws Exception;
List<ExmpManageVO> selectExmpOpinionsManagerList(ExmpManageVO exmpManageVO) throws Exception;
List<ExmpManageVO> selectExmpOpinionsMgrList(ExmpManageVO exmpManageVO) throws Exception;
Map<String, Object> selectExmpAppManagerInfo(ExmpManageVO exmpManageVO) throws Exception;

View File

@ -1,12 +1,11 @@
package kcc.kccadr.adjPgrMgr.exmp.app.service.impl;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.kccadr.adjPgrMgr.adjDept.service.AdjustDeptManageVO;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import java.util.List;
import org.springframework.stereotype.Repository;
import java.util.List;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
@Repository("ExmpAppManageDAO")
public class ExmpAppManageDAO extends EgovAbstractDAO {
@ -19,6 +18,10 @@ public class ExmpAppManageDAO extends EgovAbstractDAO {
return (Integer) select("ExmpAppManageDAO.selectExmpOpinionsManagerCount", exmpManageVO);
}
public Integer selectExmpOpinionsMgrCount(ExmpManageVO exmpManageVO) throws Exception {
return (Integer) select("ExmpAppManageDAO.selectExmpOpinionsMgrCount", exmpManageVO);
}
public List<ExmpManageVO> selectExmpManagerList(ExmpManageVO exmpManageVO) throws Exception {
return (List<ExmpManageVO>) list("ExmpAppManageDAO.selectExmpManagerList", exmpManageVO);
}
@ -27,6 +30,10 @@ public class ExmpAppManageDAO extends EgovAbstractDAO {
return (List<ExmpManageVO>) list("ExmpAppManageDAO.selectExmpOpinionsManagerList", exmpManageVO);
}
public List<ExmpManageVO> selectExmpOpinionsMgrList(ExmpManageVO exmpManageVO) throws Exception {
return (List<ExmpManageVO>) list("ExmpAppManageDAO.selectExmpOpinionsMgrList", exmpManageVO);
}
public Integer deleteExmpCdList(ExmpManageVO exmpManageVO) throws Exception {
return delete("ExmpAppManageDAO.deleteExmpCdList", exmpManageVO);
}

View File

@ -45,6 +45,11 @@ public class ExmpAppManageServiceImpl implements ExmpAppManageService {
return exmpAppManageDAO.selectExmpOpinionsManagerCount(exmpManageVO);
}
@Override
public Integer selectExmpOpinionsMgrCount(ExmpManageVO exmpManageVO) throws Exception {
return exmpAppManageDAO.selectExmpOpinionsMgrCount(exmpManageVO);
}
@Override
public List<ExmpManageVO> selectExmpAppManagerList(ExmpManageVO exmpManageVO) throws Exception {
return exmpAppManageDAO.selectExmpManagerList(exmpManageVO);
@ -55,6 +60,11 @@ public class ExmpAppManageServiceImpl implements ExmpAppManageService {
return exmpAppManageDAO.selectExmpOpinionsManagerList(exmpManageVO);
}
@Override
public List<ExmpManageVO> selectExmpOpinionsMgrList(ExmpManageVO exmpManageVO) throws Exception {
return exmpAppManageDAO.selectExmpOpinionsMgrList(exmpManageVO);
}
@Override
public Map<String, Object> selectExmpAppManagerInfo(ExmpManageVO exmpManageVO) throws Exception {

View File

@ -1,174 +1,184 @@
package kcc.kccadr.adjPgrMgr.exmp.cmm;
import kcc.kccadr.adjPgrMgr.cclt.service.ConciliatorManageVO;
import java.util.List;
/**
*
* @author : 이호영
* @fileName : ExmpManageVO.java
* @date : 2022.10.17
* @description :
* @exmp_cd
* - 01 : 신청취지
* - 02 : 신청원인
* - 03 : 의견
* - 04 : 답변서
* - 05 : 사건진행도움말
* @exmpCcTy
* - 의견일 경우 (exmp_cd == 03)
* exmpCcTy == CC045
* - 기일통지서 "10";
* - 기일조서 "20";
* - 조정권고안 "30";
* - 조정조서 "40";
* - 취하종결통보서 "50";
* - 직권조정결정서 "60";
* - 불성립종결통보서 "70";
* - 확정증명원 "80";
*
*
* ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
* 2022.10.17 이호영 최초 생성
*
*
*
*/
public class ExmpManageVO extends ConciliatorManageVO {
/**
*
*/
private static final long serialVersionUID = -4650759575042493292L;
List<ExmpManageVO> exmpList;
/* 예문 관리 PK */
private String exmpMgrId;
/* 예문 관리 상세 PK */
private String exmpDtlId;
private String exmpCcTy;
private String ccTyNm;
private String exmpTit;
private String ccTy;
private String exmpNms;
private String exmpCd;
private String exmpCn;
private String atchFileId;
private String useYn;
public List<ExmpManageVO> getExmpList() {
return exmpList;
}
public void setExmpList(List<ExmpManageVO> exmpList) {
this.exmpList = exmpList;
}
public String getExmpMgrId() {
return exmpMgrId;
}
public void setExmpMgrId(String exmpMgrId) {
this.exmpMgrId = exmpMgrId;
}
public String getExmpDtlId() {
return exmpDtlId;
}
public void setExmpDtlId(String exmpDtlId) {
this.exmpDtlId = exmpDtlId;
}
public String getExmpCcTy() {
return exmpCcTy;
}
public void setExmpCcTy(String exmpCcTy) {
this.exmpCcTy = exmpCcTy;
}
public String getCcTyNm() {
return ccTyNm;
}
public void setCcTyNm(String ccTyNm) {
this.ccTyNm = ccTyNm;
}
public String getExmpTit() {
return exmpTit;
}
public void setExmpTit(String exmpTit) {
this.exmpTit = exmpTit;
}
public String getCcTy() {
return ccTy;
}
public void setCcTy(String ccTy) {
this.ccTy = ccTy;
}
public String getExmpNms() {
return exmpNms;
}
public void setExmpNms(String exmpNms) {
this.exmpNms = exmpNms;
}
public String getExmpCd() {
return exmpCd;
}
public void setExmpCd(String exmpCd) {
this.exmpCd = exmpCd;
}
public String getExmpCn() {
return exmpCn;
}
public void setExmpCn(String exmpCn) {
this.exmpCn = exmpCn;
}
public String getAtchFileId() {
return atchFileId;
}
public void setAtchFileId(String atchFileId) {
this.atchFileId = atchFileId;
}
public String getUseYn() {
return useYn;
}
public void setUseYn(String useYn) {
this.useYn = useYn;
}
}
package kcc.kccadr.adjPgrMgr.exmp.cmm;
import java.util.List;
import kcc.kccadr.adjPgrMgr.cclt.service.ConciliatorManageVO;
/**
*
* @author : 이호영
* @fileName : ExmpManageVO.java
* @date : 2022.10.17
* @description :
* @exmp_cd
* - 01 : 신청취지
* - 02 : 신청원인
* - 03 : 의견
* - 04 : 답변서
* - 05 : 사건진행도움말
* @exmpCcTy
* - 의견일 경우 (exmp_cd == 03)
* exmpCcTy == CC045
* - 기일통지서 "10";
* - 기일조서 "20";
* - 조정권고안 "30";
* - 조정조서 "40";
* - 취하종결통보서 "50";
* - 직권조정결정서 "60";
* - 불성립종결통보서 "70";
* - 확정증명원 "80";
*
*
* ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
* 2022.10.17 이호영 최초 생성
*
*
*
*/
public class ExmpManageVO extends ConciliatorManageVO {
/**
*
*/
private static final long serialVersionUID = -4650759575042493292L;
List<ExmpManageVO> exmpList;
/* 예문 관리 PK */
private String exmpMgrId;
/* 예문 관리 상세 PK */
private String exmpDtlId;
private String exmpCcTy;
private String ccTyNm;
private String exmpTit;
private String ccTy;
private String exmpNms;
private String exmpCd;
private String exmpCn;
private String atchFileId;
private String useYn;
private String memName;
public List<ExmpManageVO> getExmpList() {
return exmpList;
}
public void setExmpList(List<ExmpManageVO> exmpList) {
this.exmpList = exmpList;
}
public String getExmpMgrId() {
return exmpMgrId;
}
public void setExmpMgrId(String exmpMgrId) {
this.exmpMgrId = exmpMgrId;
}
public String getExmpDtlId() {
return exmpDtlId;
}
public void setExmpDtlId(String exmpDtlId) {
this.exmpDtlId = exmpDtlId;
}
public String getExmpCcTy() {
return exmpCcTy;
}
public void setExmpCcTy(String exmpCcTy) {
this.exmpCcTy = exmpCcTy;
}
public String getCcTyNm() {
return ccTyNm;
}
public void setCcTyNm(String ccTyNm) {
this.ccTyNm = ccTyNm;
}
public String getExmpTit() {
return exmpTit;
}
public void setExmpTit(String exmpTit) {
this.exmpTit = exmpTit;
}
public String getCcTy() {
return ccTy;
}
public void setCcTy(String ccTy) {
this.ccTy = ccTy;
}
public String getExmpNms() {
return exmpNms;
}
public void setExmpNms(String exmpNms) {
this.exmpNms = exmpNms;
}
public String getExmpCd() {
return exmpCd;
}
public void setExmpCd(String exmpCd) {
this.exmpCd = exmpCd;
}
public String getExmpCn() {
return exmpCn;
}
public void setExmpCn(String exmpCn) {
this.exmpCn = exmpCn;
}
public String getAtchFileId() {
return atchFileId;
}
public void setAtchFileId(String atchFileId) {
this.atchFileId = atchFileId;
}
public String getUseYn() {
return useYn;
}
public void setUseYn(String useYn) {
this.useYn = useYn;
}
public String getMemName() {
return memName;
}
public void setMemName(String memName) {
this.memName = memName;
}
}

View File

@ -0,0 +1,321 @@
package kcc.kccadr.adjstOpinionMgr.opinion.web;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import javax.annotation.Resource;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
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.EgovCmmUseService;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.com.utl.fcc.service.EgovStringUtil;
import kcc.kccadr.adjPgrMgr.exmp.app.service.ExmpAppManageService;
import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO;
import kcc.kccadr.adjPgrMgr.ojct.service.OjctMgrService;
import kcc.kccadr.adjPgrMgr.ojct.service.OjctMgrVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
@Controller
public class OpinionMgrController {
// 업무 시스템 이의신청 서비스단
@Resource(name = "OjctMgrService")
private OjctMgrService ojctMgrService;
// eGov 공통코드
@Resource(name = "EgovCmmUseService")
private EgovCmmUseService cmmUseService;
@Resource(name = "EgovFileMngService")
private EgovFileMngService fileService;
// global 프로퍼티
@Resource(name="globalSettings")
protected Properties propertiesService;
//첨부파일 경로, realPath 설정
@Resource(name="EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
// 첨부파일 정보
@Resource(name="EgovFileMngService")
private EgovFileMngService fileMngService;
//암복호화 유틸
@Resource(name = "egovCryptoUtil")
EgovCryptoUtil egovCryptoUtil;
@Resource(name = "ExmpAppManageService")
private ExmpAppManageService exmpAppManageService;
/**
* auth : 우영두
* 전자조정 조정위원 의견관리 목록 화면
* date : 2021.11.29
*/
@RequestMapping("/kccadr/adjstOpinionMgr/adjstOpinionMgrList.do")
public String adjstOpinionMgrList(
//@ModelAttribute("ojctMgrVO") OjctMgrVO ojctMgrVO
@ModelAttribute("exmpManageVO") ExmpManageVO exmpManageVO
, ModelMap model
) throws Exception {
/*
if(ojctMgrVO.getPageUnit() != 10) {
ojctMgrVO.setPageUnit(ojctMgrVO.getPageUnit());
}
if("".equals(ojctMgrVO.getSearchSortCnd())){
ojctMgrVO.setSearchSortCnd("AMM.ADR_NO");
ojctMgrVO.setSearchSortOrd("desc");
}
if(("3".equals(ojctMgrVO.getSearchCondition()) || "4".equals(ojctMgrVO.getSearchCondition())) && StringUtils.isNotBlank(ojctMgrVO.getSearchKeyword())){
ojctMgrVO.setSearchKeyword(egovCryptoUtil.encrypt(ojctMgrVO.getSearchKeyword()));
}
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(ojctMgrVO.getPageIndex());
paginationInfo.setRecordCountPerPage(ojctMgrVO.getPageUnit());
paginationInfo.setPageSize(ojctMgrVO.getPageSize());
ojctMgrVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
ojctMgrVO.setLastIndex(paginationInfo.getLastRecordIndex());
ojctMgrVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
paginationInfo.setTotalRecordCount(ojctMgrService.adjReqMgrOjctListCount(ojctMgrVO));
model.addAttribute("paginationInfo", paginationInfo);
List<OjctMgrVO> list = ojctMgrService.adjReqMgrOjctList(ojctMgrVO);
// 복호화
decryptInfomation(list, null);
model.addAttribute("list", list);
if(("3".equals(ojctMgrVO.getSearchCondition()) || "4".equals(ojctMgrVO.getSearchCondition())) && StringUtils.isNotBlank(ojctMgrVO.getSearchKeyword())){
ojctMgrVO.setSearchKeyword(egovCryptoUtil.decrypt(ojctMgrVO.getSearchKeyword()));
}
*/
LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
//exmpManageVO.setFrstRegisterId(loginVO.getUniqId());
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.setExmpCd("03");
ExmpManageVO exmpManageVOTmp = new ExmpManageVO();
exmpManageVOTmp.setSearchCondition(exmpManageVO.getSearchCondition());
exmpManageVOTmp.setSearchKeyword(exmpManageVO.getSearchKeyword());
exmpManageVOTmp.setExmpCd(exmpManageVO.getExmpCd());
exmpManageVOTmp.setFirstIndex(paginationInfo.getFirstRecordIndex());
exmpManageVOTmp.setLastIndex(paginationInfo.getLastRecordIndex());
exmpManageVOTmp.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
encryptInfomationMemName(exmpManageVOTmp);
List<ExmpManageVO> list = exmpAppManageService.selectExmpOpinionsMgrList(exmpManageVOTmp);
decryptInfomationMemName(list, null);
paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpOpinionsMgrCount(exmpManageVOTmp));
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("list", list);
//return "kccadr/adjPgrMgr/ojct/ojctMgrList";
//return "kccadr/adjstOpinionMgr/opinion/adjstOpinionMgrList";
return "kccadr/adjPgrMgr/opinion/adjstOpinionMgrList";
}
/**
* auth : 우영두
* 전자조정 이의신청 등록 화면
* date : 2021.12.22
*/
@RequestMapping("/kccadr/adjstOpinionMgr/adjstOpinionMgrReg.do")
public String adjReqMgrOjctReg(@ModelAttribute("ojctMgrVO") OjctMgrVO ojctMgrVO, ModelMap model) throws Exception {
//직권조정결정 완료 상태의 사건 번호 리스트 불러오기
ojctMgrVO.setStatCd("306050");
List<OjctMgrVO> list = ojctMgrService.selectAdrReqInfo(ojctMgrVO);
model.addAttribute("list", list);
return "kccadr/adjPgrMgr/ojct/ojctMgrReg";
}
/**
* auth : 우영두
* 전자조정 이의신청 등록 처리
* date : 2021.12.22
*/
@RequestMapping("/kccadr/adjstOpinionMgr/adjstOpinionMgrAjax.do")
public ModelAndView insertCfrmRegAjax(@ModelAttribute("ojctMgrVO") OjctMgrVO ojctMgrVO
,final MultipartHttpServletRequest multiRequest
,ModelMap mode
, RedirectAttributes redirectAttributes) throws Exception {
//로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
if(userId.equals("")) {
modelAndView.addObject("ojctStatus", "loginFail");
return modelAndView;
}
String atchFileId = "";
final Map<String, MultipartFile> files = multiRequest.getFileMap();
if (!files.isEmpty()) {
//조정신청_로 첨부파일 네이밍
List<FileVO> result = fileUtil.parseFileInf(files, "이의 신청_", 0, "", "", "");
atchFileId = fileMngService.insertFileInfs(result);
//첨부파일Id(atchFileId) 해당 VO atchFileId변수에 저장
ojctMgrVO.setAtchFileId(atchFileId);
}
//사용자 유니크 아이디 받아오기
ojctMgrVO.setLastUpdusrId(userId);
ojctMgrVO.setFrstRegisterId(userId);
ojctMgrVO.setAtchFileId(atchFileId);
if(ojctMgrVO.getAdrSeq() != null) {
String[] arrStr = ojctMgrVO.getAdrSeq().replace(",", "").split("%%");
String adrSeq = arrStr[0];
String adrSn = arrStr[1];
ojctMgrVO.setAdrSeq(adrSeq);
ojctMgrVO.setAdrSn(adrSn);
ojctMgrVO.setOjctCd("02");
//이의신청 등록 처리
ojctMgrService.insertOjctMgr(ojctMgrVO);
modelAndView.addObject("ojctStatus", "success");
}else {
modelAndView.addObject("ojctStatus", "fail");
}
return modelAndView;
}
public void decryptInfomation(List<OjctMgrVO> list, OjctMgrVO info){
if(CollectionUtils.isNotEmpty(list)){
for(OjctMgrVO model : list){
model.setRpplNm(egovCryptoUtil.decrypt(model.getRpplNm()));
/*model.setRpplAddr(egovCryptoUtil.decrypt(model.getRpplAddr()));
model.setRpplAddrDtl(egovCryptoUtil.decrypt(model.getRpplAddrDtl()));
model.setRpplPost(egovCryptoUtil.decrypt(model.getRpplPost()));
model.setRpplEmail(egovCryptoUtil.decrypt(model.getRpplEmail()));
model.setRpplPhone(egovCryptoUtil.decrypt(model.getRpplPhone()));
model.setRpplRealAddr(egovCryptoUtil.decrypt(model.getRpplRealAddr()));
model.setRpplRealAddrDtl(egovCryptoUtil.decrypt(model.getRpplRealAddrDtl()));
model.setRpplRealPost(egovCryptoUtil.decrypt(model.getRpplRealPost()));
model.setDepuTyNm(egovCryptoUtil.decrypt(model.getDepuTyNm()));
model.setResPonDentNm(egovCryptoUtil.decrypt(model.getResPonDentNm()));
model.setAppliCantNm(egovCryptoUtil.decrypt(model.getAppliCantNm()));*/
//피신청인 정보가 여러개 일경우
/*if(StringUtils.isNotBlank(model.getResPonDentNms())){
String[] resNms = model.getResPonDentNms().split("\\|");
if(resNms.length > 1 ){
List<String> names = new ArrayList<>();
for(String name : resNms){
names.add(egovCryptoUtil.decrypt(name));
}
model.setResPonDentNm(String.join(",", names));
}else{
model.setResPonDentNm(egovCryptoUtil.decrypt(resNms[0]));
}
}*/
}
}
if(info != null){
info.setRpplNm(egovCryptoUtil.decrypt(info.getRpplNm()));
/*info.setRpplAddr(egovCryptoUtil.decrypt(info.getRpplAddr()));
info.setRpplAddrDtl(egovCryptoUtil.decrypt(info.getRpplAddrDtl()));
info.setRpplPost(egovCryptoUtil.decrypt(info.getRpplPost()));
info.setRpplRealAddr(egovCryptoUtil.decrypt(info.getRpplRealAddr()));
info.setRpplRealAddrDtl(egovCryptoUtil.decrypt(info.getRpplRealAddrDtl()));
info.setRpplRealPost(egovCryptoUtil.decrypt(info.getRpplRealPost()));
info.setRpplEmail(egovCryptoUtil.decrypt(info.getRpplEmail()));
info.setRpplPhone(egovCryptoUtil.decrypt(info.getRpplPhone()));
info.setDepuTyNm(egovCryptoUtil.decrypt(info.getDepuTyNm()));
info.setResPonDentNm(egovCryptoUtil.decrypt(info.getResPonDentNm()));
info.setAppliCantNm(egovCryptoUtil.decrypt(info.getAppliCantNm()));*/
}
}
private void decryptInfomationMemName(
List<ExmpManageVO> list
, ExmpManageVO info
){
if(CollectionUtils.isNotEmpty(list)){
for(ExmpManageVO model : list){
model.setMemName(egovCryptoUtil.decrypt(model.getMemName()));
}
}
if(info != null){
info.setMemName(egovCryptoUtil.decrypt(info.getMemName()));
}
}
private void encryptInfomationMemName(
ExmpManageVO info
){
if(info != null){
System.out.println("info.getSearchKeyword()");
System.out.println(info.getSearchKeyword());
System.out.println(info.getSearchKeyword());
System.out.println(egovCryptoUtil.encrypt(info.getSearchKeyword()));
info.setSearchKeyword(egovCryptoUtil.encrypt(info.getSearchKeyword()));
}
}
}

View File

@ -42,6 +42,68 @@
</isNotEmpty>
</select>
<select id="ExmpAppManageDAO.selectExmpOpinionsMgrList" parameterClass="exmpManageVO" resultClass="exmpManageVO">
SELECT
EXMP_MGR_ID AS exmpMgrId
, T1.EXMP_CD AS exmpCd
, T1.EXMP_CC_TY AS exmpCcTy
, T1.EXMP_TIT AS exmpTit
, T1.EXMP_CN AS exmpCn
, T1.ATCH_FILE_ID AS atchFileId
, TO_CHAR(T1.FRST_REGIST_PNTTM, 'YYYY-MM-DD') AS frstRegistPnttm
, T1.FRST_REGISTER_ID AS frstRegisterId
, TO_CHAR(T1.LAST_UPDT_PNTTM, 'YYYY-MM-DD') AS lastUpdtPnttm
, T1.LAST_UPDUSR_ID AS lastUpdusrId
, T2.MEM_NAME AS memName
FROM ADR_EXMP_MGR T1
, ADR_MEM_MGR T2
WHERE T1.EXMP_CD = #exmpCd#
AND T1.frst_register_id=T2.mem_Seq
AND T1.USE_YN = 'Y'
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="0">
T2.MEM_NAME = #searchKeyword#
</isEqual>
</isNotEmpty>
<isNotEmpty prepend="AND" property="frstRegisterId">
T1.FRST_REGISTER_ID = #frstRegisterId#
</isNotEmpty>
ORDER BY T1.FRST_REGIST_PNTTM DESC
<!-- <isNotEmpty property="searchSortCnd"> -->
<!-- ,$searchSortCnd$ -->
<!-- </isNotEmpty> -->
<!-- <isNotEmpty property="searchSortOrd"> -->
<!-- $searchSortOrd$ -->
<!-- </isNotEmpty> -->
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="ExmpAppManageDAO.selectExmpOpinionsMgrCount" parameterClass="exmpManageVO" resultClass="int">
SELECT
COUNT(1) AS TOT
FROM ADR_EXMP_MGR T1
, ADR_MEM_MGR T2
WHERE T1.EXMP_CD = #exmpCd#
AND T1.frst_register_id=T2.mem_Seq
AND T1.USE_YN = 'Y'
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="0">
T2.MEM_NAME = #searchKeyword#
</isEqual>
</isNotEmpty>
<isNotEmpty prepend="AND" property="frstRegisterId">
T1.FRST_REGISTER_ID = #frstRegisterId#
</isNotEmpty>
</select>
<select id="ExmpAppManageDAO.selectExmpManagerList" parameterClass="exmpManageVO" resultClass="exmpManageVO">
SELECT
EXMP_MGR_ID AS exmpMgrId
@ -120,6 +182,8 @@
</select>
<update id="ExmpAppManageDAO.updateExmpManager" parameterClass="exmpManageVO">
UPDATE
ADR_EXMP_MGR

View File

@ -0,0 +1,235 @@
<!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="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%
/**
* @Class Name : adjstOpinionMgrList.do
* @Description : 조정위원 의견관리
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.11.29 우영두 최초 생성
* @author 우영두
* @since 2021.11.29
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style>
</style>
<script type="text/javascript">
$(document).ready(function() {
//해당 페이지에 대한 권한 체크
_admin_fn_check_authority("adjReqMgrOjctList", "div.cont", "ALL");
});
function fncGoList(){
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/adjstOpinionMgr/adjstOpinionMgrList.do'/>";
listForm.submit();
}
function fncCreate(){
var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/adjPgrMgrOjct/adjReqMgrOjctList.do'/>";
listForm.submit();
}
function fnOjctPop(adrSeq) {
var form = document.listForm;
form.adrSeq.value = adrSeq;
commonPopWindowopenForm("/kccadr/adjPgrMgr/apm/popup/ojctInfoPop.do", '820', '600', "apmOjctInfoPop", $('#listForm'));
}
function fncOjctReg(){
var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/adjPgrMgrOjct/adjReqMgrOjctReg.do'/>";
listForm.submit();
}
function fncOpinionsRegistAdjstPopDetail(param){
/*
console.log(' param : ', param);
var paramObj = {
exmpMgrId : param
};
// 이전신청데이터 팝업 호출..
commonPopLayeropen(
"/web/kccadr/adjcclt/popup/adjstOpinionsRegistPopDetail.do"
, 1000
, 700
, paramObj
, "N"
, "adjstOpinionsRegistPop"
);
*/
}
</script>
<title>조정신청목록</title>
</head>
<body>
<form id="listForm" name="listForm" method="post">
<input type="hidden" name="pageIndex" value="<c:out value='${ojctMgrVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${ojctMgrVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${ojctMgrVO.searchSortOrd}" />" />
<input type="hidden" name="adrSeq" 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">
<div class="list_util">
<div class="detail_search">
<ul>
<li>
<p class="tit_text">구분</p>
<select name="searchCondition" id="searchCondition">
<%-- <option value="" ${ojctMgrVO.searchCondition eq '' ? 'selected' : '' }>전체</option> --%>
<option value="0" ${exmpManageVO.searchCondition eq '0' ? 'selected' : '' }>작성자</option>
<%-- <option value="1" ${ojctMgrVO.searchCondition eq '1' ? 'selected' : '' }>조정번호</option> --%>
<%-- <option value="2" ${ojctMgrVO.searchCondition eq '2' ? 'selected' : '' }>접수기간</option> --%>
<%-- <option value="3" ${ojctMgrVO.searchCondition eq '2' ? 'selected' : '' }>신청인명</option> --%>
<%-- <option value="4" ${ojctMgrVO.searchCondition eq '4' ? 'selected' : '' }>피신청인명</option>
<option value="5" ${ojctMgrVO.searchCondition eq '5' ? 'selected' : '' }>신청내용</option>
<option value="6" ${ojctMgrVO.searchCondition eq '6' ? 'selected' : '' }>조정상태</option> --%>
</select>
<input type="text" id=searchKeyword name="searchKeyword" class="search_input" placeholder="검색어를 입력하세요" value="<c:out value='${exmpManageVO.searchKeyword}'/>">
<!--
<div id="sel_date" class="sel_date">
<input type="text" class="startDate inp" title="검색시작일" id="startDate01" name="searchStartDt" onclick="return calendarOpen('startDate01-lry','',this)" value="${ojctMgrVO.searchStartDt}" data-datecontrol="true" 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"></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" onclick="return calendarOpen('endDate-lry','',this)" value="${ojctMgrVO.searchEndDt}" data-datecontrol="true" 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" ></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>
-->
<button class="btn_search" onclick="fncGoList(); return false;">검색</button>
</li>
</ul>
</div>
</div>
</div>
<!-- //list_top -->
<!-- list -->
<div class="list tbType01">
<table>
<colgroup>
<col style="width: 5%">
<col style="width: 20%">
<col style="width: 20%">
<col style="width: 20%">
<col style="width: 20%">
</colgroup>
<thead>
<tr>
<th>번호<button class="sort btn_sort" id="sort_adrSeq">▲</button></th>
<th>등록일<button type="button" class="sort sortBtn" id="sort_sbmtDt"></button></th>
<th>유형<button type="button" class="sort sortBtn" id="sort_adrNo"></button></th>
<th>내용<button type="button" class="sort sortBtn" id="sort_rpplNm"></button></th>
<th>작성자<button type="button" class="sort sortBtn" id="sort_ccTyTx"></button></th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td>
<c:if test="${ojctMgrVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((ojctMgrVO.pageIndex -1)*ojctMgrVO.pageUnit) ) - status.index }"/>
</c:if>
<c:if test="${ojctMgrVO.searchSortOrd eq 'asc' }">
<c:out value="${(ojctMgrVO.pageIndex - 1) * ojctMgrVO.pageUnit + status.count}"/>
</c:if>
<c:out value="${(ojctMgrVO.pageIndex - 1) * ojctMgrVO.pageUnit + status.count}"/>
</td>
<td class="td_date">
<p><c:out value="${list.frstRegistPnttm}"/></p>
</td>
<td>
<kc:code codeId="CC045" code="${list.exmpCcTy}"/>
</td>
<td>
<a href="javascript:;" onclick="javascript:fncOpinionsRegistAdjstPopDetail('${list.exmpMgrId }');"><c:out value="${list.exmpCn}" /></a>
</td>
<td>
<a href="javascript:;" onclick="javascript:AdjstReq.opinionsRegistAdjstPopDetail('${list.exmpMgrId }');"><c:out value="${list.memName}" /></a>
</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="fncOjctReg(); return false;">이의신청 등록</button> -->
</div>
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
<!-- //page -->
</div>
</div>
</div>
<!-- //cont -->
<!-- //cont -->
</form>
</body>
</html>