feat(workbench): 接入签署投递与产物管理
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
<script setup lang="ts">
|
||||
import type { SigningTaskEvent, SigningTaskRecord } from '@/api/workbench/types'
|
||||
import type { SigningArtifact, SigningTaskEvent, SigningTaskRecord } from '@/api/workbench/types'
|
||||
|
||||
import SigningDocumentPreview from './SigningDocumentPreview.vue'
|
||||
import SigningArtifactList from './SigningArtifactList.vue'
|
||||
import TaskAuditTimeline from './TaskAuditTimeline.vue'
|
||||
import type { SigningTaskAction } from '../types'
|
||||
|
||||
@@ -12,10 +13,16 @@ defineProps<{
|
||||
auditLoading: boolean
|
||||
auditError: boolean
|
||||
allowLocalSigning: boolean
|
||||
artifacts: SigningArtifact[]
|
||||
artifactsLoading: boolean
|
||||
artifactsError: boolean
|
||||
padSessionStatus: string | null
|
||||
padSessionLoading: boolean
|
||||
}>()
|
||||
|
||||
const emit = defineEmits<{
|
||||
action: [action: SigningTaskAction]
|
||||
downloadArtifact: [artifact: SigningArtifact]
|
||||
}>()
|
||||
</script>
|
||||
|
||||
@@ -43,7 +50,20 @@ const emit = defineEmits<{
|
||||
转为短信发送
|
||||
</button>
|
||||
</template>
|
||||
<span v-else class="action-hint">手写板设备签署接口待接入</span>
|
||||
<template v-else>
|
||||
<button
|
||||
type="button"
|
||||
class="action-button"
|
||||
:disabled="padSessionLoading"
|
||||
@click="emit('action', 'create-pad-session')"
|
||||
>
|
||||
{{ padSessionLoading ? '创建会话中…' : '创建手写板会话' }}
|
||||
</button>
|
||||
<span v-if="padSessionStatus" class="action-hint">
|
||||
会话状态:{{ padSessionStatus }};等待设备适配器读取 challenge
|
||||
</span>
|
||||
<span v-else class="action-hint">创建会话后仍需接入厂商设备适配器完成签名采集</span>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
<template v-else-if="task.status === 'pending' && task.method === 'sms'">
|
||||
@@ -120,6 +140,12 @@ const emit = defineEmits<{
|
||||
|
||||
<SigningDocumentPreview :task="task" />
|
||||
<TaskAuditTimeline :events="auditEvents" :loading="auditLoading" :error="auditError" />
|
||||
<SigningArtifactList
|
||||
:artifacts="artifacts"
|
||||
:loading="artifactsLoading"
|
||||
:error="artifactsError"
|
||||
@download="emit('downloadArtifact', $event)"
|
||||
/>
|
||||
</template>
|
||||
|
||||
<div v-else class="detail-empty">
|
||||
|
||||
Reference in New Issue
Block a user