diff --git a/src/main/java/go/kr/project/crdn/crndRegistAndView/main/model/CrdnRegistAndViewVO.java b/src/main/java/go/kr/project/crdn/crndRegistAndView/main/model/CrdnRegistAndViewVO.java index 11aa2f8..ce62c16 100644 --- a/src/main/java/go/kr/project/crdn/crndRegistAndView/main/model/CrdnRegistAndViewVO.java +++ b/src/main/java/go/kr/project/crdn/crndRegistAndView/main/model/CrdnRegistAndViewVO.java @@ -178,6 +178,30 @@ public class CrdnRegistAndViewVO extends PagingVO { /** 우편번호 */ private String zip; + + /** 지번 본번 */ + private String lotnoMno; + + /** 지번 부번 */ + private String lotnoSno; + + /** 상세주소 */ + private String dtlAddr; + + /** 지목 코드 */ + private String ldcgCd; + + /** 지목 코드명 */ + private String ldcgCdNm; + + /** 면적 */ + private String area; + + /** 구조 지수 코드 */ + private String strctIdxCd; + + /** 구조 지수 코드명 */ + private String strctIdxCdNm; /** 조치처리상태 실제코드없음, join 된 row별 ACTN_PRCS_STTS_CD로 확인 [행위정보없음 0: , 미조치 : 1, 조치완료 : 3] */ private String actCmpltCd; diff --git a/src/main/resources/mybatis/mapper/crdn/crndRegistAndView/main/CrdnRegistAndViewMapper_maria.xml b/src/main/resources/mybatis/mapper/crdn/crndRegistAndView/main/CrdnRegistAndViewMapper_maria.xml index 677fb46..29e21d8 100644 --- a/src/main/resources/mybatis/mapper/crdn/crndRegistAndView/main/CrdnRegistAndViewMapper_maria.xml +++ b/src/main/resources/mybatis/mapper/crdn/crndRegistAndView/main/CrdnRegistAndViewMapper_maria.xml @@ -47,6 +47,11 @@ p.STDG_EMD_CD, /* 법정동 읍면동 코드 */ emd.CD_NM AS STDG_EMD_CD_NM, p.ZIP, + p.LOTNO_MNO, /* 지번 본번 */ + p.LOTNO_SNO, /* 지번 부번 */ + p.DTL_ADDR, /* 상세주소 */ + p.LDCG_CD, /* 지목 코드 */ + ldcg.CD_NM AS LDCG_CD_NM, /* 지목 코드명 */ (SELECT GROUP_CONCAT(DISTINCT o2.FLNM SEPARATOR ', ') FROM tb_ownr_info oi2 LEFT JOIN tb_ownr o2 ON o2.OWNR_ID = oi2.OWNR_ID AND o2.DEL_YN = 'N' @@ -72,7 +77,10 @@ else '-' end as ACT_CMPLT_CD, /* [행위정보없음 0: , 미조치 : 1, 조치완료 : 2] */ a.USG_IDX_CD, /* 용도 지수 코드 */ - usg.USG_NM AS USG_IDX_CD_NM + usg.USG_NM AS USG_IDX_CD_NM, + a.AREA, /* 면적 */ + a.STRCT_IDX_CD, /* 구조 지수 코드 */ + strct.STRCT_NM AS STRCT_IDX_CD_NM /* 구조 지수 코드명 */ FROM tb_crdn c LEFT JOIN tb_cd_detail sgg ON sgg.CD_GROUP_ID = 'ORG_CD' AND sgg.CD_ID = c.SGG_CD LEFT JOIN tb_cd_detail rgn ON rgn.CD_GROUP_ID = 'RGN_SE_CD' AND rgn.CD_ID = c.RGN_SE_CD @@ -81,6 +89,7 @@ LEFT JOIN tb_user u ON u.USER_ID = c.RGTR AND u.USE_YN = 'Y' LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N' LEFT JOIN tb_cd_detail emd ON emd.CD_GROUP_ID = 'STDG_EMD_CD' AND emd.CD_ID = p.STDG_EMD_CD + LEFT JOIN tb_cd_detail ldcg ON ldcg.CD_GROUP_ID = 'LDCG_CD' AND ldcg.CD_ID = p.LDCG_CD LEFT JOIN ( SELECT CRDN_YR, @@ -94,6 +103,7 @@ LEFT Join tb_act_info a ON a.CRDN_YR = c.CRDN_YR and a.CRDN_NO = c.CRDN_NO AND a.DEL_YN = 'N' AND a.ACT_NO = (SELECT MIN(a1.ACT_NO) FROM tb_act_info a1 WHERE a1.CRDN_YR = a.CRDN_YR AND a1.CRDN_NO = a.CRDN_NO AND a1.DEL_YN='N') LEFT JOIN tb_act_type act ON act.ACT_TYPE_CD = a.ACT_TYPE_CD LEFT JOIN tb_usg_idx usg ON usg.USG_IDX_CD = a.USG_IDX_CD + LEFT JOIN tb_strct_idx strct ON strct.STRCT_IDX_CD = a.STRCT_IDX_CD WHERE c.DEL_YN = 'N' AND c.CRDN_YR = #{schCrdnYr} diff --git a/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/list.jsp b/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/list.jsp index f9619b5..eca4c67 100644 --- a/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/list.jsp +++ b/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/list.jsp @@ -12,8 +12,11 @@
+ @@ -261,6 +264,11 @@ useClient: false, // 클라이언트 페이징 여부(false: 서버 페이징) perPage: perPage // 페이지당 표시 건수 }); + gridConfig.setOptColumnOptions({ //컬럼고정 옵션 + frozenCount: 9 //고정컬럼 갯수 + , frozenBorderWidth: 2 //고정컬럼 보더(border) 두께 + , resizable: true //최소 사이즈 + }); gridConfig.setOptColumns(this.getGridColumns()); return gridConfig; @@ -277,7 +285,7 @@ header: '번호', name: '_rowNum', align: 'center', - width: 60, + width: 40, sortable: false, formatter: function(e) { // 서버사이드 페이징에서 역순 번호 계산 @@ -289,148 +297,189 @@ return totalCount - (page - 1) * perPage - rowIndex; } }, - { header: '단속년도', name: 'crdnYr', align: 'center', width: 80, sortingType: 'desc' }, - { header: '단속번호', name: 'crdnNo', align: 'center', width: 90 }, - { header: '법정동', name: 'stdgEmdCdNm', align: 'center', width: 90 }, - { header: '지역구분', name: 'rgnSeCdNm', align: 'center', width: 100 }, - { header: '적발방법', name: 'dsclMthdCdNm', align: 'center', width: 120 }, - { - header: '조사일자', - name: 'dsclYmd', - align: 'center', - width: 100, - formatter: function (e) { - return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; - } - }, - { header: '조사원', name: 'exmnr', align: 'left', width: 130 }, + { header: '단속년도', name: 'crdnYr', align: 'center', width: 60, sortingType: 'desc' }, + { header: '단속번호', name: 'crdnNo', align: 'center', width: 60 }, { - header: '재부과여부', + header: '재부과', name: 'relevyYn', align: 'center', - width: 80, + width: 60, formatter: function(e) { return e.value === 'Y' ? '재부과' : '일반'; } }, { - header: '가중부과대상', - name: 'agrvtnLevyTrgtYn', - align: 'center', - width: 100, + header: '소유자', + name: 'ownrNams', + align: 'left', + width: 80, formatter: function(e) { - return e.value === 'Y' ? '대상' : '비대상'; + return e.value; } }, - { header: '진행단계', name: 'crdnPrcsSttsCdNm', align: 'center', width: 100 }, { - header: '조치처리상태', - name: 'actCmpltCd', - align: 'center', - width: 100, + header: '행위자', + name: 'actrNams', + align: 'left', + width: 80, formatter: function(e) { - /* 행위정보없음 0, 미조치 1, 조치완료 3 */ - if (e.value === '0') return '행위정보없음'; - else if (e.value === '1') return '미조치'; - else if (e.value === '3') return '조치완료'; - else return e.value || ''; + return e.value; } }, + { header: '법정동', name: 'stdgEmdCdNm', align: 'center', width: 60 }, { - header: '위치', - name: 'lotnoWholAddr', - align: 'left', - minWidth: 300, + header: '지번', + name: 'lotnoMno', + align: 'center', + width: 60, formatter: function(e) { - return e.value; + /* 지번 본번-부번 형식 */ + if (e.row.lotnoMno && e.row.lotnoSno) { + return e.row.lotnoMno + '-' + e.row.lotnoSno; + } else if (e.row.lotnoMno) { + return e.row.lotnoMno; + } + return ''; } }, + { header: '상세주소', name: 'dtlAddr', align: 'left', width: 100 }, { - header: '행위유형', + header: '행위내용', name: 'actTypeCdNm', align: 'left', - width: 130, + width: 85, formatter: function(e) { return e.value; } }, + { header: '지목', name: 'ldcgCdNm', align: 'center', width: 80 }, { header: '용도', name: 'usgIdxCdNm', align: 'left', - width: 130, + width: 80, formatter: function(e) { return e.value; } }, + { header: '면적', name: 'area', align: 'right', width: 60 }, + { header: '구조', name: 'strctIdxCdNm', align: 'center', width: 60 }, { - header: '소유자', - name: 'ownrNams', - align: 'left', - width: 130, + header: '가중부과', + name: 'agrvtnLevyTrgtYn', + align: 'center', + width: 60, formatter: function(e) { - return e.value; + return e.value === 'Y' ? '대상' : '비대상'; } }, { - header: '행위자', - name: 'actrNams', - align: 'left', - width: 130, - formatter: function(e) { - return e.value; + header: '조사일자', + name: 'dsclYmd', + align: 'center', + width: 80, + formatter: function (e) { + return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, { - header: '이행정보 이력', - name: 'impltTaskHistoryBtn', - width: 120, + header: '처분사전', + name: 'dspsBfhdBgngYmd', align: 'center', - formatter: function(value) { - return '이행 이력'; + width: 80, + formatter: function (e) { + return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, { - header: '재부과 이력', - name: 'relevyHistoryBtn', - width: 120, + header: '시정명령', + name: 'crcCmdBgngYmd', align: 'center', - formatter: function(value) { - return '재부과 이력'; - } - }, - { header: '처분사전 일자', name: 'dspsBfhdBgngYmd', align: 'center', width: 120, + width: 80, formatter: function (e) { return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, - { header: '시정명령 일자', name: 'crcCmdBgngYmd', align: 'center', width: 120, + { + header: '시정촉구', + name: 'crcUrgBgngYmd', + align: 'center', + width: 80, formatter: function (e) { return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, - { header: '시정촉구 일자', name: 'crcUrgBgngYmd', align: 'center', width: 120, + { + header: '부과예고', + name: 'levyPrvntcBgngYmd', + align: 'center', + width: 80, formatter: function (e) { return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, - { header: '부과예고 일자', name: 'levyPrvntcBgngYmd', align: 'center', width: 120, + { + header: '부과', + name: 'levyBgngYmd', + align: 'center', + width: 80, formatter: function (e) { return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, - { header: '부과 일자', name: 'levyBgngYmd', align: 'center', width: 120, + { + header: '납부촉구', + name: 'payUrgBgngYmd', + align: 'center', + width: 80, formatter: function (e) { return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; } }, - { header: '납부촉구 일자', name: 'payUrgBgngYmd', align: 'center', width: 120, - formatter: function (e) { - return e.value ? moment(e.value).format('YYYY-MM-DD') : ''; + { header: '진행단계', name: 'crdnPrcsSttsCdNm', align: 'center', width: 80 }, + { + header: '조치처리상태', + name: 'actCmpltCd', + align: 'center', + width: 80, + formatter: function(e) { + /* 행위정보없음 0, 미조치 1, 조치완료 3 */ + if (e.value === '0') return '행위정보없음'; + else if (e.value === '1') return '미조치'; + else if (e.value === '3') return '조치완료'; + else return e.value || ''; + } + }, + /*{ + header: '위치', + name: 'lotnoWholAddr', + align: 'left', + minWidth: 300, + formatter: function(e) { + return e.value; + } + },*/ + { + header: '이행정보 이력', + name: 'impltTaskHistoryBtn', + width: 100, + align: 'center', + formatter: function(value) { + return '이행 이력'; + } + }, + { + header: '재부과 이력', + name: 'relevyHistoryBtn', + width: 100, + align: 'center', + formatter: function(value) { + return '재부과 이력'; } }, - { header: '등록일시', name: 'regDt', align: 'center', width: 150 }, - { header: '등록자', name: 'rgtrNm', align: 'center', width: 100 }, + { header: '적발방법', name: 'dsclMthdCdNm', align: 'center', width: 100 }, + { header: '등록일시', name: 'regDt', align: 'center', width: 120 }, + { header: '등록자', name: 'rgtrNm', align: 'center', width: 80 }, ]; },