|
|
|
|
@ -1,39 +1,51 @@ |
|
|
|
|
<template> |
|
|
|
|
<el-dialog v-drag v-loading="loading" title="打印预览" :modelValue="showPrint" :before-close="cancel" :def-width="1200" top="0" fullscreen > |
|
|
|
|
<el-dialog |
|
|
|
|
v-drag |
|
|
|
|
v-loading="loading" |
|
|
|
|
title="打印预览" |
|
|
|
|
:modelValue="showPrint" |
|
|
|
|
:before-close="cancel" |
|
|
|
|
:def-width="1200" |
|
|
|
|
top="0" |
|
|
|
|
fullscreen |
|
|
|
|
> |
|
|
|
|
<el-button v-print="printObj" type="primary" class="printButton">打印</el-button> |
|
|
|
|
<div v-if="showPrint" id="printMe" ref="printContent" class="printBox"> |
|
|
|
|
<template v-for="(item, index) in tablist"> |
|
|
|
|
|
|
|
|
|
<table v-if="item.hrType == 1" border="0" class="table_box" style="width:100%"> |
|
|
|
|
<table v-if="item.hrType == 1" border="0" class="table_box" style="width: 100%"> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td style="border:0;font-size:20px"> |
|
|
|
|
<div class="tableTitleBarcodeCenter" style="transform: translate(-50%);">转工交接单</div> |
|
|
|
|
<td style="border: 0; font-size: 20px"> |
|
|
|
|
<div class="tableTitleBarcodeCenter" style="transform: translate(-50%)"> |
|
|
|
|
转工交接单 |
|
|
|
|
</div> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td style="border:0;font-size:20px;"> |
|
|
|
|
<div class="tableTitleBarcode tableTitleBarcodeCenter" style="height:20px"> |
|
|
|
|
<vue-barcode :value="item.hrCode" format="CODE128" class="barCode" width="2" height="36" /> |
|
|
|
|
<td style="border: 0; font-size: 20px"> |
|
|
|
|
<div class="tableTitleBarcode tableTitleBarcodeCenter" style="height: 20px"> |
|
|
|
|
<svg |
|
|
|
|
v-if="item.hrCode" |
|
|
|
|
:ref="`barcode-${index}-${item.hrType}`" |
|
|
|
|
class="barCode" |
|
|
|
|
></svg> |
|
|
|
|
</div> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
|
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="10" style="border:0;font-size:12px;padding-bottom:30px"> |
|
|
|
|
<td colspan="10" style="border: 0; font-size: 12px; padding-bottom: 30px"> |
|
|
|
|
<div class="tableTitle"> |
|
|
|
|
<div style="z-index:9999">车间订单:{{ item.woCode }}</div> |
|
|
|
|
<div style="z-index: 9999">车间订单:{{ item.woCode }}</div> |
|
|
|
|
</div> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td>委托车间</td> |
|
|
|
|
<td>{{ item.entrustDept }}</td> |
|
|
|
|
|
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td>承制车间</td> |
|
|
|
|
<td>4A</td> |
|
|
|
|
|
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td rowspan="2" colspan="3">工作订单</td> |
|
|
|
|
@ -55,9 +67,9 @@ |
|
|
|
|
<td colspan="2">{{ item.partCode }}</td> |
|
|
|
|
<td>{{ item.prodIdent }}</td> |
|
|
|
|
<td>{{ item.makeQty }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>{{ item.handoverQty }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td rowspan="2">废品数</td> |
|
|
|
|
@ -66,7 +78,7 @@ |
|
|
|
|
<td colspan="2">定额</td> |
|
|
|
|
<td colspan="2">金额</td> |
|
|
|
|
<td colspan="3" rowspan="2">转工人:{{ item.createMan }}</td> |
|
|
|
|
<td colspan="2" rowspan="3">收件人:{{ }}</td> |
|
|
|
|
<td colspan="2" rowspan="3">收件人:{{}}</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td>单件</td> |
|
|
|
|
@ -78,36 +90,46 @@ |
|
|
|
|
<td>{{ item.scrapQty }}</td> |
|
|
|
|
<td>{{ item.testQty }}</td> |
|
|
|
|
<td>{{ item.useQty }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td colspan="3">时间:{{ item.tableDate }}</td> |
|
|
|
|
</tr> |
|
|
|
|
|
|
|
|
|
</table> |
|
|
|
|
<table v-if="item.hrType == 0" border="0" class="table_box" style="width:100%"> |
|
|
|
|
<table v-if="item.hrType == 0" border="0" class="table_box" style="width: 100%"> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="16" style="border:0;font-size:20px"> |
|
|
|
|
<div class="tableTitleBarcode" style="height:50px"> |
|
|
|
|
<vue-barcode :value="item.hrCode" format="CODE128" class="barCode" width="3" height="36" /> |
|
|
|
|
<td colspan="16" style="border: 0; font-size: 20px"> |
|
|
|
|
<div class="tableTitleBarcode" style="height: 50px"> |
|
|
|
|
<svg |
|
|
|
|
v-if="item.hrCode" |
|
|
|
|
:ref="`barcode-${index}-${item.hrType}`" |
|
|
|
|
class="barCode" |
|
|
|
|
></svg> |
|
|
|
|
<!-- <vue-barcode |
|
|
|
|
:value="item.hrCode" |
|
|
|
|
format="CODE128" |
|
|
|
|
class="barCode" |
|
|
|
|
width="3" |
|
|
|
|
height="36" |
|
|
|
|
/> --> |
|
|
|
|
</div> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="16" style="border:0;font-size:20px;padding-top:30px"> |
|
|
|
|
<td colspan="16" style="border: 0; font-size: 20px; padding-top: 30px"> |
|
|
|
|
<div>热表分厂零部件入库支出卡</div> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist" style="border:0"> |
|
|
|
|
<td colspan="16" style="border:0"> |
|
|
|
|
<div style="width:100%;border:1px #000 solid" /> |
|
|
|
|
<tr class="tr_fist" style="border: 0"> |
|
|
|
|
<td colspan="16" style="border: 0"> |
|
|
|
|
<div style="width: 100%; border: 1px #000 solid" /> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="16" style="border:0;font-size:12px"> |
|
|
|
|
<td colspan="16" style="border: 0; font-size: 12px"> |
|
|
|
|
<div class="tableTitle"> |
|
|
|
|
<div style="z-index:9999">工作订单:{{ item.poCode }}</div> |
|
|
|
|
<div style="z-index: 9999">工作订单:{{ item.poCode }}</div> |
|
|
|
|
<div>车间订单:{{ item.woCode }}</div> |
|
|
|
|
<div>入库单号:{{ item.hrCode }}</div> |
|
|
|
|
<div>计划部门:{{ item.useDept }}</div> |
|
|
|
|
@ -139,9 +161,9 @@ |
|
|
|
|
<td>{{ item.oldCode }}</td> |
|
|
|
|
<td>{{ item.makeQty }}</td> |
|
|
|
|
<td>{{ item.weight }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="2">批次号</td> |
|
|
|
|
@ -149,17 +171,15 @@ |
|
|
|
|
<td colspan="2">提交数量</td> |
|
|
|
|
<td>{{ item.handoverQty }}</td> |
|
|
|
|
<td colspan="2">实收数量</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td>实收重量</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
<td>{{}}</td> |
|
|
|
|
<td colspan="2">收件人</td> |
|
|
|
|
<td>{{ }}</td> |
|
|
|
|
|
|
|
|
|
<td>{{}}</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="2">相似物料号</td> |
|
|
|
|
<td colspan="12">{{ }}</td> |
|
|
|
|
|
|
|
|
|
<td colspan="12">{{}}</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td>序号</td> |
|
|
|
|
@ -178,14 +198,14 @@ |
|
|
|
|
<td>库存数</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr v-for="(item, index) in 8" class="textTd" style="page-break-inside: avoid"> |
|
|
|
|
<td>{{ index+1 }}</td> |
|
|
|
|
<td>{{ index + 1 }}</td> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
<td>{{ (index+1)*2 }}</td> |
|
|
|
|
<td>{{ (index + 1) * 2 }}</td> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
<td /> |
|
|
|
|
@ -194,11 +214,11 @@ |
|
|
|
|
<td /> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="16" style="border:0;font-size:12px"> |
|
|
|
|
<td colspan="16" style="border: 0; font-size: 12px"> |
|
|
|
|
<div class="tableTitle"> |
|
|
|
|
<div>保管员:{{ item.custodian }}</div> |
|
|
|
|
<div>库房号:{{ }}</div> |
|
|
|
|
<div>库位号:{{ }}</div> |
|
|
|
|
<div>库房号:{{}}</div> |
|
|
|
|
<div>库位号:{{}}</div> |
|
|
|
|
<div>车间提交人:{{ item.createMan }}</div> |
|
|
|
|
<div>计划员:{{ item.planUser }}</div> |
|
|
|
|
<div /> |
|
|
|
|
@ -206,43 +226,52 @@ |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr class="tr_fist"> |
|
|
|
|
<td colspan="16" style="border:0;font-size:12px"> |
|
|
|
|
<td colspan="16" style="border: 0; font-size: 12px"> |
|
|
|
|
<div class="tableTitle"> |
|
|
|
|
<div style="z-index:9999">审理单号:{{ }}</div> |
|
|
|
|
<div>备注:{{ }}</div> |
|
|
|
|
<div style="z-index: 9999">审理单号:{{}}</div> |
|
|
|
|
<div>备注:{{}}</div> |
|
|
|
|
<div>使用部门:{{ item.recDept }}</div> |
|
|
|
|
<div>制表日期:{{ item.tableDate }}</div> |
|
|
|
|
<div /> |
|
|
|
|
</div> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
|
|
|
|
|
</table> |
|
|
|
|
<table> |
|
|
|
|
<tr v-for="i in 3" class="tr_fist"> |
|
|
|
|
<td colspan="16" style="border:0;font-size:12px"> |
|
|
|
|
<td colspan="16" style="border: 0; font-size: 12px"> |
|
|
|
|
<div class="tableTitle" /> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
</table> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
</el-dialog> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<script> |
|
|
|
|
import { handoverRecordPrint } from '@/api/productionManagement/beforeAndAfterPlating'; |
|
|
|
|
// import VueBarcode from 'vue-barcode'; |
|
|
|
|
import JsBarcode from 'jsbarcode'; |
|
|
|
|
|
|
|
|
|
export default { |
|
|
|
|
name: 'Print', |
|
|
|
|
components: { |
|
|
|
|
// 'vue-barcode': VueBarcode |
|
|
|
|
}, |
|
|
|
|
props: { |
|
|
|
|
showPrint: { |
|
|
|
|
type: Boolean, |
|
|
|
|
default: false |
|
|
|
|
default: false, |
|
|
|
|
}, |
|
|
|
|
idList: { |
|
|
|
|
type: Array, |
|
|
|
|
default: () => [] |
|
|
|
|
} |
|
|
|
|
default: () => [], |
|
|
|
|
}, |
|
|
|
|
rowData: { |
|
|
|
|
type: Array, |
|
|
|
|
default: () => [], |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
@ -252,34 +281,67 @@ export default { |
|
|
|
|
id: 'printMe', |
|
|
|
|
popTitle: '打印66', |
|
|
|
|
ignoreClass: 'noprint', |
|
|
|
|
endCallback: (e) => { |
|
|
|
|
endCallback: e => { |
|
|
|
|
console.log(e, 5555); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
watch: {}, |
|
|
|
|
watch: { |
|
|
|
|
// 监听 tablist 变化,数据加载完成后生成条形码 |
|
|
|
|
tablist: { |
|
|
|
|
handler() { |
|
|
|
|
if (this.tablist.length > 0) { |
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
this.generateBarcodes(); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
deep: true, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
created() {}, |
|
|
|
|
mounted() { |
|
|
|
|
this.open(); |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
generateBarcodes() { |
|
|
|
|
this.tablist.forEach((item, index) => { |
|
|
|
|
const refName = `barcode-${index}-${item.hrType}`; |
|
|
|
|
const el = this.$refs[refName]; |
|
|
|
|
if (el && el[0] && item.hrCode) { |
|
|
|
|
JsBarcode(el[0], item.hrCode, { |
|
|
|
|
format: 'CODE128', |
|
|
|
|
width: 2, |
|
|
|
|
height: 36, |
|
|
|
|
displayValue: false, |
|
|
|
|
margin: 0, |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
open() { |
|
|
|
|
this.loading = true; |
|
|
|
|
this.$ajax |
|
|
|
|
.post('prHandoverRecord/newPrint', { |
|
|
|
|
list: this.idList |
|
|
|
|
}) |
|
|
|
|
.then((res) => { |
|
|
|
|
if (this.$ifAjax(res)) { |
|
|
|
|
this.tablist = res.data; |
|
|
|
|
} |
|
|
|
|
this.loading = false; |
|
|
|
|
handoverRecordPrint({ hrIds: this.rowData.join(',') }).then(res => { |
|
|
|
|
this.tablist = res.data.data; |
|
|
|
|
}); |
|
|
|
|
// this.$ajax |
|
|
|
|
// .post('prHandoverRecord/newPrint', { |
|
|
|
|
// list: this.idList |
|
|
|
|
// }) |
|
|
|
|
// .then((res) => { |
|
|
|
|
// if (this.$ifAjax(res)) { |
|
|
|
|
// this.tablist = res.data; |
|
|
|
|
// } |
|
|
|
|
// this.loading = false; |
|
|
|
|
// }); |
|
|
|
|
}, |
|
|
|
|
cancel() { |
|
|
|
|
this.tablist = []; |
|
|
|
|
this.$emit('cancel'); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
</script> |
|
|
|
|
<style scoped lang="scss"> |
|
|
|
|
|