fixed bugs
This commit is contained in:
parent
2a496a6658
commit
c4b02cf35a
|
|
@ -256,7 +256,7 @@ def create_custom_fields():
|
|||
fieldname='taxable_asset_type',
|
||||
label='Taxable Asset Type',
|
||||
fieldtype='Select',
|
||||
options='\nBinalar, tikililər və qurğular\nÇoxmərtəbəli (çoxmənzilli) yaşayış binalar\nQeyri-yaşayış binaları (sahələri)\nƏmlak kompleksi kimi müəssisələr\nQurğular\nMənzillər\nFərdi yaşayış və bağ evləri\nMaşınlar və avadanlıqlar\nYüksək texnologiyalar məhsulu olan hesablama texnikası\nNəqliyyat vasitələri\nDigər əsas vəsaitlər',
|
||||
options='\nÇoxmərtəbəli (çoxmənzilli) yaşayış binalar\nQeyri-yaşayış binaları (sahələri)\nƏmlak kompleksi kimi müəssisələr\nQurğular\nMənzillər\nFərdi yaşayış və bağ evləri\nMaşınlar və avadanlıqlar\nYüksək texnologiyalar məhsulu olan hesablama texnikası\nNəqliyyat vasitələri\nDigər əsas vəsaitlər',
|
||||
insert_after='taxable_settlements',
|
||||
depends_on='eval:doc.custom_asset_type == "Vergiyə cəlb olunan əsas vəsaitlər"',
|
||||
reqd=0
|
||||
|
|
|
|||
|
|
@ -175,10 +175,15 @@ frappe.ui.form.on('Asset', {
|
|||
}
|
||||
|
||||
if (frm.doc.custom_asset_type === "Vergiyə cəlb olunan əsas vəsaitlər") {
|
||||
const required_fields = [
|
||||
['taxable_settlements', 'Settlements'],
|
||||
['taxable_asset_type', 'Taxable Asset Type']
|
||||
];
|
||||
const required_fields = [];
|
||||
|
||||
// taxable_settlements обязателен только для Land
|
||||
if (frm.doc.land) {
|
||||
required_fields.push(['taxable_settlements', 'Settlements']);
|
||||
}
|
||||
|
||||
// taxable_asset_type обязателен всегда
|
||||
required_fields.push(['taxable_asset_type', 'Taxable Asset Type']);
|
||||
|
||||
for (let [field, label] of required_fields) {
|
||||
if (!frm.doc[field]) {
|
||||
|
|
@ -257,6 +262,39 @@ function render_tax_validity_fields(frm, type) {
|
|||
const tax_article = r.message;
|
||||
const tax_article_name = frm.doc[tax_article_field];
|
||||
|
||||
// ===== НОВАЯ ПРОВЕРКА: Показываем поля только для определенных Tax Articles =====
|
||||
const allowed_tax_articles = [
|
||||
'199.7',
|
||||
'199.9',
|
||||
'199.11',
|
||||
'199.14',
|
||||
'199.15',
|
||||
'199.16',
|
||||
'199.17',
|
||||
'199.19',
|
||||
'199.20',
|
||||
'227.1',
|
||||
'207.4',
|
||||
'207.8',
|
||||
'207.9'
|
||||
];
|
||||
|
||||
// Проверяем, содержит ли название Tax Article один из разрешенных номеров
|
||||
const is_allowed = allowed_tax_articles.some(pattern => tax_article_name.includes(pattern));
|
||||
|
||||
if (!is_allowed) {
|
||||
// Если Tax Article не в списке - очищаем контролы и выходим
|
||||
const $wrapper = frm.fields_dict[html_field].$wrapper;
|
||||
$wrapper.html('');
|
||||
|
||||
if (frm._tax_validity_controls && frm._tax_validity_controls[type]) {
|
||||
delete frm._tax_validity_controls[type];
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
// ===== КОНЕЦ НОВОЙ ПРОВЕРКИ =====
|
||||
|
||||
// Очищаем старые контролы
|
||||
const $wrapper = frm.fields_dict[html_field].$wrapper;
|
||||
$wrapper.html('');
|
||||
|
|
@ -663,9 +701,16 @@ function setup_asset_type_options(frm) {
|
|||
|
||||
function show_common_fields(frm) {
|
||||
frm.set_df_property('common_land_section', 'hidden', 0);
|
||||
frm.set_df_property('tax_exempt_area', 'hidden', 0);
|
||||
frm.set_df_property('tax_exempt_area', 'description',
|
||||
'Enter the tax-exempt area in square meters');
|
||||
|
||||
// Показываем tax_exempt_area только для Land, скрываем для Property
|
||||
if (frm.doc.land) {
|
||||
frm.set_df_property('tax_exempt_area', 'hidden', 0);
|
||||
frm.set_df_property('tax_exempt_area', 'description',
|
||||
'Enter the tax-exempt area in square meters');
|
||||
} else if (frm.doc.property) {
|
||||
frm.set_df_property('tax_exempt_area', 'hidden', 1);
|
||||
frm.set_df_property('tax_exempt_area', 'description', '');
|
||||
}
|
||||
}
|
||||
|
||||
function hide_all_conditional_fields(frm) {
|
||||
|
|
@ -857,17 +902,22 @@ function setup_taxable_fields(frm) {
|
|||
frm.set_df_property(fieldname, 'hidden', 0);
|
||||
});
|
||||
|
||||
const required_taxable_fields = [
|
||||
'taxable_settlements',
|
||||
'taxable_asset_type'
|
||||
];
|
||||
// Скрываем taxable_settlements для Property
|
||||
if (frm.doc.property) {
|
||||
frm.set_df_property('taxable_settlements', 'hidden', 1);
|
||||
frm.set_df_property('taxable_settlements', 'reqd', 0);
|
||||
|
||||
// Только taxable_asset_type обязателен для Property
|
||||
frm.set_df_property('taxable_asset_type', 'reqd', 1);
|
||||
} else {
|
||||
// Для Land оба поля обязательны
|
||||
frm.set_df_property('taxable_settlements', 'reqd', 1);
|
||||
frm.set_df_property('taxable_asset_type', 'reqd', 1);
|
||||
|
||||
frm.set_df_property('taxable_settlements', 'description',
|
||||
'Select the settlement type');
|
||||
}
|
||||
|
||||
required_taxable_fields.forEach(fieldname => {
|
||||
frm.set_df_property(fieldname, 'reqd', 1);
|
||||
});
|
||||
|
||||
frm.set_df_property('taxable_settlements', 'description',
|
||||
'Select the settlement type');
|
||||
frm.set_df_property('taxable_asset_type', 'description',
|
||||
'Select the type of taxable asset');
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue