feat(web-admin): print OA or/and-sign nodes as per-person text lines
Align PDF flow section with progress UI person-line format. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
1e2b903cd7
commit
ea4ee3e573
2 files changed
+210
-65
No files matched your search
@@ -50,21 +50,44 @@
|
||||
</template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="oa-print-flow">
|
||||
<th>审批流程</th>
|
||||
<td>
|
||||
<div v-if="!model.flowItems.length" class="oa-print-text">-</div>
|
||||
<div
|
||||
v-for="(f, fi) in model.flowItems"
|
||||
:key="`f-${fi}`"
|
||||
class="oa-print-flow__item"
|
||||
<!-- 审批流程:左列 rowspan,每个节点独立一行(含表格线,对齐钉钉导出) -->
|
||||
<template v-if="model.flowItems.length">
|
||||
<tr
|
||||
v-for="(f, fi) in model.flowItems"
|
||||
:key="`f-${fi}`"
|
||||
class="oa-print-flow"
|
||||
>
|
||||
<th
|
||||
v-if="fi === 0"
|
||||
class="oa-print-flow__label"
|
||||
:rowspan="model.flowItems.length"
|
||||
>
|
||||
审批流程
|
||||
</th>
|
||||
<td class="oa-print-flow__cell">
|
||||
<div class="oa-print-flow__row">
|
||||
<div class="oa-print-flow__left">{{ f.left }}</div>
|
||||
<div class="oa-print-flow__right">{{ f.right }}</div>
|
||||
</div>
|
||||
<div v-if="f.comment" class="oa-print-flow__comment">意见:{{ f.comment }}</div>
|
||||
</div>
|
||||
<div v-if="f.personLines?.length" class="oa-print-flow__person-lines">
|
||||
<div
|
||||
v-for="(line, li) in f.personLines"
|
||||
:key="li"
|
||||
class="oa-print-flow__person-line"
|
||||
>
|
||||
{{ line }}
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="f.comment" class="oa-print-flow__comment">
|
||||
意见:{{ f.comment }}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</template>
|
||||
<tr v-else class="oa-print-flow">
|
||||
<th class="oa-print-flow__label">审批流程</th>
|
||||
<td class="oa-print-flow__cell">
|
||||
<span class="oa-print-text">-</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -102,6 +125,7 @@
|
||||
.oa-print-page {
|
||||
position: relative;
|
||||
width: 794px;
|
||||
/* 至少一页 A4 高,水印铺满;分页用 EPS 容差,避免略超 297mm 多出空白第二页 */
|
||||
min-height: 1123px;
|
||||
padding: 48px 56px 56px;
|
||||
box-sizing: border-box;
|
||||
@@ -159,16 +183,25 @@
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/*
|
||||
* 边框用 separate + 只画右/下边,避免 collapse 下相邻 1px 叠成粗细不一
|
||||
*(html2canvas 导出时尤其明显);外框由 table 上/左 + 末行下/末列右拼成。
|
||||
*/
|
||||
.oa-print-table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
table-layout: fixed;
|
||||
font-size: 13px;
|
||||
border-top: 1px solid #1f2329;
|
||||
border-left: 1px solid #1f2329;
|
||||
}
|
||||
|
||||
.oa-print-table th,
|
||||
.oa-print-table td {
|
||||
border: 1px solid #1f2329;
|
||||
border: none;
|
||||
border-right: 1px solid #1f2329;
|
||||
border-bottom: 1px solid #1f2329;
|
||||
padding: 9px 12px;
|
||||
vertical-align: middle;
|
||||
line-height: 1.5;
|
||||
@@ -191,13 +224,13 @@
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.oa-print-flow th,
|
||||
.oa-print-flow td {
|
||||
vertical-align: top;
|
||||
.oa-print-flow__label {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.oa-print-flow__item {
|
||||
padding: 3px 0;
|
||||
.oa-print-flow__cell {
|
||||
vertical-align: middle;
|
||||
padding: 8px 12px;
|
||||
}
|
||||
|
||||
.oa-print-flow__row {
|
||||
@@ -224,6 +257,18 @@
|
||||
color: #646a73;
|
||||
}
|
||||
|
||||
.oa-print-flow__person-lines {
|
||||
margin-top: 6px;
|
||||
display: grid;
|
||||
gap: 3px;
|
||||
}
|
||||
|
||||
.oa-print-flow__person-line {
|
||||
line-height: 1.55;
|
||||
word-break: break-word;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.oa-print-footer {
|
||||
display: flex;
|
||||
gap: 28px;
|
||||
|
||||
Reference in new issue
Block a user