后道触摸屏添加标签重打,打零头箱标签功能
This commit is contained in:
@@ -164,3 +164,28 @@ export function GenerateVirtualLabel(query) {
|
||||
data: query,
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 打印特殊标签
|
||||
* @param {查询条件} data
|
||||
*/
|
||||
export function PrintSpecialPacakgeLabel(data, params) {
|
||||
return request({
|
||||
url: '/mes/qc/BackEnd/QcBackEndController/PrintSpecialPacakgeLabel',
|
||||
method: 'post',
|
||||
data: data,
|
||||
params: params,
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 打印特殊标签
|
||||
* @param {查询条件} data
|
||||
*/
|
||||
export function SearchWorkOrderLabelDetail(params) {
|
||||
return request({
|
||||
url: '/mes/qc/BackEnd/QcBackEndController/SearchWorkOrderLabelDetail',
|
||||
method: 'get',
|
||||
params: params,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -0,0 +1,266 @@
|
||||
<template>
|
||||
<div>
|
||||
<!-- 特殊标签打印 -->
|
||||
<el-dialog class="dialogBox" :visible.sync="show" title="特殊标签打印" width="60%" append-to-body :close-on-click-modal="false">
|
||||
<el-form label-width="auto" :inline="true">
|
||||
<div>
|
||||
<el-form-item label="工单号">
|
||||
<div class="number-text">{{ formData.workOrder }}</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="零件号">
|
||||
<div class="number-text">{{ formData.partNumber }}</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="描述">
|
||||
<div class="number-text">{{ formData.description }}</div>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div>
|
||||
<el-form-item label="已扫零件数">
|
||||
<div class="number-text">{{ printDetail.scannedPartCount }}</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="已扫箱数">
|
||||
<div class="number-text">{{ printDetail.scannedBoxLabelCount }}</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="补打数">
|
||||
<div class="number-text">{{ printDetail.rePrintCount }}</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="零头箱打印数">
|
||||
<div class="number-text">{{ printDetail.remainderBoxPrintCount }}</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="箱标签当前序号">
|
||||
<div class="number-text">{{ printDetail.currentBoxLabelSequence }}</div>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div>
|
||||
<el-form-item label="打印操作">
|
||||
<el-button type="warning" @click="submit(1)">补打箱标签</el-button>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div>
|
||||
<el-form-item label="零头产品数">
|
||||
<el-input-number :min="0" class="number-text" v-model="packageNum"></el-input-number>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div>
|
||||
<el-form-item label="快速操作">
|
||||
<el-button type="primary" icon="el-icon-minus" @click="openReduceDialog">减少</el-button>
|
||||
<el-button type="primary" icon="el-icon-plus" @click="openAddDialog">增加</el-button>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<el-form-item label="打印操作">
|
||||
<el-button type="danger" @click="submit(2)">打印零头箱</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="close">取消</el-button>
|
||||
<!-- <el-button :disabled="loading" type="primary" @click="submit">确认</el-button> -->
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 减少合格数对话框 -->
|
||||
<el-dialog :visible.sync="reduceDialogVisible" title="减少" width="300px" append-to-body>
|
||||
<el-form label-width="auto">
|
||||
<el-form-item label="减少数量">
|
||||
<el-input-number :min="1" :max="formData.qualifiedNumber" v-model="changeAmount" controls-position="right"></el-input-number>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="reduceDialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="confirmReduce">确定</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 增加合格数对话框 -->
|
||||
<el-dialog :visible.sync="addDialogVisible" title="增加" width="300px" append-to-body>
|
||||
<el-form label-width="auto">
|
||||
<el-form-item label="增加数量">
|
||||
<el-input-number :min="1" v-model="changeAmount" controls-position="right"></el-input-number>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="addDialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="confirmAdd">确定</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import * as QcBackEndApi from '@/api/qualityManagement/BackEnd/qcBackEndService'
|
||||
|
||||
export default {
|
||||
name: 'GenerateLabelDialog',
|
||||
data() {
|
||||
return {
|
||||
loading: false,
|
||||
show: false,
|
||||
|
||||
addDialogVisible: false,
|
||||
reduceDialogVisible: false,
|
||||
changeAmount: 1,
|
||||
|
||||
packageNum: 0,
|
||||
|
||||
formData: {
|
||||
workOrder: '',
|
||||
partNumber: '',
|
||||
specification: '',
|
||||
color: '',
|
||||
description: '',
|
||||
number: '',
|
||||
labelCode: '',
|
||||
siteNo: '',
|
||||
comNo: '',
|
||||
isOnetime: 0,
|
||||
isBack: 0,
|
||||
isPolish: 0,
|
||||
isOut: 0,
|
||||
polishNumber: 0,
|
||||
damoNumber: 0,
|
||||
baofeiNumber: 0,
|
||||
qualifiedNumber: 0,
|
||||
},
|
||||
// 打印参数
|
||||
printDetail: {
|
||||
// 已扫零件数
|
||||
scannedPartCount: 0,
|
||||
// 已扫箱标签数
|
||||
scannedBoxLabelCount: 0,
|
||||
// 补打数
|
||||
rePrintCount: 0,
|
||||
// 零头箱打印数
|
||||
remainderBoxPrintCount: 0,
|
||||
// 箱标签当前序号
|
||||
currentBoxLabelSequence: 0,
|
||||
},
|
||||
team: '',
|
||||
siteNo: '',
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
requireNumber() {
|
||||
return 1
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
openReduceDialog() {
|
||||
this.reduceDialogVisible = true
|
||||
this.changeAmount = 1
|
||||
},
|
||||
openAddDialog() {
|
||||
this.addDialogVisible = true
|
||||
this.changeAmount = 1
|
||||
},
|
||||
confirmReduce() {
|
||||
if (this.changeAmount > 0 && this.changeAmount <= this.packageNum) {
|
||||
this.packageNum -= this.changeAmount
|
||||
this.reduceDialogVisible = false
|
||||
} else {
|
||||
this.$message.error('请输入有效的减少数量')
|
||||
}
|
||||
},
|
||||
async getPrintInfo() {
|
||||
try {
|
||||
const params = {
|
||||
workOrder: this.formData.workOrder,
|
||||
}
|
||||
let res = await QcBackEndApi.SearchWorkOrderLabelDetail(params)
|
||||
if (res.code === 200) {
|
||||
this.printDetail = res.data
|
||||
}
|
||||
} catch (error) {}
|
||||
},
|
||||
confirmAdd() {
|
||||
if (this.changeAmount > 0) {
|
||||
this.packageNum += this.changeAmount
|
||||
this.addDialogVisible = false
|
||||
} else {
|
||||
this.$message.error('请输入有效的增加数量')
|
||||
}
|
||||
},
|
||||
async submit(specialPrintType = 1) {
|
||||
try {
|
||||
this.loading = true
|
||||
const params = {
|
||||
specialPrintType,
|
||||
packageNum: this.packageNum,
|
||||
}
|
||||
let res = await QcBackEndApi.PrintSpecialPacakgeLabel(this.formData, params)
|
||||
if (res.code === 200 && res.data === 'ok') {
|
||||
this.$message.success('打印成功')
|
||||
this.getPrintInfo()
|
||||
} else {
|
||||
this.$message.error('打印异常:' + res.data)
|
||||
}
|
||||
|
||||
//this.emitSuccess()
|
||||
//this.close()
|
||||
} catch (error) {
|
||||
this.$message.error('打印失败,请重试' + error)
|
||||
} finally {
|
||||
this.loading = false
|
||||
}
|
||||
},
|
||||
open(data) {
|
||||
this.show = true
|
||||
this.loading = false
|
||||
this.formData = { ...data.formData }
|
||||
this.team = data.team
|
||||
this.siteNo = data.siteNo
|
||||
this.getPrintInfo()
|
||||
},
|
||||
close() {
|
||||
this.show = false
|
||||
this.resetFormData()
|
||||
},
|
||||
resetFormData() {
|
||||
this.packageNum = 0
|
||||
this.changeAmount = 1
|
||||
this.formData = {
|
||||
workOrder: '',
|
||||
partNumber: '',
|
||||
specification: '',
|
||||
color: '',
|
||||
description: '',
|
||||
number: '',
|
||||
labelCode: '',
|
||||
siteNo: '',
|
||||
comNo: '',
|
||||
isOnetime: 0,
|
||||
isBack: 0,
|
||||
isPolish: 0,
|
||||
isOut: 0,
|
||||
polishNumber: 0,
|
||||
damoNumber: 0,
|
||||
baofeiNumber: 0,
|
||||
qualifiedNumber: 0,
|
||||
}
|
||||
this.printDetail = {
|
||||
scannedPartCount: 0,
|
||||
scannedBoxLabelCount: 0,
|
||||
rePrintCount: 0,
|
||||
remainderBoxPrintCount: 0,
|
||||
currentBoxLabelSequence: 0,
|
||||
}
|
||||
this.team = ''
|
||||
this.siteNo = ''
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.number-text {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.dialog-footer button {
|
||||
margin-left: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -16,6 +16,7 @@
|
||||
</div>
|
||||
<div>
|
||||
<el-button v-if="formStatus === 1" type="success" @click="doBtnStartWorkOrder">开启工单</el-button>
|
||||
<el-button v-if="formStatus != 1" @click="doSpecialPrintDialogOpen">打印</el-button>
|
||||
<el-button v-if="formStatus != 1" type="info" @click="doBtnGenerateLabel">修改合格数</el-button>
|
||||
<el-button v-if="formStatus != 1" type="warning" @click="doBtnEndWorkOrder">结束工单</el-button>
|
||||
</div>
|
||||
@@ -95,6 +96,7 @@
|
||||
<ScanPackageLabelDialog ref="ScanPackageLabelDialogRef" @changeFormStatus="changeFormStatus" @showWarningMessage="showErrorMessage" @submit="handleStartWorkOrder" />
|
||||
<EndWorkOrderDialog ref="EndWorkOrderDialogRef" @changeFormStatus="changeFormStatus" @endWorkOrder="handleEndWorkOrder" />
|
||||
<GenerateLabelDialog ref="GenerateLabelDialogRef" @generateLabelSuccess="handleGenerateLabelSuccess"></GenerateLabelDialog>
|
||||
<SpecialPrintDialog ref="SpecialPrintDialogRef" @SpecialPrintSuccess="handleGenerateLabelSuccess"></SpecialPrintDialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -102,11 +104,12 @@
|
||||
import StartWorkOrderDialog from './StartWorkOrderDialog.vue'
|
||||
import EndWorkOrderDialog from './EndWorkOrderDialog.vue'
|
||||
import GenerateLabelDialog from './GenerateLabelDialog.vue'
|
||||
import SpecialPrintDialog from './SpecialPrintDialog.vue'
|
||||
import ScanPackageLabelDialog from './ScanPackageLabelDialog.vue'
|
||||
import * as QcBackEndApi from '@/api/qualityManagement/BackEnd/qcBackEndService'
|
||||
export default {
|
||||
name: 'WorkOrderCard',
|
||||
components: { StartWorkOrderDialog, EndWorkOrderDialog, GenerateLabelDialog, ScanPackageLabelDialog },
|
||||
components: { StartWorkOrderDialog, EndWorkOrderDialog, GenerateLabelDialog, ScanPackageLabelDialog, SpecialPrintDialog },
|
||||
props: {
|
||||
message: String,
|
||||
messageClass: String,
|
||||
@@ -116,6 +119,7 @@ export default {
|
||||
StartWorkOrderDialogRef: null,
|
||||
EndWorkOrderDialogRef: null,
|
||||
ScanPackageLabelDialogRef: null,
|
||||
SpecialPrintDialogRef: null,
|
||||
sessionKey: '_touchScreenB02',
|
||||
|
||||
teamOptions: [],
|
||||
@@ -338,6 +342,14 @@ export default {
|
||||
}
|
||||
this.$refs.GenerateLabelDialogRef.open(data)
|
||||
},
|
||||
doSpecialPrintDialogOpen() {
|
||||
const data = {
|
||||
formData: this.formData,
|
||||
team: this.team,
|
||||
siteNo: this.site,
|
||||
}
|
||||
this.$refs.SpecialPrintDialogRef.open(data)
|
||||
},
|
||||
// 开始工单完成反馈
|
||||
handleStartWorkOrder(formData) {
|
||||
if (formData) {
|
||||
|
||||
Reference in New Issue
Block a user