中航光电热表web
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

120 lines
3.8 KiB

8 months ago
<template>
7 months ago
<el-dialog
title="新增任务"
append-to-body
:modelValue="openShow"
width="40%"
@close="closeDialog"
>
<el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" label-width="auto">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="零件号:" prop="partId">
<el-select v-model="ruleForm.partId" placeholder="请输入" @change="partChange">
<el-option v-for="(item,index) in getPartOptions" :key="index" :label="item.partName" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="任务类型:" prop="taskType"> 维护任务 </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="工艺版本号:" prop="version">
<el-select v-model="ruleForm.version" placeholder="请输入">
<el-option v-for="(item,index) in versionOptions" :key="index" :label="item.partVersions" :value="item.partVersions" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="工艺员:" prop="craftMan">
<el-select v-model="ruleForm.craftMan" placeholder="请输入">
<el-option v-for="(item,index) in craftManOptions" :key="index" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注:" prop="remarks">
<el-input v-model="ruleForm.remarks" :rows="3" type="textarea" placeholder="请输入" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<span class="dialog-footer">
<el-button @click="closeDialog"> </el-button>
<el-button type="primary" @click="submit"> </el-button>
</span>
</template>
</el-dialog>
8 months ago
</template>
<script>
7 months ago
import { getPartList,getVersion,getUserList,saveTask } from '@/api/processManagement/taskProcessing';
8 months ago
export default {
7 months ago
props: {
showDialog: {
type: Boolean,
default: false,
8 months ago
},
7 months ago
},
data() {
return {
partList: [],
openShow: false,
ruleForm: {
partId: null,
taskType:'6'
},
rules: {
partId: [{ required: true, message: '请选择', trigger: 'blur' }],
version: [{ required: true, message: '请选择', trigger: 'blur' }],
craftMan: [{ required: true, message: '请选择', trigger: 'blur' }],
},
getPartOptions: [],//零件号
versionOptions: [],//版本号
craftManOptions: [],//工艺员
};
},
mounted() {
this.openShow = this.showDialog;
this.getPartList();
this.getUserList();
},
methods: {
getPartList() {
getPartList().then(response => {
this.getPartOptions = response.data.data;
});
},
partChange(){
getVersion({partId:this.ruleForm.partId}).then(res=>{
this.versionOptions = res.data.data;
})
8 months ago
},
7 months ago
getUserList(){
getUserList(1,999999).then(res=>{
this.craftManOptions = res.data.data.records;
})
8 months ago
},
7 months ago
submit() {
this.$refs.ruleFormRef.validate(valid => {
if (valid) {
// 获取零件code
let part = this.getPartOptions.find(item=>item.id === this.ruleForm.partId);
console.log(8888,part);
// this.ruleForm.partCode = part.partCode;
saveTask({...this.ruleForm,partCode: part.partCode,partName: part.partName}).then(res=>{
this.$message.success('新增成功');
this.closeDialog();
})
8 months ago
}
7 months ago
});
},
closeDialog() {
this.openShow = false;
this.$emit('closeDialog');
},
},
};
8 months ago
</script>
7 months ago
<style lang="scss" scoped></style>