2022-12-07 16:35 조정사건부 통계 작업
This commit is contained in:
parent
931ddf9f3f
commit
703b631890
@ -29,4 +29,6 @@ public interface SttsService {
|
|||||||
// 분쟁조정 통계
|
// 분쟁조정 통계
|
||||||
public List<SttsVO> sttsYrlyPrcsList(SttsVO sttsVO) throws Exception;
|
public List<SttsVO> sttsYrlyPrcsList(SttsVO sttsVO) throws Exception;
|
||||||
|
|
||||||
|
// 조정 사건부 현황 통계화면
|
||||||
|
public List<SttsVO> sttsAdjAdrList(SttsVO sttsVO) throws Exception;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -39,6 +39,17 @@ public class SttsVO extends ComDefaultVO implements Serializable {
|
|||||||
private String finalTotCnt = ""; // 종결총계
|
private String finalTotCnt = ""; // 종결총계
|
||||||
private String ingCnt = ""; // 진행 건수
|
private String ingCnt = ""; // 진행 건수
|
||||||
|
|
||||||
|
//조정사건부 현황 통계
|
||||||
|
private String sbmtDeDay = ""; // 접수일자
|
||||||
|
private String appliCantNm = ""; //신청인(대리인)
|
||||||
|
private String resPonDentNm = ""; //피신청인(대리인)
|
||||||
|
private String ccTyTx = ""; //저작물유형
|
||||||
|
private String reqCn2 = ""; //분쟁내용
|
||||||
|
private String closeCn1 = ""; //종결내용
|
||||||
|
private String statCd = ""; //상태코드
|
||||||
|
|
||||||
|
private String reqOlCd = ""; //사건구분코드 1-오프라인, 2-과거사건 , 나머지값 일반(0,00) */
|
||||||
|
|
||||||
public String getAdrSeq() {
|
public String getAdrSeq() {
|
||||||
return adrSeq;
|
return adrSeq;
|
||||||
}
|
}
|
||||||
@ -213,6 +224,54 @@ public class SttsVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setIngCnt(String ingCnt) {
|
public void setIngCnt(String ingCnt) {
|
||||||
this.ingCnt = ingCnt;
|
this.ingCnt = ingCnt;
|
||||||
}
|
}
|
||||||
|
public String getSbmtDeDay() {
|
||||||
|
return sbmtDeDay;
|
||||||
|
}
|
||||||
|
public void setSbmtDeDay(String sbmtDeDay) {
|
||||||
|
this.sbmtDeDay = sbmtDeDay;
|
||||||
|
}
|
||||||
|
public String getAppliCantNm() {
|
||||||
|
return appliCantNm;
|
||||||
|
}
|
||||||
|
public void setAppliCantNm(String appliCantNm) {
|
||||||
|
this.appliCantNm = appliCantNm;
|
||||||
|
}
|
||||||
|
public String getResPonDentNm() {
|
||||||
|
return resPonDentNm;
|
||||||
|
}
|
||||||
|
public void setResPonDentNm(String resPonDentNm) {
|
||||||
|
this.resPonDentNm = resPonDentNm;
|
||||||
|
}
|
||||||
|
public String getCcTyTx() {
|
||||||
|
return ccTyTx;
|
||||||
|
}
|
||||||
|
public void setCcTyTx(String ccTyTx) {
|
||||||
|
this.ccTyTx = ccTyTx;
|
||||||
|
}
|
||||||
|
public String getReqCn2() {
|
||||||
|
return reqCn2;
|
||||||
|
}
|
||||||
|
public void setReqCn2(String reqCn2) {
|
||||||
|
this.reqCn2 = reqCn2;
|
||||||
|
}
|
||||||
|
public String getCloseCn1() {
|
||||||
|
return closeCn1;
|
||||||
|
}
|
||||||
|
public void setCloseCn1(String closeCn1) {
|
||||||
|
this.closeCn1 = closeCn1;
|
||||||
|
}
|
||||||
|
public String getStatCd() {
|
||||||
|
return statCd;
|
||||||
|
}
|
||||||
|
public void setStatCd(String statCd) {
|
||||||
|
this.statCd = statCd;
|
||||||
|
}
|
||||||
|
public String getReqOlCd() {
|
||||||
|
return reqOlCd;
|
||||||
|
}
|
||||||
|
public void setReqOlCd(String reqOlCd) {
|
||||||
|
this.reqOlCd = reqOlCd;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -44,4 +44,9 @@ public class SttsDAO extends EgovAbstractDAO {
|
|||||||
return (List<SttsVO>) list("SttsDAO.sttsYrlyPrcsList", sttsVO);
|
return (List<SttsVO>) list("SttsDAO.sttsYrlyPrcsList", sttsVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 조정사건부 현황 통계화면
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<SttsVO> sttsAdjAdrList(SttsVO sttsVO) throws Exception {
|
||||||
|
return (List<SttsVO>) list("SttsDAO.sttsAdjAdrList", sttsVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -46,4 +46,8 @@ public class SttsServiceImpl implements SttsService {
|
|||||||
return sttsDAO.sttsYrlyPrcsList(sttsVO);
|
return sttsDAO.sttsYrlyPrcsList(sttsVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 조정 처리 현황 통계화면
|
||||||
|
public List<SttsVO> sttsAdjAdrList(SttsVO sttsVO) throws Exception {
|
||||||
|
return sttsDAO.sttsAdjAdrList(sttsVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -115,6 +115,126 @@ public class SttsPrcsController {
|
|||||||
modelAndView.addObject(model);
|
modelAndView.addObject(model);
|
||||||
|
|
||||||
|
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* (관리자) 조정 사건부 현황 통계화면
|
||||||
|
*
|
||||||
|
* @return String
|
||||||
|
* @exception Exception
|
||||||
|
*/
|
||||||
|
@RequestMapping(value = "/kccadr/stts/sttsAdjAdr.do")
|
||||||
|
public String sttsAdjAdr(ModelMap model, SttsVO sttsVO) throws Exception {
|
||||||
|
|
||||||
|
//조정사건부
|
||||||
|
List<SttsVO> list = sttsService.sttsAdjAdrList(sttsVO);
|
||||||
|
|
||||||
|
for (SttsVO vo : (List<SttsVO>)list) {
|
||||||
|
vo.setAppliCantNm(egovCryptoUtil.decrypt(vo.getAppliCantNm()));
|
||||||
|
vo.setResPonDentNm(egovCryptoUtil.decrypt(vo.getResPonDentNm()));
|
||||||
|
|
||||||
|
vo.setRpplNm1(egovCryptoUtil.decrypt(vo.getRpplNm1()));
|
||||||
|
vo.setRpplNm2(egovCryptoUtil.decrypt(vo.getRpplNm2()));
|
||||||
|
vo.setRpplNm3(egovCryptoUtil.decrypt(vo.getRpplNm3()));
|
||||||
|
vo.setRpplNm4(egovCryptoUtil.decrypt(vo.getRpplNm4()));
|
||||||
|
vo.setRpplAddr1(egovCryptoUtil.decrypt(vo.getRpplAddr1()));
|
||||||
|
vo.setRpplAddr2(egovCryptoUtil.decrypt(vo.getRpplAddr2()));
|
||||||
|
|
||||||
|
// 주소 지역만 자르기
|
||||||
|
if (vo.getRpplAddr1() != null && !("").equals(vo.getRpplAddr1())) {
|
||||||
|
String[] rpplAddr1 = vo.getRpplAddr1().split(" ");
|
||||||
|
vo.setRpplAddr1(rpplAddr1[0]);
|
||||||
|
}
|
||||||
|
if (vo.getRpplAddr2() != null && !("").equals(vo.getRpplAddr2())) {
|
||||||
|
String[] rpplAddr2 = vo.getRpplAddr2().split(" ");
|
||||||
|
vo.setRpplAddr2(rpplAddr2[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
model.addAttribute("list", list);
|
||||||
|
model.addAttribute("sttsVO", sttsVO);
|
||||||
|
|
||||||
|
return "/kccadr/stts/sttsAdjAdr";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 조정 사건부 현황 통계 Excel
|
||||||
|
*
|
||||||
|
* @param apmVO
|
||||||
|
* @param model
|
||||||
|
* @return
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("rawtypes")
|
||||||
|
@RequestMapping(value = "/kccadr/stts/sttsAdjAdrExcel.do")
|
||||||
|
public ModelAndView sttsAdjAdrExcel(@ModelAttribute("sttsVO") SttsVO sttsVO, ModelMap model) throws Exception {
|
||||||
|
|
||||||
|
List list = sttsService.sttsAdjAdrList(sttsVO);
|
||||||
|
// model.addAttribute("list", list);
|
||||||
|
|
||||||
|
for (SttsVO vo : (List<SttsVO>)list) {
|
||||||
|
vo.setAppliCantNm(egovCryptoUtil.decrypt(vo.getAppliCantNm()));
|
||||||
|
vo.setResPonDentNm(egovCryptoUtil.decrypt(vo.getResPonDentNm()));
|
||||||
|
|
||||||
|
vo.setRpplNm1(egovCryptoUtil.decrypt(vo.getRpplNm1()));
|
||||||
|
vo.setRpplNm2(egovCryptoUtil.decrypt(vo.getRpplNm2()));
|
||||||
|
vo.setRpplNm3(egovCryptoUtil.decrypt(vo.getRpplNm3()));
|
||||||
|
vo.setRpplNm4(egovCryptoUtil.decrypt(vo.getRpplNm4()));
|
||||||
|
vo.setRpplAddr1(egovCryptoUtil.decrypt(vo.getRpplAddr1()));
|
||||||
|
vo.setRpplAddr2(egovCryptoUtil.decrypt(vo.getRpplAddr2()));
|
||||||
|
|
||||||
|
// 주소 지역만 자르기
|
||||||
|
if (vo.getRpplAddr1() != null && !("").equals(vo.getRpplAddr1())) {
|
||||||
|
String[] rpplAddr1 = vo.getRpplAddr1().split(" ");
|
||||||
|
vo.setRpplAddr1(rpplAddr1[0]);
|
||||||
|
}
|
||||||
|
if (vo.getRpplAddr2() != null && !("").equals(vo.getRpplAddr2())) {
|
||||||
|
String[] rpplAddr2 = vo.getRpplAddr2().split(" ");
|
||||||
|
vo.setRpplAddr2(rpplAddr2[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 세팅값
|
||||||
|
String title = "조정사건부 현황";
|
||||||
|
int[] width = {
|
||||||
|
4000, 5000, 5000, 5000, 5000
|
||||||
|
, 5000, 5000, 20000, 5000, 5000
|
||||||
|
|
||||||
|
, 5000, 5000, 5000, 5000, 5000
|
||||||
|
, 5000, 5000, 5000, 5000, 5000
|
||||||
|
|
||||||
|
, 5000, 5000
|
||||||
|
}; // 너비
|
||||||
|
String[] header = {
|
||||||
|
"접수번호", "접수일자", "신청인(대리인)", "피신청인(대리인)", "저작물 유형"
|
||||||
|
, "분쟁 내용", "청구내역", "조정 목적 값(원)", "조정결과", "유형"
|
||||||
|
|
||||||
|
, "성립내역", "합의금액(원)", "조정부", "위원교체", "수수료"
|
||||||
|
, "기일수", "기일수(일자)/완료일", "기일 상황(출석여부 등)", "신청인 유형", "신청인지역"
|
||||||
|
|
||||||
|
, "피신청인지역", "비고"
|
||||||
|
}; // 헤더에 들어갈 이름
|
||||||
|
String[] order = {
|
||||||
|
"AdrNo", "SbmtDeDay", "AppliCantNm", "ResPonDentNm", "CcTyTx"
|
||||||
|
, "ReqCn2", "ReqCn1", "", "", ""
|
||||||
|
|
||||||
|
, "CloseCn1", "", "MemDeptNm", "", "AdrCost"
|
||||||
|
, "", "", "", "ReqTy", ""
|
||||||
|
|
||||||
|
, "", ""
|
||||||
|
}; // vo 내부의 필드 이름 (첫글자 대문자, 낙타체 사용)
|
||||||
|
// 호출
|
||||||
|
SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(list, header, order, width, title);
|
||||||
|
model.addAttribute("locale", Locale.KOREA);
|
||||||
|
model.addAttribute("workbook", workbook);
|
||||||
|
model.addAttribute("workbookName", title);
|
||||||
|
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("excelDownloadView");
|
||||||
|
modelAndView.addObject(model);
|
||||||
|
|
||||||
|
|
||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -231,5 +231,140 @@
|
|||||||
) t
|
) t
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 조정 사건부 현황 통계화면 -->
|
||||||
|
<select id="SttsDAO.sttsAdjAdrList" parameterClass="SttsVO" resultClass="SttsVO">
|
||||||
|
SELECT M.ADR_NO AS adrNo
|
||||||
|
/* 조정사건번호 */
|
||||||
|
,
|
||||||
|
TO_CHAR ( M.SBMT_DE, 'YYYY/MM/DD' ) AS sbmtDeDay
|
||||||
|
/* 신청일 */
|
||||||
|
,
|
||||||
|
AP.RPPL_NM AS appliCantNm
|
||||||
|
/* 신청인 */
|
||||||
|
,
|
||||||
|
( SELECT GROUP_CONCAT ( RPPL_NM SEPARATOR ', ' )
|
||||||
|
FROM ADR_RPPL S1
|
||||||
|
WHERE S1.ADR_SEQ = M.ADR_SEQ
|
||||||
|
AND S1.RPPL_TY = '20'
|
||||||
|
GROUP BY S1.ADR_SEQ
|
||||||
|
ORDER BY S1.FRST_REGIST_PNTTM
|
||||||
|
)
|
||||||
|
AS resPonDentNm
|
||||||
|
/* 피신청인 */
|
||||||
|
,
|
||||||
|
CCD.CODE_NM AS ccTyTx
|
||||||
|
/* 저작물 유형_Tx */
|
||||||
|
,
|
||||||
|
M.req_cn1 AS reqCn1
|
||||||
|
/*신청취지*/
|
||||||
|
,
|
||||||
|
M.req_cn2 AS reqCn2
|
||||||
|
/*신청원인*/
|
||||||
|
,
|
||||||
|
DM.MEM_DEPT_NM AS memDeptNm
|
||||||
|
/* 조정부명 */
|
||||||
|
,
|
||||||
|
M.adr_cost AS adrCost
|
||||||
|
/*조정비용*/
|
||||||
|
,
|
||||||
|
M.req_ty AS reqTy
|
||||||
|
/*신청유형*/
|
||||||
|
,
|
||||||
|
ACD.close_cn1 AS closeCn1
|
||||||
|
,
|
||||||
|
ACD.close_cn2 AS closeCn2
|
||||||
|
,
|
||||||
|
|
||||||
|
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.req_ol_cd AS reqOlCd
|
||||||
|
/* 온_오프라인_과거사건 구분 코드 1-오프라인, 2-과거사건 */
|
||||||
|
|
||||||
|
|
||||||
|
FROM ADR_MGR_MASTER M
|
||||||
|
LEFT JOIN
|
||||||
|
( SELECT ADR_SEQ ,
|
||||||
|
MAX ( ADR_SN ) AS ADR_SN
|
||||||
|
FROM ADR_MGR_DETAIL
|
||||||
|
GROUP BY ADR_SEQ
|
||||||
|
)
|
||||||
|
Z
|
||||||
|
ON M.ADR_SEQ = Z.ADR_SEQ
|
||||||
|
LEFT JOIN ADR_MGR_DETAIL D
|
||||||
|
ON M.ADR_SEQ = D.ADR_SEQ
|
||||||
|
AND D.ADR_SN = Z.ADR_SN
|
||||||
|
/*
|
||||||
|
LEFT JOIN LETTNEMPLYRINFO AU
|
||||||
|
ON D.ADR_ADM_ID = AU.ESNTL_ID
|
||||||
|
|
||||||
|
LEFT JOIN LETTCCMMNDETAILCODE SCD
|
||||||
|
ON SCD.CODE_ID = 'CC013'
|
||||||
|
AND SCD.CODE = M.STAT_CD
|
||||||
|
|
||||||
|
LEFT JOIN LETTCCMMNDETAILCODE RCD
|
||||||
|
ON RCD.CODE_ID = 'CC014'
|
||||||
|
AND RCD.CODE = TRIM ( M.REQ_OL_CD )
|
||||||
|
*/
|
||||||
|
LEFT JOIN LETTCCMMNDETAILCODE CCD
|
||||||
|
ON CCD.CODE_ID = 'CC002'
|
||||||
|
AND CCD.CODE = TRIM ( M.CC_TY )
|
||||||
|
|
||||||
|
|
||||||
|
LEFT JOIN ADR_MEM_DEPT_MGR DM
|
||||||
|
ON DM.MEM_DEPT_SEQ = D.MEM_DEPT_SEQ
|
||||||
|
LEFT JOIN ADR_RPPL AP
|
||||||
|
ON AP.ADR_SEQ = M.ADR_SEQ
|
||||||
|
AND AP.RPPL_TY = '10'
|
||||||
|
|
||||||
|
LEFT JOIN
|
||||||
|
( SELECT ADR_SEQ ,
|
||||||
|
ADR_SN ,
|
||||||
|
MAX ( APP_SEQ ) AS APP_SEQ
|
||||||
|
FROM ADR_APP_MGR
|
||||||
|
GROUP BY ADR_SEQ,
|
||||||
|
ADR_SN
|
||||||
|
)
|
||||||
|
ZAM
|
||||||
|
ON M.ADR_SEQ = ZAM.ADR_SEQ
|
||||||
|
AND D.ADR_SN = ZAM.ADR_SN
|
||||||
|
|
||||||
|
LEFT JOIN ADR_APP_MGR AM
|
||||||
|
ON M.ADR_SEQ = AM.ADR_SEQ
|
||||||
|
AND D.ADR_SN = AM.ADR_SN
|
||||||
|
AND ZAM.APP_SEQ = AM.APP_SEQ
|
||||||
|
|
||||||
|
|
||||||
|
LEFT JOIN ADR_CLOSE_DOC ACD
|
||||||
|
ON ACD.ADR_SEQ = AM.ADR_SEQ
|
||||||
|
AND ACD.ADR_SN = AM.ADR_SN
|
||||||
|
WHERE 1=1
|
||||||
|
AND M.stat_cd ='400000' /* 현재는 종결된 사건만 필요시 조절한다. */
|
||||||
|
|
||||||
|
<isEqual property="searchCondition" compareValue="1">
|
||||||
|
<isNotEmpty property="searchMonth2">
|
||||||
|
/* 월 */
|
||||||
|
AND am.appr_de BETWEEN TO_DATE(#searchYear#||#searchMonth2#||'01', 'yyyyMMdd')
|
||||||
|
AND LAST_DAY(TO_DATE(#searchYear#||#searchMonth2#, 'yyyyMM'))
|
||||||
|
</isNotEmpty>
|
||||||
|
<isEmpty property="searchMonth">
|
||||||
|
<isNotEmpty property="searchYear">
|
||||||
|
/* 년 */
|
||||||
|
AND am.appr_de BETWEEN TO_DATE(#searchYear#||'0101', 'yyyyMMdd')
|
||||||
|
AND TO_DATE(#searchYear#||'1231', 'yyyyMMdd')
|
||||||
|
</isNotEmpty>
|
||||||
|
</isEmpty>
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchCondition" compareValue="2">
|
||||||
|
<isNotEmpty property="searchQuarter">
|
||||||
|
/* 분기 */
|
||||||
|
AND am.appr_de BETWEEN add_months(trunc(NOW(),'yyyy'),(#searchQuarter# - 1) * 3)
|
||||||
|
AND add_months(trunc(NOW(),'yyyy'),#searchQuarter# * 3) - 1
|
||||||
|
</isNotEmpty>
|
||||||
|
</isEqual>
|
||||||
|
|
||||||
|
GROUP BY am.adr_seq
|
||||||
|
ORDER BY am.appr_de DESC
|
||||||
|
</select>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
@ -137,8 +137,13 @@ $(document).ready(function() {
|
|||||||
<option value="3" ${sttsVO.searchQuarter eq '3' ? 'selected' : '' }>3분기</option>
|
<option value="3" ${sttsVO.searchQuarter eq '3' ? 'selected' : '' }>3분기</option>
|
||||||
<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>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -107,7 +107,7 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="box_tit">
|
<div class="box_tit">
|
||||||
<p>조정처리 성립률</p>
|
<p>조정처리 성립률</p>
|
||||||
<button type="button" class="btn_plus">더보기 +</button>
|
<!-- <button type="button" class="btn_plus">더보기 +</button> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="box_cont chart_box">
|
<div class="box_cont chart_box">
|
||||||
<img src="/kccadrPb/adm/image/dashboard/chart03.jpg" alt="">
|
<img src="/kccadrPb/adm/image/dashboard/chart03.jpg" alt="">
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user