hazop插件修改完成
This commit is contained in:
@@ -32,6 +32,16 @@ const regenerateLoading = ref<boolean>(false);
|
||||
const submitLoading = ref<boolean>(false);
|
||||
const confirmed = ref<boolean>(false);
|
||||
|
||||
// 是否重新生成
|
||||
const regenerateTypes = ref<Record<string, boolean>>({
|
||||
'form':false,
|
||||
'risk':false,
|
||||
'train':false,
|
||||
'pssr':false,
|
||||
'evaluation':false,
|
||||
'close':false,
|
||||
});
|
||||
|
||||
// 存储每个步骤选中的审核人 user_id
|
||||
const approvers = ref<Record<number, number[]>>({})
|
||||
const flowList = ref<any[]>([]);
|
||||
@@ -95,6 +105,7 @@ const download = async () => {
|
||||
}
|
||||
// 重新生成:AI 调用逻辑由各标签页组件实现(按 type 分发),此处仅派发事件
|
||||
const regenerate = async () => {
|
||||
regenerateTypes.value[props.type] = true;
|
||||
emit('regenerate', props.type);
|
||||
}
|
||||
// 供父组件控制「重新生成」按钮 loading
|
||||
@@ -173,25 +184,30 @@ defineExpose({clearApprovers, setRegenerateLoading})
|
||||
<div>
|
||||
<div class="flex flex-wrap items-center justify-between gap-2 border-t p-4">
|
||||
<div class="flex flex-wrap gap-2">
|
||||
<NButton ghost type="success" :disabled="btnDisabled" :loading="downloadLoading" @click="download">
|
||||
<Icon icon="material-symbols:download" class="size-16px" />
|
||||
<span v-if="props.type==='form'">下载变更申请表</span>
|
||||
<span v-if="props.type==='risk'">下载风险分析记录表</span>
|
||||
<span v-if="props.type==='train'">下载变更培训内容</span>
|
||||
<span v-if="props.type==='pssr'">下载PSSR检查内容</span>
|
||||
<span v-if="props.type==='evaluation'">下载验收评价</span>
|
||||
<span v-if="props.type==='close'">下载变更关闭确认表</span>
|
||||
<NButton v-if="isAiOpen && type!=='risk'" ghost type="warning" :disabled="btnDisabled || regenerateLoading" @click="regenerate">
|
||||
<Icon icon="tdesign:refresh" class="size-14px mr-1" :class="regenerateLoading?'animate-spin':''" />
|
||||
<template v-if="regenerateLoading">
|
||||
<span>生成中...</span>
|
||||
</template>
|
||||
<template v-else>
|
||||
<span v-if="type==='form'">{{regenerateTypes[type]?'重新生成变更申请表':'生成变更申请表'}}</span>
|
||||
<span v-if="type==='train'">{{regenerateTypes[type]?'重新生成变更培训内容':'生成变更培训内容'}}</span>
|
||||
<span v-if="type==='pssr'">{{regenerateTypes[type]?'重新生成PSSR检查内容':'生成PSSR检查内容'}}</span>
|
||||
<span v-if="type==='evaluation'">{{regenerateTypes[type]?'重新生成验收评价':'生成验收评价'}}</span>
|
||||
<span v-if="type==='close'">{{regenerateTypes[type]?'重新生成变更关闭确认表':'生成变更关闭确认表'}}</span>
|
||||
</template>
|
||||
</NButton>
|
||||
<NButton v-if="props.isAiOpen" ghost type="warning" :disabled="btnDisabled" :loading="regenerateLoading" @click="regenerate">
|
||||
<Icon icon="tdesign:refresh" class="size-14px mr-1" />
|
||||
<span v-if="props.type==='form'">重新生成变更申请表</span>
|
||||
<span v-if="props.type==='risk'">重新生成风险分析记录表</span>
|
||||
<span v-if="props.type==='train'">重新生成变更培训内容</span>
|
||||
<span v-if="props.type==='pssr'">重新生成PSSR检查内容</span>
|
||||
<span v-if="props.type==='evaluation'">重新生成验收评价</span>
|
||||
<span v-if="props.type==='close'">重新生成变更关闭确认表</span>
|
||||
<NButton ghost type="success" :disabled="btnDisabled || downloadLoading" @click="download">
|
||||
<Icon v-if="downloadLoading" icon="tdesign:refresh" class="size-14px mr-1 animate-spin" />
|
||||
<Icon v-else icon="material-symbols:download" class="size-16px" />
|
||||
<span v-if="type==='form'">下载变更申请表</span>
|
||||
<span v-if="type==='risk'">下载风险分析记录表</span>
|
||||
<span v-if="type==='train'">下载变更培训内容</span>
|
||||
<span v-if="type==='pssr'">下载PSSR检查内容</span>
|
||||
<span v-if="type==='evaluation'">下载验收评价</span>
|
||||
<span v-if="type==='close'">下载变更关闭确认表</span>
|
||||
</NButton>
|
||||
<NButton v-if="props.isAiOpen" ghost :type="confirmed ? 'success' : 'primary'" :disabled="btnDisabled" @click="confirmTab">
|
||||
<NButton v-if="isAiOpen" ghost :type="confirmed ? 'success' : 'primary'" :disabled="btnDisabled" @click="confirmTab">
|
||||
<Icon icon="ix:success" class="size-16px mr-1" /> {{ confirmed ? '已确认完毕' : '本标签内容确认完毕' }}
|
||||
</NButton>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user