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
<script> v-model="form.process"
const defaultForm = { placeholder="已到工序"
id:"", clearable
name: "", style="width: 100%"
code: "", >
type: "", <el-option
// sort:1, v-for="item in processOptions"
testitems: [], :key="item.id"
}; :label="item.name"
export default { :value="item.id"
emits: ["success", "closed"], />
data() { </el-select>
return { </el-form-item>
loading: false, </el-col>
mode: "add", <el-col :md="12" :sm="24">
titleMap: { <el-form-item label="计量单位">
add: '新增产品', <el-input
edit: '编辑产品', v-model="form.unit"
show: '查看产品' clearable
}, ></el-input>
// </el-form-item>
form: defaultForm, </el-col>
// <el-col :md="12" :sm="24">
rules: { <el-form-item label="排序">
name: [{required: true, message: "请输入名称", trigger: "blur"}], <el-input-number
}, v-model="form.sort"
visible: false, clearable
isSaveing: false, ></el-input-number>
options:[], </el-form-item>
typeOptions:[ </el-col>
{label:'电/水/气',value:0}, </el-row>
{label:'成品',value:10}, </el-form>
{label:'半成品',value:20}, </el-main>
{label:'主要原料',value:30}, <el-footer>
{label:'辅助材料',value:40}, <el-button type="primary" :loading="isSaveing" @click="submit"
{label:'加工工具',value:50}, >保存</el-button
{label:'辅助工装',value:60}, >
], <el-button @click="visible = false">取消</el-button>
setFiltersVisible: false, </el-footer>
}; </el-container>
}, </el-dialog>
mounted() { </template>
this.getTestItem();//
}, <script>
methods: { const defaultForm = {
getTestItem(){ id: "",
this.$API.qm.getTestItem.get({page:0}).then(res=>{ name: "",
this.options = res; code: "",
}); type: "",
sort: 1,
unit: "",
testitems: [],
};
export default {
emits: ["success", "closed"],
data() {
return {
loading: false,
mode: "add",
titleMap: {
add: "新增产品",
edit: "编辑产品",
show: "查看产品",
}, },
// //
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;
}, });
},
// //
setFilters(filters) { open(mode = "add") {
this.selectionFilters = filters; this.mode = mode;
this.setFiltersVisible = true; this.visible = true;
}, return this;
}, },
}; //
</script> setData(data) {
Object.assign(this.form, data);
<style> },
</style> //
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) {
this.selectionFilters = filters;
this.setFiltersVisible = true;
},
},
};
</script>
<style></style>