2025-10-29 10:12 시정명령 통계 작업
This commit is contained in:
parent
147b60d242
commit
3967238bed
@ -192,4 +192,28 @@ public interface VEInstrMixService {
|
||||
//예방교육
|
||||
//교육실정통계- ⑤월별 교육 이수 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_prevent_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
|
||||
//시정명령 통계
|
||||
//교육실정통계- ①검찰청별 교육 의뢰 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no1(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//교육실정통계- ①월별 교육 의뢰 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no2(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//교육실정통계- 3.대상별 교육 의뢰 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no3(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//조건부기소유예관리 통계
|
||||
//교육실정통계- ①검찰청별 교육 의뢰 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no4(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//교육실정통계- ⑤월별 교육 이수 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//교육실정통계- ⑥대상별 교육 이수 현황(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no6(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
//교육실정통계- ⑦월별 교육차시별 차시명, 이수, 미이수, 연기인원 통계
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no7(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
}
|
||||
|
||||
@ -364,8 +364,47 @@ public class VEInstrMixDAO extends EgovAbstractDAO {
|
||||
return tlist;
|
||||
}
|
||||
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_prevent_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_prevent_no5", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
|
||||
//통계정보-조건부기소유예관리-①검찰청별 교육 의뢰 현황(그래프 포함)
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no1(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no1", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no2(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no2", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no3(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no3", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
//통계정보-조건부기소유예관리-①검찰청별 교육 의뢰 현황(그래프 포함)
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no4(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no4", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no5", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no6(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no6", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no7(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no7", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
}
|
||||
|
||||
@ -295,4 +295,33 @@ public class VEInstrMixServiceImpl implements VEInstrMixService {
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_prevent_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_prevent_no5(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no1(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no1(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no2(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no2(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no3(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no3(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no4(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no4(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no5(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no6(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no6(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no7(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no7(vEInstrDetailVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -554,7 +554,7 @@ public class CmdInstrMngController {
|
||||
{
|
||||
//vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword());
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List_no1 = vEInstrMixService.selectEduPrfrmInfo_csi_no1(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List_no1 = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no1(vEInstrDetailVODetail);
|
||||
|
||||
//복호화
|
||||
//selectAsgnmInfoT2List_no1 = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List_no1);
|
||||
@ -568,7 +568,7 @@ public class CmdInstrMngController {
|
||||
//vEInstrDetailVODetail.setNo3("10"); /* 10-횟수, 20-인원 */
|
||||
//vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword());
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List_no2 = vEInstrMixService.selectEduPrfrmInfo_csi_no2(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List_no2 = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no2(vEInstrDetailVODetail);
|
||||
|
||||
//복호화
|
||||
//selectAsgnmInfoT2List_no2 = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List_no2);
|
||||
@ -582,7 +582,7 @@ public class CmdInstrMngController {
|
||||
//vEInstrDetailVODetail.setNo3("20"); /* 10-횟수, 20-인원 */
|
||||
//vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword());
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List_no3 = vEInstrMixService.selectEduPrfrmInfo_csi_no3(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List_no3 = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no3(vEInstrDetailVODetail);
|
||||
|
||||
//복호화
|
||||
//selectAsgnmInfoT2List_no3 = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List_no3);
|
||||
@ -595,7 +595,7 @@ public class CmdInstrMngController {
|
||||
{
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT4List_no4 = vEInstrMixService.selectEduPrfrmInfo_csi_no4(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT4List_no4 = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no4(vEInstrDetailVODetail);
|
||||
|
||||
model.addAttribute("list_no4",selectAsgnmInfoT4List_no4);
|
||||
}
|
||||
@ -604,21 +604,21 @@ public class CmdInstrMngController {
|
||||
{
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT5List = vEInstrMixService.selectEduPrfrmInfo_csi_no5(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT5List = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no5(vEInstrDetailVODetail);
|
||||
model.addAttribute("list_no5",selectAsgnmInfoT5List);
|
||||
}
|
||||
// ⑥대상별 교육이수현황(그래프 포함) - 대상이 없어서 제공안됨
|
||||
{
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT6List = vEInstrMixService.selectEduPrfrmInfo_csi_no6(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT6List = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no6(vEInstrDetailVODetail);
|
||||
model.addAttribute("list_no6",selectAsgnmInfoT6List);
|
||||
}
|
||||
// ⑦월별 교육차시별 차시명, 이수, 미이수, 연기인원 통계
|
||||
{
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
//vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT7List = vEInstrMixService.selectEduPrfrmInfo_csi_no7(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT7List = vEInstrMixService.selectEduPrfrmInfo_csi_cmdTrgt_no7(vEInstrDetailVODetail);
|
||||
model.addAttribute("list_no7",selectAsgnmInfoT7List);
|
||||
}
|
||||
//통계- ⑧인구감소지역별 교육횟수 교육인원, 교육기관, 교육일자(그래프 포함)) - 대상이 없어서 제공안됨
|
||||
|
||||
@ -2678,5 +2678,496 @@
|
||||
on(aaa.mnt=bbb.codeNm)
|
||||
ORDER BY aaa.mnt
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ①검찰청별 교육 의뢰 현황(그래프 포함) -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no1" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no1 */
|
||||
|
||||
SELECT aaa.code AS code
|
||||
, aaa.cnt AS cnt
|
||||
, coalesce(bbb.code_nm, aaa.code) AS codeNm
|
||||
|
||||
FROM (
|
||||
SELECT coalesce(bb.code,aa.CMPTNT_ATHRT) AS code
|
||||
, sum(aa.cnt) AS cnt
|
||||
FROM (
|
||||
SELECT coalesce(a.CMPTNT_ATHRT,'미정') AS CMPTNT_ATHRT
|
||||
, count(*) AS cnt
|
||||
|
||||
FROM
|
||||
vea_cmd_trgt_info a
|
||||
/*
|
||||
,
|
||||
ve_edu_aplct b ,
|
||||
ve_prcs_aplct_prd c ,
|
||||
vea_aplct_detail_info d
|
||||
*/
|
||||
WHERE
|
||||
TO_CHAR(a.req_pnttm, 'YYYY')=#mngNmbrYr#
|
||||
/*
|
||||
SUBSTRING(c.edu_strt_pnttm, 1, 4)=mngNmbrYr
|
||||
AND b.aprvl_cd = '60'
|
||||
AND b.prcs_ord = c.prcs_aplct_prd_ord
|
||||
AND a.sspn_idtmt_trgt_ord = b.rnds_ord
|
||||
*/
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
<isNotEmpty property="searchEduStateCd">
|
||||
AND a.edu_state_cd = #searchEduStateCd#
|
||||
</isNotEmpty>
|
||||
/*
|
||||
AND b.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||
AND d.aplct_state_cd = '20'
|
||||
*/
|
||||
|
||||
GROUP BY a.CMPTNT_ATHRT
|
||||
)aa LEFT OUTER JOIN
|
||||
(
|
||||
SELECT code, code_nm
|
||||
FROM LETTCCMMNDETAILCODE b
|
||||
WHERE b.code_id='VEA008'
|
||||
AND b.use_at='Y'
|
||||
)bb
|
||||
ON aa.cmptnt_athrt = bb.code
|
||||
|
||||
GROUP BY rollup(coalesce(bb.code,aa.CMPTNT_ATHRT))
|
||||
)aaa
|
||||
LEFT OUTER JOIN LETTCCMMNDETAILCODE bbb
|
||||
on(aaa.code=bbb.code)
|
||||
ORDER BY SUBSTRING(bbb.code_nm,1,2)
|
||||
/*
|
||||
, instr(bbb.code_nm,'-')
|
||||
*/
|
||||
, position('-' in bbb.code_nm)
|
||||
, bbb.code_nm
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ①월별 교육 의뢰 현황(그래프 포함) -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no2" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no2 */
|
||||
|
||||
SELECT aaa.mnt AS codeNm
|
||||
, coalesce(bbb.cnt,0) AS cnt
|
||||
FROM (
|
||||
SELECT '01' AS mnt
|
||||
UNION ALL SELECT '02' AS mnt
|
||||
UNION ALL SELECT '03' AS mnt
|
||||
UNION ALL SELECT '04' AS mnt
|
||||
UNION ALL SELECT '05' AS mnt
|
||||
UNION ALL SELECT '06' AS mnt
|
||||
UNION ALL SELECT '07' AS mnt
|
||||
UNION ALL SELECT '08' AS mnt
|
||||
UNION ALL SELECT '09' AS mnt
|
||||
UNION ALL SELECT '10' AS mnt
|
||||
UNION ALL SELECT '11' AS mnt
|
||||
UNION ALL SELECT '12' AS mnt
|
||||
UNION ALL SELECT '13' AS mnt
|
||||
)aaa
|
||||
LEFT OUTER JOIN
|
||||
(
|
||||
SELECT
|
||||
coalesce(aa.CMPTNT_ATHRT,'13') AS codeNm,
|
||||
sum(aa.cnt) AS cnt
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
TO_CHAR(a.req_pnttm, 'MM' ) AS CMPTNT_ATHRT ,
|
||||
count(*) AS cnt
|
||||
FROM
|
||||
vea_cmd_trgt_info a
|
||||
WHERE to_char(a.REQ_PNTTM,'YYYY')=#mngNmbrYr#
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
<isNotEmpty property="searchEduStateCd">
|
||||
AND a.edu_state_cd = #searchEduStateCd#
|
||||
</isNotEmpty>
|
||||
|
||||
GROUP BY
|
||||
TO_CHAR(a.req_pnttm, 'MM' ) )aa
|
||||
|
||||
GROUP BY
|
||||
ROLLUP(aa.CMPTNT_ATHRT)
|
||||
)bbb
|
||||
on(aaa.mnt=bbb.codeNm)
|
||||
ORDER BY aaa.mnt
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ①월별 교육 의뢰 현황(그래프 포함) -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no3" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no3 */
|
||||
|
||||
SELECT
|
||||
CASE WHEN aaa.mnt='A' THEN '성인'
|
||||
WHEN aaa.mnt='Y' THEN '미성년자'
|
||||
ELSE aaa.mnt
|
||||
END
|
||||
AS codeNm
|
||||
|
||||
, coalesce(bbb.cnt,0) AS cnt
|
||||
FROM (
|
||||
SELECT 'A' AS mnt
|
||||
UNION ALL SELECT 'Y' AS mnt
|
||||
UNION ALL SELECT 'ZZ' AS mnt
|
||||
)aaa
|
||||
LEFT OUTER JOIN
|
||||
(
|
||||
SELECT
|
||||
coalesce(aa.CMPTNT_ATHRT,'ZZ') AS codeNm,
|
||||
sum(aa.cnt) AS cnt
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
substring(req_nmbr,1,1) AS CMPTNT_ATHRT ,
|
||||
count(*) AS cnt
|
||||
FROM
|
||||
vea_cmd_trgt_info a
|
||||
/*
|
||||
,
|
||||
ve_edu_aplct b ,
|
||||
ve_prcs_aplct_prd c ,
|
||||
vea_aplct_detail_info d
|
||||
*/
|
||||
WHERE
|
||||
TO_CHAR(a.req_pnttm, 'YYYY')=#mngNmbrYr#
|
||||
|
||||
AND substring(req_nmbr, 1, 1) in ('A','Y')
|
||||
|
||||
/*
|
||||
SUBSTRING(c.edu_strt_pnttm, 1, 4)=mngNmbrYr
|
||||
AND b.aprvl_cd = '60'
|
||||
AND b.prcs_ord = c.prcs_aplct_prd_ord
|
||||
AND a.sspn_idtmt_trgt_ord = b.rnds_ord
|
||||
*/
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
<isNotEmpty property="searchEduStateCd">
|
||||
AND a.edu_state_cd = #searchEduStateCd#
|
||||
</isNotEmpty>
|
||||
/*
|
||||
AND b.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||
AND d.aplct_state_cd = '20'
|
||||
*/
|
||||
|
||||
|
||||
GROUP BY
|
||||
substring(req_nmbr,1,1) )aa
|
||||
|
||||
GROUP BY
|
||||
ROLLUP(aa.CMPTNT_ATHRT)
|
||||
)bbb
|
||||
on(aaa.mnt=bbb.codeNm)
|
||||
ORDER BY aaa.mnt
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ④검찰청별 교육 이수 현황(그래프 포함) -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no4" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no4 */
|
||||
|
||||
SELECT aaa.code AS code
|
||||
, aaa.cnt AS cnt
|
||||
, coalesce(bbb.code_nm, aaa.code) AS codeNm
|
||||
|
||||
FROM (
|
||||
SELECT coalesce(bb.code,aa.CMPTNT_ATHRT) AS code
|
||||
, sum(aa.cnt) AS cnt
|
||||
FROM (
|
||||
SELECT coalesce(a.CMPTNT_ATHRT,'미정') AS CMPTNT_ATHRT
|
||||
, count(*) AS cnt
|
||||
|
||||
FROM
|
||||
vea_cmd_trgt_info a
|
||||
|
||||
,
|
||||
ve_edu_aplct b ,
|
||||
ve_prcs_aplct_prd c ,
|
||||
vea_aplct_detail_info d
|
||||
|
||||
WHERE
|
||||
|
||||
SUBSTRING(c.edu_strt_pnttm, 1, 4)=#mngNmbrYr#
|
||||
AND b.aprvl_cd = '60'
|
||||
AND b.prcs_ord = c.prcs_aplct_prd_ord
|
||||
AND a.cmd_trgt_info_ord = b.rnds_ord
|
||||
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
<isNotEmpty property="searchEduStateCd">
|
||||
AND a.edu_state_cd = #searchEduStateCd#
|
||||
</isNotEmpty>
|
||||
|
||||
AND b.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||
AND d.aplct_state_cd = '20'
|
||||
|
||||
|
||||
GROUP BY a.CMPTNT_ATHRT
|
||||
)aa LEFT OUTER JOIN
|
||||
(
|
||||
SELECT code, code_nm
|
||||
FROM LETTCCMMNDETAILCODE b
|
||||
WHERE b.code_id='VEA008'
|
||||
AND b.use_at='Y'
|
||||
)bb
|
||||
ON aa.cmptnt_athrt = bb.code
|
||||
|
||||
GROUP BY rollup(coalesce(bb.code,aa.CMPTNT_ATHRT))
|
||||
)aaa
|
||||
LEFT OUTER JOIN LETTCCMMNDETAILCODE bbb
|
||||
on(aaa.code=bbb.code)
|
||||
ORDER BY SUBSTRING(bbb.code_nm,1,2)
|
||||
/*
|
||||
, instr(bbb.code_nm,'-')
|
||||
*/
|
||||
, position('-' in bbb.code_nm)
|
||||
, bbb.code_nm
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ⑤월별 교육 이수 현황(그래프 포함) -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no5" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no5 */
|
||||
|
||||
SELECT aaa.mnt AS codeNm
|
||||
, coalesce(bbb.cnt,0) AS cnt
|
||||
, coalesce(bbb.cnt2,0) AS cnt2
|
||||
FROM (
|
||||
SELECT '01' AS mnt
|
||||
UNION ALL SELECT '02' AS mnt
|
||||
UNION ALL SELECT '03' AS mnt
|
||||
UNION ALL SELECT '04' AS mnt
|
||||
UNION ALL SELECT '05' AS mnt
|
||||
UNION ALL SELECT '06' AS mnt
|
||||
UNION ALL SELECT '07' AS mnt
|
||||
UNION ALL SELECT '08' AS mnt
|
||||
UNION ALL SELECT '09' AS mnt
|
||||
UNION ALL SELECT '10' AS mnt
|
||||
UNION ALL SELECT '11' AS mnt
|
||||
UNION ALL SELECT '12' AS mnt
|
||||
UNION ALL SELECT '13' AS mnt
|
||||
)aaa
|
||||
LEFT OUTER JOIN
|
||||
(
|
||||
SELECT
|
||||
coalesce(aa.CMPTNT_ATHRT,'13') AS codeNm
|
||||
, sum(aa.cnt) AS cnt
|
||||
, sum(aa.cnt2) AS cnt2
|
||||
FROM
|
||||
(
|
||||
SELECT CMPTNT_ATHRT
|
||||
, sum(cnt) cnt
|
||||
, count(*) cnt2
|
||||
FROM (
|
||||
SELECT
|
||||
SUBSTRING(c.edu_strt_pnttm,6,2) AS CMPTNT_ATHRT ,
|
||||
count(*) AS cnt
|
||||
FROM
|
||||
vea_cmd_trgt_info a
|
||||
, ve_edu_aplct b
|
||||
, ve_prcs_aplct_prd c
|
||||
, vea_aplct_detail_info d
|
||||
WHERE SUBSTRING(c.edu_strt_pnttm,1,4)=#mngNmbrYr#
|
||||
|
||||
AND b.aprvl_cd='60'
|
||||
AND b.prcs_ord=c.prcs_aplct_prd_ord
|
||||
AND a.cmd_trgt_info_ord=b.rnds_ord
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
<isNotEmpty property="searchEduStateCd">
|
||||
AND a.edu_state_cd = #searchEduStateCd#
|
||||
</isNotEmpty>
|
||||
|
||||
AND b.EDU_APLCT_ORD =d.EDU_APLCT_ORD
|
||||
AND d.aplct_state_cd = '20'
|
||||
|
||||
GROUP BY
|
||||
SUBSTRING(c.edu_strt_pnttm,6,2)
|
||||
, b.prcs_ord
|
||||
)z0
|
||||
GROUP BY CMPTNT_ATHRT
|
||||
)aa
|
||||
|
||||
GROUP BY
|
||||
ROLLUP(aa.CMPTNT_ATHRT)
|
||||
)bbb
|
||||
on(aaa.mnt=bbb.codeNm)
|
||||
ORDER BY aaa.mnt
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ①월별 교육 의뢰 현황(그래프 포함) -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no6" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no6 */
|
||||
|
||||
SELECT
|
||||
CASE WHEN aaa.mnt='A' THEN '성인'
|
||||
WHEN aaa.mnt='Y' THEN '미성년자'
|
||||
ELSE aaa.mnt
|
||||
END
|
||||
AS codeNm
|
||||
|
||||
, coalesce(bbb.cnt,0) AS cnt
|
||||
FROM (
|
||||
SELECT 'A' AS mnt
|
||||
UNION ALL SELECT 'Y' AS mnt
|
||||
UNION ALL SELECT 'ZZ' AS mnt
|
||||
)aaa
|
||||
LEFT OUTER JOIN
|
||||
(
|
||||
SELECT
|
||||
coalesce(aa.CMPTNT_ATHRT,'ZZ') AS codeNm,
|
||||
sum(aa.cnt) AS cnt
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
substring(req_nmbr,1,1) AS CMPTNT_ATHRT ,
|
||||
count(*) AS cnt
|
||||
FROM
|
||||
vea_sspn_idmt_trgt a
|
||||
|
||||
,
|
||||
ve_edu_aplct b ,
|
||||
ve_prcs_aplct_prd c ,
|
||||
vea_aplct_detail_info d
|
||||
|
||||
WHERE
|
||||
/*
|
||||
TO_CHAR(a.req_pnttm, 'YYYY')=mngNmbrYr
|
||||
*/
|
||||
|
||||
substring(req_nmbr, 1, 1) in ('A','Y')
|
||||
|
||||
AND SUBSTRING(c.edu_strt_pnttm, 1, 4)=#mngNmbrYr#
|
||||
AND b.aprvl_cd = '60'
|
||||
AND b.prcs_ord = c.prcs_aplct_prd_ord
|
||||
AND a.sspn_idtmt_trgt_ord = b.rnds_ord
|
||||
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
<isNotEmpty property="searchEduStateCd">
|
||||
AND a.edu_state_cd = #searchEduStateCd#
|
||||
</isNotEmpty>
|
||||
|
||||
AND b.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||
AND d.aplct_state_cd = '20'
|
||||
|
||||
|
||||
|
||||
GROUP BY
|
||||
substring(req_nmbr,1,1) )aa
|
||||
|
||||
GROUP BY
|
||||
ROLLUP(aa.CMPTNT_ATHRT)
|
||||
)bbb
|
||||
on(aaa.mnt=bbb.codeNm)
|
||||
ORDER BY aaa.mnt
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 교육실정통계- ⑦월별 교육차시별 차시명, 이수, 미이수, 연기인원 통계 -->
|
||||
<select id="VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no7" parameterClass="VEInstrDetailVO" resultClass="VELctrDetailVO">
|
||||
/* VESttstMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no7 */
|
||||
|
||||
SELECT aaa.mnt AS codeNm
|
||||
, coalesce(ccc.title,'ZZZ') AS codeNm2
|
||||
, coalesce(ccc.title,coalesce(bbb.cnt::character,0::character)) AS codeNm3
|
||||
, case
|
||||
when aaa.mnt='13' then '합계'
|
||||
when ccc.title is null then aaa.mnt||'월 합계'
|
||||
else aaa.mnt||'월'
|
||||
end as codeNm4
|
||||
, coalesce(bbb.edu_cd_20,0) AS eduCd20
|
||||
, coalesce(bbb.edu_cd_40,0) AS eduCd40
|
||||
, coalesce(bbb.edu_cd_50,0) AS eduCd50
|
||||
, coalesce(bbb.cnt,0) AS cnt
|
||||
FROM (
|
||||
SELECT '01' AS mnt
|
||||
UNION ALL SELECT '02' AS mnt
|
||||
UNION ALL SELECT '03' AS mnt
|
||||
UNION ALL SELECT '04' AS mnt
|
||||
UNION ALL SELECT '05' AS mnt
|
||||
UNION ALL SELECT '06' AS mnt
|
||||
UNION ALL SELECT '07' AS mnt
|
||||
UNION ALL SELECT '08' AS mnt
|
||||
UNION ALL SELECT '09' AS mnt
|
||||
UNION ALL SELECT '10' AS mnt
|
||||
UNION ALL SELECT '11' AS mnt
|
||||
UNION ALL SELECT '12' AS mnt
|
||||
UNION ALL SELECT '13' AS mnt
|
||||
)aaa
|
||||
LEFT OUTER JOIN
|
||||
(
|
||||
SELECT
|
||||
coalesce(aa.CMPTNT_ATHRT,'13') AS codeNm
|
||||
, coalesce(aa.prcs_ord,'13') AS codeNm2
|
||||
, sum(aa.edu_cd_20) AS edu_cd_20
|
||||
, sum(aa.edu_cd_40) AS edu_cd_40
|
||||
, sum(aa.edu_cd_50) AS edu_cd_50
|
||||
, count(*) cnt
|
||||
FROM
|
||||
(
|
||||
SELECT CMPTNT_ATHRT
|
||||
, prcs_ord
|
||||
, sum(edu_cd_20) edu_cd_20
|
||||
, sum(edu_cd_40) edu_cd_40
|
||||
, sum(edu_cd_50) edu_cd_50
|
||||
FROM (
|
||||
SELECT
|
||||
SUBSTRING(c.edu_strt_pnttm,6,2) AS CMPTNT_ATHRT
|
||||
, count(*) AS cnt
|
||||
, b.prcs_ord
|
||||
, sum(CASE WHEN a.edu_state_cd='20' AND d.aplct_state_cd = '20' THEN 1 ELSE 0 END) AS edu_cd_20
|
||||
, sum(CASE WHEN d.aplct_state_cd='10' THEN 1 ELSE 0 END) AS edu_cd_40
|
||||
, sum(CASE WHEN d.aplct_state_cd='60' THEN 1 ELSE 0 END) AS edu_cd_50
|
||||
FROM
|
||||
vea_sspn_idmt_trgt a
|
||||
, ve_edu_aplct b
|
||||
, ve_prcs_aplct_prd c
|
||||
, vea_aplct_detail_info d
|
||||
WHERE SUBSTRING(c.edu_strt_pnttm,1,4)=#mngNmbrYr#
|
||||
|
||||
AND b.aprvl_cd='60'
|
||||
AND b.prcs_ord=c.prcs_aplct_prd_ord
|
||||
AND a.sspn_idtmt_trgt_ord=b.rnds_ord
|
||||
|
||||
/* 병합제거시 주석 제거 할것
|
||||
AND a.prcs_aplct_prd_ord_cmplt IS null */
|
||||
|
||||
/* 20-이수 40-미이수 50-연기
|
||||
AND a.edu_state_cd IN ('20','40','50') */
|
||||
|
||||
AND b.EDU_APLCT_ORD =d.EDU_APLCT_ORD
|
||||
AND d.aplct_state_cd = '20'
|
||||
|
||||
GROUP BY
|
||||
SUBSTRING(c.edu_strt_pnttm,6,2)
|
||||
, b.prcs_ord
|
||||
)z0
|
||||
GROUP BY CMPTNT_ATHRT
|
||||
, prcs_ord
|
||||
)aa
|
||||
|
||||
GROUP BY
|
||||
ROLLUP(aa.CMPTNT_ATHRT, aa.prcs_ord)
|
||||
)bbb
|
||||
on(aaa.mnt=bbb.codeNm)
|
||||
LEFT OUTER JOIN ve_prcs_aplct_prd ccc
|
||||
on(bbb.codeNm2=ccc.prcs_aplct_prd_ord)
|
||||
ORDER BY aaa.mnt, ccc.title
|
||||
|
||||
</select>
|
||||
</sqlMap>
|
||||
|
||||
@ -216,7 +216,7 @@
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
|
||||
-->
|
||||
<p class="list_util_p">
|
||||
①검찰청별 교육 의뢰 현황
|
||||
①특허청 교육 의뢰 현황
|
||||
</p>
|
||||
<div>
|
||||
<!-- <button type="button" class="btn_down_excel" onclick="excelDownLoadArea();">엑셀 다운로드(강의지역)</button> -->
|
||||
@ -717,7 +717,7 @@
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
|
||||
-->
|
||||
<p class="list_util_p">
|
||||
④검찰청별 교육 이수 현황
|
||||
④특허청별 교육 이수 현황
|
||||
</p>
|
||||
<div>
|
||||
<!-- <button type="button" class="btn_down_excel" onclick="excelDownLoadArea();">엑셀 다운로드(강의지역)</button> -->
|
||||
|
||||
Loading…
Reference in New Issue
Block a user