2022-12-07 18:03 통계 화면 수정

This commit is contained in:
myname 2022-12-07 18:03:25 +09:00
parent a624b40cfc
commit 85b00f0c67
3 changed files with 80 additions and 17 deletions

View File

@ -58,9 +58,9 @@ public class SttsPrcsController {
@RequestMapping(value = "/kccadr/stts/sttsAdjPrcs.do") @RequestMapping(value = "/kccadr/stts/sttsAdjPrcs.do")
public String sttsAdjPrcs(ModelMap model, SttsVO sttsVO) throws Exception { public String sttsAdjPrcs(ModelMap model, SttsVO sttsVO) throws Exception {
// List<SttsVO> list = sttsService.sttsAdjPrcsList(sttsVO); List<SttsVO> list = sttsService.sttsAdjPrcsList(sttsVO);
// model.addAttribute("list", list); model.addAttribute("list", list);
// model.addAttribute("sttsVO", sttsVO); model.addAttribute("sttsVO", sttsVO);
return "/kccadr/stts/sttsAdjPrcs"; return "/kccadr/stts/sttsAdjPrcs";
} }
@ -217,12 +217,12 @@ public class SttsPrcsController {
}; // 헤더에 들어갈 이름 }; // 헤더에 들어갈 이름
String[] order = { String[] order = {
"AdrNo", "SbmtDeDay", "AppliCantNm", "ResPonDentNm", "CcTyTx" "AdrNo", "SbmtDeDay", "AppliCantNm", "ResPonDentNm", "CcTyTx"
, "ReqCn2", "ReqCn1", "", "", "" , "ReqCn2", "ReqCn1", "SuccPer", "ResultNm", "SuccPer"
, "CloseCn1", "", "MemDeptNm", "", "AdrCost" , "CloseCn1", "SuccPer", "MemDeptNm", "SuccPer", "AdrCost"
, "", "", "", "ReqTy", "" , "SuccPer", "SuccPer", "SuccPer", "ReqTy", "RpplAddr1"
, "", "" , "RpplAddr2", "SuccPer"
}; // vo 내부의 필드 이름 (첫글자 대문자, 낙타체 사용) }; // vo 내부의 필드 이름 (첫글자 대문자, 낙타체 사용)
// 호출 // 호출
SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(list, header, order, width, title); SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(list, header, order, width, title);

View File

@ -112,12 +112,12 @@
/* AND am.stat_cd = '400000' -- 종결만 조회한다면 주석 제거 */ /* AND am.stat_cd = '400000' -- 종결만 조회한다면 주석 제거 */
<isEqual property="searchCondition" compareValue="1"> <isEqual property="searchCondition" compareValue="1">
<isNotEmpty property="searchMonth"> <isNotEmpty property="searchMonth2">
/* 월 */ /* 월 */
AND am.appr_de BETWEEN TO_DATE(#searchYear#||#searchMonth#||'01', 'yyyyMMdd') AND am.appr_de BETWEEN TO_DATE(#searchYear#||#searchMonth2#||'01', 'yyyyMMdd')
AND LAST_DAY(TO_DATE(#searchYear#||#searchMonth#, 'yyyyMM')) AND LAST_DAY(TO_DATE(#searchYear#||#searchMonth2#, 'yyyyMM'))
</isNotEmpty> </isNotEmpty>
<isEmpty property="searchMonth"> <isEmpty property="searchMonth2">
<isNotEmpty property="searchYear"> <isNotEmpty property="searchYear">
/* 년 */ /* 년 */
AND am.appr_de BETWEEN TO_DATE(#searchYear#||'0101', 'yyyyMMdd') AND am.appr_de BETWEEN TO_DATE(#searchYear#||'0101', 'yyyyMMdd')
@ -233,6 +233,23 @@
<!-- 조정 사건부 현황 통계화면 --> <!-- 조정 사건부 현황 통계화면 -->
<select id="SttsDAO.sttsAdjAdrList" parameterClass="SttsVO" resultClass="SttsVO"> <select id="SttsDAO.sttsAdjAdrList" parameterClass="SttsVO" resultClass="SttsVO">
/*히스토리*/
WITH hst AS (
SELECT *
FROM adr_hstry hst
WHERE EXISTS (
SELECT 1
FROM (
SELECT
MAX(adr_hstry_seq) AS max_adr_hstry_seq
FROM adr_hstry
WHERE '309000' > stat_cd
GROUP BY adr_seq
) hst2
WHERE hst2.max_adr_hstry_seq = hst.adr_hstry_seq
)
)
SELECT M.ADR_NO AS adrNo SELECT M.ADR_NO AS adrNo
/* 조정사건번호 */ /* 조정사건번호 */
, ,
@ -266,8 +283,10 @@
, ,
M.adr_cost AS adrCost M.adr_cost AS adrCost
/*조정비용*/ /*조정비용*/
/*
, ,
M.req_ty AS reqTy M.req_ty AS reqTy
*/
/*신청유형*/ /*신청유형*/
, ,
ACD.close_cn1 AS closeCn1 ACD.close_cn1 AS closeCn1
@ -276,13 +295,40 @@
, ,
ROW_NUMBER() OVER ( ORDER BY M.ADR_NO IS NULL DESC, M.ADR_NO DESC, M.SBMT_DE DESC ) rnum , ROW_NUMBER() OVER ( ORDER BY M.ADR_NO IS NULL DESC, M.ADR_NO DESC, M.SBMT_DE DESC ) rnum ,
M.ADR_SEQ AS adrSeq M.ADR_SEQ AS adrSeq
/* 조정일련번호 */ /* 조정일련번호 */
,
CASE
WHEN M.stat_cd = '400000'
AND hst.stat_cd = '306050'
THEN '성립'
/* 조정종결
AND 직권조정결정서 확인완료 */
WHEN hst.stat_cd = '304050'
THEN '성립'
/* 조정조서 결재완료 */
WHEN hst.stat_cd = '307050'
THEN '불성립'
/* 불성립종결통보서 결재완료 */
WHEN hst.stat_cd = '305050'
THEN '취하'
/* 취하종결통보서 결재완료 */
ELSE ''
END AS resultNm
/* 조정결과 */
, M.req_ol_cd AS reqOlCd , M.req_ol_cd AS reqOlCd
/* 온_오프라인_과거사건 구분 코드 1-오프라인, 2-과거사건 */ /* 온_오프라인_과거사건 구분 코드 1-오프라인, 2-과거사건 */
,req_ty.code_nm AS reqTy /* 신청인 유형 */
,IF(ar.rppl_ty = '10', ar.rppl_addr, null) AS rpplAddr1 /* 신청인 지역(주소 암호화라 자바 파싱 필요) */
,IF(ar.rppl_ty = '20', ar.rppl_addr, null) AS rpplAddr2 /* 피신청인 지역(주소 암호화라 자바 파싱 필요) */
FROM ADR_MGR_MASTER M FROM ADR_MGR_MASTER M
LEFT JOIN LEFT JOIN
( SELECT ADR_SEQ , ( SELECT ADR_SEQ ,
@ -307,6 +353,11 @@
ON RCD.CODE_ID = 'CC014' ON RCD.CODE_ID = 'CC014'
AND RCD.CODE = TRIM ( M.REQ_OL_CD ) AND RCD.CODE = TRIM ( M.REQ_OL_CD )
*/ */
LEFT OUTER JOIN hst
ON M.adr_seq = hst.adr_seq
/* 히스토리 */
LEFT JOIN LETTCCMMNDETAILCODE CCD LEFT JOIN LETTCCMMNDETAILCODE CCD
ON CCD.CODE_ID = 'CC002' ON CCD.CODE_ID = 'CC002'
AND CCD.CODE = TRIM ( M.CC_TY ) AND CCD.CODE = TRIM ( M.CC_TY )
@ -339,6 +390,9 @@
LEFT JOIN ADR_CLOSE_DOC ACD LEFT JOIN ADR_CLOSE_DOC ACD
ON ACD.ADR_SEQ = AM.ADR_SEQ ON ACD.ADR_SEQ = AM.ADR_SEQ
AND ACD.ADR_SN = AM.ADR_SN AND ACD.ADR_SN = AM.ADR_SN
LEFT OUTER JOIN lettccmmndetailcode req_ty ON M.req_ty = req_ty.code AND req_ty.code_id = 'CC015' /* 신청인 유형 */
INNER JOIN adr_rppl ar ON M.adr_seq = ar.adr_seq /* 관리인 */
WHERE 1=1 WHERE 1=1
AND M.stat_cd ='400000' /* 현재는 종결된 사건만 필요시 조절한다. */ AND M.stat_cd ='400000' /* 현재는 종결된 사건만 필요시 조절한다. */
@ -348,7 +402,7 @@
AND am.appr_de BETWEEN TO_DATE(#searchYear#||#searchMonth2#||'01', 'yyyyMMdd') AND am.appr_de BETWEEN TO_DATE(#searchYear#||#searchMonth2#||'01', 'yyyyMMdd')
AND LAST_DAY(TO_DATE(#searchYear#||#searchMonth2#, 'yyyyMM')) AND LAST_DAY(TO_DATE(#searchYear#||#searchMonth2#, 'yyyyMM'))
</isNotEmpty> </isNotEmpty>
<isEmpty property="searchMonth"> <isEmpty property="searchMonth2">
<isNotEmpty property="searchYear"> <isNotEmpty property="searchYear">
/* 년 */ /* 년 */
AND am.appr_de BETWEEN TO_DATE(#searchYear#||'0101', 'yyyyMMdd') AND am.appr_de BETWEEN TO_DATE(#searchYear#||'0101', 'yyyyMMdd')

View File

@ -44,7 +44,7 @@ function onSearchCondition() {
function fncExcel(){ function fncExcel(){
// 월만 선택시 년도 선택 필수 // 월만 선택시 년도 선택 필수
if ($("#searchCondition").val() == "1" if ($("#searchCondition").val() == "1"
&& "" != $("#searchMonth").val() && "" != $("#searchMonth2").val()
&& "" == $("#searchYear").val()) { && "" == $("#searchYear").val()) {
alert("년도를 선택해주세요."); return; alert("년도를 선택해주세요."); return;
} }
@ -53,12 +53,21 @@ function fncExcel(){
//listForm.pageIndex.value = pageNo ; //listForm.pageIndex.value = pageNo ;
listForm.searchCondition.value = $("#searchCondition").val() ; listForm.searchCondition.value = $("#searchCondition").val() ;
listForm.searchYear.value = $("#searchYear").val() ; listForm.searchYear.value = $("#searchYear").val() ;
listForm.searchMonth.value = $("#searchMonth").val() ; listForm.searchMonth2.value = $("#searchMonth2").val() ;
listForm.searchQuarter.value = $("#searchQuarter").val() ; listForm.searchQuarter.value = $("#searchQuarter").val() ;
listForm.action = "<c:url value='/kccadr/stts/sttsAdjPrcsExcel.do'/>"; listForm.action = "<c:url value='/kccadr/stts/sttsAdjPrcsExcel.do'/>";
listForm.submit(); listForm.submit();
} }
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo;
listForm.searchYear.value = $("#searchYear").val() ;
listForm.searchMonth2.value = $("#searchMonth2").val() ;
listForm.action = "<c:url value='/kccadr/stts/sttsAdjPrcs.do'/>";
listForm.submit();
}
$(document).ready(function() { $(document).ready(function() {
onSearchCondition(); onSearchCondition();
}); });
@ -71,7 +80,7 @@ $(document).ready(function() {
<input type="hidden" name="pageIndex" value="<c:out value='${sttsVO.pageIndex}' default='1' />"/> <input type="hidden" name="pageIndex" value="<c:out value='${sttsVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchCondition" value="<c:out value='${sttsVO.searchCondition}' />"/> <input type="hidden" name="searchCondition" value="<c:out value='${sttsVO.searchCondition}' />"/>
<input type="hidden" name="searchYear" value="<c:out value='${sttsVO.searchYear}' />"/> <input type="hidden" name="searchYear" value="<c:out value='${sttsVO.searchYear}' />"/>
<input type="hidden" name="searchMonth" value="<c:out value='${sttsVO.searchMonth}' />"/> <input type="hidden" name="searchMonth2" value="<c:out value='${sttsVO.searchMonth2}' />"/>
<input type="hidden" name="searchQuarter" value="<c:out value='${sttsVO.searchQuarter}' />"/> <input type="hidden" name="searchQuarter" value="<c:out value='${sttsVO.searchQuarter}' />"/>
</form> </form>
@ -115,7 +124,7 @@ $(document).ready(function() {
<option value="2023" ${sttsVO.searchYear eq '2023' ? 'selected' : '' }>2023년</option> <option value="2023" ${sttsVO.searchYear eq '2023' ? 'selected' : '' }>2023년</option>
<option value="2024" ${sttsVO.searchYear eq '2024' ? 'selected' : '' }>2024년</option> <option value="2024" ${sttsVO.searchYear eq '2024' ? 'selected' : '' }>2024년</option>
</select> </select>
<select name="searchMonth" id="searchMonth" class="search1"> <select name="searchMonth2" id="searchMonth2" class="search1">
<option value="">전체</option> <option value="">전체</option>
<option value="01" ${sttsVO.searchMonth2 eq '01' ? 'selected' : '' }>1월</option> <option value="01" ${sttsVO.searchMonth2 eq '01' ? 'selected' : '' }>1월</option>
<option value="02" ${sttsVO.searchMonth2 eq '02' ? 'selected' : '' }>2월</option> <option value="02" ${sttsVO.searchMonth2 eq '02' ? 'selected' : '' }>2월</option>
@ -138,7 +147,7 @@ $(document).ready(function() {
<option value="4" ${sttsVO.searchQuarter eq '4' ? 'selected' : '' }>4분기</option> <option value="4" ${sttsVO.searchQuarter eq '4' ? 'selected' : '' }>4분기</option>
</select> </select>
<button class="btnType07 btn_search" onclick="linkPage()">검색</button> <button class="btnType07 btn_search" onclick="linkPage(1)">검색</button>
</li> </li>
</ul> </ul>