diff --git a/src/views/details/index/index.vue b/src/views/details/index/index.vue index 1b87021..3d15475 100644 --- a/src/views/details/index/index.vue +++ b/src/views/details/index/index.vue @@ -135,77 +135,10 @@ const questions = ref([ ], }, ]); - - -const role = ref("applicant"); // 判定说明抽屉 const describeDrawer = ref(false); const levelDrawer = ref(false); -// ai 标注抽屉 -const aiDrawer = ref(false); -const mandClosed = ref(false); -const confirmClose = () => { - mandClosed.value = true; - window.$message?.success('强制合规项已确认闭环,操作已留痕'); -} -const conflictHide = ref(false); -// 关键参数对比(静态示例作 fallback,AI 审批辅助完成后回填) -const paramDiff = ref([ - { k: "反应温度", before: "80℃", after: "90℃", over: false, note: "仍在溶剂沸点与物料分解温度的安全裕度内" }, - { k: "保温时间", before: "8 h", after: "4 h", over: false, note: "终点判断窗口变窄,须修订操作规程" }, - { k: "DCS 温度高报警", before: "85℃", after: "95℃", over: true, note: "超出原报警裕度,须重新整定验证" }, - { k: "联锁高高报", before: "90℃", after: "100℃", over: true, note: "接近设备设计温度上限,投用前须完成联锁测试" }, - { k: "未知杂质含量", before: "0.05%", after: "0.12%", over: false, note: "结构未定,须纳入日常分析计划" }, -]); -const aiRead = ref(false); -const roleName = ref('张工艺'); -const suggs = ref([ - { id: 1, text: "将未知杂质含量纳入日常分析计划(每周 1 次,连续 8 周)", st: "待定" }, - { id: 2, text: "修订操作规程并补充超温应急处置卡后再投用", st: "待定" }, -]); -const opinion = ref(""); - -// 已阅 AI 建议 -const readSuggest = () => { - aiRead.value = true; - window.$message?.success(`${roleName} 已阅 AI 建议,时间与操作已写入审批留痕`); -} -// 采纳为行动项 -const acceptSuggest = (s: any) => { - suggs.value = suggs.value.map((x:any) => (x.id === s.id ? { ...x, st: '已采纳' } : x)); - opinion.value = (opinion.value ? `${opinion.value}\n` : '') + `采纳 AI 建议:${s.text}`; - window.$message?.success('已采纳,自动生成 PSSR 行动项(来源:AI 建议),并纳入审批意见'); -} -// 不采纳 AI 建议 -const rejectSuggest = (s: any) => { - suggs.value = suggs.value.map((x:any) => (x.id === s.id ? { ...x, st: '不采纳' } : x)); - window.$message?.info('不采纳理由「现有分析频次已覆盖风险」已记录留痕'); -} -// 查看归档包 -const viewArchive = (name: string) => { - window.$message?.info(`新窗口打开 ${name} 归档包,不影响当前审批`); -} - -// AI 审批辅助(抽屉打开时触发,异步任务轮询;失败保留静态示例,不阻塞页面) -const aiAssistLoading = ref(false); -const aiAssistStep = ref(''); -const aiAssistProgress = ref(0); -// 强制合规描述(静态示例作 fallback) -const mandText = ref('本次变更涉及 DCS 联锁设定值修改,依据 AQ/T 3034《化工企业工艺安全管理实施导则》,投用前须完成联锁测试并留存记录。'); -const mandItem = ref('联锁测试记录须在投用前完成并上传归档'); -// 冲突提示 -const conflictText = ref('涉及设备 R-101 关联变更 MOC-2026-0038「机封冲洗方案调整」正在审批中,请确认施工时序与隔离方案无冲突。'); -// 属地影响摘要 -const deptRows = ref([ - { label: '涉及单元:', text: '一车间 R-201 反应釜及配套 DCS 回路,不影响相邻单元。' }, - { label: '现行规程影响:', text: '操作规程第 4.2 节(报警处置)需同步修订,变更关闭前完成受控换版。' }, - { label: '交接班提示:', text: '投用后首个班次需向班组交代新报警值与处置卡位置,建议纳入班前会内容。' }, -]); -// 参考信息(相似变更 / 历史经验) -const similarText = ref('相似变更 MOC-2025-0112「酯化反应温度上调」投用后运行正常,无异常记录'); -const experienceText = ref('历史经验:温度类变更投用后首周超温报警占比约 38%,建议关注投用首周报警趋势'); - const aiFail = (e: any) => { if (e instanceof AiError) window.$message?.warning(`AI 分析失败:${e.message},可手动填写`); else window.$message?.warning("AI 分析失败,可手动填写"); @@ -404,17 +337,6 @@ onMounted(() => {
{{ currentInfo?.title }}
编号:{{ currentInfo?.change_no }} - - - AI 标注 -
@@ -783,192 +705,6 @@ onMounted(() => {
- - - - -
- -
-
- - {{ aiAssistStep || 'AI 分析中…' }}({{ aiAssistProgress }}%) -
- -
- -
-
- - 强制合规 - - - - 已闭环 - - 未闭环 - -
-

- {{ mandText }} -

-
- 确认闭环(留痕) -
-
- -
-
- - 冲突提示 - 知道了 -
-

- {{ conflictText }} -

-
- -
-
- - 属地影响摘要 - - ✨ AI 生成 · 需人工确认 - -
-
-

{{ r.label }}{{ r.text }}

-
-
- -
-
- 关键参数对比(AI 提取) · 蓝=变化 · 红=超限 -
-
-
- {{ d.k }} - {{ d.before }} - → - {{ d.after }} - 超限 -
-
{{ d.note }}
-
-
- -
-
- - AI 审批建议 - - ✨ AI 生成 · 需人工确认 - - 基于提交版本 V1 一次性分析 · 版本冻结 -
- ✓ {{ roleName }} 已阅 AI 建议(已留痕) - 已阅 AI 建议 -
-
-
- -
强制合规项(驳回前必须处理,否则无法通过)
-
- {{ mandItem }} - 已闭环 - 未闭环 -
- -
-
推荐改进项(可采纳为行动项,可忽略但须填理由)
-
-
-
{{ s.text }}
-
-
- - 采纳为行动项 - - - 已知悉,不采纳 - -
- 已采纳 → 已生成 PSSR 行动项 - 已知悉不采纳(理由已留痕) -
-
-
-
- -
-
参考信息(纯参考,无强制力)
-
-
- {{ similarText }} - 查看归档包 -
-
- {{ experienceText }} -
-
-
-
- 查看、采纳、已阅等操作均由后台自动记录(无感审计),供内审追溯;AI 建议不强制采纳,决策主导权在审批人。驳回重新提交后,AI 将对新版本重新分析一次。 -
-
-
- -
-
-