根据新模板调整配件销售发货清单导出的PDF样式

This commit is contained in:
曹鹏飞 2026-02-28 14:42:51 +08:00
parent 2ecdb7a9b7
commit 2c323af7ed
2 changed files with 115 additions and 118 deletions

View File

@ -219,7 +219,7 @@ public class ComponentPackingController {
ComponentPackingEditVO vo = getPackingInfo(packingId);
Map<String, Object> variables = new HashMap<>();
variables.put("info", vo.getPackingVO());
variables.put("pages", PdfPageDTO.create(vo.getPackingItemVO(), 16, new ComponentPackingItemVO()));
variables.put("pages", PdfPageDTO.create(vo.getPackingItemVO(), 12, new ComponentPackingItemVO()));
String html = ThymeleafUtil.generator("/template/", "配件销售发货清单", ".html", variables);
PdfGeneratorUtil.generatePdf("发货清单" + vo.getPackingVO().getNo(), html, response);
}

View File

@ -31,10 +31,18 @@
.table-cell {
float: left;
padding: 6px;
height: 50px;
padding: 10px;
box-sizing: border-box;
border-top: 1px solid #000;
border-left: 1px solid #000;
text-align: center;
}
.table-cell-non-border {
float: left;
padding: 3px;
box-sizing: border-box;
text-align: left;
white-space: nowrap;
overflow: hidden;
@ -60,134 +68,123 @@
font-weight: bold;
text-align: center;
font-size: 18pt;
padding: 10px;
padding: 5px;
}
.cell-center {
text-align: center;
}
.data-title {
font-weight: bold;
}
.data-item{
padding: 17px;
}
table{
border-collapse: collapse;
width: 100%;
}
td,th{
padding: 5px;
}
.border td,tr,th{
border: 1px solid #000;
}
</style>
</head>
<body>
<div class="table-container" th:each="page,pageStat : ${pages}">
<div class="table-row first-row">
<div class="table-cell header-cell last-col" style="width: 100%">发货清单</div>
</div>
<div class="table-row">
<div class="table-cell" style="width: 35%" th:text="${info.no}">ZL-4.15(3-04)</div>
<div class="table-cell" style="width: 35%">福建南方路面机械股份有限公司</div>
<div class="table-cell" style="width: 15%">装车号V01</div>
<div class="table-cell last-col" style="width: 15%"
th:text="${#strings.isEmpty(info.cnum)?'&nbsp;':info.cnum}">&nbsp;</div>
</div>
<div class="table-row">
<div class="table-cell cell-center" style="width: 9%">订单号</div>
<div class="table-cell" style="width: 11%" th:utext="${#strings.isEmpty(info.vbeln)?'&nbsp;':info.vbeln}">
1172000
</div>
<div class="table-cell cell-center" style="width: 8%">发货员</div>
<div class="table-cell" style="width: 8%" th:text="${#strings.isEmpty(info.uname)?'&nbsp;':info.uname}">程慧芳
</div>
<div class="table-cell cell-center" style="width: 13%">办事处/代理商</div>
<div class="table-cell" style="width: 11%" th:text="${#strings.isEmpty(info.pName)?'&nbsp;':info.pName}">测试
</div>
<div class="table-cell cell-center" style="width: 9%">发货日期</div>
<div class="table-cell" style="width: 11%"
th:text="${info.datum != null?#temporals.format(info.datum, 'yyyy-MM-dd'):'&nbsp;'}">
2025-08-04
</div>
<div class="table-cell cell-center" style="width: 9%">发运方式</div>
<div class="table-cell last-col" style="width: 11%"
th:text="${#strings.isEmpty(info.lBezei)?'&nbsp;':info.lBezei}">&nbsp;
<div class="table-cell-non-border header-cell" style="width: 100%">
福建南方路面机械股份有限公司<br/>Fujian South Highway Machinery Co., Ltd.
</div>
</div>
<div class="table-row">
<div class="table-cell cell-center" style="width: 9%">设备编码</div>
<div class="table-cell" style="width: 11%" th:utext="${#strings.isEmpty(info.matnr)?'&nbsp;':info.matnr}">
22222222222
</div>
<div class="table-cell cell-center" style="width: 12%">收货人电话</div>
<div class="table-cell" style="width: 40%"
th:text="${#strings.isEmpty(info.gStrSuppl2)?'&nbsp;':info.gStrSuppl2}">于文强18365529799
</div>
<div class="table-cell cell-center" style="width: 8%">货单号</div>
<div class="table-cell last-col" style="width: 20%"
th:text="${#strings.isEmpty(info.huodh)?'&nbsp;':info.huodh}">0000
</div>
</div>
<div class="table-row">
<div class="table-cell cell-center" style="width: 9%">收货单位</div>
<div class="table-cell" style="width: 40%" th:text="${#strings.isEmpty(info.lName)?'&nbsp;':info.lName}">
安徽华恒创远新材料有限责任公司
</div>
<div class="table-cell cell-center" style="width: 12%">签收人/电话</div>
<div class="table-cell last-col" style="width: 39%">&nbsp;</div>
</div>
<div class="table-row">
<div class="table-cell cell-center" style="width: 9%">收货地址</div>
<div class="table-cell" style="width: 71%" th:text="${#strings.isEmpty(info.gStreen)?'&nbsp;':info.gStreen}">
安徽华恒创远新材料有限责任公司
</div>
<div class="table-cell cell-center" style="width: 9%">收货日期</div>
<div class="table-cell last-col" style="width: 11%">2025-08-04</div>
</div>
<div class="table-row">
<div class="table-cell cell-center" style="width: 6%">司机</div>
<div class="table-cell" style="width: 14%" th:text="${#strings.isEmpty(info.bname)?'&nbsp;':info.bname}">
于文强
</div>
<div class="table-cell cell-center" style="width: 8%">驾驶证</div>
<div class="table-cell" style="width: 26%" th:text="${#strings.isEmpty(info.zjshz)?'&nbsp;':info.zjshz}">
51254685465465465
</div>
<div class="table-cell cell-center" style="width: 9%">车牌号</div>
<div class="table-cell" style="width: 12%" th:text="${#strings.isEmpty(info.zchep)?'&nbsp;':info.zchep}">
粤A12345
</div>
<div class="table-cell cell-center" style="width: 10%">司机电话</div>
<div class="table-cell last-col" style="width: 15%"
th:text="${#strings.isEmpty(info.telNumber)?'&nbsp;':info.telNumber}">18888888888
</div>
</div>
<div class="table-row">
<div class="table-cell cell-center" style="width: 6%">序号</div>
<div class="table-cell cell-center" style="width: 9%">配件编码</div>
<div class="table-cell cell-center" style="width: 39%">配件名称</div>
<div class="table-cell cell-center" style="width: 12%">货位号</div>
<div class="table-cell cell-center" style="width: 6%">单位</div>
<div class="table-cell cell-center" style="width: 8%">数量</div>
<div class="table-cell cell-center last-col" style="width: 20%">备注</div>
</div>
<div class="table-row" th:each="item,iterStat : ${page.datas}">
<div class="table-cell cell-center" style="width: 6%" th:text="${iterStat.count}">1</div>
<div class="table-cell cell-center" style="width: 9%"
th:text="${#strings.isEmpty(item.idnrk)?'&nbsp;':item.idnrk}">2100552783
</div>
<div class="table-cell" style="width: 39%" th:text="${#strings.isEmpty(item.ojtxb)?'&nbsp;':item.ojtxb}">
IH1213T.4 衬板6号
</div>
<div class="table-cell cell-center" style="width: 12%"
th:text="${#strings.isEmpty(item.lgpbe)?'&nbsp;':item.lgpbe}">E1-4-4
</div>
<div class="table-cell cell-center" style="width: 6%"
th:text="${#strings.isEmpty(item.meins)?'&nbsp;':item.meins}">PC
</div>
<div class="table-cell cell-center" style="width: 8%"
th:text="${#strings.isEmpty(item.outQty)?'&nbsp;':item.outQty}">20.000
</div>
<div class="table-cell last-col" style="width: 20%"
th:text="${#strings.isEmpty(item.zatwrt)?'&nbsp;':item.zatwrt}">&nbsp;
</div>
</div>
<div class="table-row last-row">
<div class="table-cell" style="width: 6%">&nbsp;</div>
<div class="table-cell" style="width: 9%">&nbsp;</div>
<div class="table-cell" style="width: 39%">&nbsp;</div>
<div class="table-cell" style="width: 12%">&nbsp;</div>
<div class="table-cell" style="width: 6%">&nbsp;</div>
<div class="table-cell" style="width: 8%">&nbsp;</div>
<div class="table-cell last-col" style="width: 20%">&nbsp;</div>
</div>
<table>
<tr>
<td style="width: 20%" rowspan="2"></td>
<td rowspan="2" style="text-align: center;font-size: 18pt;font-weight: bold">
发货清单<br/>Shipping List
</td>
<td style="width: 20%;border: 1px solid #000;">
<span class="data-title">货单编号</span><br/>Shipping Order Number
</td>
</tr>
<tr>
<td th:text="${info.no}" style="border: 1px solid #000;">
ZL-4.15(3-04)
</td>
</tr>
</table>
<table class="border">
<tr>
<td style="width: 15%"><span class="data-title">订单号</span><br/>Order No.</td>
<td style="width: 30%" colspan="2" th:text="${#strings.isEmpty(info.vbeln)?'&nbsp;':info.vbeln}">1172000</td>
<td style="width: 15%"><span class="data-title">设备编码</span><br/>Equipment Code</td>
<td colspan="3" th:text="${#strings.isEmpty(info.matnr)?'&nbsp;':info.matnr}">200012111</td>
</tr>
<tr>
<td><span class="data-title">收货单位</span><br/>Consignee Unit</td>
<td colspan="2" th:text="${#strings.isEmpty(info.lName)?'&nbsp;':info.lName}">安徽华恒创远新材料有限责任公司</td>
<td><span class="data-title">收货地址</span><br/>Consignee Address</td>
<td colspan="3" th:text="${#strings.isEmpty(info.gStreen)?'&nbsp;':info.gStreen}">1172000</td>
</tr>
<tr>
<td><span class="data-title">收货人/电话</span><br/>Consignee's Phone No.</td>
<td th:text="${#strings.isEmpty(info.gStrSuppl2)?'&nbsp;':info.gStrSuppl2}">于文强18365529799</td>
<td style="width: 15%"><span class="data-title">签收人/电话</span><br/>Signatory/Phone No.</td>
<td style="width: 25%" colspan="2"></td>
<td style="width: 10%"><span class="data-title">收货日期</span><br/>Receipt Date</td>
<td></td>
</tr>
</table>
<table class="border">
<tr>
<td style="width: 15%"><span class="data-title">发货员</span><br/>Dispatcher</td>
<td style="width: 15%" th:text="${#strings.isEmpty(info.uname)?'&nbsp;':info.uname}">程慧芳</td>
<td style="width: 15%"><span class="data-title">发货日期</span><br/>Shipping Date</td>
<td style="width: 10%" th:text="${info.datum != null?#temporals.format(info.datum, 'yyyy-MM-dd'):'&nbsp;'}">2025-08-04</td>
<td style="width: 15%"><span class="data-title">办事处/代理商</span><br/>Office/Agent</td>
<td colspan="3" th:text="${#strings.isEmpty(info.pName)?'&nbsp;':info.pName}">测试</td>
</tr>
<tr>
<td><span class="data-title">发运方式</span><br/>Shipping Method</td>
<td th:text="${#strings.isEmpty(info.lBezei)?'&nbsp;':info.lBezei}">汽车</td>
<td><span class="data-title">货单号</span><br/>Waybill No.</td>
<td th:text="${#strings.isEmpty(info.huodh)?'&nbsp;':info.huodh}">0000</td>
<td><span class="data-title">装车号</span><br/>Loading No.</td>
<td colspan="3" th:text="${#strings.isEmpty(info.cnum)?'&nbsp;':info.cnum}">V01</td>
</tr>
<tr>
<td><span class="data-title">车牌号</span><br/>License Plate No.</td>
<td th:text="${#strings.isEmpty(info.zchep)?'&nbsp;':info.zchep}">粤A12345</td>
<td><span class="data-title">司机</span><br/>Driver</td>
<td th:text="${#strings.isEmpty(info.bname)?'&nbsp;':info.bname}">于文强</td>
<td><span class="data-title">驾驶证</span><br/>Driver's License No.</td>
<td th:text="${#strings.isEmpty(info.zjshz)?'&nbsp;':info.zjshz}"></td>
<td style="width: 8%"><span class="data-title">电话</span><br/>Phone No.</td>
<td style="width: 10%" th:text="${#strings.isEmpty(info.telNumber)?'&nbsp;':info.telNumber}">18888888888</td>
</tr>
</table>
<table class="border" style="margin-top: 5px;">
<tr>
<td style="width: 10%"><span class="data-title">序号</span><br/>Serial No.</td>
<td style="width: 15%"><span class="data-title">配件编码</span><br/>Spare Part Code</td>
<td><span class="data-title">配件名称</span><br/>Spare Part Name</td>
<td style="width: 15%"><span class="data-title">货位号</span><br/>Storage Location No.</td>
<td style="width: 5%"><span class="data-title">单位</span><br/>Unit</td>
<td style="width: 5%"><span class="data-title">数量</span><br/>Quantity</td>
<td style="width: 10%"><span class="data-title">备注</span><br/>Remarks</td>
</tr>
<tr th:each="item,iterStat : ${page.datas}">
<td th:text="${iterStat.count}">1</td>
<td th:text="${#strings.isEmpty(item.idnrk)?'&nbsp;':item.idnrk}">2100552783</td>
<td style="text-align: left" th:text="${#strings.isEmpty(item.ojtxb)?'&nbsp;':item.ojtxb}">IH1213T.4 衬板6号</td>
<td th:text="${#strings.isEmpty(item.lgpbe)?'&nbsp;':item.lgpbe}">E1-4-4</td>
<td th:text="${#strings.isEmpty(item.meins)?'&nbsp;':item.meins}">PC</td>
<td th:text="${#strings.isEmpty(item.outQty)?'&nbsp;':item.outQty}">20.000</td>
<td th:text="${#strings.isEmpty(item.zatwrt)?'&nbsp;':item.zatwrt}">&nbsp;</td>
</tr>
</table>
</div>
</body>
</html>