- 新增 aiDocumentDetailReference,统一解析 #ai-open-document-detail / #ai-open-application-detail 引用,兼容 A/R/D 短格式与 AP-/RE-/AD- 旧格式单号,提供 isBusinessDocumentReference 判定 - aiDocumentQueryModel 文档卡片接入详情引用,按申请单/报销单生成对应 href,HTML 渲染器识别单据记录表格并生成卡片链接 - PersonalWorkbenchAiMode 处理文档详情点击跳转,卡片样式重构为结构化布局并更新背景资源 - expenseApplicationPreview 补充事由字段,同步新增/更新 ai-document-detail-reference、document-query-model、html-renderer、workbench-ai-mode 等测试 - 更新公司通信费报销规则表
27 lines
879 B
JavaScript
27 lines
879 B
JavaScript
import assert from 'node:assert/strict'
|
|
import test from 'node:test'
|
|
|
|
import {
|
|
buildLocalApplicationPreview
|
|
} from '../src/utils/expenseApplicationPreview.js'
|
|
|
|
test('application preview keeps compact travel meeting reason without date or location prefix', () => {
|
|
const preview = buildLocalApplicationPreview(
|
|
'2月20-23日去上海出差参加相关残联会议',
|
|
{
|
|
name: '曹笑竹',
|
|
departmentName: '技术部',
|
|
position: '财务智能化产品经理',
|
|
managerName: '向万红',
|
|
grade: 'P5'
|
|
},
|
|
{ today: '2026-06-09' }
|
|
)
|
|
|
|
assert.equal(preview.fields.time, '2026-02-20 至 2026-02-23')
|
|
assert.equal(preview.fields.days, '4天')
|
|
assert.equal(preview.fields.location, '上海')
|
|
assert.equal(preview.fields.reason, '参加相关残联会议')
|
|
assert.doesNotMatch(preview.fields.reason, /2月20|23日|上海|出差/)
|
|
})
|