Refine multi-platform publishing status handling

This commit is contained in:
王鹏
2026-09-16 16:53:52 +08:00
parent 8f387b492b
commit ca853b70d2

View File

@@ -26,7 +26,14 @@
<el-card shadow="never" class="publish-card"> <el-card shadow="never" class="publish-card">
<div class="list-toolbar"> <div class="list-toolbar">
<el-form ref="queryForm" :model="queryParams" :inline="true" size="small" class="query-form"> <el-form
ref="queryForm"
:model="queryParams"
:inline="true"
size="small"
class="query-form"
@submit.native.prevent="handleQuery"
>
<el-form-item prop="codeName"> <el-form-item prop="codeName">
<el-input <el-input
v-model="queryParams.codeName" v-model="queryParams.codeName"
@@ -34,7 +41,6 @@
clearable clearable
placeholder="搜索项目名称" placeholder="搜索项目名称"
prefix-icon="el-icon-search" prefix-icon="el-icon-search"
@keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@@ -491,13 +497,11 @@ export default {
}, },
mounted() { mounted() {
window.addEventListener('YIDAIMA_EXTENSION_READY', this.handleExtensionReady) window.addEventListener('YIDAIMA_EXTENSION_READY', this.handleExtensionReady)
window.addEventListener('YIDAIMA_PUBLISH_STATUS', this.handleExtensionStatus)
window.addEventListener('YIDAIMA_PUBLISH_ACCEPTED', this.handlePublishAccepted) window.addEventListener('YIDAIMA_PUBLISH_ACCEPTED', this.handlePublishAccepted)
this.pingExtension() this.pingExtension()
}, },
beforeDestroy() { beforeDestroy() {
window.removeEventListener('YIDAIMA_EXTENSION_READY', this.handleExtensionReady) window.removeEventListener('YIDAIMA_EXTENSION_READY', this.handleExtensionReady)
window.removeEventListener('YIDAIMA_PUBLISH_STATUS', this.handleExtensionStatus)
window.removeEventListener('YIDAIMA_PUBLISH_ACCEPTED', this.handlePublishAccepted) window.removeEventListener('YIDAIMA_PUBLISH_ACCEPTED', this.handlePublishAccepted)
if (this.extensionTimer) clearTimeout(this.extensionTimer) if (this.extensionTimer) clearTimeout(this.extensionTimer)
}, },
@@ -573,7 +577,7 @@ export default {
this.handleQuery() this.handleQuery()
}, },
statusMeta(status) { statusMeta(status) {
return status === 'SUCCEEDED' ? PUBLISHED_STATUS_META : UNPUBLISHED_STATUS_META return status ? PUBLISHED_STATUS_META : UNPUBLISHED_STATUS_META
}, },
isEmptyPublishTime(value) { isEmptyPublishTime(value) {
return !value || String(value).indexOf('1970-01-01') === 0 return !value || String(value).indexOf('1970-01-01') === 0
@@ -594,24 +598,6 @@ export default {
this.extensionConnected = true this.extensionConnected = true
this.extensionVersion = detail.version || '' this.extensionVersion = detail.version || ''
}, },
handleExtensionStatus(event) {
const detail = event && event.detail
if (!detail || detail.source !== 'yidaima-publisher-extension') return
this.getList()
if (detail.status === 'READY_TO_PUBLISH') {
this.$notify.success({
title: '资料填写完成',
message: '请在' + (PLATFORM_NAMES[detail.platform] || '平台') + '页面检查后手动发布',
duration: 6000
})
} else if (detail.status === 'FAILED' || detail.status === 'LOGIN_REQUIRED') {
this.$notify.warning({
title: detail.status === 'FAILED' ? '发布准备失败' : '需要登录',
message: detail.message || '请前往平台页面处理',
duration: 6000
})
}
},
handlePublishAccepted(event) { handlePublishAccepted(event) {
const detail = event && event.detail const detail = event && event.detail
if (!detail || detail.source !== 'yidaima-publisher-extension') return if (!detail || detail.source !== 'yidaima-publisher-extension') return