개별총정보 - 처리상세정보 수정.

main
jjh 1 year ago
parent 0b9a1ed5c0
commit 3b99a5b380

@ -13,5 +13,52 @@ import cokr.xit.foundation.component.QueryRequest;
* </pre> * </pre>
*/ */
public class CrdnPayerHstryQuery extends QueryRequest { public class CrdnPayerHstryQuery extends QueryRequest {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* ID
*/
private String chgHstryId;
/**
* ID
*/
private String crdnId;
/**
* ID
*/
private String rtpyrId;
public String getChgHstryId() {
return ifEmpty(chgHstryId, () -> null);
}
public <T extends CrdnPayerHstryQuery> T setChgHstryId(String chgHstryId) {
this.chgHstryId = chgHstryId;
return self();
}
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
public <T extends CrdnPayerHstryQuery> T setCrdnId(String crdnId) {
this.crdnId = crdnId;
return self();
}
public String getRtpyrId() {
return ifEmpty(rtpyrId, () -> null);
}
public <T extends CrdnPayerHstryQuery> T setRtpyrId(String rtpyrId) {
this.rtpyrId = rtpyrId;
return self();
}
} }

@ -24,6 +24,12 @@ public interface Excl01Service {
*/ */
List<DataObject> getLevyExclList(ExclQuery req); List<DataObject> getLevyExclList(ExclQuery req);
/** .
* @param req
* @return
*/
List<DataObject> getLevyExcls(ExclQuery req);
/** ID .<br /> /** ID .<br />
* @param levyExclId ID * @param levyExclId ID
* @return * @return

@ -51,6 +51,14 @@ public class Excl01Bean extends AbstractComponent {
return levyExclMapper.selectLevyExclList(req); return levyExclMapper.selectLevyExclList(req);
} }
/** .
* @param req
* @return
*/
public List<DataObject> getLevyExcls(ExclQuery req) {
return levyExclMapper.selectLevyExcls(req);
}
/** ID .<br /> /** ID .<br />
* @param levyExclId ID * @param levyExclId ID
* @return * @return

@ -34,6 +34,11 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
return excl01Bean.getLevyExclList(req); return excl01Bean.getLevyExclList(req);
} }
@Override
public List<DataObject> getLevyExcls(ExclQuery req) {
return excl01Bean.getLevyExcls(req);
}
@Override @Override
public DataObject getLevyExclInfo(ExclQuery req) { public DataObject getLevyExclInfo(ExclQuery req) {
return excl01Bean.getLevyExclInfo(req); return excl01Bean.getLevyExclInfo(req);

@ -8,6 +8,12 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.web.ApplicationController; import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.cmmn.CrdnPayerHstryQuery;
import cokr.xit.fims.cmmn.CrdnSttsHstryQuery;
import cokr.xit.fims.cmmn.service.CrdnPayerHstryService;
import cokr.xit.fims.cmmn.service.CrdnSttsHstryService;
import cokr.xit.fims.excl.ExclQuery;
import cokr.xit.fims.excl.service.Excl01Service;
import cokr.xit.fims.sprt.SprtQuery; import cokr.xit.fims.sprt.SprtQuery;
import cokr.xit.fims.sprt.service.Sprt02Service; import cokr.xit.fims.sprt.service.Sprt02Service;
import cokr.xit.foundation.data.DataObject; import cokr.xit.foundation.data.DataObject;
@ -27,6 +33,18 @@ public class Sprt02Controller extends ApplicationController {
@Resource(name="sprt02Service") @Resource(name="sprt02Service")
private Sprt02Service sprt02Service; private Sprt02Service sprt02Service;
/** 부과제외 대장 서비스 */
@Resource(name = "excl01Service")
protected Excl01Service excl01Service;
/** 단속 상태 이력 서비스 */
@Resource(name = "crdnSttsHstryService")
private CrdnSttsHstryService crdnSttsHstryService;
/** 단속 납부자 이력 서비스 */
@Resource(name = "crdnPayerHstryService")
private CrdnPayerHstryService crdnPayerHstryService;
/** (sprt/sprt02/010-main) . /** (sprt/sprt02/010-main) .
* @return /sprt/sprt02/010-main * @return /sprt/sprt02/010-main
*/ */
@ -103,7 +121,51 @@ public class Sprt02Controller extends ApplicationController {
return mav return mav
.addObject("pageName", "sprt02040") .addObject("pageName", "sprt02040")
.addObject("infoPrefix", "sndngDtl") // prefix .addObject("infoPrefix", "sndngDtl") // prefix
.addObject("sndngDtlList", json ? sndngDtl : toJson(sndngDtl)) // 발송 정보 .addObject("sndngDtlList", json ? sndngDtl : toJson(sndngDtl)) // 발송 정보
;
}
/** ID , , .
* @param crdnId ID
* @return fims/sprt/sprt02050-main jsonView
* <pre><code> {
* "sndngDtl": {...}
* }</code></pre>
*/
@RequestMapping(name="처리 상세 정보 조회", value="/050/info.do")
public ModelAndView getPrcsDtlnfo(SprtQuery req) {
// 부과 제외
ExclQuery exclQuery = new ExclQuery();
exclQuery.setCrdnId(req.getCrdnId());
exclQuery.setDelYn("N");
List<?> levyExcl = excl01Service.getLevyExcls(exclQuery);
// 감경
// 단속 상태 이력
CrdnSttsHstryQuery crdnSttsHstryQuery = new CrdnSttsHstryQuery();
crdnSttsHstryQuery.setCrdnId(req.getCrdnId());
crdnSttsHstryQuery.setOrderBy("REG_DT DESC");
List<?> crdnSttsHstry = crdnSttsHstryService.getCrdnSttsHstrys(crdnSttsHstryQuery);
// 단속 납부자 이력
CrdnPayerHstryQuery crdnPayerHstryQuery = new CrdnPayerHstryQuery();
crdnPayerHstryQuery.setCrdnId(req.getCrdnId());
crdnPayerHstryQuery.setOrderBy("REG_DT DESC");
List<?> crdnPayerHstry = crdnPayerHstryService.getCrdnPayerHstrys(crdnPayerHstryQuery);
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sprt/sprt02050-info");
return mav
.addObject("pageName", "sprt02050")
.addObject("levyExcl", json ? levyExcl : toJson(levyExcl)) // 부과 제외
.addObject("crdnSttsHstryList", json ? crdnSttsHstry : toJson(crdnSttsHstry)) // 단속 상태 이력
.addObject("crdnPayerHstryList", json ? crdnPayerHstry : toJson(crdnPayerHstry)) // 단속 납부자 이력
; ;
} }

@ -7,88 +7,96 @@
2023-08-16 leebj 최초 작성 2023-08-16 leebj 최초 작성
============================ --> ============================ -->
<resultMap id="crdnPayerHstryRow" type="cokr.xit.fims.cmmn.CrdnPayerHstry"> <!-- 단속 납부자 이력 --> <resultMap id="crdnPayerHstryRow" type="cokr.xit.fims.cmmn.CrdnPayerHstry"> <!-- 단속 납부자 이력 -->
<result property="chgHstryId" column="CHG_HSTRY_ID" /> <!-- 변경 이력 ID --> <result property="chgHstryId" column="CHG_HSTRY_ID" /> <!-- 변경 이력 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID --> <result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="rtpyrId" column="RTPYR_ID" /> <!-- 납부자 ID --> <result property="rtpyrId" column="RTPYR_ID" /> <!-- 납부자 ID -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 --> <result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 --> <result property="createdBy" column="RGTR" /> <!-- 등록자 -->
</resultMap> </resultMap>
<sql id="select"> <sql id="select">
SELECT CHG_HSTRY_ID <!-- 변경 이력 ID --> SELECT CPH.CHG_HSTRY_ID /* 변경 이력 ID */
, CRDN_ID <!-- 단속 ID --> , CPH.CRDN_ID /* 단속 ID */
, RTPYR_ID <!-- 납부자 ID --> , CPH.RTPYR_ID /* 납부자 ID */
, REG_DT <!-- 등록 일시 --> , CPH.REG_DT /* 등록 일시 */
, RGTR <!-- 등록자 --> , CPH.RGTR /* 등록자 */
FROM TB_CRDN_PAYER_HSTRY , P.RTPYR_NO /* 납부자 번호 */
</sql> , P.RTPYR_NM /* 납부자 명 */
, P.ZIP /* 우편번호 */
, P.WHOL_ADDR /* 전체 주소 */
FROM TB_CRDN_PAYER_HSTRY CPH
INNER JOIN TB_PAYER P ON (CPH.RTPYR_ID = P.RTPYR_ID)
</sql>
<select id="selectCrdnPayerHstryList" parameterType="map" resultType="dataobject"> <select id="selectCrdnPayerHstryList" parameterType="map" resultType="dataobject">/* 단속 납부자 이력 목록 조회(crdnPayerHstryMapper.selectCrdnPayerHstryList) */
/* 단속 납부자 이력 목록 조회(crdnPayerHstryMapper.selectCrdnPayerHstryList) */ <include refid="utility.paging-prefix" />
<include refid="utility.paging-prefix" /> <include refid="select" />
<include refid="select" /> <where>
<where> </where>
</where> <include refid="utility.orderBy" />
<include refid="utility.orderBy" /> include refid="utility.paging-suffix" />
<include refid="utility.paging-suffix" /> </select>
</select>
<select id="selectCrdnPayerHstrys" parameterType="map" resultMap="crdnPayerHstryRow"> <select id="selectCrdnPayerHstrys" parameterType="map" resultType="dataobject">/* 단속 납부자 이력 객체 가져오기(crdnPayerHstryMapper.selectCrdnPayerHstrys) */
/* 단속 납부자 이력 객체 가져오기(crdnPayerHstryMapper.selectCrdnPayerHstrys) */ <include refid="select" />
<include refid="select" /> <where>
<where> <if test="chgHstryId != null">
</where> AND CPH.CHG_HSTRY_ID = #{chgHstryId} /* 변경 이력 ID */
<include refid="utility.orderBy" /> </if>
</select> <if test="crdnId != null">
AND CPH.CRDN_ID = #{crdnId} /* 단속 ID */
</if>
<if test="rtpyrId != null">
AND CPH.RTPYR_ID = #{rtpyrId} /* 납부자 ID */
</if>
</where>
<include refid="utility.orderBy" />
</select>
<insert id="insertCrdnPayerHstry" parameterType="map"> <insert id="insertCrdnPayerHstry" parameterType="map">/* 단속 납부자 이력 등록(crdnPayerHstryMapper.insertCrdnPayerHstry) */
/* 단속 납부자 이력 등록(crdnPayerHstryMapper.insertCrdnPayerHstry) */ <selectKey resultType="string" keyProperty="crdnPayerHstry.chgHstryId" keyColumn="NEW_ID" order="BEFORE">
<selectKey resultType="string" keyProperty="crdnPayerHstry.chgHstryId" keyColumn="NEW_ID" order="BEFORE"> SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(CHG_HSTRY_ID, 5)) + 1, 1) AS INT), 16, '0')) AS NEW_ID
SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(CHG_HSTRY_ID, 5)) + 1, 1) AS INT), 16, '0')) AS NEW_ID FROM TB_CRDN_PAYER_HSTRY
FROM TB_CRDN_PAYER_HSTRY WHERE CHG_HSTRY_ID LIKE CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
WHERE CHG_HSTRY_ID LIKE CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), '%') </selectKey>
</selectKey> INSERT
INSERT INTO TB_CRDN_PAYER_HSTRY ( INTO TB_CRDN_PAYER_HSTRY (
CHG_HSTRY_ID <!-- 변경 이력 ID --> CHG_HSTRY_ID /* 변경 이력 ID */
, CRDN_ID <!-- 단속 ID --> , CRDN_ID /* 단속 ID */
, RTPYR_ID <!-- 납부자 ID --> , RTPYR_ID /* 납부자 ID */
, REG_DT <!-- 등록 일시 --> , REG_DT /* 등록 일시 */
, RGTR <!-- 등록자 --> , RGTR /* 등록자 */
) VALUES ( ) VALUES (
#{crdnPayerHstry.chgHstryId} <!-- 변경 이력 ID --> #{crdnPayerHstry.chgHstryId} /* 변경 이력 ID */
, #{crdnPayerHstry.crdnId} <!-- 단속 ID --> , #{crdnPayerHstry.crdnId} /* 단속 ID */
, #{crdnPayerHstry.rtpyrId} <!-- 납부자 ID --> , #{crdnPayerHstry.rtpyrId} /* 납부자 ID */
, <include refid="utility.now" /> <!-- 등록 일시 --> , #{crdnPayerHstry.createdAt} /* 등록 일시 */
, #{currentUser.id} <!-- 등록자 --> , #{crdnPayerHstry.createdBy} /* 등록자 */
) )
</insert> </insert>
<update id="updateCrdnPayerHstry" parameterType="map"> <update id="updateCrdnPayerHstry" parameterType="map">/* 단속 납부자 이력 수정(crdnPayerHstryMapper.updateCrdnPayerHstry) */
/* 단속 납부자 이력 수정(crdnPayerHstryMapper.updateCrdnPayerHstry) */ UPDATE TB_CRDN_PAYER_HSTRY
UPDATE TB_CRDN_PAYER_HSTRY SET CRDN_ID = #{crdnPayerHstry.crdnId} /* 단속 ID */
SET , RTPYR_ID = #{crdnPayerHstry.rtpyrId} /* 납부자 ID */
CRDN_ID = #{crdnPayerHstry.crdnId} <!-- 단속 ID --> WHERE CHG_HSTRY_ID = #{crdnPayerHstry.chgHstryId}
, RTPYR_ID = #{crdnPayerHstry.rtpyrId} <!-- 납부자 ID --> </update>
WHERE CHG_HSTRY_ID = #{crdnPayerHstry.chgHstryId}
</update>
<update id="deleteCrdnPayerHstry" parameterType="map"> <update id="deleteCrdnPayerHstry" parameterType="map">/* 단속 납부자 이력 삭제(crdnPayerHstryMapper.deleteCrdnPayerHstry) */
/* 단속 납부자 이력 삭제(crdnPayerHstryMapper.deleteCrdnPayerHstry) */ UPDATE TB_CRDN_PAYER_HSTRY
UPDATE TB_CRDN_PAYER_HSTRY SET USE_YN = 'N'
SET , MDFCN_DT = #{crdnPayerHstry.lastModified}
USE_YN = 'N' , MDFR = #{crdnPayerHstry.modifiedBy}
, MDFCN_DT =<include refid="utility.now" /> WHERE CHG_HSTRY_ID = #{crdnPayerHstry.chgHstryId}
, MDFR = #{currentUser.id} </update>
WHERE CHG_HSTRY_ID = #{crdnPayerHstry.chgHstryId}
</update> <update id="updateCrdnPayer" parameterType="map">/* 단속 납부자 수정(crdnPayerHstryMapper.updateCrdnPayer) */
UPDATE TB_CRDN_PAYER_HSTRY
SET RTPYR_ID = #{crdnSttsHstry.rtpyrId} /* 납부자 ID */
, MDFCN_DT = #{crdnSttsHstry.lastModified} /* 수정 일시 */
, MDFR = #{crdnSttsHstry.modifiedBy} /* 수정자 */
WHERE CRDN_ID = #{crdnSttsHstry.crdnId} /* 단속 ID */
</update>
<update id="updateCrdnPayer" parameterType="map">
/* 단속 납부자 수정(crdnPayerHstryMapper.updateCrdnPayer) */
UPDATE TB_CRDN_PAYER_HSTRY
SET RTPYR_ID = #{crdnSttsHstry.rtpyrId} /* 납부자 ID */
, MDFCN_DT = #{crdnSttsHstry.lastModified} /* 수정 일시 */
, MDFR = #{crdnSttsHstry.modifiedBy} /* 수정자 */
WHERE CRDN_ID = #{crdnSttsHstry.crdnId} /* 단속 ID */
</update>
</mapper> </mapper>

@ -7,35 +7,39 @@
2023-07-19 JoJH 최초 작성 2023-07-19 JoJH 최초 작성
============================ --> ============================ -->
<resultMap id="crdnSttsHstryRow" type="cokr.xit.fims.cmmn.CrdnSttsHstry"> <resultMap id="crdnSttsHstryRow" type="cokr.xit.fims.cmmn.CrdnSttsHstry"><!-- 단속 상태 이력 -->
<result property="sttsHstryId" column="STTS_HSTRY_ID" /> <!-- 상태 이력 ID --> <result property="sttsHstryId" column="STTS_HSTRY_ID" /> <!-- 상태 이력 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID --> <result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="bfrSttsCd" column="BFR_STTS_CD" /> <!-- 이전 상태 코드 --> <result property="bfrSttsCd" column="BFR_STTS_CD" /> <!-- 이전 상태 코드 -->
<result property="bfrSttsChgDt" column="BFR_STTS_CHG_DT" /> <!-- 이전 상태 변경 일시 --> <result property="bfrSttsChgDt" column="BFR_STTS_CHG_DT" /> <!-- 이전 상태 변경 일시 -->
<result property="crdnSttsCd" column="CRDN_STTS_CD" /> <!-- 단속 상태 코드 --> <result property="crdnSttsCd" column="CRDN_STTS_CD" /> <!-- 단속 상태 코드 -->
<result property="taskDtlId" column="TASK_DTL_ID" /> <!-- 업무 상세 ID --> <result property="taskDtlId" column="TASK_DTL_ID" /> <!-- 업무 상세 ID -->
<result property="useYn" column="USE_YN" /> <!-- 사용 여부 --> <result property="useYn" column="USE_YN" /> <!-- 사용 여부 -->
<result property="etcCn" column="ETC_CN" /> <!-- 기타 내용 --> <result property="etcCn" column="ETC_CN" /> <!-- 기타 내용 -->
<result property="regDt" column="REG_DT" /> <!-- 등록 일시 --> <result property="regDt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="rgtr" column="RGTR" /> <!-- 등록자 --> <result property="rgtr" column="RGTR" /> <!-- 등록자 -->
<result property="mdfcnDt" column="MDFCN_DT" /> <!-- 수정 일시 --> <result property="mdfcnDt" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="mdfr" column="MDFR" /> <!-- 수정자 --> <result property="mdfr" column="MDFR" /> <!-- 수정자 -->
</resultMap> </resultMap>
<sql id="select"> <sql id="select">
SELECT STTS_HSTRY_ID /* 상태 이력 ID */ SELECT CSH.STTS_HSTRY_ID /* 상태 이력 ID */
, CRDN_ID /* 단속 ID */ , CSH.CRDN_ID /* 단속 ID */
, BFR_STTS_CD /* 이전 상태 코드 */ , CSH.BFR_STTS_CD /* 이전 상태 코드 */
, BFR_STTS_CHG_DT /* 이전 상태 변경 일시 */ , (SELECT FN_GET_CODE_NM('FIM010', CSH.BFR_STTS_CD) FROM DUAL) AS BFR_STTS_NM /* 이전 상태 명 */
, CRDN_STTS_CD /* 단속 상태 코드 */ , CSH.BFR_STTS_CHG_DT /* 이전 상태 변경 일시 */
, TASK_DTL_ID /* 업무 상세 ID */ , CSH.CRDN_STTS_CD /* 단속 상태 코드 */
, USE_YN /* 사용 여부 */ , (SELECT FN_GET_CODE_NM('FIM010', CSH.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
, ETC_CN /* 기타 내용 */ , CSH.TASK_DTL_ID /* 업무 상세 ID */
, REG_DT /* 등록 일시 */ , CSH.USE_YN /* 사용 여부 */
, RGTR /* 등록자 */ , CSH.ETC_CN /* 기타 내용 */
, MDFCN_DT /* 수정 일시 */ , CSH.REG_DT /* 등록 일시 */
, MDFR /* 수정자 */ , CSH.RGTR /* 등록자 */
FROM TB_CRDN_STTS_HSTRY , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CSH.RGTR) AS RGTR_NM /* 등록자 명 */
, CSH.MDFCN_DT /* 수정 일시 */
, CSH.MDFR /* 수정자 */
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CSH.MDFR) AS MDFR_NM /* 수정자 명 */
FROM TB_CRDN_STTS_HSTRY CSH
</sql> </sql>
<select id="selectCrdnSttsHstryList" parameterType="map" resultType="dataobject">/* 단속 상태 이력 목록 조회(crdnSttsHstryMapper.selectCrdnSttsHstryList) */ <select id="selectCrdnSttsHstryList" parameterType="map" resultType="dataobject">/* 단속 상태 이력 목록 조회(crdnSttsHstryMapper.selectCrdnSttsHstryList) */
@ -43,10 +47,10 @@
<include refid="select" /> <include refid="select" />
<where> <where>
<if test="crdnId != null"> <if test="crdnId != null">
AND CRDN_ID = #{crdnId} AND CSH.CRDN_ID = #{crdnId}
</if> </if>
<if test="useYn != null"> <if test="useYn != null">
AND USE_YN = #{useYn} AND CSH.USE_YN = #{useYn}
</if> </if>
</where> </where>
<include refid="utility.orderBy" /> <include refid="utility.orderBy" />
@ -55,9 +59,18 @@
<select id="selectCrdnSttsHstrys" parameterType="map" resultType="dataobject">/* 단속 상태 이력 객체 가져오기(crdnSttsHstryMapper.selectCrdnSttsHstrys) */ <select id="selectCrdnSttsHstrys" parameterType="map" resultType="dataobject">/* 단속 상태 이력 객체 가져오기(crdnSttsHstryMapper.selectCrdnSttsHstrys) */
<include refid="select" /> <include refid="select" />
WHERE CRDN_ID = #{crdnId} <where>
AND USE_YN = 'Y' <if test="sttsHstryId != null">
<include refid="utility.sortBy" /> DESC AND CSH.STTS_HSTRY_ID = #{sttsHstryId}
</if>
<if test="crdnId != null">
AND CSH.CRDN_ID = #{crdnId}
</if>
<if test="useYn != null">
AND CSH.USE_YN = #{useYn}
</if>
</where>
<include refid="utility.sortBy" />
</select> </select>
<insert id="insertCrdnSttsHstry" parameterType="map">/* 단속 상태 이력 등록(crdnSttsHstryMapper.insertCrdnSttsHstry) */ <insert id="insertCrdnSttsHstry" parameterType="map">/* 단속 상태 이력 등록(crdnSttsHstryMapper.insertCrdnSttsHstry) */

@ -447,7 +447,7 @@
// 달력 초기화 // 달력 초기화
initDatepicker("frmSearch--${pageName}"); initDatepicker("frmSearch--${pageName}");
$("#schLevyExclYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); $("#schLevyExclYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-30).date);
$("#schLevyExclYmdTo--${pageName}").datepicker("setDate", new Date()); $("#schLevyExclYmdTo--${pageName}").datepicker("setDate", new Date());
${pageName}Control.dataset.clear(); ${pageName}Control.dataset.clear();
@ -457,13 +457,13 @@
setEvent${pageName} = () => { setEvent${pageName} = () => {
// form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용 // form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용
$("#frmSearch--${pageName}").find(".form-date").each(function() { $("#frmSearch--${pageName}").find(".form-date").each(function() {
$(this).on("input",function() { $(this).on("input", function() {
let value = this.value.replaceAll("-", ""); let value = this.value.replaceAll("-", "");
if (value.length > 7) { if (value.length > 7) {
this.value = value.substring(0,4) + "-" + value.substring(4,6) + "-" + value.substring(6); this.value = value.substring(0, 4) + "-" + value.substring(4, 6) + "-" + value.substring(6);
} else if(value.length > 5) { } else if(value.length > 5) {
this.value = value.substring(0,4) + "-" + value.substring(4); this.value = value.substring(0, 4) + "-" + value.substring(4);
} }
}); });
}); });
@ -516,7 +516,7 @@
// 한번에 조회되는 건수 - 30건 // 한번에 조회되는 건수 - 30건
${pageName}Control.query.fetchSize = FETCH_XS; ${pageName}Control.query.fetchSize = FETCH_XS;
${pageName}Control.load(1); ${pageName}Control.load();
} }
// 엑셀 // 엑셀

@ -454,7 +454,7 @@
setEvent${pageName} = () => { setEvent${pageName} = () => {
// form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용 // form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용
$("#frmSearch--${pageName}").find(".form-date").each(function() { $("#frmSearch--${pageName}").find(".form-date").each(function() {
$(this).on("input",function() { $(this).on("input", function() {
let value = this.value.replaceAll("-", ""); let value = this.value.replaceAll("-", "");
if (value.length > 7) { if (value.length > 7) {

@ -377,13 +377,13 @@
function setEvent${pageName} = () => { function setEvent${pageName} = () => {
// form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용 // form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용
$("#frmSearch--${pageName}").find(".form-date").each(function() { $("#frmSearch--${pageName}").find(".form-date").each(function() {
$(this).on("input",function() { $(this).on("input", function() {
let value = this.value.replaceAll("-", ""); let value = this.value.replaceAll("-", "");
if (value.length > 7) { if (value.length > 7) {
this.value = value.substring(0,4) + "-" + value.substring(4,6) + "-" + value.substring(6); this.value = value.substring(0, 4) + "-" + value.substring(4, 6) + "-" + value.substring(6);
} else if(value.length > 5) { } else if(value.length > 5) {
this.value = value.substring(0,4) + "-" + value.substring(4); this.value = value.substring(0, 4) + "-" + value.substring(4);
} }
}); });
}); });

@ -9,6 +9,8 @@
<form id="frmEdit--${pageName}" name="frmEdit"> <form id="frmEdit--${pageName}" name="frmEdit">
<!-- hidden --> <!-- hidden -->
<input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" /> <input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" />
<input type="hidden" id="sggCd--${pageName}" name="sggCd" data-map="SGG_CD" />
<input type="hidden" id="taskSeCd--${pageName}" name="taskSeCd" data-map="TASK_SE_CD" />
<div class="row g-1"> <div class="row g-1">
<!-- 차량번호 --> <!-- 차량번호 -->
@ -58,7 +60,10 @@
</button> </button>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#prcsDtlInfo" aria-controls="prcsDtlInfo" aria-selected="false">처리 상세정보</button> <button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#prcsDtlInfo"
aria-controls="prcsDtlInfo" aria-selected="false" onClick="fnBtnPrcsDtlInfo${pageName}();">
처리 상세정보
</button>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#levyNpmntInfo" aria-controls="levyNpmntInfo" aria-selected="false">부과체납 정보</button> <button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#levyNpmntInfo" aria-controls="levyNpmntInfo" aria-selected="false">부과체납 정보</button>
@ -66,34 +71,21 @@
<li class="nav-item"> <li class="nav-item">
<button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#rcvmtInfo" aria-controls="rcvmtInfo" aria-selected="false">수납 정보</button> <button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#rcvmtInfo" aria-controls="rcvmtInfo" aria-selected="false">수납 정보</button>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#cvlcptDscsnInfo" aria-controls="cvlcptDscsnInfo" aria-selected="false">민원상담 정보</button> <button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#cvlcptDscsnInfo" aria-controls="cvlcptDscsnInfo" aria-selected="false">민원상담 정보</button>
</li> </li>
</ul> </ul>
<div class="tab-content"> <div class="tab-content">
<div class="tab-pane fade show active" id="crdnPayerInfo" role="tabpanel"> <div class="tab-pane fade show active" id="crdnPayerInfo" role="tabpanel"></div>
단속 정보 <div class="tab-pane fade" id="opnnSbmsnInfo" role="tabpanel">단속 정보</div>
</div> <div class="tab-pane fade" id="sndngInfo" role="tabpanel">의견제출 정보</div>
<div class="tab-pane fade" id="opnnSbmsnInfo" role="tabpanel"> <div class="tab-pane fade" id="prcsDtlInfo" role="tabpanel">발송반송 정보</div>
의견제출 정보 <div class="tab-pane fade" id="levyNpmntInfo" role="tabpanel">부과체납 정보</div>
</div> <div class="tab-pane fade" id="rcvmtInfo" role="tabpanel">수납 정보</div>
<div class="tab-pane fade" id="sndngInfo" role="tabpanel"> <div class="tab-pane fade" id="cvlcptDscsnInfo" role="tabpanel">민원상담 정보</div>
발송 정보
</div>
<div class="tab-pane fade" id="prcsDtlInfo" role="tabpanel">
처리상세 정보
</div>
<div class="tab-pane fade" id="levyAfterInfo" role="tabpanel">
부과이후 정보
</div>
<div class="tab-pane fade" id="cvlcptDscsnInfo" role="tabpanel">
민원상담 정보
</div>
</div> </div>
</div> </div>
</div> <!-- <div class="wrapper-list"> --> </div> <!-- <div class="wrapper-list"> -->
</div> <!-- <div class="card"> --> </div> <!-- <div class="card"> -->
@ -130,29 +122,18 @@
/************************************************************************** /**************************************************************************
* *
**************************************************************************/ **************************************************************************/
// 저장 callback
${pageName}Control.onSave = (resp) => {
if (resp.saved) {
}
}
// 저장
${pageName}Control.save = (info) => {
if (!info) return;
}
/************************************************************************** /**************************************************************************
* 초기 셋팅 * 초기 셋팅
**************************************************************************/ **************************************************************************/
// 검색조건 초기값 셋팅 // 검색조건 초기값 셋팅
function initForm${pageName}() { initForm${pageName} = () => {
} }
// 이벤트 설정 // 이벤트 설정
function setEvent${pageName}() { setEvent${pageName} = () => {
} }
@ -160,7 +141,7 @@
* function * function
**************************************************************************/ **************************************************************************/
// 단속 정보 // 단속 정보
function fnBtnCrdnPayerInfo${pageName}() { fnBtnCrdnPayerInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID"); let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 단속 ID 가 없다면.. return // 단속 ID 가 없다면.. return
@ -183,7 +164,7 @@
} }
// 의견제출 정보 // 의견제출 정보
function fnBtnOpnnSbmsnInfo${pageName}() { fnBtnOpnnSbmsnInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID"); let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 단속 ID 가 없다면.. return // 단속 ID 가 없다면.. return
@ -205,7 +186,7 @@
}); });
} }
// 발송 정보 // 발송 반송 정보
fnBtnSndngInfo${pageName} = () => { fnBtnSndngInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID"); let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
@ -228,6 +209,29 @@
}); });
} }
// 처리 상세 정보
fnBtnPrcsDtlInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
return;
}
let params = {
callPurpose : "view"
, crdnId : crdnId
};
ajax.get({
url : wctx.url("/sprt/sprt02/050/info.do")
, data : params || {}
, success : resp => {
$("#prcsDtlInfo").html(resp);
}
});
}
/************************************************************************** /**************************************************************************
* script 진입 * script 진입
**************************************************************************/ **************************************************************************/

@ -226,7 +226,7 @@
<!-- 납부자 주소 --><!-- 납부자 우편번호 --> <!-- 납부자 주소 --><!-- 납부자 우편번호 -->
<div class="col-md-12"> <div class="col-md-12">
<label for="addr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">주소</label> <label for="addr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">주소</label>
<input type="text" class="form-control w-80" id="addr--${pageName}" name="addr" data-map="addr" readonly /> <input type="text" class="form-control w-80" id="addr--${pageName}" name="addr" data-map="ADDR" readonly />
<input type="text" class="form-control w-px-75" id="zip--${pageName}" name="zip" data-map="ZIP" readonly /> <input type="text" class="form-control w-px-75" id="zip--${pageName}" name="zip" data-map="ZIP" readonly />
</div> </div>
<!-- 납부자 상세주소 --> <!-- 납부자 상세주소 -->
@ -319,8 +319,7 @@
/************************************************************************** /**************************************************************************
* *
**************************************************************************/ **************************************************************************/
fnBtnOpenCvlcptOrgnl = (params) => { openCvlcptOrgnl${pageName} = (params) => {
let taskSeCd = ${pageName}Control.dataset.getValue("TASK_SE_CD"); let taskSeCd = ${pageName}Control.dataset.getValue("TASK_SE_CD");
let dialogId = "cvlcptOrgnlDialog--${pageName}"; let dialogId = "cvlcptOrgnlDialog--${pageName}";
@ -342,12 +341,12 @@
* 초기 셋팅 * 초기 셋팅
**************************************************************************/ **************************************************************************/
// 검색조건 초기값 셋팅 // 검색조건 초기값 셋팅
function initForm${pageName}() { initForm${pageName} = () => {
// //
} }
// 이벤트 설정 // 이벤트 설정
function setEvent${pageName}() { setEvent${pageName} = () => {
// //
} }
@ -355,7 +354,7 @@
* function * function
**************************************************************************/ **************************************************************************/
// 민원 원본 보기 // 민원 원본 보기
function fnBtnOpenCvlcptOrgnl${pageName}() { fnBtnOpenCvlcptOrgnl${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID"); let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 단속 ID 가 없다면.. return // 단속 ID 가 없다면.. return
@ -367,51 +366,51 @@
crdnId : crdnId crdnId : crdnId
}; };
fnBtnOpenCvlcptOrgnl(params); openCvlcptOrgnl${pageName}(params);
} }
// 민원 답변 보기 // 민원 답변 보기
function fnBtnOpenAnswerPreview${pageName}() { fnBtnOpenAnswerPreview${pageName} = () => {
console.log("민원 답변 보기"); console.log("민원 답변 보기");
} }
// 단속정보 수정 // 단속정보 수정
function fnBtnCrdnUpdate${pageName}() { fnBtnCrdnUpdate${pageName} = () => {
console.log("단속정보 수정"); console.log("단속정보 수정");
} }
// 부과취소 재등록 // 부과취소 재등록
function btnCrdnReReg${pageName}() { btnCrdnReReg${pageName} = () => {
console.log("부과취소 재등록"); console.log("부과취소 재등록");
} }
// 자료 삭제 // 자료 삭제
function fnBtnCrdnRemove${pageName}() { fnBtnCrdnRemove${pageName} = () => {
console.log("자료 삭제"); console.log("자료 삭제");
} }
// 수기 수납 등록 // 수기 수납 등록
function fnBtnRcvmtCreate${pageName}() { fnBtnRcvmtCreate${pageName} = () => {
console.log("수기 수납 등록"); console.log("수기 수납 등록");
} }
// 수기 수납 삭제 // 수기 수납 삭제
function fnBtnRcvmtRemove${pageName}() { fnBtnRcvmtRemove${pageName} = () => {
console.log("수기 수납 삭제"); console.log("수기 수납 삭제");
} }
// 고지서 출력 // 고지서 출력
function fnBtnNoticeOtpt${pageName}() { fnBtnNoticeOtpt${pageName} = () => {
console.log("고지서 출력"); console.log("고지서 출력");
} }
// 단속 상태 변경 // 단속 상태 변경
function fnBtnCrdnSttsUpdate${pageName}() { fnBtnCrdnSttsUpdate${pageName} = () => {
console.log("단속 상태 변경"); console.log("단속 상태 변경");
} }
// 우편번호 검색 // 우편번호 검색
function fnBtnZip${pageName}() { fnBtnZip${pageName} = () => {
} }

@ -227,9 +227,7 @@
, title : dialogTitle , title : dialogTitle
, content : resp , content : resp
, size : "xl" , size : "xl"
, onClose : () => { // callback , onClose : () => { fnDataRefreshInfo(); } // callback 자료 조회
fnDataRefreshInfo(); // 자료 조회
}
}); });
} }
}); });
@ -241,6 +239,7 @@
fnDataRefreshInfo(); // 자료 조회 fnDataRefreshInfo(); // 자료 조회
} }
} }
// 삭제 // 삭제
${pageName}Control.removeOpnnSbmsn = (params) => { ${pageName}Control.removeOpnnSbmsn = (params) => {
ajax.post({ ajax.post({
@ -319,7 +318,6 @@
${pageName}Control.getOpnnSbmsnInfo(params); ${pageName}Control.getOpnnSbmsnInfo(params);
} }
// 의견제출 수정 // 의견제출 수정
fnBtnOpnnSbmsnUpdate${pageName} = () => { fnBtnOpnnSbmsnUpdate${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID") let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID")

@ -82,20 +82,20 @@
<td class="text-center" onclick="{onclick}">{RG_NO}</td> <td class="text-center" onclick="{onclick}">{RG_NO}</td>
<td class="text-center" onclick="{onclick}">{SNDNG_SE_NM}</td> <td class="text-center" onclick="{onclick}">{SNDNG_SE_NM}</td>
<td class="text-center" onclick="{onclick}">{SNDNG_YMD}</td> <td class="text-center" onclick="{onclick}">{SNDNG_YMD}</td>
<td class="text-center" onclick="{onclick}">{DUDT_YMD}</td> <td class="text-center" onclick="{onclick}">{DUDT_YMD}</td>
<td class="text-start" onclick="{onclick}">{RTPYR_NM}</td> <td class="text-start" onclick="{onclick}">{RTPYR_NM}</td>
<td class="text-start" onclick="{onclick}">{RTPYR_ADDR}</td> <td class="text-start" onclick="{onclick}">{RTPYR_ADDR}</td>
<td class="text-start" onclick="{onclick}">{RTPYR_DTL_ADDR}</td> <td class="text-start" onclick="{onclick}">{RTPYR_DTL_ADDR}</td>
<td class="text-center" onclick="{onclick}">{RTPYR_ZIP}</td> <td class="text-center" onclick="{onclick}">{RTPYR_ZIP}</td>
<td class="text-center" onclick="{onclick}">{FYR}</td> <td class="text-center" onclick="{onclick}">{FYR}</td>
<td class="text-center" onclick="{onclick}">{LEVY_NO}</td> <td class="text-center" onclick="{onclick}">{LEVY_NO}</td>
<td class="text-end" onclick="{onclick}">{LEVY_SUM_AMT}</td> <td class="text-end" onclick="{onclick}">{LEVY_SUM_AMT}</td>
<td class="text-center" onclick="{onclick}">{DLVR_YMD}</td> <td class="text-center" onclick="{onclick}">{DLVR_YMD}</td>
<td class="text-center" onclick="{onclick}">{DLVR_TM}</td> <td class="text-center" onclick="{onclick}">{DLVR_TM}</td>
<td class="text-start" onclick="{onclick}">{UNDLVR_RSN_NM}</td> <td class="text-start" onclick="{onclick}">{UNDLVR_RSN_NM}</td>
<td class="text-start" onclick="{onclick}">{RCPN_NM}</td> <td class="text-start" onclick="{onclick}">{RCPN_NM}</td>
<td class="text-center" onclick="{onclick}">{RCPN_REL_NM}</td> <td class="text-center" onclick="{onclick}">{RCPN_REL_NM}</td>
<td class="text-start" onclick="{onclick}">{SNDNG_DTL_STTS_NM}</td> <td class="text-start" onclick="{onclick}">{SNDNG_DTL_STTS_NM}</td>
<td class="text-center" onclick="{onclick}">{REG_DT}</td> <td class="text-center" onclick="{onclick}">{REG_DT}</td>
<td class="text-center" onclick="{onclick}">{RGTR_NM}</td> <td class="text-center" onclick="{onclick}">{RGTR_NM}</td>
<td class="text-center" onclick="{onclick}">{MDFCN_DT}</td> <td class="text-center" onclick="{onclick}">{MDFCN_DT}</td>
@ -104,7 +104,7 @@
</template> </template>
<template id="${infoPrefix}NotFound--${pageName}"> <template id="${infoPrefix}NotFound--${pageName}">
<tr class="odd"> <tr class="odd">
<td valign="top" colspan="19" class="dataTables_empty text-center">${prefixName} 정보를 찾지 못했습니다.</td> <td valign="top" colspan="22" class="dataTables_empty text-center">${prefixName} 정보를 찾지 못했습니다.</td>
</tr> </tr>
</template> </template>
</table> </table>
@ -117,7 +117,7 @@
</div> <!-- <div class="col-xl-9 mx-1"> --> </div> <!-- <div class="col-xl-9 mx-1"> -->
<!-- 화면 오른쪽 --> <!-- 화면 오른쪽 -->
<div class="col-xl-3 mx-0"> <div class="col-xl-3 mx-1">
<!-- 가상계좌 정보 --> <!-- 가상계좌 정보 -->
<div class="card"> <div class="card">
<!-- 업무 버튼 --> <!-- 업무 버튼 -->
@ -127,9 +127,14 @@
<div class="row g-1"> <div class="row g-1">
<!-- 가상계좌 --> <!-- 가상계좌 -->
<div class="col-md-12"> <div class="col-md-12">
<textarea type="text" class="form-control w-100" id="vrActno--${pageName}" name="vrActno" cols="100%" rows="18" readonly> <textarea type="text" class="form-control w-100" id="vrActno--${pageName}" name="vrActno" cols="100%" rows="16" readonly>
</textarea> </textarea>
</div> </div>
<!-- 전자납부번호 -->
<div class="col-md-12">
<label for="epayno--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">전자납부번호</label>
<input type="text" class="form-control w-65" id="epayno--${pageName}" name="epayno" data-map="EPAYNO" readonly />
</div>
</div> </div>
</div> <!-- 가상계좌 정보 <div class="card"> --> </div> <!-- 가상계좌 정보 <div class="card"> -->
</div> <!-- <div class="col-xl-3 mx-0"> --> </div> <!-- <div class="col-xl-3 mx-0"> -->
@ -201,6 +206,9 @@
if (item.data.BANK_NM_11 != null) vrActno += item.data.BANK_NM_11 + " " + item.data.VR_ACTNO_11; // 가상 계좌번호11 if (item.data.BANK_NM_11 != null) vrActno += item.data.BANK_NM_11 + " " + item.data.VR_ACTNO_11; // 가상 계좌번호11
$("#vrActno--${pageName}").val(vrActno); $("#vrActno--${pageName}").val(vrActno);
// 전자납부번호
$("#epayno--${pageName}").val(item.data.EPAYNO);
}; };
/************************************************************************** /**************************************************************************

@ -7,164 +7,222 @@
<form id="frmEdit--${pageName}" name="frmEdit"> <form id="frmEdit--${pageName}" name="frmEdit">
<!-- hidden --> <!-- hidden -->
<input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" /> <input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" />
<input type="hidden" id="opnnId--${pageName}" name="opnnId" data-map="OPNN_ID" /> <input type="hidden" id="rductId--${pageName}" name="rductId" data-map="RDUCT_ID" />
<input type="hidden" id="levyExclId--${pageName}" name="levyExclId" data-map="LEVY_EXCL_ID" />
<div class="d-flex flex-row justify-content-evenly"> <div class="d-flex flex-row justify-content-evenly">
<!-- 화면 왼쪽 --> <!-- 화면 왼쪽 -->
<div class="col-xl-9 mx-1"> <div class="col-xl-6 mx-1">
<!-- 의견제출 정보 --> <!-- 감경 정보 -->
<div class="card"> <div class="card">
<!-- 업무 버튼 --> <!-- 업무 버튼 -->
<div class="container-page-btn"> <div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">의견제출 정보</label> <label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">감경 정보</label>
<!-- 버튼 우측 정렬 --> <!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right"> <span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnCreate--${pageName}" title="의견제출 등록" onclick="fnBtnOpnnSbmsnCreate${pageName}();"> <button type="button" class="btn btn-primary" id="btnRductCreate--${pageName}" title="감경 등록" onclick="fnBtnRductCreate${pageName}();">
의견제출 등록 감경 등록
</button> </button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnUpdate--${pageName}" title="의견제출 수정" onclick="fnBtnOpnnSbmsnUpdate${pageName}();"> <button type="button" class="btn btn-primary" id="btnRductUpdate--${pageName}" title="감경 수정" onclick="fnBtnRductUpdate${pageName}();">
의견제출 수정 감경 수정
</button> </button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnRemove--${pageName}" title="의견제출 삭제" onclick="fnBtnOpnnSbmsnRemove${pageName}();"> <button type="button" class="btn btn-primary" id="btnRductRemove--${pageName}" title="감경 삭제" onclick="fnBtnRductRemove${pageName}();">
의견제출 삭제 감경 삭제
</button>
<button type="button" class="btn btn-primary" id="btnDlbrtLtfrOtpt --${pageName}" title="심의의결서 출력" onclick="fnBtnDlbrtLtfrOtpt${pageName}();">
심의의결서 출력
</button> </button>
</span> <!-- <span class="container-window-btn-right"> --> </span> <!-- <span class="container-window-btn-right"> -->
</div> <!-- <div class="container-page-btn"> --> </div> <!-- <div class="container-page-btn"> -->
<div class="row g-1"> <div class="row g-1">
<!-- 접수 번호 --> <!-- 감경 일자 -->
<div class="col-md-4"> <div class="col-md-6">
<label for="rcptNo--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">접수 번호</label> <label for="rductYmd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감경 일자</label>
<input type="text" class="form-control w-30" id="rcptNo--${pageName}" name="rcptNo" data-map="RCPT_NO" readonly /> <input type="text" class="form-control w-30" id="rductYmd--${pageName}" name="rductYmd" data-map="RDUCT_YMD" readonly />
</div>
<!-- 접수 일자 -->
<div class="col-md-4">
<label for="rcptYmd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">접수 일자</label>
<input type="text" class="form-control w-30" id="rcptYmd--${pageName}" name="rcptYmd" data-map="RCPT_YMD" readonly />
</div>
<!-- 진술자 이름 -->
<div class="col-md-4">
<label for="sttrNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">성명</label>
<input type="text" class="form-control w-40" id="sttrNm--${pageName}" name="sttrNm" data-map="STTR_NM" readonly />
</div>
<!-- 진술자 생년월일 -->
<div class="col-md-4">
<label for="sttrBrdt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">생년월일</label>
<input type="text" class="form-control w-25" id="sttrBrdt--${pageName}" name="sttrBrdt" data-map="STTR_BRDT" placeholder="YY-MM-DD" readonly />
</div> </div>
<!-- 소유주 관계 구분 명 --> <!-- -->
<div class="col-md-4"> <div class="col-md-6">
<label for="ownrRelNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">소유주 관계 구분</label>
<input type="text" class="form-control w-40" id="ownrRelNm--${pageName}" name="ownrRelNm" data-map="OWNR_REL_NM" readonly />
</div>
<!-- 진술자 주소 --><!-- 진술자 우편번호 -->
<div class="col-md-12">
<label for="sttrAddr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">주소</label>
<input type="text" class="form-control w-80" id="sttrAddr--${pageName}" name="sttrAddr" data-map="STTR_ADDR" readonly />
<input type="text" class="form-control w-px-75" id="sttrZip--${pageName}" name="sttrZip" data-map="STTR_ZIP" readonly />
</div>
<!-- 진술자 상세주소 -->
<div class="col-md-12">
<label for="sttrDaddr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">상세 주소</label>
<input type="text" class="form-control w-87" id="sttrDaddr--${pageName}" name="sttrDaddr" data-map="STTR_DADDR" readonly />
</div> </div>
<!-- 진술자 연락처 --> <!-- 감경 사유 명 -->
<div class="col-md-4"> <div class="col-md-6">
<label for="sttrCttpc--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">연락처</label> <label for="rductRsnNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감경 사유</label>
<input type="text" class="form-control w-35" id="sttrCttpc--${pageName}" name="sttrCttpc" data-map="STTR_CTTPC" readonly /> <input type="text" class="form-control w-50" id="rductRsnNm--${pageName}" name="rductRsnNm" data-map="RDUCT_RSN_NM" readonly />
</div> </div>
<!-- 진술자 이메일 --> <!-- 감경 금액 -->
<div class="col-md-8"> <div class="col-md-6">
<label for="sttrEml--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">이메일</label> <label for="sttrDaddr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감경 금액</label>
<input type="text" class="form-control w-35" id="sttrEml--${pageName}" name="sttrEml" data-map="STTR_EML" readonly /> <input type="text" class="form-control w-30" id="sttrDaddr--${pageName}" name="sttrDaddr" data-map="STTR_DADDR" readonly />
</div> </div>
<!-- 의견 제출 내용 --> <!-- 기타 내용 -->
<div class="col-md-12"> <div class="col-md-12">
<label for="opnnSbmsnCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 내용</label> <label for="etcCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">기타 내용</label>
<textarea type="text" class="form-control w-87" id="opnnSbmsnCn--${pageName}" name="opnnSbmsnCn" data-map="OPNN_SBMSN_CN" rows="4" data-maxlengthb="4000" readonly> <textarea type="text" class="form-control w-80" id="etcCn--${pageName}" name="etcCn" data-map="ETC_CN" rows="3" data-maxlengthb="1000" readonly>
</textarea> </textarea>
</div> </div>
<!-- 의견 제출 구분 명 --> <!-- 등록 일시 -->
<div class="col-md-4"> <div class="col-md-6">
<label for="opnnSbmsnSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견 제출 구분</label> <label for="regDt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">등록 일시</label>
<input type="text" class="form-control w-40" id="opnnSbmsnSeNm--${pageName}" name="opnnSbmsnSeNm" data-map="OPNN_SBMSN_SE_NM" readonly /> <input type="text" class="form-control w-40" id="regDt--${pageName}" name="regDt" data-map="REG_DT" readonly />
</div> </div>
<!-- 의견 제출 요지 --> <!-- 등록자 -->
<div class="col-md-8"> <div class="col-md-6">
<label for="opnnSbmsnGist--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 요지</label> <label for="rgtrNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">등록자</label>
<input type="text" class="form-control w-80" id="opnnSbmsnGist--${pageName}" name="opnnSbmsnGist" data-map="OPNN_SBMSN_GIST" data-maxlengthb="300" readonly /> <input type="text" class="form-control w-40" id="rgtrNm--${pageName}" name="rgtrNm" data-map="RGTR_NM" readonly />
</div> </div>
<!-- 담당자 검토 의견 -->
<div class="col-md-12">
<label for="picRvwOpnn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">검토 의견</label>
<textarea class="form-control w-87" id="picRvwOpnn--${pageName}" name="picRvwOpnn" data-map="PIC_RVW_OPNN" rows="3" data-maxlengthb="1000" readonly>
</textarea>
</div>
<!-- 첨부 파일 테이블 -->
<div class="table-responsive">
<table class="table table-bordered table-hover table-striped" id="fileList--${pageName}">
<thead>
<th class="text-center" style="width: 24px">NO.</th>
<th class="text-center" style="width: 200px">파일 번호</th>
<th class="text-center">파일 이름</th>
<th class="text-center" style="width: 200px">파일 크기</th>
<th class="text-center" style="width: 120px">다운로드</th>
</thead>
<tbody></tbody>
</table>
</div> <!-- 첨부 파일 테이블 <div class="table-responsive"> -->
</div> <!-- <div class="row g-1"> --> </div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> --> </div> <!-- <div class="card"> -->
</div> <!-- <div class="col-xl-9 mx-1"> --> </div> <!-- <div class="col-xl-6 mx-1"> -->
<!-- 화면 오른쪽 --> <!-- 화면 오른쪽 -->
<div class="col-xl-3 mx-0"> <div class="col-xl-6 mx-1">
<!-- 심의 정보 --> <!-- 부과제외 정보 -->
<div class="card"> <div class="card">
<!-- 업무 버튼 --> <!-- 업무 버튼 -->
<div class="container-page-btn"> <div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">심의 정보</label> <label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">부과제외 정보</label>
<!-- 버튼 우측 정렬 --> <!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right"> <span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnDlbrt--${pageName}" title="의견제출 심의" onclick="fnBtnOpnnSbmsnDlbrt${pageName}();"> <button type="button" class="btn btn-primary" id="btnLevyExclCreate--${pageName}" title="부과제외 등록" onclick="fnBtnLevyExclCreate${pageName}();">
의견제출 심의 부과제외 등록
</button>
<button type="button" class="btn btn-primary" id="btnLevyExclUpdate--${pageName}" title="부과제외 수정" onclick="fnBtnLevyExclUpdate${pageName}();">
부과제외 수정
</button>
<button type="button" class="btn btn-primary" id="btnLevyExclRemove--${pageName}" title="부과제외 삭제" onclick="fnBtnLevyExclRemove${pageName}();">
부과제외 삭제
</button> </button>
</span> <!-- <span class="container-window-btn-right"> --> </span> <!-- <span class="container-window-btn-right"> -->
</div> <!-- <div class="container-page-btn"> --> </div> <!-- <div class="container-page-btn"> -->
<div class="row g-1"> <div class="row g-1">
<!-- 문서 번호 --> <!-- 부과제외 일자 -->
<div class="col-md-12"> <div class="col-md-6">
<label for="docNo--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">문서 번호</label> <label for="rductYmd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">부과제외 일자</label>
<input type="text" class="form-control w-50" id="docNo--${pageName}" name="docNo" data-map="DOC_NO" readonly /> <input type="text" class="form-control w-30" id="rductYmd--${pageName}" name="rductYmd" data-map="RDUCT_YMD" readonly />
</div> </div>
<!-- 답변일시 --> <!-- -->
<div class="col-md-12"> <div class="col-md-6">
<label for="ansYmdTm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">처리 일시</label>
<input type="text" class="form-control w-50" id="ansYmdTm--${pageName}" name="ansYmdTm" data-map="ANS_YMD_TM" readonly />
</div> </div>
<!-- 의견 제출 상태 코드 --> <!-- 부과제외 구분 명 -->
<div class="col-md-12"> <div class="col-md-6">
<label for="opnnSbmsnSttsNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">처리 결과</label> <label for="levyExclSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">부과제외 구분</label>
<input type="text" class="form-control w-50" id="opnnSbmsnSttsNm--${pageName}" name="opnnSbmsnSttsNm" data-map="OPNN_SBMSN_STTS_NM" readonly /> <input type="text" class="form-control w-30" id="levyExclSeNm--${pageName}" name="levyExclSeNm" data-map="LEVY_EXCL_SE_NM" readonly />
</div> </div>
<!-- 답변 내용 --> <!-- 부과제외 사유 명 -->
<div class="col-md-12"> <div class="col-md-6">
<label for="ansCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">처리 내용</label> <label for="levyExclRsnNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">부과제외 사유</label>
<input type="text" class="form-control w-60" id="levyExclRsnNm--${pageName}" name="levyExclRsnNm" data-map="LEVY_EXCL_RSN_NM" readonly />
</div> </div>
<!-- 기타 내용 -->
<div class="col-md-12"> <div class="col-md-12">
<textarea type="text" class="form-control w-100" id="ansCn--${pageName}" name="ansCn" data-map="ANS_CN" rows="14" data-maxlengthb="4000"> <label for="etcCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">기타 내용</label>
<textarea type="text" class="form-control w-80" id="etcCn--${pageName}" name="etcCn" data-map="ETC_CN" rows="3" data-maxlengthb="1000" readonly>
</textarea> </textarea>
</div> </div>
</div> <!-- 등록 일시 -->
</div> <!-- 의견제출 심의 정보 <div class="card" title="심의 정보"> --> <div class="col-md-6">
</div> <!-- <div class="col-xl-3 mx-0"> --> <label for="regDt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">등록 일시</label>
<input type="text" class="form-control w-40" id="regDt--${pageName}" name="regDt" data-map="REG_DT" readonly />
</div>
<!-- 등록자 -->
<div class="col-md-6">
<label for="rgtrNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">등록자</label>
<input type="text" class="form-control w-40" id="rgtrNm--${pageName}" name="rgtrNm" data-map="RGTR_NM" readonly />
</div>
</div> <!-- <div class="row g-1"> -->
</div> <!-- 부과제외 정보 <div class="card"> -->
</div> <!-- <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> --> </div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</form> </form>
</p>
<div class="d-flex flex-row justify-content-evenly">
<!-- 화면 왼쪽 -->
<div class="col-xl-6 mx-1">
<!-- 처리 상태 이력 -->
<div class="card">
<!-- 업무 버튼 -->
<div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">처리 상태 이력</label>
</div>
<div class="row g-1">
<!-- DataTables(그리드) -->
<div class="card-datatable text-nowrap">
<div id="DataTables_Table_0_wrapperCrdnSttsHstry--${pageName}" class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="table-responsiveCrdnSttsHstry--${pageName}" class="table-responsive" style="overflow-x:scroll; height:340px; overflow-y:scroll;" >
<table class="dataTable datatables-ajax table table-bordered no-footer" id="DataTables_Table_0CrdnSttsHstry--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead>
<tr id="theadTrCrdnSttsHstry--${pageName}">
<th>등록일시</th>
<th>등록사용자</th>
<th>단속상태</th>
<th>기타내용</th>
</tr>
</thead>
<tbody id="tbodyCrdnSttsHstry--${pageName}">
</tbody>
<template id="${infoPrefix}CrdnSttsHstryRow--${pageName}">
<tr data-key="{STTS_HSTRY_ID}">
<td class="text-center" onclick="{onclick}">{REG_DT}</td>
<td class="text-center" onclick="{onclick}">{RGTR_NM}</td>
<td class="text-center" onclick="{onclick}">{CRDN_STTS_NM}</td>
<td class="text-center" onclick="{onclick}">{ETC_CN}</td>
</tr>
</template>
<template id="${infoPrefix}CrdnSttsHstryNotFound--${pageName}">
<tr class="odd">
<td valign="top" colspan="6" class="dataTables_empty text-center">처리상태 이력 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table>
</div>
</div>
</div> <!-- / DataTables(그리드) -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> -->
</div> <!-- 화면 왼쪽 <div class="col-xl-6 mx-1"> -->
<!-- 화면 오른쪽 -->
<div class="col-xl-6 mx-1">
<div class="card">
<!-- 업무 버튼 -->
<div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">주소 변동 이력</label>
</div>
<div class="row g-1">
<!-- DataTables(그리드) -->
<div class="card-datatable text-nowrap">
<div id="DataTables_Table_0_wrapperCrdnPayerHstry--${pageName}" class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="table-responsiveCrdnPayerHstry--${pageName}" class="table-responsive" style="overflow-x:scroll; height:340px; overflow-y:scroll;" >
<table class="dataTable datatables-ajax table table-bordered no-footer" id="DataTables_Table_0CrdnPayerHstry--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead>
<tr id="theadTrCrdnPayerHstry--${pageName}">
<th>등록일시</th>
<th>등록사용자</th>
<th>납부자명</th>
<th>우편번호</th>
<th>전체주소</th>
</tr>
</thead>
<tbody id="tbodyCrdnPayerHstry--${pageName}">
</tbody>
<template id="${infoPrefix}CrdnPayerHstryRow--${pageName}">
<tr data-key="{CHG_HSTRY_ID}">
<td class="text-center" onclick="{onclick}">{REG_DT}</td>
<td class="text-center" onclick="{onclick}">{RGTR_NM}</td>
<td class="text-center" onclick="{onclick}">{RTPYR_NM}</td>
<td class="text-center" onclick="{onclick}">{ZIP}</td>
<td class="text-center" onclick="{onclick}">{WHOL_ADDR}</td>
</tr>
</template>
<template id="${infoPrefix}CrdnPayerHstryNotFound--${pageName}">
<tr class="odd">
<td valign="top" colspan="5" class="dataTables_empty text-center">주소변동 이력 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table>
</div>
</div>
</div> <!-- / DataTables(그리드) -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> -->
</div> <!-- 화면 오른쪽 <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</div> </div>
<script> <script>
@ -175,243 +233,131 @@
var ${pageName}PrefixUrl = "/sprt/sprt02"; var ${pageName}PrefixUrl = "/sprt/sprt02";
// FormFields // FormFields
var ${pageName}Fields = new FormFields("#frmEdit--${pageName}"); var ${pageName}Fields = new FormFields("#frmEdit--${pageName}");
// 파일 리스트
var $fileListArr = new Array();
/************************************************************************** /**************************************************************************
* DatasetControl * DatasetControl
**************************************************************************/ **************************************************************************/
var ${pageName}Control = new DatasetControl({ var ${pageName}CrdnSttsHstryDataset = new Dataset({
prefix : "totalInfoOpnnSbmsn" prefix : "crdnSttsHstry"
, prefixName : "의견제출 정보" , prefixName : "단속상태이력"
, keymapper : info => info ? info.CRDN_ID : "" , keymapper : info => info ? info.STTS_HSTRY_ID : ""
, dataGetter : obj => obj.opnnSbmsnInfo , dataGetter : obj => obj.crdnSttsHstryList
, appendData : true
, formats : { , formats : {
RCPT_YMD : dateFormat REG_DT : datetimeFormat
, ANS_YMD_TM : datetimeFormat
} }
}); , onDatasetChange : obj => {
crdnSttsHstryRenderList${pageName}();
}
, onCurrentChange : item => {
if (!item) return;
${pageName}Control.onCurrentChange = item => { let key = item.data.STTS_HSTRY_ID;
// Dataset 셋팅
${pageName}Fields.set(item);
if (item.data.OPNN_ID != null) { $("#tbodyCrdnSttsHstry--${pageName}").setCurrentRow(key);
// 첨부파일 조회
fnSearchFileList${pageName}(item.data.OPNN_ID);
} }
} });
/************************************************************************** var ${pageName}CrdnPayerHstryDataset = new Dataset({
* prefix : "crdnPayerHstry"
**************************************************************************/ , prefixName : "단속납부자이력"
// 의견제출 dialog , keymapper : info => info ? info.CHG_HSTRY_ID : ""
${pageName}Control.getOpnnSbmsnInfo = (params) => { , dataGetter : obj => obj.crdnPayerHstryList
let dialogTitle = ""; , appendData : true
if (params.callPurpose == "create") { , formats : {
dialogTitle = "의견제출 등록"; REG_DT : datetimeFormat
} else if (params.callPurpose == "update") {
dialogTitle = "의견제출 수정";
} else {
return;
} }
, onDatasetChange : obj => {
crdnPayerHstryRenderList${pageName}();
}
, onCurrentChange : item => {
if (!item) return;
ajax.get({ let key = item.data.CHG_HSTRY_ID;
url : wctx.url("/excl/excl02/020/info.do")
, data : params
, success : resp => {
resp = resp.replace(/infoPrefix/g, this.prefix)
.replace(/prefixName/g, this.prefixName)
dialog.open({
id : "opnnInfoDialog"
, title : dialogTitle
, content : resp
, size : "xl"
, onClose : () => { fnDataRefreshInfo(); } // callback
});
}
});
}
// 삭제 후 재조회 $("#tbodyCrdnPayerHstry--${pageName}").setCurrentRow(key);
${pageName}Control.onRemoveOpnnSbmsn = (resp) => {
if (resp.saved) {
fnDataRefreshInfo();
} }
} });
// 삭제
${pageName}Control.removeOpnnSbmsn = (opnnId) => {
ajax.post({
url : wctx.url("/excl/excl02/010/remove.do")
, data : {opnnId : opnnId}
, success : resp => ${pageName}Control.onRemoveOpnnSbmsn(resp)
});
}
// 심의 dialog /**************************************************************************
${pageName}Control.getOpnnSbmsnDlbrtInfo = (params) => { *
ajax.get({ **************************************************************************/
url : wctx.url("/excl/excl02/030/info.do") // 단속 상태 이력 DataTables에 click 이벤트
, data : params crdnSttsHstryRenderList${pageName} = () => {
, success : resp => { let ${infoPrefix}List = ${pageName}CrdnSttsHstryDataset;
resp = resp.replace(/infoPrefix/g, this.prefix) let empty = ${infoPrefix}List.empty;
.replace(/prefixName/g, this.prefixName)
dialog.open({ let trs = empty ?
id : "opnnInfoDialog" [document.getElementById("${infoPrefix}CrdnSttsHstryNotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
, title : "의견제출 답변 처리" ${infoPrefix}List.inStrings(
, content : resp document.getElementById("${infoPrefix}CrdnSttsHstryRow--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
, size : "lg" (str, dataItem) => str
}); .replace(/{onclick}/gi, "${pageName}CrdnSttsHstryDataset.setCurrent('" + dataItem.getValue("STTS_HSTRY_ID") + "');")
} );
});
$("#tbodyCrdnSttsHstry--${pageName}").html(trs.join());
} }
// 재조회 // 단속 납부자 이력 DataTables에 click 이벤트
function fnDataRefreshInfo() { crdnPayerHstryRenderList${pageName} = () => {
let crdnId = $("#crdnId--${pageName}").val(); let ${infoPrefix}List = ${pageName}CrdnPayerHstryDataset;
let empty = ${infoPrefix}List.empty;
ajax.get({
url : wctx.url("/sprt/sprt02/030/info.do") let trs = empty ?
, headers: { Accept: "application/json; charset=utf-8" } // json [document.getElementById("${infoPrefix}CrdnPayerHstryNotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
, data : { crdnId : crdnId } ${infoPrefix}List.inStrings(
, success : resp => { document.getElementById("${infoPrefix}CrdnPayerHstryRow--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
// Dataset 셋팅 (str, dataItem) => str
${pageName}Control.setData([resp.opnnSbmsnInfo]); .replace(/{onclick}/gi, "${pageName}CrdnPayerHstryDataset.setCurrent('" + dataItem.getValue("CHG_HSTRY_ID") + "');")
} );
});
$("#tbodyCrdnPayerHstry--${pageName}").html(trs.join());
} }
/************************************************************************** /**************************************************************************
* 초기 셋팅 * 초기 셋팅
**************************************************************************/ **************************************************************************/
// 검색조건 초기값 셋팅 // 검색조건 초기값 셋팅
function initForm${pageName}() { initForm${pageName} = () => {
} }
// 이벤트 설정 // 이벤트 설정
function setEvent${pageName}() { setEvent${pageName} = () => {
} }
/************************************************************************** /**************************************************************************
* function * function
**************************************************************************/ **************************************************************************/
// 의견제출 등록 // 감경 등록
function fnBtnOpnnSbmsnCreate${pageName}() { fnBtnRductCreate${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 단속 ID 가 없다면.. return
if (crdnId == undefined || crdnId == "") {
return;
}
let params = {
callPurpose : "create"
, crdnId : crdnId
};
${pageName}Control.getOpnnSbmsnInfo(params);
} }
// 감경 수정
fnBtnRductUpdate${pageName} = () => {
// 의견제출 수정
function fnBtnOpnnSbmsnUpdate${pageName}() {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID")
// 의견 ID 가 없다면.. return
if (opnnId == undefined || opnnId == "") {
return;
}
let params = {
callPurpose : "update"
, opnnId : opnnId
};
${pageName}Control.getOpnnSbmsnInfo(params);
} }
// 의견제출 삭제 // 감경 삭제
function fnBtnOpnnSbmsnRemove${pageName}() { fnBtnRductRemove${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
// 의견 ID 가 없다면.. return
if (opnnId == undefined || opnnId == "") {
return;
}
dialog.alert({
content : "선택한 ${prefixName} 정보를 삭제하시겠습니까?"
, onOK : () => {
${pageName}Control.removeOpnnSbmsn(opnnId);
}
});
} }
// 의견제출 심의 // 부과제외 등록
function fnBtnOpnnSbmsnDlbrt${pageName}() { fnBtnLevyExclCreate${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
// 의견제출 ID 가 없다면.. return
if (opnnId == undefined || opnnId == "") {
return;
}
let params = {
callPurpose : "update"
, opnnId : opnnId
};
${pageName}Control.getOpnnSbmsnDlbrtInfo(params);
} }
// 심의의결서 출력 // 부과제외 수정
function fnBtnDlbrtLtfrOtpt${pageName}() { fnBtnLevyExclUpdate${pageName} = () => {
} }
// 첨부파일 조회 // 부과제외 삭제
function fnSearchFileList${pageName}(opnnId) { fnBtnLevyExclRemove${pageName} = () => {
// 의견제출 등록일 경우에는 첨부파일을 조회하지 안는다..
if (opnnId == null || opnnId == "") {
return;
}
// 첨부파일 리스트
ajax.get({
url : "file/list.do"
, data : {
infoType : "110"
, infoKeys : opnnId
, fetchSize : 0
}
, success : resp => {
let fileNo = 0;
let fileList = resp.fileList;
fileList.forEach(function (item, index, array) {
fileNo = index + 1;
let innerHtml = "";
innerHtml += "<tr>";
innerHtml += "<td class='text-center'>" + fileNo + "</td>";
innerHtml += "<td class='text-center'>" + item.FILE_ID + "</td>";
innerHtml += "<td class='text-center'>" + item.FILE_NM + "</td>";
innerHtml += "<td class='text-center'>" + item.FILE_SIZE + " byte</td>";
innerHtml += "<td class='text-center'>" + "<button class='btn' onclick='fnBtnFileDownload${pageName}(" + item.FILE_ID + ");'><i class='bx bx-download me-1'></i></button>" + "</td>";
innerHtml += "</tr>";
$("#fileList--${pageName} > tbody:last").append(innerHtml);
});
}
});
}
// 첨부파일 다운로드
function fnBtnFileDownload${pageName}(fileID) {
top.location.href = "/file/download.do?fileID=" + fileID;
} }
/************************************************************************** /**************************************************************************
@ -425,8 +371,9 @@
initForm${pageName}(); initForm${pageName}();
// Dataset 셋팅 // Dataset 셋팅
${pageName}Control.setData([${opnnSbmsnInfo}]); ${pageName}CrdnSttsHstryDataset.setData(${crdnSttsHstryList});
${pageName}CrdnPayerHstryDataset.setData(${crdnPayerHstryList});
}); });
// #sourceURL=sprt02030-info.jsp // #sourceURL=sprt02050-info.jsp
</script> </script>

Loading…
Cancel
Save