264 lines
7.2 KiB
Vue
264 lines
7.2 KiB
Vue
|
|
<template>
|
||
|
|
<view>
|
||
|
|
<uni-forms ref="form" :model="formData" :rules="rules">
|
||
|
|
<uni-row>
|
||
|
|
<uni-forms-item label="模具编码" :labelWidth='90' name="mouldUuid">
|
||
|
|
<uni-easyinput suffixIcon="scan" @iconClick="scanBarMouldUuid" v-model="formData.mouldUuid"
|
||
|
|
type="text" @confirm="confirmMouldUuid" />
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item label="模具名称" :labelWidth='90' name="mouldName">
|
||
|
|
{{formData.mouldName}}
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item label="设备编码" :labelWidth='90' name="equipmentCode">
|
||
|
|
<uni-easyinput suffixIcon="scan" @iconClick="scanBarEquipmentCode" @confirm="confirmEquipmentCode"
|
||
|
|
v-model="formData.equipmentCode" type="text" />
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item label="设备名称" :labelWidth='90' name="equipmentTitle">
|
||
|
|
{{formData.equipmentTitle}}
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item label="库位" :labelWidth='90' name="storageLocationBarcode">
|
||
|
|
<uni-easyinput suffixIcon="scan" @iconClick="scanBarStorageLocationBarcode"
|
||
|
|
v-model="formData.storageLocationBarcode" type="text" />
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item label="拆卸员" :labelWidth='90' name="removeBy">
|
||
|
|
<uni-easyinput suffixIcon="scan" @iconClick="scanBarRemoveBy" @confirm="confirmRemoveBy"
|
||
|
|
v-model="formData.removeBy" type="text" style="margin-bottom: 10px;" />
|
||
|
|
<uni-data-select v-model="formData.removeBy" :localdata="empList" />
|
||
|
|
</uni-forms-item>
|
||
|
|
<!-- <uni-forms-item label="操作员" :labelWidth='90' name="operator">
|
||
|
|
<uni-easyinput suffixIcon="scan" @iconClick="scanBarOperator" @confirm="confirmOperator"
|
||
|
|
v-model="formData.operator" type="text" style="margin-bottom: 10px;" />
|
||
|
|
<uni-data-select v-model="formData.operator" :localdata="empList" />
|
||
|
|
</uni-forms-item> -->
|
||
|
|
</uni-row>
|
||
|
|
</uni-forms>
|
||
|
|
<u-button type="primary" @click="submit">提交</u-button>
|
||
|
|
</view>
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
import {
|
||
|
|
listUseRecord,
|
||
|
|
getUseRecord,
|
||
|
|
delUseRecord,
|
||
|
|
addUseRecord,
|
||
|
|
updateUseRecord,
|
||
|
|
bindMould,
|
||
|
|
unbindMould,
|
||
|
|
startRemove,
|
||
|
|
listUseRecordAvailable
|
||
|
|
} from "@/api/tpmMould/useRecord";
|
||
|
|
import {
|
||
|
|
listMould,
|
||
|
|
updateMould
|
||
|
|
} from "@/api/tpmMould/mould";
|
||
|
|
import {
|
||
|
|
listEquipment
|
||
|
|
} from "@/api/mes/jobReport";
|
||
|
|
import {
|
||
|
|
listEmployee
|
||
|
|
} from "@/api/mes/jobIn";
|
||
|
|
|
||
|
|
export default {
|
||
|
|
data() {
|
||
|
|
return {
|
||
|
|
formData: {
|
||
|
|
mouldUuid: null,
|
||
|
|
mouldName: null,
|
||
|
|
equipmentCode: null,
|
||
|
|
equipmentTitle: null,
|
||
|
|
storageLocationBarcode: null,
|
||
|
|
removeBy: null,
|
||
|
|
operator: null
|
||
|
|
},
|
||
|
|
empList: [],
|
||
|
|
rules: {
|
||
|
|
equipmentCode: {
|
||
|
|
rules: [{
|
||
|
|
required: true,
|
||
|
|
errorMessage: '请输入设备编码!',
|
||
|
|
trigger: 'blur'
|
||
|
|
},
|
||
|
|
{
|
||
|
|
pattern: '^[A-Z0-9]+$',
|
||
|
|
errorMessage: '请输入正确格式的设备编码!',
|
||
|
|
trigger: 'blur',
|
||
|
|
},
|
||
|
|
]
|
||
|
|
},
|
||
|
|
mouldUuid: {
|
||
|
|
rules: [{
|
||
|
|
required: true,
|
||
|
|
errorMessage: '请输入模具编码!'
|
||
|
|
}]
|
||
|
|
},
|
||
|
|
removeBy: {
|
||
|
|
rules: [{
|
||
|
|
required: true,
|
||
|
|
errorMessage: '请输入拆卸员!'
|
||
|
|
}]
|
||
|
|
},
|
||
|
|
}
|
||
|
|
}
|
||
|
|
},
|
||
|
|
mounted() {
|
||
|
|
listEmployee().then((res) => {
|
||
|
|
this.empList = res.rows.map(item => {
|
||
|
|
return {
|
||
|
|
text: item.empCode + ':' + item.name,
|
||
|
|
value: item.empCode,
|
||
|
|
diasble: false
|
||
|
|
}
|
||
|
|
});
|
||
|
|
})
|
||
|
|
},
|
||
|
|
methods: {
|
||
|
|
//扫描模具编码带出模具信息
|
||
|
|
confirmMouldUuid() {
|
||
|
|
if (this.formData.mouldUuid) {
|
||
|
|
listMould({
|
||
|
|
mouldUuid: this.formData.mouldUuid
|
||
|
|
}).then(res => {
|
||
|
|
if (res.rows.length > 0) {
|
||
|
|
const data =res.rows[0];
|
||
|
|
const mouldId = data.id;
|
||
|
|
const {mouldUuid ,mouldName,storageLocationBarcode} = data
|
||
|
|
this.formData = Object.assign(this.formData,{
|
||
|
|
mouldId,mouldUuid ,mouldName,storageLocationBarcode
|
||
|
|
})
|
||
|
|
} else {
|
||
|
|
this.$modal.msg("未查询到该模具,请重新输入!")
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
},
|
||
|
|
//扫描设备编码带出设备信息
|
||
|
|
confirmEquipmentCode() {
|
||
|
|
if (this.formData.equipmentCode) {
|
||
|
|
listUseRecordAvailable({
|
||
|
|
equipmentCode: this.formData.equipmentCode,
|
||
|
|
searchType: '3'
|
||
|
|
}).then(res => {
|
||
|
|
if (res.rows.length > 0) {
|
||
|
|
const data = res.rows[0];
|
||
|
|
data.mouldName = data.mouldUuid = null
|
||
|
|
const {mouldId,mouldUuid ,mouldName,storageLocationBarcode} = this.formData
|
||
|
|
this.formData = Object.assign(data,{
|
||
|
|
mouldId,mouldUuid ,mouldName,storageLocationBarcode
|
||
|
|
})
|
||
|
|
// this.formData = Object.assign(this.formData,{
|
||
|
|
// equipmentCode:res.rows[0].equipmentCode,
|
||
|
|
// equipmentTitle:res.rows[0].equipmentTitle,
|
||
|
|
// id : res.rows[0].id
|
||
|
|
// })
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
},
|
||
|
|
scanBarMouldUuid() {
|
||
|
|
const _this = this;
|
||
|
|
uni.scanCode({
|
||
|
|
scanType: ['qrCode', 'barCode'],
|
||
|
|
success: function(res) {
|
||
|
|
_this.formData.mouldUuid = res.result;
|
||
|
|
_this.confirmMouldUuid()
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
scanBarEquipmentCode() {
|
||
|
|
const _this = this;
|
||
|
|
uni.scanCode({
|
||
|
|
scanType: ['qrCode', 'barCode'],
|
||
|
|
success: function(res) {
|
||
|
|
_this.formData.equipmentCode = res.result;
|
||
|
|
_this.confirmEquipmentCode()
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
scanBarRemoveBy() {
|
||
|
|
const _this = this;
|
||
|
|
uni.scanCode({
|
||
|
|
scanType: ['qrCode', 'barCode'],
|
||
|
|
success: function(res) {
|
||
|
|
_this.formData.removeBy = res.result;
|
||
|
|
_this.confirmRemoveBy()
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
scanBarOperator() {
|
||
|
|
const _this = this;
|
||
|
|
uni.scanCode({
|
||
|
|
scanType: ['qrCode', 'barCode'],
|
||
|
|
success: function(res) {
|
||
|
|
_this.formData.operator = res.result;
|
||
|
|
_this.confirmOperator()
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
scanBarStorageLocationBarcode() {
|
||
|
|
const _this = this;
|
||
|
|
uni.scanCode({
|
||
|
|
scanType: ['qrCode', 'barCode'],
|
||
|
|
success: function(res) {
|
||
|
|
_this.formData.storageLocationBarcode = res.result;
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
confirmOperator() {
|
||
|
|
listEmployee({
|
||
|
|
empCode: this.formData.operator
|
||
|
|
}).then(async res => {
|
||
|
|
if (res.rows.length == 0) {
|
||
|
|
this.$modal.msg("未查询到该人员,请重新输入!")
|
||
|
|
this.formData.operator = null;
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
confirmRemoveBy() {
|
||
|
|
listEmployee({
|
||
|
|
empCode: this.formData.removeBy
|
||
|
|
}).then(async res => {
|
||
|
|
if (res.rows.length == 0) {
|
||
|
|
this.$modal.msg("未查询到该人员,请重新输入!")
|
||
|
|
this.formData.removeBy = null;
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
submit() {
|
||
|
|
this.$refs.form.validate().then(async res => {
|
||
|
|
console.log(this.formData)
|
||
|
|
if (this.formData.id) {
|
||
|
|
if (this.formData.removeBy == "") this.formData.removeBy = null;
|
||
|
|
if (this.formData.operator == "") this.formData.operator = null;
|
||
|
|
this.$modal.loading('提交中')
|
||
|
|
startRemove(this.formData).then(res => {
|
||
|
|
this.$modal.closeLoading();
|
||
|
|
this.$modal.msgSuccess("模具下机成功!")
|
||
|
|
updateMould({
|
||
|
|
id: this.formData.mouldId,
|
||
|
|
storageLocationBarcode: this.formData.storageLocationBarcode
|
||
|
|
}).then(res => {
|
||
|
|
setTimeout(() => {
|
||
|
|
this.$tab.switchTab("/pages/work/index");
|
||
|
|
}, 500);
|
||
|
|
})
|
||
|
|
})
|
||
|
|
} else {
|
||
|
|
this.$modal.msg("未查询到可下模开始的记录,请重新输入!")
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<style lang="scss" scoped>
|
||
|
|
page{
|
||
|
|
background-color: #ffffff;
|
||
|
|
padding-top: 1vw;
|
||
|
|
}
|
||
|
|
view{
|
||
|
|
width: 98vw;
|
||
|
|
margin: 0 auto;
|
||
|
|
}
|
||
|
|
</style>
|