표준용어 추가에 따른 컬럼명 변경.

1. TB_LEVY
  INSPY_SN -> ISPY_SN
  RDUCT_SE_CD -> RDCT_SE_CD
  RDUCT_SE_NM -> RDCT_SE_NM
  INSPY_SE_NM -> ISPY_SE_NM
  INSPY_INT -> ISPY_INT
  RDCAMT_PCPTAX -> RDAMT_PCPTAX
  RDCAMT_ADAMT -> RDAMT_ADAMT
2. TB_RDCAMT -> TB_RDAMT
  RDCAMT_ID -> RDAMT_ID
  RDCAMT_PCPTAX -> RDAMT_PCPTAX
  RDCAMT_ADAMT -> RDAMT_ADAMT
  RDCAMT_RTRCN_YN  -> RDAMT_RTRCN_YN
  RDCAMT_RTRCN_YMD -> RDAMT_RTRCN_YMD
  RDCAMT_RTRCN_RSN -> RDAMT_RTRCN_RSN
3. TB_OTPT_FORM_STNG
  OTPT_ARTCL_ORDR -> OTPT_ARTCL_SEQ
  FONT_COLOR -> FONT_COLR
main
jjh 4 months ago
parent 672a9ece33
commit ba0d5156f7

@ -15,7 +15,7 @@ public class ExtrArtclStng extends AbstractEntity {
private String extrArtclNm; //추출항목명
private String extrArtclDscrp; //추출항목설명
private String otptArtclOrdr; //출력항목순서
private String otptArtclSeq; //출력항목순서
private String leftPstn; //좌측 위치
private String topPstn; //상단 위치
private String widthSz; //영역크기 길이

@ -15,7 +15,7 @@ public class OtptArtclStng extends AbstractEntity {
private String otptFormId; //출력항목ID
private String otptArtclNm; //출력항목명
private String otptArtclOrdr; //출력항목순서
private String otptArtclSeq; //출력항목순서
private String leftPstn; //좌측 위치
private String topPstn; //상단 위치
private String widthSz; //영역크기 길이
@ -24,7 +24,7 @@ public class OtptArtclStng extends AbstractEntity {
private String lineChgYn; //줄바꿈여부
private String fontNm; //글꼴명
private String fontSz; //글자크기
private String fontColor; //글자색
private String fontColr; //글자색
private String fontStyle; //글자스타일
}

@ -22,7 +22,7 @@ public class DefaultOtptArtclStng extends PredefinedSet {
this.fontNm="gulimche";
this.fontSz=10;
this.fontColor="BLACK";
this.fontColr="BLACK";
this.fontStyle="FILL";
this.textSort = "left";
@ -85,10 +85,10 @@ public class DefaultOtptArtclStng extends PredefinedSet {
/**
* .
*/
public DefaultOtptArtclStng font(String fontNm, int fontSz, String fontColor, String fontStyle) {
public DefaultOtptArtclStng font(String fontNm, int fontSz, String fontColr, String fontStyle) {
this.fontNm = fontNm;
this.fontSz = fontSz;
this.fontColor = fontColor;
this.fontColr = fontColr;
this.fontStyle = fontStyle;
return this;
}
@ -137,6 +137,6 @@ public class DefaultOtptArtclStng extends PredefinedSet {
private String lineChgYn;
private String fontNm; //글꼴명
private int fontSz; //글자크기
private String fontColor; //글자색
private String fontColr; //글자색
private String fontStyle; //글자스타일
}

@ -81,8 +81,8 @@ public class PDFWriter extends PDF {
contentStream.setRenderingMode(fontStyle);
return this;
}
public PDFWriter setNonStrokingColor(PDColor fontColor) throws IOException {
contentStream.setNonStrokingColor(fontColor);
public PDFWriter setNonStrokingColor(PDColor fontColr) throws IOException {
contentStream.setNonStrokingColor(fontColr);
return this;
}
public PDFWriter newLineAtOffset(float tx, float ty) throws IOException {

@ -258,8 +258,8 @@ public abstract class PDFPrintFormat {
return Integer.compare(int1, int2);
};
Comparator<DataObject> comparator2 = (item1, item2) -> {
int int1 = item1.number("OTPT_ARTCL_ORDR").intValue();
int int2 = item2.number("OTPT_ARTCL_ORDR").intValue();
int int1 = item1.number("OTPT_ARTCL_SEQ").intValue();
int int2 = item2.number("OTPT_ARTCL_SEQ").intValue();
return Integer.compare(int1, int2);
};
otptArtclStngList = otptArtclStngList.stream()
@ -303,12 +303,12 @@ public abstract class PDFPrintFormat {
PDType0Font font = this.getFontType(prototypeStng, otptArtclStng, fontMap);
int fontSz = this.getFontSize(prototypeStng, otptArtclStng);
RenderingMode fontStyle = this.getFontStyle(prototypeStng, otptArtclStng);
PDColor fontColor = this.getFontColor(prototypeStng, otptArtclStng);
PDColor fontColr = this.getFontColor(prototypeStng, otptArtclStng);
String textValue = this.getMappingValue(otptArtclNm,defaultValue,forPost,dataObject,printOption, this.print);
this.writeText(writer, textValue, pstn, size[0], align, lineChgYn
, font, fontSz, fontStyle, fontColor);
, font, fontSz, fontStyle, fontColr);
} else if(prototypeStng.getComponentType().equals("image")) {
@ -854,10 +854,10 @@ public abstract class PDFPrintFormat {
}
public PDColor getFontColor(DefaultOtptArtclStng prototypeStng, DataObject sggStng) {
if(!sggStng.string("FONT_COLOR").equals("")) {
return PDFColors.getColor(sggStng.string("FONT_COLOR"));
if(!sggStng.string("FONT_COLR").equals("")) {
return PDFColors.getColor(sggStng.string("FONT_COLR"));
} else {
return PDFColors.getColor(prototypeStng.getFontColor());
return PDFColors.getColor(prototypeStng.getFontColr());
}
}

@ -14,8 +14,8 @@ import cokr.xit.fims.excl.LevyExcl;
import cokr.xit.fims.excl.LevyExclQuery;
import cokr.xit.fims.excl.dao.LevyExclMapper;
import cokr.xit.fims.levy.dao.LevyMapper;
import cokr.xit.fims.rdca.Rdcamt;
import cokr.xit.fims.rdca.service.bean.RdcamtBean;
import cokr.xit.fims.rdca.Rdamt;
import cokr.xit.fims.rdca.service.bean.RdamtBean;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
@ -45,8 +45,8 @@ public class LevyExclBean extends AbstractBean {
private LevyMapper levyMapper;
/** 감액 대장 정보 Bean */
@Resource(name="rdcamtBean")
private RdcamtBean rdcamtBean;
@Resource(name="rdamtBean")
private RdamtBean rdamtBean;
/** .
* @param req
@ -145,14 +145,14 @@ public class LevyExclBean extends AbstractBean {
// 부과취소(전액감액)일 경우 부과(TB_LEVY)에 감액금액 입력이 필요..
if (levyExcl.getLevyExclSeCd().equals("3")) {
// 감액(TB_RDCAMT) 등록
Rdcamt rdcamt = new Rdcamt();
rdcamt.setLevyId(levyExclInfo.string("LEVY_ID")); // 부과 ID
rdcamt.setRdcamtYmd(levyExcl.getLevyExclYmd()); // 감액 일자
rdcamt.setRdcamtSeCd("02"); // 감액 구분 코드 FIM085 - 02:부과취소
rdcamt.setRdcamtRsnCd(levyExcl.getLevyExclRsnCd()); // 감액 사유 코드
rtnMsg = rdcamtBean.createRdcamt(rdcamt);
// 감액(TB_RDAMT) 등록
Rdamt rdamt = new Rdamt();
rdamt.setLevyId(levyExclInfo.string("LEVY_ID")); // 부과 ID
rdamt.setRdamtYmd(levyExcl.getLevyExclYmd()); // 감액 일자
rdamt.setRdamtSeCd("02"); // 감액 구분 코드 FIM085 - 02:부과취소
rdamt.setRdamtRsnCd(levyExcl.getLevyExclRsnCd()); // 감액 사유 코드
rtnMsg = rdamtBean.createRdamt(rdamt);
if (!rtnMsg.contains("[S]")) {
throw new RuntimeException(rtnMsg.replace("[F]", "")); // 예외를 발생시켜서 DB Rollback
}
@ -166,9 +166,9 @@ public class LevyExclBean extends AbstractBean {
// 표지정보 확인여부가 미확인(0)이면 -> 조회미대상(9) 으로
if (levyExclInfo.string("PRK_PSBLTY_RSLT_CD").equals("0")) { // 주차 가능 결과 코드(FIM034) - 0: 미확인
Crdn crdn = new Crdn();
crdn.setCrdnId(levyExclInfo.string("CRDN_ID")); // 단속 ID
crdn.setPrkPsbltyRsltCd("9"); // 주차 가능 결과 코드(FIM034) 9: 조회미대상
Crdn crdn = new Crdn();
crdn.setCrdnId(levyExclInfo.string("CRDN_ID")); // 단속 ID
crdn.setPrkPsbltyRsltCd("9"); // 주차 가능 결과 코드(FIM034) 9: 조회미대상
rtnNocs = levyExclMapper.updatePrkPsbltyRsltCd(crdn);
if (rtnNocs != 1) {

@ -75,7 +75,7 @@ public class Levy extends AbstractEntity {
/**
*
*/
private String inspySn;
private String ispySn;
/**
*
@ -90,12 +90,12 @@ public class Levy extends AbstractEntity {
/**
*
*/
private String rductSeCd;
private String rdctSeCd;
/**
*
*/
private String inspySeNm;
private String ispySeNm;
/**
*
@ -112,11 +112,6 @@ public class Levy extends AbstractEntity {
*/
private String dudtYmd;
/**
*
*/
private String dudtAftrYmd;
/**
*
*/
@ -135,7 +130,7 @@ public class Levy extends AbstractEntity {
/**
*
*/
private Integer inspyInt;
private Integer ispyInt;
/**
*
@ -150,18 +145,23 @@ public class Levy extends AbstractEntity {
/**
*
*/
private Integer rdcamtPcptax;
private Integer rdamtPcptax;
/**
*
*/
private Integer rdcamtAdamt;
private Integer rdamtAdamt;
/**
*
*/
private Integer sumAmt;
/**
*
*/
private String dudtAftrYmd;
/**
*
*/

@ -27,7 +27,7 @@ public class LevyQuery extends CmmnQuery {
private String schFyr; // 회계연도
private String schLevyNoFrom; // 부과 번호 시작
private String schLevyNoTo; // 부과 번호 종료
private String schRductSeCd; // 감경 구분 코드
private String schRdctSeCd; // 감경 구분 코드
private String schLevyYmdFrom; // 부과 일자 시작
private String schLevyYmdTo; // 부과 일자 종료
private String schRductYmdFrom; // 감경 일자 시작
@ -172,12 +172,12 @@ public class LevyQuery extends CmmnQuery {
return self();
}
public String getSchRductSeCd() {
return ifEmpty(schRductSeCd, () -> null);
public String getSchRdctSeCd() {
return ifEmpty(schRdctSeCd, () -> null);
}
public <T extends LevyQuery> T setSchRductSeCd(String schRductSeCd) {
this.schRductSeCd = schRductSeCd;
public <T extends LevyQuery> T setSchRdctSeCd(String schRdctSeCd) {
this.schRdctSeCd = schRdctSeCd;
return self();
}

@ -114,7 +114,7 @@ public interface LevyMapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
int updateRdcamt(Levy levy);
int updateRdamt(Levy levy);
/** .
* @param params

@ -205,23 +205,23 @@ public class LevyBean extends AbstractBean {
selectLevyNo.setOperItemCd(crdnInfo.string("OPER_ITEM_CD"));
levy.setLevyNo(levyMapper.selectMaxLevyNo(selectLevyNo)); // 부과 번호 (최종 부과번호+1 을 조회 한다.)
levy.setInspySn("00"); // 분납 일련번호
levy.setIspySn("00"); // 분납 일련번호
levy.setLevySeCd("02"); // 부과 구분 코드 FIM040
levy.setUntySeCd("02"); // 통합 구분 코드 FIM072
if (crdnInfo.string("TASK_SE_CD").equals("BPV")) {
levy.setRductSeCd("02"); // 감경 구분 코드 FIM046 - 02 미감경
if (crdnInfo.string("TASK_SE_CD").equals("BPV")) {
levy.setRdctSeCd("02"); // 감경 구분 코드 FIM046 - 02 미감경
} else {
levy.setRductSeCd("01"); // 감경 구분 코드 FIM046 - 01 감경
levy.setRdctSeCd("01"); // 감경 구분 코드 FIM046 - 01 감경
}
levy.setFfnlgAmt(crdnInfo.number("FFNLG_AMT").intValue()); // 과태료 금액
levy.setLevyPcptax(crdnInfo.number("ADVNTCE_AMT").intValue()); // 부과 본세
levy.setSumAmt(crdnInfo.number("ADVNTCE_AMT").intValue()); // 합계 금액
levy.setLevyAdamt(0); // 부과 가산금
levy.setInspyInt(0); // 분납 이자
levy.setRcvmtPcptax(0); // 수납 본세
levy.setRcvmtAdamt(0); // 수납 가산금
levy.setRdcamtPcptax(0); // 감액 본세
levy.setRdcamtAdamt(0); // 감액 가산금
levy.setFfnlgAmt(crdnInfo.number("FFNLG_AMT").intValue()); // 과태료 금액
levy.setLevyPcptax(crdnInfo.number("ADVNTCE_AMT").intValue()); // 부과 본세
levy.setSumAmt(crdnInfo.number("ADVNTCE_AMT").intValue()); // 합계 금액
levy.setLevyAdamt(0); // 부과 가산금
levy.setIspyInt(0); // 분납 이자
levy.setRcvmtPcptax(0); // 수납 본세
levy.setRcvmtAdamt(0); // 수납 가산금
levy.setRdamtPcptax(0); // 감액 본세
levy.setRdamtAdamt(0); // 감액 가산금
levy.setTxtnThing(crdnInfo.string("VHRNO")); // 과세 물건
levy.setMngItem1(crdnInfo.string("CRDN_YMD_TM_MASK")); // 관리 아이템1 - 위반일시
levy.setMngItem2(crdnInfo.string("CRDN_STDG_NM") + " " + crdnInfo.string("CRDN_PLC")); // 관리 아이템2 - 장소
@ -301,7 +301,7 @@ public class LevyBean extends AbstractBean {
* </ul>
*/
public String updateRdcamt(Levy levy) {
int rtnNocs = levyMapper.updateRdcamt(levy);
int rtnNocs = levyMapper.updateRdamt(levy);
if (rtnNocs != 1) {
throw new RuntimeException("부과 대장에 수납금액 정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}

@ -169,7 +169,7 @@ public class RductBean extends AbstractBean {
}
}
int sumAmt = levy.getLevyPcptax() - infoCrdnRduct.number("RCVMT_PCPTAX").intValue() - infoCrdnRduct.number("RDCAMT_PCPTAX").intValue();
int sumAmt = levy.getLevyPcptax() - infoCrdnRduct.number("RCVMT_PCPTAX").intValue() - infoCrdnRduct.number("RDAMT_PCPTAX").intValue();
levy.setSumAmt(sumAmt); // 합계 금액 = 부과 본세 - 수납 본세 - 감액 본세
rtnNocs = rductMapper.updateLevyRduct(levy);
@ -286,7 +286,7 @@ public class RductBean extends AbstractBean {
int sumAmt = levy.getLevyPcptax() + crdnRductInfo.number("LEVY_ADAMT").intValue()
- crdnRductInfo.number("RCVMT_PCPTAX").intValue() - crdnRductInfo.number("RCVMT_ADAMT").intValue()
- crdnRductInfo.number("RDCAMT_PCPTAX").intValue() - crdnRductInfo.number("RDCAMT_ADAMT").intValue();
- crdnRductInfo.number("RDAMT_PCPTAX").intValue() - crdnRductInfo.number("RDAMT_ADAMT").intValue();
levy.setSumAmt(sumAmt); // 합계 금액 = 부과 본세 + 부과 가산금 + 분납 이자 - 수납 본세 - 수납 가산금 - 감액 본세 - 감액 가산금
rtnNocs = rductMapper.updateLevyRduct(levy);

@ -240,7 +240,7 @@ public class Levy01Controller extends ApplicationController {
.addObject("sggCd", fimsUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) // 업무 구분 코드(TASK_SE_CD)
.addObject("FIM010List", commonCodes.get("FIM010")) // 단속 상태 코드(CRDN_STTS_CD)
.addObject("FIM046List", commonCodes.get("FIM046")) // 감경 구분 코드(RDUCT_SE_CD)
.addObject("FIM046List", commonCodes.get("FIM046")) // 감경 구분 코드(RDCT_SE_CD)
;
}
@ -287,18 +287,18 @@ public class Levy01Controller extends ApplicationController {
valueMap.put("분납순번", format.of("INSPY_NO").style(center));
valueMap.put("부과구분", format.of("LEVY_SE_NM").style(center));
valueMap.put("통합구분", format.of("UNTY_SE_NM").style(center));
valueMap.put("감경구분", format.of("RDUCT_SE_NM").style(center));
valueMap.put("감경구분", format.of("RDCT_SE_NM").style(center));
valueMap.put("부과일자", FormatMaker.yyyy_mm_dd(format, "LEVY_YMD").style(dateYMD));
valueMap.put("최초납기일자", FormatMaker.yyyy_mm_dd(format, "FRST_DUDT_YMD").style(dateYMD));
valueMap.put("납기일자", FormatMaker.yyyy_mm_dd(format, "DUDT_YMD").style(dateYMD));
valueMap.put("과태료금액", format.of("FFNLG_AMT").style(numeric));
valueMap.put("부과본세", format.of("LEVY_PCPTAX").style(numeric));
valueMap.put("부과가산금", format.of("LEVY_ADAMT").style(numeric));
valueMap.put("분납이자", format.of("INSPY_INT").style(numeric));
valueMap.put("분납이자", format.of("ISPY_INT").style(numeric));
valueMap.put("수납본세", format.of("RCVMT_PCPTAX").style(numeric));
valueMap.put("수납가산금", format.of("RCVMT_ADAMT").style(numeric));
valueMap.put("감액본세", format.of("RDCAMT_PCPTAX").style(numeric));
valueMap.put("감액가산금", format.of("RDCAMT_ADAMT").style(numeric));
valueMap.put("감액본세", format.of("RDAMT_PCPTAX").style(numeric));
valueMap.put("감액가산금", format.of("RDAMT_ADAMT").style(numeric));
valueMap.put("미납금액", format.of("SUM_AMT").style(numeric));
valueMap.put("과세물건", format.of("TXTN_THING"));
valueMap.put("체납사유", format.of("NPMNT_RSN_NM"));

@ -70,7 +70,7 @@ public class Rcvmt extends AbstractEntity {
/**
*
*/
private String inspySn;
private String ispySn;
/**
*

@ -65,7 +65,7 @@ public class RcvmtQuery extends CmmnQuery {
private String dudtYmd; // 부과(TB_LEVY)_납기 일자
private String levyPcptax; // 부과(TB_LEVY)_부과 본세
private String levyAdamt; // 부과(TB_LEVY)_부과 가산금
private String inspyInt; // 부과(TB_LEVY)_분납 이자
private String ispyInt; // 부과(TB_LEVY)_분납 이자
private String szrYmd; // 부과(TB_LEVY)_압류 일자
private String szrThing; // 부과(TB_LEVY)_압류 물건
private String rpmSzrVhrno; // 부과(TB_LEVY)_대체 압류 자동차등록번호
@ -477,12 +477,12 @@ public class RcvmtQuery extends CmmnQuery {
return self();
}
public String getInspyInt() {
return ifEmpty(inspyInt, () -> null);
public String getIspyInt() {
return ifEmpty(ispyInt, () -> null);
}
public <T extends RcvmtQuery> T setInspyInt(String inspyInt) {
this.inspyInt = inspyInt;
public <T extends RcvmtQuery> T setIspyInt(String ispyInt) {
this.ispyInt = ispyInt;
return self();
}

@ -132,7 +132,7 @@ public class Rcvm01Controller extends ApplicationController {
valueMap.put("세목코드", format.of("TXITM_CD").style(center));
valueMap.put("세목명", format.of("TXITM_NM"));
valueMap.put("부과번호", format.of("LEVY_NO").style(center));
valueMap.put("분납일련번호", format.of("INSPY_SN").style(center));
valueMap.put("분납일련번호", format.of("ISPY_SN").style(center));
valueMap.put("최종본세", format.of("LAST_PCPTAX").style(numeric));
valueMap.put("최종가산금", format.of("LAST_ADAMT").style(numeric));
valueMap.put("수납일련번호", format.of("RCVMT_SN").style(center));

@ -10,11 +10,11 @@ import cokr.xit.foundation.AbstractEntity;
*/
@Getter
@Setter
public class Rdcamt extends AbstractEntity {
public class Rdamt extends AbstractEntity {
/**
* ID
*/
private String rdcamtId;
private String rdamtId;
/**
* ID
@ -34,42 +34,42 @@ public class Rdcamt extends AbstractEntity {
/**
*
*/
private String rdcamtYmd;
private String rdamtYmd;
/**
*
*/
private String rdcamtSeCd;
private String rdamtSeCd;
/**
*
*/
private String rdcamtRsnCd;
private String rdamtRsnCd;
/**
*
*/
private Integer rdcamtPcptax;
private Integer rdamtPcptax;
/**
*
*/
private Integer rdcamtAdamt;
private Integer rdamtAdamt;
/**
*
*/
private String rdcamtRtrcnYn;
private String rdamtRtrcnYn;
/**
*
*/
private String rdcamtRtrcnYmd;
private String rdamtRtrcnYmd;
/**
*
*/
private String rdcamtRtrcnRsn;
private String rdamtRtrcnRsn;
/**
*

@ -12,15 +12,15 @@ import cokr.xit.fims.cmmn.CmmnQuery;
* ================================
* </pre>
*/
public class RdcamtQuery extends CmmnQuery {
public class RdamtQuery extends CmmnQuery {
private static final long serialVersionUID = 1L;
// ID
private String[] rdcamtIds; // 감액 Ids
private String rdcamtId; // 감액 ID
private String[] levyIds; // 부과 Ids
private String levyId; // 부과 ID
private String[] rdamtIds; // 감액 Ids
private String rdamtId; // 감액 ID
private String[] levyIds; // 부과 Ids
private String levyId; // 부과 ID
// 검색 조건
private String schLevyExclYmdFrom; // 부과제외_부과제외 일자 시작
@ -34,21 +34,21 @@ public class RdcamtQuery extends CmmnQuery {
private String delRsn; // 삭제 사유
public String[] getRdcamtIds() {
return ifEmpty(rdcamtIds, () -> null);
public String[] getRdamtIds() {
return ifEmpty(rdamtIds, () -> null);
}
public <T extends RdcamtQuery> T setRdcamtIds(String... rdcamtIds) {
this.rdcamtIds = rdcamtIds;
public <T extends RdamtQuery> T setRdamtIds(String... rdamtIds) {
this.rdamtIds = rdamtIds;
return self();
}
public String getRdcamtId() {
return ifEmpty(rdcamtId, () -> null);
public String getRdamtId() {
return ifEmpty(rdamtId, () -> null);
}
public <T extends RdcamtQuery> T setRdcamtId(String rdcamtId) {
this.rdcamtId = rdcamtId;
public <T extends RdamtQuery> T setRdamtId(String rdamtId) {
this.rdamtId = rdamtId;
return self();
}
@ -56,7 +56,7 @@ public class RdcamtQuery extends CmmnQuery {
return ifEmpty(levyIds, () -> null);
}
public <T extends RdcamtQuery> T setLevyIds(String... levyIds) {
public <T extends RdamtQuery> T setLevyIds(String... levyIds) {
this.levyIds = levyIds;
return self();
}
@ -65,7 +65,7 @@ public class RdcamtQuery extends CmmnQuery {
return ifEmpty(levyId, () -> null);
}
public <T extends RdcamtQuery> T setLevyId(String levyId) {
public <T extends RdamtQuery> T setLevyId(String levyId) {
this.levyId = levyId;
return self();
}
@ -74,7 +74,7 @@ public class RdcamtQuery extends CmmnQuery {
return ifEmpty(schLevyExclYmdFrom, () -> null);
}
public <T extends RdcamtQuery> T setSchLevyExclYmdFrom(String schLevyExclYmdFrom) {
public <T extends RdamtQuery> T setSchLevyExclYmdFrom(String schLevyExclYmdFrom) {
this.schLevyExclYmdFrom = schLevyExclYmdFrom;
return self();
}
@ -83,7 +83,7 @@ public class RdcamtQuery extends CmmnQuery {
return ifEmpty(schLevyExclYmdTo, () -> null);
}
public <T extends RdcamtQuery> T setSchLevyExclYmdTo(String schLevyExclYmdTo) {
public <T extends RdamtQuery> T setSchLevyExclYmdTo(String schLevyExclYmdTo) {
this.schLevyExclYmdTo = schLevyExclYmdTo;
return self();
}
@ -93,7 +93,7 @@ public class RdcamtQuery extends CmmnQuery {
return ifEmpty(callPurpose, () -> null);
}
public <T extends RdcamtQuery> T setCallPurpose(String callPurpose) {
public <T extends RdamtQuery> T setCallPurpose(String callPurpose) {
this.callPurpose = callPurpose;
return self();
}
@ -102,7 +102,7 @@ public class RdcamtQuery extends CmmnQuery {
return ifEmpty(delRsn, () -> null);
}
public <T extends RdcamtQuery> T setDelRsn(String delRsn) {
public <T extends RdamtQuery> T setDelRsn(String delRsn) {
this.delRsn = delRsn;
return self();
}

@ -7,8 +7,8 @@ import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rdca.Rdcamt;
import cokr.xit.fims.rdca.RdcamtQuery;
import cokr.xit.fims.rdca.Rdamt;
import cokr.xit.fims.rdca.RdamtQuery;
/** DAO
*
@ -20,36 +20,36 @@ import cokr.xit.fims.rdca.RdcamtQuery;
* ================================
* </pre>
*/
@Mapper("rdcamtMapper")
public interface RdcamtMapper extends AbstractMapper {
@Mapper("rdamtMapper")
public interface RdamtMapper extends AbstractMapper {
/** .<br />
* @param req
* @return
*/
List<DataObject> selectRdcamtList(RdcamtQuery req);
List<DataObject> selectRdamtList(RdamtQuery req);
/** .
* @param req
* @return
*/
List<DataObject> selectRdcamts(RdcamtQuery req);
List<DataObject> selectRdamts(RdamtQuery req);
/** 1 .
* @param req
* @return
*/
default DataObject selectRdcamtInfo(RdcamtQuery req) {
default DataObject selectRdamtInfo(RdamtQuery req) {
// 삭제 여부 확인
if (req.getDelYn() == null) {
req.setDelYn("N");
}
// 기본 정렬
if (req.getOrderBy() == null) {
req.setOrderBy("R.RDCAMT_ID DESC");
req.setOrderBy("R.RDAMT_ID DESC");
}
List<DataObject> rdcamts = selectRdcamts(req);
List<DataObject> rdcamts = selectRdamts(req);
return !rdcamts.isEmpty() ? rdcamts.get(0) : null;
}
@ -61,37 +61,37 @@ public interface RdcamtMapper extends AbstractMapper {
* </ul>
* @return
*/
int insertRdcamt(Map<String, Object> params);
int insertRdamt(Map<String, Object> params);
/** .
* @param rdcamt
* @param rdamt
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insert(Rdcamt rdcamt) {
return rdcamt != null && insertRdcamt(params().set("rdcamt", rdcamt)) == 1;
default boolean insert(Rdamt rdamt) {
return rdamt != null && insertRdamt(params().set("rdamt", rdamt)) == 1;
}
/** .
* @param params
* <ul><li>"rdcamt" - </li>
* <ul><li>"rdamt" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateRdcamt(Map<String, Object> params);
int updateRdamt(Map<String, Object> params);
/** .
* @param rdcamt
* @param rdamt
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean update(Rdcamt rdcamt) {
return rdcamt != null && updateRdcamt(params().set("rdcamt", rdcamt)) == 1;
default boolean update(Rdamt rdamt) {
return rdamt != null && updateRdamt(params().set("rdamt", rdamt)) == 1;
}
/** .
@ -101,17 +101,17 @@ public interface RdcamtMapper extends AbstractMapper {
* </ul>
* @return
*/
int deleteRdcamt(Map<String, ?> params);
int deleteRdamt(Map<String, ?> params);
/** .
* @param rdcamt
* @param rdamt
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean delete(Rdcamt rdcamt) {
return rdcamt != null && deleteRdcamt(params().set("rdcamt", rdcamt)) == 1;
default boolean delete(Rdamt rdamt) {
return rdamt != null && deleteRdamt(params().set("rdamt", rdamt)) == 1;
}
}

@ -3,8 +3,8 @@ package cokr.xit.fims.rdca.service;
import java.util.List;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rdca.Rdcamt;
import cokr.xit.fims.rdca.RdcamtQuery;
import cokr.xit.fims.rdca.Rdamt;
import cokr.xit.fims.rdca.RdamtQuery;
/** .
*
@ -16,25 +16,25 @@ import cokr.xit.fims.rdca.RdcamtQuery;
* ================================
* </pre>
*/
public interface RdcamtService {
public interface RdamtService {
/** .
* @param req
* @return
*/
List<DataObject> getRdcamtList(RdcamtQuery req);
List<DataObject> getRdamtList(RdamtQuery req);
/** .
* @param req
* @return
*/
List<DataObject> getRdcamts(RdcamtQuery req);
List<DataObject> getRdamts(RdamtQuery req);
/** 1 .<br />
* @param req
* @return
*/
DataObject getRdcamtInfo(RdcamtQuery req);
DataObject getRdamtInfo(RdamtQuery req);
/** .
* @param rdcamt
@ -43,7 +43,7 @@ public interface RdcamtService {
* <li> false</li>
* </ul>
*/
String createRdcamt(Rdcamt rdcamt);
String createRdamt(Rdamt rdamt);
/** .
* @param rdcamt
@ -52,7 +52,7 @@ public interface RdcamtService {
* <li> false</li>
* </ul>
*/
String updateRdcamt(Rdcamt rdcamt);
String updateRdamt(Rdamt rdamt);
/** .
* @param rdcamt
@ -61,6 +61,6 @@ public interface RdcamtService {
* <li> false</li>
* </ul>
*/
String removeRdcamt(Rdcamt rdcamt);
String removeRdamt(Rdamt rdamt);
}

@ -10,9 +10,9 @@ import cokr.xit.fims.cmmn.CmmnUtil;
import cokr.xit.fims.levy.Levy;
import cokr.xit.fims.levy.LevyQuery;
import cokr.xit.fims.levy.dao.LevyMapper;
import cokr.xit.fims.rdca.Rdcamt;
import cokr.xit.fims.rdca.RdcamtQuery;
import cokr.xit.fims.rdca.dao.RdcamtMapper;
import cokr.xit.fims.rdca.Rdamt;
import cokr.xit.fims.rdca.RdamtQuery;
import cokr.xit.fims.rdca.dao.RdamtMapper;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
@ -26,12 +26,12 @@ import cokr.xit.foundation.data.DataObject;
* ================================
* </pre>
*/
@Component("rdcamtBean")
public class RdcamtBean extends AbstractBean {
@Component("rdamtBean")
public class RdamtBean extends AbstractBean {
/** 감액 대장 정보 DAO */
@Resource(name = "rdcamtMapper")
private RdcamtMapper rdcamtMapper;
@Resource(name = "rdamtMapper")
private RdamtMapper rdamtMapper;
/** 부과 대장 정보 DAO */
@Resource(name = "levyMapper")
@ -41,7 +41,7 @@ public class RdcamtBean extends AbstractBean {
* @param req
* @return
*/
public List<DataObject> getRdcamtList(RdcamtQuery req) {
public List<DataObject> getRdamtList(RdamtQuery req) {
// 삭제 여부 확인
if (req.getDelYn() == null) {
req.setDelYn("N");
@ -55,39 +55,39 @@ public class RdcamtBean extends AbstractBean {
}
}
return rdcamtMapper.selectRdcamtList(req);
return rdamtMapper.selectRdamtList(req);
}
/** .
* @param req
* @return
*/
public List<DataObject> getRdcamts(RdcamtQuery req) {
public List<DataObject> getRdamts(RdamtQuery req) {
// 삭제 여부 확인
if (req.getDelYn() == null) {
req.setDelYn("N");
}
if (req.getOrderBy() == null) {
req.setOrderBy("R.RDCAMT_ID DESC");
req.setOrderBy("R.RDAMT_ID DESC");
}
return rdcamtMapper.selectRdcamts(req);
return rdamtMapper.selectRdamts(req);
}
/** 1 .
* @param req
* @return
*/
public DataObject getRdcamtInfo(RdcamtQuery req) {
DataObject rdcamtInfo = new DataObject();
public DataObject getRdamtInfo(RdamtQuery req) {
DataObject rdamtInfo = new DataObject();
// if (req.getCallPurpose().equals("create")) {
// rdcamtInfo = rdcamtMapper.selectCrdnInfo(req);
// } else {
rdcamtInfo = rdcamtMapper.selectRdcamtInfo(req);
rdamtInfo = rdamtMapper.selectRdamtInfo(req);
// }
return rdcamtInfo;
return rdamtInfo;
}
/** .
@ -97,60 +97,60 @@ public class RdcamtBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public String createRdcamt(Rdcamt rdcamt) {
public String createRdamt(Rdamt rdamt) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
int rtnNocs = -1; // 처리 결과 건수
String rtnMsg = ""; // 처리 결과 메시지
// 부과 ID로 부과 정보 조회
DataObject levyInfo = levyMapper.selectLevyAmt(new LevyQuery().setLevyId(rdcamt.getLevyId()));
DataObject levyInfo = levyMapper.selectLevyAmt(new LevyQuery().setLevyId(rdamt.getLevyId()));
// 부과(TB_LEVY) 대장 정보를 수정한다.
Levy levy = new Levy();
levy.setLevyId(levyInfo.string("LEVY_ID")); // 부과 ID
Levy levy = new Levy();
levy.setLevyId(levyInfo.string("LEVY_ID")); // 부과 ID
if ("02,03,04".contains(rdcamt.getRdcamtSeCd())) { // 02:부과취소, 03:이의신청수용, 04:법원이송
if ("02,03,04".contains(rdamt.getRdamtSeCd())) { // 02:부과취소, 03:이의신청수용, 04:법원이송
// 수납금액이 있으면 오류 발생
if (levyInfo.number("RCVMT_PCPTAX").intValue() + levyInfo.number("RCVMT_ADAMT").intValue() > 0) {
rtnMsg = "[F] 수납금액이 존재합니다.<br>부분 감액으로 진행하시기 바랍니다."; // 예외를 발생시켜서 DB Rollback
return rtnMsg;
}
levy.setRdcamtPcptax(levyInfo.number("LEVY_PCPTAX").intValue()); // 감액 본세
levy.setRdcamtAdamt(levyInfo.number("LEVY_ADAMT").intValue()); // 감액 가산금
levy.setSumAmt(0); // 합계 금액
levy.setDudtAftrAmt(0); // 납기 후 금액
levy.setRdamtPcptax(levyInfo.number("LEVY_PCPTAX").intValue()); // 감액 본세
levy.setRdamtAdamt(levyInfo.number("LEVY_ADAMT").intValue()); // 감액 가산금
levy.setSumAmt(0); // 합계 금액
levy.setDudtAftrAmt(0); // 납기 후 금액
} else {
levy.setRdcamtPcptax(levyInfo.number("RDCAMT_PCPTAX").intValue() + rdcamt.getRdcamtPcptax()); // 감액 본세
levy.setRdcamtAdamt(levyInfo.number("RDCAMT_ADAMT").intValue() + rdcamt.getRdcamtAdamt()); // 감액 가산금
levy.setSumAmt(levyInfo.number("SUM_AMT").intValue() - rdcamt.getRdcamtPcptax() - rdcamt.getRdcamtAdamt()); // 합계 금액
if (levy.getSumAmt() > 0) {
levy.setDudtAftrAmt(levyInfo.number("DUDT_AFTR_AMT").intValue() - rdcamt.getRdcamtPcptax() - rdcamt.getRdcamtAdamt()); // 납기 후 금액
} else {
levy.setDudtAftrAmt(0);
}
levy.setRdamtPcptax(levyInfo.number("RDAMT_PCPTAX").intValue() + rdamt.getRdamtPcptax()); // 감액 본세
levy.setRdamtAdamt(levyInfo.number("RDAMT_ADAMT").intValue() + rdamt.getRdamtAdamt()); // 감액 가산금
levy.setSumAmt(levyInfo.number("SUM_AMT").intValue() - rdamt.getRdamtPcptax() - rdamt.getRdamtAdamt()); // 합계 금액
if (levy.getSumAmt() > 0) {
levy.setDudtAftrAmt(levyInfo.number("DUDT_AFTR_AMT").intValue() - rdamt.getRdamtPcptax() - rdamt.getRdamtAdamt()); // 납기 후 금액
} else {
levy.setDudtAftrAmt(0);
}
}
rtnNocs = levyMapper.updateRdcamt(levy);
rtnNocs = levyMapper.updateRdamt(levy);
if (rtnNocs != 1) {
throw new RuntimeException("부과 대장의 감액 금액 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
// 감액(TB_RDCAMT) 대장 정보를 등록한다.
if ("02,03,04".contains(rdcamt.getRdcamtSeCd())) { // 02:부과취소, 03:이의신청수용, 04:법원이송
rdcamt.setLastPcptax(levyInfo.number("LEVY_PCPTAX").intValue());
rdcamt.setLastAdamt(levyInfo.number("LEVY_ADAMT").intValue());
rdcamt.setRdcamtPcptax(levyInfo.number("LEVY_PCPTAX").intValue());
rdcamt.setRdcamtAdamt(levyInfo.number("LEVY_ADAMT").intValue());
// 감액(TB_RDAMT) 대장 정보를 등록한다.
if ("02,03,04".contains(rdamt.getRdamtSeCd())) { // 02:부과취소, 03:이의신청수용, 04:법원이송
rdamt.setLastPcptax(levyInfo.number("LEVY_PCPTAX").intValue());
rdamt.setLastAdamt(levyInfo.number("LEVY_ADAMT").intValue());
rdamt.setRdamtPcptax(levyInfo.number("LEVY_PCPTAX").intValue());
rdamt.setRdamtAdamt(levyInfo.number("LEVY_ADAMT").intValue());
} else {
rdcamt.setLastPcptax(levyInfo.number("LAST_PCPTAX").intValue());
rdcamt.setLastAdamt(levyInfo.number("LAST_ADAMT").intValue());
rdcamt.setRdcamtPcptax(rdcamt.getRdcamtPcptax());
rdcamt.setRdcamtAdamt(rdcamt.getRdcamtAdamt());
rdamt.setLastPcptax(levyInfo.number("LAST_PCPTAX").intValue());
rdamt.setLastAdamt(levyInfo.number("LAST_ADAMT").intValue());
rdamt.setRdamtPcptax(rdamt.getRdamtPcptax());
rdamt.setRdamtAdamt(rdamt.getRdamtAdamt());
}
rtnScs = rdcamtMapper.insert(rdcamt);
rtnScs = rdamtMapper.insert(rdamt);
if (!rtnScs) {
throw new RuntimeException("감액 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -165,13 +165,13 @@ public class RdcamtBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public String updateRdcamt(Rdcamt rdcamt) {
public String updateRdamt(Rdamt rdamt) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
// 감액(TB_RDCAMT) 대장 정보를 수정한다.
rtnScs = rdcamtMapper.update(rdcamt);
// 감액(TB_RDAMT) 대장 정보를 수정한다.
rtnScs = rdamtMapper.update(rdamt);
if (!rtnScs) {
throw new RuntimeException("감액 대장 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -188,13 +188,13 @@ public class RdcamtBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public String removeRdcamt(Rdcamt rdcamt) {
public String removeRdamt(Rdamt rdamt) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
// 감액(TB_RDCAMT) 대장 정보를 삭제한다.
rtnScs = rdcamtMapper.delete(rdcamt);
// 감액(TB_RDAMT) 대장 정보를 삭제한다.
rtnScs = rdamtMapper.delete(rdamt);
if (!rtnScs) {
throw new RuntimeException("감액 정보 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}

@ -0,0 +1,62 @@
package cokr.xit.fims.rdca.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rdca.Rdamt;
import cokr.xit.fims.rdca.RdamtQuery;
import cokr.xit.fims.rdca.service.RdamtService;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2024-02-01 JoJH
* ================================
* </pre>
*/
@Service("rdamtService")
public class RdamtServiceBean extends AbstractServiceBean implements RdamtService {
/** 감액 대장 정보 Bean */
@Resource(name = "rdamtBean")
private RdamtBean rdamtBean;
@Override
public List<DataObject> getRdamtList(RdamtQuery req) {
return rdamtBean.getRdamtList(req);
}
@Override
public List<DataObject> getRdamts(RdamtQuery req) {
return rdamtBean.getRdamts(req);
}
@Override
public DataObject getRdamtInfo(RdamtQuery req) {
return rdamtBean.getRdamtInfo(req);
}
@Override
public String createRdamt(Rdamt rdamt) {
return rdamtBean.createRdamt(rdamt);
}
@Override
public String updateRdamt(Rdamt rdamt) {
return rdamtBean.updateRdamt(rdamt);
}
@Override
public String removeRdamt(Rdamt rdamt) {
return rdamtBean.removeRdamt(rdamt);
}
}

@ -1,62 +0,0 @@
package cokr.xit.fims.rdca.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rdca.Rdcamt;
import cokr.xit.fims.rdca.RdcamtQuery;
import cokr.xit.fims.rdca.service.RdcamtService;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2024-02-01 JoJH
* ================================
* </pre>
*/
@Service("rdcamtService")
public class RdcamtServiceBean extends AbstractServiceBean implements RdcamtService {
/** 감액 대장 정보 Bean */
@Resource(name = "rdcamtBean")
private RdcamtBean rdcamtBean;
@Override
public List<DataObject> getRdcamtList(RdcamtQuery req) {
return rdcamtBean.getRdcamtList(req);
}
@Override
public List<DataObject> getRdcamts(RdcamtQuery req) {
return rdcamtBean.getRdcamts(req);
}
@Override
public DataObject getRdcamtInfo(RdcamtQuery req) {
return rdcamtBean.getRdcamtInfo(req);
}
@Override
public String createRdcamt(Rdcamt rdcamt) {
return rdcamtBean.createRdcamt(rdcamt);
}
@Override
public String updateRdcamt(Rdcamt rdcamt) {
return rdcamtBean.updateRdcamt(rdcamt);
}
@Override
public String removeRdcamt(Rdcamt rdcamt) {
return rdcamtBean.removeRdcamt(rdcamt);
}
}

@ -20,9 +20,9 @@ import cokr.xit.fims.base.FimsUser;
import cokr.xit.fims.cmmn.service.bean.StngBean;
import cokr.xit.fims.cmmn.xls.FormatMaker;
import cokr.xit.fims.cmmn.xls.StyleMaker;
import cokr.xit.fims.rdca.Rdcamt;
import cokr.xit.fims.rdca.RdcamtQuery;
import cokr.xit.fims.rdca.service.RdcamtService;
import cokr.xit.fims.rdca.Rdamt;
import cokr.xit.fims.rdca.RdamtQuery;
import cokr.xit.fims.rdca.service.RdamtService;
import cokr.xit.foundation.data.DataObject;
/**
@ -51,15 +51,15 @@ public class Rdca01Controller extends ApplicationController {
}
/**감액 대장 서비스*/
@Resource(name = "rdcamtService")
private RdcamtService rdcamtService;
@Resource(name = "rdamtService")
private RdamtService rdamtService;
@Resource(name = "stngBean")
private StngBean stngBean;
/** (rdcamt/rdcamt-main) .
* {@link #getRdcamtList(RdcamtQuery) } .
* @return /rdcamt/rdcamt-main
/** (rdamt/rdamt-main) .
* {@link #getRdamtList(RdamtQuery) } .
* @return /rdcamt/rdamt-main
*/
public ModelAndView reducedAmountMain() {
ModelAndView mav = new ModelAndView("fims/rdca/rdca01010-main");
@ -74,31 +74,31 @@ public class Rdca01Controller extends ApplicationController {
return mav
.addObject("pageName", "rdca01010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("infoPrefix", "rdcamt") // prefix
.addObject("infoPrefix", "rdamt") // prefix
.addObject("sggCd", fimsUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054")))
.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("FIM085List", commonCodes.get("FIM085")) // 감액 구분 코드(RDCAMT_SE_CD)
.addObject("FIM085List", commonCodes.get("FIM085")) // 감액 구분 코드(RDAMT_SE_CD)
;
}
/** .<br />
* {@link RdcamtService#getRdcamtList(RdcamtQuery)}
* {@link RdamtService#getRdamtList(RdamtQuery)}
* @param req
* @return jsonView
* <pre><code> {
* "rdcamtList": [ ]
* "rdcamtStart":
* "rdcamtFetch":
* "rdcamtTotal":
* "rdamtList": [ ]
* "rdamtStart":
* "rdamtFetch":
* "rdamtTotal":
* }</code></pre>
*/
public ModelAndView getReducedAmountList(RdcamtQuery req) {
public ModelAndView getReducedAmountList(RdamtQuery req) {
if (!"xls".equals(req.getDownload())) {
List<?> result = rdcamtService.getRdcamtList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "rdcamt");
List<?> result = rdamtService.getRdamtList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "rdamt");
} else {
// 현재 날짜 구하기
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
@ -113,7 +113,7 @@ public class Rdca01Controller extends ApplicationController {
CellStyle dateYMD = format.yyyy_mm_dd();
CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
List<DataObject> list = rdcamtService.getRdcamtList(req.setFetchSize(0));
List<DataObject> list = rdamtService.getRdamtList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("업무구분", format.of("TASK_SE_NM").style(center));
@ -158,15 +158,15 @@ public class Rdca01Controller extends ApplicationController {
}
/** .
* @param rdcamt
* @param rdamt
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
public ModelAndView createReducedAmount(Rdcamt rdcamt) {
public ModelAndView createReducedAmount(Rdamt rdamt) {
boolean saved = false;
String rtnMsg = rdcamtService.createRdcamt(rdcamt);
String rtnMsg = rdamtService.createRdamt(rdamt);
if (rtnMsg.contains("[S]")) {
saved = true;
@ -180,15 +180,15 @@ public class Rdca01Controller extends ApplicationController {
}
/** .
* @param rdcamt
* @param rdamt
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
public ModelAndView updateReducedAmount(Rdcamt rdcamt) {
public ModelAndView updateReducedAmount(Rdamt rdamt) {
boolean saved = false;
String rtnMsg = rdcamtService.updateRdcamt(rdcamt);
String rtnMsg = rdamtService.updateRdamt(rdamt);
if (rtnMsg.contains("[S]")) {
saved = true;
@ -202,16 +202,16 @@ public class Rdca01Controller extends ApplicationController {
}
/** .
* @param rdcamtIds
* @param rdamtIds
* @return jsonView
* <pre><code> {
* "affected":
* "saved": true, false
* }</code></pre>
*/
public ModelAndView removeReducedAmount(Rdcamt rdcamt) {
public ModelAndView removeReducedAmount(Rdamt rdamt) {
boolean saved = false;
String rtnMsg = rdcamtService.removeRdcamt(rdcamt);
String rtnMsg = rdamtService.removeRdamt(rdamt);
if (rtnMsg.contains("[S]")) {
saved = true;

@ -401,23 +401,23 @@ public class SndngDtlBean extends AbstractBean {
levy.setTxitmCd(a03.getRprsTxmCd()); // 세목 코드
levy.setOperItemCd(a03.getOperItemCd()); // 운영 항목 코드
levy.setLevyNo(a03.getRsveItem1().substring(23, 29)); // 부과 번호
levy.setInspySn(a03.getRsveItem1().substring(29, 31)); // 분납 번호
levy.setLevySeCd("02"); // 부과 구분 코드 FIM040
levy.setUntySeCd("02"); // 통합 구분 코드 FIM072
levy.setRductSeCd("01"); // 감경 구분 코드 FIM046 - 01 감경
levy.setIspySn(a03.getRsveItem1().substring(29, 31)); // 분납 번호
levy.setLevySeCd("02"); // 부과 구분 코드 FIM040
levy.setUntySeCd("02"); // 통합 구분 코드 FIM072
levy.setRdctSeCd("01"); // 감경 구분 코드 FIM046 - 01 감경
levy.setLevyYmd(a03.getOpnSbmsnTermBgngYmd()); // 부과 일자
levy.setFrstDudtYmd(a03.getOpnSbmsnTermEndYmd()); // 최초 납기 일자
levy.setDudtYmd(a03.getOpnSbmsnTermEndYmd()); // 납기 일자
levy.setFfnlgAmt(Integer.parseInt(a03.getFinScrgAmt())); // 과태료 금액
levy.setLevyPcptax(Integer.parseInt(a03.getFinScrgAmt()) - Integer.parseInt(a03.getBfRdtAmt())); // 부과 본세
levy.setLevyAdamt(0); // 부과 가산금
levy.setInspyInt(0); // 분납 이자
levy.setRcvmtPcptax(0); // 수납 본세
levy.setRcvmtAdamt(0); // 수납 가산금
levy.setRdcamtPcptax(0); // 감액 본세
levy.setRdcamtAdamt(0); // 감액 가산금
levy.setSumAmt(Integer.parseInt(a03.getFinScrgAmt()) - Integer.parseInt(a03.getBfRdtAmt())); // 합계 금액
levy.setDudtAftrAmt(0); // 납기 후 금액
levy.setLevyAdamt(0); // 부과 가산금
levy.setIspyInt(0); // 분납 이자
levy.setRcvmtPcptax(0); // 수납 본세
levy.setRcvmtAdamt(0); // 수납 가산금
levy.setRdamtPcptax(0); // 감액 본세
levy.setRdamtAdamt(0); // 감액 가산금
levy.setSumAmt(Integer.parseInt(a03.getFinScrgAmt()) - Integer.parseInt(a03.getBfRdtAmt())); // 합계 금액
levy.setDudtAftrAmt(0); // 납기 후 금액
// levy.setTxtnThing(a03.getVhrno()); // 과세 물건 -> 값이 넘어오지 않는다.. 차세대 연계 확인 요청이 필요하다.
levy.setTxtnThing(crdnLevyInfo.string("VHRNO")); // 과세 물건
levy.setMngItem1(a03.getMngItemCn1()); // 관리 아이템1

@ -242,7 +242,7 @@ public class Sprt01Controller extends ApplicationController {
valueMap.put("사전통지기한" , FormatMaker.yyyy_mm_dd(format, "ADVNTCE_DUDT_YMD").style(dateYMD));
valueMap.put("견인여부" , format.of("TOWNG_YN_NM").style(center));
valueMap.put("기타사항" , format.of("ETC_CN"));
valueMap.put("감경구분" , format.of("RDUCT_SE_NM").style(center));
valueMap.put("감경구분" , format.of("RDCT_SE_NM").style(center));
valueMap.put("부과일자" , FormatMaker.yyyy_mm_dd(format, "LEVY_YMD").style(dateYMD));
valueMap.put("납기일자" , FormatMaker.yyyy_mm_dd(format, "DUDT_YMD").style(dateYMD));
valueMap.put("미납금액" , format.of("MINAP_AMT").style(numeric));

@ -93,18 +93,18 @@ SELECT OTPT_FORM_ID
, HEIGHT_SZ
, FONT_NM
, FONT_SZ
, FONT_COLOR
, FONT_COLR
, FONT_STYLE
, TEXT_SORT
, LINE_CHG_YN
, OTPT_ARTCL_ORDR
, OTPT_ARTCL_SEQ
FROM TB_OTPT_FORM_STNG
WHERE USE_YN = 'Y'
AND SGG_CD = #{sggCd}
AND TASK_SE_CD = #{taskSeCd}
AND SNDNG_SE_CD = #{sndngSeCd}
AND PAPER_SE_CD = #{paperSeCd}
ORDER BY OTPT_ARTCL_ORDR
ORDER BY OTPT_ARTCL_SEQ
</select>
<insert id="insertArtclStng" parameterType="cokr.xit.fims.cmmn.OtptArtclStng">
@ -132,9 +132,9 @@ INSERT
, LINE_CHG_YN
, FONT_NM
, FONT_SZ
, FONT_COLOR
, FONT_COLR
, FONT_STYLE
, OTPT_ARTCL_ORDR
, OTPT_ARTCL_SEQ
, USE_YN
, REG_DT
, RGTR
@ -153,9 +153,9 @@ INSERT
, #{lineChgYn}
, #{fontNm}
, #{fontSz}
, #{fontColor}
, #{fontColr}
, #{fontStyle}
, #{otptArtclOrdr}
, #{otptArtclSeq}
, 'Y'
, <include refid="utility.now" />
, #{createdBy}
@ -174,9 +174,9 @@ UPDATE TB_OTPT_FORM_STNG
, LINE_CHG_YN = #{lineChgYn}
, FONT_NM = #{fontNm}
, FONT_SZ = #{fontSz}
, FONT_COLOR = #{fontColor}
, FONT_COLR = #{fontColr}
, FONT_STYLE = #{fontStyle}
, OTPT_ARTCL_ORDR = #{otptArtclOrdr}
, OTPT_ARTCL_SEQ = #{otptArtclSeq}
, MDFCN_DT = <include refid="utility.now" />
, MDFR = #{modifiedBy}
WHERE OTPT_FORM_ID = #{otptFormId}

@ -44,7 +44,7 @@ SELECT C.CRDN_ID <!-- 단속 ID -->
, (CONCAT(L.FYR, '-', L.LEVY_NO)) AS GOJI_NO <!-- 고지 번호 -->
, L.EPAYNO <!-- 전자납부번호 -->
, L.VR_ACTNO <!-- 가상계좌번호 -->
, (L.LEVY_PCPTAX + L.LEVY_ADAMT + L.INSPY_INT) AS LEVY_AMT <!-- 부과 금액 -->
, (L.LEVY_PCPTAX + L.LEVY_ADAMT) AS LEVY_AMT <!-- 부과 금액 -->
, L.DUDT_YMD
, L.RCVMT_YMD
, C.CRDN_STTS_CD <!-- 단속 상태 코드 -->

@ -10,7 +10,7 @@
<resultMap id="levyExclRow" type="cokr.xit.fims.excl.LevyExcl"> <!-- 부과제외 대장 -->
<result property="levyExclId" column="LEVY_EXCL_ID" /> <!-- 부과 제외 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="rdcamtId" column="RDCAMT_ID" /> <!-- 감액 ID -->
<result property="rdamtId" column="RDAMT_ID" /> <!-- 감액 ID -->
<result property="levyExclYmd" column="LEVY_EXCL_YMD" /> <!-- 부과제외 일자 -->
<result property="levyExclSeCd" column="LEVY_EXCL_SE_CD" /> <!-- 부과제외 구분 코드 -->
<result property="levyExclSeNm" column="LEVY_EXCL_SE_NM" /> <!-- 부과제외 구분 명 -->

@ -20,25 +20,25 @@
<result property="operItemCd" column="OPER_ITEM_CD" /> <!-- 운영 항목 코드 -->
<result property="spclBizCd" column="SPCL_BIZ_CD" /> <!-- 특별회계 사업 코드 -->
<result property="levyNo" column="LEVY_NO" /> <!-- 부과 번호 -->
<result property="inspySn" column="INSPY_SN" /> <!-- 분납 일련번호 -->
<result property="levySeCd" column="LEVY_SE_CD" /> <!-- 부과 구분 코드 -->
<result property="untySeCd" column="UNTY_SE_CD" /> <!-- 통합 구분 코드 -->
<result property="rductSeCd" column="RDUCT_SE_CD" /> <!-- 감경 구분 코드 -->
<result property="inspySeNm" column="INSPY_SE_NM" /> <!-- 분납 구분 명 -->
<result property="levyYmd" column="LEVY_YMD" /> <!-- 부과 일자 -->
<result property="frstDudtYmd" column="FRST_DUDT_YMD" /> <!-- 최초 납기 일자 -->
<result property="dudtYmd" column="DUDT_YMD" /> <!-- 납기 일자 -->
<result property="dudtAftrYmd" column="DUDT_AFTR_YMD" /> <!-- 납기 후 일자 -->
<result property="ffnlgAmt" column="FFNLG_AMT" /> <!-- 과태료 금액 -->
<result property="levyPcptax" column="LEVY_PCPTAX" /> <!-- 부과 본세 -->
<result property="levyAdamt" column="LEVY_ADAMT" /> <!-- 부과 가산금 -->
<result property="inspyInt" column="INSPY_INT" /> <!-- 분납 이자 -->
<result property="rcvmtPcptax" column="RCVMT_PCPTAX" /> <!-- 수납 본세 -->
<result property="rcvmtAdamt" column="RCVMT_ADAMT" /> <!-- 수납 가산금 -->
<result property="rdcamtPcptax" column="RDCAMT_PCPTAX" /> <!-- 감액 본세 -->
<result property="rdcamtAdamt" column="RDCAMT_ADAMT" /> <!-- 감액 가산금 -->
<result property="sumAmt" column="SUM_AMT" /> <!-- 합계 금액 -->
<result property="dudtAftrAmt" column="DUDT_AFTR_AMT" /> <!-- 납기 후 금액 -->
<result property="ispySn" column="ISPY_SN" /> <!-- 분납 일련번호 -->
<result property="levySeCd" column="LEVY_SE_CD" /> <!-- 부과 구분 코드 -->
<result property="untySeCd" column="UNTY_SE_CD" /> <!-- 통합 구분 코드 -->
<result property="rdctSeCd" column="RDCT_SE_CD" /> <!-- 감경 구분 코드 -->
<result property="ispySeNm" column="ISPY_SE_NM" /> <!-- 분납 구분 명 -->
<result property="levyYmd" column="LEVY_YMD" /> <!-- 부과 일자 -->
<result property="frstDudtYmd" column="FRST_DUDT_YMD" /> <!-- 최초 납기 일자 -->
<result property="dudtYmd" column="DUDT_YMD" /> <!-- 납기 일자 -->
<result property="ffnlgAmt" column="FFNLG_AMT" /> <!-- 과태료 금액 -->
<result property="levyPcptax" column="LEVY_PCPTAX" /> <!-- 부과 본세 -->
<result property="levyAdamt" column="LEVY_ADAMT" /> <!-- 부과 가산금 -->
<result property="ispyInt" column="ISPY_INT" /> <!-- 분납 이자 -->
<result property="rcvmtPcptax" column="RCVMT_PCPTAX" /> <!-- 수납 본세 -->
<result property="rcvmtAdamt" column="RCVMT_ADAMT" /> <!-- 수납 가산금 -->
<result property="rdamtPcptax" column="RDAMT_PCPTAX" /> <!-- 감액 본세 -->
<result property="rdamtAdamt" column="RDAMT_ADAMT" /> <!-- 감액 가산금 -->
<result property="sumAmt" column="SUM_AMT" /> <!-- 합계 금액 -->
<result property="dudtAftrYmd" column="DUDT_AFTR_YMD" /> <!-- 납기 후 일자 -->
<result property="dudtAftrAmt" column="DUDT_AFTR_AMT" /> <!-- 납기 후 금액 -->
<result property="txtnThing" column="TXTN_THING" /> <!-- 과세 물건 -->
<result property="mngItem1" column="MNG_ITEM1" /> <!-- 관리 아이템1 -->
<result property="mngItem2" column="MNG_ITEM2" /> <!-- 관리 아이템2 -->
@ -321,14 +321,14 @@
, L.SPCL_BIZ_CD <!-- 특별회계 사업 코드 -->
, (SELECT GET_CODE_NM('FIM077', L.SPCL_BIZ_CD) FROM DUAL) AS SPCL_BIZ_NM <!-- 특별회계 사업 명 -->
, L.LEVY_NO <!-- 부과 번호 -->
, L.INSPY_SN <!-- 분납 일련번호 -->
, L.ISPY_SN <!-- 분납 일련번호 -->
, L.LEVY_SE_CD <!-- 부과 구분 코드 -->
, (SELECT GET_CODE_NM('FIM040', L.LEVY_SE_CD) FROM DUAL) AS LEVY_SE_NM <!-- 부과 구분 코드 -->
, L.UNTY_SE_CD <!-- 통합 구분 코드 -->
, (SELECT GET_CODE_NM('FIM072', L.UNTY_SE_CD) FROM DUAL) AS UNTY_SE_NM <!-- 통합 구분 코드 -->
, L.RDUCT_SE_CD <!-- 감경 구분 코드 -->
, (SELECT GET_CODE_NM('FIM046', L.RDUCT_SE_CD) FROM DUAL) AS RDUCT_SE_NM <!-- 감경 구분 코드 -->
, L.INSPY_SE_NM <!-- 분납 구분 명 -->
, L.RDCT_SE_CD <!-- 감경 구분 코드 -->
, (SELECT GET_CODE_NM('FIM046', L.RDCT_SE_CD) FROM DUAL) AS RDCT_SE_NM <!-- 감경 구분 코드 -->
, L.ISPY_SE_NM <!-- 분납 구분 명 -->
, L.LEVY_YMD <!-- 부과 일자 -->
, L.FRST_DUDT_YMD <!-- 최초 납기 일자 -->
, L.DUDT_YMD <!-- 납기 일자 -->
@ -336,11 +336,11 @@
, L.FFNLG_AMT <!-- 과태료 금액 -->
, L.LEVY_PCPTAX <!-- 부과 본세 -->
, L.LEVY_ADAMT <!-- 부과 가산금 -->
, L.INSPY_INT <!-- 분납 이자 -->
, L.ISPY_INT <!-- 분납 이자 -->
, L.RCVMT_PCPTAX <!-- 수납 본세 -->
, L.RCVMT_ADAMT <!-- 수납 가산금 -->
, L.RDCAMT_PCPTAX <!-- 감액 본세 -->
, L.RDCAMT_ADAMT <!-- 감액 가산금 -->
, L.RDAMT_PCPTAX <!-- 감액 본세 -->
, L.RDAMT_ADAMT <!-- 감액 가산금 -->
, L.SUM_AMT <!-- 합계 금액 -->
, L.DUDT_AFTR_AMT <!-- 납기 후 금액 -->
, L.TXTN_THING <!-- 과세 물건 -->
@ -455,8 +455,8 @@
<if test="schLevyNoTo != null">
AND L.LEVY_NO <![CDATA[<=]]> #{schLevyNoTo} <!-- 부과 번호 종료 -->
</if>
<if test="schRductSeCd != null">
AND L.RDUCT_SE_CD = #{schRductSeCd} <!-- 감경 구분 코드 -->
<if test="schRdctSeCd != null">
AND L.RDCT_SE_CD = #{schRdctSeCd} <!-- 감경 구분 코드 -->
</if>
<if test="schLevyYmdFrom != null">
AND L.LEVY_YMD <![CDATA[>=]]> #{schLevyYmdFrom} <!-- 부과 일자 시작 -->
@ -537,7 +537,7 @@
<when test="by == 'levyYmd'"> L.LEVY_YMD </when>
<when test="by == 'levyNo'"> L.LEVY_NO </when>
<when test="by == 'levySeCd'"> L.LEVY_SE_CD </when>
<when test="by == 'rductSeCd'"> L.RDUCT_SE_CD </when>
<when test="by == 'rdctSeCd'"> L.RDCT_SE_CD </when>
<when test="by == 'frstDudtYmd'"> L.FRST_DUDT_YMD </when>
<when test="by == 'dudtYmd'"> L.DUDT_YMD </when>
<when test="by == 'ffnlgAmt'"> L.FFNLG_AMT </when>
@ -545,8 +545,8 @@
<when test="by == 'levyAdamt'"> L.LEVY_ADAMT </when>
<when test="by == 'rcvmtPcptax'"> L.RCVMT_PCPTAX </when>
<when test="by == 'rcvmtAdamt'"> L.RCVMT_ADAMT </when>
<when test="by == 'rdcamtPcptax'"> L.RDCAMT_PCPTAX </when>
<when test="by == 'rdcamtAdamt'"> L.RDCAMT_ADAMT </when>
<when test="by == 'rdamtPcptax'"> L.RDAMT_PCPTAX </when>
<when test="by == 'rdamtAdamt'"> L.RDAMT_ADAMT </when>
<when test="by == 'sumAmt'"> L.SUM_AMT </when>
<when test="by == 'txtnThing'"> L.TXTN_THING </when>
<when test="by == 'szrYmd'"> L.SZR_YMD </when>
@ -626,17 +626,17 @@
, TXITM_CD <!-- 세목 코드 -->
, OPER_ITEM_CD <!-- 운영 항목 코드 -->
, LEVY_NO <!-- 부과 번호 -->
, INSPY_SN <!-- 분납 일련번호 -->
, ISPY_SN <!-- 분납 일련번호 -->
, FFNLG_AMT <!-- 과태료 금액 -->
, LEVY_PCPTAX <!-- 부과 본세 -->
, LEVY_ADAMT <!-- 부과 가산금 -->
, RCVMT_PCPTAX <!-- 수납 본세 -->
, RCVMT_ADAMT <!-- 수납 가산금 -->
, RDCAMT_PCPTAX <!-- 감액 본세 -->
, RDCAMT_ADAMT <!-- 감액 가산금 -->
, RDAMT_PCPTAX <!-- 감액 본세 -->
, RDAMT_ADAMT <!-- 감액 가산금 -->
, SUM_AMT <!-- 합계 금액 -->
, LEVY_PCPTAX - RCVMT_PCPTAX - RDCAMT_PCPTAX AS LAST_PCPTAX <!-- 최종 본세 -->
, LEVY_ADAMT - RCVMT_ADAMT - RDCAMT_ADAMT AS LAST_ADAMT <!-- 가산금 -->
, LEVY_PCPTAX - RCVMT_PCPTAX - RDAMT_PCPTAX AS LAST_PCPTAX <!-- 최종 본세 -->
, LEVY_ADAMT - RCVMT_ADAMT - RDAMT_ADAMT AS LAST_ADAMT <!-- 가산금 -->
FROM TB_LEVY
<choose>
<when test="crdnId != null">
@ -653,7 +653,7 @@
AND TXITM_CD = #{txitmCd} <!-- 세목 코드 -->
AND OPER_ITEM_CD = #{operItemCd} <!-- 운영 항목 코드 -->
AND LEVY_NO = #{levyNo} <!-- 부과 번호 -->
AND INSPY_SN = #{inspySn} <!-- 분납 일련번호 -->
AND ISPY_SN = #{inspySn} <!-- 분납 일련번호 -->
</otherwise>
</choose>
AND DEL_YN = 'N' <!-- 삭제 여부 -->
@ -681,11 +681,11 @@
, OPER_ITEM_CD <!-- 운영 항목 코드 -->
, SPCL_BIZ_CD <!-- 특별회계 사업 코드 -->
, LEVY_NO <!-- 부과 번호 -->
, INSPY_SN <!-- 분납 일련번호 -->
, ISPY_SN <!-- 분납 일련번호 -->
, LEVY_SE_CD <!-- 부과 구분 코드 -->
, UNTY_SE_CD <!-- 통합 구분 코드 -->
, RDUCT_SE_CD <!-- 감경 구분 코드 -->
, INSPY_SE_NM <!-- 분납 구분 명 -->
, RDCT_SE_CD <!-- 감경 구분 코드 -->
, ISPY_SE_NM <!-- 분납 구분 명 -->
, LEVY_YMD <!-- 부과 일자 -->
, FRST_DUDT_YMD <!-- 최초 납기 일자 -->
, DUDT_YMD <!-- 납기 일자 -->
@ -693,11 +693,11 @@
, FFNLG_AMT <!-- 과태료 금액 -->
, LEVY_PCPTAX <!-- 부과 본세 -->
, LEVY_ADAMT <!-- 부과 가산금 -->
, INSPY_INT <!-- 분납 이자 -->
, ISPY_INT <!-- 분납 이자 -->
, RCVMT_PCPTAX <!-- 수납 본세 -->
, RCVMT_ADAMT <!-- 수납 가산금 -->
, RDCAMT_PCPTAX <!-- 감액 본세 -->
, RDCAMT_ADAMT <!-- 감액 가산금 -->
, RDAMT_PCPTAX <!-- 감액 본세 -->
, RDAMT_ADAMT <!-- 감액 가산금 -->
, SUM_AMT <!-- 합계 금액 -->
, DUDT_AFTR_AMT <!-- 납기 후 금액 -->
, TXTN_THING <!-- 과세 물건 -->
@ -777,11 +777,11 @@
, #{operItemCd} <!-- 운영 항목 코드 -->
, #{spclBizCd} <!-- 특별회계 사업 코드 -->
, #{levyNo} <!-- 부과 번호 -->
, #{inspySn} <!-- 분납 일련번호 -->
, #{ispySn} <!-- 분납 일련번호 -->
, #{levySeCd} <!-- 부과 구분 코드 -->
, #{untySeCd} <!-- 통합 구분 코드 -->
, #{rductSeCd} <!-- 감경 구분 코드 -->
, #{inspySeNm} <!-- 분납 구분 명 -->
, #{rdctSeCd} <!-- 감경 구분 코드 -->
, #{ispySeNm} <!-- 분납 구분 명 -->
, #{levyYmd} <!-- 부과 일자 -->
, #{frstDudtYmd} <!-- 최초 납기 일자 -->
, #{dudtYmd} <!-- 납기 일자 -->
@ -789,11 +789,11 @@
, #{ffnlgAmt} <!-- 과태료 금액 -->
, #{levyPcptax} <!-- 부과 본세 -->
, #{levyAdamt} <!-- 부과 가산금 -->
, #{inspyInt} <!-- 분납 이자 -->
, #{ispyInt} <!-- 분납 이자 -->
, #{rcvmtPcptax} <!-- 수납 본세 -->
, #{rcvmtAdamt} <!-- 수납 가산금 -->
, #{rdcamtPcptax} <!-- 감액 본세 -->
, #{rdcamtAdamt} <!-- 감액 가산금 -->
, #{rdamtPcptax} <!-- 감액 본세 -->
, #{rdamtAdamt} <!-- 감액 가산금 -->
, #{sumAmt} <!-- 합계 금액 -->
, #{dudtAftrAmt} <!-- 납기 후 금액 -->
, #{txtnThing} <!-- 과세 물건 -->
@ -872,11 +872,11 @@
, OPER_ITEM_CD = #{operItemCd} <!-- 운영 항목 코드 -->
, SPCL_BIZ_CD = #{spclBizCd} <!-- 특별회계 사업 코드 -->
, LEVY_NO = #{levyNo} <!-- 부과 번호 -->
, INSPY_SN = #{inspySn} <!-- 분납 일련번호 -->
, ISPY_SN = #{ispySn} <!-- 분납 일련번호 -->
, LEVY_SE_CD = #{levySeCd} <!-- 부과 구분 코드 -->
, UNTY_SE_CD = #{untySeCd} <!-- 통합 구분 코드 -->
, RDUCT_SE_CD = #{rductSeCd} <!-- 감경 구분 코드 -->
, INSPY_SE_NM = #{inspySeNm} <!-- 분납 구분 명 -->
, RDCT_SE_CD = #{rdctSeCd} <!-- 감경 구분 코드 -->
, ISPY_SE_NM = #{ispySeNm} <!-- 분납 구분 명 -->
, LEVY_YMD = #{levyYmd} <!-- 부과 일자 -->
, FRST_DUDT_YMD = #{frstDudtYmd} <!-- 최초 납기 일자 -->
, DUDT_YMD = #{dudtYmd} <!-- 납기 일자 -->
@ -884,11 +884,11 @@
, FFNLG_AMT = #{ffnlgAmt} <!-- 과태료 금액 -->
, LEVY_PCPTAX = #{levyPcptax} <!-- 부과 본세 -->
, LEVY_ADAMT = #{levyAdamt} <!-- 부과 가산금 -->
, INSPY_INT = #{inspyInt} <!-- 분납 이자 -->
, ISPY_INT = #{ispyInt} <!-- 분납 이자 -->
, RCVMT_PCPTAX = #{rcvmtPcptax} <!-- 수납 본세 -->
, RCVMT_ADAMT = #{rcvmtAdamt} <!-- 수납 가산금 -->
, RDCAMT_PCPTAX = #{rdcamtPcptax} <!-- 감액 본세 -->
, RDCAMT_ADAMT = #{rdcamtAdamt} <!-- 감액 가산금 -->
, RDAMT_PCPTAX = #{rdamtPcptax} <!-- 감액 본세 -->
, RDAMT_ADAMT = #{rdamtAdamt} <!-- 감액 가산금 -->
, SUM_AMT = #{sumAmt} <!-- 합계 금액 -->
, DUDT_AFTR_AMT = #{dudtAftrAmt} <!-- 납기 후 금액 -->
, TXTN_THING = #{txtnThing} <!-- 과세 물건 -->
@ -989,10 +989,10 @@
AND DEL_YN = 'N'
</update>
<update id="updateRdcamt" parameterType="cokr.xit.fims.levy.Levy">/* 부과 대장에 감액 금액 정보를 수정(levyMapper.updateRdcamt) */
<update id="updateRdamt" parameterType="cokr.xit.fims.levy.Levy">/* 부과 대장에 감액 금액 정보를 수정(levyMapper.updateRdamt) */
UPDATE TB_LEVY
SET RDCAMT_PCPTAX = #{rdcamtPcptax} <!-- 감액 본세 -->
, RDCAMT_ADAMT = #{rdcamtAdamt} <!-- 감액 가산금 -->
SET RDAMT_PCPTAX = #{rdamtPcptax} <!-- 감액 본세 -->
, RDAMT_ADAMT = #{rdamtAdamt} <!-- 감액 가산금 -->
, SUM_AMT = #{sumAmt} <!-- 합계 금액 -->
, DUDT_AFTR_AMT = #{dudtAftrAmt} <!-- 납기 후 금액 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->

@ -73,15 +73,15 @@
, L.LEVY_ID <!-- 부과 ID -->
, L.LEVY_PCPTAX <!-- 부과 본세 -->
, L.LEVY_ADAMT <!-- 부과 가산금 -->
, L.INSPY_INT <!-- 분납 이자 -->
, L.ISPY_INT <!-- 분납 이자 -->
, L.RCVMT_PCPTAX <!-- 수납 본세 -->
, L.RCVMT_ADAMT <!-- 수납 가산금 -->
, L.RDCAMT_PCPTAX <!-- 감액 본세 -->
, L.RDCAMT_ADAMT <!-- 감액 가산금 -->
, L.RDAMT_PCPTAX <!-- 감액 본세 -->
, L.RDAMT_ADAMT <!-- 감액 가산금 -->
, L.SUM_AMT <!-- 합계 금액 -->
, L.LEVY_PCPTAX + L.LEVY_ADAMT AS LEVY_AMT <!-- 부과 금액 -->
, L.RCVMT_PCPTAX + L.RCVMT_ADAMT AS RCVMT_AMT <!-- 수납 금액 -->
, L.RDCAMT_PCPTAX + L.RDCAMT_ADAMT AS RDCAMT_AMT <!-- 감액 금액 -->
, L.RDAMT_PCPTAX + L.RDAMT_ADAMT AS RDAMT_AMT <!-- 감액 금액 -->
FROM TB_RDUCT R
INNER JOIN TB_CRDN C ON (R.CRDN_ID = C.CRDN_ID)
INNER JOIN TB_CRDN_ADI CA ON (C.CRDN_ID = CA.CRDN_ID)
@ -211,7 +211,7 @@
, L.SUM_AMT <!-- 합계 금액 -->
, L.LEVY_PCPTAX + LEVY_ADAMT AS LEVY_AMT <!-- 부과 금액 -->
, L.RCVMT_PCPTAX + RCVMT_ADAMT AS RCVMT_AMT <!-- 수납 금액 -->
, L.RDCAMT_PCPTAX + RDCAMT_ADAMT AS RDCAMT_AMT <!-- 감액 금액 -->
, L.RDAMT_PCPTAX + RDAMT_ADAMT AS RDAMT_AMT <!-- 감액 금액 -->
, P.RTPYR_ID <!-- 납부자 ID -->
, P.RTPYR_NO <!-- 납부자 번호 -->
, P.RTPYR_NM <!-- 납부자 명 -->
@ -336,11 +336,11 @@
, L.DUDT_YMD <!-- 납기 일자 -->
, L.LEVY_PCPTAX <!-- 부과 본세 -->
, L.LEVY_ADAMT <!-- 부과 가산금 -->
, L.INSPY_INT <!-- 분납 이자 -->
, L.ISPY_INT <!-- 분납 이자 -->
, L.RCVMT_PCPTAX <!-- 수납 본세 -->
, L.RCVMT_ADAMT <!-- 수납 가산금 -->
, L.RDCAMT_PCPTAX <!-- 감액 본세 -->
, L.RDCAMT_ADAMT <!-- 감액 가산금 -->
, L.RDAMT_PCPTAX <!-- 감액 본세 -->
, L.RDAMT_ADAMT <!-- 감액 가산금 -->
, R.RDUCT_ID <!-- 감경 ID -->
, <include refid="utility.today" /> AS TODAY <!-- 오늘 일자 -->
, C.FFNLG_CRDN_AMT * T.WKSN_RDCRT / 100 AS CALC_RDUCT_AMT <!-- 감경 금액 -->

@ -19,7 +19,7 @@
<result property="acntgSeCd" column="ACNTG_SE_CD" /> <!-- 회계 구분 코드 -->
<result property="txitmCd" column="TXITM_CD" /> <!-- 세목 코드 -->
<result property="levyNo" column="LEVY_NO" /> <!-- 부과 번호 -->
<result property="inspySn" column="INSPY_SN" /> <!-- 분납 일련번호 -->
<result property="ispySn" column="ISPY_SN" /> <!-- 분납 일련번호 -->
<result property="lastPcptax" column="LAST_PCPTAX" /> <!-- 최종 본세 -->
<result property="lastAdamt" column="LAST_ADAMT" /> <!-- 최종 가산금 -->
<result property="rcvmtSn" column="RCVMT_SN" /> <!-- 수납 일련번호 -->
@ -64,7 +64,7 @@
, R.TXITM_CD <!-- 세목 코드 -->
, (SELECT GET_CODE_NM('FIM075', R.TXITM_CD) FROM DUAL) AS TXITM_NM <!-- 세목 코드 명 -->
, R.LEVY_NO <!-- 부과 번호 -->
, R.INSPY_SN <!-- 분납 일련번호 -->
, R.ISPY_SN <!-- 분납 일련번호 -->
, R.LAST_PCPTAX <!-- 최종 본세 -->
, R.LAST_ADAMT <!-- 최종 가산금 -->
, R.RCVMT_SN <!-- 수납 일련번호 -->
@ -225,7 +225,7 @@
<when test="by == 'acntgSeCd'"> R.ACNTG_SE_CD </when>
<when test="by == 'txitmCd'"> R.TXITM_CD </when>
<when test="by == 'levyNo'"> R.LEVY_NO</when>
<when test="by == 'inspySn'"> R.INSPY_SN</when>
<when test="by == 'ispySn'"> R.ISPY_SN</when>
<when test="by == 'lastPcptax'"> R.LAST_PCPTAX </when>
<when test="by == 'lastAdamt'"> R.LAST_ADAMT </when>
<when test="by == 'rcvmtSn'"> R.RCVMT_SN </when>
@ -285,7 +285,7 @@
, R.TXITM_CD <!-- 세목 코드 -->
, (SELECT GET_CODE_NM('FIM075', R.TXITM_CD) FROM DUAL) AS TXITM_NM <!-- 세목 코드 명 -->
, R.LEVY_NO <!-- 부과 번호 -->
, R.INSPY_SN <!-- 분납 일련번호 -->
, R.ISPY_SN <!-- 분납 일련번호 -->
, R.LAST_PCPTAX <!-- 최종 본세 -->
, R.LAST_ADAMT <!-- 최종 가산금 -->
, R.RCVMT_SN <!-- 수납 일련번호 -->
@ -376,7 +376,7 @@
, ACNTG_SE_CD <!-- 회계 구분 코드 -->
, TXITM_CD <!-- 세목 코드 -->
, LEVY_NO <!-- 부과 번호 -->
, INSPY_SN <!-- 분납 일련번호 -->
, ISPY_SN <!-- 분납 일련번호 -->
, LAST_PCPTAX <!-- 최종 본세 -->
, LAST_ADAMT <!-- 최종 가산금 -->
, RCVMT_SN <!-- 수납 일련번호 -->
@ -414,7 +414,7 @@
, #{acntgSeCd} <!-- 회계 구분 코드 -->
, #{txitmCd} <!-- 세목 코드 -->
, #{levyNo} <!-- 부과 번호 -->
, #{inspySn} <!-- 분납 일련번호 -->
, #{ispySn} <!-- 분납 일련번호 -->
, #{lastPcptax} <!-- 최종 본세 -->
, #{lastAdamt} <!-- 최종 가산금 -->
, #{rcvmtSn} <!-- 수납 일련번호 -->
@ -488,15 +488,15 @@
, L.TXITM_CD <!-- 세목 코드 -->
, L.OPER_ITEM_CD <!-- 운영 항목 코드 -->
, L.LEVY_NO <!-- 부과 번호 -->
, L.INSPY_SN <!-- 분납 일련번호 -->
, L.ISPY_SN <!-- 분납 일련번호 -->
, L.FFNLG_AMT <!-- 과태료 금액 -->
, L.LEVY_PCPTAX <!-- 부과 본세 -->
, L.LEVY_ADAMT <!-- 부과 가산금 -->
, L.INSPY_INT <!-- 분납 이자 -->
, L.ISPY_INT <!-- 분납 이자 -->
, L.RCVMT_PCPTAX <!-- 수납 본세 -->
, L.RCVMT_ADAMT <!-- 수납 가산금 -->
, L.LEVY_PCPTAX - L.RCVMT_PCPTAX - L.RDCAMT_PCPTAX AS LAST_PCPTAX <!-- 최종 본세 -->
, L.LEVY_ADAMT - L.RCVMT_ADAMT - L.RDCAMT_ADAMT AS LAST_ADAMT <!-- 가산금 -->
, L.LEVY_PCPTAX - L.RCVMT_PCPTAX - L.RDAMT_PCPTAX AS LAST_PCPTAX <!-- 최종 본세 -->
, L.LEVY_ADAMT - L.RCVMT_ADAMT - L.RDAMT_ADAMT AS LAST_ADAMT <!-- 가산금 -->
, C.CRDN_ID <!-- 단속 ID -->
, C.SGG_CD <!-- 시군구 코드 -->
, C.TASK_SE_CD <!-- 업무 구분 코드 -->
@ -522,7 +522,7 @@
AND ACNTG_SE_CD = #{acntgSeCd} <!-- 회계 구분 코드 -->
AND TXITM_CD = #{txitmCd} <!-- 세목 코드 -->
AND LEVY_NO = #{levyNo} <!-- 부과 번호 -->
AND INSPY_SN = #{inspySn} <!-- 분납 일련번호 -->
AND ISPY_SN = #{ispySn} <!-- 분납 일련번호 -->
<if test="operItemCd != null">
AND OPER_ITEM_CD = #{operItemCd} <!-- 운영 항목 코드 -->
</if>

@ -1,48 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cokr.xit.fims.rdca.dao.RdcamtMapper">
<mapper namespace="cokr.xit.fims.rdca.dao.RdamtMapper">
<!-- 감액 대장 정보 매퍼
========== 변경 이력 ==========
2024-02-01 JoJH 최초 작성
============================ -->
<resultMap id="rdcamtRow" type="cokr.xit.fims.rdca.Rdcamt"> <!-- 감액 대장 -->
<result property="rdcamtId" column="RDCAMT_ID" /> <!-- 감액 ID -->
<result property="levyId" column="LEVY_ID" /> <!-- 부과 ID -->
<result property="lastPcptax" column="LAST_PCPTAX" /> <!-- 최종 본세 -->
<result property="lastAdamt" column="LAST_ADAMT" /> <!-- 최종 가산금 -->
<result property="rdcamtYmd" column="RDCAMT_YMD" /> <!-- 감액 일자 -->
<result property="rdcamtSeCd" column="RDCAMT_SE_CD" /> <!-- 감액 구분 코드 -->
<result property="rdcamtRsnCd" column="RDCAMT_RSN_CD" /> <!-- 감액 사유 코드 -->
<result property="rdcamtPcptax" column="RDCAMT_PCPTAX" /> <!-- 감액 본세 -->
<result property="rdcamtAdamt" column="RDCAMT_ADAMT" /> <!-- 감액 가산금 -->
<result property="rdcamtRtrcnYn" column="RDCAMT_RTRCN_YN" /> <!-- 감액 취소 여부 -->
<result property="rdcamtRtrcnYmd" column="RDCAMT_RTRCN_YMD" /> <!-- 감액 취소 일자 -->
<result property="rdcamtRtrcnRsn" column="RDCAMT_RTRCN_RSN" /> <!-- 감액 취소 사유 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
<resultMap id="rdamtRow" type="cokr.xit.fims.rdca.Rdamt"> <!-- 감액 대장 -->
<result property="rdamtId" column="RDAMT_ID" /> <!-- 감액 ID -->
<result property="levyId" column="LEVY_ID" /> <!-- 부과 ID -->
<result property="lastPcptax" column="LAST_PCPTAX" /> <!-- 최종 본세 -->
<result property="lastAdamt" column="LAST_ADAMT" /> <!-- 최종 가산금 -->
<result property="rdamtYmd" column="RDAMT_YMD" /> <!-- 감액 일자 -->
<result property="rdamtSeCd" column="RDAMT_SE_CD" /> <!-- 감액 구분 코드 -->
<result property="rdamtRsnCd" column="RDAMT_RSN_CD" /> <!-- 감액 사유 코드 -->
<result property="rdamtPcptax" column="RDAMT_PCPTAX" /> <!-- 감액 본세 -->
<result property="rdamtAdamt" column="RDAMT_ADAMT" /> <!-- 감액 가산금 -->
<result property="rdamtRtrcnYn" column="RDAMT_RTRCN_YN" /> <!-- 감액 취소 여부 -->
<result property="rdamtRtrcnYmd" column="RDAMT_RTRCN_YMD" /> <!-- 감액 취소 일자 -->
<result property="rdamtRtrcnRsn" column="RDAMT_RTRCN_RSN" /> <!-- 감액 취소 사유 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<sql id="selectList">
SELECT R.RDCAMT_ID <!-- 감액 ID -->
SELECT R.RDAMT_ID <!-- 감액 ID -->
, R.LEVY_ID <!-- 부과 ID -->
, R.LAST_PCPTAX <!-- 최종 본세 -->
, R.LAST_ADAMT <!-- 최종 가산금 -->
, R.RDCAMT_YMD <!-- 감액 일자 -->
, R.RDCAMT_SE_CD <!-- 감액 구분 코드 -->
, R.RDCAMT_RSN_CD <!-- 감액 사유 코드 -->
, R.RDCAMT_PCPTAX <!-- 감액 본세 -->
, R.RDCAMT_ADAMT <!-- 감액 가산금 -->
, R.RDCAMT_RTRCN_YN <!-- 감액 취소 여부 -->
, R.RDCAMT_RTRCN_YMD <!-- 감액 취소 일자 -->
, R.RDCAMT_RTRCN_RSN <!-- 감액 취소 사유 -->
, R.RDAMT_YMD <!-- 감액 일자 -->
, R.RDAMT_SE_CD <!-- 감액 구분 코드 -->
, R.RDAMT_RSN_CD <!-- 감액 사유 코드 -->
, R.RDAMT_PCPTAX <!-- 감액 본세 -->
, R.RDAMT_ADAMT <!-- 감액 가산금 -->
, R.RDAMT_RTRCN_YN <!-- 감액 취소 여부 -->
, R.RDAMT_RTRCN_YMD <!-- 감액 취소 일자 -->
, R.RDAMT_RTRCN_RSN <!-- 감액 취소 사유 -->
, R.DEL_YN <!-- 삭제 여부 -->
, R.REG_DT <!-- 등록 일시 -->
, R.RGTR <!-- 등록자 -->
@ -53,23 +53,23 @@
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM <!-- 수정자 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.DLTR) AS DLTR_NM <!-- 삭제자 명 -->
FROM TB_RDCAMT R
INNER JOIN TB_LEVY L ON (R.LEVY_ID = L.LEVY_ID)
FROM TB_RDAMT R
INNER JOIN TB_LEVY L ON (R.LEVY_ID = L.LEVY_ID)
</sql>
<sql id="select">
SELECT R.RDCAMT_ID <!-- 감액 ID -->
SELECT R.RDAMT_ID <!-- 감액 ID -->
, R.LEVY_ID <!-- 부과 ID -->
, R.LAST_PCPTAX <!-- 최종 본세 -->
, R.LAST_ADAMT <!-- 최종 가산금 -->
, R.RDCAMT_YMD <!-- 감액 일자 -->
, R.RDCAMT_SE_CD <!-- 감액 구분 코드 -->
, R.RDCAMT_RSN_CD <!-- 감액 사유 코드 -->
, R.RDCAMT_PCPTAX <!-- 감액 본세 -->
, R.RDCAMT_ADAMT <!-- 감액 가산금 -->
, R.RDCAMT_RTRCN_YN <!-- 감액 취소 여부 -->
, R.RDCAMT_RTRCN_YMD <!-- 감액 취소 일자 -->
, R.RDCAMT_RTRCN_RSN <!-- 감액 취소 사유 -->
, R.RDAMT_YMD <!-- 감액 일자 -->
, R.RDAMT_SE_CD <!-- 감액 구분 코드 -->
, R.RDAMT_RSN_CD <!-- 감액 사유 코드 -->
, R.RDAMT_PCPTAX <!-- 감액 본세 -->
, R.RDAMT_ADAMT <!-- 감액 가산금 -->
, R.RDAMT_RTRCN_YN <!-- 감액 취소 여부 -->
, R.RDAMT_RTRCN_YMD <!-- 감액 취소 일자 -->
, R.RDAMT_RTRCN_RSN <!-- 감액 취소 사유 -->
, R.DEL_YN <!-- 삭제 여부 -->
, R.REG_DT <!-- 등록 일시 -->
, R.RGTR <!-- 등록자 -->
@ -81,10 +81,10 @@
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM <!-- 수정자 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.DLTR) AS DLTR_NM <!-- 삭제자 명 -->
FROM TB_RDCAMT
FROM TB_RDAMT
</sql>
<select id="selectRdcamtList" parameterType="map" resultType="dataobject">/* 감액 대장 목록 조회(rdcamtMapper.selectRdcamtList) */
<select id="selectRdamtList" parameterType="map" resultType="dataobject">/* 감액 대장 목록 조회(rdcamtMapper.selectRdamtList) */
<include refid="utility.paging-prefix" />
<include refid="selectList" />
<where></where>
@ -92,32 +92,32 @@
<include refid="utility.paging-suffix" />
</select>
<select id="selectRdcamts" parameterType="map" resultType="dataobject">/* 감액 대장 객체 가져오기(rdcamtMapper.selectRdcamts) */
<select id="selectRdamts" parameterType="map" resultType="dataobject">/* 감액 대장 객체 가져오기(rdcamtMapper.selectRdamts) */
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
</select>
<insert id="insertRdcamt" parameterType="map">/* 감액 대장 등록(rdcamtMapper.insertRdcamt) */
<selectKey resultType="string" keyProperty="rdcamt.rdcamtId" keyColumn="NEW_ID" order="BEFORE">
SELECT CONCAT(#{rdcamt.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(SVBTC_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID
FROM TB_RDCAMT
WHERE RDCAMT_ID LIKE CONCAT(#{rdcamt.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
<insert id="insertRdamt" parameterType="map">/* 감액 대장 등록(rdcamtMapper.insertRdamt) */
<selectKey resultType="string" keyProperty="rdamt.rdamtId" keyColumn="NEW_ID" order="BEFORE">
SELECT CONCAT(#{rdamt.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(RDAMT_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID
FROM TB_RDAMT
WHERE RDAMT_ID LIKE CONCAT(#{rdamt.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
</selectKey>
INSERT
INTO TB_RDCAMT (
RDCAMT_ID <!-- 감액 ID -->
INTO TB_RDAMT (
RDAMT_ID <!-- 감액 ID -->
, LEVY_ID <!-- 부과 ID -->
, LAST_PCPTAX <!-- 최종 본세 -->
, LAST_ADAMT <!-- 최종 가산금 -->
, RDCAMT_YMD <!-- 감액 일자 -->
, RDCAMT_SE_CD <!-- 감액 구분 코드 -->
, RDCAMT_RSN_CD <!-- 감액 사유 코드 -->
, RDCAMT_PCPTAX <!-- 감액 본세 -->
, RDCAMT_ADAMT <!-- 감액 가산금 -->
, RDCAMT_RTRCN_YN <!-- 감액 취소 여부 -->
, RDCAMT_RTRCN_YMD <!-- 감액 취소 일자 -->
, RDCAMT_RTRCN_RSN <!-- 감액 취소 사유 -->
, RDAMT_YMD <!-- 감액 일자 -->
, RDAMT_SE_CD <!-- 감액 구분 코드 -->
, RDAMT_RSN_CD <!-- 감액 사유 코드 -->
, RDAMT_PCPTAX <!-- 감액 본세 -->
, RDAMT_ADAMT <!-- 감액 가산금 -->
, RDAMT_RTRCN_YN <!-- 감액 취소 여부 -->
, RDAMT_RTRCN_YMD <!-- 감액 취소 일자 -->
, RDAMT_RTRCN_RSN <!-- 감액 취소 사유 -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
@ -125,51 +125,51 @@
, MDFR <!-- 수정자 -->
)
VALUES (
#{rdcamt.rdcamtId} <!-- 감액 ID -->
, #{rdcamt.levyId} <!-- 부과 ID -->
, #{rdcamt.lastPcptax} <!-- 최종 본세 -->
, #{rdcamt.lastAdamt} <!-- 최종 가산금 -->
, #{rdcamt.rdcamtYmd} <!-- 감액 일자 -->
, #{rdcamt.rdcamtSeCd} <!-- 감액 구분 코드 -->
, #{rdcamt.rdcamtRsnCd} <!-- 감액 사유 코드 -->
, #{rdcamt.rdcamtPcptax} <!-- 감액 본세 -->
, #{rdcamt.rdcamtAdamt} <!-- 감액 가산금 -->
#{rdamt.rdamtId} <!-- 감액 ID -->
, #{rdamt.levyId} <!-- 부과 ID -->
, #{rdamt.lastPcptax} <!-- 최종 본세 -->
, #{rdamt.lastAdamt} <!-- 최종 가산금 -->
, #{rdamt.rdamtYmd} <!-- 감액 일자 -->
, #{rdamt.rdamtSeCd} <!-- 감액 구분 코드 -->
, #{rdamt.rdamtRsnCd} <!-- 감액 사유 코드 -->
, #{rdamt.rdamtPcptax} <!-- 감액 본세 -->
, #{rdamt.rdamtAdamt} <!-- 감액 가산금 -->
, 'N' <!-- 감액 취소 여부 -->
, #{rdcamt.rdcamtRtrcnYmd} <!-- 감액 취소 일자 -->
, #{rdcamt.rdcamtRtrcnRsn} <!-- 감액 취소 사유 -->
, #{rdamt.rdamtRtrcnYmd} <!-- 감액 취소 일자 -->
, #{rdamt.rdamtRtrcnRsn} <!-- 감액 취소 사유 -->
, 'N' <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{rdcamt.createdBy} <!-- 등록자 -->
, #{rdamt.createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{rdcamt.modifiedBy} <!-- 수정자 -->
, #{rdamt.modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateRdcamt" parameterType="map">/* 감액 대장 수정(rdcamtMapper.updateRdcamt) */
UPDATE TB_RDCAMT
SET LAST_PCPTAX = #{rdcamt.lastPcptax} <!-- 최종 본세 -->
, LAST_ADAMT = #{rdcamt.lastAdamt} <!-- 최종 가산금 -->
, RDCAMT_YMD = #{rdcamt.rdcamtYmd} <!-- 감액 일자 -->
, RDCAMT_SE_CD = #{rdcamt.rdcamtSeCd} <!-- 감액 구분 코드 -->
, RDCAMT_RSN_CD = #{rdcamt.rdcamtRsnCd} <!-- 감액 사유 코드 -->
, RDCAMT_PCPTAX = #{rdcamt.rdcamtPcptax} <!-- 감액 본세 -->
, RDCAMT_ADAMT = #{rdcamt.rdcamtAdamt} <!-- 감액 가산금 -->
, RDCAMT_RTRCN_YN = #{rdcamt.rdcamtRtrcnYn} <!-- 감액 취소 여부 -->
, RDCAMT_RTRCN_YMD = #{rdcamt.rdcamtRtrcnYmd} <!-- 감액 취소 일자 -->
, RDCAMT_RTRCN_RSN = #{rdcamt.rdcamtRtrcnRsn} <!-- 감액 취소 사유 -->
<update id="updateRdamt" parameterType="map">/* 감액 대장 수정(rdamtMapper.updateRdamt) */
UPDATE TB_RDAMT
SET LAST_PCPTAX = #{rdamt.lastPcptax} <!-- 최종 본세 -->
, LAST_ADAMT = #{rdamt.lastAdamt} <!-- 최종 가산금 -->
, RDAMT_YMD = #{rdamt.rdamtYmd} <!-- 감액 일자 -->
, RDAMT_SE_CD = #{rdamt.rdamtSeCd} <!-- 감액 구분 코드 -->
, RDAMT_RSN_CD = #{rdamt.rdamtRsnCd} <!-- 감액 사유 코드 -->
, RDAMT_PCPTAX = #{rdamt.rdamtPcptax} <!-- 감액 본세 -->
, RDAMT_ADAMT = #{rdamt.rdamtAdamt} <!-- 감액 가산금 -->
, RDAMT_RTRCN_YN = #{rdamt.rdamtRtrcnYn} <!-- 감액 취소 여부 -->
, RDAMT_RTRCN_YMD = #{rdamt.rdamtRtrcnYmd} <!-- 감액 취소 일자 -->
, RDAMT_RTRCN_RSN = #{rdamt.rdamtRtrcnRsn} <!-- 감액 취소 사유 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{rdcamt.modifiedBy} <!-- 수정자 -->
WHERE RDCAMT_ID = #{rdcamt.rdcamtId} <!-- 감액 ID -->
AND DEL_YN = 'N' <!-- 삭제 여부 -->
, MDFR = #{rdamt.modifiedBy} <!-- 수정자 -->
WHERE RDAMT_ID = #{rdamt.rdamtId} <!-- 감액 ID -->
AND DEL_YN = 'N' <!-- 삭제 여부 -->
</update>
<update id="deleteRdcamt" parameterType="map">/* 감액 대장 삭제(rdcamtMapper.deleteRdcamt) */
UPDATE TB_RDCAMT
<update id="deleteRdamt" parameterType="map">/* 감액 대장 삭제(rdamtMapper.deleteRdamt) */
UPDATE TB_RDAMT
SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{rdcamt.modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{rdcamt.delRsn} <!-- 삭제 사유 -->
WHERE RDCAMT_ID = #{rdcamt.rdcamtId} <!-- 부과 제외 ID -->
, DLTR = #{rdamt.modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{rdamt.delRsn} <!-- 삭제 사유 -->
WHERE RDAMT_ID = #{rdamt.rdamtId} <!-- 감액 ID -->
AND DEL_YN = 'N'
</update>

@ -660,7 +660,7 @@
, L.TXITM_CD <!-- 세목 코드 -->
, L.OPER_ITEM_CD <!-- 운영 항목 코드 -->
, L.LEVY_NO <!-- 부과 번호 -->
, L.INSPY_SN <!-- 분납 일련번호 -->
, L.ISPY_SN <!-- 분납 일련번호 -->
, C.CRDN_ID <!-- 단속 ID -->
, C.CRDN_INPT_SE_CD <!-- 단속 입력 구분 코드 -->
, C.CRDN_YMD <!-- 단속 일자 -->
@ -816,7 +816,7 @@
, L.OPER_ITEM_CD <!-- 운영 항목 코드 -->
, L.SPCL_BIZ_CD <!-- 특별회계 사업 코드 -->
, L.LEVY_NO <!-- 부과 번호 -->
, L.INSPY_SN <!-- 분납 일련번호 -->
, L.ISPY_SN <!-- 분납 일련번호 -->
, L.LEVY_SE_CD <!-- 부과 구분 코드 -->
, L.LEVY_YMD <!-- 부과 일자 -->
, L.FRST_DUDT_YMD <!-- 최초 납기 일자 -->
@ -824,11 +824,11 @@
, L.DUDT_AFTR_YMD <!-- 납기 후 일자 -->
, L.LEVY_PCPTAX <!-- 부과 본세 -->
, L.LEVY_ADAMT <!-- 부과 가산금 -->
, L.INSPY_INT <!-- 분납 이자 -->
, L.ISPY_INT <!-- 분납 이자 -->
, L.RCVMT_PCPTAX <!-- 수납 본세 -->
, L.RCVMT_ADAMT <!-- 수납 가산금 -->
, L.RDCAMT_PCPTAX <!-- 감액 본세 -->
, L.RDCAMT_ADAMT <!-- 감액 가산금 -->
, L.RDAMT_PCPTAX <!-- 감액 본세 -->
, L.RDAMT_ADAMT <!-- 감액 가산금 -->
, L.SUM_AMT <!-- 합계 금액 -->
, L.DUDT_AFTR_AMT <!-- 납기 후 금액 -->
, L.TXTN_THING <!-- 과세 물건 -->
@ -880,8 +880,8 @@
, L.BANK_NM20 <!-- 은행 명20 -->
, L.VR_ACTNO20 <!-- 가상 계좌번호20 -->
, (CASE WHEN L.FFNLG_AMT IS NOT NULL THEN L.FFNLG_AMT ELSE C.FFNLG_AMT END) AS FFNLG_AMT <!-- 과태료 금액 -->
, L.LEVY_PCPTAX - L.RCVMT_PCPTAX - L.RDCAMT_PCPTAX AS PCPTAX <!-- 본세 -->
, L.LEVY_ADAMT - L.RCVMT_ADAMT - L.RDCAMT_ADAMT AS ADAMT <!-- 가산금 -->
, L.LEVY_PCPTAX - L.RCVMT_PCPTAX - L.RDAMT_PCPTAX AS PCPTAX <!-- 본세 -->
, L.LEVY_ADAMT - L.RCVMT_ADAMT - L.RDAMT_ADAMT AS ADAMT <!-- 가산금 -->
FROM TB_CRDN C
INNER JOIN TB_CRDN_ADI CA ON (C.CRDN_ID = CA.CRDN_ID)
INNER JOIN TB_VLTN V ON (C.VLTN_ID = V.VLTN_ID)

@ -81,22 +81,22 @@
, L.ACNTG_SE_CD <!-- 회계 구분 -->
, L.TXITM_CD <!-- 세목 코드 -->
, L.LEVY_NO <!-- 부과 번호 -->
, L.INSPY_SN <!-- 분납 일련번호 -->
, L.ISPY_SN <!-- 분납 일련번호 -->
, CONCAT(L.FYR, '-', L.LEVY_NO) AS GOJI_NO
, L.LEVY_SE_CD <!-- 부과 구분 코드 -->
, (GET_CODE_NM('FIM040', L.LEVY_SE_CD)) AS LEVY_SE_NM
, L.RDUCT_SE_CD <!-- 감경 구분 코드 -->
, (GET_CODE_NM('FIM046', L.RDUCT_SE_CD)) AS RDUCT_SE_NM
, (GET_CODE_NM('FIM040', L.LEVY_SE_CD)) AS LEVY_SE_NM
, L.RDCT_SE_CD <!-- 감경 구분 코드 -->
, (GET_CODE_NM('FIM046', L.RDCT_SE_CD)) AS RDCT_SE_NM
, L.LEVY_PCPTAX <!-- 부과 본세 -->
, L.LEVY_ADAMT <!-- 부과 가산금 -->
, L.RCVMT_PCPTAX <!-- 수납 본세 -->
, L.RCVMT_ADAMT <!-- 수납 가산금 -->
, L.RDCAMT_PCPTAX <!-- 감액 본세 -->
, L.RDCAMT_ADAMT <!-- 감액 가산금 -->
, L.RDAMT_PCPTAX <!-- 감액 본세 -->
, L.RDAMT_ADAMT <!-- 감액 가산금 -->
, L.SUM_AMT <!-- 합계 금액 -->
, (L.LEVY_PCPTAX + L.LEVY_ADAMT) AS LEVY_AMT <!-- 부과 금액 -->
, (L.RCVMT_PCPTAX + L.RCVMT_ADAMT) AS RCVMT_AMT <!-- 수납 금액 -->
, (L.RDCAMT_PCPTAX + L.RDCAMT_ADAMT) AS REDUC_AMT <!-- 감액 금액 -->
, (L.RDAMT_PCPTAX + L.RDAMT_ADAMT) AS REDUC_AMT <!-- 감액 금액 -->
, GET_MINAP_AMT(C.CRDN_ID) AS MINAP_AMT <!-- 미납 금액 -->
, L.LEVY_YMD <!-- 부과 일자 -->
, L.FRST_DUDT_YMD <!-- 최초 납기 일자 -->
@ -307,7 +307,7 @@ LEFT OUTER JOIN TB_LEVY L ON (C.CRDN_ID = L.CRDN_ID AND L.DEL_YN = '
<when test="by == 'levyExclRsnCd'">LE.LEVY_EXCL_RSN_CD</when>
<when test="by == 'levyExclYmd'">LE.LEVY_EXCL_YMD</when>
<when test="by == 'etcCn'">C.ETC_CN</when>
<when test="by == 'rductSeCd'">L.RDUCT_SE_CD</when>
<when test="by == 'rdctSeCd'">L.RDCT_SE_CD</when>
<when test="by == 'gojiNo'">CONCAT(L.FYR, L.LEVY_NO)</when>
<when test="by == 'crdnSttsChgDt'">C.CRDN_STTS_CHG_YMD</when>
<when test="by == 'crdnPlc'">C.CRDN_PLC</when>

@ -38,11 +38,11 @@ INSERT
, Y_AXS
, MOSC_LEN
, MOSC_HGT
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
)
SELECT #{newMoscId}
, #{newFileId}

@ -145,7 +145,7 @@
, (CONCAT(L.FYR, '-', L.LEVY_NO)) AS GOJI_NO <!-- 고지번호 -->
, (L.LEVY_PCPTAX + L.LEVY_ADAMT) AS LEVY_AMT <!-- 부과 금액 -->
, (L.RCVMT_PCPTAX + L.RCVMT_ADAMT) AS RCVMT_AMT <!-- 수납 금액 -->
, (L.RDCAMT_PCPTAX + L.RDCAMT_ADAMT) AS RDCAMT_AMT <!-- 감액 금액 -->
, (L.RDAMT_PCPTAX + L.RDAMT_ADAMT) AS RDAMT_AMT <!-- 감액 금액 -->
FROM TB_CRDN C
INNER JOIN TB_CRDN_ADI CA ON (C.CRDN_ID = CA.CRDN_ID)
INNER JOIN TB_VLTN V ON (C.VLTN_ID = V.VLTN_ID)

@ -59,8 +59,8 @@
</div>
<!-- 감경 구분 코드 -->
<div class="col-6">
<label class="form-label fw-bold form-search-title w-px-120 text-end" for="schRductSeCd--${pageName}">감경구분</label>
<select class="form-select w-px-120" id="schRductSeCd--${pageName}" name="schRductSeCd">
<label class="form-label fw-bold form-search-title w-px-120 text-end" for="schRdctSeCd--${pageName}">감경구분</label>
<select class="form-select w-px-120" id="schRdctSeCd--${pageName}" name="schRdctSeCd">
<option value="">전체</option>
<c:forEach items="${FIM046List}" var="item">
<option value="${item.code}">${item.value}</option>
@ -208,9 +208,9 @@
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('TXITM_CD', this.innerText, 'codeValue', 'FIM075');">세목코드</th>
<th class="cmn" style="width: 200px;" onclick="searchFromGridTitle('TXITM_CD', this.innerText, 'codeValue', 'FIM075');">세목명</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('LEVY_NO', this.innerText, 'match', 'part');">부과번호</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('INSPY_SN', this.innerText, 'match', 'part');">분납순번</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('ISPY_SN', this.innerText, 'match', 'part');">분납순번</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('LEVY_SE_CD', this.innerText, 'codeValue', 'FIM040');">부과구분</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('RDUCT_SE_CD', this.innerText, 'codeValue', 'FIM046');">감경구분</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('RDCT_SE_CD', this.innerText, 'codeValue', 'FIM046');">감경구분</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('LEVY_YMD', this.innerText, 'ymd', '');">부과일자</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('FRST_DUDT_YMD', this.innerText, 'ymd', '');">최초납기일자</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('DUDT_YMD', this.innerText, 'ymd', '');">납기일자</th>
@ -219,8 +219,8 @@
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('LEVY_ADAMT', this.innerText, 'match', 'part');">부과가산금</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RCVMT_PCPTAX', this.innerText, 'match', 'part');">수납본세</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RCVMT_ADAMT', this.innerText, 'match', 'part');">수납가산금</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RDCAMT_PCPTAX', this.innerText, 'match', 'part');">감액본세</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RDCAMT_ADAMT', this.innerText, 'match', 'part');">감액가산금</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RDAMT_PCPTAX', this.innerText, 'match', 'part');">감액본세</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RDAMT_ADAMT', this.innerText, 'match', 'part');">감액가산금</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('SUM_AMT', this.innerText, 'match', 'part');">미납금액</th>
<th class="cmn" style="width: 160px;" onclick="searchFromGridTitle('TXTN_THING', this.innerText, 'match', 'part');">과세물건</th>
<th class="cmn" style="width: 240px;" onclick="searchFromGridTitle('NPMNT_RSN_CD', this.innerText, 'codeValue', 'FIM043');">체납사유</th>
@ -261,9 +261,9 @@
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{TXITM_CD}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{TXITM_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{LEVY_NO}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{INSPY_SN}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{ISPY_SN}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{LEVY_SE_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{RDUCT_SE_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{RDCT_SE_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{LEVY_YMD}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{FRST_DUDT_YMD}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{DUDT_YMD}</td>
@ -272,8 +272,8 @@
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{LEVY_ADAMT}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{RCVMT_PCPTAX}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{RCVMT_ADAMT}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{RDCAMT_PCPTAX}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{RDCAMT_ADAMT}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{RDAMT_PCPTAX}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{RDAMT_ADAMT}</td>
<td class="cmn text-end fw-bold text-red" onclick="{onclick}" ondblclick="{ondblclick}">{SUM_AMT}</td>
<td class="cmn text-start" onclick="{onclick}" ondblclick="{ondblclick}">{TXTN_THING}</td>
<td class="cmn text-start" onclick="{onclick}" ondblclick="{ondblclick}">{NPMNT_RSN_NM}</td>
@ -374,11 +374,11 @@
, FFNLG_AMT: numberFormat
, LEVY_PCPTAX: numberFormat
, LEVY_ADAMT: numberFormat
, INSPY_INT: numberFormat
, ISPY_INT: numberFormat
, RCVMT_PCPTAX: numberFormat
, RCVMT_ADAMT: numberFormat
, RDCAMT_PCPTAX: numberFormat
, RDCAMT_ADAMT: numberFormat
, RDAMT_PCPTAX: numberFormat
, RDAMT_ADAMT: numberFormat
, SUM_AMT: numberFormat
, CRDN_YMD_TM: datetimeFormat
, FFNLG_CRDN_AMT: numberFormat

@ -224,7 +224,7 @@
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('TXITM_CD', this.innerText, 'codeValue', 'FIM075');">세목코드</th>
<th class="cmn" style="width: 200px;" onclick="searchFromGridTitle('TXITM_CD', this.innerText, 'codeValue', 'FIM075');">세목명</th>
<th class="cmn" style="width: 100px;" onclick="searchFromGridTitle('LEVY_NO', this.innerText, 'match', 'part');">부과번호</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('INSPY_SN', this.innerText, 'match', 'part');">분납일련번호</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('ISPY_SN', this.innerText, 'match', 'part');">분납일련번호</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('LAST_PCPTAX', this.innerText, 'match', 'part');">최종본세</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('LAST_ADAMT', this.innerText, 'match', 'part');">최종가산금</th>
<th class="cmn" style="width: 120px;" onclick="searchFromGridTitle('RCVMT_SN', this.innerText, 'match', 'part');">수납일련번호</th>
@ -272,7 +272,7 @@
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{TXITM_CD}</td>
<td class="cmn text-start" onclick="{onclick}" ondblclick="{ondblclick}">{TXITM_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{LEVY_NO}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{INSPY_SN}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{ISPY_SN}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{LAST_PCPTAX}</td>
<td class="cmn text-end" onclick="{onclick}" ondblclick="{ondblclick}">{LAST_ADAMT}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{RCVMT_SN}</td>

@ -61,8 +61,8 @@
</div>
<!-- 분납 번호 -->
<div class="col-md-4">
<label for="inspySn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납일련번호</label>
<input type="text" class="form-control w-15" id="inspySn--${pageName}" name="inspySn" data-map="INSPY_SN" />
<label for="ispySn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납일련번호</label>
<input type="text" class="form-control w-15" id="ispySn--${pageName}" name="ispySn" data-map="ISPY_SN" />
</div>
<!-- 부과 본세 -->
<div class="col-md-4">
@ -76,8 +76,8 @@
</div>
<!-- 분납 이자 -->
<div class="col-md-4">
<label for="inspyInt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납이자</label>
<input type="text" class="form-control w-30 text-end" id="inspyInt--${pageName}" name="inspyInt" data-map="INSPY_INT" />
<label for="ispyInt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납이자</label>
<input type="text" class="form-control w-30 text-end" id="ispyInt--${pageName}" name="ispyInt" data-map="ISPY_INT" />
</div>
<p></p>
@ -190,7 +190,7 @@
CRDN_YMD_TM: datetimeFormat
, LEVY_PCPTAX: numberFormat
, LEVY_ADAMT: numberFormat
, INSPY_INT: numberFormat
, ISPY_INT: numberFormat
, RCVMT_PCPTAX: numberFormat
, RCVMT_ADAMT: numberFormat
, RCVMT_INT: numberFormat
@ -329,10 +329,10 @@
$("#txitmCd--${pageName}").prop("readonly", true); // 세목 코드
$("#fyr--${pageName}").prop("readonly", true); // 회계연도
$("#levyNo--${pageName}").prop("readonly", true); // 부과 번호
$("#inspySn--${pageName}").prop("readonly", true); // 분납 순번
$("#ispySn--${pageName}").prop("readonly", true); // 분납 순번
$("#levyPcptax--${pageName}").prop("readonly", true); // 부과 본세
$("#levyAdamt--${pageName}").prop("readonly", true); // 부과 가산금
$("#inspyInt--${pageName}").prop("readonly", true); // 분납이자
$("#ispyInt--${pageName}").prop("readonly", true); // 분납이자
// View로 호출
if ($P.callPurpose == "view") {

@ -320,7 +320,7 @@
prefix : "rdcamt"
, prefixName : "감액"
, infoSize : "md"
, keymapper : info => info ? info.RDCAMT_ID : ""
, keymapper : info => info ? info.RDAMT_ID : ""
, dataGetter : obj => obj.${infoPrefix}List
, appendData : true
, formats : {
@ -605,14 +605,14 @@
// 수정 버튼 이벤트
$P.fnUpdateRdcamt = () => {
// 감액 ID
let rdcamtId = $P.control.dataset.getValue("RDCAMT_ID");
let rdamtId = $P.control.dataset.getValue("RDAMT_ID");
// 감액 ID 가 없다면.. return
if (typeof rdcamtId == "undefined" || rdcamtId == null || rdcamtId == "") return;
if (typeof rdamtId == "undefined" || rdamtId == null || rdamtId == "") return;
let params = {
title : title
, callPurpose : "update"
, rdcamtId : rdcamtId // 감액 ID
, rdamtId : rdamtId // 감액 ID
, sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, rdcamtSeCd : $P.control.dataset.getValue("RDCAMT_SE_CD") // 감액 구분 코드

@ -114,7 +114,7 @@
>견인여부
</th>
<th class="cmn" style="width: 120px;"
onclick="searchFromGridTitle('RDUCT_SE_CD', this.innerText, 'codeValue', 'FIM046');"
onclick="searchFromGridTitle('RDCT_SE_CD', this.innerText, 'codeValue', 'FIM046');"
>감경구분
</th>
<th class="cmn" style="width: 120px;"

@ -38,7 +38,7 @@
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{OPNN_SBMSN_YN_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{ADVNTCE_DUDT_YMD}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{TOWNG_YN_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{RDUCT_SE_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{RDCT_SE_NM}</td>
<td class="cmn text-center" onclick="{onclick}" ondblclick="{ondblclick}">{LEVY_YMD}</td>
<td class="cmn fw-bold text-blue text-center" onclick="{onclick}" ondblclick="{ondblclick}">{DUDT_YMD}</td>
<td class="cmn fw-bold text-red text-end" onclick="{onclick}" ondblclick="{ondblclick}">{MINAP_AMT}</td>

@ -74,23 +74,23 @@
</div>
<!-- 감경 구분 명 -->
<div class="col-md-4">
<label for="rductSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감경구분</label>
<input type="text" class="form-control w-30" id="rductSeNm--${pageName}" name="rductSeNm" data-map="RDUCT_SE_NM" readonly />
<label for="rdctSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감경구분</label>
<input type="text" class="form-control w-30" id="rdctSeNm--${pageName}" name="rdctSeNm" data-map="RDCT_SE_NM" readonly />
</div>
<!-- 분납 일련번호 -->
<div class="col-md-4">
<label for="inspySeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납일련번호</label>
<input type="text" class="form-control w-10" id="inspySn--${pageName}" name="inspySn" data-map="INSPY_SN" readonly />
<label for="ispySn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납일련번호</label>
<input type="text" class="form-control w-10" id="ispySn--${pageName}" name="ispySn" data-map="ISPY_SN" readonly />
</div>
<!-- 분납 구분 명 -->
<div class="col-md-4">
<label for="inspySeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납구분</label>
<input type="text" class="form-control w-30" id="inspySeNm--${pageName}" name="inspySeNm" data-map="INSPY_SE_NM" readonly />
<label for="ispySeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납구분</label>
<input type="text" class="form-control w-30" id="ispySeNm--${pageName}" name="ispySeNm" data-map="ISPY_SE_NM" readonly />
</div>
<!-- 분납 이자 -->
<div class="col-md-4">
<label for="inspyInt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납이자</label>
<input type="text" class="form-control w-30 text-end" id="inspyInt--${pageName}" name="inspyInt" data-map="INSPY_INT" readonly />
<label for="ispyInt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">분납이자</label>
<input type="text" class="form-control w-30 text-end" id="ispyInt--${pageName}" name="ispyInt" data-map="ISPY_INT" readonly />
</div>
<!-- 부과 일자 -->
<div class="col-md-4">
@ -119,8 +119,8 @@
</div>
<!-- 감액 본세 -->
<div class="col-md-4">
<label for="rdcamtPcptax--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감액본세</label>
<input type="text" class="form-control w-30 text-end" id="rdcamtPcptax--${pageName}" name="rdcamtPcptax" data-map="RDCAMT_PCPTAX" readonly />
<label for="rdamtPcptax--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감액본세</label>
<input type="text" class="form-control w-30 text-end" id="rdamtPcptax--${pageName}" name="rdamtPcptax" data-map="RDAMT_PCPTAX" readonly />
</div>
<!-- 부과 가산금 -->
<div class="col-md-4">
@ -134,8 +134,8 @@
</div>
<!-- 감액 가산금 -->
<div class="col-md-4">
<label for="rdcamtAdamt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감액가산금</label>
<input type="text" class="form-control w-30 text-end" id="rdcamtAdamt--${pageName}" name="rdcamtAdamt" data-map="RDCAMT_ADAMT" readonly />
<label for="rdamtAdamt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">감액가산금</label>
<input type="text" class="form-control w-30 text-end" id="rdamtAdamt--${pageName}" name="rdamtAdamt" data-map="RDAMT_ADAMT" readonly />
</div>
<!-- -->
<div class="col-md-4">
@ -297,11 +297,11 @@
, FFNLG_AMT: numberFormat
, LEVY_PCPTAX: numberFormat
, LEVY_ADAMT: numberFormat
, INSPY_INT: numberFormat
, ISPY_INT: numberFormat
, RCVMT_PCPTAX: numberFormat
, RCVMT_ADAMT: numberFormat
, RDCAMT_PCPTAX: numberFormat
, RDCAMT_ADAMT: numberFormat
, RDAMT_PCPTAX: numberFormat
, RDAMT_ADAMT: numberFormat
, SUM_AMT: numberFormat
, RCVMT_YMD: dateFormat
, SZR_YMD: dateFormat

@ -37,7 +37,7 @@
</div>
</div>
</div>
<div class="d-flex justify-content-between">
<span id="currentOtpt--${pageName}" class="bg-lighter h3 h-px-30">
</span>
@ -47,17 +47,17 @@
<input type="hidden" name="sndngSeCd" />
<input type="hidden" name="paperSeCd" />
<input type="text" name="dialogId" hidden />
<span id="otptGlobalStng--${pageName}">
</span>
</form>
</div>
<div class="row mb-3 justify-content-start">
<div class="col-md-12">
<div class="float-start">
<strong>단일 출력 항목</strong>
<button type="button" id="btnUniqueAdd--${pageName}"
<button type="button" id="btnUniqueAdd--${pageName}"
class="btn btn-info dropdown-toggle" data-bs-toggle="dropdown">추가</button>
<ul id="dropdownUniqueAdd--${pageName}" class="dropdown-menu oy-scroll mh-px-250">
</ul>
@ -68,8 +68,8 @@
<div class="card-datatable text-nowrap mb-3">
<div class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="scrollUnique--${pageName}" class="table-responsive ox-scroll oy-scroll h-px-300">
<table
class="table-layout-fixed compress-cell dataTable table table-bordered"
<table
class="table-layout-fixed compress-cell dataTable table table-bordered"
id="tableUnique--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead class="sticky-thead" id="theadUnique--${pageName}">
</thead>
@ -79,7 +79,7 @@
</div>
</div>
</div>
<div class="row mb-3 justify-content-start">
<div class="col-md-12">
<div class="float-start">
@ -92,8 +92,8 @@
<div class="card-datatable text-nowrap mb-3">
<div class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="scrollMultiple--${pageName}" class="table-responsive ox-scroll oy-scroll h-px-300">
<table
class="table-layout-fixed compress-cell dataTable table table-bordered"
<table
class="table-layout-fixed compress-cell dataTable table table-bordered"
id="tableMultiple--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead class="sticky-thead" id="theadMultiple--${pageName}">
</thead>
@ -103,7 +103,7 @@
</div>
</div>
</div>
</div>
</div>
@ -131,7 +131,7 @@
<template id="found--${pageName}">
<tr data-key="{OTPT_FORM_ID}">
<td data-col="otptArtclOrdr" class="text-center">
<td data-col="otptArtclSeq" class="text-center">
<button type="button">▲</button>
<input type="text" readonly class="w-px-50 text-center" />
<button type="button">▼</button>
@ -186,7 +186,7 @@
<td data-col="fontSz" class="text-center">
<input type="number" class="form-control w-px-60" min="8" max="25" />
</td>
<td data-col="fontColor" class="text-center">
<td data-col="fontColr" class="text-center">
<select class="form-select no-bgi w-automin">
<option title="검정" value="BLACK"></option>
<option title="빨강" value="RED"></option>
@ -265,7 +265,7 @@ $(document).ready(function(){
var $P = pageObject["${pageName}"];
$P.otptGlobalStng = {};
$P.otptArtclStngMap = {};
$("#btnSave--${pageName}").attr("disabled","disabled");
$("#btnUniqueAdd--${pageName}").attr("disabled","disabled");
$("#btnUniqueDel--${pageName}").attr("disabled","disabled");
@ -273,7 +273,7 @@ $(document).ready(function(){
$("#btnMultipleDel--${pageName}").attr("disabled","disabled");
$P.fnLoad = () => {
var formFields = new FimsFormFields("#frmSearch--${pageName}");
var query = formFields.get();
ajax.post({
@ -289,12 +289,12 @@ $(document).ready(function(){
$("#otptGlobalStng--${pageName}").html("");
$("#tbodyUnique--${pageName}").html("");
$("#tbodyMultiple--${pageName}").html("");
$("#frmEdit--${pageName}").find("[name='sggCd']").val(query.sggCd);
$("#frmEdit--${pageName}").find("[name='taskSeCd']").val(query.taskSeCd);
$("#frmEdit--${pageName}").find("[name='sndngSeCd']").val(query.sndngSeCd);
$("#frmEdit--${pageName}").find("[name='paperSeCd']").val(query.paperSeCd);
$("#currentOtpt--${pageName}").text(resp.otptStngTitle);
if(resp.otptGlobalStng != null){
$P.otptGlobalStng = resp.otptGlobalStng;
@ -310,27 +310,27 @@ $(document).ready(function(){
$P.otptArtclStngMap = resp.otptArtclStngMap;
$P.renderOtptGlobalStng($P.otptGlobalStng);
$P.renderOtptArtclStngGrid("tbodyUnique--${pageName}",
$P.otptArtclStngMap.unique.prototypeList,
$P.renderOtptArtclStngGrid("tbodyUnique--${pageName}",
$P.otptArtclStngMap.unique.prototypeList,
$P.otptArtclStngMap.unique.dataList);
$P.renderOtptArtclStngGrid("tbodyMultiple--${pageName}",
$P.otptArtclStngMap.multiple.prototypeList,
$P.renderOtptArtclStngGrid("tbodyMultiple--${pageName}",
$P.otptArtclStngMap.multiple.prototypeList,
$P.otptArtclStngMap.multiple.dataList);
}
});
}
//출력 전역 설정 렌더링
$P.renderOtptGlobalStng = (otptGlobalStng) => {
var paperSeCd = $("#frmEdit--${pageName}").find("[name='paperSeCd']").val();
var editForm = $("#frmEdit--${pageName}");
//설정ID
$("#otptGlobalStng--${pageName}").append("<input type='hidden' name='otptBscId' />");
editForm.find("input[name='otptBscId']").val(otptGlobalStng.OTPT_BSC_ID);
//접는선 위치
$("#otptGlobalStng--${pageName}").append(document.getElementById("foldLinePstnTemplate--${pageName}").innerHTML);
if(paperSeCd == "02"){
@ -342,7 +342,7 @@ $(document).ready(function(){
editForm.find(":radio[name='foldLinePstnSeCd']")
.filter("[value='"+otptGlobalStng.FOLD_LINE_PSTN_SE_CD+"']")
.prop("checked", true);
//배경이미지
$("#otptGlobalStng--${pageName}").append(document.getElementById("bcrnTemplate--${pageName}").innerHTML);
if(otptGlobalStng.BCRN_IMG_PATH == null || otptGlobalStng.BCRN_IMG_PATH == ""){
@ -354,7 +354,7 @@ $(document).ready(function(){
$("#fileStatus--${pageName}").attr("title",otptGlobalStng.BCRN_IMG_FILE_NM);
$("#btnBgDown--${pageName}").removeAttr("hidden");
}
//출력 사진 건 수
$("#otptGlobalStng--${pageName}").append(document.getElementById("photoCntTemplate--${pageName}").innerHTML);
if(otptGlobalStng.OTPT_PHOTO_CNT == null || otptGlobalStng.OTPT_PHOTO_CNT == ""){
@ -362,34 +362,34 @@ $(document).ready(function(){
}
editForm.find("input[name='otptPhotoCnt']").val(otptGlobalStng.OTPT_PHOTO_CNT);
}
//출력 요소 그리드 렌더링
$P.renderOtptArtclStngGrid = (tbodyId, prototypeList, dataList) => {
var components = "<option value='' data-component-type=''>선택</option>";
for(var i=0; i < prototypeList.length; i++){
var p = prototypeList[i];
components += "<option value='"+p.artclNm+"' >"+p.artclDscrp+"</option>";
}
for(var i=0; i < dataList.length; i++){
var data = dataList[i];
var found = document.getElementById("found--${pageName}").innerHTML;
found = found.replace(/{OTPT_FORM_ID}/gi, data.OTPT_FORM_ID);
found = found.replace(/{COMPONENTS}/gi, components);
$("#"+tbodyId).append(found);
var lastTr = $("#"+tbodyId).find("tr").last()[0];
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontNm"));
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontColor"));
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontColr"));
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontStyle"));
$($P.fnGetElement(lastTr,"otptArtclNm")).set(data.OTPT_ARTCL_NM);
$($P.fnGetElement(lastTr,"componentType")).set(data.COMPONENT_TYPE);
$($P.fnGetElement(lastTr,"leftPstn"))
.set(!isEmpty(data.LEFT_PSTN) ? data.LEFT_PSTN : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "leftPstn"));
$($P.fnGetElement(lastTr,"topPstn"))
@ -398,7 +398,7 @@ $(document).ready(function(){
.set(!isEmpty(data.WIDTH_SZ) ? data.WIDTH_SZ : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "widthSz"));
$($P.fnGetElement(lastTr,"heightSz"))
.set(!isEmpty(data.HEIGHT_SZ) ? data.HEIGHT_SZ : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "heightSz"));
$($P.fnGetElement(lastTr,"textSort"))
.set(!isEmpty(data.TEXT_SORT) ? data.TEXT_SORT : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "textSort"));
$($P.fnGetElement(lastTr,"lineChgYn"))
@ -407,42 +407,42 @@ $(document).ready(function(){
.set(!isEmpty(data.FONT_NM) ? data.FONT_NM : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "fontNm"));
$($P.fnGetElement(lastTr,"fontSz"))
.set(!isEmpty(data.FONT_SZ) ? data.FONT_SZ : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "fontSz"));
$($P.fnGetElement(lastTr,"fontColor"))
.set(!isEmpty(data.FONT_COLOR) ? data.FONT_COLOR : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "fontColor"));
$($P.fnGetElement(lastTr,"fontColr"))
.set(!isEmpty(data.FONT_COLR) ? data.FONT_COLR : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "fontColr"));
$($P.fnGetElement(lastTr,"fontStyle"))
.set(!isEmpty(data.FONT_STYLE) ? data.FONT_STYLE : $P.fnGetProto(prototypeList, data.OTPT_ARTCL_NM, "fontStyle"));
}
$("#"+tbodyId).find("tr").each(function(){
if(tbodyId == "tbodyUnique--${pageName}"){
if(tbodyId == "tbodyUnique--${pageName}"){
var el = $P.fnGetElement(this,"otptArtclNm");
$(el).attr("disabled","disabled");
$(el).addClass("no-bgi");
}
var sel = $P.fnGetElement(this,"textSort");
var toPrev = $(sel).siblings()[0];
var toNext = $(sel).siblings()[1];
fnMakeSpinnerSelect(sel, toPrev, toNext);
var scrollDiv = "";
if(tbodyId == "tbodyUnique--${pageName}"){
scrollDiv = "scrollUnique--${pageName}";
} else {
scrollDiv = "scrollMultiple--${pageName}";
}
var rowSpinButtons = $(this).find("td[data-col='otptArtclOrdr']").find("button");
var rowSpinButtons = $(this).find("td[data-col='otptArtclSeq']").find("button");
fnMakeRowSpinner(this,rowSpinButtons[0],rowSpinButtons[1],document.getElementById(scrollDiv), $P.validForBackground);
});
}
$P.fnGetElement = (tableRow, colName) => {
return $(tableRow).find("td[data-col='"+colName+"']").children("input, select").first()[0];
}
$P.fnGetProto = (prototypeList, otptArtclNm, stngItemAttrNm) => {
if(stngItemAttrNm == "leftPstn" || stngItemAttrNm == "topPstn"){
var paperSeCd = $("#frmEdit--${pageName}").find("[name='paperSeCd']").val();
@ -466,23 +466,23 @@ $(document).ready(function(){
return prototypeList.find((item) => item.artclNm == otptArtclNm)[stngItemAttrNm];
}
}
//출력 요소 선택
$P.choiceOtptArtclNm = () => {
$("#dropdownUniqueAdd--${pageName}").html("");
var prototypeList = $P.otptArtclStngMap.unique.prototypeList;
var existArr = [];
$("#tbodyUnique--${pageName} tr").each(function(){
var el = $P.fnGetElement(this,"otptArtclNm");
existArr.push($(el).val());
});
var selectableArr = prototypeList.filter(item => existArr.indexOf(item.artclNm) == -1);
var template = document.getElementById("dropdownTemplate--${pageName}");
if(selectableArr.length < 1){
var li = template.innerHTML;
li = li.replace(/{onclick}/gi, "");
@ -497,13 +497,13 @@ $(document).ready(function(){
}
}
}
//행 추가
$P.addRow = (otptArtclNm) => {
var paperSeCd = $("#frmEdit--${pageName}").find("[name='paperSeCd']").val();
var prototypeList;
var tbodyId;
if(otptArtclNm == null || otptArtclNm == ""){
prototypeList = $P.otptArtclStngMap.multiple.prototypeList;
tbodyId = "tbodyMultiple--${pageName}";
@ -521,29 +521,29 @@ $(document).ready(function(){
template = template.replace(/{OTPT_FORM_ID}/gi, "");
template = template.replace(/{COMPONENTS}/gi, components);
$("#"+tbodyId).append(template);
var lastTr = $("#"+tbodyId).find("tr").last()[0];
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontNm"));
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontColor"));
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontColr"));
fnMakeOptionStyleSelect($P.fnGetElement(lastTr,"fontStyle"));
var scrollDiv = "";
if(tbodyId == "tbodyUnique--${pageName}"){
scrollDiv = "scrollUnique--${pageName}";
} else {
scrollDiv = "scrollMultiple--${pageName}";
}
var rowSpinButtons = $(lastTr).find("td[data-col='otptArtclOrdr']").find("button");
var rowSpinButtons = $(lastTr).find("td[data-col='otptArtclSeq']").find("button");
fnMakeRowSpinner(lastTr,rowSpinButtons[0],rowSpinButtons[1],document.getElementById(scrollDiv), $P.validForBackground);
if(otptArtclNm != null && otptArtclNm != ""){
if(otptArtclNm != null && otptArtclNm != ""){
$($P.fnGetElement(lastTr,"otptArtclNm")).set(otptArtclNm);
$($P.fnGetElement(lastTr,"componentType"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "componentType"));
$($P.fnGetElement(lastTr,"leftPstn"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "leftPstn"));
$($P.fnGetElement(lastTr,"topPstn"))
@ -552,7 +552,7 @@ $(document).ready(function(){
.set($P.fnGetProto(prototypeList, otptArtclNm, "widthSz"));
$($P.fnGetElement(lastTr,"heightSz"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "heightSz"));
$($P.fnGetElement(lastTr,"textSort"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "textSort"));
$($P.fnGetElement(lastTr,"lineChgYn"))
@ -561,71 +561,71 @@ $(document).ready(function(){
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontNm"));
$($P.fnGetElement(lastTr,"fontSz"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontSz"));
$($P.fnGetElement(lastTr,"fontColor"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontColor"));
$($P.fnGetElement(lastTr,"fontColr"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontColr"));
$($P.fnGetElement(lastTr,"fontStyle"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontStyle"));
}
if(tbodyId == "tbodyUnique--${pageName}"){
var el = $P.fnGetElement(lastTr,"otptArtclNm");
$(el).attr("disabled","disabled");
$(el).addClass("no-bgi");
}
//셀렉트 스피너
var sel = $P.fnGetElement(lastTr,"textSort");
var toPrev = $(sel).siblings()[0];
var toNext = $(sel).siblings()[1];
fnMakeSpinnerSelect(sel, toPrev, toNext);
if(tbodyId == "tbodyUnique--${pageName}"){
$("#scrollUnique--${pageName}").scrollTop($("#scrollUnique--${pageName}")[0].scrollHeight);
} else {
$("#scrollMultiple--${pageName}").scrollTop($("#scrollMultiple--${pageName}")[0].scrollHeight);
}
if(otptArtclNm == "background"){ //배경이미지 순서 보정
if($("#tbodyUnique--${pageName}").find("tr").length >= 2){
$("#tbodyUnique--${pageName}").find("tr").eq(0).before(lastTr);
}
}
}
//행 삭제
$P.delRow = (tbodyId) => {
if($("#"+tbodyId).find("tr").length <= 0){
alert('삭제할 항목이 없습니다.');
return;
}
if($("#"+tbodyId).find("input[name='del'][type='checkbox']:checked").length <= 0){
alert('체크된 항목이 없습니다.');
return;
}
$("#"+tbodyId).find("tr").filter(function(index, selector){
if($(selector).find("input[name='del'][type='checkbox']").is(":checked")){
$(selector).remove();
}
});
}
//출력 요소 변경
$P.fnChangeComponent = (selectElement) => {
if($("#tbodyMultiple--${pageName}").find(selectElement).length <= 0){
return;
}
var otptArtclNm = $(selectElement).val();
var tr = $(selectElement).parent().parent()[0];
var prototypeList = $P.otptArtclStngMap.multiple.prototypeList;
$($P.fnGetElement(tr,"componentType"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "componentType"));
$($P.fnGetElement(tr,"leftPstn"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "leftPstn"));
$($P.fnGetElement(tr,"topPstn"))
@ -634,23 +634,23 @@ $(document).ready(function(){
.set($P.fnGetProto(prototypeList, otptArtclNm, "widthSz"));
$($P.fnGetElement(tr,"heightSz"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "heightSz"));
$($P.fnGetElement(tr,"textSort"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "textSort"));
$($P.fnGetElement(tr,"lineChgYn"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "lineChgYn"));
$($P.fnGetElement(tr,"fontNm"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontNm"));
$($P.fnGetElement(tr,"fontSz"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontSz"));
$($P.fnGetElement(tr,"fontColor"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontColor"));
$($P.fnGetElement(tr,"fontColr"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontColr"));
$($P.fnGetElement(tr,"fontStyle"))
.set($P.fnGetProto(prototypeList, otptArtclNm, "fontStyle"));
}
//출력 요소 설정 값 추출
$P.getRowData = (tbodyId, formData) => {
var rowArr = [];
@ -663,39 +663,39 @@ $(document).ready(function(){
row.topPstn = $($P.fnGetElement(this,"topPstn")).val();
row.widthSz = $($P.fnGetElement(this,"widthSz")).val();
row.heightSz = $($P.fnGetElement(this,"heightSz")).val();
row.textSort = $($P.fnGetElement(this,"textSort")).val();
var lineChgYnEl = $P.fnGetElement(this,"lineChgYn");
if($(lineChgYnEl).is(":checked")){
row.lineChgYn = "Y";
} else {
row.lineChgYn = "N";
}
row.fontNm = $($P.fnGetElement(this,"fontNm")).val();
row.fontSz = $($P.fnGetElement(this,"fontSz")).val();
row.fontColor = $($P.fnGetElement(this,"fontColor")).val();
row.fontColr = $($P.fnGetElement(this,"fontColr")).val();
row.fontStyle = $($P.fnGetElement(this,"fontStyle")).val();
row.otptArtclOrdr = $($P.fnGetElement(this,"otptArtclOrdr")).val();
row.otptArtclSeq = $($P.fnGetElement(this,"otptArtclSeq")).val();
row.sggCd = formData.get("sggCd");
row.taskSeCd = formData.get("taskSeCd");
row.sndngSeCd = formData.get("sndngSeCd");
row.paperSeCd = formData.get("paperSeCd");
rowArr.push(row);
});
return rowArr;
}
//출력 설정 저장
$P.fnSave = () => {
//출력물 전역설정
var formData = new FormData(document.getElementById("frmEdit--${pageName}"));
//출력 요소 설정
var rowArr1 = $P.getRowData("tbodyUnique--${pageName}", formData);
var rowArr2 = $P.getRowData("tbodyMultiple--${pageName}", formData);
@ -706,13 +706,13 @@ $(document).ready(function(){
return;
}
}
var otptArtclStngList = fnJsonArrayToFormData(rowArr,"otptArtclStngList");
var keys = Object.keys(otptArtclStngList);
for(var i=0; i < keys.length; i++){
formData.append(keys[i], otptArtclStngList[keys[i]]);
}
ajax.post({
url : wctx.url("/stng/stng01/010/save.do"),
data : formData,
@ -728,9 +728,9 @@ $(document).ready(function(){
$("#frmSearch--${pageName}").find("[name='taskSeCd']").val(formFields.taskSeCd);
$("#frmSearch--${pageName}").find("[name='sndngSeCd']").val(formFields.sndngSeCd);
$("#frmSearch--${pageName}").find("[name='paperSeCd']").val(formFields.paperSeCd);
$("#btnLoad--${pageName}").click();
if($("#viewSample--${pageName}").is(":checked")){
$P.fnMakeSampleFile();
}
@ -738,14 +738,14 @@ $(document).ready(function(){
}
});
}
//샘플파일 생성
$P.fnMakeSampleFile = () => {
var formFields = new FimsFormFields("#frmEdit--${pageName}");
var submitParam = formFields.get();
submitParam.crdnIds = "sample";
var url = "";
if(submitParam.sndngSeCd == "02"){
url = wctx.url("/sprt/sprt01/140/makeAdvntcePdf.do");
@ -756,10 +756,10 @@ $(document).ready(function(){
if(url == ""){
return;
}
var parameter = toQuery(submitParam);
var filenameInHeader = "";
fetch(url + "?" + parameter)
.then((response) => {
var header = response.headers.get('Content-Disposition');
@ -774,7 +774,7 @@ $(document).ready(function(){
});
new Error("");
}
var parts = header.split(';');
filenameInHeader = decodeURIComponent(parts[1].split('=')[1]);
return response.blob();
@ -783,9 +783,9 @@ $(document).ready(function(){
openPDF(blob, "pdf_sample");
})
.catch(()=>{});
}
//배경이미지 출력 순서 고정
$P.validForBackground = (eventInfo) => {
if(eventInfo.clickedButtonType == "up"){
@ -800,10 +800,10 @@ $(document).ready(function(){
return false;
}
}
return true;
};
$P.fnBgDown = () => {
var a = document.createElement("a");
a.href = $P.otptGlobalStng.BCRN_IMG_PATH;
@ -812,7 +812,7 @@ $(document).ready(function(){
a.click();
document.getElementById("tempArea--${pageName}").removeChild(a);
}
$P.fnBgUpload = (fileElement) => {
if(fileElement.files == null || fileElement.files.length == 0){
if($P.otptGlobalStng.BCRN_IMG_PATH == null || $P.otptGlobalStng.BCRN_IMG_PATH == ""){
@ -830,27 +830,27 @@ $(document).ready(function(){
$("#btnBgDown--${pageName}").attr("hidden","hidden");
}
}
$("#theadUnique--${pageName}").html($("#theadTr--${pageName}")[0].innerHTML);
$("#theadMultiple--${pageName}").html($("#theadTr--${pageName}")[0].innerHTML);
$("#btnLoad--${pageName}").on("click", () => $P.fnLoad() );
$("#btnUniqueAdd--${pageName}").on("click", () => $P.choiceOtptArtclNm() );
$("#btnMultipleAdd--${pageName}").on("click", () => $P.addRow() );
$("#btnUniqueDel--${pageName}").on("click", () => $P.delRow('tbodyUnique--${pageName}') );
$("#btnMultipleDel--${pageName}").on("click", () => $P.delRow('tbodyMultiple--${pageName}') );
$("#btnSave--${pageName}").on("click", () => $P.fnSave() );
var markerFinder = function(tr){
return $P.fnGetElement(tr,"otptArtclOrdr");
return $P.fnGetElement(tr,"otptArtclSeq");
};
var markerSetter = function(marker, value){
marker.value = value;
};
fnMakeRowNumberingTable(document.getElementById('tbodyUnique--${pageName}'), markerFinder, markerSetter);
fnMakeRowNumberingTable(document.getElementById('tbodyMultiple--${pageName}'), markerFinder, markerSetter);

Loading…
Cancel
Save