From 0d41aa39d3cb11575a65bb502b1b05ecb8bb10a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EB=B0=95=EC=84=B1=EC=98=81?= Date: Fri, 19 Sep 2025 10:00:44 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B6=80=EA=B3=BC=EC=98=88=EA=B3=A0=20?= =?UTF-8?q?=EC=B4=88=EA=B8=B0=20=EC=9E=91=EC=97=85=20=EC=9D=BC=EB=8B=A8=20?= =?UTF-8?q?=EC=A4=91=EC=A7=80,=20=ED=96=89=EC=9C=84=EC=A0=95=EB=B3=B4=20?= =?UTF-8?q?=EC=BD=94=EB=93=9C=20=ED=85=8C=EC=9D=B4=EB=B8=94=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD=20=EC=A0=81=EC=9A=A9=20=EB=B0=8F=20=EB=A9=B4=EC=A0=81?= =?UTF-8?q?=20=EC=B2=98=EB=A6=AC=20=EC=9A=B0=EC=84=A0=20=EC=A7=84=ED=96=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/crdnLevyPrvntc/levyPrvntcPopup.jsp | 56 +++++++++++++++---- .../WEB-INF/views/layouts/base/default.jsp | 5 +- .../WEB-INF/views/layouts/popup/default.jsp | 5 +- src/main/webapp/resources/xit/common_util.js | 1 + 4 files changed, 53 insertions(+), 14 deletions(-) diff --git a/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/crdnLevyPrvntc/levyPrvntcPopup.jsp b/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/crdnLevyPrvntc/levyPrvntcPopup.jsp index 879f825..cb4cf31 100644 --- a/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/crdnLevyPrvntc/levyPrvntcPopup.jsp +++ b/src/main/webapp/WEB-INF/views/crdn/crndRegistAndView/main/crdnLevyPrvntc/levyPrvntcPopup.jsp @@ -182,7 +182,7 @@ 시가표준액
(1,000원미만절삭) - + X X @@ -201,16 +201,16 @@ = - - + + - - - - - - + + + + + + @@ -455,10 +455,17 @@ } else { rate = ""; } - $('#bscsCstrnRt').val(rate); + $('#bscsCstrnRt').val(rate).trigger('input'); + + // 자동계산 함수 호출 + calculateAuto(); } } }); + + // 계산에 사용되는 입력 필드 변경 시 자동 계산 호출 + var calculationInputs = '#bldgNewPrcCrtrAmt, #strctIdx, #usgIdx, #pstnIdx, #elpsYrRdvlrt'; + $(document).on('change', calculationInputs, calculateAuto); }, /** @@ -569,6 +576,31 @@ }; + /** + * 자동 계산 + * @description 각 항목의 값을 곱하여 건축물과세시가와 시가표준액을 계산합니다. + * - 건축물과세시가 = 건물기준시가액 * 구조지수 * 용도지수 * 위치지수 * 경과년수별잔가율 * 기초공사율 + * - 시가표준액 = 건축물과세시가에서 1,000원 미만 절사 + */ + function calculateAuto() { + var bldgNewPrcCrtrAmt = parseFloat($('#bldgNewPrcCrtrAmt').inputmask('unmaskedvalue')) || 0; + var strctIdx = parseFloat($('#strctIdx').inputmask('unmaskedvalue')) || 0; + var usgIdx = parseFloat($('#usgIdx').inputmask('unmaskedvalue')) || 0; + var pstnIdx = parseFloat($('#pstnIdx').inputmask('unmaskedvalue')) || 0; + var elpsYrRdvlrt = parseFloat($('#elpsYrRdvlrt').inputmask('unmaskedvalue')) || 0; + var bscsCstrnRt = parseFloat($('#bscsCstrnRt').inputmask('unmaskedvalue')) || 0; + + // 건축물과세시가 계산 + var taxableMarketPrice = bldgNewPrcCrtrAmt * strctIdx * usgIdx * pstnIdx * elpsYrRdvlrt * bscsCstrnRt; + + // 시가표준액 계산: 1,000원 미만 절사 + var standardMarketPrice = Math.floor(taxableMarketPrice / 1000) * 1000; + + // 계산된 값을 input 필드에 설정 + $('#taxableMarketPrice').val(Math.round(taxableMarketPrice)).trigger('focus'); + $('#standardMarketPrice').val(standardMarketPrice).trigger('focus'); + } + /** * 그리드 행 선택시 실행되는 함수 * @param rowData @@ -577,8 +609,8 @@ if (!rowData) return; $('#bscsCstrnRt').val(''); - $('#bldgNewPrcCrtrAmt_nm').val(rowData.bldgNewPrcCrtrAmt ? parseFloat(rowData.bldgNewPrcCrtrAmt).toLocaleString() : ''); - $('#bldgNewPrcCrtrAmt').val(); + $('#bldgNewPrcCrtrAmt_nm').val(rowData.bldgNewPrcCrtrAmt).trigger('focus'); + $('#bldgNewPrcCrtrAmt').val(rowData.bldgNewPrcCrtrAmt).trigger('focus'); $('#strctIdx_nm').val(rowData.strctIdxCdNm); $('#strctIdx').val(rowData.strctIdx); diff --git a/src/main/webapp/WEB-INF/views/layouts/base/default.jsp b/src/main/webapp/WEB-INF/views/layouts/base/default.jsp index 97c611c..68933b4 100644 --- a/src/main/webapp/WEB-INF/views/layouts/base/default.jsp +++ b/src/main/webapp/WEB-INF/views/layouts/base/default.jsp @@ -56,7 +56,10 @@ - + <%----%> + <%-- inputmask 변경 테스트 필요 --%> + <%----%> + <%-- tui grid --%> diff --git a/src/main/webapp/WEB-INF/views/layouts/popup/default.jsp b/src/main/webapp/WEB-INF/views/layouts/popup/default.jsp index 2304a34..87034a8 100644 --- a/src/main/webapp/WEB-INF/views/layouts/popup/default.jsp +++ b/src/main/webapp/WEB-INF/views/layouts/popup/default.jsp @@ -52,7 +52,10 @@ - + <%----%> + <%-- inputmask 변경 테스트 필요 --%> + <%----%> + <%-- tui grid --%> diff --git a/src/main/webapp/resources/xit/common_util.js b/src/main/webapp/resources/xit/common_util.js index 25aa10c..e6a63f4 100644 --- a/src/main/webapp/resources/xit/common_util.js +++ b/src/main/webapp/resources/xit/common_util.js @@ -84,6 +84,7 @@ $(document).ready(function () { }); }); + // 중요로직: Strct_Idx_Cd 전용 마스크 - 숫자 3자리 $("body").on("focus", ".strctIdxCdMask", function () { $(this).inputmask({