diff --git a/src/main/java/cokr/xit/fims/cmmn/service/CrdnSttsHstryService.java b/src/main/java/cokr/xit/fims/cmmn/service/CrdnSttsHstryService.java index c6e2fd61..1a90e067 100644 --- a/src/main/java/cokr/xit/fims/cmmn/service/CrdnSttsHstryService.java +++ b/src/main/java/cokr/xit/fims/cmmn/service/CrdnSttsHstryService.java @@ -73,6 +73,6 @@ public interface CrdnSttsHstryService { *
  • 그렇지 않으면 false
  • * */ - boolean removeHstryUpdateCrdnSttsCd(String crdnId); + boolean removeHstryUpdateCrdnSttsCd(String crdnId, String newCrdnSttsCd); } diff --git a/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryBean.java b/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryBean.java index 1fdad388..89e69a31 100644 --- a/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryBean.java +++ b/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryBean.java @@ -25,6 +25,7 @@ import cokr.xit.fims.cmmn.dao.CrdnSttsHstryMapper; */ @Component("crdnSttsHstryBean") public class CrdnSttsHstryBean extends AbstractComponent { + /** 단속 상태 이력 정보 DAO */ @Resource(name = "crdnSttsHstryMapper") private CrdnSttsHstryMapper crdnSttsHstryMapper; @@ -61,6 +62,10 @@ public class CrdnSttsHstryBean extends AbstractComponent { * */ public boolean create(CrdnSttsHstry crdnSttsHstry) { + if (crdnSttsHstry.getUseYn() == null) { + crdnSttsHstry.setUseYn("Y"); + } + return crdnSttsHstryMapper.insert(crdnSttsHstry); } @@ -107,21 +112,25 @@ public class CrdnSttsHstryBean extends AbstractComponent { public boolean createHstryUpdateCrdnSttsCd(CrdnSttsHstry crdnSttsHstry) { boolean retSuccess = false; // DB 처리 결과 - // 단속상태이력 정보를 등록한다. + if (crdnSttsHstry.getUseYn() == null) { + crdnSttsHstry.setUseYn("Y"); + } + + // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다. retSuccess = crdnSttsHstryMapper.insert(crdnSttsHstry); if (!retSuccess) { // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백.. - throw new RuntimeException("단속상태이력 정보를 등록 중 오류가 발생하였습니다."); + throw new RuntimeException("단속상태이력 정보 등록 중 오류가 발생하였습니다."); } - // 단속상태이력 정보를 등록한다. + // 단속(TB_CRDN) 대장을 수정 한다. retSuccess = crdnSttsHstryMapper.updateCrdn(crdnSttsHstry); if (!retSuccess) { // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백.. - throw new RuntimeException("단속상태이력 정보를 등록 중 오류가 발생하였습니다."); + throw new RuntimeException("단속상태이력 정보 등록 중 오류가 발생하였습니다."); } - return retSuccess; + return true; } /**단속 상태 이력 정보를 삭제하고, 하고 단속 대장의 단속상태 정보를 수정한다. @@ -131,37 +140,65 @@ public class CrdnSttsHstryBean extends AbstractComponent { *
  • 그렇지 않으면 false
  • * */ - public boolean removeHstryUpdateCrdnSttsCd(String crdnId) { + public boolean removeHstryUpdateCrdnSttsCd(String crdnId, String newCrdnSttsCd) { boolean retSuccess = false; // DB 처리 결과 - DataObject infoCrdnSttsHstry = new DataObject(); // 단속상태이력(TB_CRDN_STTS_HSTRY) 조회 정보 - CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry (); // 단속상태이력(TB_CRDN_STTS_HSTRY) + + DataObject infoCrdnSttsHstry = new DataObject(); // 단속상태이력(TB_CRDN_STTS_HSTRY) 조회 + CrdnSttsHstry newCrdnSttsHstry = new CrdnSttsHstry(); // 단속상태이력(TB_CRDN_STTS_HSTRY) 신규 등록 + CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); // 단속상태이력(TB_CRDN_STTS_HSTRY) // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 조회 한다. infoCrdnSttsHstry = crdnSttsHstryMapper.selectCrdnSttsHstryInfo(crdnId); - // 단속상태이력(TB_CRDN_STTS_HSTRY) + // 신규 단속상태코드가 있다면.. 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다. + if (!newCrdnSttsCd.equals("") ) { + newCrdnSttsHstry.setCrdnId(infoCrdnSttsHstry.string("CRDN_ID")); // 단속 ID + newCrdnSttsHstry.setBfrSttsCd(infoCrdnSttsHstry.string("BFR_STTS_CD")); // 이전 상태 코드 + newCrdnSttsHstry.setBfrSttsChgDt(infoCrdnSttsHstry.string("BFR_STTS_CHG_DT")); // 이전 상태 변경 일시 + newCrdnSttsHstry.setCrdnSttsCd(newCrdnSttsCd); + newCrdnSttsHstry.setUseYn("N"); + + retSuccess = crdnSttsHstryMapper.insert(newCrdnSttsHstry); + if (!retSuccess) { + // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백.. + throw new RuntimeException("신규 단속상태이력 정보 등록 중 오류가 발생하였습니다."); + } + } + + // 조회된 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 삭제 한다. crdnSttsHstry.setSttsHstryId(infoCrdnSttsHstry.string("STTS_HSTRY_ID")); // 상태 이력 ID - // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 삭제 한다. retSuccess = crdnSttsHstryMapper.delete(crdnSttsHstry); if (!retSuccess) { // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백.. - throw new RuntimeException("단속상태이력 정보를 삭제 중 오류가 발생하였습니다."); + throw new RuntimeException("단속상태이력 정보 삭제 중 오류가 발생하였습니다."); } - // 단속(TB_CRDN) + // 단속(TB_CRDN) 대장의 단속 상태 코드를 수정 한다. crdnSttsHstry.setCrdnId(infoCrdnSttsHstry.string("CRDN_ID")); // 단속 ID crdnSttsHstry.setCrdnSttsCd(infoCrdnSttsHstry.string("BFR_STTS_CD")); // 상태 코드 crdnSttsHstry.setCrdnSttsChgDt(infoCrdnSttsHstry.string("BFR_STTS_CHG_DT")); // 상태 변경 일시 - // 단속(TB_CRDN) 상태 코드를 수정 한다. retSuccess = crdnSttsHstryMapper.updateCrdn(crdnSttsHstry); if (!retSuccess) { // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백.. - throw new RuntimeException("단속상태이력 정보를 등록 중 오류가 발생하였습니다."); + throw new RuntimeException("단속 대장에 단속상태코드 변경 중 오류가 발생하였습니다."); + } + + // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다. + newCrdnSttsHstry.setCrdnId(infoCrdnSttsHstry.string("CRDN_ID")); // 단속 ID + newCrdnSttsHstry.setBfrSttsCd(newCrdnSttsCd); // 이전 상태 코드 + newCrdnSttsHstry.setBfrSttsChgDt(newCrdnSttsHstry.getCreatedAt()); // 이전 상태 변경 일시 + newCrdnSttsHstry.setCrdnSttsCd(infoCrdnSttsHstry.string("BFR_STTS_CD")); // 단속 상태 코드 + newCrdnSttsHstry.setUseYn("Y"); + + retSuccess = crdnSttsHstryMapper.insert(newCrdnSttsHstry); + if (!retSuccess) { + // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백.. + throw new RuntimeException("이전 단속상태이력 정보 등록 중 오류가 발생하였습니다."); } - return retSuccess; + return true; } } diff --git a/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryServiceBean.java b/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryServiceBean.java index 74a88425..44c1673a 100644 --- a/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryServiceBean.java +++ b/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnSttsHstryServiceBean.java @@ -61,8 +61,8 @@ public class CrdnSttsHstryServiceBean extends AbstractServiceBean implements Crd } @Override - public boolean removeHstryUpdateCrdnSttsCd(String crdnId) { - return crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(crdnId); + public boolean removeHstryUpdateCrdnSttsCd(String crdnId, String newCrdnSttsCd) { + return crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(crdnId, newCrdnSttsCd); } } 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 d185dc8e..6b5a4717 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 @@ -46,7 +46,9 @@ public class Excl01Bean extends AbstractComponent { * @return 부과제외 대장 목록 */ public List getLevyExclList(ExclQuery req) { - req.setOrderBy("LEVY_EXCL_ID"); // 정렬 + if (req.getOrderBy() == null) { + req.setOrderBy("REG_DT"); + } return levyExclMapper.selectLevyExclList(req); } @@ -56,7 +58,9 @@ public class Excl01Bean extends AbstractComponent { * @return 단속 상태 이력 객체 목록 */ public List getLevyExcls(ExclQuery req) { - req.setOrderBy("LEVY_EXCL_ID DESC"); // 정렬 + if (req.getOrderBy() == null) { + req.setOrderBy("REG_DT DESC"); + } return levyExclMapper.selectLevyExcls(req); } @@ -66,6 +70,10 @@ public class Excl01Bean extends AbstractComponent { * @return 부과제외 정보 */ public DataObject getLevyExclInfo(ExclQuery req) { + if (req.getOrderBy() == null) { + req.setOrderBy("LEVY_EXCL_ID DESC"); + } + return levyExclMapper.selectLevyExclInfo(req); } @@ -74,13 +82,10 @@ public class Excl01Bean extends AbstractComponent { * @return 단속 정보 */ public DataObject getCrdnInfo(ExclQuery req) { - DataObject dataCrdn = levyExclMapper.selectCrdn(req); // 등록(단속 조회) + DataObject dataCrdn = levyExclMapper.selectCrdn(req); // 단속 조회 - // 등록 호출시.. 부과제외 등록시 기본값 셋팅 - if (req.getCallPurpose() == null || req.getCallPurpose().equals("create")) { - dataCrdn.set("LEVY_EXCL_YMD", dataCrdn.get("TODAY")); // 부과 제외 일자 - dataCrdn.set("LEVY_EXCL_SE_CD", req.getLevyExclSeCd()); // 부과 제외 구분 코드 - } + dataCrdn.set("LEVY_EXCL_YMD", dataCrdn.get("TODAY")); // 부과 제외 일자 + dataCrdn.set("LEVY_EXCL_SE_CD", req.getLevyExclSeCd()); // 부과 제외 구분 코드 return dataCrdn; } @@ -362,6 +367,7 @@ public class Excl01Bean extends AbstractComponent { public boolean removeLevyExcl(LevyExcl levyExcl) { // 변수 선언 boolean retSuccess = false; // DB 처리 결과 + String newHstrySttsCd = ""; // 신규 상태 코드 ExclQuery req = new ExclQuery(); @@ -374,11 +380,11 @@ public class Excl01Bean extends AbstractComponent { // 단속 상태 코드(CRDN_STTS_CD) 확인.. if (infoLevyExcl.string("LEVY_EXCL_SE_CD").equals("1") && !infoLevyExcl.string("CRDN_STTS_CD").equals("81")) { // 비부과(서손) // 예외를 발생시켜서 오류메세지를 보내고 DB Rollback - throw new RuntimeException("단속 상태가 " + infoLevyExcl.string("CRDN_STTS_NM") + " 이(가) 아닙니다."); + throw new RuntimeException("현재 단속 상태가 " + infoLevyExcl.string("CRDN_STTS_NM") + " 이(가) 아닙니다."); } else if (infoLevyExcl.string("LEVY_EXCL_SE_CD").equals("2") && !infoLevyExcl.string("CRDN_STTS_CD").equals("83")) { // 계고 - throw new RuntimeException("단속 상태가 " + infoLevyExcl.string("CRDN_STTS_NM") + " 이(가) 아닙니다."); + throw new RuntimeException("현재 단속 상태가 " + infoLevyExcl.string("CRDN_STTS_NM") + " 이(가) 아닙니다."); } else if (infoLevyExcl.string("LEVY_EXCL_SE_CD").equals("5") && !infoLevyExcl.string("CRDN_STTS_CD").equals("80")) { // 부과취소 - throw new RuntimeException("단속 상태가 " + infoLevyExcl.string("CRDN_STTS_NM") + " 이(가) 아닙니다."); + throw new RuntimeException("현재 단속 상태가 " + infoLevyExcl.string("CRDN_STTS_NM") + " 이(가) 아닙니다."); } // 부과제외(TB_LEVY_EXCL) 대장을 삭제 한다. @@ -388,8 +394,14 @@ public class Excl01Bean extends AbstractComponent { throw new RuntimeException("부과제외 대장 삭제에 실패하였습니다."); } + if (infoLevyExcl.string("CRDN_STTS_CD").equals("81")) { // 비부과(서손) + newHstrySttsCd = "91"; + } else if (infoLevyExcl.string("CRDN_STTS_CD").equals("83")) { // 계고 + newHstrySttsCd = "93"; + } + // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장을 삭제 한다. - retSuccess = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(infoLevyExcl.string("CRDN_ID")); + retSuccess = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(infoLevyExcl.string("CRDN_ID"), newHstrySttsCd); if (!retSuccess) { // 예외를 발생시켜서 오류메세지를 보내고 DB Rollback throw new RuntimeException("부과제외 삭제 중 단속상태 변경에 실패하였습니다."); 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 4df0bac8..3749cbc0 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 @@ -41,10 +41,15 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv @Override public DataObject getLevyExclInfo(ExclQuery req) { - if (req.getLevyExclId() != null) { - return excl01Bean.getLevyExclInfo(req); - } else { + if (req.getCallPurpose() == null) { +// req.setCallPurpose("view"); + req.setCallPurpose("create"); // 추후 삭제 + } + + if (req.getCallPurpose().equals("create")) { return excl01Bean.getCrdnInfo(req); + } else { + return excl01Bean.getLevyExclInfo(req); } } diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/Excl02Bean.java b/src/main/java/cokr/xit/fims/excl/service/bean/Excl02Bean.java index 46ce8076..28cf8fde 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/Excl02Bean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/Excl02Bean.java @@ -48,7 +48,9 @@ public class Excl02Bean extends AbstractComponent { * @return 의견제출 대장 목록 */ public List getOpnnSbmsnList(ExclQuery req) { - req.setOrderBy("OPNN_ID"); // 정렬 + if (req.getOrderBy() == null) { + req.setOrderBy("REG_DT"); + } return opnnSbmsnMapper.selectOpnnSbmsnList(req); } @@ -58,7 +60,10 @@ public class Excl02Bean extends AbstractComponent { * @return 의견제출 대장 객체 목록 */ public List getOpnnSbmsns(ExclQuery req) { - req.setOrderBy("OPNN_ID DESC"); // 정렬 + if (req.getOrderBy() == null) { + req.setOrderBy("REG_DT DESC"); + } + return opnnSbmsnMapper.selectOpnnSbmsns(req); } @@ -67,6 +72,10 @@ public class Excl02Bean extends AbstractComponent { * @return 의견제출 정보 */ public DataObject getOpnnSbmsnInfo(ExclQuery req) { + if (req.getOrderBy() == null) { + req.setOrderBy("OPNN_ID DESC"); + } + return opnnSbmsnMapper.selectOpnnSbmsnInfo(req.getOpnnId()); } @@ -77,11 +86,8 @@ public class Excl02Bean extends AbstractComponent { public DataObject getCrdnInfo(ExclQuery req) { DataObject dataCrdn = opnnSbmsnMapper.selectCrdn(req); // 단속ID로 단속, 의견제출 조회 - // 등록 호출시.. 초기 데이터 설정 - if (req.getCallPurpose().equals("create")) { // 의견제출 등록시 기본값 셋팅 - dataCrdn.set("RCPT_YMD", dataCrdn.string("TODAY")); // 접수 일자 - dataCrdn.set("RCPT_NO", dataCrdn.string("NEW_RCPT_NO")); // 접수 번호 - } + dataCrdn.set("RCPT_YMD", dataCrdn.string("TODAY")); // 접수 일자 + dataCrdn.set("RCPT_NO", dataCrdn.string("NEW_RCPT_NO")); // 접수 번호 return dataCrdn; } @@ -284,7 +290,7 @@ public class Excl02Bean extends AbstractComponent { // 단속 상태 코드가 의견제출 접수(31) 또는 의견제출 수용(82) 이라면... 이전 단속 상태 코드로 복원 한다. if (infoCrdnOpnnSbmsn.string("CRDN_STTS_CD").equals("31") || infoCrdnOpnnSbmsn.string("CRDN_STTS_CD").equals("82")) { // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장을 삭제 한다. - retSuccess = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(infoCrdnOpnnSbmsn.string("CRDN_ID")); + retSuccess = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(infoCrdnOpnnSbmsn.string("CRDN_ID"), "92"); if (!retSuccess) { // 예외를 발생시켜서 오류메세지를 보내고 DB Rollback throw new RuntimeException("의견제출 삭제 중 단속상태 변경에 실패하였습니다."); diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/Excl02ServiceBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/Excl02ServiceBean.java index 22ce6c93..f6bfdc3f 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/Excl02ServiceBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/Excl02ServiceBean.java @@ -42,18 +42,14 @@ public class Excl02ServiceBean extends AbstractServiceBean implements Excl02Serv @Override public DataObject getOpnnSbmsnInfo(ExclQuery req) { - if (req.getLevyExclId() != null) { - return excl02Bean.getOpnnSbmsnInfo(req); - } else { - DataObject opnnSbmsnInfo = excl02Bean.getCrdnInfo(req); - - // 등록(create)으로 실행했는데 의견제출 ID가 존재한다면 이미 등록되었으므로 오류로 처리.. - if (req.getCallPurpose() == "create" && !opnnSbmsnInfo.string("OPNN_ID").equals("")) { - // 예외를 발생시켜서 오류메세지를 보내고 DB Rollback - throw new RuntimeException("의견제출 대장에 정보가 이미 존재합니다."); - } + if (req.getCallPurpose() == null) { + req.setCallPurpose("view"); + } - return opnnSbmsnInfo; + if (req.getCallPurpose().equals("create")) { + return excl02Bean.getCrdnInfo(req); + } else { + return excl02Bean.getOpnnSbmsnInfo(req); } } diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/Excl03Bean.java b/src/main/java/cokr/xit/fims/excl/service/bean/Excl03Bean.java index 301ba32f..f6d455d5 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/Excl03Bean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/Excl03Bean.java @@ -34,7 +34,9 @@ public class Excl03Bean extends AbstractComponent { * @return 단속 재등록 목록 */ public List getCrackdownReRegistrationList(ExclQuery req) { - req.setOrderBy("RE_REG_ID"); // 정렬 + if (req.getOrderBy() == null) { + req.setOrderBy("REG_DT"); + } return crdnReRegMapper.selectCrdnReRegList(req); } 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 5a9869a5..4cdbfe86 100644 --- a/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java +++ b/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java @@ -80,32 +80,34 @@ public class Excl01Controller extends ApplicationController { public ModelAndView getLevyExclInfo(String saveCallbackFuncName, String savedCallbackFuncName, ExclQuery req) { DataObject levyExclInfo = excl01Service.getLevyExclInfo(req); - if (req.getLevyExclId() == null && !levyExclInfo.string("LEVY_EXCL_ID").equals("")) { + // 등록을 호출하였지만 등록된 부과제외 ID가 있는지 확인. + if (req.getCallPurpose() == "create" && !levyExclInfo.string("LEVY_EXCL_ID").equals("")) { ModelAndView mav = new ModelAndView("jsonView"); - mav.addObject("message", "등록된 부과제외 정보가 있습니다."); - - return mav; + return mav + .addObject("message", "이미 등록된 부과제외 정보가 있습니다.") + .addObject("errorMessage", "이미 등록된 부과제외 정보가 있습니다.") + ; + } else { + boolean json = jsonResponse(); + + ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/excl/excl01020-info"); + + // View(jsp)에서 사용할 공통코드를 조회 + Map> commonCodes = getCodesOf("FIM021", "FIM022", "FIM054"); + + addCodes(commonCodes, mav, "FIM021", "FIM022", "FIM054"); + + return mav + .addObject("saveCallbackFuncName", saveCallbackFuncName) // + .addObject("savedCallbackFuncName", savedCallbackFuncName) // + .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 ? levyExclInfo : toJson(levyExclInfo)) + ; } - - boolean json = jsonResponse(); - - ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/excl/excl01020-info"); - - // View(jsp)에서 사용할 공통코드를 조회 - Map> commonCodes = getCodesOf("FIM021", "FIM022", "FIM054"); - - addCodes(commonCodes, mav, "FIM021", "FIM022", "FIM054"); - - return mav - .addObject("saveCallbackFuncName", saveCallbackFuncName) // - .addObject("savedCallbackFuncName", savedCallbackFuncName) // - .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 ? levyExclInfo : toJson(levyExclInfo)) - ; } /**부과제외 대장를 등록한다. diff --git a/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java b/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java index e720f222..9b36f848 100644 --- a/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java +++ b/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java @@ -90,13 +90,13 @@ public class Excl02Controller extends ApplicationController { public ModelAndView getOpnnSbmsnInfo(ExclQuery req) { DataObject opnnSbmsnInfo = excl02Service.getOpnnSbmsnInfo(req); - // 등록으로 실행했는데 의견제출 ID가 존재한다면 이미 등록되었으므로 오류로 처리.. - if (req.getOpnnId() == null && !opnnSbmsnInfo.string("OPNN_ID").equals("")) { + // 등록을 호출하였지만 등록된 의견제출 ID가 있는지 확인. + if (req.getCallPurpose() == "create" && !opnnSbmsnInfo.string("OPNN_ID").equals("")) { ModelAndView mav = new ModelAndView("jsonView"); - mav.addObject("message", "등록된 의견제출 정보가 있습니다."); - - return mav; + return mav + .addObject("errorMessage", "이미 등록된 의견제출 정보가 있습니다.") + ; } else { boolean json = jsonResponse(); diff --git a/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java b/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java index 8b9fce5b..0eec2ff0 100644 --- a/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java +++ b/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java @@ -170,14 +170,14 @@ public class Sprt02Controller extends ApplicationController { } sndb01Query.setCrdnId(req.getCrdnId()); sndb01Query.setDelYn(req.getDelYn()); - sndb01Query.setOrderBy("SD.REG_DT, SD.SNDNG_YMD DESC"); + sndb01Query.setOrderBy("SD.REG_DT, SD.SNDNG_DTL_ID DESC"); List sndngDtl = sndb01Service.getSndngDtls(sndb01Query); // 공시송달 정보 sndb01Query.setCrdnId(req.getCrdnId()); sndb01Query.setDelYn(req.getDelYn()); - sndb01Query.setOrderBy("SV.REG_DT DESC"); + sndb01Query.setOrderBy("SV.REG_DT DESC, SV.SVBTC_ID DESC"); List svbtc = sndb01Service.getSvbtcs(sndb01Query); @@ -235,14 +235,14 @@ public class Sprt02Controller extends ApplicationController { // 단속 상태 이력 CrdnSttsHstryQuery crdnSttsHstryQuery = new CrdnSttsHstryQuery(); crdnSttsHstryQuery.setCrdnId(req.getCrdnId()); - crdnSttsHstryQuery.setOrderBy("CSH.REG_DT DESC"); + crdnSttsHstryQuery.setOrderBy("CSH.REG_DT DESC, CSH.STTS_HSTRY_ID DESC"); List crdnSttsHstry = crdnSttsHstryService.getCrdnSttsHstrys(crdnSttsHstryQuery); // 단속 납부자 이력 CrdnPayerHstryQuery crdnPayerHstryQuery = new CrdnPayerHstryQuery(); crdnPayerHstryQuery.setCrdnId(req.getCrdnId()); - crdnPayerHstryQuery.setOrderBy("CPH.REG_DT DESC"); + crdnPayerHstryQuery.setOrderBy("CPH.REG_DT DESC, CPH.CHG_HSTRY_ID DESC"); List crdnPayerHstry = crdnPayerHstryService.getCrdnPayerHstrys(crdnPayerHstryQuery); @@ -253,6 +253,7 @@ public class Sprt02Controller extends ApplicationController { return mav .addObject("pageName", "sprt02050") .addObject("pageNameMain", "sprt02010") + .addObject("pageDataName1", "Rduct") // dataset1 .addObject("rduct", json ? rduct : toJson(rduct)) // 감경 정보 .addObject("pageDataName2", "LevyExcl") // dataset2 .addObject("levyExcl", json ? levyExcl : toJson(levyExcl)) // 부과 제외 정보 diff --git a/src/main/resources/sql/mapper/fims/cmmn/crdnSttsHstry-mapper.xml b/src/main/resources/sql/mapper/fims/cmmn/crdnSttsHstry-mapper.xml index d1012d3f..f22dc86b 100644 --- a/src/main/resources/sql/mapper/fims/cmmn/crdnSttsHstry-mapper.xml +++ b/src/main/resources/sql/mapper/fims/cmmn/crdnSttsHstry-mapper.xml @@ -103,7 +103,7 @@ , #{crdnSttsHstry.crdnSttsCd} /* 단속 상태 코드 */ , #{crdnSttsHstry.taskDtlId} /* 업무 상세 ID */ , #{crdnSttsHstry.etcCn} /* 기타 내용 */ - , 'Y' /* 삭제 여부 */ + , #{crdnSttsHstry.useYn} /* 단속 상태 변경 일시 */ , #{crdnSttsHstry.createdAt} /* 등록 일시 */ , #{crdnSttsHstry.createdBy} /* 등록자 */ , #{crdnSttsHstry.lastModified} /* 수정 일시 */ @@ -125,6 +125,7 @@ , MDFCN_DT = #{crdnSttsHstry.lastModified} /* 수정 일시 */ , MDFR = #{crdnSttsHstry.modifiedBy} /* 수정자 */ WHERE STTS_HSTRY_ID = #{crdnSttsHstry.sttsHstryId} /* 상태 이력 ID */ + AND USE_YN = 'Y' /* 사용 여부 */ /* 단속 대장 수정(crdnSttsHstryMapper.updateCrdnSttsCd) */ 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 9c8d5b23..2113118c 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 @@ -354,7 +354,7 @@ , data : { crdnId : crdnId } , success : resp => { dialog.open({ - id : ${pageName}Control.prefixed("dialog") + id : "totalInfoMainDialog" , title : "개별총정보" , content : resp , size : "xxl" @@ -438,7 +438,7 @@ resp = resp.replace(/infoPrefix/g, this.prefix) .replace(/prefixName/g, this.prefixName) dialog.open({ - id : ${pageName}Control.prefixed("dialog") + id : ${pageName}Control.prefixed("Dialog") , title : ${pageName}Control.prefixName + " 정보" , content : resp , size : ${pageName}Control.infoSize 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 776b42d6..8e87a9ce 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 @@ -43,7 +43,7 @@
    - +
    @@ -56,7 +56,7 @@ - + @@ -105,7 +105,7 @@ ${pageName}Control.onSave = (resp) => { if (resp.saved) { dialog.alert("저장됐습니다."); - dialog.close(${pageName}Control.prefix + "dialog"); + dialog.close(${pageName}Control.prefix + "Dialog"); if ("${savedCallbackFuncName}" != "") { ${savedCallbackFuncName}(resp.saved); @@ -177,7 +177,7 @@ * function **************************************************************************/ // 저장 - function fnBtnSave${pageName}() { + function fnSaveLevyExcl${pageName}() { // validate 확인 if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return; diff --git a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02030-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02030-info.jsp index eea3d40a..2a5afd1c 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02030-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02030-info.jsp @@ -191,7 +191,7 @@ **************************************************************************/ var ${pageName}Control = new DatasetControl({ prefix : "totalInfoOpnnSbmsn" - , prefixName : "의견제출 정보" + , prefixName : "의견제출" , keymapper : info => info ? info.OPNN_ID : "" , dataGetter : obj => obj.opnnSbmsn , formats : { @@ -218,9 +218,9 @@ let dialogTitle = ""; if (params.callPurpose == "create") { - dialogTitle = "의견제출 등록"; + dialogTitle = ${pageName}Control.prefixName + " 등록"; } else if (params.callPurpose == "update") { - dialogTitle = "의견제출 수정"; + dialogTitle = ${pageName}Control.prefixName + " 수정"; } else { return; } @@ -268,23 +268,31 @@ , title : "의견제출 답변 처리" , content : resp , size : "lg" - , onClose : () => { fnDataRefreshInfo(params.crdnId); } // callback 자료 조회 + , onClose : () => { fnDataRefreshInfo(); } // callback 자료 조회 }); } }); } // 재조회 - fnDataRefreshInfo = (crdnId) => { - // 단속 ID 확인 - if (crdnId == undefined || crdnId == null || crdnId == "") { - crdnId = $("#crdnId--${pageName}").val(); + fnDataRefreshInfo = () => { + let crdnId = $("#crdnId--${pageNameMain}").val(); + + // 단속 ID 가 없다면.. return + if (crdnId == null || crdnId == "") { + return; } + let params = { + callPurpose : "view" + , crdnId : crdnId + , delYn : "N" + }; + ajax.get({ url : wctx.url("/sprt/sprt02/030/info.do") , headers: { Accept: "application/json; charset=utf-8" } // json - , data : { crdnId : crdnId } + , data : params || {} , success : resp => { ${pageName}Control.dataset.clear(); ${pageName}Control.setData([resp.opnnSbmsn]); // Dataset 셋팅 diff --git a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp index 88eb6b85..debb1a26 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp @@ -13,56 +13,56 @@ - - - -
    + - +
    - - + +
    - - + +
    - - + +
    - -
    - - + +
    - - + +
    @@ -77,13 +77,13 @@ - - - @@ -238,15 +238,18 @@ **************************************************************************/ // URL var ${pageName}PrefixUrl = "/sprt/sprt02"; + var ${pageName}${pageDataName1}PrefixUrl = "/levy/levy02"; + var ${pageName}${pageDataName2}PrefixUrl = "/excl/excl01"; + // FormFields - var ${pageName}Fields = new FormFields("#frmEdit--${pageName}"); + var ${pageName}${pageDataName1}Fields = new FormFields("#frmEdit--${pageName}${pageDataName1}"); var ${pageName}${pageDataName2}Fields = new FormFields("#frmEdit--${pageName}${pageDataName2}"); /************************************************************************** * DatasetControl **************************************************************************/ // 감경 Dataset - var ${pageName}Control = new DatasetControl({ + var ${pageName}${pageDataName1}Control = new DatasetControl({ prefix : "rduct" , prefixName : "감경" , keymapper : info => info ? info.RDUCT_ID : "" @@ -316,18 +319,163 @@ * DatasetControl 이벤트 **************************************************************************/ // 감경 선택 자료 변경 이벤트 - ${pageName}Control.onCurrentChange = item => { + ${pageName}${pageDataName1}Control.onCurrentChange = item => { ${pageName}Fields.set(item); } + // 감경 dialog + ${pageName}${pageDataName1}Control.getInfo = (params) => { + let dialogTitle = ""; + + if (params.callPurpose == "create") { + dialogTitle = ${pageName}${pageDataName1}Control.prefixName + " 등록"; + } else if (params.callPurpose == "update") { + dialogTitle = ${pageName}${pageDataName1}Control.prefixName + " 수정"; + } else { + return; + } + + ajax.get({ + url : wctx.url("/" + params.taskSeCd + ${pageName}${pageDataName1}PrefixUrl + "/020/info.do") + , data : params || {} + , success : resp => { + if ((typeof resp) != "string") { + if (resp.errorMessage != "") { + dialog.alert(resp.errorMessage); + + return; + } + } + + dialog.open({ + id : ${pageName}${pageDataName2}Control.prefixed("Dialog") + , title : dialogTitle + , content : resp + , size : "lg" + , init : () => { } + , onClose : () => { fnDataRefreshInfo(); } // callback 자료 재조회 + }); + } + }); + } + // 부과제외 선택 자료 변경 이벤트 ${pageName}${pageDataName2}Control.onCurrentChange = item => { ${pageName}${pageDataName2}Fields.set(item); + + // 계고는 수정하지 않는다.. + let levyExclSeCd = item.data.LEVY_EXCL_SE_CD; + + if (levyExclSeCd == "2") { + $("#btnUpdateLevyExcl--${pageName}").prop("disabled", true); + } else { + $("#btnUpdateLevyExcl--${pageName}").prop("disabled", false); + } + } + + // 부과제외 dialog + ${pageName}${pageDataName2}Control.getInfo = (params) => { + let dialogTitle = ""; + + if (params.callPurpose == "create") { + dialogTitle = ${pageName}${pageDataName2}Control.prefixName + " 등록"; + } else if (params.callPurpose == "update") { + dialogTitle = ${pageName}${pageDataName2}Control.prefixName + " 수정"; + } else { + return; + } + + ajax.get({ + url : wctx.url("/" + params.taskSeCd + ${pageName}${pageDataName2}PrefixUrl + "/020/info.do") + , data : params || {} + , success : resp => { + if ((typeof resp) != "string") { + if (resp.errorMessage != "") { + dialog.alert(resp.errorMessage); + + return; + } + } + + dialog.open({ + id : ${pageName}${pageDataName2}Control.prefixed("Dialog") + , title : dialogTitle + , content : resp + , size : "lg" + , init : () => { } + , onClose : () => { fnDataRefreshInfo(); } // callback 자료 재조회 + }); + } + }); + } + + // 삭제 callback + ${pageName}${pageDataName2}Control.onRemove = (resp) => { + if (resp.saved) { + fnDataRefreshInfo(); // 자료 재조회 + } + } + + // 삭제 + ${pageName}${pageDataName2}Control.remove = (params) => { + ajax.post({ + url : wctx.url("/" + params.taskSeCd + ${pageName}${pageDataName2}PrefixUrl + "/010/remove.do") + , data : params || {} + , success : resp => ${pageName}${pageDataName2}Control.onRemove(resp) // 삭제 callback + }); } /************************************************************************** * **************************************************************************/ + // 자료 재조회 + fnDataRefreshInfo = () => { + let crdnId = $("#crdnId--${pageNameMain}").val(); + + // 단속 ID 가 없다면.. return + if (crdnId == null || crdnId == "") { + return; + } + + let params = { + callPurpose : "view" + , crdnId : crdnId + , delYn : "N" + }; + + ajax.get({ + url : wctx.url("/sprt/sprt02/050/info.do") + , headers: { Accept: "application/json; charset=utf-8" } // json + , data : params || {} + , success : resp => { + ${pageName}${pageDataName3}Dataset.clear(); + ${pageName}${pageDataName4}Dataset.clear(); + + // 감경 정보 Data 셋팅 + let rduct = resp.rduct; + if (rduct) { + ${pageName}${pageDataName1}Control.setData([rduct]); + } else { + $("#frmEdit--${pageName}${pageDataName1}")[0].reset(); + } + + // 부과제외 정보 Data 셋팅 + let levyExcl = resp.levyExcl; + if (levyExcl) { + ${pageName}${pageDataName2}Control.setData([levyExcl]); + } else { + $("#frmEdit--${pageName}${pageDataName2}")[0].reset(); + } + + // 처리 상태 이력 Data 셋팅 + ${pageName}${pageDataName3}Dataset.setData(resp.crdnSttsHstryList); + + // 주소 변동 이력 Data 셋팅 + ${pageName}${pageDataName4}Dataset.setData(resp.crdnPayerHstryList); + } + }); + } + // 단속 상태 이력 DataTables에 click 이벤트 renderList${pageName}${pageDataName3} = () => { let ${infoPrefix}List = ${pageName}${pageDataName3}Dataset; @@ -377,33 +525,91 @@ * function **************************************************************************/ // 감경 등록 - fnBtnRductCreate${pageName} = () => { + fnCreateRduct${pageName} = () => { } // 감경 수정 - fnBtnRductUpdate${pageName} = () => { + fnUpdateRduct${pageName} = () => { } // 감경 삭제 - fnBtnRductRemove${pageName} = () => { + fnRemoveRduct${pageName} = () => { } // 부과제외 등록 - fnBtnLevyExclCreate${pageName} = () => { + fnCreateLevyExcl${pageName} = () => { + let crdnId = $("#crdnId--${pageNameMain}").val(); + let sggCd = $("#sggCd--${pageNameMain}").val(); + let taskSeCd = $("#taskSeCd--${pageNameMain}").val(); + + // 단속 ID 가 없다면.. return + if (crdnId == undefined || crdnId == "") { + return; + } + + let params = { + callPurpose : "create" + , crdnId : crdnId + , sggCd : sggCd + , taskSeCd : taskSeCd + , levyExclSeCd : "1" + }; + ${pageName}${pageDataName2}Control.getInfo(params); } // 부과제외 수정 - fnBtnLevyExclUpdate${pageName} = () => { + fnUpdateLevyExcl${pageName} = () => { + let crdnId = $("#crdnId--${pageNameMain}").val(); + let sggCd = $("#sggCd--${pageNameMain}").val(); + let taskSeCd = $("#taskSeCd--${pageNameMain}").val(); + let levyExclId = ${pageName}${pageDataName2}Control.dataset.getValue("LEVY_EXCL_ID"); + + // 부과 제외 ID 가 없다면.. return + if (levyExclId == undefined || levyExclId == "") { + return; + } + + let params = { + callPurpose : "update" + , crdnId : crdnId + , sggCd : sggCd + , taskSeCd : taskSeCd + , levyExclId : levyExclId + }; + ${pageName}${pageDataName2}Control.getInfo(params); } // 부과제외 삭제 - fnBtnLevyExclRemove${pageName} = () => { + fnRemoveLevyExcl${pageName} = () => { + let crdnId = $("#crdnId--${pageNameMain}").val(); + let sggCd = $("#sggCd--${pageNameMain}").val(); + let taskSeCd = $("#taskSeCd--${pageNameMain}").val(); + let levyExclId = ${pageName}${pageDataName2}Control.dataset.getValue("LEVY_EXCL_ID"); + + // 민원 상담 ID 가 없다면.. return + if (levyExclId == undefined || levyExclId == "") { + return; + } + let params = { + callPurpose : "remove" + , crdnId : crdnId + , sggCd : sggCd + , taskSeCd : taskSeCd + , levyExclId : levyExclId + }; + + dialog.alert({ + content : "선택한 " + ${pageName}${pageDataName2}Control.prefixName + " 내용을 삭제하시겠습니까?" + , onOK : () => { + ${pageName}${pageDataName2}Control.remove(params); + } + }); } /************************************************************************** @@ -419,13 +625,13 @@ // 감경 정보 Control 셋팅 let rduct = ${rduct}; if (rduct) { - ${pageName}Control.setData([${rduct}]); + ${pageName}${pageDataName1}Control.setData([rduct]); } // 부과제외 정보 Control 셋팅 let levyExcl = ${levyExcl}; if (levyExcl) { - ${pageName}${pageDataName2}Control.setData([${levyExcl}]); + ${pageName}${pageDataName2}Control.setData([levyExcl]); } // 처리 상태 이력 Dataset 셋팅 diff --git a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02060-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02060-info.jsp index e85738ed..afe268e6 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02060-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02060-info.jsp @@ -331,8 +331,11 @@ // 화면 초기 설정 initForm${pageName}(); - // Dataset 셋팅 - ${pageName}Control.setData([${levy}]); + // 부과 정보 Control 셋팅 + let levy = ${levy}; + if (levy) { + ${pageName}${pageDataName1}Control.setData([levy]); // Dataset 셋팅 + } }); // #sourceURL=sprt02060-info.jsp diff --git a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02080-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02080-info.jsp index a94bbc20..9a7304be 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02080-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02080-info.jsp @@ -124,15 +124,25 @@ $("#dscsnCn--${pageName}").val(item.data.DSCSN_CN); // 상담 내용 }; - // 민원 상담 내용 dialog + // 민원 상담 내용 Dialog ${pageName}Control.getInfo = (params) => { + let dialogTitle = ""; + + if (params.callPurpose == "create") { + dialogTitle = ${pageName}Control.prefixName + " 등록"; + } else if (params.callPurpose == "update") { + dialogTitle = ${pageName}Control.prefixName + " 수정"; + } else { + return; + } + ajax.get({ url : wctx.url("/" + params.taskSeCd + ${pageName}PrefixUrl + "/020/info.do") , data : params || {} , success : resp => { dialog.open({ id : ${pageName}Control.prefixed("Dialog") - , title : "민원상담 내용" + , title : dialogTitle , content : resp , size : "lg" , init : () => { } @@ -154,10 +164,29 @@ ajax.post({ url : wctx.url("/" + params.taskSeCd + ${pageName}PrefixUrl + "/010/remove.do") , data : params || {} - , success : resp => ${pageName}Control.onRemove(resp) + , success : resp => ${pageName}Control.onRemove(resp) // 삭제 callback }); } + /************************************************************************** + * + **************************************************************************/ + // DataTables에 click, dbclick 이벤트 + renderList${pageName} = () => { + let ${infoPrefix}List = ${pageName}Control.dataset; + let empty = ${infoPrefix}List.empty; + + let trs = empty ? + [document.getElementById("${infoPrefix}NotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%> + ${infoPrefix}List.inStrings( + document.getElementById("${infoPrefix}Row--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%> + (str, dataItem) => str + .replace(/{onclick}/gi, "${pageName}Control.setCurrent('" + dataItem.getValue("CVLCPT_DSCSN_ID") + "');") + ); + + $("#tbody--${pageName}").html(trs.join()); + } + // 자료 재조회 fnDataRefreshInfo = () => { let crdnId = $("#crdnId--${pageNameMain}").val(); @@ -187,25 +216,6 @@ }); } - /************************************************************************** - * - **************************************************************************/ - // DataTables에 click, dbclick 이벤트 - renderList${pageName} = () => { - let ${infoPrefix}List = ${pageName}Control.dataset; - let empty = ${infoPrefix}List.empty; - - let trs = empty ? - [document.getElementById("${infoPrefix}NotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%> - ${infoPrefix}List.inStrings( - document.getElementById("${infoPrefix}Row--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%> - (str, dataItem) => str - .replace(/{onclick}/gi, "${pageName}Control.setCurrent('" + dataItem.getValue("CVLCPT_DSCSN_ID") + "');") - ); - - $("#tbody--${pageName}").html(trs.join()); - } - /************************************************************************** * 초기 셋팅 **************************************************************************/