- TaskHandle 移除该区块与 formRows 计算(保留 formValueText 供业务信息回退行复用) - 管理面 InstanceBody full 不变
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
<script setup lang="ts">
|
||||
// 办理页(概览 §9.4):biz_snapshot 业务摘要区块 + formData 业务表单数据只读渲染(§3.4,
|
||||
// 非表单引擎——只读展示,原文留在业务方)+ "查看业务详情"跳 biz_url + 历史意见 + 同意/拒绝。
|
||||
// 办理页(概览 §9.4):biz_snapshot 业务信息区块(只认 summaryFields)+ "查看业务详情"跳 bizUrl
|
||||
// + 历史意见 + 同意/拒绝/退回/移交。业务表单数据(formDataJson)不在办理页渲染——托管模式下它是
|
||||
// 条件路由入参,只进管理面办件详情。
|
||||
// 一切审批入口的收敛点都是后端同一套 /api/flow/task API。
|
||||
import { ref, computed, onMounted, onBeforeUnmount, nextTick, watch } from "vue";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
@@ -86,22 +87,7 @@ const snapshotRows = computed(() => {
|
||||
.map(([key, label]) => ({ k: label, v: formValueText(obj[key]) }));
|
||||
});
|
||||
|
||||
/** 业务表单数据(§3.4):formDataJson 逐键值只读渲染;数组值按文件名/项连接;解析失败降级一行原文 */
|
||||
const formRows = computed(() => {
|
||||
const raw = detail.value?.formDataJson;
|
||||
if (raw === null || raw === undefined || raw === "") return [];
|
||||
let obj: any = null;
|
||||
try {
|
||||
obj = typeof raw === "string" ? JSON.parse(raw) : raw;
|
||||
} catch {
|
||||
return [{ k: "表单原文", v: String(raw) }];
|
||||
}
|
||||
if (obj && typeof obj === "object" && !Array.isArray(obj)) {
|
||||
return Object.entries(obj).map(([k, v]) => ({ k, v: formValueText(v) }));
|
||||
}
|
||||
return [{ k: "表单原文", v: String(raw) }];
|
||||
});
|
||||
|
||||
/** 值 → 展示文本(业务信息回退行共用):数组按文件名/项连接,对象降级 JSON */
|
||||
function formValueText(v: any): string {
|
||||
if (v === null || v === undefined) return "-";
|
||||
if (Array.isArray(v)) {
|
||||
@@ -329,16 +315,8 @@ onBeforeUnmount(() => {
|
||||
</Button>
|
||||
</Card>
|
||||
|
||||
<!-- 业务表单数据(§3.4 只读渲染,非表单引擎;无 formData 时整块隐藏) -->
|
||||
<Card class="block" :bordered="false" dis-hover v-if="formRows.length">
|
||||
<template #title>业务表单数据</template>
|
||||
<div class="snapshot">
|
||||
<div v-for="row in formRows" :key="row.k" class="row">
|
||||
<span class="k">{{ row.k }}</span>
|
||||
<span class="v">{{ row.v }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</Card>
|
||||
<!-- 业务表单数据不在此渲染(§3.4):formDataJson 是托管模式的条件路由入参(deptId/deptName 之类),
|
||||
对办理人是内部噪音;原始表单只在管理面办件详情(InstanceBody full)看 -->
|
||||
|
||||
<!-- 办理区 -->
|
||||
<Card class="block" :bordered="false" dis-hover>
|
||||
|
||||
Reference in New Issue
Block a user