diff --git a/src/main/java/cokr/xit/fims/excl/Excl01.java b/src/main/java/cokr/xit/fims/excl/Excl01.java index 3de766ea..2ff41d51 100644 --- a/src/main/java/cokr/xit/fims/excl/Excl01.java +++ b/src/main/java/cokr/xit/fims/excl/Excl01.java @@ -97,6 +97,11 @@ public class Excl01 extends cokr.xit.foundation.AbstractEntity { */ private java.lang.String delRsn; + /** + * 부과 제외 IDs + */ + private java.lang.String[] levyExclIDs; + /** * 부과 제외 ID을(를) 반환한다. * @return 부과 제외 ID @@ -354,4 +359,3 @@ public class Excl01 extends cokr.xit.foundation.AbstractEntity { } } - diff --git a/src/main/java/cokr/xit/fims/excl/Excl01Query.java b/src/main/java/cokr/xit/fims/excl/Excl01Query.java index 151f174e..4660dba7 100644 --- a/src/main/java/cokr/xit/fims/excl/Excl01Query.java +++ b/src/main/java/cokr/xit/fims/excl/Excl01Query.java @@ -16,6 +16,8 @@ public class Excl01Query extends QueryRequest { private static final long serialVersionUID = 1L; + // + private String callMethod; // 필수 조건 private String sggCd; // 시군구 코드 private String taskSeCd; // 업무 구분 코드 @@ -43,6 +45,16 @@ public class Excl01Query extends QueryRequest { private String crdnId; // 단속 ID private String levyExclSeCd; // 부과 제외 구분 코드 + public String getCallMethod() { + return ifEmpty(callMethod, () -> null); + } + + public T setCallMethod(String callMethod) { + this.callMethod = callMethod; + + return self(); + } + public String getSggCd() { return ifEmpty(sggCd, () -> null); } diff --git a/src/main/java/cokr/xit/fims/excl/dao/Excl01Mapper.java b/src/main/java/cokr/xit/fims/excl/dao/Excl01Mapper.java index 1e9b45cd..686406a6 100644 --- a/src/main/java/cokr/xit/fims/excl/dao/Excl01Mapper.java +++ b/src/main/java/cokr/xit/fims/excl/dao/Excl01Mapper.java @@ -29,12 +29,6 @@ public interface Excl01Mapper extends AbstractMapper { */ List selectLevyExclList(Excl01Query req); - /**지정한 조건에 따라 부과제외 대장 객체들을 반환한다. - * @param req 부과제외 대장 조회 조건 - * @return 부과제외 대장 객체 목록 - */ - List selectLevyExcls(Excl01Query req); - /**지정한 ID의 부과제외 정보를 반환한다. * @param levyExclId 부과제외 ID * @return 부과제외 정보 @@ -47,45 +41,29 @@ public interface Excl01Mapper extends AbstractMapper { return levyExclInfo; } - /**부과제외 대장 정보를 등록한다. - * @param params 파라미터 - *
  • "levyExcl" - 부과제외 대장
  • - *
  • "currentUser" - 현재 접속한 사용자
  • - *
- * @return 저장된 정보수 + /**지정한 ID의 단속 정보를 반환한다. + * @param crdnId 단속 ID + * @return 부과제외 정보 */ - int insertLevyExcl(Map params); + DataObject selectCrdn(Excl01Query req); - /**부과제외 대장 정보를 등록한다. - * @param excl 부과제외 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean insertLevyExcl(Excl01 excl01) { - return excl01 != null && insertLevyExcl(params().set("excl01", excl01)) == 1; + default DataObject selectCrdn(String crdnId) { + DataObject levyExclInfo = selectCrdn(new Excl01Query().setCrdnId(crdnId)); + + return levyExclInfo; } - /**부과제외 대장 정보를 수정한다. - * @param params 파라미터 - *
  • "excl" - 부과제외 대장
  • - *
  • "currentUser" - 현재 접속한 사용자
  • - *
+ /**사용자 정보를 등록한다. + * @param excl 부과제외 대장 * @return 저장된 정보수 */ - int updateLevyExcl(Map params); + int insertLevyExcl(Excl01 excl01); /**부과제외 대장 정보를 수정한다. * @param excl 부과제외 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
+ * @return 저장된 정보수 */ - default boolean updateLevyExcl(Excl01 excl01) { - return excl01 != null && updateLevyExcl(params().set("excl01", excl01)) == 1; - } + int updateLevyExcl(Excl01 excl01); /**지정한 부과제외 대장을 삭제한다. * @param params 파라미터 @@ -94,7 +72,8 @@ public interface Excl01Mapper extends AbstractMapper { * * @return 저장된 정보수 */ - int deleteLevyExcl(Map params); +// int deleteLevyExcl(Map params); + int deleteLevyExcl(Excl01 excl01); /**부과제외 대장 정보를 삭제한다. * @param levyExcl 부과제외 대장 @@ -103,8 +82,14 @@ public interface Excl01Mapper extends AbstractMapper { *
  • 그렇지 않으면 false
  • * */ - default boolean deleteLevyExcl(Excl01 excl01) { - return excl01 != null && deleteLevyExcl(params().set("excl01", excl01)) == 1; - } +// default boolean deleteLevyExcl(Excl01 excl01) { +// return excl01 != null && deleteLevyExcl(params().set("excl01", excl01)) == 1; +// } +// +// default int deleteLevyExcl(String... levyExclIDs) { +// return deleteLevyExcl( +// params().set("levyExclIDs", levyExclIDs) +// ); +// } } diff --git a/src/main/java/cokr/xit/fims/excl/service/Excl01Service.java b/src/main/java/cokr/xit/fims/excl/service/Excl01Service.java index 8cce048a..a3377230 100644 --- a/src/main/java/cokr/xit/fims/excl/service/Excl01Service.java +++ b/src/main/java/cokr/xit/fims/excl/service/Excl01Service.java @@ -24,13 +24,7 @@ public interface Excl01Service { */ List getLevyExclusionList(Excl01Query req); - /**지정한 조건에 따라 의견제출 대장 객체들을 반환한다. - * @param req 의견제출 대장 조회 조건 - * @return 의견제출 대장 객체 목록 - */ - List getLevyExclusions(Excl01Query req); - - /**지정한 ID의 부과제외 정보를 반환한다.
    + /**지정한 부과제외 ID의 부과제외 정보를 반환한다.
    * @param levyExclId 부과 제외 ID * @return 부과제외 정보 */ @@ -65,10 +59,3 @@ public interface Excl01Service { } - -///**지정한 ID의 부과제외 정보를 반환한다.
    -// * @param levyExclId 부과 제외 ID -// * @return 부과제외 정보 -// */ -//Excl01 getLevyExclusionInfo(String levyExclId); - diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/Excl01Bean.java b/src/main/java/cokr/xit/fims/excl/service/bean/Excl01Bean.java index 8a150112..bdea09a1 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/Excl01Bean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/Excl01Bean.java @@ -37,20 +37,16 @@ public class Excl01Bean extends AbstractComponent { return excl01Mapper.selectLevyExclList(req); } - /**지정한 조건에 따라 의견제출 대장 객체들을 반환한다. - * @param req 의견제출 대장 조회 조건 - * @return 의견제출 대장 객체 목록 - */ - public List getLevyExclusions(Excl01Query req) { - return excl01Mapper.selectLevyExcls(req); - } - - /**지정한 ID의 부과제외 정보를 반환한다.
    + /**지정한 부과제외 ID의 부과제외 정보를 반환한다.
    * @param levyExclId 부과제외 ID * @return 부과제외 정보 */ public DataObject getLevyExclusionInfo(Excl01Query req) { - return excl01Mapper.selectLevyExcl(req); + if (req.getLevyExclId() != null) { + return excl01Mapper.selectLevyExcl(req); // 수정(부과제외 조회) + } else { + return excl01Mapper.selectCrdn(req); // 등록(단속 조회) + } } /**부과제외 대장 정보를 등록한다. @@ -61,7 +57,7 @@ public class Excl01Bean extends AbstractComponent { * */ public boolean createLevyExclusion(Excl01 excl01) { - return excl01Mapper.insertLevyExcl(excl01); + return excl01 != null && excl01Mapper.insertLevyExcl(excl01) == 1; } /**부과제외 대장 정보를 수정한다. @@ -72,7 +68,7 @@ public class Excl01Bean extends AbstractComponent { * */ public boolean updateLevyExclusion(Excl01 excl01) { - return excl01Mapper.updateLevyExcl(excl01); + return excl01 != null && excl01Mapper.updateLevyExcl(excl01) == 1; } /**부과제외 대장 정보를 삭제한다. @@ -83,16 +79,7 @@ public class Excl01Bean extends AbstractComponent { * */ public boolean removeLevyExclusion(Excl01 excl01) { - return excl01Mapper.deleteLevyExcl(excl01); + return excl01 != null && excl01Mapper.deleteLevyExcl(excl01) == 1; } } - - -///**지정한 ID의 부과제외 정보를 반환한다.
    -// * @param levyExclId 부과제외 ID -// * @return 부과제외 정보 -// */ -//public Excl01 getLevyExclusionInfo(String levyExclId) { -// return excl01Mapper.selectLevyExclInfo(levyExclId); -//} diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/Excl01ServiceBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/Excl01ServiceBean.java index 4f3ec0df..d66cf674 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/Excl01ServiceBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/Excl01ServiceBean.java @@ -1,7 +1,5 @@ package cokr.xit.fims.excl.service.bean; -import static org.mockito.ArgumentMatchers.nullable; - import java.util.List; import javax.annotation.Resource; @@ -36,20 +34,9 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv return excl01Bean.getLevyExclusionList(req); } - @Override - public List getLevyExclusions(Excl01Query req) { - return excl01Bean.getLevyExclusions(req); - } - @Override public DataObject getLevyExclusionInfo(Excl01Query req) { - // 단속 ID 확인 - if (req.getCrdnId() == null || "".equals(req.getCrdnId())) { - // 단속 ID가 없다면 오류 발생.. - return excl01Bean.getLevyExclusionInfo(req); - } else { - return excl01Bean.getLevyExclusionInfo(req); - } + return excl01Bean.getLevyExclusionInfo(req); } @Override @@ -68,10 +55,3 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv } } - - -//@Override -//public Excl01 getLevyExclusionInfo(String levyExclId) { -// return excl01Bean.getLevyExclusionInfo(levyExclId); -//} - diff --git a/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java b/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java index 3711c03d..f4094e85 100644 --- a/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java +++ b/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java @@ -51,7 +51,7 @@ public class Excl01Controller extends ApplicationController { return mav.addObject("pageName", "excl01010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix .addObject("urlPrefix", "/excl/excl01") // URL로 사용할 prefix .addObject("infoPrefix", "levyExcl") // prefix - .addObject("FIM021List", commonCodes.get("FIM021")) // 업무 구분 코드(TASK_SE_CD) + .addObject("FIM021List", commonCodes.get("FIM021")) // .addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD) ; } @@ -74,8 +74,8 @@ public class Excl01Controller extends ApplicationController { return setCollectionInfo(new ModelAndView("jsonView"), result, "levyExcl"); } - /**지정한 ID의 부과제외 정보를 반환한다. - * @param levyExclId 부과 제외 ID + /**지정한 ID의 부과제외 정보(info)를 반환한다. + * @param Excl01Query req * @return fims/excl/excl01020-info 또는 jsonView *
    {
     	 *     "levyExclusionInfo": 부과제외 정보
    @@ -83,28 +83,24 @@ public class Excl01Controller extends ApplicationController {
     	 */
     	@RequestMapping(name = "부과제외 정보 조회", value = "/020/info.do")
     	public ModelAndView getLevyExclusionInfo(Excl01Query req) {
    -		// View(jsp)에서 사용할 공통코드를 조회
     		DataObject levyExclusionInfo = excl01Service.getLevyExclusionInfo(req);
     
     		boolean json = jsonResponse();
     
    -		ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/excl/excl01020-info")
    -				.addObject("pageName", "excl01020")								// View(jsp)에서 사용할 id 뒤에 붙일 suffix
    -		;
    +		ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/excl/excl01020-info");
    +
    +		// View(jsp)에서 사용할 공통코드를 조회
    +		Map> commonCodes = getCodesOf("FIM021", "FIM022", "FIM054");
     
    -		// 조회 결과가 없다면.. 0
    -		if (levyExclusionInfo == null) {
    -			return mav
    -					.addObject("pageMode", "create")							//
    -					.addObject("levyExclSeCd", req.getLevyExclSeCd())
    -			;
    -		} else {
    -			return mav
    -					.addObject("pageMode", "update")							//
    -					.addObject("levyExclSeCd", levyExclusionInfo.string("LEVY_EXCL_SE_CD"))
    -					.addObject("levyExclInfo", json ? levyExclusionInfo : toJson(levyExclusionInfo))
    -			;
    -		}
    +		addCodes(commonCodes, mav, "FIM021", "FIM022", "FIM054");
    +
    +		return mav
    +				.addObject("pageName", "excl01020")
    +				.addObject("FIM021List", commonCodes.get("FIM021"))				// 부과 제외 구분 코드(LEVY_EXCL_SE_CD)
    +				.addObject("FIM022List", commonCodes.get("FIM022"))				// 부과 제외 사유 코드(LEVY_EXCL_RSN_CD)
    +				.addObject("FIM054List", commonCodes.get("FIM054"))				// 업무 구분 코드(TASK_SE_CD)
    +				.addObject("levyExclInfo", json ? levyExclusionInfo : toJson(levyExclusionInfo))
    +		;
     	}
     
     	/**부과제외 대장를 등록한다.
    @@ -154,40 +150,3 @@ public class Excl01Controller extends ApplicationController {
     	}
     
     }
    -
    -
    -///**지정한 ID의 부과제외 정보를 반환한다.
    -// * @param levyExclId 부과 제외 ID
    -// * @return fims/excl/excl01020-info 또는 jsonView
    -// * 
    {
    -// *     "levyExclusionInfo": 부과제외 정보
    -// * }
    -// */ -//@RequestMapping(name = "부과제외 정보 조회", value = "/020/info.do") -//public ModelAndView getLevyExclusionInfo(String levyExclId) { -// // View(jsp)에서 사용할 공통코드를 조회 -// Map> commonCodes = getCodesOf("FIM021", "FIM022", "FIM054"); -// -// if (!isEmpty(levyExclId)) { -// Excl01 levyExclusionInfo = excl01Service.getLevyExclusionInfo(levyExclId); -// -// boolean json = jsonResponse(); -// -// return new ModelAndView(json ? "jsonView" : "fims/excl/excl01020-info") -// .addObject("pageName", "excl01020") // View(jsp)에서 사용할 id 뒤에 붙일 suffix -// .addObject("pageMode", "update") // -// .addObject("FIM021List", commonCodes.get("FIM021")) // 부과 제외 구분 코드(LEVY_EXCL_SE_CD) -// .addObject("FIM022List", commonCodes.get("FIM022")) // 부과 제외 사유 코드(LEVY_EXCL_RSN_CD) -// .addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD) -// .addObject("levyExclInfo", json ? levyExclusionInfo : toJson(levyExclusionInfo)) -// ; -// } else { -// return new ModelAndView("fims/excl/excl01020-info") -// .addObject("pageName", "excl01020") // View(jsp)에서 사용할 id 뒤에 붙일 suffix -// .addObject("pageMode", "create") // -// .addObject("FIM021List", commonCodes.get("FIM021")) // 부과 제외 구분 코드(LEVY_EXCL_SE_CD) -// .addObject("FIM022List", commonCodes.get("FIM022")) // 부과 제외 사유 코드(LEVY_EXCL_RSN_CD) -// .addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD) -// ; -// } -//} diff --git a/src/main/resources/sql/mapper/fims/excl/excl01-mapper.xml b/src/main/resources/sql/mapper/fims/excl/excl01-mapper.xml index ba5b0811..9b4b661f 100644 --- a/src/main/resources/sql/mapper/fims/excl/excl01-mapper.xml +++ b/src/main/resources/sql/mapper/fims/excl/excl01-mapper.xml @@ -191,15 +191,18 @@ - /* 단속 대장 객체 가져오기(excl01Mapper.selectCrdn) */ + SELECT A.CRDN_ID /* 단속 ID */ + , A.SGG_CD /* 시군구 코드 */ + , A.TASK_SE_CD /* 업무 구분 코드 */ + , A.CRDN_YMD /* 단속 일자 */ + , A.CRDN_TM /* 단속 시각 */ + , A.VHRNO /* 차량번호 */ + , A.CRDN_STTS_CD /* 단속 상태 코드 */ + , DATE_FORMAT(CURRENT_DATE, '%Y%m%d') AS LEVY_EXCL_YMD /* 부과 제외 일자 */ + , #{levyExclSeCd} AS LEVY_EXCL_SE_CD /* 부과 제외 구분 코드 */ + FROM TB_CRDN A + WHERE A.CRDN_ID = #{crdnId} /* 단속 ID */ /* 부과제외 대장 등록(excl01Mapper.insertLevyExcl) */ @@ -242,15 +245,15 @@ ) - /* 부과제외 대장 수정(excl01Mapper.updateLevyExcl) */ + /* 부과제외 대장 수정(excl01Mapper.updateLevyExcl) */ UPDATE TB_LEVY_EXCL - SET LEVY_EXCL_YMD = #{excl01.levyExclYmd} /* 부과 제외 일자 */ - , LEVY_EXCL_SE_CD = #{excl01.levyExclSeCd} /* 부과 제외 구분 코드 */ - , LEVY_EXCL_RSN_CD = #{excl01.levyExclRsnCd} /* 부과 제외 사유 코드 */ - , ETC_CN = #{excl01.etcCn} /* 기타 내용 */ + SET LEVY_EXCL_YMD = #{levyExclYmd} /* 부과 제외 일자 */ + , LEVY_EXCL_SE_CD = #{levyExclSeCd} /* 부과 제외 구분 코드 */ + , LEVY_EXCL_RSN_CD = #{levyExclRsnCd} /* 부과 제외 사유 코드 */ + , ETC_CN = #{etcCn} /* 기타 내용 */ , MDFCN_DT = /* 수정 일시 */ - , MDFR = #{currentUser.id} /* 수정자 */ - WHERE LEVY_EXCL_ID = #{excl01.levyExclId} /* 부과 제외 ID */ + , MDFR = #{mdfr} /* 수정자 */ + WHERE LEVY_EXCL_ID = #{levyExclId} /* 부과 제외 ID */ AND DEL_YN = 'N' /* 삭제 여부 */ @@ -258,10 +261,19 @@ UPDATE TB_LEVY_EXCL SET DEL_YN = 'Y' /* 삭제 여부 */ , DEL_DT = /* 삭제 일시 */ - , DLTR = #{currentUser.id} /* 삭제자 */ + , DLTR = #{dltr} /* 삭제자 */ , DEL_RSN = #{delRsn} /* 삭제 사유 */ - WHERE LEVY_EXCL_ID = #{levyExclId} /* 부과 제외 ID */ - AND DEL_YN = 'N' /* 삭제 여부 */ + WHERE DEL_YN = 'N' /* 삭제 여부 */ + + + AND LEVY_EXCL_ID IN ( + #{levyExclId} + ) + + + AND LEVY_EXCL_ID = #{levyExclId} /* 부과 제외 ID */ + + diff --git a/src/main/webapp/WEB-INF/jsp/fims/crdn/crdn06010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/crdn/crdn06010-main.jsp index 470c2928..8c4966c2 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/crdn/crdn06010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/crdn/crdn06010-main.jsp @@ -224,7 +224,7 @@ $(document).ready(function(){ var $P = pageObject["${pageName}"]; $P.scrollable = true; - + /************************************************************************** * DatasetControl **************************************************************************/ @@ -312,7 +312,7 @@ $(document).ready(function(){ this.innerHTML = ""; } }); - + //업무별 그리드 var colsContent = document.getElementById("crdnCols--${pageName}").content; var cols = $(colsContent).find("."+clsForTask+",.cmn"); @@ -329,10 +329,10 @@ $(document).ready(function(){ } $P.scrollEnd = (obj) => { - if(!$P.scrollable){ - return; + if(!$P.scrollable){ + return; } - + var el = $(obj); if(el.scrollTop() == 0){ return; @@ -366,13 +366,13 @@ $(document).ready(function(){ var foundContent = document.getElementById("crdnRow--${pageName}").content; var foundTr = $(foundContent).find("tr")[0].cloneNode(false); var foundTds = $(foundContent).find("."+clsForTask+",.cmn"); - + foundTds.each(function(){ foundTr.appendChild(this.cloneNode(true)); }); - + var found = foundTr.outerHTML; - + 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") + "');"); @@ -380,7 +380,7 @@ $(document).ready(function(){ $("#crdnTbody--${pageName}").html(trs.join()); fn_securityModeToggle($("#securityMode--top").is(":checked")); //보안모드 - + $P.scrollable = true; } diff --git a/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp index 8c1daa18..ec5e6151 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp @@ -14,10 +14,16 @@
    - + - - + +
    @@ -157,10 +163,18 @@
    - 비부과 등록 - 계고 등록 - 수정 - 삭제 + + + + @@ -248,8 +262,8 @@ /************************************************************************** * Global Variable **************************************************************************/ + // URL var prefixUrl = "/excl/excl01"; - // 공통 코드 var FIM021 = new CommonCodes(${FIM021}, true); var FIM022 = new CommonCodes(${FIM022}, true); @@ -269,7 +283,7 @@ , getInfo : wctx.url(prefixUrl + "/020/info.do") , create : wctx.url(prefixUrl + "/020/create.do") , update : wctx.url(prefixUrl + "/020/update.do") - , remove : wctx.url(prefixUrl + "/020/remove.do") + , remove : wctx.url(prefixUrl + "/010/remove.do") } , formats : { LEVY_EXCL_YMD : dateFormat @@ -278,11 +292,10 @@ , REG_DT : datetimeFormat , MDFCN_DT : datetimeFormat } - }); /************************************************************************** - * DatasetControl.on + * DatasetControl **************************************************************************/ // onDatasetChange 이벤트 ${pageName}Control.onDatasetChange = obj => { @@ -308,7 +321,6 @@ $("#tbody--${pageName}").setCurrentRow(key); }; - // onSelectionChange 이벤트 ${pageName}Control.onSelectionChange = selected => { let ${infoPrefix}List = ${pageName}Control.dataset; @@ -320,12 +332,9 @@ checkbox.prop("checked", keys.includes(checkbox.val())); }); -// $("#btnRemove${infoPrefix}s").prop("disabled", keys.length < 1); + $("#btnRemove--${pageName}").prop("disabled", keys.length < 1); }; - /************************************************************************** - * - **************************************************************************/ // DataTables에 click, dbclick 이벤트 function renderList${pageName}() { let ${infoPrefix}List = ${pageName}Control.dataset; @@ -372,21 +381,41 @@ // Create 신규 등록 ${pageName}Control.newInfo = (obj) => { - ${pageName}Control.dataset.append(obj || {}); - ${pageName}Control.getInfo(); - } +// ${pageName}Control.dataset.append(obj || {}); +// ${pageName}Control.getInfo(); - // Create 신규 등록 - ${pageName}Control.afterNewInfo = (obj) => { -// ${pageName}Control.dataset.append(obj || {}); ${pageName}Control.getInfo(obj); } +// // 삭제 +// ${pageName}Control.onRemove = (selected, resp) => { +// if (resp.saved) +// ${pageName}Control._load(); +// } + +// // 삭제 +// ${pageName}Control.remove = (params) => { +// let selected = ${pageName}Control.dataset.getKeys("selected"); +// debugger; +// if (selected.length < 1) return; + +// if (!params) { +// params = {}; +// params[${pageName}Control.prefixed("IDs")] = selected.join(","); +// } + +// ajax.post({ +// url : ${pageName}Control.urls.remove +// , data : params +// , success : resp => ${pageName}Control.onRemove(selected, resp) +// }); +// } + /************************************************************************** - * 초기 셋팅 + * **************************************************************************/ - // 검색 조건 초기값 - function initSearch${pageName}() { + // 초기 설정 + function initForm${pageName}() { // 업무구분 let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val(); $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true); @@ -399,22 +428,13 @@ // 이벤트 function setEvent${pageName}() { - // 버튼 이벤트 - $("#btnReset--${pageName}").on("click", () => fnReset${pageName}()); // 초기화 - $("#btnSearch--${pageName}").on("click", () => fnSearchList${pageName}()); // 검색 - $("#btnExcle--${pageName}").on("click", () => fnExcel${pageName}()); // 엑셀 - $("#btnCreateNotLevy--${pageName}").on("click", () => fnCreate${pageName}("1")); // 비부과 등록 - $("#btnCreateWarning--${pageName}").on("click", () => fnCreate${pageName}("2")); // 계고 등록 - $("#btnRemove--${pageName}").on("click", () => fnRemove${pageName}()); // 삭제 - $("#term--${pageName}").onEnterPress(() => fnSearchList${pageName}()); // 동적 검색 - // DataTables 스크롤 이벤트 $("#table-responsive--${pageName}").scroll(function() { let el = $(this); if (el.scrollTop() == 0) return; - if ((el[0].scrollHeight - el.scrollTop() + 15) == el.outerHeight()) { + if ((el[0].scrollHeight - el.scrollTop() + 17) == el.outerHeight()) { fnSearchList${pageName}(${pageName}Control.query.pageNum + 1); } }); @@ -423,9 +443,27 @@ /************************************************************************** * function **************************************************************************/ + // 업무구분 변경 + function fnResetAndChangeBiz${pageName}(taskSeCd) { + $("tbody--${pageName}").html(""); + } + + // 검색 조건 파라미터 가져오기 + function fnGetParams${pageName}() { + let formFields = new FimsFormFields("#frmSearch--${pageName}"); + let formData = formFields.get(); + + formData.sggCd = "41480"; // 시군구 코드 임시 + formData.fetchSize = 30; // 한번에 30건씩 조회 + + return formData; + } + // 초기화 function fnReset${pageName}() { + initForm${pageName}(); + ${pageName}Control.dataset.clear(); } // 검색 @@ -446,52 +484,45 @@ // 등록 function fnCreate${pageName}(levyExclSeCd) { + // test let dialogInfo = { - callMode : "create" - , crdnId : "4148020180000150" - , levyExclSeCd : levyExclSeCd + crdnId : "4148020180000150" + , levyExclSeCd : levyExclSeCd }; - // 테이블에서 선택한 현재 자료 -// dialogInfo = ${pageName}Control.getCurrent(); -// dialogInfo.callMode = "create"; -// dialogInfo.crdnId = "4148020180000150"; -// dialogInfo.levyExclSeCd = levyExclSeCd; - - ${pageName}Control.afterNewInfo(dialogInfo); + ${pageName}Control.newInfo(dialogInfo); } - // 삭제 - function fnRemove${pageName}(levyExclSeCd) { - - } + // 수정 + function fnModify${pageName}() { + let params = { + levyExclId : excl01010Control.dataset.getValue("LEVY_EXCL_ID") + }; - // 업무구분 변경 - function fnResetAndChangeBiz${pageName}(taskSeCd) { - $("tbody--${pageName}").html(""); + ${pageName}Control.getInfo(params); } - // 검색 조건 파라미터 가져오기 - function fnGetParams${pageName}() { - let formFields = new FimsFormFields("#frmSearch--${pageName}"); - let formData = formFields.get(); - - formData.sggCd = "41480"; // 시군구 코드 임시 - formData.fetchSize = 30; // 한번에 30건씩 조회 - - return formData; + // 삭제 + function fnRemove${pageName}() { + dialog.alert({ + content : "선택한 ${prefixName} 정보를 제거하시겠습니까?" + , onOK : () => { + ${pageName}Control.remove(); + } + }); } /************************************************************************** * script 진입 **************************************************************************/ $(document).ready(function() { - // 검색조건 초기값 설정 - initSearch${pageName}(); + // 화면 초기 설정 + initForm${pageName}(); // 이벤트 설정 setEvent${pageName}(); + // Dataset 셋팅 ${pageName}Control.addData(${levyExcl}); }); diff --git a/src/main/webapp/WEB-INF/jsp/fims/excl/excl01020-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/excl/excl01020-info.jsp index 3994dce9..e4b26946 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/excl/excl01020-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/excl/excl01020-info.jsp @@ -4,16 +4,18 @@
    -
    - - + + + + +
    - - - + + +
    @@ -34,7 +36,7 @@
    - +
    @@ -48,7 +50,7 @@ - 저장 +
    @@ -58,8 +60,14 @@ /************************************************************************** * Global Variable **************************************************************************/ - var ${pageName}Fields = new FormFields("#formInput--${pageName}"); + // URL + var prefixUrl = "/excl/excl01"; + // + var ${pageName}Fields = new FormFields("#frmInfo--${pageName}"); var ${pageName}Mode = "${pageMode}"; + // 공통 코드 + var FIM021 = new CommonCodes(${FIM021}, true); + var FIM022 = new CommonCodes(${FIM022}, true); /************************************************************************** * Dataset @@ -69,25 +77,22 @@ , prefixName : "부과제외" , keymapper : info => info ? info.levyExclId : "" , urls : { - load : wctx.url(prefixUrl + "/010/list.do") - , getInfo : wctx.url(prefixUrl + "/020/info.do") - , create : wctx.url(prefixUrl + "/020/create.do") + create : wctx.url(prefixUrl + "/020/create.do") , update : wctx.url(prefixUrl + "/020/update.do") - , remove : wctx.url(prefixUrl + "/020/remove.do") } , formats : { LEVY_EXCL_YMD : dateFormat } - , onCurrentChange : item => { - ${pageName}Fields.set(item); - setFim021(item.data.LEVY_EXCL_SE_CD); - } + , onCurrentChange : item => { + ${pageName}Fields.set(item); + setFim021(item.data.LEVY_EXCL_SE_CD); + } }); /************************************************************************** * **************************************************************************/ - // + // 저장 callback ${pageName}Info.onSave = (resp) => { if (resp.saved) { dialog.alert("저장됐습니다."); @@ -95,10 +100,7 @@ } } - /************************************************************************** - * - **************************************************************************/ - // + // 저장 ${pageName}Info.save = (info) => { if (!info) return; @@ -112,31 +114,30 @@ }); } + // function setFim021(code) { let cmnCode = FIM021[code]; + $("#levyExclSeCd--${pageName}").val(cmnCode.code); $("#levyExclSeNm--${pageName}").val(cmnCode.value); + + let reasons = FIM022.list().filter(reason => "1" == code ? reason.code < "200" : reason.code > "200"); + $("#levyExclRsnCd--${pageName}").html(reasons.map(reason => "").join()); } + /************************************************************************** * 초기 셋팅 **************************************************************************/ // 검색조건 초기값 셋팅 - function initSearch${pageName}() { + function initForm${pageName}() { // 달력 초기화 - initDatepicker("formInput--${pageName}"); + initDatepicker("frmInfo--${pageName}"); $("#levyExclYmd--${pageName}").datepicker("setDate", new Date()); - - // 부과제외구분에 따른 부과제외사유 코드 설정 - setFim021("${levyExclSeCd}"); - - let reasons = FIM022.list().filter(reason => "1" == "${levyExclSeCd}" ? reason.code < "200" : reason.code > "200"); - $("#levyExclRsnCd--${pageName}").html(reasons.map(reason => "").join()); } - // + // 이벤트 설정 function setEvent${pageName}() { - // 버튼 이벤트 - $("#btnSave--${pageName}").on("click", () => fnSave${pageName}()); // 저장 + } /************************************************************************** @@ -144,7 +145,7 @@ **************************************************************************/ // 저장 function fnSave${pageName}() { - let formFields = new FimsFormFields("#frmInput--${pageName}"); + let formFields = new FimsFormFields("#frmInfo--${pageName}"); let data = formFields.get(); dialog.alert({ @@ -159,21 +160,14 @@ * script 진입 **************************************************************************/ $(document).ready(function() { - // 초기값 설정 - initSearch${pageName}(); + // 화면 초기 설정 + initForm${pageName}(); // 이벤트 설정 setEvent${pageName}(); - // Data 셋팅 - if (${pageName}Mode == "create") { - - } else if (${pageName}Mode == "update") { - ${pageName}Info.setData([${levyExclInfo}]); - } else { - - } - + // Dataset 셋팅 + ${pageName}Info.setData([${levyExclInfo}]); }); // #sourceURL=excl01020-info.jsp