Files
IncomeTaxSystem/static/js/itr_calc.js

73 lines
2.5 KiB
JavaScript

document.addEventListener("DOMContentLoaded", function () {
function getValue(id) {
var el = document.getElementsByName(id)[0];
return el ? parseFloat(el.value) || 0 : 0;
}
function setValue(id, val) {
var el = document.getElementsByName(id)[0];
if (el) el.value = Number(val).toFixed(2);
}
window.calculate = function () {
// --- BASIC INPUTS ---
var gross_total_income = getValue("gross_total_income");
var disallowance_14a = getValue("disallowance_14a");
var disallowance_37 = getValue("disallowance_37");
// // Auto-calculations (your logic)
setValue("gross_total_income", disallowance_37 + gross_total_income);
setValue("disallowance_37", disallowance_14a + disallowance_37);
// --- DEDUCTIONS ---
var d80_business = getValue("deduction_80ia_business");
var d80_misc = getValue("deduction_80ia_misc");
var d80_other = getValue("deduction_80ia_other");
var deduction_sec37 = d80_business + d80_misc + d80_other - 1.35;
setValue("deduction_sec37_disallowance", deduction_sec37);
var deduction_80g = getValue("deduction_80g");
// --- NET TAXABLE INCOME ---
var net_taxable_income = gross_total_income - deduction_sec37 - deduction_80g;
setValue("net_taxable_income", net_taxable_income);
// --- TAX 30% ---
setValue("tax_30_percent", net_taxable_income * 0.30);
// --- TAX PAYABLE (18.5%) ---
var tax_book = getValue("tax_book_profit_18_5");
setValue("tax_payable", tax_book);
var surcharge = tax_book * 0.12;
setValue("surcharge_12", surcharge);
var edu_cess = (tax_book + surcharge) * 0.03;
setValue("edu_cess_3", edu_cess);
var total_tax_payable = tax_book + surcharge + edu_cess;
setValue("total_tax_payable", total_tax_payable);
// --- FINAL TAX ---
var mat_credit = getValue("mat_credit");
var interest_234c = getValue("interest_234c");
var total_tax = total_tax_payable + mat_credit + interest_234c;
setValue("total_tax", total_tax);
// --- ASSESSMENT ---
var adv_tax = getValue("advance_tax");
var tds = getValue("tds");
var tcs = getValue("tcs");
var tax_on_assessment = adv_tax + tds + tcs;
setValue("tax_on_assessment", tax_on_assessment);
var refund = total_tax - tax_on_assessment;
setValue("refund", refund);
};
});