打印逻辑

This commit is contained in:
李鹏宇
2026-05-14 15:40:53 +08:00
parent d2e92f130b
commit ea85a371ec
+2 -12
View File
@@ -268,21 +268,11 @@ class SoongWorkflowMixin(models.AbstractModel):
"""
返回用于打印的审批日志列表:
- 按与界面相同的顺序(sequence 升序)
- 同名节点只保留最新一条
- 保留所有审批记录(包括重复节点,如申请人多次申请)
- 可选:申请人置顶
"""
self.ensure_one()
logs = self.log_ids.sorted('sequence')
seen = set()
ordered = []
# 逆序去重,保留最新
for log in reversed(logs):
key = log.name or ''
if key in seen:
continue
seen.add(key)
ordered.append(log)
ordered.reverse() # 恢复原有顺序(去重后)
ordered = self.log_ids.sorted('sequence')
if applicant_first:
applicants = [l for l in ordered if (l.name or '') == '申请人']
others = [l for l in ordered if (l.name or '') != '申请人']