发货单打印

pull/3/head
qiuhongwu 9 months ago
parent 7b88f34d52
commit 232cfdef95

@ -3,7 +3,7 @@
<!-- 打印预览 -->
<div class="print-wrap page" ref="print">
<!-- 客户联 -->
<table border="2" cellspacing="0" id="table" >
<table border="2" cellspacing="0" id="table">
<tbody>
<tr>
<td colspan="10">
@ -64,13 +64,17 @@
<td>尺寸()</td>
<td colspan="2"> 备注 </td>
</tr>
<tr v-show="subTotalAmount <= splitThreshold" v-for="(item,index) in formData.deliverOrderSubs" :key="index">
<td colspan="4">{{item.name}}</td>
<td>{{getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit)}}</td>
<td>{{item.amount}}</td>
<td>{{item.weight}}</td>
<td>{{item.size}}</td>
<td colspan="2">{{item.remark}}</td>
<tr
v-show="subTotalAmount <= splitThreshold"
v-for="(item, index) in formData.deliverOrderSubs"
:key="index"
>
<td colspan="4">{{ item.name }}</td>
<td>{{ getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit) }}</td>
<td>{{ item.amount }}</td>
<td>{{ item.weight }}</td>
<td>{{ item.size }}</td>
<td colspan="2">{{ item.remark }}</td>
</tr>
<tr v-if="subTotalAmount > splitThreshold">
<td colspan="4">工装模具详见清单附件</td>
@ -89,6 +93,16 @@
<td colspan="2"></td>
</tr>
</tbody>
<tbody v-if="subTotalAmount > splitThreshold">
<tr v-for="item in 4" :key="item">
<td colspan="4"> &nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td>
</tr>
</tbody>
<tr>
<td colspan="2"> 发货单位 </td>
<td colspan="3">
@ -101,13 +115,18 @@
</tr>
<tr>
<td colspan="2"> 司机姓名 </td>
<td colspan="2">
<td colspan="2" v-if="formData.transportDriverName">
{{ formData.transportDriverName }}
</td>
<td colspan="2" v-else style="width: 60px"></td>
<td>车牌号</td>
<td colspan="2">{{formData.transportBusNumber}}</td>
<td colspan="2" v-if="formData.transportBusNumber">{{ formData.transportBusNumber }}</td>
<td colspan="2" v-else style="width: 50px"></td>
<td> 电话 </td>
<td colspan="2">{{ formData.transportDriverMobile }} </td>
<td colspan="2" v-if="formData.transportDriverMobile"
>{{ formData.transportDriverMobile }}
</td>
<td colspan="2" v-else style="width: 50px"></td>
</tr>
<tr>
<td colspan="5">
@ -144,16 +163,16 @@
</tr>
</tbody>
<tbody>
<tr>
<td colspan="2"> 发货编号 </td>
<td colspan="3">
<span>{{ formData.code }}</span>
</td>
<td>合同号</td>
<td colspan="2">{{ formData.contractNo }}</td>
<td> 性质 </td>
<td>{{ formData.property }} </td>
</tr>
<tr>
<td colspan="2"> 发货编号 </td>
<td colspan="3">
<span>{{ formData.code }}</span>
</td>
<td>合同号</td>
<td colspan="2">{{ formData.contractNo }}</td>
<td> 性质 </td>
<td>{{ formData.property }} </td>
</tr>
</tbody>
<tr>
<td colspan="2"> 发货日期 </td>
@ -190,13 +209,17 @@
<td>尺寸()</td>
<td colspan="2"> 备注 </td>
</tr>
<tr v-show="subTotalAmount <= splitThreshold" v-for="(item,index) in formData.deliverOrderSubs" :key="index">
<td colspan="4">{{item.name}}</td>
<td>{{getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit)}}</td>
<td>{{item.amount}}</td>
<td>{{item.weight}}</td>
<td>{{item.size}}</td>
<td colspan="2">{{item.remark}}</td>
<tr
v-show="subTotalAmount <= splitThreshold"
v-for="(item, index) in formData.deliverOrderSubs"
:key="index"
>
<td colspan="4">{{ item.name }}</td>
<td>{{ getDictLabel(DICT_TYPE.HELI_MATERIAL_UNIT, item.unit) }}</td>
<td>{{ item.amount }}</td>
<td>{{ item.weight }}</td>
<td>{{ item.size }}</td>
<td colspan="2">{{ item.remark }}</td>
</tr>
<tr v-if="subTotalAmount > splitThreshold">
<td colspan="4">工装模具详见清单附件</td>
@ -215,6 +238,16 @@
<td colspan="2"></td>
</tr>
</tbody>
<tbody v-if="subTotalAmount > splitThreshold">
<tr v-for="item in 4" :key="item">
<td colspan="4"> &nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td>
</tr>
</tbody>
<tr>
<td colspan="2"> 发货单位 </td>
<td colspan="3">
@ -227,13 +260,18 @@
</tr>
<tr>
<td colspan="2"> 司机姓名 </td>
<td colspan="2">
<td colspan="2" v-if="formData.transportDriverName">
{{ formData.transportDriverName }}
</td>
<td colspan="2" v-else style="width: 60px"></td>
<td>车牌号</td>
<td colspan="2">{{formData.transportBusNumber}}</td>
<td colspan="2" v-if="formData.transportBusNumber">{{ formData.transportBusNumber }}</td>
<td colspan="2" v-else style="width: 50px"></td>
<td> 电话 </td>
<td colspan="2">{{ formData.transportDriverMobile }} </td>
<td colspan="2" v-if="formData.transportDriverMobile"
>{{ formData.transportDriverMobile }}
</td>
<td colspan="2" v-else style="width: 50px"></td>
</tr>
<tr>
<td colspan="5">
@ -261,70 +299,71 @@
<!-- 附件需要判断 -->
<div v-if="subTotalAmount > splitThreshold">
<div class="divide_line1" style="margin-top: 30px"></div>
<table border="2" cellspacing="0" id="table1" style="height: 28cm; ">
<table border="2" cellspacing="0" id="table1" style="height: 28cm">
<tbody>
<tr>
<td colspan="10">
<div style="display: flex; align-items: center; justify-content: space-between">
<img src="/src/assets/imgs/exlogo.png" style="width: 100px" alt="" />
<span style="font-size: 20px; font-weight: 700">清单附件</span>
<span style="font-size: 12px">发货编号{{ formData.code }}</span>
</div>
</td>
</tr>
<tr>
<td colspan="10">
<div style="display: flex; align-items: center; justify-content: space-between">
<img src="/src/assets/imgs/exlogo.png" style="width: 100px" alt="" />
<span style="font-size: 20px; font-weight: 700">清单附件</span>
<span style="font-size: 12px">发货编号{{ formData.code }}</span>
</div>
</td>
</tr>
</tbody>
<tbody>
<tr>
<td> 序号 </td>
<td colspan="3">
<span>摸具名称</span>
</td>
<td colspan="3">摸具图号</td>
<td> 数量() </td>
<td colspan="2">备注 </td>
</tr>
<tr>
<td colspan="10" style="background-color: rgb(255, 255, 0)">
<div style="text-align: left">模具清单</div>
</td>
</tr>
<tr v-for="(item,index) in formData.deliverOrderSubs" :key="index">
<td> {{ index+1 }} </td>
<td colspan="3">{{ item.name }}</td>
<td colspan="3">{{ item.blueprintNo}}</td>
<td> {{ item.amount }} </td>
<td colspan="2">{{ item.remark }} </td>
</tr>
<tr>
<td> 序号 </td>
<td colspan="3">
<span>摸具名称</span>
</td>
<td colspan="3">摸具图号</td>
<td> 数量() </td>
<td colspan="2">备注 </td>
</tr>
<tr>
<td colspan="10" style="background-color: rgb(255, 255, 0)">
<div style="text-align: left">模具清单</div>
</td>
</tr>
<tr v-for="(item, index) in formData.deliverOrderSubs" :key="index">
<td> {{ index + 1 }} </td>
<td colspan="3">{{ item.name }}</td>
<td colspan="3">{{ item.blueprintNo }}</td>
<td> {{ item.amount }} </td>
<td colspan="2">{{ item.remark }} </td>
</tr>
<tr>
<td colspan="10" style="background-color: rgb(255, 255, 0)">
<div style="text-align: left">备件清单</div>
</td>
</tr>
<tr v-for="(item, index) in formData.deliverOrderOtherSpareSubs" :key="index">
<td> {{ index+1 }} </td>
<td colspan="3">
<span>{{ item.name }}</span>
</td>
<td colspan="3">{{ item.blueprintNo}}</td>
<td> {{ item.amount }} </td>
<td colspan="2">{{ item.remark }} </td>
</tr>
<tr>
<td colspan="10" style="background-color: rgb(255, 255, 0)">
<div style="text-align: left">备件清单</div>
</td>
</tr>
<tr v-for="(item, index) in formData.deliverOrderOtherSpareSubs" :key="index">
<td> {{ index + 1 }} </td>
<td colspan="3">
<span>{{ item.name }}</span>
</td>
<td colspan="3">{{ item.blueprintNo }}</td>
<td> {{ item.amount }} </td>
<td colspan="2">{{ item.remark }} </td>
</tr>
<tr>
<td colspan="10" style="background-color: rgb(255, 255, 0)">
<div style="text-align: left">刀具清单</div>
</td>
</tr>
<tr v-for="(item, index) in formData.deliverOrderOtherCutterSubs" :key="index">
<td> {{ index+1 }} </td>
<td colspan="3">
<span>{{ item.name }}</span>
</td>
<td colspan="3">{{ item.blueprintNo}}</td>
<td> {{ item.amount }} </td>
<td colspan="2">{{ item.remark }} </td>
</tr>
<tr>
<td colspan="10" style="background-color: rgb(255, 255, 0)">
<div style="text-align: left">刀具清单</div>
</td>
</tr>
<tr v-for="(item, index) in formData.deliverOrderOtherCutterSubs" :key="index">
<td> {{ index + 1 }} </td>
<td colspan="3">
<span>{{ item.name }}</span>
</td>
<td colspan="3">{{ item.blueprintNo }}</td>
<td> {{ item.amount }} </td>
<td colspan="2">{{ item.remark }} </td>
</tr>
</tbody>
<tr>
<td colspan="10">
@ -334,12 +373,12 @@
</table>
<div
style="
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
"
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
"
>
<span>制单人{{ formData.creatorName }}</span>
<span>-回单联-</span>
@ -356,10 +395,10 @@
<script setup lang="ts">
// import { ref, reactive } from 'vue'
import { Check } from '@element-plus/icons-vue'
import {ref} from "vue";
import {getDictLabel, DICT_TYPE} from "@/utils/dict";
import {getDeliverOrder, getDeliverOrderSubListByDeliveryOrderId} from "@/api/heli/deliverorder";
import {formatDate} from "@/utils/formatTime";
import { ref } from 'vue'
import { getDictLabel, DICT_TYPE } from '@/utils/dict'
import { getDeliverOrder, getDeliverOrderSubListByDeliveryOrderId } from '@/api/heli/deliverorder'
import { formatDate } from '@/utils/formatTime'
const dialogVisible = ref(false) //
const onPrint = () => {
@ -501,27 +540,30 @@ const open = async (id: number) => {
formData.value.deliverCompany = '杭州合立机械有限公司'
//
let properties = formData.value.property.split(",")
let property = "";
let properties = formData.value.property.split(',')
let property = ''
for (let i = 0; i < properties.length; i++) {
property += getDictLabel(DICT_TYPE.HELI_PROJECT_PROPERTY, properties[i]) + ",";
property += getDictLabel(DICT_TYPE.HELI_PROJECT_PROPERTY, properties[i]) + ','
}
formData.value.property = property.substring(0, property.length-1);
formData.value.property = property.substring(0, property.length - 1)
//
const subArr = await getDeliverOrderSubListByDeliveryOrderId(id)
subTotalAmount.value = subArr.length
if(subTotalAmount.value > splitThreshold){
formData.value.deliverOrderSubs = subArr.filter(sub => sub.category == 'DELIVER_LIST');
if (subTotalAmount.value > splitThreshold) {
formData.value.deliverOrderSubs = subArr.filter((sub) => sub.category == 'DELIVER_LIST')
//
formData.value.deliverOrderOtherSpareSubs = subArr.filter(sub => (sub.category == 'OTHER_LIST' && sub.subType == 1 ));
formData.value.deliverOrderOtherCutterSubs = subArr.filter(sub => (sub.category == 'OTHER_LIST' && sub.subType == 2 ));
}else{
formData.value.deliverOrderOtherSpareSubs = subArr.filter(
(sub) => sub.category == 'OTHER_LIST' && sub.subType == 1
)
formData.value.deliverOrderOtherCutterSubs = subArr.filter(
(sub) => sub.category == 'OTHER_LIST' && sub.subType == 2
)
} else {
formData.value.deliverOrderSubs = subArr
}
} finally {
formLoading.value = false
}

Loading…
Cancel
Save