단속 재등록 수정.

소스 정리.
main
jjh 1 year ago
parent 706970c3d8
commit 124cbc7e4b

@ -20,6 +20,9 @@ public class Excl01Query extends QueryRequest {
private String sggCd; // 시군구 코드
private String taskSeCd; // 업무 구분 코드
private String delYn; // 삭제 여부
// ID
private String levyExclId; // 부과 제외 ID
private String crdnId; // 단속 ID
// 공통 조건
private String schDateOpt; // 검색 일자 구분
private String schDateFrom; // 검색 일자 시작
@ -45,9 +48,6 @@ public class Excl01Query extends QueryRequest {
private String levyExclSeNm; // 부과 제외 구분 코드
private String vhrno; // 차량번호 - 단속(TB_CRDN)
private String rtpyrNm; // 납부자 명 - 납부자(TB_PAYER)
// ID
private String levyExclId; // 부과 제외 ID
private String crdnId; // 단속 ID
public String getSggCd() {
return ifEmpty(sggCd, () -> null);
@ -79,6 +79,26 @@ public class Excl01Query extends QueryRequest {
return self();
}
public String getLevyExclId() {
return ifEmpty(levyExclId, () -> null);
}
public <T extends Excl01Query> T setLevyExclId(String levyExclId) {
this.levyExclId = levyExclId;
return self();
}
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
public <T extends Excl01Query> T setCrdnId(String crdnId) {
this.crdnId = crdnId;
return self();
}
public String getSchDateOpt() {
return ifEmpty(schDateOpt, () -> null);
}
@ -290,27 +310,6 @@ public class Excl01Query extends QueryRequest {
return self();
}
//
public String getLevyExclId() {
return ifEmpty(levyExclId, () -> null);
}
public <T extends Excl01Query> T setLevyExclId(String levyExclId) {
this.levyExclId = levyExclId;
return self();
}
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
public <T extends Excl01Query> T setCrdnId(String crdnId) {
this.crdnId = crdnId;
return self();
}
public String getLevyExclSeCd() {
return ifEmpty(levyExclSeCd, () -> null);
}

@ -20,6 +20,9 @@ public class Excl02Query extends QueryRequest {
private String sggCd; // 시군구 코드
private String taskSeCd; // 업무 구분 코드
private String delYn; // 삭제 여부
// ID
private String opnnId; // 의견 제출 ID
private String crdnId; // 단속 ID
// 공통 조건
private String schDateOpt; // 검색 일자 구분
private String schDateFrom; // 검색 일자 시작
@ -40,8 +43,6 @@ public class Excl02Query extends QueryRequest {
// 동적 검색 조건
private String mainOption;
private String subOption;
// ID
private String opnnId; // 의견 ID
public String getSggCd() {
return ifEmpty(sggCd, () -> null);
@ -73,6 +74,26 @@ public class Excl02Query extends QueryRequest {
return self();
}
public String getOpnnId() {
return ifEmpty(opnnId, () -> null);
}
public <T extends Excl02Query> T setOpnnId(String opnnId) {
this.opnnId = opnnId;
return self();
}
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
public <T extends Excl02Query> T setCrdnId(String crdnId) {
this.crdnId = crdnId;
return self();
}
public String getSchDateOpt() {
return ifEmpty(schDateOpt, () -> null);
}
@ -223,16 +244,6 @@ public class Excl02Query extends QueryRequest {
return self();
}
public String getOpnnId() {
return ifEmpty(opnnId, () -> null);
}
public <T extends Excl02Query> T setOpnnId(String opnnId) {
this.opnnId = opnnId;
return self();
}
// 동적 검색 조건 ///////////////////////////////////////////////////////////////
public String getMainOption() {
return ifEmpty(mainOption, () -> null);

@ -20,6 +20,10 @@ public class Excl03Query extends QueryRequest {
private String sggCd; // 시군구 코드
private String taskSeCd; // 업무 구분 코드
private String delYn; // 삭제 여부
// ID
private String reRegId; // 재등록 ID
private String crdnId; // 단속 ID
// 공통 조건
private String schDateOpt; // 검색 일자 구분
private String schDateFrom; // 검색 일자 시작
@ -32,8 +36,6 @@ public class Excl03Query extends QueryRequest {
// 동적 검색 조건
private String mainOption;
private String subOption;
// ID
private String reRegId; // 재등록 ID
public String getSggCd() {
return ifEmpty(sggCd, () -> null);
@ -64,6 +66,25 @@ public class Excl03Query extends QueryRequest {
return self();
}
public String getReRegId() {
return ifEmpty(reRegId, () -> null);
}
public <T extends Excl03Query> T setReRegId(String reRegId) {
this.reRegId = reRegId;
return self();
}
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
public <T extends Excl03Query> T setCrdnId(String crdnId) {
this.crdnId = crdnId;
return self();
}
public String getSchDateOpt() {
return ifEmpty(schDateOpt, () -> null);
@ -135,16 +156,6 @@ public class Excl03Query extends QueryRequest {
return self();
}
public String getReRegId() {
return ifEmpty(reRegId, () -> null);
}
public <T extends Excl03Query> T setReRegId(String reRegId) {
this.reRegId = reRegId;
return self();
}
// 동적 검색 조건 ///////////////////////////////////////////////////////////////
public String getMainOption() {
return ifEmpty(mainOption, () -> null);

@ -5,6 +5,7 @@ import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.fims.excl.Excl01Query;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.foundation.component.AbstractMapper;
@ -27,64 +28,91 @@ public interface Excl03Mapper extends AbstractMapper {
* @param req
* @return
*/
List<DataObject> selectCrdnReList(Excl03Query req);
List<DataObject> selectCrdnReRegList(Excl03Query req);
/** .
* @param req
* @return
*/
List<Excl03> selectCrdnRes(Excl03Query req);
List<DataObject> selectCrdnReRegs(Excl03Query req);
/** ID .
* @param levyExclId ID
* @return
*/
DataObject selectCrdnReInfo(Excl03Query req);
default DataObject selectCrdnReRegInfo(String reRegId) {
List<DataObject> crdnReRegInfo = selectCrdnReRegs(new Excl03Query().setReRegId(reRegId).setOrderBy("RE_REG_ID"));
default DataObject selectCrdnReInfo(String reRegId) {
DataObject crdnReInfo = selectCrdnReInfo(new Excl03Query().setBy("reRegId").setTerm(reRegId));
return crdnReInfo;
return !crdnReRegInfo.isEmpty() ? crdnReRegInfo.get(0) : null;
}
/** .
* @param params
* <ul><li>"excl03" - </li>
* <ul><li>"crdnReReg" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertCrdnRe(Map<String, Object> params);
int insertCrdnReReg(Map<String, Object> params);
/** .
* @param excl03
* @param crdnReReg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insertCrdnRe(Excl03 excl03) {
return excl03 != null && insertCrdnRe(params().set("excl03", excl03)) == 1;
default boolean insert(Excl03 excl03) {
return excl03 != null && insertCrdnReReg(params().set("excl03", excl03)) == 1;
}
/** .
* @param params
* <ul><li>"excl03" - </li>
* <ul><li>"crdnReReg" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteCrdnRe(Map<String, ?> params);
int deleteCrdnReReg(Map<String, ?> params);
/** .
* @param crdnReReg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean delete(Excl03 excl03) {
return excl03 != null && deleteCrdnReReg(params().set("excl03", excl03)) == 1;
}
/** ID .
* @param crdnId ID
* @return
*/
DataObject selectCrdnInfo(String crdnId);
/** .
* @param params
* <ul><li>"excl03" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertCopyCrdn(Map<String, Object> params);
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean deleteCrdnRe(Excl03 excl03) {
return excl03 != null && deleteCrdnRe(params().set("excl03", excl03)) == 1;
default boolean insertCopyCrdn(Excl03 excl03) {
return excl03 != null && insertCopyCrdn(params().set("excl03", excl03)) == 1;
}
}

@ -28,7 +28,7 @@ public interface Excl03Service {
* @param req
* @return
*/
List<Excl03> getCrackdownReRegistrations(Excl03Query req);
List<DataObject> getCrackdownReRegistrations(Excl03Query req);
/** ID .<br />
* @param reRegId ID

@ -1,7 +1,5 @@
package cokr.xit.fims.excl.service.bean;
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -56,28 +54,28 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
Map<String, String> retMap = new HashMap<String, String>(); // 결과 return
// 단속 ID로 부과제외 정보 조회
DataObject dataCrdnLevyExcl = excl01Bean.getCrdnLevyExclusion(excl01.getCrdnId());
DataObject infoCrdnLevyExcl = excl01Bean.getCrdnLevyExclusion(excl01.getCrdnId());
// 부과제외 ID가 있다면 이미 부과제외 자료가 존재하므로 종료..
if (!dataCrdnLevyExcl.string("LEVY_EXCL_ID").equals("")) {
retMap.put("retCode", "000");
// 부과제외 ID가 있다면 이미 부과제외 자료가 존재. 종료..
if (!infoCrdnLevyExcl.string("LEVY_EXCL_ID").equals("")) {
retMap.put("retSaved", "false");
retMap.put("retMessage", "부과제외 정보가 이미 존재합니다.");
return retMap;
}
if (excl01.getLevyExclSeCd().equals("1") || excl01.getLevyExclSeCd().equals("2")) { // 비부과, 계고 등록시..
// 단속 상태 코드가 부과(51) 보다 크다면..부과제외 등록 할 수 없다.
if (Integer.parseInt(dataCrdnLevyExcl.string("CRDN_STTS_CD")) > 50) {
retMap.put("retCode", "000");
retMap.put("retMessage", "단속 상태가 " + dataCrdnLevyExcl.string("CRDN_STTS_NM") + " 상태 입니다");
// 단속 상태 코드가 부과(51) 보다 크다면..부과제외 등록 할 수 없다. 종료..
if (Integer.parseInt(infoCrdnLevyExcl.string("CRDN_STTS_CD")) > 50) {
retMap.put("retSaved", "false");
retMap.put("retMessage", "단속 상태가 " + infoCrdnLevyExcl.string("CRDN_STTS_NM") + " 상태 입니다");
return retMap;
}
// 추가필요 20230718 조재현 //////////////////////////////////////////////////////////
// 자동등록 자료만 민원답변 부분을 처리
if (dataCrdnLevyExcl.string("CRDN_REG_SE_CD").equals("02")) {
if (infoCrdnLevyExcl.string("CRDN_REG_SE_CD").equals("02")) {
}
}
@ -95,45 +93,44 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
retSuccess = excl01Bean.createLevyExclusion(excl01);
// 1건이 등록 되지 않았다면..
if (!retSuccess) {
retMap.put("retCode", "000");
retMap.put("retSaved", "false");
retMap.put("retMessage", "부과제외 대장 등록에 실패하였습니다.");
// return retMap;
throw new RuntimeException("부과제외 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 오류메세지를 보내고 롤백..
// 예외를 발생시켜서 오류메세지를 보내고 롤백..
throw new RuntimeException(retMap.get("retMessage"));
}
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장 등록
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(excl01.getCrdnId());
crdnSttsHstry.setBfrSttsCd(dataCrdnLevyExcl.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(dataCrdnLevyExcl.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setBfrSttsCd(infoCrdnLevyExcl.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(infoCrdnLevyExcl.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setCrdnSttsCd(excl01.getCrdnSttsCd());
crdnSttsHstry.setTaskDtlId(excl01.getLevyExclId());
crdnSttsHstry.setEtcCn("부과제외 등록");
retSuccess = crdnSttsHstryBean.create(crdnSttsHstry);
if (!retSuccess) {
retMap.put("retCode", "000");
retMap.put("retSaved", "false");
retMap.put("retMessage", "단속상태이력 대장 등록에 실패하였습니다.");
// return retMap;
throw new RuntimeException("단속상태이력 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 오류메세지를 보내고 롤백..
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMap.get("retMessage"));
}
// 단속(TB_CRDN) 대장 상태 코드 수정
retSuccess = excl01Bean.updateCrackdownStatus(excl01);
if (!retSuccess) {
retMap.put("retCode", "000");
retMap.put("retSaved", "false");
retMap.put("retMessage", "단속 대장에 단속상태 수정에 실패하였습니다.");
return retMap;
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMap.get("retMessage"));
}
// 처리 성공
retMap.put("retCode", "001");
retMap.put("retSaved", "true");
retMap.put("retMessage", "저장 되었습니다.");
return retMap;
@ -147,14 +144,15 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
retSuccess = excl01Bean.updateLevyExclusion(excl01);
if (!retSuccess) {
retMap.put("retCode", "000");
retMap.put("retSaved", "false");
retMap.put("retMessage", "부과제외 대장 수정에 실패하였습니다.");
return retMap;
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMap.get("retMessage"));
}
// 처리 성공
retMap.put("retCode", "001");
retMap.put("retSaved", "true");
retMap.put("retMessage", "저장 되었습니다.");
return retMap;
@ -210,7 +208,8 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
if (!infoCrdnSttsHstry.string("CRDN_STTS_CD").equals(infoCrdnSttsCd.string("CRDN_STTS_CD"))) {
retMessage = retMessage + "단속 상태가 " + infoCrdnSttsCd.string("LEVY_EXCL_SE_NM") + " 이(가) 아닙니다.";
throw new RuntimeException(retMessage); // 예외를 발생시켜서 오류메세지를 보내고 롤백..
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMessage);
}
// 부과제외(TB_LEVY_EXCL) 삭제
@ -218,17 +217,20 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
if (!retSuccess) {
retMessage = retMessage + "부과제외 자료 삭제에서 오류가 발생 되었습니다.";
throw new RuntimeException(retMessage); // 예외를 발생시켜서 오류메세지를 보내고 롤백..
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMessage);
}
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 삭제
// 단속 상태 이력 ID
deltCrdnSttsHstry.setSttsHstryId(infoCrdnSttsHstry.string("STTS_HSTRY_ID"));
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 삭제
retSuccess = crdnSttsHstryBean.remove(deltCrdnSttsHstry);
if (!retSuccess) {
retMessage = retMessage + "단속상태이력 자료 삭제에서 오류가 발생 되었습니다.";
throw new RuntimeException(retMessage); // 예외를 발생시켜서 오류메세지를 보내고 롤백..
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMessage);
}
// 단속(TB_CRDN) 대장 상태 코드 수정
@ -240,12 +242,13 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
if (!retSuccess) {
retMessage = retMessage + "단속 자료 수정에서 오류가 발생 되었습니다.";
throw new RuntimeException(retMessage); // 예외를 발생시켜서 오류메세지를 보내고 롤백..
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMessage);
}
// 추가필요 20230718 조재현 //////////////////////////////////////////////////////////
// 부과제외구분이 비부과(서손), 계고일 경우
if (excl01.getLevyExclSeCd().equals("1") || excl01.getLevyExclSeCd().equals("2")) {
if (infoCrdnSttsCd.string("LEVY_EXCL_SE_CD").equals("1") || infoCrdnSttsCd.string("LEVY_EXCL_SE_CD").equals("2")) {
/*
if GB <> 3 then
begin
@ -328,7 +331,6 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
end;
*/
}
// 처리 성공

@ -34,15 +34,15 @@ public class Excl03Bean extends AbstractComponent {
* @return
*/
public List<DataObject> getCrackdownReRegistrationList(Excl03Query req) {
return excl03Mapper.selectCrdnReList(req);
return excl03Mapper.selectCrdnReRegList(req);
}
/** .
* @param req
* @return
*/
public List<Excl03> getCrackdownReRegistrations(Excl03Query req) {
return excl03Mapper.selectCrdnRes(req);
public List<DataObject> getCrackdownReRegistrations(Excl03Query req) {
return excl03Mapper.selectCrdnReRegs(req);
}
/** ID .<br />
@ -50,7 +50,7 @@ public class Excl03Bean extends AbstractComponent {
* @return
*/
public DataObject getCrackdownReRegistrationInfo(String opnnId) {
return excl03Mapper.selectCrdnReInfo(opnnId);
return excl03Mapper.selectCrdnReRegInfo(opnnId);
}
/** .
@ -61,7 +61,7 @@ public class Excl03Bean extends AbstractComponent {
* </ul>
*/
public boolean createCrackdownReRegistration(Excl03 excl03) {
return excl03Mapper.insertCrdnRe(excl03);
return excl03Mapper.insert(excl03);
}
/** .
@ -72,6 +72,26 @@ public class Excl03Bean extends AbstractComponent {
* </ul>
*/
public boolean removeCrackdownReRegistration(Excl03 excl03) {
return excl03Mapper.deleteCrdnRe(excl03);
return excl03Mapper.delete(excl03);
}
/** .
* @param req
* @return
*/
public DataObject getCrackdown(String crdnId) {
return excl03Mapper.selectCrdnInfo(crdnId);
}
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public boolean createCopyCrackdown(Excl03 excl03) {
return excl03Mapper.insertCopyCrdn(excl03);
}
}

@ -8,10 +8,13 @@ import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.base.file.service.bean.FileBean;
import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.crdn.service.bean.Crdn05ServiceBean;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.fims.excl.service.Excl03Service;
import cokr.xit.fims.task.service.TaskService;
/** .
*
@ -30,13 +33,16 @@ public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Serv
@Resource(name = "excl03Bean")
private Excl03Bean excl03Bean;
@Resource(name="crdn05Service")
private Crdn05ServiceBean crdn05Service;
@Override
public List<DataObject> getCrackdownReRegistrationList(Excl03Query req) {
return excl03Bean.getCrackdownReRegistrationList(req);
}
@Override
public List<Excl03> getCrackdownReRegistrations(Excl03Query req) {
public List<DataObject> getCrackdownReRegistrations(Excl03Query req) {
return excl03Bean.getCrackdownReRegistrations(req);
}
@ -47,7 +53,111 @@ public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Serv
@Override
public boolean createCrackdownReRegistration(Excl03 excl03) {
return excl03Bean.createCrackdownReRegistration(excl03);
// 변수 선언
boolean retSuccess = false; // DB 처리 결과
String retMessage = "등록 처리 중 ";
// 단속 ID로 부과제외 정보 조회
DataObject infoCrdn = excl03Bean.getCrackdown(excl03.getBfrCrdnId());
Crdn crdn = new Crdn();
crdn.setSggCd(infoCrdn.string("SGG_CD"));
crdn.setTaskSeCd(infoCrdn.string("TASK_SE_CD"));
// crdn.setCrdnRegSeCd(infoCrdn.string("CRDN_REG_SE_CD"));
// crdn.setCrdnInptSeCd(infoCrdn.string("CRDN_INPT_SE_CD"));
// crdn.setLinkTblNm(infoCrdn.string("LINK_TBL_NM"));
// crdn.setLinkId(infoCrdn.string("LINK_ID"));
// crdn.setRtpyrId(infoCrdn.string("RTPYR_ID"));
// crdn.setCrdnSeCd(infoCrdn.string("CRDN_SE_CD"));
// crdn.setCrdnYmd(infoCrdn.string("CRDN_YMD"));
// crdn.setCrdnTm(infoCrdn.string("CRDN_TM"));
// crdn.setVhrno(infoCrdn.string("VHRNO"));
// crdn.setCrdnStdgNm(infoCrdn.string("CRDN_STDG_NM"));
// crdn.setCrdnRoadNm(infoCrdn.string("CRDN_ROAD_NM"));
// crdn.setCrdnPlc(infoCrdn.string("CRDN_PLC"));
// crdn.setDtlCrdnPlc(infoCrdn.string("DTL_CRDN_PLC"));
// crdn.setTeamId(infoCrdn.string("TEAM_ID"));
// crdn.setVltnId(infoCrdn.string("VLTN_ID"));
// crdn.setCrdnSpareaCd(infoCrdn.string("CRDN_SPAREA_CD"));
// crdn.setCrdnBgngTm(infoCrdn.string("CRDN_BGNG_TM"));
// crdn.setCrdnEndHr(infoCrdn.string("CRDN_END_HR"));
// crdn.setCrdnSn(infoCrdn.string("CRDN_SN"));
// crdn.setGpsX(infoCrdn.string("GPS_X"));
// crdn.setGpsY(infoCrdn.string("GPS_Y"));
// crdn.setMoscX(infoCrdn.string("MOSC_X"));
// crdn.setMoscY(infoCrdn.string("MOSC_Y"));
// crdn.setTowngYn(infoCrdn.string("TOWNG_YN"));
// crdn.setAtchFileCnt(infoCrdn.string("ATCH_FILE_CNT"));
// crdn.setVin(infoCrdn.string("VIN"));
// crdn.setVhclNm(infoCrdn.string("VHCL_NM"));
// crdn.setVhclColor(infoCrdn.string("VHCL_COLOR"));
// crdn.setUseFuelCd(infoCrdn.string("USE_FUEL_CD"));
// crdn.setUsgSeCd(infoCrdn.string("USG_SE_CD"));
// crdn.setMxmmLoadQy(infoCrdn.string("MXMM_LOAD_QY"));
// crdn.setTkcarPsncpaCnt(infoCrdn.string("TKCAR_PSNCPA_CNT"));
// crdn.setCarmdlAsortNm(infoCrdn.string("CARMDL_ASORT_NM"));
// crdn.setCarmdlTypeNm(infoCrdn.string("CARMDL_TYPE_NM"));
// crdn.setCarmdlClsfNm(infoCrdn.string("CARMDL_CLSF_NM"));
// crdn.setErsrYmd(infoCrdn.string("ERSR_YMD"));
// crdn.setFfnlgCarmdlCd(infoCrdn.string("FFNLG_CARMDL_CD"));
// crdn.setParkngPsbltyRsltCd(infoCrdn.string("PARKNG_PSBLTY_RSLT_CD"));
// crdn.setVltnNmtm(infoCrdn.string("VLTN_NMTM"));
// crdn.setOvtimeYn(infoCrdn.string("OVTIME_YN"));
// crdn.setRvwSeCd(infoCrdn.string("RVW_SE_CD"));
// crdn.setRvwPrcsScrnNm(infoCrdn.string("RVW_PRCS_SCRN_NM"));
// crdn.setRvwDt(infoCrdn.string("RVW_DT"));
// crdn.setRvwr(infoCrdn.string("RVWR"));
// crdn.setFfnlgAmt(infoCrdn.string("FFNLG_AMT"));
// crdn.setFfnlgRductRt(infoCrdn.string("FFNLG_RDUCT_RT"));
// crdn.setLevyAmt(infoCrdn.string("LEVY_AMT"));
// crdn.setAdvntceBgngYmd(infoCrdn.string("ADVNTCE_BGNG_YMD"));
// crdn.setAdvntceDudtYmd(infoCrdn.string("ADVNTCE_DUDT_YMD"));
// crdn.setAdvntceLevyAmt(infoCrdn.string("ADVNTCE_LEVY_AMT"));
// crdn.setOpnnSbmsnYn(infoCrdn.string("OPNN_SBMSN_YN"));
// crdn.setEtcCn(infoCrdn.string("ETC_CN"));
// crdn.setLevyId("");
// crdn.setCrdnSttsCd("01");
// crdn.setCrdnSttsChgDt("");
// crdn.setAdtnAmt(infoCrdn.string("0"));
// crdn.setMinusAmt(infoCrdn.string("0"));
// crdn.setRcvmtAmt(infoCrdn.string("0"));
crdn.setBfrCrdnId(infoCrdn.string("CRDN_ID"));
crdn.setDelYn("N");
// 단속 대장 입력
retSuccess = crdn05Service.create(crdn);
if (!retSuccess) {
retMessage = "단속 대장 등록에 실패하였습니다.";
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMessage);
}
// // 단속 대장 자료 복사
// retSuccess = excl03Bean.createCopyCrackdown(excl03);
// if (!retSuccess) {
// retMessage = "재부과 대장에 실패하였습니다.";
//
// // 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
// throw new RuntimeException(retMessage);
// }
// 단속 대장 사진 복사
// 재부과 대장 등록
retSuccess = excl03Bean.createCrackdownReRegistration(excl03);
if (!retSuccess) {
retMessage = "재부과 대장 등록에 실패하였습니다.";
// 예외를 발생시켜서 오류메세지를 보내고 Database 롤백..
throw new RuntimeException(retMessage);
}
// 처리 성공
retSuccess = true;
return retSuccess;
}
@Override

@ -111,7 +111,7 @@ public class Excl01Controller extends ApplicationController {
Map<String, String> retMap = excl01Service.createLevyExclusion(excl01);
return new ModelAndView("jsonView")
.addObject("retCode", retMap.get("retCode"))
.addObject("retSaved", retMap.get("retSaved"))
.addObject("retMessage", retMap.get("retMessage"));
}
@ -127,7 +127,7 @@ public class Excl01Controller extends ApplicationController {
Map<String, String> retMap = excl01Service.updateLevyExclusion(excl01);
return new ModelAndView("jsonView")
.addObject("retCode", retMap.get("retCode"))
.addObject("retSaved", retMap.get("retSaved"))
.addObject("retMessage", retMap.get("retMessage"));
}

@ -236,7 +236,7 @@
<insert id="insertLevyExcl" parameterType="map">/* 부과제외 대장 등록(excl01Mapper.insertLevyExcl) */
<selectKey resultType="string" keyProperty="excl01.levyExclId" keyColumn="NEW_ID" order="BEFORE">
SELECT LPAD(IFNULL(MAX(LEVY_EXCL_ID) + 1, 1), 20, '0') NEW_ID FROM TB_LEVY_EXCL
SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(LEVY_EXCL_ID,5)) + 1, 1) AS INT), 16, '0')) AS NEW_ID FROM TB_LEVY_EXCL
</selectKey>
INSERT
INTO TB_LEVY_EXCL (

@ -8,7 +8,7 @@
============================ -->
<resultMap id="excl03Row" type="cokr.xit.fims.excl.Excl03">
<!-- TB_CRDN_RE 단속 재등록 대장 -->
<!-- TB_CRDN_RE_REG 단속 재등록 대장 -->
<result property="reRegId" column="RE_REG_ID" /> <!-- 재등록 ID -->
<result property="bfrCrdnId" column="BFR_CRDN_ID" /> <!-- 이전 단속 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
@ -61,7 +61,7 @@
INNER JOIN TB_CRDN C ON (A.CRDN_ID = C.CRDN_ID)
</sql>
<select id="selectCrdnReList" parameterType="map" resultType="dataobject">/* 단속 재등록 목록 조회(excl03Mapper.selectCrdnReList) */
<select id="selectCrdnReRegList" parameterType="map" resultType="dataobject">/* 단속 재등록 목록 조회(excl03Mapper.selectCrdnReRegList) */
<include refid="utility.paging-prefix" />
<include refid="selectList" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
@ -132,13 +132,7 @@
FROM TB_CRDN_RE_REG A
</sql>
<select id="selectCrdnReInfo" parameterType="map" resultMap="excl03Row">/* 단속 재등록 대장 객체 가져오기(excl03Mapper.selectCrdnReInfo) */
<include refid="select" />
WHERE A.RE_REG_ID = #{reRegId} /* 재등록 ID */
<include refid="utility.orderBy" />
</select>
<select id="selectCrdnRes" parameterType="map" resultMap="excl03Row">/* 단속 재등록 객체 가져오기(excl03Mapper.selectCrdnRes) */
<select id="selectCrdnReRegs" parameterType="map" resultType="dataobject">/* 단속 재등록 객체 가져오기(excl03Mapper.selectCrdnReRegs) */
<include refid="select" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
<if test="reRegIds != null">
@ -146,11 +140,14 @@
<foreach collection="reRegIds" item="reRegId" separator=","> #{reRegId} </foreach>
)
</if>
<if test="reRegId != null">
AND A.RE_REG_ID = #{reRegId}
</if>
<include refid="utility.orderBy" />
</select>
<insert id="insertCrdnRe" parameterType="map">/* 단속 재등록 등록(excl03Mapper.insertCrdnRe) */
INSERT INTO TB_CRDN_RE (
<insert id="insertCrdnReReg" parameterType="map">/* 단속 재등록 등록(excl03Mapper.insertCrdnReReg) */
INSERT INTO TB_CRDN_RE_REG (
RE_REG_ID /* 재등록 ID */
, BEF_CRDN_ID /* 신규 단속 ID */
, CRDN_ID /* 단속 ID */
@ -178,8 +175,8 @@
)
</insert>
<update id="deleteCrdnRe" parameterType="map">/* 단속 재등록 삭제(excl03Mapper.deleteCrdnRe) */
UPDATE TB_CRDN_RE
<update id="deleteCrdnReReg" parameterType="map">/* 단속 재등록 삭제(excl03Mapper.deleteCrdnReReg) */
UPDATE TB_CRDN_RE_REG
SET DEL_YN = 'Y' /* 삭제 여부 */
, DEL_DT = <include refid="utility.now" /> /* 삭제 일시 */
, DLTR = #{currentUser.id} /* 삭제자 */
@ -188,4 +185,215 @@
AND DEL_YN = 'N' /* 삭제 여부 */
</update>
<select id="selectCrdnInfo" parameterType="map" resultType="dataobject">/* 단속 재등록 객체 가져오기(excl03Mapper.selectCrdnInfo) */
SELECT CRDN_ID
, SGG_CD
, TASK_SE_CD
, CRDN_REG_SE_CD
, CRDN_INPT_SE_CD
, LINK_TBL_NM
, LINK_ID
, RTPYR_ID
, CRDN_SE_CD
, CRDN_YMD
, CRDN_TM
, VHRNO
, CRDN_STDG_NM
, CRDN_ROAD_NM
, CRDN_PLC
, DTL_CRDN_PLC
, TEAM_ID
, VLTN_ID
, CRDN_SPAREA_CD
, CRDN_BGNG_TM
, CRDN_END_HR
, CRDN_SN
, GPS_X
, GPS_Y
, MOSC_X
, MOSC_Y
, TOWNG_YN
, ATCH_FILE_CNT
, VIN
, VHCL_NM
, VHCL_COLOR
, USE_FUEL_CD
, USG_SE_CD
, MXMM_LOAD_QY
, TKCAR_PSNCPA_CNT
, CARMDL_ASORT_NM
, CARMDL_TYPE_NM
, CARMDL_CLSF_NM
, ERSR_YMD
, FFNLG_CARMDL_CD
, PARKNG_PSBLTY_RSLT_CD
, VLTN_NMTM
, OVTIME_YN
, RVW_SE_CD
, RVW_PRCS_SCRN_NM
, RVW_DT
, RVWR
, FFNLG_AMT
, FFNLG_RDUCT_RT
, LEVY_AMT
, ADVNTCE_BGNG_YMD
, ADVNTCE_DUDT_YMD
, ADVNTCE_LEVY_AMT
, OPNN_SBMSN_YN
, ETC_CN
, LEVY_ID
, CRDN_STTS_CD
, CRDN_STTS_CHG_DT
, ADTN_AMT
, MINUS_AMT
, RCVMT_AMT
, BFR_CRDN_ID
, DEL_YN /* 삭제 여부 */
, REG_DT /* 등록 일시 */
, RGTR /* 등록자 */
FROM TB_CRDN
WHERE CRDN_ID = #{crdnId} /* 단속 ID */
</select>
<insert id="insertCopyCrdn" parameterType="map">/* 단속 재등록 등록(excl03Mapper.insertCopyCrdn) */
<selectKey resultType="string" keyProperty="crdnId" keyColumn="NEW_ID" order="BEFORE">
SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(CRDN_ID,5)) + 1, 1) AS INT), 16, '0')) AS NEW_ID FROM TB_CRDN
</selectKey>
INSERT INTO TB_CRDN (
CRDN_ID
, SGG_CD
, TASK_SE_CD
, CRDN_REG_SE_CD
, CRDN_INPT_SE_CD
, LINK_TBL_NM
, LINK_ID
, RTPYR_ID
, CRDN_SE_CD
, CRDN_YMD
, CRDN_TM
, VHRNO
, CRDN_STDG_NM
, CRDN_ROAD_NM
, CRDN_PLC
, DTL_CRDN_PLC
, TEAM_ID
, VLTN_ID
, CRDN_SPAREA_CD
, CRDN_BGNG_TM
, CRDN_END_HR
, CRDN_SN
, GPS_X
, GPS_Y
, MOSC_X
, MOSC_Y
, TOWNG_YN
, ATCH_FILE_CNT
, VIN
, VHCL_NM
, VHCL_COLOR
, USE_FUEL_CD
, USG_SE_CD
, MXMM_LOAD_QY
, TKCAR_PSNCPA_CNT
, CARMDL_ASORT_NM
, CARMDL_TYPE_NM
, CARMDL_CLSF_NM
, ERSR_YMD
, FFNLG_CARMDL_CD
, PARKNG_PSBLTY_RSLT_CD
, VLTN_NMTM
, OVTIME_YN
, RVW_SE_CD
, RVW_PRCS_SCRN_NM
, RVW_DT
, RVWR
, FFNLG_AMT
, FFNLG_RDUCT_RT
, LEVY_AMT
, ADVNTCE_BGNG_YMD
, ADVNTCE_DUDT_YMD
, ADVNTCE_LEVY_AMT
, OPNN_SBMSN_YN
, ETC_CN
, LEVY_ID
, CRDN_STTS_CD
, CRDN_STTS_CHG_DT
, ADTN_AMT
, MINUS_AMT
, RCVMT_AMT
, BFR_CRDN_ID
, DEL_YN /* 삭제 여부 */
, REG_DT /* 등록 일시 */
, RGTR /* 등록자 */
)
SELECT
, #{excl03.crdnId}
, SGG_CD
, TASK_SE_CD
, CRDN_REG_SE_CD
, CRDN_INPT_SE_CD
, LINK_TBL_NM
, LINK_ID
, RTPYR_ID
, CRDN_SE_CD
, CRDN_YMD
, CRDN_TM
, VHRNO
, CRDN_STDG_NM
, CRDN_ROAD_NM
, CRDN_PLC
, DTL_CRDN_PLC
, TEAM_ID
, VLTN_ID
, CRDN_SPAREA_CD
, CRDN_BGNG_TM
, CRDN_END_HR
, CRDN_SN
, GPS_X
, GPS_Y
, MOSC_X
, MOSC_Y
, TOWNG_YN
, ATCH_FILE_CNT
, VIN
, VHCL_NM
, VHCL_COLOR
, USE_FUEL_CD
, USG_SE_CD
, MXMM_LOAD_QY
, TKCAR_PSNCPA_CNT
, CARMDL_ASORT_NM
, CARMDL_TYPE_NM
, CARMDL_CLSF_NM
, ERSR_YMD
, FFNLG_CARMDL_CD
, PARKNG_PSBLTY_RSLT_CD
, VLTN_NMTM
, OVTIME_YN
, RVW_SE_CD
, RVW_PRCS_SCRN_NM
, RVW_DT
, RVWR
, FFNLG_AMT
, FFNLG_RDUCT_RT
, LEVY_AMT
, ADVNTCE_BGNG_YMD
, ADVNTCE_DUDT_YMD
, ADVNTCE_LEVY_AMT
, OPNN_SBMSN_YN
, ETC_CN
, NULL /* 부과 ID */
, '01' /* 단속 상태 코드 */
, <include refid="utility.now" /> /* 단속 상태 변경 일시 */
, '0' /* 가산 금액 */
, '0' /* 감경 금액 */
, '0' /* 수납 금액 */
, CRDN_ID
, 'N' /* 삭제 여부 */
, #{excl03.createdAt} /* 등록 일시 */
, #{excl03.createdBy} /* 등록자 */
FROM TB_CRDN
WHERE CRDN_ID = #{excl03.bfrCrdnId} /* 이전 단속 ID */
</insert>
</mapper>

@ -527,15 +527,15 @@
// 이벤트 설정
setEvent${pageName}();
// 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
// 업무구분 및 화면 초기 설정
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked", true);
fnResetAndChangeBiz${pageName}(defaultBizValue);
// 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
// Dataset 셋팅 - 화면이 열리면서 조회하는 경우 addData 하여 자료를 추가
// ${pageName}Control.addData(${levyExcl});
});

@ -102,9 +102,8 @@
**************************************************************************/
// 저장 callback
${pageName}Control.onSave = (resp) => {
if (resp.retSaved == "true") {
dialog.alert(resp.retMessage);
if (resp.retCode == "001") {
dialog.close(${pageName}Control.prefix + "dialog");
}
}
@ -186,12 +185,12 @@
* script 진입
**************************************************************************/
$(document).ready(function() {
// 화면 초기 설정
initForm${pageName}();
// 이벤트 설정
setEvent${pageName}();
// 화면 초기 설정
initForm${pageName}();
// Dataset 셋팅 - 단건일 경우 setData
${pageName}Control.setData([${levyExclInfo}]);
});

@ -163,7 +163,7 @@
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button class="btn btn-primary" id="btnCreateNotLevy--${pageName}" title="등록" onclick="fnCreate${pageName}();">
<button class="btn btn-primary" id="btnCreate--${pageName}" title="등록" onclick="fnCreate${pageName}();">
등록
</button>
<button class="btn btn-primary" id="btnUpdate--${pageName}" title="수정" onclick="fnModify${pageName}();">
@ -388,7 +388,7 @@
if (el.scrollTop() == 0) return;
if ((el[0].scrollHeight - el.scrollTop() + 17) == el.outerHeight()) {
if ((el[0].scrollHeight - el.scrollTop() + VERTICAL_SCROLL_HEIGHT) <= el.outerHeight()) {
fnSearchList${pageName}(${pageName}Control.query.pageNum + 1);
}
});
@ -452,6 +452,11 @@
}
// 등록
function fnCreate${pageName}() {
}
// 수정
function fnModify${pageName}() {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
@ -485,14 +490,14 @@
// 이벤트 설정
setEvent${pageName}();
// 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
// 업무구분 및 화면 초기 설정
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked", true);
fnResetAndChangeBiz${pageName}(defaultBizValue);
// 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
});
// #sourceURL=excl02010-main.jsp

@ -144,7 +144,7 @@
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button class="btn btn-primary" id="btnCreateNotLevy--${pageName}" title="등록" onclick="fnCreate${pageName}();">
<button class="btn btn-primary" id="btnCreate--${pageName}" title="등록" onclick="fnCreate${pageName}();">
등록
</button>
<button class="btn btn-primary" id="btnRemove--${pageName}" title="삭제" onclick="fnRemove${pageName}();">
@ -250,8 +250,7 @@
, urls : {
load : wctx.url(prefixUrl + "/010/list.do") // 검색
, getInfo : wctx.url(prefixUrl + "/020/info.do") // 등록 및 수정 팝업
, create : wctx.url(prefixUrl + "/020/create.do") // 신규 등록
, update : wctx.url(prefixUrl + "/020/update.do") // 자료 수정
, create : wctx.url(prefixUrl + "/010/create.do") // 신규 등록
, remove : wctx.url(prefixUrl + "/010/remove.do") // 자료 삭제
}
, formats : {
@ -347,7 +346,6 @@
if (el.scrollTop() == 0) return;
// if ((el[0].scrollHeight - el.scrollTop() + 17) == el.outerHeight()) {
if ((el[0].scrollHeight - el.scrollTop() + VERTICAL_SCROLL_HEIGHT) <= el.outerHeight()) {
fnSearchList${pageName}(${pageName}Control.query.pageNum + 1);
}
@ -412,6 +410,26 @@
}
// 등록
function fnCreate${pageName}() {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 부과제외ID 가 없다면.. return
if (crdnId == undefined || crdnId == "") {
return;
}
let params = {
bfrCrdnId : crdnId
};
ajax.post({
url : ${pageName}Control.urls.create
, data : params
// , success : resp => ${pageName}Control.onSave(resp)
});
}
// 삭제
function fnRemove${pageName}() {
dialog.alert({
@ -437,14 +455,15 @@
// 이벤트 설정
setEvent${pageName}();
// 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
// 업무구분 및 화면 초기 설정
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked", true);
fnResetAndChangeBiz${pageName}(defaultBizValue);
// 보안모드
fn_securityModeToggle($("#securityMode--top").is(":checked"));
});
// #sourceURL=excl03010-main.jsp

Loading…
Cancel
Save