叮咚
This commit is contained in:
@@ -86,6 +86,19 @@ class ReceivableFlowReport(models.Model):
|
||||
pay_line_map = {} # {wizard_id: [pay_lines]}
|
||||
for pl in all_pay_lines:
|
||||
pay_line_map.setdefault(pl.penalty_id.id, []).append(pl)
|
||||
# 3. 批量查违约金应收记录(按合同分组)
|
||||
contract_ids = list(set(rec.contract_id.id for rec in receivables if rec.contract_id))
|
||||
penalty_type = self.env['yuthon.management.type'].sudo().search([('name', '=', '违约金')], limit=1)
|
||||
all_penalty_recs = self.env['property.accounts.receivable'].sudo().search([
|
||||
('contract_id', 'in', contract_ids),
|
||||
('management_type_id', '=', penalty_type.id),
|
||||
('is_invalid', '=', False),
|
||||
], order='due_date asc') if penalty_type else self.env['property.accounts.receivable']
|
||||
# 按 contract_id 分组 {contract_id: [charging_range, ...]}
|
||||
penalty_range_map = {} # {contract_id: [charging_range]}
|
||||
for pr in all_penalty_recs:
|
||||
if pr.charging_range:
|
||||
penalty_range_map.setdefault(pr.contract_id.id, []).append(pr.charging_range)
|
||||
# ===== 预加载结束 =====
|
||||
|
||||
rows = []
|
||||
@@ -149,6 +162,7 @@ class ReceivableFlowReport(models.Model):
|
||||
"违约金明细": "",
|
||||
"违约金收款时间": "",
|
||||
"违约金收款金额": "",
|
||||
"违约金计算时间": "",
|
||||
})
|
||||
|
||||
# ==== 每条应收记录 ====
|
||||
@@ -174,6 +188,10 @@ class ReceivableFlowReport(models.Model):
|
||||
)
|
||||
penalty_payment_date = latest_penalty_payment[0].date if latest_penalty_payment else None
|
||||
|
||||
# 取该合同下所有违约金记录的 charging_range
|
||||
penalty_ranges = penalty_range_map.get(rec.contract_id.id, []) if rec.contract_id else []
|
||||
penalty_range_str = "\n".join(penalty_ranges) if penalty_ranges else ""
|
||||
|
||||
# ==== 应收租金行 ====
|
||||
rows.append({
|
||||
"row_type": "主",
|
||||
@@ -200,6 +218,7 @@ class ReceivableFlowReport(models.Model):
|
||||
"收款日期": "",
|
||||
"收款金额": "",
|
||||
"收款备注": "",
|
||||
"违约金计算时间": penalty_range_str,
|
||||
"违约金明细": {
|
||||
'model': 'property.accounts.receivable',
|
||||
'display_name': '违约金明细',
|
||||
@@ -230,6 +249,7 @@ class ReceivableFlowReport(models.Model):
|
||||
"违约金明细": "",
|
||||
"违约金收款时间": "",
|
||||
"违约金收款金额": "",
|
||||
"违约金计算时间": "",
|
||||
})
|
||||
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
{"headerName": "收款日期", "field": "收款日期", "flex": 1},
|
||||
{"headerName": "收款金额", "field": "收款金额", "flex": 1, "type": "number"},
|
||||
{"headerName": "收款备注", "field": "收款备注", "flex": 2, "wrapText": true},
|
||||
{"headerName": "违约金计算时间", "field": "违约金计算时间", "flex": 2.5, "wrapText": true},
|
||||
{"headerName": "违约金明细", "field": "违约金明细", "flex": 1, "cellRenderer": "linkRender"},
|
||||
{"headerName": "违约金收款时间", "field": "违约金收款时间", "flex": 1},
|
||||
{"headerName": "违约金收款金额", "field": "违约金收款金额", "flex": 1, "type": "number"}
|
||||
|
||||
Reference in New Issue
Block a user