feat: 完善报销单审批流程及退回原因追踪
新增直属领导审批通过接口和审批待办列表查询,报销单退回 支持原因码分类和审批环节标记,优化票据附件去重和路径 回退查找,前端新增退回原因对话框、审批收件箱和工作台 图标组件,补充工具函数和单元测试覆盖。
This commit is contained in:
39
web/tests/approval-center-detail-reuse.test.mjs
Normal file
39
web/tests/approval-center-detail-reuse.test.mjs
Normal file
@@ -0,0 +1,39 @@
|
||||
import assert from 'node:assert/strict'
|
||||
import { readFileSync } from 'node:fs'
|
||||
import test from 'node:test'
|
||||
import { fileURLToPath } from 'node:url'
|
||||
|
||||
const approvalTemplate = readFileSync(
|
||||
fileURLToPath(new URL('../src/views/ApprovalCenterView.vue', import.meta.url)),
|
||||
'utf8'
|
||||
)
|
||||
const approvalScript = readFileSync(
|
||||
fileURLToPath(new URL('../src/views/scripts/ApprovalCenterView.js', import.meta.url)),
|
||||
'utf8'
|
||||
)
|
||||
const detailTemplate = readFileSync(
|
||||
fileURLToPath(new URL('../src/views/TravelRequestDetailView.vue', import.meta.url)),
|
||||
'utf8'
|
||||
)
|
||||
const detailScript = readFileSync(
|
||||
fileURLToPath(new URL('../src/views/scripts/TravelRequestDetailView.js', import.meta.url)),
|
||||
'utf8'
|
||||
)
|
||||
|
||||
test('approval center reuses reimbursement detail view instead of its old detail shell', () => {
|
||||
assert.match(approvalTemplate, /<TravelRequestDetailView/)
|
||||
assert.match(approvalTemplate, /back-label="返回审批列表"/)
|
||||
assert.match(approvalTemplate, /approval-mode/)
|
||||
assert.doesNotMatch(approvalTemplate, /class="approval-detail"/)
|
||||
assert.doesNotMatch(approvalTemplate, /<ReturnReasonDialog/)
|
||||
assert.doesNotMatch(approvalTemplate, /<ConfirmDialog/)
|
||||
|
||||
assert.match(approvalScript, /import TravelRequestDetailView from '\.\.\/TravelRequestDetailView\.vue'/)
|
||||
assert.match(approvalScript, /fetchApprovalExpenseClaims/)
|
||||
assert.doesNotMatch(approvalScript, /fetchExpenseClaims/)
|
||||
assert.doesNotMatch(approvalScript, /import ConfirmDialog/)
|
||||
assert.doesNotMatch(approvalScript, /import ReturnReasonDialog/)
|
||||
|
||||
assert.match(detailScript, /backLabel:/)
|
||||
assert.match(detailTemplate, /\{\{ backLabel \}\}/)
|
||||
})
|
||||
Reference in New Issue
Block a user