fix:物料添加时增加排序

This commit is contained in:
shijing 2024-04-29 15:32:02 +08:00
parent 25e2a1e9d6
commit 63737587e1
1 changed files with 229 additions and 172 deletions

View File

@ -1,174 +1,231 @@
<template> <template>
<el-dialog <el-dialog
:title="titleMap[mode]" :title="titleMap[mode]"
v-model="visible" v-model="visible"
:size="1000" :size="1000"
destroy-on-close destroy-on-close
@closed="$emit('closed')" @closed="$emit('closed')"
> >
<el-container v-loading="loading"> <el-container v-loading="loading">
<el-main style="padding: 0 20px 20px 20px"> <el-main style="padding: 0 20px 20px 20px">
<el-form <el-form
ref="dialogForm" ref="dialogForm"
:model="form" :model="form"
:rules="rules" :rules="rules"
label-position="right" label-position="right"
label-width="80px" label-width="80px"
style="padding: 0 10px;" style="padding: 0 10px"
> >
<el-form-item label="名称" prop="name"> <el-row>
<el-input v-model="form.name" clearable></el-input> <el-col :md="12" :sm="24">
</el-form-item> <el-form-item label="名称" prop="name">
<el-form-item label="标识"> <el-input
<el-input v-model="form.code" clearable></el-input> v-model="form.name"
</el-form-item> clearable
<el-form-item label="类型"> ></el-input>
<el-select </el-form-item>
v-model="form.type" </el-col>
placeholder="类型" <el-col :md="12" :sm="24">
clearable <el-form-item label="标识">
style="width: 100%;" <el-input
> v-model="form.code"
<el-option clearable
v-for="item in typeOptions" ></el-input>
:key="item.value" </el-form-item>
:label="item.label" </el-col>
:value="item.value" <el-col :md="12" :sm="24">
></el-option> <el-form-item label="类型">
</el-select> <el-select
</el-form-item> v-model="form.type"
<el-form-item label="检测项目"> placeholder="类型"
<el-select clearable
v-model="form.testitems" style="width: 100%"
placeholder="检测项目" >
clearable <el-option
multiple v-for="item in typeOptions"
style="width: 100%;" :key="item.value"
> :label="item.label"
<el-option :value="item.value"
v-for="item in options" ></el-option>
:key="item.id" </el-select>
:label="item.name" </el-form-item>
:value="item.id" </el-col>
></el-option> <el-col :md="12" :sm="24">
</el-select> <el-form-item label="检测项目">
</el-form-item> <el-select
<!-- <el-form-item label="单位成本" prop="price_unit"> v-model="form.testitems"
<el-input-number placeholder="检测项目"
v-model="form.sort" clearable
:precision="0" multiple
style="width: 100%;" style="width: 100%"
clearable> >
</el-input-number> <el-option
</el-form-item> --> v-for="item in options"
</el-form> :key="item.id"
</el-main> :label="item.name"
<el-footer> :value="item.id"
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button> ></el-option>
<el-button @click="visible = false">取消</el-button> </el-select>
</el-footer> </el-form-item>
</el-container> </el-col>
</el-dialog> <el-col :md="12" :sm="24">
</template> <el-form-item label="已到工序">
<el-select
v-model="form.process"
placeholder="已到工序"
clearable
style="width: 100%"
>
<el-option
v-for="item in processOptions"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="计量单位">
<el-input
v-model="form.unit"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="排序">
<el-input-number
v-model="form.sort"
clearable
></el-input-number>
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-main>
<el-footer>
<el-button type="primary" :loading="isSaveing" @click="submit"
>保存</el-button
>
<el-button @click="visible = false">取消</el-button>
</el-footer>
</el-container>
</el-dialog>
</template>
<script> <script>
const defaultForm = { const defaultForm = {
id:"", id: "",
name: "", name: "",
code: "", code: "",
type: "", type: "",
// sort:1, sort: 1,
testitems: [], unit: "",
}; testitems: [],
export default { };
emits: ["success", "closed"], export default {
data() { emits: ["success", "closed"],
return { data() {
loading: false, return {
mode: "add", loading: false,
titleMap: { mode: "add",
add: '新增产品', titleMap: {
edit: '编辑产品', add: "新增产品",
show: '查看产品' edit: "编辑产品",
}, show: "查看产品",
//
form: defaultForm,
//
rules: {
name: [{required: true, message: "请输入名称", trigger: "blur"}],
},
visible: false,
isSaveing: false,
options:[],
typeOptions:[
{label:'电/水/气',value:0},
{label:'成品',value:10},
{label:'半成品',value:20},
{label:'主要原料',value:30},
{label:'辅助材料',value:40},
{label:'加工工具',value:50},
{label:'辅助工装',value:60},
],
setFiltersVisible: false,
};
},
mounted() {
this.getTestItem();//
},
methods: {
getTestItem(){
this.$API.qm.getTestItem.get({page:0}).then(res=>{
this.options = res;
});
}, },
// //
open(mode = "add") { form: defaultForm,
this.mode = mode; //
this.visible = true; rules: {
return this; name: [
}, { required: true, message: "请输入名称", trigger: "blur" },
// ],
setData(data) { },
Object.assign(this.form,data); visible: false,
}, isSaveing: false,
// options: [],
submit() { typeOptions: [
let that = this; { label: "电/水/气", value: 0 },
that.$refs.dialogForm.validate(async (valid) => { { label: "成品", value: 10 },
if (valid) { { label: "半成品", value: 20 },
that.isSaveing = true; { label: "主要原料", value: 30 },
if(that.mode==='add'){ { label: "辅助材料", value: 40 },
that.$API.mtm.material.create.req(that.form).then(res=>{ { label: "加工工具", value: 50 },
that.isSaveing = false; { label: "辅助工装", value: 60 },
that.$emit("success", that.form, that.mode); ],
that.visible = false; processOptions: [],
that.$message.success("操作成功"); setFiltersVisible: false,
}).catch(res=>{ };
that.isSaveing = false; },
}) mounted() {
}else{ this.getTestItem(); //
res = that.$API.mtm.material.update.req(that.form.id,that.form).then(res=>{ this.getProcessOptions();
that.isSaveing = false; },
that.$emit("success", that.form, that.mode); methods: {
that.visible = false; getTestItem() {
that.$message.success("操作成功"); this.$API.qm.getTestItem.get({ page: 0 }).then((res) => {
}).catch(res=>{ this.options = res;
that.isSaveing = false; });
}) },
} getProcessOptions() {
} this.$API.mtm.process.list.req({ page: 0 }).then((res) => {
}); this.processOptions = res;
}, });
},
//
open(mode = "add") {
this.mode = mode;
this.visible = true;
return this;
},
//
setData(data) {
Object.assign(this.form, data);
},
//
submit() {
let that = this;
that.$refs.dialogForm.validate(async (valid) => {
if (valid) {
that.isSaveing = true;
if (that.mode === "add") {
that.$API.mtm.material.create
.req(that.form)
.then((res) => {
that.isSaveing = false;
that.$emit("success", that.form, that.mode);
that.visible = false;
that.$message.success("操作成功");
})
.catch((res) => {
that.isSaveing = false;
});
} else {
res = that.$API.mtm.material.update
.req(that.form.id, that.form)
.then((res) => {
that.isSaveing = false;
that.$emit("success", that.form, that.mode);
that.visible = false;
that.$message.success("操作成功");
})
.catch((res) => {
that.isSaveing = false;
});
}
}
});
},
// //
setFilters(filters) { setFilters(filters) {
this.selectionFilters = filters; this.selectionFilters = filters;
this.setFiltersVisible = true; this.setFiltersVisible = true;
}, },
}, },
}; };
</script> </script>
<style>
</style>
<style></style>