test formula for 509.2
This commit is contained in:
parent
0233c72425
commit
51ea019b32
|
|
@ -50,6 +50,9 @@ frappe.ui.form.on('Property tax return', {
|
||||||
|
|
||||||
// Validate minimum asset values
|
// Validate minimum asset values
|
||||||
validate_minimum_asset_value(frm);
|
validate_minimum_asset_value(frm);
|
||||||
|
|
||||||
|
// Calculate 509.2 on load
|
||||||
|
calculate_509_2(frm);
|
||||||
},
|
},
|
||||||
|
|
||||||
// Handle year changes
|
// Handle year changes
|
||||||
|
|
@ -57,6 +60,7 @@ frappe.ui.form.on('Property tax return', {
|
||||||
if (frm.doc.il && (frm.doc.tam_il || frm.doc.il_erzinde)) {
|
if (frm.doc.il && (frm.doc.tam_il || frm.doc.il_erzinde)) {
|
||||||
reload_property_tax_data(frm);
|
reload_property_tax_data(frm);
|
||||||
}
|
}
|
||||||
|
calculate_509_2(frm);
|
||||||
},
|
},
|
||||||
|
|
||||||
// Checkbox handlers - ensure mutual exclusivity
|
// Checkbox handlers - ensure mutual exclusivity
|
||||||
|
|
@ -71,6 +75,9 @@ frappe.ui.form.on('Property tax return', {
|
||||||
// Clear warnings when switching to tam_il
|
// Clear warnings when switching to tam_il
|
||||||
validate_minimum_asset_value(frm);
|
validate_minimum_asset_value(frm);
|
||||||
|
|
||||||
|
// Calculate 509.2
|
||||||
|
calculate_509_2(frm);
|
||||||
|
|
||||||
if (frm.doc.il) {
|
if (frm.doc.il) {
|
||||||
reload_property_tax_data(frm);
|
reload_property_tax_data(frm);
|
||||||
}
|
}
|
||||||
|
|
@ -91,6 +98,9 @@ frappe.ui.form.on('Property tax return', {
|
||||||
// Validate when checking il_erzinde
|
// Validate when checking il_erzinde
|
||||||
validate_minimum_asset_value(frm);
|
validate_minimum_asset_value(frm);
|
||||||
|
|
||||||
|
// Calculate 509.2
|
||||||
|
calculate_509_2(frm);
|
||||||
|
|
||||||
if (frm.doc.il) {
|
if (frm.doc.il) {
|
||||||
reload_property_tax_data(frm);
|
reload_property_tax_data(frm);
|
||||||
}
|
}
|
||||||
|
|
@ -100,6 +110,7 @@ frappe.ui.form.on('Property tax return', {
|
||||||
} else {
|
} else {
|
||||||
// Clear warnings when unchecking il_erzinde
|
// Clear warnings when unchecking il_erzinde
|
||||||
validate_minimum_asset_value(frm);
|
validate_minimum_asset_value(frm);
|
||||||
|
calculate_509_2(frm);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -427,6 +438,9 @@ function reload_property_tax_data(frm) {
|
||||||
|
|
||||||
frm.refresh_fields();
|
frm.refresh_fields();
|
||||||
|
|
||||||
|
// Calculate 509.2 after data reload
|
||||||
|
calculate_509_2(frm);
|
||||||
|
|
||||||
frappe.show_alert({
|
frappe.show_alert({
|
||||||
message: __('Property tax data loaded successfully'),
|
message: __('Property tax data loaded successfully'),
|
||||||
indicator: 'green'
|
indicator: 'green'
|
||||||
|
|
@ -737,6 +751,50 @@ function highlight_invalid_cells(frm, invalid_rows_1, invalid_rows_2) {
|
||||||
|
|
||||||
// ==================== END VALIDATION ====================
|
// ==================== END VALIDATION ====================
|
||||||
|
|
||||||
|
// ==================== FORMULA 509.2 CALCULATION ====================
|
||||||
|
// Calculate field 509.2 based on formula: ((503.1 + 504.1) / 24 * 507) * 1%
|
||||||
|
|
||||||
|
function calculate_509_2(frm) {
|
||||||
|
// Only calculate when il_erzinde is checked
|
||||||
|
if (!frm.doc.il_erzinde) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get value from field 507 (ayla from vergi_hesab_4cu_1 first row)
|
||||||
|
let value_507 = 0;
|
||||||
|
if (frm.doc.vergi_hesab_4cu_1 && frm.doc.vergi_hesab_4cu_1.length > 0) {
|
||||||
|
value_507 = flt(frm.doc.vergi_hesab_4cu_1[0].ayla);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get value from field 503.1 (manatla from vergi_hesab_1ci_1)
|
||||||
|
let value_503_1 = 0;
|
||||||
|
(frm.doc.vergi_hesab_1ci_1 || []).forEach(row => {
|
||||||
|
if (row.göstəricilər && row.göstəricilər.startsWith('503.1')) {
|
||||||
|
value_503_1 = flt(row.manatla);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Get value from field 504.1 (manatla from vergi_hesab_2ci)
|
||||||
|
let value_504_1 = 0;
|
||||||
|
(frm.doc.vergi_hesab_2ci || []).forEach(row => {
|
||||||
|
if (row.göstəricilər && row.göstəricilər.startsWith('504.1')) {
|
||||||
|
value_504_1 = flt(row.manatla);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Calculate: ((503.1 + 504.1) / 24 * 507) * 1%
|
||||||
|
let result = ((value_503_1 + value_504_1) / 24 * value_507) * 0.01;
|
||||||
|
|
||||||
|
// Set value to field 509.2 (manatla in vergi_hesab_5ci)
|
||||||
|
(frm.doc.vergi_hesab_5ci || []).forEach(row => {
|
||||||
|
if (row.göstəricilər && row.göstəricilər.startsWith('509.2')) {
|
||||||
|
frappe.model.set_value(row.doctype, row.name, 'manatla', result);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// ==================== END FORMULA 509.2 ====================
|
||||||
|
|
||||||
// Обработчики для дочерней таблицы Elave 2 - автоматический пересчет суммы binalar
|
// Обработчики для дочерней таблицы Elave 2 - автоматический пересчет суммы binalar
|
||||||
frappe.ui.form.on('Property tax return Elave 2', {
|
frappe.ui.form.on('Property tax return Elave 2', {
|
||||||
form_render: function(frm, cdt, cdn) {
|
form_render: function(frm, cdt, cdn) {
|
||||||
|
|
@ -804,3 +862,26 @@ frappe.ui.form.on('Property tax return Elave 1', {
|
||||||
calculate_elave_1_totals(frm);
|
calculate_elave_1_totals(frm);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// ==================== CHILD TABLE EVENT HANDLERS FOR 509.2 FORMULA ====================
|
||||||
|
|
||||||
|
// Event handler for vergi_hesab_4cu_1 changes (field 507)
|
||||||
|
frappe.ui.form.on('Property tax return Emlak vergi hesablamasi 4cu cedvel 1', {
|
||||||
|
ayla: function(frm, cdt, cdn) {
|
||||||
|
calculate_509_2(frm);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Event handler for vergi_hesab_1ci_1 changes (field 503.1)
|
||||||
|
frappe.ui.form.on('Property tax return Emlak vergi hesablamasi 1ci cedvel 1', {
|
||||||
|
manatla: function(frm, cdt, cdn) {
|
||||||
|
calculate_509_2(frm);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Event handler for vergi_hesab_2ci changes (field 504.1)
|
||||||
|
frappe.ui.form.on('Property tax return Emlak vergi hesablamasi 2ci cedvel', {
|
||||||
|
manatla: function(frm, cdt, cdn) {
|
||||||
|
calculate_509_2(frm);
|
||||||
|
}
|
||||||
|
});
|
||||||
Loading…
Reference in New Issue