<template>
|
<el-dialog
|
v-dialogDrag
|
:close-on-click-modal="false"
|
:visible.sync="editDialogVisible"
|
width="533px"
|
custom-class="add-event-dialog"
|
@close="handleClose"
|
>
|
<div class="dialog-content-box">
|
<el-form
|
:model="proForm"
|
:rules="rules"
|
ref="ruleForm"
|
label-width="60px"
|
label-position="right"
|
class="demo-ruleForm"
|
>
|
<el-row>
|
<el-col :span="11">
|
<el-form-item label="日期" prop="createTime">
|
<el-date-picker
|
type="date"
|
placeholder="年/月/日"
|
v-model="proForm.createTime"
|
size="small"
|
style="width: 100%"
|
></el-date-picker>
|
</el-form-item>
|
</el-col>
|
<el-col :span="9">
|
<el-form-item label="组别" prop="groupNumber">
|
<el-select
|
v-model="proForm.groupNumber"
|
placeholder="请先选择车间"
|
no-data-text="请先选择车间"
|
class="select-width"
|
@change="getGroupNumber"
|
>
|
<el-option
|
v-for="item in workshopGroupList"
|
:key="item"
|
:label="item"
|
:value="item"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="11">
|
<el-form-item label="车间" prop="workshopNumber">
|
<el-select
|
v-model="proForm.workshopNumber"
|
placeholder="请选择"
|
class="select-width"
|
@change="getGroupNumber"
|
>
|
<el-option
|
v-for="item in nameList"
|
:key="item.number"
|
:label="item.name"
|
:value="item.number"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="9">
|
<el-form-item label="规格" prop="spec">
|
<el-select
|
v-model="proForm.spec"
|
placeholder="请选择"
|
class="select-width"
|
>
|
<el-option
|
v-for="item in specList"
|
:key="item.ID"
|
:label="item.name"
|
:value="item.name"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="20">
|
<el-form-item label="庄口" prop="marketId">
|
<el-select
|
v-model="proForm.marketId"
|
placeholder="请选择庄口"
|
size="small"
|
style="width: 100%"
|
>
|
<el-option
|
v-for="item in marketList"
|
:key="item.ID"
|
:label="item.name"
|
:value="item.ID"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="4">
|
<el-form-item label="" label-width="20px">
|
<el-button type="primary" @click='changeForm(true)' size="small">切换</el-button>
|
</el-form-item>
|
</el-col>
|
<el-col :span="20">
|
<el-form-item prop="tareWeight" label-width="80px">
|
<span slot="label">
|
<span class="formLabel">皮重</span>
|
</span>
|
<el-input v-model="proForm.tareWeight" size="small"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="20">
|
<el-form-item prop="netWeight" label-width="80px">
|
<span slot="label">
|
<span class="formLabel">净重</span>
|
</span>
|
<el-input v-model="proForm.netWeight" @blur="changeTableInput" @keypress.enter.native="changeTableInput" size="small"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="20">
|
<el-form-item prop="carNumber" label-width="80px">
|
<span slot="label">
|
<span class="formLabel">车号</span>
|
</span>
|
<el-input v-model="proForm.carNumber" @blur="changeTableInput" size="small"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="20">
|
<el-form-item prop="pieceNumber" label-width="80px">
|
<span slot="label">
|
<span class="formLabel">回数</span>
|
</span>
|
<el-input v-model.number="proForm.pieceNumber" @blur="changeTableInput" size="small"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="20">
|
<el-form-item prop="pieces" label-width="80px">
|
<span slot="label">
|
<span class="formLabel">片数</span>
|
</span>
|
<el-input v-model.number="proForm.pieces" @blur="changeTableInput" size="small"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</el-form>
|
</div>
|
<!-- <div slot="footer" class="dialog-footer"> -->
|
<!-- <el-button @click="handleClose" size="mini">取消</el-button>
|
<el-button type="primary" @click="onSubmit('form')" size="mini">确定</el-button> -->
|
<!-- </div> -->
|
</el-dialog>
|
</template>
|
<script>
|
import {
|
getWorkshopManageGroup,
|
changeYieldRegister,
|
} from "@/api/productManage/productRegisterForm.js";
|
export default {
|
props: {
|
nameList: {
|
type: Array,
|
default: () => {
|
return [];
|
},
|
},
|
marketList: {
|
type: Array,
|
default: () => {
|
return [];
|
},
|
},
|
specList: {
|
type: Array,
|
default: () => {
|
return [];
|
},
|
},
|
form: {
|
type: Object,
|
default: () => {
|
return {};
|
},
|
},
|
},
|
components: {},
|
data() {
|
return {
|
editDialogVisible: false,
|
workshopGroupList:[],
|
proForm: {
|
createTime: "",
|
groupNumber: "",
|
workshopNumber: "",
|
spec: "",
|
marketId: "",
|
tareWeight: "",
|
netWeight: "",
|
carNumber: "",
|
pieceNumber: "",
|
pieces: "",
|
},
|
rules: {
|
createTime: [
|
{ required: true, message: "请选择生产日期", trigger: ["change", "blur"] },
|
],
|
marketId: [
|
{ required: true, message: "请选择", trigger: ["change", "blur"] },
|
],
|
workshopNumber: [
|
{ required: true, message: "请选择", trigger: ["change", "blur"] },
|
],
|
groupNumber: [
|
{ required: true, message: "请选择", trigger: ["change", "blur"] },
|
],
|
spec: [
|
{ required: true, message: "请选择", trigger: ["change", "blur"] },
|
],
|
},
|
};
|
},
|
created() {
|
},
|
watch:{
|
"editDialogVisible": {
|
handler() {
|
this.getInfo()
|
},
|
deep: true,
|
immediate:true,
|
},
|
'form.workshopNumber': function () {
|
this.getGroupNumber()
|
}
|
},
|
methods: {
|
getInfo(){
|
this.proForm.createTime=this.form.createTime
|
this.proForm.groupNumber=this.form.groupNumber
|
this.proForm.workshopNumber=this.form.workshopNumber
|
this.proForm.spec=this.form.spec
|
this.proForm.marketId=this.form.marketId
|
if(!this.proForm.carNumber){
|
this.proForm.carNumber=this.form.carNumber
|
}
|
this.$forceUpdate();
|
},
|
getGroupNumber(){
|
if(this.proForm.workshopNumber){
|
//组别
|
getWorkshopManageGroup({number:this.proForm.workshopNumber}).then((res) => {
|
if (res.code == 200) {
|
this.workshopGroupList=[]
|
let workshopGroupList = res.data || {};
|
this.workshopGroupList=[]
|
//this.ruleForm.groupNumber=''
|
if(Object.keys(workshopGroupList).length>0){
|
for(let i in workshopGroupList){
|
this.workshopGroupList.push(workshopGroupList[i])
|
}
|
}
|
}
|
});
|
}else{
|
this.workshopGroupList =[]
|
}
|
},
|
changeForm(val){
|
if(this.editDialogVisible&&this.proForm.createTime&&this.proForm.groupNumber&&this.proForm.marketId&&this.proForm.spec&&this.proForm.workshopNumber){
|
changeYieldRegister({
|
createTime: this.proForm.createTime,
|
groupNumber: this.proForm.groupNumber,
|
marketId: this.proForm.marketId,
|
spec: this.proForm.spec,
|
workshopNumber: this.proForm.workshopNumber,
|
}).then((res) => {
|
if (res.code == 200) {
|
if(res.data){
|
if(Object.keys(res.data).length>0){
|
this.$emit('changeForm',this.proForm,val,res.data)
|
}
|
}
|
}
|
});
|
}else{
|
this.$emit('changeForm',this.proForm,val,{})
|
}
|
},
|
changeTableInput(){
|
if(this.proForm.pieces&&this.proForm.carNumber&&this.proForm.pieceNumber){
|
this.$emit('changeTableInput',this.proForm)
|
}
|
},
|
handleClose() {
|
this.editDialogVisible = false;
|
},
|
// 确定
|
onSubmit(form) {
|
console.log(form);
|
},
|
},
|
};
|
</script>
|
<style lang="scss" scoped>
|
|
.add-event-dialog {
|
.formLabel {
|
font-size: 18px;
|
// font-weight: 600;
|
color: #333;
|
}
|
.dialog-footer {
|
background-color: #fff;
|
}
|
.dialog-content-box{
|
margin-top:30px;
|
}
|
}
|
::v-deep {
|
.el-dialog__header {
|
border-bottom: 0px solid #e5e5e5;
|
}
|
.el-dialog__body {
|
padding: 0px 20px 10px;
|
}
|
.el-form-item__label {
|
font-size: 16px;
|
color: #333;
|
// font-weight: 700;
|
}
|
.add-event-dialog.el-dialog {
|
position: absolute;
|
right: 40px;
|
top: 40px;
|
}
|
}
|
</style>
|
<style>
|
/* .add-event-dialog.el-dialog {
|
position: absolute;
|
right: 40px;
|
top: 40px;
|
} */
|
/* .add-event-dialog .el-dialog__header {
|
display: none;
|
} */
|
</style>
|