优化自动建案逻辑
This commit is contained in:
@@ -710,11 +710,12 @@ def process_approval_flow(approval, business_record, current_approver, state,
|
||||
|
||||
return True, None
|
||||
|
||||
# 申请人待查看阶段:当前步骤是申请人待查看,申请人查看后完成(投标/立项不再给财务部)
|
||||
# 申请人待查看阶段:当前步骤是申请人待查看,申请人查看后完成(投标/立项/案件变更等)
|
||||
applicant = getattr(approval, 'applicant', None)
|
||||
if approval.state == "待查看" and applicant and approval.personincharge == applicant:
|
||||
# 已通过、已查看、未传 state 均视为申请人已查看完成
|
||||
if state == "已通过" or state == "已查看" or (state is None or state == ""):
|
||||
# 已通过、已查看、未传 state 或前端传 undefined/null 等均视为申请人已查看完成
|
||||
state_str = (state or "").strip().lower() if isinstance(state, str) else ""
|
||||
if state == "已通过" or state == "已查看" or state is None or state == "" or state_str in ("undefined", "null"):
|
||||
approval.state = "已通过"
|
||||
# 立项登记在进入待查看时已写入 completeTiem(最后审批人通过时间),此处不改写;其他类型或未写时补写
|
||||
if not approval.completeTiem:
|
||||
|
||||
@@ -2104,6 +2104,12 @@ class approvalProcessing(APIView):
|
||||
if approval.state == "审核中" and not state:
|
||||
return Response({'status': 'error', 'message': '缺少参数state(审核状态:已通过/未通过)', 'code': 1}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
# 申请人待查看阶段:只传 type/id、或 state=已通过/已查看、或不传/undefined 时,视为申请人查看完成(更新为已通过,消除待办)
|
||||
if approval.state == "待查看" and getattr(approval, 'applicant', None) and approval.personincharge == approval.applicant:
|
||||
state_normalized = (state or "").strip().lower() if isinstance(state, str) else ""
|
||||
if state in (None, "", "已通过", "已查看") or state_normalized in ("undefined", "null"):
|
||||
state = "已通过"
|
||||
|
||||
from User.utils import process_approval_flow
|
||||
current_approver = approval.personincharge
|
||||
is_completed, error = process_approval_flow(
|
||||
|
||||
Reference in New Issue
Block a user