From c49e557c8327fd2c093ebdc43b7dd7088abd35e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= <9664676+pengyuthon@user.noreply.gitee.com> Date: Wed, 12 Nov 2025 16:44:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wizard/penalty_line_wizard.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/yuthon_property_approval/wizard/penalty_line_wizard.py b/yuthon_property_approval/wizard/penalty_line_wizard.py index eb9c4d284..826615004 100644 --- a/yuthon_property_approval/wizard/penalty_line_wizard.py +++ b/yuthon_property_approval/wizard/penalty_line_wizard.py @@ -108,20 +108,20 @@ class PenaltyLineWizard(models.Model): pay_date = pay_line.reconciliation_date # 付款日期 is_penalty = pay_line.is_penalty # 是否是违约金 if is_penalty: + days_overdue = (pay_date - penalty_start_date).days + 1 + current_penalty = pay_line.receivable_id.original_amount + else: penalty_receivable_id = self.env['property.accounts.receivable'].search([ ('contract_id', '=', receivable.contract_id.id), ('due_date', '=', pay_date.replace(day=1)), ('management_type_id.name', '=', '违约金'), ], limit=1) - if not penalty_receivable_id: - days_overdue = (pay_date - penalty_start_date).days + 1 - current_penalty = pay_line.receivable_id.original_amount - else: + if penalty_receivable_id: days_overdue = (pay_date - penalty_receivable_id.due_date).days + 1 current_penalty = penalty_receivable_id.original_amount - else: - days_overdue = 0 - current_penalty = 0.0 + else: + days_overdue = 0 + current_penalty = 0 # 计算剩余本金 remaining_principal = max(0, pay_line.not_collected - pay_amount)