打印调整

This commit is contained in:
Ledo 2026-01-10 23:14:25 +08:00
parent add39bc4f8
commit ed4f521faa

View File

@ -18,78 +18,78 @@
<tbody> <tbody>
<tr> <tr>
<td colspan="2"> 发货编号 </td> <td colspan="2"> 发货编号 </td>
<td colspan="3"> <td colspan="7">
<span>{{ formData.code }}</span> <span>{{ formData.code }}</span>
</td> </td>
<td>合同号</td> <td colspan="2">合同号</td>
<td colspan="2">{{ formData.contractNo }}</td> <td colspan="2">{{ formData.contractNo }}</td>
<td> 性质 </td> <td colspan="2"> 性质 </td>
<td>{{ formData.property }} </td> <td colspan="4">{{ formData.property }} </td>
</tr> </tr>
</tbody> </tbody>
<tr> <tr>
<td colspan="2"> 发货日期 </td> <td colspan="2"> 发货日期 </td>
<td colspan="3"> <td colspan="7">
{{ formatDate(new Date(formData.deliverDate), 'YYYY-MM-DD') }} {{ formatDate(new Date(formData.deliverDate), 'YYYY-MM-DD') }}
</td> </td>
<td> 联系人</td> <td colspan="2"> 联系人</td>
<td>{{ formData.receivePersonName }} </td> <td colspan="2">{{ formData.receivePersonName }} </td>
<td> 电话 </td> <td colspan="2"> 电话 </td>
<td colspan="2">{{ formData.receivePersonMobile }} </td> <td colspan="4">{{ formData.receivePersonMobile }} </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 收货单位 </td> <td colspan="2"> 收货单位 </td>
<td colspan="8">{{ formData.customerName }}</td> <td colspan="17">{{ formData.customerName }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 收货地址 </td> <td colspan="2"> 收货地址 </td>
<td colspan="8">{{ formData.receiveAddress }}</td> <td colspan="17">{{ formData.receiveAddress }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 项目名称</td> <td colspan="2"> 项目名称</td>
<td colspan="4">{{ formData.projectName }}</td> <td colspan="9" :style="fontSizeStyle">{{ formData.projectName }}</td>
<td>重量(T)</td> <td colspan="2">重量(T)</td>
<td>{{ formData.transportWeight }}</td> <td colspan="2">{{ formData.transportWeight }}</td>
<td>位置()</td> <td colspan="2">位置()</td>
<td>{{ formData.transportSize }}</td> <td colspan="2">{{ formData.transportSize }}</td>
</tr> </tr>
<tbody> <tbody>
<tr> <tr>
<td colspan="4"> 内容清单 </td> <td colspan="7"> 内容清单 </td>
<td> 单位 </td> <td colspan="2"> 单位 </td>
<td> 数量 </td> <td colspan="2"> 数量 </td>
<td>重量(T)</td> <td colspan="2">重量(T)</td>
<td>尺寸()</td> <td colspan="2">尺寸()</td>
<td colspan="2"> 备注 </td> <td colspan="4"> 备注 </td>
</tr> </tr>
<tr v-show="subTotalAmount <= splitThreshold" v-for="(item, index) in formData.deliverOrderSubs" :key="index"> <tr v-show="subTotalAmount <= splitThreshold" v-for="(item, index) in formData.deliverOrderSubs" :key="index">
<td colspan="4" v-if="item.category == 'DELIVER_LIST'">{{ item.name }}</td> <td colspan="7" v-if="item.category == 'DELIVER_LIST'">{{ item.name }}</td>
<td colspan="4" v-if="item.category== 'OTHER_LIST' && item.subType == 1">备件:{{ item.name }}</td> <td colspan="7" v-if="item.category== 'OTHER_LIST' && item.subType == 1">备件:{{ item.name }}</td>
<td colspan="4" v-if="item.category== 'OTHER_LIST' && item.subType == 2">刀具:{{ item.name }}</td> <td colspan="7" v-if="item.category== 'OTHER_LIST' && item.subType == 2">刀具:{{ item.name }}</td>
<td>{{ getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit) }}</td> <td colspan="2">{{ getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit) }}</td>
<td>{{ item.amount }}</td> <td colspan="2">{{ item.amount }}</td>
<td>{{ item.weight }}</td> <td colspan="2">{{ item.weight }}</td>
<td>{{ item.size }}</td> <td colspan="2">{{ item.size }}</td>
<td colspan="2">{{ item.remark }}</td> <td colspan="4">{{ item.remark }}</td>
</tr> </tr>
<tr v-if="subTotalAmount > splitThreshold"> <tr v-if="subTotalAmount > splitThreshold">
<td colspan="4">详见清单附件</td> <td colspan="7">详见清单附件</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td> <td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="4"></td>
</tr> </tr>
<tr v-for="item in num" :key="item"> <tr v-for="item in num" :key="item">
<td colspan="4"> &nbsp;</td> <td colspan="7"> &nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td> <td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="4"></td>
</tr> </tr>
<tr> <tr>
<td colspan="10">{{formData.remark?formData.remark:'&nbsp;'}}</td> <td colspan="19">{{formData.remark?formData.remark:'&nbsp;'}}</td>
<!-- <td></td>--> <!-- <td></td>-->
<!-- <td></td>--> <!-- <td></td>-->
<!-- <td></td>--> <!-- <td></td>-->
@ -99,33 +99,33 @@
</tbody> </tbody>
<tr> <tr>
<td colspan="2"> 发货单位 </td> <td colspan="2"> 发货单位 </td>
<td colspan="3"> <td colspan="7">
{{ formData.deliverCompany }} {{ formData.deliverCompany }}
</td> </td>
<td> 联系人</td> <td colspan="2"> 联系人</td>
<td>{{ formData.deliverPersonName }} </td> <td colspan="2">{{ formData.deliverPersonName }} </td>
<td> 电话 </td> <td colspan="2"> 电话 </td>
<td colspan="2">{{ formData.deliverPersonMobile }} </td> <td colspan="4">{{ formData.deliverPersonMobile }} </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 司机姓名 </td> <td colspan="2"> 司机姓名 </td>
<td colspan="2" v-if="formData.transportDriverName"> <td colspan="5" v-if="formData.transportDriverName">
{{ formData.transportDriverName }} {{ formData.transportDriverName }}
</td> </td>
<td colspan="2" v-else style="width: 60px"></td> <td colspan="5" v-else style="width: 60px"></td>
<td>车牌号</td> <td colspan="2">车牌号</td>
<td colspan="2" v-if="formData.transportBusNumber">{{ formData.transportBusNumber }}</td> <td colspan="4" v-if="formData.transportBusNumber">{{ formData.transportBusNumber }}</td>
<td colspan="2" v-else style="width: 50px"></td> <td colspan="4" v-else style="width: 50px"></td>
<td> 电话 </td> <td colspan="2"> 电话 </td>
<td colspan="2" v-if="formData.transportDriverMobile">{{ formData.transportDriverMobile }} <td colspan="4" v-if="formData.transportDriverMobile">{{ formData.transportDriverMobile }}
</td> </td>
<td colspan="2" v-else style="width: 50px"></td> <td colspan="4" v-else style="width: 50px"></td>
</tr> </tr>
<tr> <tr>
<td colspan="5"> <td colspan="9">
<div style="text-align: left">内部货物门点人签名:</div> <div style="text-align: left">内部货物门点人签名:</div>
</td> </td>
<td colspan="5"> <td colspan="10">
<div style="text-align: left">收货人签名:</div> <div style="text-align: left">收货人签名:</div>
</td> </td>
</tr> </tr>
@ -151,77 +151,77 @@
<tbody> <tbody>
<tr> <tr>
<td colspan="2"> 发货编号 </td> <td colspan="2"> 发货编号 </td>
<td colspan="3"> <td colspan="7">
<span>{{ formData.code }}</span> <span>{{ formData.code }}</span>
</td> </td>
<td>合同号</td> <td colspan="2">合同号</td>
<td colspan="2">{{ formData.contractNo }}</td> <td colspan="2">{{ formData.contractNo }}</td>
<td> 性质 </td> <td colspan="2"> 性质 </td>
<td>{{ formData.property }} </td> <td colspan="4">{{ formData.property }} </td>
</tr> </tr>
</tbody> </tbody>
<tr> <tr>
<td colspan="2"> 发货日期 </td> <td colspan="2"> 发货日期 </td>
<td colspan="3"> <td colspan="7">
{{ formatDate(new Date(formData.deliverDate), 'YYYY-MM-DD') }} {{ formatDate(new Date(formData.deliverDate), 'YYYY-MM-DD') }}
</td> </td>
<td> 联系人</td> <td colspan="2 "> 联系人</td>
<td>{{ formData.receivePersonName }} </td> <td colspan="2">{{ formData.receivePersonName }} </td>
<td> 电话 </td> <td colspan="2"> 电话 </td>
<td colspan="2">{{ formData.receivePersonMobile }} </td> <td colspan="4">{{ formData.receivePersonMobile }} </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 收货单位 </td> <td colspan="2"> 收货单位 </td>
<td colspan="8">{{ formData.customerName }}</td> <td colspan="17">{{ formData.customerName }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 收货地址 </td> <td colspan="2"> 收货地址 </td>
<td colspan="8">{{ formData.receiveAddress }}</td> <td colspan="17">{{ formData.receiveAddress }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 项目名称</td> <td colspan="2"> 项目名称</td>
<td colspan="4">{{ formData.projectName }}</td> <td colspan="9" :style="fontSizeStyle">{{ formData.projectName }}</td>
<td>重量(T)</td> <td colspan="2">重量(T)</td>
<td>{{ formData.transportWeight }}</td> <td colspan="2">{{ formData.transportWeight }}</td>
<td>位置()</td> <td colspan="2">位置()</td>
<td>{{ formData.transportSize }}</td> <td colspan="2">{{ formData.transportSize }}</td>
</tr> </tr>
<tbody> <tbody>
<tr> <tr>
<td colspan="4"> 内容清单 </td> <td colspan="7"> 内容清单 </td>
<td> 单位 </td> <td colspan="2"> 单位 </td>
<td> 数量 </td> <td colspan="2"> 数量 </td>
<td>重量(T)</td> <td colspan="2">重量(T)</td>
<td>尺寸()</td> <td colspan="2">尺寸()</td>
<td colspan="2"> 备注 </td> <td colspan="4"> 备注 </td>
</tr> </tr>
<tr v-show="subTotalAmount <= splitThreshold" v-for="(item, index) in formData.deliverOrderSubs" :key="index"> <tr v-show="subTotalAmount <= splitThreshold" v-for="(item, index) in formData.deliverOrderSubs" :key="index">
<td colspan="4">{{ item.name }}</td> <td colspan="7">{{ item.name }}</td>
<td>{{ getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit) }}</td> <td colspan="2">{{ getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit) }}</td>
<td>{{ item.amount }}</td> <td colspan="2">{{ item.amount }}</td>
<td>{{ item.weight }}</td> <td colspan="2">{{ item.weight }}</td>
<td>{{ item.size }}</td> <td colspan="2">{{ item.size }}</td>
<td colspan="2">{{ item.remark }}</td> <td colspan="4">{{ item.remark }}</td>
</tr> </tr>
<tr v-if="subTotalAmount > splitThreshold"> <tr v-if="subTotalAmount > splitThreshold">
<td colspan="4">详见清单附件</td> <td colspan="7">详见清单附件</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td> <td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="4"></td>
</tr> </tr>
<tr v-for="item in num" :key="item"> <tr v-for="item in num" :key="item">
<td colspan="4"> &nbsp;</td> <td colspan="7"> &nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td> <td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="2"></td>
<td colspan="4"></td>
</tr> </tr>
<tr> <tr>
<td colspan="10">{{formData.remark?formData.remark:'&nbsp;'}}</td> <td colspan="19">{{formData.remark?formData.remark:'&nbsp;'}}</td>
<!-- <td></td>--> <!-- <td></td>-->
<!-- <td></td>--> <!-- <td></td>-->
<!-- <td></td>--> <!-- <td></td>-->
@ -232,33 +232,33 @@
<tr> <tr>
<td colspan="2"> 发货单位 </td> <td colspan="2"> 发货单位 </td>
<td colspan="3"> <td colspan="7">
{{ formData.deliverCompany }} {{ formData.deliverCompany }}
</td> </td>
<td> 联系人</td> <td colspan="2"> 联系人</td>
<td>{{ formData.deliverPersonName }} </td> <td colspan="2">{{ formData.deliverPersonName }} </td>
<td> 电话 </td> <td colspan="2"> 电话 </td>
<td colspan="2">{{ formData.deliverPersonMobile }} </td> <td colspan="4">{{ formData.deliverPersonMobile }} </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> 司机姓名 </td> <td colspan="2"> 司机姓名 </td>
<td colspan="2" v-if="formData.transportDriverName"> <td colspan="5" v-if="formData.transportDriverName">
{{ formData.transportDriverName }} {{ formData.transportDriverName }}
</td> </td>
<td colspan="2" v-else style="width: 60px"></td> <td colspan="5" v-else style="width: 60px"></td>
<td>车牌号</td> <td colspan="2">车牌号</td>
<td colspan="2" v-if="formData.transportBusNumber">{{ formData.transportBusNumber }}</td> <td colspan="4" v-if="formData.transportBusNumber">{{ formData.transportBusNumber }}</td>
<td colspan="2" v-else style="width: 50px"></td> <td colspan="4" v-else style="width: 50px"></td>
<td> 电话 </td> <td colspan="2"> 电话 </td>
<td colspan="2" v-if="formData.transportDriverMobile">{{ formData.transportDriverMobile }} <td colspan="4" v-if="formData.transportDriverMobile">{{ formData.transportDriverMobile }}
</td> </td>
<td colspan="2" v-else style="width: 50px"></td> <td colspan="4" v-else style="width: 50px"></td>
</tr> </tr>
<tr> <tr>
<td colspan="5"> <td colspan="9">
<div style="text-align: left">内部货物门点人签名:</div> <div style="text-align: left">内部货物门点人签名:</div>
</td> </td>
<td colspan="5"> <td colspan="10">
<div style="text-align: left">收货人签名:</div> <div style="text-align: left">收货人签名:</div>
</td> </td>
</tr> </tr>
@ -504,6 +504,7 @@ const onPrint = () => {
} }
} }
table { table {
table-layout: fixed;
width: 100%; /* 让表格宽度100%占满其父元素宽度 */ width: 100%; /* 让表格宽度100%占满其父元素宽度 */
height: auto; /* 高度根据内容自适应 */ height: auto; /* 高度根据内容自适应 */
font-size: 14px; font-size: 14px;
@ -590,7 +591,16 @@ const subTotalAmount = ref(0)
const num = ref(0) const num = ref(0)
const splitThreshold = 6 const splitThreshold = 6
const logoDataUrl = ref('') // LogoBase64URL const logoDataUrl = ref('') // LogoBase64URL
const fontSizeStyle = computed(() => {
const projectName = formData.value?.projectName ?? ''
return {
textAlign: 'left',
width: '100%',
fontSize: projectName.length > 20
? '13px !important'
: '14px !important'
}
})
/** 打开弹窗 */ /** 打开弹窗 */
const open = async (id: number) => { const open = async (id: number) => {
dialogVisible.value = true dialogVisible.value = true
@ -682,6 +692,7 @@ onMounted(() => {})
} }
} }
table { table {
table-layout: fixed;
width: 100%; /* 让表格宽度100%占满其父元素宽度 */ width: 100%; /* 让表格宽度100%占满其父元素宽度 */
height: auto; /* 高度根据内容自适应 */ height: auto; /* 高度根据内容自适应 */
font-size: 14px; font-size: 14px;