feat(web): 更新审批中心、审计、政策制度页面及对应的业务脚本,增强前端交互逻辑

This commit is contained in:
caoxiaozhu
2026-05-15 06:57:07 +00:00
parent 344ac126b3
commit 244b3a58f7
7 changed files with 1142 additions and 325 deletions

View File

@@ -414,6 +414,11 @@
<div class="list-toolbar">
<div class="filter-set">
<div class="list-search">
<i class="mdi mdi-magnify"></i>
<input v-model="listKeyword" type="search" placeholder="搜索单号、申请人、部门、报销类型..." />
</div>
<button v-for="filter in filters" :key="filter" type="button" class="filter-btn">
<span>{{ filter }}</span>
<i class="mdi mdi-chevron-down"></i>
@@ -423,8 +428,35 @@
<p class="hint"><i class="mdi mdi-information-outline"></i> 点击单据行查看审批详情</p>
<div class="table-wrap">
<table>
<div class="table-wrap" :class="{ 'is-empty': showEmpty }">
<div v-if="loading" class="table-state">
<i class="mdi mdi-loading mdi-spin"></i>
<strong>正在加载审批待办</strong>
<p>直属领导和财务节点下可处理的报销单据会直接展示在这里</p>
</div>
<div v-else-if="error" class="table-state error">
<i class="mdi mdi-alert-circle-outline"></i>
<strong>审批列表加载失败</strong>
<p>{{ error }}</p>
<button class="state-action" type="button" @click="reload">重新加载</button>
</div>
<TableEmptyState
v-else-if="showEmpty"
:eyebrow="approvalEmptyState.eyebrow"
:title="approvalEmptyState.title"
:description="approvalEmptyState.desc"
:icon="approvalEmptyState.icon"
:action-label="approvalEmptyState.actionLabel"
:action-icon="approvalEmptyState.actionIcon"
:tone="approvalEmptyState.tone"
:art-label="approvalEmptyState.artLabel"
:tips="approvalEmptyState.tips"
@action="handleEmptyAction"
/>
<table v-else>
<colgroup>
<col><col><col><col><col><col><col><col><col><col><col>
</colgroup>
@@ -469,22 +501,6 @@
</tbody>
</table>
</div>
<footer class="list-foot">
<span class="page-summary"> 126 当前第 1 </span>
<div class="pager" aria-label="分页">
<button class="page-nav" type="button" aria-label="上一页"><i class="mdi mdi-chevron-left"></i></button>
<button class="page-number active" type="button" aria-current="page">1</button>
<button class="page-number" type="button">2</button>
<button class="page-number" type="button">3</button>
<button class="page-number" type="button">4</button>
<button class="page-number" type="button">5</button>
<span>...</span>
<button class="page-number" type="button">13</button>
<button class="page-nav" type="button" aria-label="下一页"><i class="mdi mdi-chevron-right"></i></button>
</div>
<button class="page-size" type="button">10 / <i class="mdi mdi-chevron-down"></i></button>
</footer>
</article>
</section>
</template>