merge: bring storage release review pending/reviewed tabs into OA deploy branch
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
commit
f6efca8fdf
19 files changed
+10224
-8438
No files matched your search
@@ -144,6 +144,7 @@ export function fetchStorageReleaseReviewList(params?: {
|
||||
reviewConclusion?: string
|
||||
storageStatus?: string
|
||||
keyword?: string
|
||||
reviewPhase?: 'pending' | 'reviewed'
|
||||
}) {
|
||||
return request.get<PageList<StorageReleaseReview>>({
|
||||
url: '/web/admin/storage-release-reviews',
|
||||
|
||||
@@ -7,6 +7,23 @@
|
||||
<h2>审核列表</h2>
|
||||
</div>
|
||||
|
||||
<div class="panel-pill-tabs panel-pill-tabs--lg">
|
||||
<div class="panel-pill-tabs__track" role="tablist">
|
||||
<button
|
||||
v-for="tab in STATUS_TABS"
|
||||
:key="tab.name"
|
||||
type="button"
|
||||
role="tab"
|
||||
class="panel-pill-tabs__btn"
|
||||
:class="{ 'is-active': activeTab === tab.name }"
|
||||
:aria-selected="activeTab === tab.name"
|
||||
@click="handleTabChange(tab.name)"
|
||||
>
|
||||
{{ tab.label }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="filter-block">
|
||||
<el-form :model="searchForm" class="filter-form" @submit.prevent>
|
||||
<div class="filter-grid">
|
||||
@@ -39,7 +56,6 @@
|
||||
placeholder="全部"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-option label="待审核" value="" />
|
||||
<el-option
|
||||
v-for="item in reviewConclusionOptions"
|
||||
:key="item.value"
|
||||
@@ -328,6 +344,15 @@
|
||||
|
||||
defineOptions({ name: 'QualityInspectionStorageReleaseReview' })
|
||||
|
||||
type ReviewTab = 'pending' | 'reviewed'
|
||||
|
||||
const STATUS_TABS = [
|
||||
{ name: 'pending' as const, label: '待审核' },
|
||||
{ name: 'reviewed' as const, label: '已审核' }
|
||||
]
|
||||
|
||||
const activeTab = ref<ReviewTab>('pending')
|
||||
|
||||
function protocolStatusLabelForRow(row: StorageReleaseReview) {
|
||||
if (row.protocolStatusLabel) return row.protocolStatusLabel
|
||||
const status = row.protocolStatus || ''
|
||||
@@ -393,7 +418,8 @@
|
||||
receptionSource: searchForm.receptionSource || undefined,
|
||||
reviewConclusion: searchForm.reviewConclusion || undefined,
|
||||
storageStatus: searchForm.storageStatus || undefined,
|
||||
keyword: searchForm.keyword || undefined
|
||||
keyword: searchForm.keyword || undefined,
|
||||
reviewPhase: activeTab.value
|
||||
})
|
||||
tableData.value = res.list || []
|
||||
pagination.total = res.total ?? 0
|
||||
@@ -402,6 +428,14 @@
|
||||
}
|
||||
}
|
||||
|
||||
function handleTabChange(name: ReviewTab) {
|
||||
if (activeTab.value === name) return
|
||||
activeTab.value = name
|
||||
pagination.page = 1
|
||||
selectedRows.value = []
|
||||
loadData()
|
||||
}
|
||||
|
||||
function handleSearch() {
|
||||
pagination.page = 1
|
||||
loadData()
|
||||
|
||||
Reference in new issue
Block a user