민원 목록 조회 메소드 추가

main
이범준 1 year ago
parent 134df7c002
commit 50b83d20ab

@ -1,8 +1,12 @@
package cokr.xit.fims.crdn.dao; package cokr.xit.fims.crdn.dao;
import java.util.List;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper; import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.foundation.component.AbstractMapper; import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
/** DAO /** DAO
* @author leebj * @author leebj
@ -10,4 +14,24 @@ import cokr.xit.foundation.component.AbstractMapper;
@Mapper("crdn01Mapper") @Mapper("crdn01Mapper")
public interface Crdn01Mapper extends AbstractMapper { public interface Crdn01Mapper extends AbstractMapper {
/** .<br />
* {@link cokr.xit.fims.crdn.service.Crdn01Service#getCrackdownList(CrdnQuery)}
* @param req
* @return
*/
List<DataObject> selectCivilComplaintList(CrdnQuery req);
/** .<br />
* {@link cokr.xit.fims.crdn.service.Crdn01Service#getCrackdownList(CrdnQuery)}
* @param req
* @return
*/
List<DataObject> selectCivilComplaintReceiptDataList(CrdnQuery req);
/** .<br />
* {@link cokr.xit.fims.crdn.service.Crdn01Service#getCrackdownList(CrdnQuery)}
* @param req
* @return
*/
List<DataObject> selectCivilComplaintAnswerTargetDataList(CrdnQuery req);
} }

@ -5,7 +5,6 @@ package cokr.xit.fims.crdn.service;
* </ul> * </ul>
* @author leebj * @author leebj
*/ */
public interface Crdn01Service extends CrdnService {
public interface Crdn01Service {
} }

@ -5,6 +5,6 @@ package cokr.xit.fims.crdn.service;
* </ul> * </ul>
* @author leebj * @author leebj
*/ */
public interface Crdn02Service { public interface Crdn02Service extends CrdnService {
} }

@ -7,6 +7,6 @@ import cokr.xit.fims.crdn.CrdnQuery;
* </ul> * </ul>
* @author leebj * @author leebj
*/ */
public interface Crdn05Service { public interface Crdn05Service extends CrdnService {
} }

@ -12,16 +12,8 @@ import cokr.xit.foundation.data.DataObject;
* </ul> * </ul>
* @author leebj * @author leebj
*/ */
public interface Crdn06Service { public interface Crdn06Service extends CrdnService {
/** .
* @param req
* <ul><li>pageNum: </li>
* <li>fetchSize: </li>
* </ul>
* @return
*/
List<DataObject> getCrackdownList(CrdnQuery req);
/** . /** .
* @param crdn * @param crdn

@ -0,0 +1,19 @@
package cokr.xit.fims.crdn.service;
import java.util.List;
import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.foundation.data.DataObject;
public interface CrdnService {
/** .
* @param req
* <ul><li>pageNum: </li>
* <li>fetchSize: </li>
* </ul>
* @return
*/
List<DataObject> getCrackdownList(CrdnQuery req);
}

@ -12,8 +12,8 @@ import cokr.xit.foundation.AbstractComponent;
*/ */
@Component("crdn01Bean") @Component("crdn01Bean")
public class Crdn01Bean extends AbstractComponent { public class Crdn01Bean extends AbstractComponent {
@Resource(name = "crdn01Mapper") @Resource(name = "crdn01Mapper")
private Crdn01Mapper crdn01Mapper; private Crdn01Mapper crdn01Mapper;
} }

@ -1,20 +1,42 @@
package cokr.xit.fims.crdn.service.bean; package cokr.xit.fims.crdn.service.bean;
import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.dao.Crdn01Mapper;
import cokr.xit.fims.crdn.service.Crdn01Service; import cokr.xit.fims.crdn.service.Crdn01Service;
import cokr.xit.foundation.component.AbstractServiceBean; import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
/** /**
* @author leebj * @author leebj
*/ */
@Service("crdn01Service") @Service("crdn01Service")
public class Crdn01ServiceBean extends AbstractServiceBean implements Crdn01Service { public class Crdn01ServiceBean extends AbstractServiceBean implements Crdn01Service {
@Resource(name="crdn01Mapper")
protected Crdn01Mapper crdn01Mapper;
/** 민원관리 Bean */ /** 민원관리 Bean */
@Resource(name="crdn01Bean") @Resource(name="crdn01Bean")
protected Crdn01Bean crdn01Bean; protected Crdn01Bean crdn01Bean;
@Override
public List<DataObject> getCrackdownList(CrdnQuery req) {
switch (ifEmpty(req.getGrid(), () -> "")) {
case "접수":
return crdn01Mapper.selectCivilComplaintReceiptDataList(req.setOrderBy("CRDN_ID"));
case "답변":
return crdn01Mapper.selectCivilComplaintAnswerTargetDataList(req.setOrderBy("CRDN_ID"));
default:
return crdn01Mapper.selectCivilComplaintList(req.setOrderBy("CRDN_ID"));
}
}
} }

@ -1,20 +1,28 @@
package cokr.xit.fims.crdn.service.bean; package cokr.xit.fims.crdn.service.bean;
import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.service.Crdn02Service; import cokr.xit.fims.crdn.service.Crdn02Service;
import cokr.xit.foundation.component.AbstractServiceBean; import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
/** /**
* @author leebj * @author leebj
*/ */
@Service("crdn02Service") @Service("crdn02Service")
public class Crdn02ServiceBean extends AbstractServiceBean implements Crdn02Service { public class Crdn02ServiceBean extends AbstractServiceBean implements Crdn02Service {
/** 민원 개별 등록 Bean */ /** 민원 개별 등록 Bean */
@Resource(name="crdn02Bean") @Resource(name="crdn02Bean")
protected Crdn02Bean crdn02Bean; protected Crdn02Bean crdn02Bean;
@Override
public List<DataObject> getCrackdownList(CrdnQuery req) {
return null; //crdn02Mapper.
}
} }

@ -1,20 +1,29 @@
package cokr.xit.fims.crdn.service.bean; package cokr.xit.fims.crdn.service.bean;
import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.service.Crdn05Service; import cokr.xit.fims.crdn.service.Crdn05Service;
import cokr.xit.foundation.component.AbstractServiceBean; import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
/** /**
* @author leebj * @author leebj
*/ */
@Service("crdn05Service") @Service("crdn05Service")
public class Crdn05ServiceBean extends AbstractServiceBean implements Crdn05Service { public class Crdn05ServiceBean extends AbstractServiceBean implements Crdn05Service {
/** 단속 자료 등록 Bean */ /** 단속 자료 등록 Bean */
@Resource(name="crdn05Bean") @Resource(name="crdn05Bean")
protected Crdn05Bean crdn05Bean; protected Crdn05Bean crdn05Bean;
@Override
public List<DataObject> getCrackdownList(CrdnQuery req) {
return null; //crdn05Mapper.
}
} }

@ -22,39 +22,6 @@ public class Crdn06Bean extends AbstractComponent {
@Resource(name = "crdn06Mapper") @Resource(name = "crdn06Mapper")
private Crdn06Mapper crdn06Mapper; private Crdn06Mapper crdn06Mapper;
/** .<br />
* {@link cokr.xit.fims.crdn.service.Crdn06Service#getCrackdownList(CrdnQuery)}
* @param req
* @return
*/
public List<DataObject> getCrackdownList(CrdnQuery req) {
//if(!isEmpty(req.getBy())) {
// if(!req.getBy().startsWith("advancedOption")) {
// switch (ifEmpty(req.getBy(), () -> "")) {
// default:
// req.setBy(EgovStringUtil.convertToUnderScore(req.getBy()).toUpperCase());
// break;
// }
// }
//}
switch (ifEmpty(req.getGrid(), () -> "")) {
case "tagInformationUndefinedData":
return crdn06Mapper.selectTagInformationUndefinedDataList(req.setOrderBy("CRDN_ID"));
case "fineReductionData":
return crdn06Mapper.selectFineReductionDataList(req.setOrderBy("CRDN_ID"));
case "photo":
return crdn06Mapper.selectPhotoInspectionDataList(req.setOrderBy("CRDN_ID"));
case "sameVehicleMain":
return crdn06Mapper.selectSameVehicleMainList(req.setOrderBy("VHRNO"));
case "sameVehicleSub":
return crdn06Mapper.selectSameVehicleSubList(req.setOrderBy("CRDN_ID"));
default:
return crdn06Mapper.selectCrackdownList(req.setOrderBy("CRDN_ID"));
}
}
/** . /** .
* @param crdn * @param crdn
* @return * @return

@ -8,6 +8,7 @@ import org.springframework.stereotype.Service;
import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.crdn.CrdnQuery; import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.dao.Crdn06Mapper;
import cokr.xit.fims.crdn.service.Crdn06Service; import cokr.xit.fims.crdn.service.Crdn06Service;
import cokr.xit.foundation.component.AbstractServiceBean; import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject; import cokr.xit.foundation.data.DataObject;
@ -18,18 +19,36 @@ import cokr.xit.foundation.data.DataObject;
@Service("crdn06Service") @Service("crdn06Service")
public class Crdn06ServiceBean extends AbstractServiceBean implements Crdn06Service { public class Crdn06ServiceBean extends AbstractServiceBean implements Crdn06Service {
@Resource(name="crdn06Mapper")
protected Crdn06Mapper crdn06Mapper;
/** 단속관리 Bean */ /** 단속관리 Bean */
@Resource(name="crdn06Bean") @Resource(name="crdn06Bean")
protected Crdn06Bean crdn06Bean; protected Crdn06Bean crdn06Bean;
@Override @Override
public List<DataObject> getCrackdownList(CrdnQuery req) { public boolean update(Crdn crdn) {
return crdn06Bean.getCrackdownList(req); return crdn06Bean.update(crdn);
} }
@Override @Override
public boolean update(Crdn crdn) { public List<DataObject> getCrackdownList(CrdnQuery req) {
return crdn06Bean.update(crdn);
switch (ifEmpty(req.getGrid(), () -> "")) {
case "tagInformationUndefinedData":
return crdn06Mapper.selectTagInformationUndefinedDataList(req.setOrderBy("CRDN_ID"));
case "fineReductionData":
return crdn06Mapper.selectFineReductionDataList(req.setOrderBy("CRDN_ID"));
case "photo":
return crdn06Mapper.selectPhotoInspectionDataList(req.setOrderBy("CRDN_ID"));
case "sameVehicleMain":
return crdn06Mapper.selectSameVehicleMainList(req.setOrderBy("VHRNO"));
case "sameVehicleSub":
return crdn06Mapper.selectSameVehicleSubList(req.setOrderBy("CRDN_ID"));
default:
return crdn06Mapper.selectCrackdownList(req.setOrderBy("CRDN_ID"));
}
} }
} }

@ -1,19 +1,24 @@
package cokr.xit.fims.crdn.web; package cokr.xit.fims.crdn.web;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.web.ApplicationController; import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.crdn.service.Crdn01Service; import cokr.xit.fims.crdn.service.Crdn01Service;
import cokr.xit.fims.crdn.service.bean.Crdn01ServiceBean;
@RequestMapping(name="민원 관리", value="/crdn/crdn01") @RequestMapping(name="민원 관리", value="/crdn/crdn01")
public class Crdn01Controller extends ApplicationController { public class Crdn01Controller extends ApplicationController {
@Resource(name="crdn01Service") @Resource(name="crdn01Service")
private Crdn01Service crdn01Service; private Crdn01Service crdn01Service;
/** . /** .
* @return fims/crdn/crdn01010-main * @return fims/crdn/crdn01010-main
*/ */
@ -22,10 +27,13 @@ public class Crdn01Controller extends ApplicationController {
ModelAndView mav = new ModelAndView(); ModelAndView mav = new ModelAndView();
mav.setViewName("fims/crdn/crdn01010-main"); mav.setViewName("fims/crdn/crdn01010-main");
mav.addObject("pageName", "crdn01010-main"); mav.addObject("pageName", "crdn01010-main");
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM026","FIM054");
mav.addObject("FIM054List", commonCodes.get("FIM054"));
addCodes(commonCodes, mav, "FIM026");
return mav; return mav;
} }
/** . /** .
* @return fims/crdn/crdn01030-main * @return fims/crdn/crdn01030-main
*/ */
@ -34,10 +42,13 @@ public class Crdn01Controller extends ApplicationController {
ModelAndView mav = new ModelAndView(); ModelAndView mav = new ModelAndView();
mav.setViewName("fims/crdn/crdn01030-main"); mav.setViewName("fims/crdn/crdn01030-main");
mav.addObject("pageName", "crdn01030-main"); mav.addObject("pageName", "crdn01030-main");
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM026", "FIM054");
mav.addObject("FIM054List", commonCodes.get("FIM054"));
addCodes(commonCodes, mav, "FIM026");
return mav; return mav;
} }
/** . /** .
* @return fims/crdn/crdn01040-main * @return fims/crdn/crdn01040-main
*/ */
@ -46,7 +57,10 @@ public class Crdn01Controller extends ApplicationController {
ModelAndView mav = new ModelAndView(); ModelAndView mav = new ModelAndView();
mav.setViewName("fims/crdn/crdn01040-main"); mav.setViewName("fims/crdn/crdn01040-main");
mav.addObject("pageName", "crdn01040-main"); mav.addObject("pageName", "crdn01040-main");
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM026", "FIM054");
mav.addObject("FIM054List", commonCodes.get("FIM054"));
addCodes(commonCodes, mav, "FIM026");
return mav; return mav;
} }
} }

@ -1,5 +1,213 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cokr.xit.fims.crdn.dao.Crdn05Mapper"> <mapper namespace="cokr.xit.fims.crdn.dao.Crdn01Mapper">
<resultMap id="crdnRow" type="cokr.xit.fims.crdn.Crdn">
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
</resultMap>
<sql id="selectCivilComplaint">
<include refid="utility.paging-prefix"/>
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.SGG_CD <!-- 시군구 코드 -->
, C.TASK_SE_CD <!-- 업무 구분 코드 -->
, C.CRDN_REG_SE_CD <!-- 단속 등록 구분 코드 -->
, C.CRDN_INPT_SE_CD <!-- 단속 입력 구분 코드 -->
, C.LINK_TBL_NM <!-- 연계 테이블 명 -->
, C.LINK_ID <!-- 연계 ID -->
, C.CRDN_SE_CD <!-- 단속 구분 코드 -->
, C.RTPYR_ID <!-- 납부자 ID -->
, C.CRDN_YMD <!-- 단속 일자 -->
, C.CRDN_TM <!-- 단속 시각 -->
, CONCAT(C.CRDN_YMD,'',C.CRDN_TM) AS CRDN_YMD_TM <!-- 단속 일시 -->
, IF(CC.CVLCPT_APLCNT_NM != '', CC.CVLCPT_APLCNT_NM,
IF(TI.TEAMER_1 != '', TI.TEAMER_1,
IF(TI.TEAMER_2 != '', TI.TEAMER_2,
IF(TI.TEAMER_3 != '', TI.TEAMER_3,
TI.TEAMER_4)))) AS APLCNT_CRDN_NM <!-- 신고/단속자 -->
, C.VHRNO <!-- 차량번호 -->
, C.CRDN_STDG_NM <!-- 단속 법정동 명 -->
, C.CRDN_ROAD_NM <!-- 단속 도로 명 -->
, C.CRDN_PLC <!-- 단속 장소 -->
, C.DTL_CRDN_PLC <!-- 상세 단속 장소 -->
, C.TEAM_ID <!-- 조 ID -->
, C.VLTN_ID <!-- 위반 ID -->
, C.CRDN_SPAREA_CD <!-- 단속 특별구역 코드 -->
, C.CRDN_BGNG_TM <!-- 단속 시작 시각 -->
, C.CRDN_END_HR <!-- 단속 종료 시간 -->
, C.CRDN_SN <!-- 단속 일련번호 -->
, C.GPS_X <!-- GPS X -->
, C.GPS_Y <!-- GPS Y -->
, C.MOSC_X <!-- 모자이크 X -->
, C.MOSC_Y <!-- 모자이크 Y -->
, C.TOWNG_YN <!-- 견인 여부 -->
, C.ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, C.VIN <!-- 차대번호 -->
, C.VHCL_NM <!-- 차량 명 -->
, C.VHCL_COLOR <!-- 차량 색상 -->
, C.USE_FUEL_CD <!-- 사용 연료 코드 -->
, C.USG_SE_CD <!-- 용도 구분 코드 -->
, C.MXMM_LOAD_QY <!-- 최대 적재 량 -->
, C.TKCAR_PSNCPA_CNT <!-- 승차 정원 수 -->
, C.CARMDL_ASORT_NM <!-- 차종 종별 명 -->
, C.CARMDL_TYPE_NM <!-- 차종 유형 명 -->
, C.CARMDL_CLSF_NM <!-- 차종 분류 명 -->
, C.ERSR_YMD <!-- 말소 일자 -->
, C.FFNLG_CARMDL_CD <!-- 과태료 차종 코드 -->
, C.PARKNG_PSBLTY_RSLT_CD <!-- 주차 가능 결과 코드 -->
, C.VLTN_NMTM <!-- 위반 횟수 -->
, C.OVTIME_YN <!-- 시간외 여부 -->
, C.RVW_SE_CD <!-- 검토 구분 코드 -->
, C.RVW_PRCS_SCRN_NM <!-- 검토 처리 화면 명 -->
, C.RVW_DT <!-- 검토 일시 -->
, C.RVWR <!-- 검토자 -->
, C.FFNLG_AMT <!-- 과태료 금액 -->
, C.FFNLG_RDUCT_RT <!-- 과태료 감경 율 -->
, C.LEVY_AMT <!-- 부과 금액 -->
, C.ADVNTCE_BGNG_YMD <!-- 사전통지 시작 일자 -->
, C.ADVNTCE_DUDT_YMD <!-- 사전통지 납기 일자 -->
, C.ADVNTCE_LEVY_AMT <!-- 사전통지 부과 금액 -->
, C.OPNN_SBMSN_YN <!-- 의견 제출 여부 -->
, C.ETC_CN <!-- 기타 내용 -->
, C.LEVY_ID <!-- 부과 ID -->
, C.CRDN_STTS_CD <!-- 단속 상태 코드 -->
, C.CRDN_STTS_CHG_DT <!-- 단속 상태 변경 일시 -->
, C.ADTN_AMT <!-- 가산 금액 -->
, C.MINUS_AMT <!-- 감경 금액 -->
, C.RCVMT_AMT <!-- 수납 금액 -->
, C.BFR_CRDN_ID <!-- 이전 단속 ID -->
, CC.CVLCPT_LINK_ID <!-- 민원 연계 ID -->
, CC.CVLCPT_INPT_SE_CD <!-- 민원 입력 구분 코드 -->
, CC.CVLCPT_RCPT_YMD <!-- 민원 접수 일자 -->
, CC.CVLCPT_APLY_SE_CD <!-- 민원 신청 구분 코드 -->
, CC.CVLCPT_APLY_NO <!-- 민원 신청 번호 -->
, CC.CVLCPT_RCPT_NO <!-- 민원 접수 번호 -->
, CC.CVLCPT_LIST_NO <!-- 민원 목록 번호 -->
, CC.CVLCPT_APLCNT_NM <!-- 민원 신청인 명 -->
, CC.CVLCPT_APLY_DT <!-- 민원 신청 일시 -->
, CC.CVLCPT_APLY_TTL_NM <!-- 민원 신청 제목 명 -->
, CC.CVLCPT_APLY_CN <!-- 민원 신청 내용 -->
, CC.CVLCPT_GIST <!-- 민원 요지 -->
, CC.CVLCPT_PRCS_PIC_NM <!-- 민원 처리 담당자 명 -->
, CC.CVLCPT_PRCS_PRNMNT_DT <!-- 민원 처리 예정 일시 -->
, CC.CVLCPT_PRCS_CD <!-- 민원 처리 코드 -->
, CC.CVLCPT_PRCS_SUMRY <!-- 민원 처리 요약 -->
, CC.CVLCPT_PRCS_RSLT_CN <!-- 민원 처리 결과 내용 -->
, CC.CVLCPT_PRCS_CMPTN_DT <!-- 민원 처리 완료 일시 -->
, CC.CVLCPT_PRCS_PIC <!-- 민원 처리 담당자 -->
, CC.CVLCPT_TRSM_DT <!-- 민원 전송 일시 -->
, CC.CVLCPT_TRSM_CD <!-- 민원 전송 코드 -->
, CC.CVLCPT_TRSM_MSG <!-- 민원 전송 메시지 -->
, LE.LEVY_EXCL_RSN_CD <!-- 부과 제외 사유 코드 -->
, LE.LEVY_EXCL_YMD <!-- 부과 제외 일자 -->
, LE.ETC_CN AS LEVY_EXCL_ETC_CN <!-- 부과 제외 기타 내용 -->
, C.DEL_YN
, C.RGTR
, C.REG_DT
, C.MDFR
, C.MDFCN_DT
, C.DLTR
, C.DEL_DT
, C.DEL_RSN
FROM TB_CRDN C
LEFT OUTER JOIN TB_CRDN_CVLCPT CC ON (C.CRDN_ID = CC.CRDN_ID)
LEFT OUTER JOIN TB_TEAM_INFO TI ON (C.TEAM_ID = TI.TEAM_ID)
LEFT OUTER JOIN TB_LEVY_EXCL LE ON (C.CRDN_ID = LE.CRDN_ID)
LEFT OUTER JOIN TB_LEVY L ON (C.LEVY_ID = L.LEVY_ID)
WHERE C.DEL_YN = 'N'
<if test="by != null and by != '' and term != null">
<choose>
<when test="by == 'advancedOption1'">
AND FN_GET_CODE_NM('FIM003', C.CRDN_INPT_SE_CD) LIKE CONCAT('%', #{term}, '%')
</when>
<otherwise>
AND C.${by} LIKE CONCAT('%', #{term}, '%')
</otherwise>
</choose>
</if>
<if test="crdnId != null">AND C.CRDN_ID = #{crdnId}</if>
<if test="taskSeCd != null">AND C.TASK_SE_CD = #{taskSeCd}</if>
<if test="vhrno != null">AND C.VHRNO LIKE CONCAT('%', #{vhrno}, '%')</if>
<if test="crdnInptSeCd != null">AND C.CRDN_INPT_SE_CD = #{crdnInptSeCd}</if>
<if test="schCrdnYmdFrom != null or schCrdnYmdTo != null">
<if test="schCrdnYmdFrom != null">AND C.CRDN_YMD <![CDATA[ >= ]]> #{schCrdnYmdFrom} </if>
<if test="schCrdnYmdTo != null">AND C.CRDN_YMD <![CDATA[ <= ]]> #{schCrdnYmdTo} </if>
</if>
<if test="schDateFrom != null or schDateTo != null">
<if test="schDateOpt == 'regDt'">
<if test="schDateFrom != null">AND SUBSTR(C.REG_DT,1,8) <![CDATA[ >= ]]> #{schDateFrom} </if>
<if test="schDateTo != null">AND SUBSTR(C.REG_DT,1,8) <![CDATA[ <= ]]> #{schDateTo} </if>
</if>
<if test="schDateOpt == 'mdfcnDt'">
<if test="schDateFrom != null">AND SUBSTR(C.MDFCN_DT,1,8) <![CDATA[ >= ]]> #{schDateFrom} </if>
<if test="schDateTo != null">AND SUBSTR(C.MDFCN_DT,1,8) <![CDATA[ <= ]]> #{schDateTo} </if>
</if>
</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix"/>
</sql>
<select id="selectCivilComplaintList" parameterType="map" resultType="dataobject">
/* 민원자료 목록 조회(crdn01Mapper.selectCivilComplaintList) */
<include refid="selectCivilComplaint"/>
</select>
<select id="selectCivilComplaintReceiptDataList" parameterType="map" resultType="dataobject">
/* 민원접수자료 목록 조회(crdn01Mapper.selectCivilComplaintReceiptDataList) */
<include refid="utility.paging-prefix"/>
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.CRDN_REG_SE_CD <!-- 단속 등록 구분 코드 -->
, CC.CVLCPT_APLCNT_NM <!-- 민원 신청인 명 -->
, CC.CVLCPT_PRCS_PIC_NM <!-- 민원 처리 담당자 명 -->
<!-- 민원 처리 담당자 전화번호 -->
, CC.CVLCPT_RCPT_YMD <!-- 민원 접수 일자 -->
, CC.CVLCPT_PRCS_PRNMNT_DT <!-- 민원 처리 예정 일시 -->
, CONCAT(C.CRDN_YMD,'',C.CRDN_TM) AS CRDN_YMD_TM <!-- 단속 일시 -->
<!-- 첨부매체 -->
, C.ATCH_FILE_CNT <!-- 첨부 파일 수 -->
<!-- 위반내용 -->
, CC.CVLCPT_RCPT_NO <!-- 민원 접수 번호 -->
, C.VHRNO <!-- 차량번호 -->
FROM TB_CRDN C
LEFT OUTER JOIN TB_CRDN_CVLCPT CC ON (C.CRDN_ID = CC.CRDN_ID)
WHERE C.DEL_YN = 'N'
AND C.TASK_SE_CD = #{taskSeCd}
<if test="by != null and by != '' and term != null">
</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix"/>
</select>
<select id="selectCivilComplaintAnswerTargetDataList" parameterType="map" resultType="dataobject">
/* 민원답변대상자료 목록 조회(crdn01Mapper.selectCivilComplaintAnswerTargetDataList) */
<include refid="utility.paging-prefix"/>
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.CRDN_REG_SE_CD <!-- 단속 등록 구분 코드 -->
<!-- 위반내용 -->
, CC.CVLCPT_APLCNT_NM <!-- 민원 신청인 명 -->
, CC.CVLCPT_PRCS_PIC_NM <!-- 민원 처리 담당자 명 -->
<!-- 민원 처리 담당자 전화번호 -->
, CC.CVLCPT_RCPT_YMD <!-- 민원 접수 일자 -->
, CC.CVLCPT_PRCS_PRNMNT_DT <!-- 민원 처리 예정 일시 -->
, CONCAT(C.CRDN_YMD,'',C.CRDN_TM) AS CRDN_YMD_TM <!-- 단속 일시 -->
, CC.CVLCPT_RCPT_NO <!-- 민원 접수 번호 -->
, C.VHRNO <!-- 차량번호 -->
<!-- 서손/계도사유 -->
<!-- 특기사항 -->
FROM TB_CRDN C
LEFT OUTER JOIN TB_CRDN_CVLCPT CC ON (C.CRDN_ID = CC.CRDN_ID)
WHERE C.DEL_YN = 'N'
AND C.TASK_SE_CD = #{taskSeCd}
<if test="by != null and by != '' and term != null">
</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix"/>
</select>
</mapper> </mapper>

@ -302,7 +302,9 @@ SELECT GROUP_CONCAT(C.CRDN_ID) AS CRDN_ID_LIST <!-- 단속 ID -->
WHERE C.DEL_YN = 'N' WHERE C.DEL_YN = 'N'
AND C.TASK_SE_CD = #{taskSeCd} AND C.TASK_SE_CD = #{taskSeCd}
AND C.VHRNO != '' AND C.VHRNO != ''
<if test="schOnlySamePlace == 'on'">
AND C.CRDN_STDG_NM != '' AND C.CRDN_STDG_NM != ''
</if>
<if test="schCrdnYmdFrom != null or schCrdnYmdTo != null"> <if test="schCrdnYmdFrom != null or schCrdnYmdTo != null">
<if test="schCrdnYmdFrom != null">AND C.CRDN_YMD <![CDATA[ >= ]]> #{schCrdnYmdFrom} </if> <if test="schCrdnYmdFrom != null">AND C.CRDN_YMD <![CDATA[ >= ]]> #{schCrdnYmdFrom} </if>
<if test="schCrdnYmdTo != null">AND C.CRDN_YMD <![CDATA[ <= ]]> #{schCrdnYmdTo} </if> <if test="schCrdnYmdTo != null">AND C.CRDN_YMD <![CDATA[ <= ]]> #{schCrdnYmdTo} </if>

@ -1,3 +1,260 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">민원 접수 자료</c:set> <!-- inner page html -->
<div class="content-wrapper">
<div class="container-xxl flex-grow-1 px-0">
<c:set var="prefixName" scope="request">민원접수자료</c:set>
<div class="card">
<div class="wrapper-list">
<div>
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화">초기화</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색">검색</button>
</span>
</div>
<form id="frmSearch--${pageName}" name="frmSearch">
<div class="container-search">
<div class="row g-1">
<div class="col-6">
<label class="form-label fw-bold form-search-title">시스템구분</label>
<span class="form-search-linebox">
<c:forEach items="${FIM054List}" var="item">
<label>
<input name="taskSeCd" type="radio" value="${item.code}"
class="form-check-input" alt="업무구분"
onchange="pageObject['${pageName}'].fnResetAndChangeBiz(this.value);">
${item.value}
</label>
</c:forEach>
</span>
</div>
<div class="col-6">
<label class="form-label fw-bold form-search-title">접수일자</label>
<span class="form-search-linebox">
<input type="text" id="schCvlcptRcptYmdFrom--${pageName}" name="schCvlcptRcptYmdFrom" class="form-control form-date"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" id="schCvlcptRcptYmdTo--${pageName}" name="schCvlcptRcptYmdTo" class="form-control form-date"
data-fmt-type="day" title="종료 날짜 선택">
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<div class="col-12">
<input type="hidden" id="by--${pageName}" name="by" />
<input type="text" id="byOutput--${pageName}" class="form-control" readonly value="동적 검색" />
<input type="text" id="term--${pageName}" name="term" class="form-control" />
</div>
</div>
</div>
</form>
<div>
<span class="container-page-btn">
<div class="d-flex flex-row justify-content-between">
<label id="crdnPaging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<ul id="crdnPaging--${pageName}" class="pagination pagination-primary">
</ul>
</div>
<span class="container-window-btn-right">
<a href="#" class="btn btn-blue" id="" title="민원원본보기">민원원본보기</a>
<a href="#" class="btn btn-blue" id="" title="처리 잠시 보류">처리 잠시 보류</a>
</span>
</span>
</div>
<div class="card-datatable text-nowrap">
<div id="DataTables_Table_0_wrapper--${pageName}" class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="table-responsive--${pageName}" class="table-responsive"
style="overflow-x: scroll;height:400px;overflow-y: scroll;">
<table id="DataTables_Table_0--${pageName}"
class="datatables-ajax table table-bordered dataTable no-footer">
<thead id="crdnThead--${pageName}">
<tr>
<th width="80">No.</th>
<th width="80">등록구분</th>
<th width="80">신고자</th>
<th width="80">담당자</th>
<th width="80">담당자전화번호</th>
<th width="80">접수일자</th>
<th width="80">처리기한</th>
<th width="80">위반일자</th>
<th width="80">첨부매체</th>
<th width="80">사진건수</th>
<th width="80">위반내용</th>
<th width="80">접수번호</th>
<th width="80">차량번호</th>
</tr>
</thead>
<tbody id="crdnTbody--${pageName}"></tbody>
<template id="crdnRow--${pageName}">
<tr data-key="{CRDN_ID}">
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-end">{ROW_NUM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CRDN_REG_SE_CD}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_APLCNT_NM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_PRCS_PIC_NM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{담당자전화번호}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_RCPT_YMD}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_PRCS_PRNMNT_DT}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CRDN_YMD_TM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{첨부매체}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{ATCH_FILE_CNT}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{위반내용}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_RCPT_NO}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{VHRNO}</td>
</tr>
</template>
<template id="crdnNotFound--${pageName}">
<tr>
<td valign="top" colspan="13" class="dataTables_empty text-center">민원 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<jsp:include page="/WEB-INF/jsp/include/bottom.jsp" />
<div class="content-backdrop fade"></div>
</div>
<script>
/**************************************************************************
* Global Variable
**************************************************************************/
var FIM026 = new CommonCodes(${FIM026});
pageObject["${pageName}"] = {};
$(document).ready(function(){
var $P = pageObject["${pageName}"];
$P.crdnControl = new DatasetControl({
prefix:"crdn", prefixName:"종합", infoSize:"xl", urls : { load : "", getInfo : "" },
keymapper:info => info ? info.CRDN_ID : "", dataGetter:obj => obj.crdnList, appendData:true,
formats : {
CRDN_REG_SE_CD : FIM026,
CVLCPT_RCPT_YMD : dateFormat,
CVLCPT_PRCS_PRNMNT_DT : datetimeFormat,
CRDN_YMD_TM : datetimeFormat
}
});
$P.crdnControl.onDatasetChange = obj => {
$P.renderCrdnList();
var prefix = obj.infoPrefix;
$("#crdnPaging--${pageName}").setPagingInfo({
list: $P.crdnControl.dataset,
prefix: "crdnPaging--${pageName}",
start: obj[prefix+"Start"],
totalSize: obj[prefix+"Total"],
fetchSize: obj[prefix+"Fetch"],
func: "pageObject['${pageName}'].crdnControl.load({index})"
});
};
$P.crdnControl.onCurrentChange = item => {
if (!item) return;
let key = item.data.CRDN_ID;
$("#crdnTbody--${pageName}").setCurrentRow(key);
}
$P.fnReset = () => {
$('#schCvlcptRcptYmdFrom--${pageName}').datepicker('setDate', DateUtil.getDateDay(-5475).date);
$('#schCvlcptRcptYmdTo--${pageName}').datepicker('setDate', new Date());
$P.crdnControl.setData([]);
}
$P.fnResetAndChangeBiz = taskSeCd => {
$P.fnReset();
$P.crdnControl.urls.load = wctx.url("/crdn/crdn01/010/"+ taskSeCd +"/list.do");
$P.crdnControl.urls.getInfo = wctx.url("/crdn/crdn01/020/"+ taskSeCd +"/info.do");
}
$P.searchCrdnList = () => {
$P.crdnControl.query = $P.getParams();
$P.crdnControl.load(1);
}
$P.scrollCrdnList = () => {
$P.crdnControl.load($P.crdnControl.query.pageNum + 1);
}
$P.clickCrdnList = (dataKey) => {
$P.crdnControl.setCurrent(dataKey);
$("#crdnTbody--${pageName}").setCurrentRow(dataKey);
}
$P.dblclickCrdnList = (dataKey) => {
$P.crdnControl.getInfo(dataKey);
}
$P.renderCrdnList = () => {
var crdnList = $P.crdnControl.dataset;
var empty = crdnList.empty;
var notFound = [document.getElementById("crdnNotFound--${pageName}").innerHTML];
var found = document.getElementById("crdnRow--${pageName}").innerHTML;
var replacer = (str, dataItem) => str
.replace(/{onclick}/gi, "pageObject['${pageName}'].clickCrdnList('" + dataItem.getValue("CRDN_ID") + "');")
.replace(/{ondblclick}/gi, "pageObject['${pageName}'].dblclickCrdnList('" + dataItem.getValue("CRDN_ID") + "');");
var trs = empty ? notFound : crdnList.inStrings(found, replacer);
$("#crdnTbody--${pageName}").html(trs.join());
//보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
}
$P.getParams = () => {
var formFields = new FimsFormFields("#frmSearch--${pageName}");
var data = formFields.get();
data.fetchSize = 30;
return data;
}
//이벤트 추가
$('#btnReset--${pageName}').on('click', () => $P.fnReset());
$('#btnSearch--${pageName}').on('click', () => $P.searchCrdnList());
$("#table-responsive--${pageName}").scroll(function(){
var el = $(this);
if(el.scrollTop() == 0){
return;
}
if((el[0].scrollHeight - el.scrollTop() + VERTICAL_SCROLL_HEIGHT) == el.outerHeight()){
$P.scrollCrdnList();
}
});
//달력 초기화
initDatepicker("frmSearch--${pageName}");
var defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
$P.fnResetAndChangeBiz(defaultBizValue);
//보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
});
</script>

@ -1,3 +1,262 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">민원 답변 대상 자료</c:set> <!-- inner page html -->
<div class="content-wrapper">
<div class="container-xxl flex-grow-1 px-0">
<c:set var="prefixName" scope="request">민원답변대상자료</c:set>
<div class="card">
<div class="wrapper-list">
<div>
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화">초기화</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색">검색</button>
</span>
</div>
<form id="frmSearch--${pageName}" name="frmSearch">
<div class="container-search">
<div class="row g-1">
<div class="col-6">
<label class="form-label fw-bold form-search-title">시스템구분</label>
<span class="form-search-linebox">
<c:forEach items="${FIM054List}" var="item">
<label>
<input name="taskSeCd" type="radio" value="${item.code}"
class="form-check-input" alt="업무구분"
onchange="pageObject['${pageName}'].fnResetAndChangeBiz(this.value);">
${item.value}
</label>
</c:forEach>
</span>
</div>
<div class="col-6">
<label class="form-label fw-bold form-search-title">접수일자</label>
<span class="form-search-linebox">
<input type="text" id="schCvlcptRcptYmdFrom--${pageName}" name="schCvlcptRcptYmdFrom" class="form-control form-date"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" id="schCvlcptRcptYmdTo--${pageName}" name="schCvlcptRcptYmdTo" class="form-control form-date"
data-fmt-type="day" title="종료 날짜 선택">
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<div class="col-12">
<input type="hidden" id="by--${pageName}" name="by" />
<input type="text" id="byOutput--${pageName}" class="form-control" readonly value="동적 검색" />
<input type="text" id="term--${pageName}" name="term" class="form-control" />
</div>
</div>
</div>
</form>
<div>
<span class="container-page-btn">
<div class="d-flex flex-row justify-content-between">
<label id="crdnPaging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<ul id="crdnPaging--${pageName}" class="pagination pagination-primary">
</ul>
</div>
<span class="container-window-btn-right">
<a href="#" class="btn btn-blue" id="" title="민원원본보기">민원원본보기</a>
<a href="#" class="btn btn-blue" id="" title="답변미리보기">답변미리보기</a>
<a href="#" class="btn btn-blue" id="" title="선택자료답변등록실행">선택자료답변등록실행</a>
<a href="#" class="btn btn-blue" id="" title="답변완료로 수정">답변완료로 수정</a>
</span>
</span>
</div>
<div class="card-datatable text-nowrap">
<div id="DataTables_Table_0_wrapper--${pageName}" class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="table-responsive--${pageName}" class="table-responsive"
style="overflow-x: scroll;height:400px;overflow-y: scroll;">
<table id="DataTables_Table_0--${pageName}"
class="datatables-ajax table table-bordered dataTable no-footer">
<thead id="crdnThead--${pageName}">
<tr>
<th width="80">No.</th>
<th width="80">등록구분</th>
<th width="80">위반내용</th>
<th width="80">신고자</th>
<th width="80">담당자</th>
<th width="80">담당자전화번호</th>
<th width="80">접수일자</th>
<th width="80">처리기한</th>
<th width="80">위반일자</th>
<th width="80">접수번호</th>
<th width="80">차량번호</th>
<th width="80">서손/계도사유</th>
<th width="80">특기사항</th>
</tr>
</thead>
<tbody id="crdnTbody--${pageName}"></tbody>
<template id="crdnRow--${pageName}">
<tr data-key="{CRDN_ID}">
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-end">{ROW_NUM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CRDN_REG_SE_CD}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{위반내용}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_APLCNT_NM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_PRCS_PIC_NM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{담당자전화번호}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_RCPT_YMD}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_PRCS_PRNMNT_DT}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CRDN_YMD_TM}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{CVLCPT_RCPT_NO}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{VHRNO}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{서손/계도사유}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{특기사항}</td>
</tr>
</template>
<template id="crdnNotFound--${pageName}">
<tr>
<td valign="top" colspan="13" class="dataTables_empty text-center">민원 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<jsp:include page="/WEB-INF/jsp/include/bottom.jsp" />
<div class="content-backdrop fade"></div>
</div>
<script>
/**************************************************************************
* Global Variable
**************************************************************************/
var FIM026 = new CommonCodes(${FIM026});
pageObject["${pageName}"] = {};
$(document).ready(function(){
var $P = pageObject["${pageName}"];
$P.crdnControl = new DatasetControl({
prefix:"crdn", prefixName:"종합", infoSize:"xl", urls : { load : "", getInfo : "" },
keymapper:info => info ? info.CRDN_ID : "", dataGetter:obj => obj.crdnList, appendData:true,
formats : {
CRDN_REG_SE_CD : FIM026,
CVLCPT_RCPT_YMD : dateFormat,
CVLCPT_PRCS_PRNMNT_DT : datetimeFormat,
CRDN_YMD_TM : datetimeFormat
}
});
$P.crdnControl.onDatasetChange = obj => {
$P.renderCrdnList();
var prefix = obj.infoPrefix;
$("#crdnPaging--${pageName}").setPagingInfo({
list: $P.crdnControl.dataset,
prefix: "crdnPaging--${pageName}",
start: obj[prefix+"Start"],
totalSize: obj[prefix+"Total"],
fetchSize: obj[prefix+"Fetch"],
func: "pageObject['${pageName}'].crdnControl.load({index})"
});
};
$P.crdnControl.onCurrentChange = item => {
if (!item) return;
let key = item.data.CRDN_ID;
$("#crdnTbody--${pageName}").setCurrentRow(key);
}
$P.fnReset = () => {
$('#schCvlcptRcptYmdFrom--${pageName}').datepicker('setDate', DateUtil.getDateDay(-5475).date);
$('#schCvlcptRcptYmdTo--${pageName}').datepicker('setDate', new Date());
$P.crdnControl.setData([]);
}
$P.fnResetAndChangeBiz = taskSeCd => {
$P.fnReset();
$P.crdnControl.urls.load = wctx.url("/crdn/crdn01/010/"+ taskSeCd +"/list.do");
$P.crdnControl.urls.getInfo = wctx.url("/crdn/crdn01/020/"+ taskSeCd +"/info.do");
}
$P.searchCrdnList = () => {
$P.crdnControl.query = $P.getParams();
$P.crdnControl.load(1);
}
$P.scrollCrdnList = () => {
$P.crdnControl.load($P.crdnControl.query.pageNum + 1);
}
$P.clickCrdnList = (dataKey) => {
$P.crdnControl.setCurrent(dataKey);
$("#crdnTbody--${pageName}").setCurrentRow(dataKey);
}
$P.dblclickCrdnList = (dataKey) => {
$P.crdnControl.getInfo(dataKey);
}
$P.renderCrdnList = () => {
var crdnList = $P.crdnControl.dataset;
var empty = crdnList.empty;
var notFound = [document.getElementById("crdnNotFound--${pageName}").innerHTML];
var found = document.getElementById("crdnRow--${pageName}").innerHTML;
var replacer = (str, dataItem) => str
.replace(/{onclick}/gi, "pageObject['${pageName}'].clickCrdnList('" + dataItem.getValue("CRDN_ID") + "');")
.replace(/{ondblclick}/gi, "pageObject['${pageName}'].dblclickCrdnList('" + dataItem.getValue("CRDN_ID") + "');");
var trs = empty ? notFound : crdnList.inStrings(found, replacer);
$("#crdnTbody--${pageName}").html(trs.join());
//보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
}
$P.getParams = () => {
var formFields = new FimsFormFields("#frmSearch--${pageName}");
var data = formFields.get();
data.fetchSize = 30;
return data;
}
//이벤트 추가
$('#btnReset--${pageName}').on('click', () => $P.fnReset());
$('#btnSearch--${pageName}').on('click', () => $P.searchCrdnList());
$("#table-responsive--${pageName}").scroll(function(){
var el = $(this);
if(el.scrollTop() == 0){
return;
}
if((el[0].scrollHeight - el.scrollTop() + VERTICAL_SCROLL_HEIGHT) == el.outerHeight()){
$P.scrollCrdnList();
}
});
//달력 초기화
initDatepicker("frmSearch--${pageName}");
var defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
$P.fnResetAndChangeBiz(defaultBizValue);
//보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
});
</script>

@ -257,7 +257,7 @@
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{}</td> <td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center">{}</td>
</tr> </tr>
</template> </template>
<template id="crdnNotFound--${pageName}" class="dpv eca"> <template id="crdnNotFound--${pageName}">
<tr class="dpv eca"> <tr class="dpv eca">
<td valign="top" colspan="15" class="dataTables_empty text-center">단속 정보를 찾지 못했습니다.</td> <td valign="top" colspan="15" class="dataTables_empty text-center">단속 정보를 찾지 못했습니다.</td>
</tr> </tr>

Loading…
Cancel
Save