feat(web): 差旅领导意见事件结构化与申请审批信息增强

- applicationApproval 新增按日期/时间/审批角色拆分格式化,buildLeaderApprovalEvents 补充 dateLabel/timeLabel/roleLabel 字段
- TravelRequestDetailView 领导意见事件改为日期+时间+审批人结构化展示,travel-request-detail-view.css 重构对应样式
- travelReimbursementAttachmentModel 微调附件标识,同步更新 application-approval-info、travel-request-detail-leader-approval、attachment-association-confirmation 测试
- 更新公司通信费报销规则表
This commit is contained in:
caoxiaozhu
2026-06-21 23:24:09 +08:00
parent 88e91a5900
commit 669d22e71f
8 changed files with 329 additions and 186 deletions

View File

@@ -164,24 +164,36 @@
class="application-leader-opinion-event"
:class="event.tone"
>
<div class="application-leader-opinion-event-head">
<span class="application-leader-opinion-event-status">
<time class="application-leader-opinion-event-time" :datetime="event.time || undefined">
<strong>{{ event.dateLabel }}</strong>
<em v-if="event.timeLabel">{{ event.timeLabel }}</em>
</time>
<div class="application-leader-opinion-event-rail">
<span class="application-leader-opinion-event-status" :title="event.title">
<i :class="event.type === 'returned' ? 'mdi mdi-arrow-u-left-top' : 'mdi mdi-check-circle-outline'"></i>
{{ event.title }}
</span>
<time v-if="event.time">{{ event.time }}</time>
</div>
<div class="application-leader-opinion-event-body">
<span>意见</span>
<div class="application-leader-opinion-record">
<header class="application-leader-opinion-record-head">
<div class="application-leader-opinion-record-title">
<strong>{{ event.title }}</strong>
</div>
<dl class="application-leader-opinion-record-meta">
<div>
<dt>审批人</dt>
<dd>{{ event.operator }}</dd>
</div>
<div>
<dt>节点</dt>
<dd>{{ event.role }}</dd>
</div>
</dl>
</header>
<p>{{ event.opinion }}</p>
<footer v-if="event.returnCount" class="application-leader-opinion-event-foot">
<span v-if="event.returnCount"> {{ event.returnCount }} 次退回</span>
</footer>
</div>
<footer class="application-leader-opinion-event-foot">
<span class="application-leader-opinion-operator">
<em>审批人</em>
{{ event.operator }}
</span>
<span v-if="event.returnCount"> {{ event.returnCount }} 次退回</span>
</footer>
</article>
</div>
</div>