2025-10-14 16:18 신청자 수동 추가 작업
This commit is contained in:
parent
bafbac67ca
commit
d661cf20b9
@ -344,6 +344,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String sspnIdtmtTrgtOrd; //기소유예 대상자
|
||||
|
||||
private String cmdTrgtInfoOrd; //시정명령 대상자
|
||||
|
||||
private String eduStateCd; //기소유예 대상자 교육상태
|
||||
|
||||
private String reqStateCd; //기소유예 대상자 의뢰상태
|
||||
@ -2144,6 +2146,12 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
public void setReqStateCd(String reqStateCd) {
|
||||
this.reqStateCd = reqStateCd;
|
||||
}
|
||||
public String getCmdTrgtInfoOrd() {
|
||||
return cmdTrgtInfoOrd;
|
||||
}
|
||||
public void setCmdTrgtInfoOrd(String cmdTrgtInfoOrd) {
|
||||
this.cmdTrgtInfoOrd = cmdTrgtInfoOrd;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -119,6 +119,8 @@ public interface VEEduMIXService {
|
||||
|
||||
List<VEEduAplctVO> selectCndtnList(VEEduAplctVO paramVO);
|
||||
|
||||
List<VEEduAplctVO> selectCndtnCmdList(VEEduAplctVO paramVO);
|
||||
|
||||
List<VEEduAplctVO> selectAdultRsltRprtList(VEEduAplctVO paramVO) throws Exception;
|
||||
|
||||
List<VEEduAplctVO> selectExprnAtchFileDownList(VEEduAplctVO paramVO) throws Exception;
|
||||
|
||||
@ -287,6 +287,10 @@ public class VEEduMIXDAO extends EgovAbstractDAO {
|
||||
return (List<VEEduAplctVO>) list("VEEduMIXDAO.selectCndtnList", paramVO);
|
||||
}
|
||||
|
||||
public List<VEEduAplctVO> selectCndtnCmdList(VEEduAplctVO paramVO) {
|
||||
return (List<VEEduAplctVO>) list("VEEduMIXDAO.selectCndtnCmdList", paramVO);
|
||||
}
|
||||
|
||||
public List<VEEduAplctVO> selectAdultRsltRprtList(VEEduAplctVO paramVO) {
|
||||
@SuppressWarnings("unchecked")
|
||||
List<VEEduAplctVO> tlist = (List<VEEduAplctVO>) list("VEEduMIXDAO.selectAdultRsltRprtList", paramVO);
|
||||
|
||||
@ -255,6 +255,11 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
||||
return vEEduMIXDAO.selectCndtnList(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEEduAplctVO> selectCndtnCmdList(VEEduAplctVO paramVO) {
|
||||
return vEEduMIXDAO.selectCndtnCmdList(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEEduAplctVO> selectAdultRsltRprtList(VEEduAplctVO paramVO) throws Exception{
|
||||
return vEEduMIXDAO.selectAdultRsltRprtList(paramVO);
|
||||
|
||||
@ -142,6 +142,7 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
private String trgtNm;
|
||||
private String eduStateCd;
|
||||
private String sspnIdtmtTrgtOrd;
|
||||
private String cmdTrgtInfoOrd;
|
||||
|
||||
private String cnclAtchFileId;
|
||||
private String cnclCn;
|
||||
@ -1106,4 +1107,10 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setQustnrTm(String qustnrTm) {
|
||||
this.qustnrTm = qustnrTm;
|
||||
}
|
||||
public String getCmdTrgtInfoOrd() {
|
||||
return cmdTrgtInfoOrd;
|
||||
}
|
||||
public void setCmdTrgtInfoOrd(String cmdTrgtInfoOrd) {
|
||||
this.cmdTrgtInfoOrd = cmdTrgtInfoOrd;
|
||||
}
|
||||
}
|
||||
|
||||
@ -54,8 +54,8 @@ import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
import kcc.ve.oprtn.cndtnSspnIdtmt.trgtMng.service.CndtnTrgtMngService;
|
||||
import kcc.ve.oprtn.cndtnSspnIdtmt.trgtMng.service.CndtnTrgtMngVO;
|
||||
import kcc.ve.oprtn.cmdTrgt.trgtMng.service.CmdTrgtMngService;
|
||||
import kcc.ve.oprtn.cmdTrgt.trgtMng.service.CmdTrgtMngVO;
|
||||
import kcc.ve.oprtn.fndtnEnhanceTrn.prcsAplctPrdMng.service.ExcelVO;
|
||||
|
||||
/**
|
||||
@ -98,8 +98,12 @@ public class CmdPrcsInfoMngController {
|
||||
|
||||
|
||||
//과정 관리
|
||||
@Resource(name = "cndtnTrgtInfoMngService")
|
||||
private CndtnTrgtMngService cndtnTrgtInfoMngService;
|
||||
//@Resource(name = "cndtnTrgtInfoMngService")
|
||||
//private CndtnTrgtMngService cndtnTrgtInfoMngService;
|
||||
//@Resource(name = "cndtnTrgtInfoMngService")
|
||||
//private CndtnTrgtMngService cndtnTrgtInfoMngService;
|
||||
@Resource(name = "cmdTrgtInfoMngService")
|
||||
private CmdTrgtMngService cmdTrgtInfoMngService;
|
||||
|
||||
//교육과정순번
|
||||
@Resource(name="prcsGnrService")
|
||||
@ -166,7 +170,9 @@ public class CmdPrcsInfoMngController {
|
||||
@Resource(name = "checkFileUtil")
|
||||
private CheckFileUtil checkFileUtil;
|
||||
|
||||
|
||||
//교육신청순번
|
||||
@Resource(name="eduAplctGnrService")
|
||||
private EgovIdGnrService eduAplctGnrService;
|
||||
|
||||
/**
|
||||
* 기반강화연수 과정 관리 목록 화면
|
||||
@ -807,7 +813,7 @@ public class CmdPrcsInfoMngController {
|
||||
|
||||
|
||||
// List<VEEduAplctVO> vEPrcsDetailVOList = vEEduMIXService.selectList(paramVO);
|
||||
List<VEEduAplctVO> vEPrcsDetailVOList = vEEduMIXService.selectCndtnList(paramVO);
|
||||
List<VEEduAplctVO> vEPrcsDetailVOList = vEEduMIXService.selectCndtnCmdList(paramVO);
|
||||
vEPrcsDetailVOList = egovCryptoUtil.decryptVeEduAplctList(vEPrcsDetailVOList);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
@ -2165,8 +2171,8 @@ public class CmdPrcsInfoMngController {
|
||||
@RequestMapping("/kccadr/oprtn/cmdTrgt/popup/cndtnApplyAsgnmPopup.do")
|
||||
public String fndthApplyAsgnmPopup(
|
||||
// @ModelAttribute("vEInstrDetailVO") VEInstrDetailVO vEInstrDetailVO
|
||||
//@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
@ModelAttribute("cndtnTrgtInfoMngVO") CndtnTrgtMngVO cndtnTrgtInfoMngVO
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, @ModelAttribute("cndtnTrgtInfoMngVO") CmdTrgtMngVO cndtnTrgtInfoMngVO
|
||||
|
||||
, ModelMap model
|
||||
, RedirectAttributes redirectAttributes
|
||||
@ -2221,10 +2227,10 @@ public class CmdPrcsInfoMngController {
|
||||
cndtnTrgtInfoMngVO.setSearchQuery(selectCondition);
|
||||
|
||||
// List<CndtnTrgtInfoMngVO> cndtnTrgtInfoMngVOList = cndtnTrgtInfoMngService.selectPagingList(cndtnTrgtInfoMngVO);
|
||||
List<CndtnTrgtMngVO> cndtnTrgtInfoMngVOList = null;
|
||||
List<CmdTrgtMngVO> cndtnTrgtInfoMngVOList = null;
|
||||
try {
|
||||
|
||||
cndtnTrgtInfoMngVOList = cndtnTrgtInfoMngService.selectPagingList(cndtnTrgtInfoMngVO);
|
||||
cndtnTrgtInfoMngVOList = cmdTrgtInfoMngService.selectPagingList(cndtnTrgtInfoMngVO);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
// TODO: handle exception
|
||||
@ -2237,7 +2243,7 @@ public class CmdPrcsInfoMngController {
|
||||
|
||||
|
||||
//복호화
|
||||
cndtnTrgtInfoMngVOList = egovCryptoUtil.decryptCndtnTrgtMngVOList(cndtnTrgtInfoMngVOList);
|
||||
cndtnTrgtInfoMngVOList = egovCryptoUtil.decryptCmdTrgtMngVOList(cndtnTrgtInfoMngVOList);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", cndtnTrgtInfoMngVOList);
|
||||
@ -2245,6 +2251,113 @@ public class CmdPrcsInfoMngController {
|
||||
return "/oprtn/cmdTrgt/popup/cndtnApplyAsgnmPopup";
|
||||
}
|
||||
|
||||
/**
|
||||
* 기반강화연수과정 신청기간 등록
|
||||
*/
|
||||
@RequestMapping("/kccadr/oprtn/cmdTrgt/popup/eduRegAjax.do")
|
||||
public ModelAndView fndthEduPrcsAplctPrdMngRegAjax(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, ModelMap model
|
||||
|
||||
|
||||
|
||||
|
||||
// ㄴㅇㄹㄴㅇㄹㄴㅇㄹ
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "loginFail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//로그인 처리====================================
|
||||
*
|
||||
*/
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
//SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
|
||||
|
||||
VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
|
||||
String s_eduAplctOrd = eduAplctGnrService.getNextStringId();
|
||||
vEEduAplctVO.setEduAplctOrd(s_eduAplctOrd);
|
||||
|
||||
vEEduAplctVO.setLctrDivCd(LCTR_DIV_CD); // 기소유예
|
||||
vEEduAplctVO.setAprvlCd("10"); // 승인코드 VE0003 10 - 요청, 20 - 승인, 30 - 반려
|
||||
// sbmt_pnttm 제출일시
|
||||
vEEduAplctVO.setSbmtYn("Y"); // 제출여부
|
||||
vEEduAplctVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
// frst_regist_pnttm
|
||||
vEEduAplctVO.setUserId(loginVO.getUniqId());
|
||||
vEEduAplctVO.setPrcsOrd(vEPrcsDetailVO.getPrcsAplctPrdOrd());
|
||||
vEEduAplctVO.setTrgtNm(vEPrcsDetailVO.getTrgtNm());
|
||||
vEEduAplctVO.setdBirth(vEPrcsDetailVO.getdBirth());
|
||||
vEEduAplctVO.setPhone(egovCryptoUtil.encrypt(vEPrcsDetailVO.getPhone()));
|
||||
vEEduAplctVO.setEmail(vEPrcsDetailVO.getEmail());
|
||||
|
||||
String result = "";
|
||||
try {
|
||||
//암호화
|
||||
vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||
vEEduAplctVO.setRndsOrd(vEPrcsDetailVO.getCmdTrgtInfoOrd()); //2024-02-07 추가 신청서 정보에 대상자 정보를 넣어야 추후 구분이 가능해서 추가함
|
||||
sspnIdtmtService.insertVeEduAplct(vEEduAplctVO);
|
||||
|
||||
|
||||
CmdTrgtMngVO cndtnTrgtMngVO = new CmdTrgtMngVO();
|
||||
|
||||
cndtnTrgtMngVO.setUserId(loginVO.getUniqId());
|
||||
cndtnTrgtMngVO.setCmdTrgtInfoOrd(vEPrcsDetailVO.getCmdTrgtInfoOrd());
|
||||
cndtnTrgtMngVO.setEduStateCd("25"); // 신청
|
||||
|
||||
cndtnTrgtMngVO.setEduAplctOrd(s_eduAplctOrd); //동일한 대상자가 어떤 신청서와 맞는지 매칭에 필요함
|
||||
|
||||
//cndtnTrgtMngVO.setPrcsAplctPrdOrdCmplt(vEPrcsDetailVO.getPrcsAplctPrdOrd()); // 교육 번호
|
||||
// , edu_state_cd = #eduStateCd#
|
||||
// , prcs_aplct_prd_ord_cmplt = #prcsAplctPrdOrdCmplt#
|
||||
|
||||
|
||||
cmdTrgtInfoMngService.updateUserId(cndtnTrgtMngVO);
|
||||
|
||||
//알림 교육신청
|
||||
try {
|
||||
iTNotiUtil.insertNotifyNew_60(
|
||||
LCTR_DIV_CD, //"60",
|
||||
loginVO.getUniqId(),
|
||||
VeConstants.NOTI_STATUS_10,
|
||||
vEPrcsDetailVO.getPrcsAplctPrdOrd(),
|
||||
"",
|
||||
"1",
|
||||
"1"
|
||||
);
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
result = "success";
|
||||
} catch (Exception e) {
|
||||
// TODO: handle exception
|
||||
}
|
||||
|
||||
|
||||
|
||||
modelAndView.addObject("result", result);
|
||||
|
||||
return modelAndView;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : cnclPopup
|
||||
* @author : 이호영
|
||||
@ -2297,7 +2410,7 @@ public class CmdPrcsInfoMngController {
|
||||
@RequestMapping("/kccadr/oprtn/cmdTrgt/popup/detailPopup.do")
|
||||
public String detailPopup(
|
||||
// @ModelAttribute("vEInstrDetailVO") VEInstrDetailVO vEInstrDetailVO
|
||||
@ModelAttribute("vEPrcsDetailVO") CndtnTrgtMngVO cndtnTrgtInfoMngVO
|
||||
@ModelAttribute("vEPrcsDetailVO") CmdTrgtMngVO cndtnTrgtInfoMngVO
|
||||
, ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
@ -2307,15 +2420,15 @@ public class CmdPrcsInfoMngController {
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
CndtnTrgtMngVO cndtnTrgtInfoVO = cndtnTrgtInfoMngService.findByEduAplctOrdAndMberId(cndtnTrgtInfoMngVO);
|
||||
CmdTrgtMngVO cndtnTrgtInfoVO = cmdTrgtInfoMngService.findByEduAplctOrdAndMberId(cndtnTrgtInfoMngVO);
|
||||
|
||||
//복호화
|
||||
cndtnTrgtInfoVO = egovCryptoUtil.decryptCndtnTrgtMngVOInfo(cndtnTrgtInfoVO);
|
||||
cndtnTrgtInfoVO = egovCryptoUtil.decryptCmdTrgtMngVOInfo(cndtnTrgtInfoVO);
|
||||
model.addAttribute("info", cndtnTrgtInfoVO);
|
||||
|
||||
|
||||
//이력정보
|
||||
List<CndtnTrgtMngVO> cndtnTrgtMngVOList = cndtnTrgtInfoMngService.selectListRelated(cndtnTrgtInfoMngVO);
|
||||
List<CmdTrgtMngVO> cndtnTrgtMngVOList = cmdTrgtInfoMngService.selectListRelated(cndtnTrgtInfoMngVO);
|
||||
model.addAttribute("cndtnTrgtMngVOList", cndtnTrgtMngVOList);
|
||||
|
||||
|
||||
@ -3013,7 +3126,7 @@ public class CmdPrcsInfoMngController {
|
||||
//CndtnTrgtInfoMngVO
|
||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||
private PaginationInfo setCndtnPagingStep1(
|
||||
CndtnTrgtMngVO p_cndtnTrgtInfoMngVO
|
||||
CmdTrgtMngVO p_cndtnTrgtInfoMngVO
|
||||
)throws Exception{
|
||||
// pageing step1
|
||||
PaginationInfo paginationInfo = new PaginationInfo();
|
||||
@ -3026,8 +3139,8 @@ public class CmdPrcsInfoMngController {
|
||||
|
||||
|
||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||
private CndtnTrgtMngVO setCndtnPagingStep2(
|
||||
CndtnTrgtMngVO p_cndtnTrgtInfoMngVO
|
||||
private CmdTrgtMngVO setCndtnPagingStep2(
|
||||
CmdTrgtMngVO p_cndtnTrgtInfoMngVO
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step2
|
||||
@ -3046,7 +3159,7 @@ public class CmdPrcsInfoMngController {
|
||||
|
||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||
private PaginationInfo setCndtnPagingStep3(
|
||||
List<CndtnTrgtMngVO> p_cndtnTrgtInfoMngVOList
|
||||
List<CmdTrgtMngVO> p_cndtnTrgtInfoMngVOList
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step3
|
||||
|
||||
@ -463,6 +463,7 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육신청자 - 조건부기소유예 -->
|
||||
<select id="VEEduMIXDAO.selectCndtnList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
|
||||
/* VEEduMIXDAO.selectCndtnList */
|
||||
SELECT
|
||||
@ -549,6 +550,93 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육신청자 - 시정명령 -->
|
||||
<select id="VEEduMIXDAO.selectCndtnCmdList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
|
||||
/* VEEduMIXDAO.selectCndtnCmdList */
|
||||
SELECT
|
||||
ROW_NUMBER() OVER(ORDER BY a.frst_regist_pnttm ASC) AS rowNo,
|
||||
vadi.APLCT_STATE_CD AS aplctStateCd,
|
||||
vsit.req_STATE_CD as reqStateCd,
|
||||
vpap.TITLE AS title,
|
||||
vsit.CMPTNT_ATHRT AS cmptntAthrt,
|
||||
vsit.VNT_YEAR AS vntYear,
|
||||
vsit.VNT_NMBR AS vntNmbr,
|
||||
vsit.PRSCTR_NM AS prsctrNm,
|
||||
vsit.req_nmbr AS reqNmbr,
|
||||
vadi.APLCT_STATE_CD AS aplctStateCd, /* 이수 상태 */
|
||||
vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId,
|
||||
vadi.CNCL_CN AS cnclCn,
|
||||
le.MBER_NM AS userNm,
|
||||
le.mber_id AS mberId,
|
||||
<include refid="VEEduMIXDAO.select_column_name"/>,
|
||||
CASE
|
||||
WHEN EXISTS (/* 설문조사 */
|
||||
SELECT
|
||||
1
|
||||
FROM
|
||||
LETTNQESTNRRSLTDETAIL lersltD
|
||||
WHERE
|
||||
lersltD.respond_id = a.USER_ID
|
||||
AND a.edu_aplct_ord = lersltD.edu_aplct_ord ) THEN 1
|
||||
ELSE 0
|
||||
END AS qestRsltExists,
|
||||
vsit.TRGT_NM AS trgtNm,
|
||||
CASE
|
||||
WHEN vsit.sex = 'M' THEN '남성'
|
||||
WHEN vsit.sex = 'F' THEN '여성'
|
||||
ELSE '' END trgtSex
|
||||
, vsit.CMD_TRGT_INFO_ORD AS cmdTrgtInfoOrd
|
||||
FROM
|
||||
<include refid="VEEduMIXDAO.table_name"/> a
|
||||
JOIN ve_prcs_aplct_prd vpap ON
|
||||
a.PRCS_ORD = vpap.PRCS_APLCT_PRD_ORD
|
||||
LEFT JOIN VEA_APLCT_DETAIL_INFO vadi ON
|
||||
a.EDU_APLCT_ORD = vadi.EDU_APLCT_ORD
|
||||
/* AND vpap.PRCS_APLCT_PRD_ORD = vadi.PRCS_APLCT_PRD_ORD */
|
||||
|
||||
LEFT JOIN LETTNGNRLMBER le ON
|
||||
a.USER_ID = le.ESNTL_ID
|
||||
|
||||
LEFT JOIN lettnemplyrinfo le2 ON
|
||||
a.USER_ID = le2.ESNTL_ID
|
||||
|
||||
LEFT JOIN VEA_CMD_TRGT_INFO vsit ON
|
||||
(
|
||||
/* 신청 정보에 대상자 키 값이 들어 있어서 해당 값을만 확인하면 된다.*/
|
||||
a.rnds_ord=vsit.CMD_TRGT_INFO_ORD
|
||||
)
|
||||
WHERE
|
||||
1=1
|
||||
<isNotEmpty property="prcsOrd">
|
||||
AND a.prcs_ord=#prcsOrd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="sbmtYn">
|
||||
AND a.sbmt_yn=#sbmtYn#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchSelStatus">
|
||||
AND a.aprvl_cd = #searchSelStatus#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchQuery">
|
||||
$searchQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchSmbtStartDt">
|
||||
AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchSmbtStartDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchSmbtEndDt">
|
||||
AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') <![CDATA[ <= ]]> REPLACE(#searchSmbtEndDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
AND a.use_yn = 'Y'
|
||||
<!-- AND le.MBER_NM IS NOT NULL -->
|
||||
|
||||
ORDER BY a.frst_regist_pnttm ASC
|
||||
|
||||
</select>
|
||||
|
||||
<!-- -->
|
||||
<select id="VEEduMIXDAO.selectTrgtList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
|
||||
/* VEEduMIXDAO.selectTrgtList */
|
||||
|
||||
@ -278,7 +278,19 @@
|
||||
form.submit();
|
||||
}
|
||||
|
||||
// 신청자 수동 추가
|
||||
function fncApplyAsgnmInfo(prcsAplctPrdOrd) {
|
||||
var form = document.popForm;
|
||||
|
||||
form.prcsAplctPrdOrd.value = prcsAplctPrdOrd;
|
||||
|
||||
// form.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/popup/fndthInstrAsgnmPopup.do'/>";
|
||||
form.action = "<c:url value='/kccadr/oprtn/cmdTrgt/popup/cndtnApplyAsgnmPopup.do'/>";
|
||||
|
||||
window.open("#", "_securityPop", "scrollbars = no, top=100px, left=0px, height=750px, width=1600px");
|
||||
form.target = "_securityPop";
|
||||
form.submit();
|
||||
}
|
||||
|
||||
function fn_goDetailPop(p_eduAplctOrd, p_mberId, p_cmdTrgtInfoOrd) {
|
||||
|
||||
@ -586,6 +598,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
<!--
|
||||
강사 배치 정보
|
||||
강사 배치 정보
|
||||
@ -773,7 +786,7 @@
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr>
|
||||
<td colspan="6">신청자가 없습니다.</td>
|
||||
<td colspan="10">신청자가 없습니다.</td>
|
||||
</tr>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
@ -801,6 +814,18 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- btn_wrap -->
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btn_type02" onclick="fncApplyAsgnmInfo('<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">신청자 수동 추가</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -0,0 +1,337 @@
|
||||
<!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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<%
|
||||
/**
|
||||
* @Class Name : instrAsgnmPopup.jsp
|
||||
* @Description : 강사배치 팝업
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2021.08.09 김봉호 최초 생성
|
||||
* @author 안주영
|
||||
* @since 2022.1.8
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
|
||||
<%-- <script type="text/javascript" src="<c:url value='/js/ve/tmapJS.js'/>"></script> --%>
|
||||
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
<title>강사배치 팝업</title>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
|
||||
$(document).ready(function(){
|
||||
// ID를 alpreah_input로 가지는 곳에서 키를 누를 경우
|
||||
$("#instrNm").keydown(function(key) {
|
||||
if (key.keyCode == 13) {
|
||||
linkPage(1);
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
function fncPopClose(){
|
||||
self.close();
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
|
||||
if($('#searchEduSlctAreaCd option:selected').text() != '전체'){
|
||||
listForm.rsdne.value = $('#searchEduSlctAreaCd option:selected').text();
|
||||
}
|
||||
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/cmdTrgt/popup/cndtnApplyAsgnmPopup.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncApplyAsgnm(p_id) {
|
||||
$("#userId").val(p_id);
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
if(confirm("해당 대상자 수동 교육 신청을 진행하시겠습니까?\n수동신청한 경우 해당 대상자의 신청자 온라인 연동은 불가합니다.")){
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
//url:"${pageContext.request.contextPath}/kccadr/oprtn/cmdTrgt/cndtnInstrAsgnmAjax.do",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/cmdTrgt/cndtnApplyAsgnmAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == 'success'){
|
||||
alert("저장 되었습니다.");
|
||||
opener.location.reload();
|
||||
fncPopClose();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="area_popup supm_popup">
|
||||
<div class="cont_popup">
|
||||
|
||||
<form:form id="createForm" name="createForm" method="post" onsubmit="return false;">
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd"/>
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd"/>
|
||||
<input type="hidden" name="userId" id="userId" />
|
||||
<input type="hidden" name="asgnmAprvlCd" id="asgnmAprvlCd" value="30"/> <!-- VE0019 배정 승인 코드 30 확정 -->
|
||||
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value="${vEPrcsDetailVO.prcsAplctPrdOrd}" />" />
|
||||
</form:form>
|
||||
|
||||
<form:form id="listForm" name="listForm" method="post" onsubmit="return false;">
|
||||
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd"/>
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd"/>
|
||||
<input type="hidden" name="userId" id="userId" />
|
||||
<input type="hidden" name="asgnmAprvlCd" id="asgnmAprvlCd" value="30"/> <!-- VE0019 배정 승인 코드 30 확정 -->
|
||||
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value="${vEPrcsDetailVO.prcsAplctPrdOrd}" />" />
|
||||
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="pageUnit" value="5" />
|
||||
<input type="hidden" name="rsdne" value="" />
|
||||
|
||||
<div class="area_popup">
|
||||
<div class="cont_popup">
|
||||
<!-- list_top -->
|
||||
<div class="list_top">
|
||||
<div class="list_top_1">
|
||||
<div class="util_left">
|
||||
<p>대상자검색</p>
|
||||
</div>
|
||||
<%-- <ve:select codeId="VE0008" name="searchEduSlctAreaCd" id="searchEduSlctAreaCd" css="class='sel_type1'" --%>
|
||||
<%-- selectedText="${vEEduAplctVO.rsdne}" defaultValue='' --%>
|
||||
<%-- defaultText='전체' --%>
|
||||
<%-- /> --%>
|
||||
<div class="util_right">
|
||||
<input type="text" id="searchKeywordFrom" name="searchKeywordFrom" placeholder="이름을 입력해주세요." title="검색어 입력" class="search_input" value="<c:out value='${cndtnTrgtInfoMngVO.searchKeywordFrom}'/>" onkeyDown="press(event);">
|
||||
<button type="button" class="btn_type08" onclick="linkPage(1); return false;">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pop_tb_tit01">
|
||||
<p>대상자 목록</p>
|
||||
</div>
|
||||
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 8%">
|
||||
<col style="width: 9%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 7%">
|
||||
<col style="width: 5%">
|
||||
<col style="width: 4%">
|
||||
<col style="width: 12%">
|
||||
<col style="width: 8%">
|
||||
<col style="width: 8%">
|
||||
<col style="width: auto">
|
||||
<col style="width: 80px">
|
||||
<col style="width: 80px">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>의뢰일</th>
|
||||
<th>사건번호</th>
|
||||
<th>관할청</th>
|
||||
<th>생년월일</th>
|
||||
<th>성명</th>
|
||||
<th>성별</th>
|
||||
<th>의뢰번호</th>
|
||||
<th>의뢰상태</th>
|
||||
<th>교육상태</th>
|
||||
<th>주소</th>
|
||||
<th>검사명</th>
|
||||
|
||||
<th scope="col">선택</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr class="listCount"
|
||||
<c:if test="${empty list.prcsAplctPrdOrdCmplt}">
|
||||
style="cursor:pointer;"
|
||||
</c:if>
|
||||
<c:if test="${not empty list.prcsAplctPrdOrdCmplt}">
|
||||
style="cursor:pointer;background-color:lightgray;"
|
||||
</c:if>
|
||||
>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<c:set var="reqPnttm" value="${fn:substring(list.reqPnttm, 0, 10)}" />
|
||||
<%-- <fmt:formatDate value="${list.reqPnttm }" pattern="yyyy-MM-dd" /> --%>
|
||||
<c:out value="${reqPnttm }" />
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.vntYear }" />형제<c:out value="${list.vntNmbr }" />
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<ve:code codeId="VEA008" code="${list.cmptntAthrt }"/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.dBirth }" />
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.trgtNm }" />
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<ve:code codeId="COM014" code="${list.sex }"/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.reqNmbr }" />
|
||||
</td>
|
||||
<!--
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
<ve:code codeId="VEA005" code="${list.reqStateCd }"/>
|
||||
</td>
|
||||
-->
|
||||
|
||||
<!-- 의뢰상태 -->
|
||||
<td onclick="fncGoDetail('<c:out value="${list.cmdTrgtInfoOrd}"/>');" style="cursor:pointer;">
|
||||
|
||||
<c:if test="${empty list.prcsAplctPrdOrdCmplt}">
|
||||
<ve:code codeId="VEA005" code="${list.reqStateCd }"/>(${list.reqStateCd })
|
||||
</c:if>
|
||||
<c:if test="${not empty list.prcsAplctPrdOrdCmplt}">
|
||||
병합처리
|
||||
</c:if>
|
||||
</td>
|
||||
|
||||
<!-- 교육상태 -->
|
||||
<td>
|
||||
<ve:code codeId="VEA003" code="${list.eduStateCd }"/>(${list.eduStateCd })
|
||||
</td>
|
||||
<c:set var="fullAddr" value="${list.addr} ${list.addrDetail}" />
|
||||
<%-- <c:set var="fullAddr" value="${list.addr}" /> --%>
|
||||
<td class="ellipsis" title="${fullAddr}">
|
||||
${fullAddr}
|
||||
<%-- ${fn:length(fullAddr)> 50 ? fn:substring(fullAddr, 0, 50).concat('...') : ''} --%>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.prsctrNm }" />
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<c:if test='${not empty list.trgtNm and list.eduStateCd ne 20 and list.reqStateCd ne 30}'>
|
||||
<button class="btn_type06"
|
||||
onclick="fncEduReg('<c:out value="${list.cmdTrgtInfoOrd}" />', '<c:out value="${list.trgtNm}" />', '<c:out value="${list.dBirth}" />', '<c:out value="${list.clphone}" />'); return false;">선택</button>
|
||||
</c:if>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<c:if test="${!empty list.rmrks }">
|
||||
<tr class="memoTr" style="display:none;">
|
||||
<td colspan="11" style="text-align:left; background-color:#131de14a;">
|
||||
<c:out value="${list.rmrks}" />
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="11"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- page -->
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
<!-- //page -->
|
||||
|
||||
<div class="btn_wrap_pop btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btn_type04" onclick="self.close();">닫기</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form:form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form id="regForm2" name="regForm2" method="post">
|
||||
<input type="hidden" name="prcsAplctPrdOrd" value="${vEPrcsDetailVO.prcsAplctPrdOrd}">
|
||||
<!-- 대상자 테이블 PK -->
|
||||
<input type="hidden" name="cmdTrgtInfoOrd" id="cmdTrgtInfoOrd" value="">
|
||||
<input type="hidden" name="trgtNm" id="trgtNm" value="">
|
||||
<input type="hidden" name="dBirth" id="dBirth" value="">
|
||||
<input type="hidden" name="phone" id="phone" value=""/>
|
||||
</form>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
function fncEduReg(p_cmdTrgtInfoOrd, p_trgtNm, p_dBirth, p_phone){
|
||||
|
||||
$("#cmdTrgtInfoOrd").val(p_cmdTrgtInfoOrd);
|
||||
$("#trgtNm").val(p_trgtNm);
|
||||
$("#dBirth").val(p_dBirth);
|
||||
$("#phone").val(p_phone);
|
||||
|
||||
|
||||
var data = new FormData(document.getElementById("regForm2"));
|
||||
if(confirm("해당 대상자 수동 교육 신청을 진행하시겠습니까?\n수동신청한 경우 해당 대상자의 신청자 온라인 연동은 불가합니다.")){
|
||||
var url = "${pageContext.request.contextPath}/kccadr/oprtn/cmdTrgt/popup/eduRegAjax.do";
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == "success"){
|
||||
alert("저장되었습니다.");
|
||||
fncGoList();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
window.opener.reload();
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -786,7 +786,7 @@
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr>
|
||||
<td colspan="6">신청자가 없습니다.</td>
|
||||
<td colspan="10">신청자가 없습니다.</td>
|
||||
</tr>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
@ -224,7 +224,7 @@
|
||||
|
||||
<!-- 교육상태 -->
|
||||
<td>
|
||||
<ve:code codeId="VEA003" code="${list.eduStateCd }"/>
|
||||
<ve:code codeId="VEA003" code="${list.eduStateCd }"/>(${list.eduStateCd })
|
||||
</td>
|
||||
<c:set var="fullAddr" value="${list.addr} ${list.addrDetail}" />
|
||||
<%-- <c:set var="fullAddr" value="${list.addr}" /> --%>
|
||||
@ -326,6 +326,10 @@
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
window.opener.reload();
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
@ -775,7 +775,7 @@
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr>
|
||||
<td colspan="6">신청자가 없습니다.</td>
|
||||
<td colspan="10">신청자가 없습니다.</td>
|
||||
</tr>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user