[IMP] odex_benefit: FIX bug

This commit is contained in:
younes 2025-10-20 12:53:49 +01:00
parent 7944857ef0
commit 0ffcdf78aa
1 changed files with 6 additions and 6 deletions

View File

@ -730,19 +730,19 @@ class ServiceRequest(models.Model):
if max_limit_type == 'fixed': if max_limit_type == 'fixed':
rec.service_max_amount = rec.service_cat.max_amount rec.service_max_amount = rec.service_cat.max_amount
elif max_limit_type == 'category': elif max_limit_type == 'category':
rec.service_max_amount = max(rec.service_cat.category_amount_lines.filtered( rec.service_max_amount = rec.service_cat.category_amount_lines and max(rec.service_cat.category_amount_lines.filtered(
lambda r: r.benefit_category_id.id == rec.family_category.id).mapped('max_amount'), lambda r: r.benefit_category_id.id == rec.family_category.id).mapped('max_amount'),
default=0.0) default=0.0) or 0
elif max_limit_type == 'category_person': elif max_limit_type == 'category_person':
rec.service_max_amount = max(rec.service_cat.bill_lines.filtered( rec.service_max_amount = rec.service_cat.bill_lines and max(rec.service_cat.bill_lines.filtered(
lambda x: x.benefit_category_id.id == rec.family_category.id and lambda x: x.benefit_category_id.id == rec.family_category.id and
x.min_count_member <= rec.benefit_member_count <= x.max_count_member).mapped( x.min_count_member <= rec.benefit_member_count <= x.max_count_member).mapped(
'max_amount_for_bill'), default=0.0) 'max_amount_for_bill'), default=0.0) or 0
elif max_limit_type == 'service': elif max_limit_type == 'service':
pass pass
elif max_limit_type == 'amount_person': elif max_limit_type == 'amount_person':
rec.service_max_amount = max(rec.service_cat.limit_person_line_ids.filtered( rec.service_max_amount = rec.service_cat.limit_person_line_ids and max(rec.service_cat.limit_person_line_ids.filtered(
lambda x: x.min_count_member <= rec.benefit_member_count <= x.max_count_member)).amount lambda x: x.min_count_member <= rec.benefit_member_count <= x.max_count_member)).amount or 0
if service_type == 'transportation_insurance': if service_type == 'transportation_insurance':
if rec.service_reason_id and rec.requested_service_amount > rec.max_amount: if rec.service_reason_id and rec.requested_service_amount > rec.max_amount: