优化自动建案逻辑

This commit is contained in:
27942
2026-02-01 12:31:17 +08:00
parent 595380d950
commit f0e5a2d001

View File

@@ -838,10 +838,14 @@ def process_approval_flow(approval, business_record, current_approver, state,
if "待申请人查看" not in (approval.content or ""):
approval.content = (approval.content or "") + ",待申请人查看"
approval.save(update_fields=['state', 'personincharge', 'content', 'completeTiem'] if approval_type == "立项登记" else ['state', 'personincharge', 'content'])
# 立项登记:进入待查看时即自动建案,立案时间使用刚写入的 completeTiem最后审批人通过日
# 立项登记:最后审批人通过后,立项即为「已通过」,待查看只是通知不阻塞
if approval_type == "立项登记" and business_record:
if hasattr(business_record, 'state'):
business_record.state = "已通过"
business_record.save(update_fields=['state'])
# 立项审批通过后直接创建案件,不等待申请人查看
ensure_case_for_approved_project(business_record, approval=approval)
# 不更新业务记录状态,等申请人查看后再设为已通过
# 投标/案件变更等:不更新业务记录状态,等申请人查看后再设为已通过
return False, None
# 其他类型:抄送财务
logger.info(f"process_approval_flow: 最后一个审核人已审核,流转到财务部")
@@ -979,10 +983,14 @@ def create_approval_with_team_logic(team_name, approvers, title, content, approv
user_id=str(user_id),
applicant=applicant
)
# 立项登记:进入待查看时即自动建案(个人团队无审核人,直接待查看
# 立项登记:个人团队无审核人,直接进入待查看,立项即为「已通过」,待查看只是通知
if approval_type == "立项登记" and business_record:
if hasattr(business_record, 'state'):
business_record.state = "已通过"
business_record.save(update_fields=['state'])
# 立项审批通过后直接创建案件,不等待申请人查看
ensure_case_for_approved_project(business_record, approval=approval)
# 不更新业务记录状态,等申请人查看后再设为已通过
# 投标/案件变更等:不更新业务记录状态,等申请人查看后再设为已通过
return approval, None, False
# 其他类型:个人团队或无团队,直接到财务团队审核
finance_personincharge = get_finance_personincharge_value()