From a535e863c4500dce227a6dc6d54f836b90b330d0 Mon Sep 17 00:00:00 2001 From: xxssyyyyssxx Date: Fri, 5 Nov 2021 17:01:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=9D=E7=95=99=E4=B8=A4=E4=BD=8D=E5=B0=8F?= =?UTF-8?q?=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../static/assets/js/project_budget_income.js | 18 ++++---- .../static/assets/js/project_common.js | 45 +++++++++++++------ .../templates/admin/project_budget_edit.ftl | 6 +-- 3 files changed, 43 insertions(+), 26 deletions(-) diff --git a/src/main/resources/static/assets/js/project_budget_income.js b/src/main/resources/static/assets/js/project_budget_income.js index 7185245..60bf45d 100644 --- a/src/main/resources/static/assets/js/project_budget_income.js +++ b/src/main/resources/static/assets/js/project_budget_income.js @@ -36,16 +36,16 @@ function updateIncomeData(incomeDetails) { incomeDetails.forEach(function (t, number, ts) { if(t["type"] == "1"){ //设备类 - deviceTaxInclude += parseFloat(t["totalTaxInclude"]); - deviceTaxExclude += parseFloat(t["totalTaxExclude"]); + deviceTaxInclude += f2(t["totalTaxInclude"]); + deviceTaxExclude += f2(t["totalTaxExclude"]); }else if(t["type"] == "2"){ //工程类 - engineerTaxInclude += parseFloat(t["totalTaxInclude"]); - engineerTaxExclude += parseFloat(t["totalTaxExclude"]); + engineerTaxInclude += f2(t["totalTaxInclude"]); + engineerTaxExclude += f2(t["totalTaxExclude"]); }else if(t["type"] == "3"){ //服务类 - serviceTaxInclude += parseFloat(t["totalTaxInclude"]); - serviceTaxExclude += parseFloat(t["totalTaxExclude"]); + serviceTaxInclude += f2(t["totalTaxInclude"]); + serviceTaxExclude += f2(t["totalTaxExclude"]); } }); $("input[name='incomeDeviceTaxInclude']").val(deviceTaxInclude); @@ -76,9 +76,9 @@ function appendTrIncome() { ' \n' + ' \n' + ' \n' + - ' \n' + - ' \n' + - ' \n' + + ' \n' + + ' \n' + + ' \n' + ' \n' + ' \n' + ' \n' + diff --git a/src/main/resources/static/assets/js/project_common.js b/src/main/resources/static/assets/js/project_common.js index f9d32f2..a057f47 100644 --- a/src/main/resources/static/assets/js/project_common.js +++ b/src/main/resources/static/assets/js/project_common.js @@ -1,3 +1,20 @@ +/** + * parse float保留两位小数,四舍五入 + * @param x + * @returns {*} + */ +function f2(x) { + if(!x){ + return NaN; + } + var f = parseFloat(x); + if (isNaN(f)) { + return x; + } + return Math.round(x*100)/100; +} + + /** * 一维数组变二维数组 * @param list @@ -107,34 +124,34 @@ function saveDetail(url, data, callback) { function bindChangeableInput() { //数量改变 $(".input-changeable-amount").change(function () { - var amount = parseFloat($(this).val()); + var amount = parseInt($(this).val()); //找到对应的单价和税率 - var price = parseFloat($(this).parent().parent().find(".input-changeable-price").val()); - var taxRate = parseFloat($(this).parent().parent().find(".input-changeable-tax-rate").val()); + var price = f2($(this).parent().parent().find(".input-changeable-price").val()); + var taxRate = f2($(this).parent().parent().find(".input-changeable-tax-rate").val()); console.log(amount,price,taxRate); - $(this).parent().parent().find(".input-changeable-total-tax-include").val(amount*price); - $(this).parent().parent().find(".input-changeable-total-tax-exclude").val(amount*price/(1+taxRate/100)); + $(this).parent().parent().find(".input-changeable-total-tax-include").val(f2(amount*price)); + $(this).parent().parent().find(".input-changeable-total-tax-exclude").val(f2(amount*price/(1+taxRate/100))); }); //单价改变 $(".input-changeable-price").change(function () { - var price = parseFloat($(this).val()); + var price = f2($(this).val()); //找到对应的数量和税率 - var amount = parseFloat($(this).parent().parent().find(".input-changeable-amount").val()); - var taxRate = parseFloat($(this).parent().parent().find(".input-changeable-tax-rate").val()); + var amount = parseInt($(this).parent().parent().find(".input-changeable-amount").val()); + var taxRate = f2($(this).parent().parent().find(".input-changeable-tax-rate").val()); console.log(amount,price,taxRate); - $(this).parent().parent().find(".input-changeable-total-tax-include").val(amount*price); - $(this).parent().parent().find(".input-changeable-total-tax-exclude").val(amount*price/(1+taxRate/100)); + $(this).parent().parent().find(".input-changeable-total-tax-include").val(f2(amount*price)); + $(this).parent().parent().find(".input-changeable-total-tax-exclude").val(f2(amount*price/(1+taxRate/100))); }); //税率改变 $(".input-changeable-tax-rate").change(function () { - var taxRate = parseFloat($(this).val()); + var taxRate = f2($(this).val()); //找到对应的数量和单价 - var amount = parseFloat($(this).parent().parent().find(".input-changeable-amount").val()); - var price = parseFloat($(this).parent().parent().find(".input-changeable-price").val()); + var amount = parseInt($(this).parent().parent().find(".input-changeable-amount").val()); + var price = f2($(this).parent().parent().find(".input-changeable-price").val()); console.log(amount,price,taxRate); - $(this).parent().parent().find(".input-changeable-total-tax-exclude").val(amount*price/(1+taxRate/100)); + $(this).parent().parent().find(".input-changeable-total-tax-exclude").val(f2(amount*price/(1+taxRate/100))); }); } \ No newline at end of file diff --git a/src/main/resources/templates/admin/project_budget_edit.ftl b/src/main/resources/templates/admin/project_budget_edit.ftl index 2a584f5..3827844 100644 --- a/src/main/resources/templates/admin/project_budget_edit.ftl +++ b/src/main/resources/templates/admin/project_budget_edit.ftl @@ -441,9 +441,9 @@ - - - + + +