feat(todos): 技术方案骨架确认待办分支(tech_template_confirm,投标批2)——todo_detail渲染确认/驳回按钮(端点走pipeline-bidding自持api,驳回必填意见),my_todos_popup补标签色
This commit is contained in:
parent
6a10e80794
commit
9d49ccdc14
@ -16,12 +16,14 @@ TYPE_LABEL = {
|
|||||||
'design_confirmation': '设计确认',
|
'design_confirmation': '设计确认',
|
||||||
'bug_acceptance': 'Bug 验收',
|
'bug_acceptance': 'Bug 验收',
|
||||||
'flow_plan_confirm': '流程裁剪确认',
|
'flow_plan_confirm': '流程裁剪确认',
|
||||||
|
'tech_template_confirm': '技术方案骨架确认',
|
||||||
}
|
}
|
||||||
TYPE_COLOR = {
|
TYPE_COLOR = {
|
||||||
'requirement_confirmation': '#2563eb',
|
'requirement_confirmation': '#2563eb',
|
||||||
'design_confirmation': '#2563eb',
|
'design_confirmation': '#2563eb',
|
||||||
'bug_acceptance': '#f0a040',
|
'bug_acceptance': '#f0a040',
|
||||||
'flow_plan_confirm': '#7c3aed',
|
'flow_plan_confirm': '#7c3aed',
|
||||||
|
'tech_template_confirm': '#0891b2',
|
||||||
}
|
}
|
||||||
|
|
||||||
detail_url = entire_url("/pipeline-sdlc/api/todo_detail.dspy")
|
detail_url = entire_url("/pipeline-sdlc/api/todo_detail.dspy")
|
||||||
|
|||||||
@ -23,6 +23,7 @@ TYPE_LABEL = {
|
|||||||
'bug_acceptance': 'Bug 验收',
|
'bug_acceptance': 'Bug 验收',
|
||||||
'kb_ingest_confirm': '知识库入库建议',
|
'kb_ingest_confirm': '知识库入库建议',
|
||||||
'flow_plan_confirm': '流程裁剪确认',
|
'flow_plan_confirm': '流程裁剪确认',
|
||||||
|
'tech_template_confirm': '技术方案骨架确认',
|
||||||
}
|
}
|
||||||
TYPE_COLOR = {
|
TYPE_COLOR = {
|
||||||
'requirement_confirmation': '#2563eb',
|
'requirement_confirmation': '#2563eb',
|
||||||
@ -30,6 +31,7 @@ TYPE_COLOR = {
|
|||||||
'bug_acceptance': '#f0a040',
|
'bug_acceptance': '#f0a040',
|
||||||
'kb_ingest_confirm': '#10b981',
|
'kb_ingest_confirm': '#10b981',
|
||||||
'flow_plan_confirm': '#7c3aed',
|
'flow_plan_confirm': '#7c3aed',
|
||||||
|
'tech_template_confirm': '#0891b2',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -574,6 +576,39 @@ async with DBPools().sqlorContext(dbname) as sor:
|
|||||||
md.append('未找到对应的流程裁剪计划记录。')
|
md.append('未找到对应的流程裁剪计划记录。')
|
||||||
md.append('')
|
md.append('')
|
||||||
|
|
||||||
|
elif task_type == 'tech_template_confirm':
|
||||||
|
# 技术方案书章节骨架确认(投标产线纯技术方案流程 bid_tech_proposal,2026-09-15):
|
||||||
|
# description 已含骨架预览表(propose_tech_template 渲染),这里只补确认/驳回按钮。
|
||||||
|
# 端点在投标模块自持(/pipeline-bidding/api/tech_template_confirm.dspy)。
|
||||||
|
tt_url = entire_url("/pipeline-bidding/api/tech_template_confirm.dspy")
|
||||||
|
_tt_status = _s(getattr(h, 'status', ''))
|
||||||
|
if _tt_status != 'pending':
|
||||||
|
md.append('## 骨架状态')
|
||||||
|
md.append('')
|
||||||
|
md.append('该确认已处理(当前状态:' + (_tt_status or '-') + '),无需再确认。')
|
||||||
|
md.append('')
|
||||||
|
else:
|
||||||
|
action_widgets.append(_input_box(
|
||||||
|
'tt_comment', '驳回意见(驳回时必填,助手按意见修订骨架后重新提案)',
|
||||||
|
'请填写驳回意见:换模版/调章节/补覆盖…'))
|
||||||
|
tt_ok = (_post_js(tt_url, [('human_task_id', _json.dumps(oid)),
|
||||||
|
('decision', "'confirm'"), ('comment', "''")]) + _tail)
|
||||||
|
tt_no = (_read_input_js('tt_comment') +
|
||||||
|
"if(!cv){var mn=new bricks.Message({title:'请填写驳回意见',"
|
||||||
|
"message:'驳回前请说明骨架要怎么改(助手按意见修订重提)'});mn.open();return;}" +
|
||||||
|
_post_js(tt_url, [('human_task_id', _json.dumps(oid)),
|
||||||
|
('decision', "'reject'"), ('comment', 'cv')]) + _tail)
|
||||||
|
action_widgets.append({
|
||||||
|
"widgettype": "HBox",
|
||||||
|
"options": {"width": "100%", "gap": "8px", "padding": "12px 14px", "halign": "right"},
|
||||||
|
"subwidgets": [
|
||||||
|
_btn('确认骨架,开始编写', 'primary', tt_ok,
|
||||||
|
conform={"title": "确认章节骨架", "message": "确认后骨架落库并开始分章编写,确认?",
|
||||||
|
"conform": {"label": "确认开写"}, "discard": {"label": "再看看"}}),
|
||||||
|
_btn('驳回(按意见修订)', 'small', tt_no)
|
||||||
|
]
|
||||||
|
})
|
||||||
|
|
||||||
elif task_type == 'kb_ingest_confirm':
|
elif task_type == 'kb_ingest_confirm':
|
||||||
# PM 建议文件入知识库:展示建议详情 + 文件(打开/下载)+ 批准/驳回
|
# PM 建议文件入知识库:展示建议详情 + 文件(打开/下载)+ 批准/驳回
|
||||||
_sg = None
|
_sg = None
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user