2024-02-22 11:30 실무역량 수량 맞추기 쿼리 수정

This commit is contained in:
myname 2024-02-22 11:30:48 +09:00
parent d434a0d29e
commit 0652f7c69d
11 changed files with 120 additions and 180 deletions

View File

@ -568,8 +568,8 @@ public class SspnIdtmtController {
VEEduAplctVO vEEduAplctVO = new VEEduAplctVO(); VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
String s_eduAplctOrd = eduAplctGnrService.getNextStringId();
vEEduAplctVO.setEduAplctOrd(eduAplctGnrService.getNextStringId()); vEEduAplctVO.setEduAplctOrd(s_eduAplctOrd);
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_60); // 기소유예 vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_60); // 기소유예
vEEduAplctVO.setAprvlCd("10"); // 승인코드 VE0003 10 - 요청, 20 - 승인, 30 - 반려 vEEduAplctVO.setAprvlCd("10"); // 승인코드 VE0003 10 - 요청, 20 - 승인, 30 - 반려
@ -589,7 +589,7 @@ public class SspnIdtmtController {
//암호화 //암호화
vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO); vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO);
vEEduAplctVO.setRndsOrd(vEPrcsDetailVO.getSspnIdtmtTrgtOrd()); //2024-02-07 추가 신청서 정보에 대상자 정보를 넣어야 추후 구분이 가능해서 추가함 vEEduAplctVO.setRndsOrd(vEPrcsDetailVO.getSspnIdtmtTrgtOrd()); //2024-02-07 추가 신청서 정보에 대상자 정보를 넣어야 추후 구분이 가능해서 추가함
sspnIdtmtService.insertVeEduAplct(vEEduAplctVO); sspnIdtmtService.insertVeEduAplct(vEEduAplctVO);
CndtnTrgtMngVO cndtnTrgtMngVO = new CndtnTrgtMngVO(); CndtnTrgtMngVO cndtnTrgtMngVO = new CndtnTrgtMngVO();
@ -597,6 +597,9 @@ public class SspnIdtmtController {
cndtnTrgtMngVO.setUserId(loginVO.getUniqId()); cndtnTrgtMngVO.setUserId(loginVO.getUniqId());
cndtnTrgtMngVO.setSspnIdtmtTrgtOrd(vEPrcsDetailVO.getSspnIdtmtTrgtOrd()); cndtnTrgtMngVO.setSspnIdtmtTrgtOrd(vEPrcsDetailVO.getSspnIdtmtTrgtOrd());
cndtnTrgtMngVO.setEduStateCd("25"); // 신청 cndtnTrgtMngVO.setEduStateCd("25"); // 신청
cndtnTrgtMngVO.setEduAplctOrd(s_eduAplctOrd); //동일한 대상자가 어떤 신청서와 맞는지 매칭에 필요함
//cndtnTrgtMngVO.setPrcsAplctPrdOrdCmplt(vEPrcsDetailVO.getPrcsAplctPrdOrd()); // 교육 번호 //cndtnTrgtMngVO.setPrcsAplctPrdOrdCmplt(vEPrcsDetailVO.getPrcsAplctPrdOrd()); // 교육 번호
// , edu_state_cd = #eduStateCd# // , edu_state_cd = #eduStateCd#
// , prcs_aplct_prd_ord_cmplt = #prcsAplctPrdOrdCmplt# // , prcs_aplct_prd_ord_cmplt = #prcsAplctPrdOrdCmplt#

View File

@ -653,7 +653,7 @@ public class CndtnInstrMngController {
//통계- 월별 횟수/교육인원(그래프 포함) //통계- 월별 횟수/교육인원(그래프 포함)
//vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword()); //vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword());
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail); vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
List<VELctrDetailVO> selectAsgnmInfoT2List = vEInstrMixService.selectEduPrfrmInfo_tngr_no1(vEInstrDetailVODetail); List<VELctrDetailVO> selectAsgnmInfoT2List = vEInstrMixService.selectEduPrfrmInfo_csi_no1(vEInstrDetailVODetail);
//복호화 //복호화
//selectAsgnmInfoT2List = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List); //selectAsgnmInfoT2List = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List);
@ -666,17 +666,10 @@ public class CndtnInstrMngController {
// 세팅값 // 세팅값
String title = "교육실적통계-월별 횟수.교육인원"; String title = "교육실적통계-검찰청별 교육 의뢰 현황";
int[] width = { int[] width = {
4000, 4000 4000, 4000
, 4000
, 4000, 4000
//, 4000
, 4000
, 4000, 4000, 4000, 4000, 4000
, 4000, 4000, 4000, 4000, 4000
}; // 너비 }; // 너비
@ -684,28 +677,14 @@ public class CndtnInstrMngController {
String[] header = { String[] header = {
"구분" "구분"
, "횟수/인원" , "의뢰(명)"
, "1월"
//, "요일"
, "2월"
, "3월", "4월", "5월", "6월", "7월"
, "8월", "9월", "10월", "11월", "12월"
, "합계"
}; };
String[] order = { String[] order = {
"EduSlctCd" "CodeNm"
, "Chasi" , "Cnt"
, "Mnt01"
//, "wCnt"
, "Mnt02"
, "Mnt03", "Mnt04", "Mnt05", "Mnt06", "Mnt07"
, "Mnt08", "Mnt09", "Mnt10", "Mnt11", "Mnt12"
, "MntSum"
}; };

View File

@ -403,6 +403,9 @@
<isNotEmpty property="reqStateCd"> <isNotEmpty property="reqStateCd">
, req_state_cd = #reqStateCd# , req_state_cd = #reqStateCd#
</isNotEmpty> </isNotEmpty>
<isNotEmpty property="eduAplctOrd">
, edu_aplct_ord = #eduAplctOrd#
</isNotEmpty>
, edu_state_cd = #eduStateCd# , edu_state_cd = #eduStateCd#
, prcs_aplct_prd_ord_cmplt = #prcsAplctPrdOrdCmplt# , prcs_aplct_prd_ord_cmplt = #prcsAplctPrdOrdCmplt#

View File

@ -2658,7 +2658,7 @@ VALUES
INNER JOIN lettngnrlmber b INNER JOIN lettngnrlmber b
ON a.scrty_dtrmn_trget_id = b.mber_id ON a.scrty_dtrmn_trget_id = b.mber_id
WHERE a.author_code = 'ROLE_USER_MEMBER' WHERE a.author_code = 'ROLE_USER_MEMBER'
AND b.MBER_NM IS NOT NULL <!-- AND b.MBER_NM IS NOT NULL -->
<isNotEmpty property="searchKeyword"> <isNotEmpty property="searchKeyword">
AND AND
b.MBER_NM LIKE CONCAT('%' , #searchKeyword# , '%') b.MBER_NM LIKE CONCAT('%' , #searchKeyword# , '%')

View File

@ -128,6 +128,7 @@
vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId, vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId,
vadi.CNCL_CN AS cnclCn, vadi.CNCL_CN AS cnclCn,
le.MBER_NM AS userNm, le.MBER_NM AS userNm,
le.MBER_ID AS mberId,
<include refid="VEEduMIXDAO.select_column_name"/>, <include refid="VEEduMIXDAO.select_column_name"/>,
a.CHRG_NM AS chrgNm , a.CHRG_NM AS chrgNm ,
a.D_BIRTH AS dBirth , a.D_BIRTH AS dBirth ,
@ -342,6 +343,7 @@
vadi.APLCT_STATE_CD AS aplctStateCd, /* 이수 상태 */ vadi.APLCT_STATE_CD AS aplctStateCd, /* 이수 상태 */
vsit.edu_state_cd AS eduStateCd, vsit.edu_state_cd AS eduStateCd,
le.MBER_NM AS userNm, le.MBER_NM AS userNm,
le.MBER_ID AS mberId,
<include refid="VEEduMIXDAO.select_column_name"/>, <include refid="VEEduMIXDAO.select_column_name"/>,
vsit.trgt_nm AS trgtNm, vsit.trgt_nm AS trgtNm,
vsit.sspn_idtmt_trgt_ord AS sspnIdtmtTrgtOrd, vsit.sspn_idtmt_trgt_ord AS sspnIdtmtTrgtOrd,

View File

@ -379,7 +379,7 @@
WHERE x.prcs_ord = a.prcs_aplct_prd_ord WHERE x.prcs_ord = a.prcs_aplct_prd_ord
AND x.sbmt_yn='Y' AND x.sbmt_yn='Y'
AND x.aprvl_cd != 40 /*취소된 신청자 제거*/ AND x.aprvl_cd != 40 /*취소된 신청자 제거*/
AND le.MBER_NM IS NOT NULL <!-- AND le.MBER_NM IS NOT NULL -->
) AS nosCnt1 ) AS nosCnt1
/* /*
신청자 정보 신청자 정보
@ -463,7 +463,7 @@
AND x.sbmt_yn='Y' AND x.sbmt_yn='Y'
AND x.aprvl_cd != 40 /*취소된 신청자 제거*/ AND x.aprvl_cd != 40 /*취소된 신청자 제거*/
AND x.aprvl_cd != 30 /*취소된 신청자 제거*/ AND x.aprvl_cd != 30 /*취소된 신청자 제거*/
AND le.MBER_NM IS NOT NULL <!-- AND le.MBER_NM IS NOT NULL -->
) AS nosCnt1 ) AS nosCnt1
/* /*
신청자 정보 신청자 정보

View File

@ -662,15 +662,15 @@
<div class="tb_type01"> <div class="tb_type01">
<table> <table>
<colgroup> <colgroup>
<col style="width: 5%"> <col style="width: 50px">
<col style="width: 180px;">
<col style="width: 12%">
<col style="width: 12%">
<col style="width: 210px;"> <col style="width: 210px;">
<col style="width: 150px;">
<col style="width: auto">
<col style="width: 150px;">
<col style="width: 110px;">
<col style="width: 210px;"> <col style="width: 210px;">
<col style="width: 210px;"> <col style="width: 150px;">
<col style="width: 180px;"> <%-- <col style="width: 140px;"> --%>
<col style="width: 140px;">
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
@ -682,7 +682,7 @@
<th>교육이수여부</th> <th>교육이수여부</th>
<th>교육이수상태변경</th> <th>교육이수상태변경</th>
<th>설문조사</th> <th>설문조사</th>
<th>이수증</th> <!-- <th>이수증</th> -->
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -696,7 +696,8 @@
data-clphone="<c:out value='${list.phone}' />" title="Check" type="checkbox"/> data-clphone="<c:out value='${list.phone}' />" title="Check" type="checkbox"/>
</td> </td>
<td> <td>
<c:out value="${list.userNm}"/>(<c:out value="${list.trgtNm}"/>)(<c:out value="${list.sspnIdtmtTrgtOrd}"/>) <c:out value="${list.trgtNm}"/><br/>(<c:out value="${list.mberId}"/>)
<%-- <br/>(<c:out value="${list.sspnIdtmtTrgtOrd}"/>) --%>
</td> </td>
<td> <td>
<c:out value="${list.dBirth}"/> <c:out value="${list.dBirth}"/>
@ -769,34 +770,26 @@
</c:otherwise> </c:otherwise>
</c:choose> </c:choose>
</td> </td>
<td> <!-- <td> -->
<%-- <c:choose> --%> <%-- <c:choose> --%>
<%-- <c:when test="${list.qestRsltExists }"> --%> <%-- <c:when test="${list.aplctStateCd eq 20 and list.qestnrId10Cnt gt 0}"> --%>
<%-- <button type="button" title="이수증" class="btn_type04" onclick="fncCmpltCrtfc('<c:out value="${info.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증</button> --%> <%-- <button type="button" title="이수증" class="btn_type01" onclick="fncCmpltCrtfc('<c:out value="${list.prcsOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증</button> --%>
<%-- </c:when> --%>
<%-- <c:when test="${list.aplctStateCd eq 20 and not(list.qestnrId10Cnt gt 0)}"> --%>
<!-- 설문등록 후 발급 -->
<%-- </c:when> --%> <%-- </c:when> --%>
<%-- <c:otherwise> --%> <%-- <c:otherwise> --%>
<!-- - --> <!-- - -->
<%-- </c:otherwise> --%> <%-- </c:otherwise> --%>
<%-- </c:choose> --%> <%-- </c:choose> --%>
<!-- </td> -->
<c:choose>
<c:when test="${list.aplctStateCd eq 20 and list.qestnrId10Cnt gt 0}">
<button type="button" title="이수증" class="btn_type01" onclick="fncCmpltCrtfc('<c:out value="${list.prcsOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증</button>
</c:when>
<c:when test="${list.aplctStateCd eq 20 and not(list.qestnrId10Cnt gt 0)}">
설문등록 후 발급
</c:when>
<c:otherwise>
-
</c:otherwise>
</c:choose>
</td>
</tr> </tr>
</c:forEach> </c:forEach>
</c:when> </c:when>
<c:otherwise> <c:otherwise>
<tr> <tr>
<td colspan="6">데이터가 없습니다.</td> <td colspan="8">데이터가 없습니다.</td>
</tr> </tr>
</c:otherwise> </c:otherwise>
</c:choose> </c:choose>

View File

@ -84,7 +84,7 @@
function excelDownLoad_no1(){ function excelDownLoad_no1(){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/eduPrfrmMngExcelDownLoad_tngr_no1.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/eduPrfrmMngExcelDownLoad_csi_no1.do'/>";
listForm.submit(); listForm.submit();
} }
@ -207,105 +207,6 @@
</div> </div>
</div> </div>
<!-- list -->
<div class="tb_type01">
<table>
<colgroup>
<%-- <col style="width: 10%"> --%>
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: auto;">
</colgroup>
<thead>
<tr>
<!-- <th>대상</th> -->
<th>구분</th>
<th>의뢰(명)</th>
<th>1월</th>
<th>2월</th>
<th>3월</th>
<th>4월</th>
<th>5월</th>
<th>6월</th>
<th>7월</th>
<th>8월</th>
<th>9월</th>
<th>10월</th>
<th>11월</th>
<th>12월</th>
<th>합계</th>
</tr>
</thead>
<tbody>
<c:set var="title1" value="" />
<c:set var="title2" value="" />
<c:forEach var="list" items="${list_no1}" varStatus="status">
<tr>
<!--
<td>
<c:choose>
<c:when test="${list.divCd eq title1}">
</c:when>
<c:otherwise>
<c:out value="${list.divCd}"/>
</c:otherwise>
</c:choose>
</td>
-->
<td><c:out value="${list.codeNm}"/></td>
<td><fmt:formatNumber value="${list.cnt}" pattern="#,###"/></td>
<td>
<c:choose>
<c:when test="${list.eduSlctCd eq title2}">
</c:when>
<c:otherwise>
<c:out value="${list.eduSlctCd}"/>
</c:otherwise>
</c:choose>
</td>
<td><fmt:formatNumber value="${list.mnt02}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt03}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt04}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt05}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt06}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt07}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt08}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt09}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt10}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt11}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mnt12}" pattern="#,###"/></td>
<td><fmt:formatNumber value="${list.mntSum}" pattern="#,###"/></td>
</tr>
<c:set var="title1" value="${list.divCd}" />
<c:set var="title2" value="${list.eduSlctCd}" />
</c:forEach>
<c:if test="${empty list_no1}">
<tr><td colspan="15"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<!-- 월별 횟수/교육인원 차트 --> <!-- 월별 횟수/교육인원 차트 -->
<!-- 횟수합계 - dataNOT / 인원합계 = dataNOP --> <!-- 횟수합계 - dataNOT / 인원합계 = dataNOP -->
@ -407,6 +308,52 @@
</div> </div>
<!-- /월별 횟수/교육인원 차트 --> <!-- /월별 횟수/교육인원 차트 -->
<!-- list -->
<div class="tb_type01">
<table>
<colgroup>
<%-- <col style="width: 10%"> --%>
<col style="width: 200px">
<col style="width: 200px">
</colgroup>
<thead>
<tr>
<!-- <th>대상</th> -->
<th>구분</th>
<th>의뢰(명)</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list_no1}" varStatus="status">
<tr>
<!--
<td>
<c:choose>
<c:when test="${list.divCd eq title1}">
</c:when>
<c:otherwise>
<c:out value="${list.divCd}"/>
</c:otherwise>
</c:choose>
</td>
-->
<td><c:out value="${list.codeNm}"/></td>
<td><fmt:formatNumber value="${list.cnt}" pattern="#,###"/></td>
</tr>
</c:forEach>
<c:if test="${empty list_no1}">
<tr><td colspan="2"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<!-- list util --> <!-- list util -->
<div class="list_util"> <div class="list_util">

View File

@ -725,17 +725,17 @@
<div class="tb_type01"> <div class="tb_type01">
<table> <table>
<colgroup> <colgroup>
<col style="width: 5%"> <col style="width: 50px">
<col style="width: 10%;"> <col style="width: 210px">
<col style="width: 10%;"> <col style="width: 100px">
<col style="width: 10%;"> <col style="width: auto;">
<col style="width: 10%;"> <col style="width: 150px">
<col style="width: 10%;"> <col style="width: 100px">
<col style="width: 10%;"> <col style="width: 100px">
<col style="width: 10%;"> <col style="width: 100px">
<col style="width: 10%;"> <col style="width: 150px">
<col style="width: 10%;"> <col style="width: 150px">
<col style="width: 10%;"> <col style="width: 150px">
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
@ -769,7 +769,7 @@
<%-- value="${list.eduAplctOrd}" title="Check" type="checkbox"/> --%> <%-- value="${list.eduAplctOrd}" title="Check" type="checkbox"/> --%>
<!-- </td> --> <!-- </td> -->
<td> <td>
<c:out value="${list.userNm}"/> <c:out value="${list.mberId}"/>
</td> </td>
<td> <td>
<c:out value="${list.chrgNm}"/> <c:out value="${list.chrgNm}"/>

View File

@ -531,11 +531,19 @@
<div class="tb_type01"> <div class="tb_type01">
<table> <table>
<colgroup> <colgroup>
<col style="width: 5%"> <col style="width: 50px">
<col style="width: 5%">
<col style="width: 210px;"><!-- name --> <col style="width: 210px;"><!-- name -->
<col style="width: 100px;">
<col style="width: 100px;">
<col style="width: 100px;">
<col style="width: 150px;">
<col style="width: auto;"><!-- 제출일 --> <col style="width: auto;"><!-- 제출일 -->
<col style="width: 210px;"><!-- 신청상태 --> <col style="width: 100px;">
<col style="width: 100px;">
<col style="width: 110px;"><!-- name -->
<col style="width: 100px;">
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
@ -565,7 +573,7 @@
value="${list.eduAplctOrd}" title="Check" type="checkbox"/> value="${list.eduAplctOrd}" title="Check" type="checkbox"/>
</td> </td>
<td> <td>
<c:out value="${list.userNm}"/> <c:out value="${list.mberId}"/>
</td> </td>
<td> <td>
<c:out value="${list.sbmtPnttm}"/> <c:out value="${list.sbmtPnttm}"/>

View File

@ -77,12 +77,14 @@
} }
function fncGoList(){ function fncGoList(){
/*
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/web/ve/aplct/sspnIdtmt/eduAplctList.do'/>"; listForm.action = "<c:url value='/web/ve/aplct/sspnIdtmt/eduAplctList.do'/>";
listForm.submit(); listForm.submit();
*/
history.back(-1);
} }
function fncSendSubmit(){ function fncSendSubmit(){
if(confirm("제출 하시겠습니까?")){ if(confirm("제출 하시겠습니까?")){
$.ajax({ $.ajax({
@ -417,6 +419,9 @@
</div> </div>
<div class="btn_wrap btn_layout01"> <div class="btn_wrap btn_layout01">
<div class="btn_left"> <div class="btn_left">
<button type="button" id="listBtn" class="btnType02" onclick="fncGoList();">
목록
</button>
</div> </div>
<div class="btn_center"> <div class="btn_center">
</div> </div>
@ -459,7 +464,7 @@
<th scope="row">주민번호앞자리</th> <th scope="row">주민번호앞자리</th>
<td> <td>
<div class="calendar_wrap"> <div class="calendar_wrap">
<duet-date-picker identifier="date" id="dBirth" class="startDate" id="" min="1940-01-01"></duet-date-picker> <!-- <duet-date-picker identifier="date" id="dBirth" class="" id="" min="1940-01-01"></duet-date-picker> -->
</div> </div>
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker2.js"></script> <script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker2.js"></script>
</td> </td>