部分检验
This commit is contained in:
parent
329d30eecb
commit
c5b6eb4f58
|
@ -35,9 +35,9 @@
|
|||
<!-- 曲阳 -->
|
||||
<!-- <img src="img/bbmg_jy.jpg"/> -->
|
||||
<!-- 托克逊 -->
|
||||
<img src="img/bbmg.jpg"/>
|
||||
<!-- <img src="img/bbmg.jpg"/> -->
|
||||
<!-- 光子 -->
|
||||
<!-- <img src="img/gz_logo.png"/> -->
|
||||
<img src="img/gz_logo.png"/>
|
||||
</div>
|
||||
<div class="app-loading__loader"></div>
|
||||
<div class="app-loading__title"><%= VUE_APP_TITLE %></div>
|
||||
|
|
|
@ -37,5 +37,47 @@ export default {
|
|||
return await http.get(this.url, data);
|
||||
}
|
||||
},
|
||||
ftest: {
|
||||
list: {
|
||||
name: "首件检验列表",
|
||||
req: async function(data){
|
||||
return await http.get(
|
||||
`${config.API_URL}/qm/ftest/`,
|
||||
data
|
||||
);
|
||||
}
|
||||
},
|
||||
item: {
|
||||
name: "首件检验",
|
||||
req: async function(id){
|
||||
return await http.get(
|
||||
`${config.API_URL}/qm/ftest/${id}/`
|
||||
);
|
||||
}
|
||||
},
|
||||
update: {
|
||||
name: "更新首件检验",
|
||||
req: async function(id, data){
|
||||
return await http.put(
|
||||
`${config.API_URL}/qm/ftest/${id}/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
create: {
|
||||
name: "创建首件检验",
|
||||
req: async function(data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/qm/ftest/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
delete: {
|
||||
name: "删除首件检验",
|
||||
req: async function(id){
|
||||
return await http.delete(
|
||||
`${config.API_URL}/qm/ftest/${id}/`);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
|
|
|
@ -196,6 +196,72 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
handover:{
|
||||
list: {
|
||||
name: "值班记录列表",
|
||||
req: async function(data){
|
||||
return await http.get(
|
||||
`${config.API_URL}/wpm/handover/`,
|
||||
data
|
||||
);
|
||||
}
|
||||
},
|
||||
item: {
|
||||
name: "获取详情",
|
||||
req: async function(id){
|
||||
return await http.get(
|
||||
`${config.API_URL}/wpm/handover/${id}/`
|
||||
);
|
||||
}
|
||||
},
|
||||
cquery: {
|
||||
name: "复杂查询",
|
||||
req: async function(data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/wpm/handover/cquery/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
update: {
|
||||
name: "更新",
|
||||
req: async function(id, data){
|
||||
return await http.put(
|
||||
`${config.API_URL}/wpm/handover/${id}/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
create: {
|
||||
name: "创建",
|
||||
req: async function(data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/wpm/handover/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
delete: {
|
||||
name: "删除",
|
||||
req: async function(id){
|
||||
return await http.delete(
|
||||
`${config.API_URL}/wpm/handover/${id}/`);
|
||||
}
|
||||
},
|
||||
genByMlogs:{
|
||||
name: "从生产日志生成交接记录",
|
||||
req: async function(data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/wpm/handover/gen_by_mlogs/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
genByWm:{
|
||||
name: "从车间库存生成交接记录",
|
||||
req: async function(data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/wpm/handover/gen_by_wm/`,
|
||||
data);
|
||||
}
|
||||
}
|
||||
},
|
||||
//车间库存
|
||||
wmaterial: {
|
||||
list: {
|
||||
|
|
|
@ -643,7 +643,7 @@ const routes = [
|
|||
"name": "em",
|
||||
"path": "/em",
|
||||
"meta": {
|
||||
"title": "设备",
|
||||
"title": "设备管理",
|
||||
"icon": "el-icon-grid",
|
||||
"type": "menu",
|
||||
"perms": ["em"]
|
||||
|
|
|
@ -42,6 +42,9 @@
|
|||
</el-table-column>
|
||||
<el-table-column label="操作" fixed="right" align="center" width="100px">
|
||||
<template #default="scope">
|
||||
<el-link type="primary" @click="table_check(scope.row)" >
|
||||
检验
|
||||
</el-link>
|
||||
<el-link type="danger" @click="table_del(scope.row)" v-if="mioObj.state == 10">
|
||||
删除
|
||||
</el-link>
|
||||
|
@ -52,18 +55,25 @@
|
|||
</div>
|
||||
</div>
|
||||
<save-dialog v-if="dialog.save" ref="saveDialog" :mioId="mioId" :belongDeptId="belongDeptId" :mioObj="mioObj"
|
||||
@success="handleSaveSuccess" @closed="dialog.save = false"></save-dialog>
|
||||
@success="handleSaveSuccess" @closed="dialog.save = false">
|
||||
</save-dialog>
|
||||
|
||||
<check-dialog v-if="dialog.check" ref="checkDialog"
|
||||
@success="handleCheckSuccess" @closed="dialog.check = false">
|
||||
</check-dialog>
|
||||
</template>
|
||||
<script>
|
||||
import saveDialog from "./mioitem_form.vue";
|
||||
import checkDialog from "./mioitem_check.vue";
|
||||
export default {
|
||||
name: "mioitem",
|
||||
components: {
|
||||
saveDialog,
|
||||
saveDialog,checkDialog
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialog: {
|
||||
check:false,
|
||||
save: false,
|
||||
},
|
||||
apiObj: null,
|
||||
|
@ -133,6 +143,12 @@ export default {
|
|||
});
|
||||
}).catch(() => { });
|
||||
},
|
||||
table_check(row){
|
||||
this.dialog.check = true;
|
||||
this.$nextTick(() => {
|
||||
this.$refs.checkDialog.open("add");
|
||||
});
|
||||
},
|
||||
//本地更新数据
|
||||
handleSaveSuccess(data, mode) {
|
||||
if (mode == "add") {
|
||||
|
@ -141,6 +157,9 @@ export default {
|
|||
this.$refs.table.refresh();
|
||||
}
|
||||
},
|
||||
handleCheckSuccess(){
|
||||
this.$refs.table.refresh();
|
||||
},
|
||||
handleQuery() {
|
||||
this.$refs.table.queryData(this.query)
|
||||
},
|
||||
|
|
|
@ -0,0 +1,254 @@
|
|||
<template>
|
||||
<el-dialog
|
||||
title="首件检验"
|
||||
v-model="visible"
|
||||
:size="1000"
|
||||
destroy-on-close
|
||||
@closed="$emit('closed')"
|
||||
>
|
||||
<el-container v-loading="loading">
|
||||
<el-main style="padding: 0 20px 20px 20px">
|
||||
<el-form
|
||||
ref="dialogForm"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
label-width="100px"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="所属部门" prop="belong_dept">
|
||||
<el-select
|
||||
v-model="form.belong_dept"
|
||||
placeholder="所属部门"
|
||||
clearable style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="检验日期" prop="test_date">
|
||||
<el-date-picker
|
||||
v-model="form.test_date"
|
||||
type="date"
|
||||
value-format="YYYY-MM-DD"
|
||||
style="width:100%"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="操作人" prop="test_user">
|
||||
<el-select
|
||||
v-model="form.test_user"
|
||||
placeholder="操作人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
: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="专检人" prop="check_user">
|
||||
<el-select
|
||||
v-model="form.check_user"
|
||||
placeholder="专检人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-table :data="form.ftestitems" border placeholder="暂无数据">
|
||||
<el-table-column prop="testitem" label="测量项" min-width="100" align="center">
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.testitem }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="test_val" label="操作人测量值" min-width="120" align="center">
|
||||
<template #default="scope">
|
||||
<el-input-number v-model="scope.row.test_val" :min="0" style="width:100%" controls-position="right">
|
||||
</el-input-number>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="check_val" label="专检人测量值" min-width="120" align="center">
|
||||
<template #default="scope">
|
||||
<el-input-number v-model="scope.row.check_val" :min="0" style="width:100%" controls-position="right">
|
||||
</el-input-number>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-row style="margin-top:14px">
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="检验工序集" prop="test_group">
|
||||
<el-select
|
||||
v-model="form.test_group"
|
||||
placeholder="检验工序集"
|
||||
multiple
|
||||
clearable style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in processOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :md="12" :sm="24" prop="is_ok">
|
||||
<el-form-item label="是否合格" prop="is_ok">
|
||||
<el-select
|
||||
v-model="form.is_ok"
|
||||
placeholder="是否合格"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option label="是" value="true"/>
|
||||
<el-option label="否" value="false"/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="备注">
|
||||
<el-input v-model="form.note" placeholder="备注"/>
|
||||
</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>
|
||||
export default {
|
||||
emits: ["success", "closed"],
|
||||
data() {
|
||||
return {
|
||||
loading: false,
|
||||
form: {
|
||||
ftestitems:[
|
||||
{testitem:'椭圆度(≤0.02mm)',test_val:'',check_val:''},
|
||||
{testitem:'锥度(≤0.05mm)',test_val:'',check_val:''},
|
||||
{testitem:'直径(≥29.0)',test_val:'',check_val:''},
|
||||
{testitem:'长度(≥455mm)',test_val:'',check_val:''},
|
||||
],
|
||||
},
|
||||
rules: {
|
||||
belong_dept: [{required: true, message: "请选择所属部门", trigger: "blur"}],
|
||||
test_date: [{required: true, message: "请选择检验日期", trigger: "blur"}],
|
||||
test_user: [{required: true, message: "请选择操作人", trigger: "blur"}],
|
||||
check_user: [{required: true, message: "请选择专检人", trigger: "blur"}],
|
||||
test_group:[{required: true, message: "请选择检测工序集", trigger: "blur"}],
|
||||
is_ok: [{required: true, message: "请选择是否合格", trigger: "blur"}],
|
||||
},
|
||||
visible: false,
|
||||
isSaveing: false,
|
||||
userList:[],
|
||||
processOptions: [],
|
||||
deptOptions: [],
|
||||
selectionFilters: [],
|
||||
setFiltersVisible: false,
|
||||
belong_dept_options: [],
|
||||
group: [],
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.getProcess();
|
||||
this.getUserList();
|
||||
this.getDeptOptions();
|
||||
},
|
||||
methods: {
|
||||
//显示
|
||||
open(mode = "add",type) {
|
||||
this.mode = mode;
|
||||
this.visible = true;
|
||||
return this;
|
||||
},
|
||||
//获取部门列表
|
||||
getDeptOptions() {
|
||||
this.$API.system.dept.list.req({ page: 0, type__in: 'dept' }).then((res) => {
|
||||
this.deptOptions = [];
|
||||
res.forEach(item=>{
|
||||
if(item.parent=='3423856735881117696'){
|
||||
this.deptOptions.push(item)
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
//获取员工
|
||||
getUserList(){
|
||||
let that = this;
|
||||
this.$API.system.user.list.req({page_size:20,page:1}).then(res=>{
|
||||
that.userList = res.results;
|
||||
});
|
||||
},
|
||||
getProcess(){
|
||||
let that = this;
|
||||
this.$API.mtm.process.list.req({page:0}).then(res=>{
|
||||
that.processOptions = res;
|
||||
})
|
||||
},
|
||||
//提交
|
||||
submit() {
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.isSaveing = true;
|
||||
try {
|
||||
var res;
|
||||
this.form.test_group = this.form.test_group.join(',')
|
||||
if (this.mode == "add") {
|
||||
res = await this.$API.qm.ftest.create.req(this.form);
|
||||
} else if (this.mode == "edit") {
|
||||
res = await this.$API.qm.ftest.update.req(this.form.id,this.form);
|
||||
}
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
} catch (err) {
|
||||
//可以处理校验错误
|
||||
this.isSaveing = false;
|
||||
return err;
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
//表单注入数据
|
||||
setData(data) {
|
||||
Object.assign(this.form, data);
|
||||
this.form.test_group = this.form.split(',')
|
||||
},
|
||||
//设置过滤项
|
||||
setFilters(filters) {
|
||||
this.selectionFilters = filters;
|
||||
this.setFiltersVisible = true;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
|
@ -31,6 +31,13 @@
|
|||
</el-table-column>
|
||||
<el-table-column label="规格型号" prop="specification">
|
||||
</el-table-column>
|
||||
<el-table-column label="关联物料" prop="brothers">
|
||||
<template #default="scope">
|
||||
<el-icon v-if="scope.row.brothers.length>0" color="green">
|
||||
<CircleCheckFilled />
|
||||
</el-icon>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="计量单位" prop="unit">
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" fixed="right" align="center" width="100">
|
||||
|
@ -136,6 +143,7 @@ export default {
|
|||
}).then(() => {
|
||||
this.$API.mtm.material.delete.req(row.id).then((res) => {
|
||||
this.$message.success("删除成功");
|
||||
this.$refs.table.refresh();
|
||||
return res;
|
||||
}).catch((err) => {
|
||||
return err;
|
||||
|
|
|
@ -21,11 +21,29 @@
|
|||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="物料类别" prop="type">
|
||||
<el-select v-model="form.type" placeholder="物料类别" clearable style="width:100%">
|
||||
<el-select v-model="form.type" placeholder="物料类别" clearable style="width:100%" @change="typeChange">
|
||||
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="关联物料" prop="type">
|
||||
<el-select
|
||||
v-model="brothers"
|
||||
placeholder="关联物料"
|
||||
clearable
|
||||
multiple
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in materialOptions"
|
||||
: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="工艺路线" prop="need_route">
|
||||
<el-switch v-model="form.need_route" />
|
||||
|
@ -70,6 +88,7 @@ export default {
|
|||
edit: "编辑物料",
|
||||
show: "查看物料",
|
||||
},
|
||||
brothers:[],
|
||||
form: {},
|
||||
rules: {
|
||||
name: [{ required: true, message: "请输入物料名称", trigger: "blur" }],
|
||||
|
@ -87,11 +106,14 @@ export default {
|
|||
{ id: 60, name: '辅助工装' },
|
||||
{ id: 70, name: '办公用品' },
|
||||
],
|
||||
handle_user:[],
|
||||
selectionFilters: [],
|
||||
materialOptions:[],
|
||||
setFiltersVisible: false,
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
//显示
|
||||
|
@ -100,26 +122,44 @@ export default {
|
|||
this.visible = true;
|
||||
return this;
|
||||
},
|
||||
getMaterial(val){
|
||||
let that = this;
|
||||
let query = {};
|
||||
query.type = val;
|
||||
query.page = 0;
|
||||
query.is_hidden = false;
|
||||
this.$API.mtm.material.list.req(query).then(res=>{
|
||||
that.materialOptions = res;
|
||||
})
|
||||
},
|
||||
typeChange(val){
|
||||
this.getMaterial(val);
|
||||
},
|
||||
//提交
|
||||
submit() {
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.isSaveing = true;
|
||||
try {
|
||||
var res;
|
||||
if (this.mode == "add") {
|
||||
res = await this.$API.mtm.material.create.req(this.form);
|
||||
} else if (this.mode == "edit") {
|
||||
res = await this.$API.mtm.material.update.req(this.form.id, this.form);
|
||||
}
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
} catch (err) {
|
||||
//可以处理校验错误
|
||||
this.isSaveing = false;
|
||||
return err;
|
||||
this.form.brothers = this.brothers;
|
||||
if (this.mode == "add") {
|
||||
this.$API.mtm.material.create.req(this.form).then(res=>{
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
}).catch(()=>{
|
||||
this.isSaveing = false;
|
||||
this.visible = false;
|
||||
})
|
||||
} else if (this.mode == "edit") {
|
||||
this.$API.mtm.material.update.req(this.form.id, this.form).then(res=>{
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
}).catch(()=>{
|
||||
this.isSaveing = false;
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -127,6 +167,8 @@ export default {
|
|||
//表单注入数据
|
||||
setData(data) {
|
||||
Object.assign(this.form, data);
|
||||
this.brothers = data.brothers;
|
||||
this.getMaterial(data.type)
|
||||
},
|
||||
//设置过滤项
|
||||
setFilters(filters) {
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
<el-table-column label="所属部门" prop="belong_dept_name" min-width="150"></el-table-column>
|
||||
<el-table-column label="排序" prop="sort" min-width="80"></el-table-column>
|
||||
<el-table-column label="创建时间" prop="create_time" min-width="150"></el-table-column>
|
||||
<el-table-column label="操作" fixed="right" align="center" width="140">
|
||||
<el-table-column label="操作" fixed="right" align="center" width="180">
|
||||
<template #default="scope">
|
||||
<el-button link size="small" @click="table_edit(scope.row)" v-auth="'mgroup.update'"
|
||||
type="primary">编辑</el-button>
|
||||
|
@ -36,8 +36,12 @@
|
|||
</scTable>
|
||||
</el-main>
|
||||
</el-container>
|
||||
<save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess"
|
||||
@closed="dialog.save = false"></save-dialog>
|
||||
<save-dialog
|
||||
v-if="dialog.save"
|
||||
ref="saveDialog"
|
||||
@success="handleSaveSuccess"
|
||||
@closed="dialog.save = false">
|
||||
</save-dialog>
|
||||
</template>
|
||||
<script>
|
||||
import saveDialog from "./mgroup_form.vue";
|
||||
|
|
|
@ -21,6 +21,29 @@
|
|||
<el-input-number v-model="form.sort" :min="1" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<sc-form-table ref="table" v-model="materialList" :addTemplate="addTemplate" placeholder="暂无数据">
|
||||
<el-table-column prop="type" label="输入物料" min-width="120" align="center">
|
||||
<template #default="scope">
|
||||
<el-select v-model="scope.row.material_in" style="width: 100%">
|
||||
<el-option v-for="item in materials" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="type" label="输出物料" min-width="120" align="center">
|
||||
<template #default="scope">
|
||||
<el-select v-model="scope.row.material_out" filterable style="width: 100%" >
|
||||
<el-option v-for="item in materials" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="type" label="操作" min-width="80" align="center">
|
||||
<template #default="scope">
|
||||
<el-button type="primary" v-if="scope.row.isedit" @click="submitForm(scope.row,scope.$index)">确定</el-button>
|
||||
<el-button type="warning" v-else @click="editForm(scope.row,scope.$index)">编辑</el-button>
|
||||
<el-button type="danger" @click="delForm(scope.row,scope.$index)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</sc-form-table>
|
||||
</el-main>
|
||||
<el-footer>
|
||||
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
|
||||
|
@ -47,7 +70,7 @@ export default {
|
|||
titleMap: {
|
||||
add: '新增',
|
||||
edit: '编辑',
|
||||
show: '查看'
|
||||
show: '查看',
|
||||
},
|
||||
//表单数据
|
||||
form: {
|
||||
|
@ -62,13 +85,17 @@ export default {
|
|||
isSaveing: false,
|
||||
options: [],
|
||||
group: [],
|
||||
routes:[],
|
||||
materials: [],
|
||||
setFiltersVisible: false,
|
||||
materialList:[{material_in:'',material_out:'',mgroup:'',isedit:true}],
|
||||
addTemplate:{material_in:'',material_out:'',mgroup:'',isedit:true}
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.getGroup();//获取部门
|
||||
this.getProcess();//获取产品
|
||||
this.getProcess();//获取工序
|
||||
this.getMaterial();//获取物料
|
||||
},
|
||||
methods: {
|
||||
//部门数据
|
||||
|
@ -79,10 +106,31 @@ export default {
|
|||
},
|
||||
//获取工序列表
|
||||
getProcess() {
|
||||
var res = this.$API.mtm.process.list.req({ page: 0 }).then(res => {
|
||||
this.$API.mtm.process.list.req({ page: 0 }).then(res => {
|
||||
this.options = res;
|
||||
});
|
||||
},
|
||||
getMaterial(){
|
||||
this.$API.mtm.material.list.req({ page: 0,is_hidden:false,type__in:'10,20' }).then(res => {
|
||||
this.materials = res;
|
||||
});
|
||||
},
|
||||
getRoute(id){
|
||||
let that = this;
|
||||
that.$API.mtm.route.list.req({ mgroup: id,page:0 }).then(res => {
|
||||
that.routes = res;
|
||||
if(res.length>0){
|
||||
res.forEach(item=>{
|
||||
let obj = {};
|
||||
obj.material_in=item.material_in;
|
||||
obj.material_out=item.material_out;
|
||||
obj.mgroup = id;
|
||||
obj.isedit=false;
|
||||
})
|
||||
that.materialList.push(obj);
|
||||
}else{}
|
||||
});
|
||||
},
|
||||
//显示
|
||||
open(mode = "add") {
|
||||
this.mode = mode;
|
||||
|
@ -92,6 +140,10 @@ export default {
|
|||
//表单注入数据
|
||||
setData(data) {
|
||||
Object.assign(this.form, data);
|
||||
this.getRoute(data.id);
|
||||
},
|
||||
setMgroup(id){
|
||||
this.form.mgroup = id;
|
||||
},
|
||||
getReceptionist(data) {
|
||||
this.form.leader = data.id;
|
||||
|
@ -99,31 +151,63 @@ export default {
|
|||
},
|
||||
//表单提交方法
|
||||
submit() {
|
||||
console.log(this.mode)
|
||||
console.log(this.form)
|
||||
let that = this;
|
||||
that.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
that.form.cate = 'photon';
|
||||
that.form.need_enm = false;
|
||||
that.isSaveing = true;
|
||||
if (that.mode === 'add') {
|
||||
that.$API.mtm.mgroup.create.req(that.form).then(res => {
|
||||
that.isSaveing = false;
|
||||
that.$emit("success", that.form, that.mode);
|
||||
that.visible = false;
|
||||
that.$message.success("操作成功");
|
||||
})
|
||||
} else {
|
||||
that.$API.mtm.mgroup.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("操作成功");
|
||||
})
|
||||
if(this.mode){
|
||||
|
||||
}else{
|
||||
that.form.cate = 'photon';
|
||||
that.form.need_enm = false;
|
||||
that.isSaveing = true;
|
||||
if (that.mode === 'add') {
|
||||
that.$API.mtm.mgroup.create.req(that.form).then(res => {
|
||||
that.isSaveing = false;
|
||||
that.$emit("success", that.form, that.mode);
|
||||
that.visible = false;
|
||||
that.$message.success("操作成功");
|
||||
})
|
||||
} else {
|
||||
that.$API.mtm.mgroup.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("操作成功");
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
submitForm(row,index){
|
||||
let that = this;
|
||||
let obj = {};
|
||||
obj.material_in = row.material_in;
|
||||
obj.material_out = row.material_out;
|
||||
if (row.id) {
|
||||
obj.mgroup = row.mgroup;
|
||||
this.$API.mtm.route.update.req(row.id, obj).then(res => {
|
||||
that.materialList[index].isedit = false;
|
||||
})
|
||||
} else{
|
||||
obj.mgroup = that.form.id;
|
||||
this.$API.mtm.route.create.req(obj).then(res => {
|
||||
that.materialList[index].isedit = false;
|
||||
})
|
||||
}
|
||||
},
|
||||
editForm(row,index){
|
||||
let that = this;
|
||||
that.materialList[index].isedit = true;
|
||||
},
|
||||
delForm(row,index){
|
||||
let that = this;
|
||||
this.$API.mtm.route.delete.req(row.id).then(res => {
|
||||
that.getRoute(that.form.id);
|
||||
})
|
||||
},
|
||||
//设置过滤项
|
||||
setFilters(filters) {
|
||||
this.selectionFilters = filters;
|
||||
|
|
|
@ -0,0 +1,275 @@
|
|||
<template>
|
||||
<el-dialog
|
||||
:title="titleMap[mode]"
|
||||
v-model="visible"
|
||||
width="1000px"
|
||||
:size="1000"
|
||||
destroy-on-close
|
||||
@closed="$emit('closed')"
|
||||
>
|
||||
<el-form ref="dialogForm" :model="form" :rules="rules" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="交接物料" prop="material">
|
||||
<el-select
|
||||
v-model="form.wm"
|
||||
placeholder="交接物料"
|
||||
clearable
|
||||
style="width:100%"
|
||||
@change="materialChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in materialOptions"
|
||||
:key="item.id"
|
||||
:label="item.batch"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="交接数量" width="100">
|
||||
<el-input-number
|
||||
v-model="form.count"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="交接数量">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="送料部门" prop="send_dept">
|
||||
<el-select
|
||||
v-model="form.send_dept"
|
||||
placeholder="送料部门"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="交送人" prop="send_user">
|
||||
<el-select
|
||||
v-model="form.send_user"
|
||||
placeholder="交送人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
: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="接收部门" prop="recive_dept">
|
||||
<el-select
|
||||
v-model="form.recive_dept"
|
||||
placeholder="接收部门"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="接收人" prop="recive_user">
|
||||
<el-select
|
||||
v-model="form.recive_user"
|
||||
placeholder="接收人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList2"
|
||||
: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-date-picker
|
||||
v-model="form.send_date"
|
||||
type="date"
|
||||
placeholder="选择时间"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
style="width:100%"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-footer>
|
||||
<el-button type="primary" v-loading="isSaveing" @click="submit">确定</el-button>
|
||||
<el-button @click="resetForm">取消</el-button>
|
||||
</el-footer>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
emits: ["success", "closed"],
|
||||
data() {
|
||||
return {
|
||||
yseorno:['是','否'],
|
||||
loading: false,
|
||||
mode: "add",
|
||||
titleMap: {
|
||||
add: "新增交接记录",
|
||||
edit: "编辑交接记录",
|
||||
show: "查看交接记录",
|
||||
},
|
||||
handle_user:[],
|
||||
form:{
|
||||
batch:'',
|
||||
count:0,//送料数
|
||||
wm:'',
|
||||
send_user:'',
|
||||
send_dept:'',
|
||||
send_date:'',
|
||||
recive_dept:'',
|
||||
recive_user:'',
|
||||
},
|
||||
userList:[],
|
||||
userList2:[],
|
||||
deptOptions:[],
|
||||
materialOptions:[],
|
||||
visible: false,
|
||||
isSaveing: false,
|
||||
setFiltersVisible: false,
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
let materialObj = this.$TOOL.data.get('MATERIAL_OBJECT');
|
||||
this.materialObj = materialObj;
|
||||
this.getDeptOptions();
|
||||
this.getMaterial();
|
||||
this.getUserList();
|
||||
let date = new Date();
|
||||
let year = date.getFullYear();
|
||||
let month = date.getMonth()+1;
|
||||
let day = date.getDate();
|
||||
this.form.handle_date = year+'-'+month+'-'+day;
|
||||
|
||||
},
|
||||
methods: {
|
||||
//获取6车间和8车间 的人员
|
||||
getUserList(){
|
||||
let that = this;
|
||||
this.$API.system.user.list.req({belong_dept__name:'6车间',page:0}).then(res=>{
|
||||
that.userList2 = res;
|
||||
});
|
||||
this.$API.system.user.list.req({belong_dept__name:'8车间',page:0}).then(res=>{
|
||||
that.userList = res;
|
||||
});
|
||||
},
|
||||
//获取部门列表
|
||||
getDeptOptions() {
|
||||
this.$API.system.dept.list.req({ page: 0, type__in: 'dept' }).then((res) => {
|
||||
this.deptOptions = [];
|
||||
res.forEach(item=>{
|
||||
if(item.parent=='3423856735881117696'){
|
||||
this.deptOptions.push(item)
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
//获取车间物料
|
||||
getMaterial(){
|
||||
let that = this;
|
||||
this.$API.wpm.wmaterial.list.req({belong_dept_name:'8车间',page:0}).then(res=>{
|
||||
that.materialOptions = res;
|
||||
});
|
||||
},
|
||||
//获取集合列表
|
||||
getMgroupList(){
|
||||
let that = this;
|
||||
this.$API.mtm.mgroup.list.req({page:0,cate:'photon'}).then(res=>{
|
||||
let data = res.filter(item=>{
|
||||
return item.process_cate=='成型'
|
||||
})
|
||||
that.mgroupOptions = res;
|
||||
})
|
||||
},
|
||||
//显示
|
||||
open(mode = "add") {
|
||||
this.mode = mode;
|
||||
this.visible = true;
|
||||
return this;
|
||||
},
|
||||
materialChange(val){
|
||||
let data = this.materialOptions.filter(item=>{
|
||||
return item.id==val;
|
||||
})
|
||||
this.form.batch = data[0].batch;
|
||||
},
|
||||
//提交
|
||||
submit() {
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
if (this.mode == "add") {
|
||||
this.$API.wpm.handover.create.req(this.form).then(res=>{
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
}).catch( (err) =>{
|
||||
//可以处理校验错误
|
||||
this.isSaveing = false;
|
||||
return err;
|
||||
})
|
||||
} else if (this.mode == "edit") {
|
||||
this.$API.wpm.handover.update.req(this.form.id,this.form).then(res=>{
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
}).catch( (err) =>{
|
||||
//可以处理校验错误
|
||||
this.isSaveing = false;
|
||||
return err;
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
//表单注入数据
|
||||
setData(data) {
|
||||
Object.assign(this.form, data);
|
||||
},
|
||||
//设置过滤项
|
||||
setFilters(filters) {
|
||||
this.selectionFilters = filters;
|
||||
this.setFiltersVisible = true;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style scoped>
|
||||
.formTitle{
|
||||
margin-bottom:10px;
|
||||
font-weight:600
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,545 +0,0 @@
|
|||
<template>
|
||||
<el-dialog
|
||||
:title="titleMap[mode]"
|
||||
v-model="visible"
|
||||
width="1000px"
|
||||
:size="1000"
|
||||
destroy-on-close
|
||||
@closed="$emit('closed')"
|
||||
>
|
||||
<!-- 混料工序 -->
|
||||
<el-form v-if="activeType=='8车间'" ref="dialogForm" :model="form" :rules="rules" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="工段" prop="material">
|
||||
<el-select
|
||||
v-model="form.mgroup"
|
||||
placeholder="工段"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in mgroupOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="产物" prop="material">
|
||||
<el-select
|
||||
v-model="form.material_out"
|
||||
placeholder="产物"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in materialOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="设备" prop="material">
|
||||
<el-select
|
||||
v-model="form.equipment"
|
||||
placeholder="设备"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in equipmentOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="批次" width="100">
|
||||
<el-input v-model="form.batch" tyle="width:100%" placeholder="请输入批次"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="数量" width="100">
|
||||
<el-input-number
|
||||
v-model="form.count_real"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="请输入数量">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="重量" width="100">
|
||||
<el-input-number
|
||||
v-model="form.count_real_eweight"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="请输入重量">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="配料人" prop="material">
|
||||
<el-select
|
||||
v-model="handle_user"
|
||||
placeholder="配料人"
|
||||
clearable
|
||||
multiple
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<!-- 七车间 -->
|
||||
<el-form v-if="activeType=='7车间'" ref="ruleForm" :model="form" :rules="rules" label-width="120px">
|
||||
<el-row>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="锅号">
|
||||
<el-select
|
||||
v-model="form.equipment"
|
||||
placeholder="锅号"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in equipmentOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="第几锅">
|
||||
<el-select
|
||||
v-model="form.index"
|
||||
placeholder="第几锅"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in 8"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="产品名称" prop="material">
|
||||
<el-select
|
||||
v-model="form.material_out"
|
||||
placeholder="产品名称"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in materialOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="产品规格" prop="material">
|
||||
<el-select
|
||||
v-model="form.cate"
|
||||
placeholder="产品规格"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in cateOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="产品编号">
|
||||
<el-input-number
|
||||
v-model="form.count_real"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="请输入批次号">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="配粉料数(kg)">
|
||||
<el-input-number
|
||||
v-model="form.count_real_eweight"
|
||||
controls-position="right"
|
||||
:min="0"
|
||||
step="1"
|
||||
:precision="2"
|
||||
style="width:100%"
|
||||
placeholder="请输入配粉料数(kg)">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="生产量">
|
||||
<el-input-number
|
||||
v-model="form.count_real"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="生产量">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="合格量">
|
||||
<el-input-number
|
||||
v-model="form.count_ok"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="合格量">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="合格率">
|
||||
<el-input-number
|
||||
v-model="form.count_ok"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="合格率">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="退火炉号">
|
||||
<el-select
|
||||
v-model="form.cate"
|
||||
placeholder="退火炉号"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in 8"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="是否加氧">
|
||||
<el-select
|
||||
v-model="form.o2"
|
||||
placeholder="是否加氧"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in yseorno"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item prop="type" label="成型人">
|
||||
<el-select
|
||||
v-model="form.handle_user"
|
||||
placeholder="成型人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
: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 prop="type" label="切料人">
|
||||
<el-select
|
||||
v-model="form.handle_user"
|
||||
placeholder="切料人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<!-- 十车间 -->
|
||||
<el-form v-if="activeType=='10车间'" ref="ruleForm" :model="form" :rules="rules" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="产品规格" prop="material">
|
||||
<el-select
|
||||
v-model="form.cate"
|
||||
placeholder="产品规格"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in cateOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="班次" prop="material">
|
||||
<el-select
|
||||
v-model="form.shift"
|
||||
placeholder="班次"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in shiftOptions"
|
||||
:key="item"
|
||||
:label="item"
|
||||
:value="item"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item label="合格数量" width="100">
|
||||
<el-input-number
|
||||
v-model="form.count_ok"
|
||||
controls-position="right"
|
||||
:min="0" step="1"
|
||||
:step-strictly="true"
|
||||
style="width:100%"
|
||||
placeholder="请输入合格数量">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :md="12" :sm="24">
|
||||
<el-form-item prop="type" label="成型人">
|
||||
<el-select
|
||||
v-model="form.handle_user"
|
||||
placeholder="成型人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
: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 prop="type" label="带班人">
|
||||
<el-select
|
||||
v-model="form.handle_leader"
|
||||
placeholder="带班人"
|
||||
clearable
|
||||
style="width:100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in userList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-footer>
|
||||
<el-button type="primary" v-loading="isSaveing" @click="submit">提交</el-button>
|
||||
<el-button @click="resetForm">取消</el-button>
|
||||
|
||||
</el-footer>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
emits: ["success", "closed"],
|
||||
props:{
|
||||
mtask: { type: String, default: '' },
|
||||
activeType:{ type: String, default: '' },
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
yseorno:['是','否'],
|
||||
loading: false,
|
||||
mode: "add",
|
||||
titleMap: {
|
||||
add: "新增记录",
|
||||
edit: "编辑记录",
|
||||
show: "查看记录",
|
||||
},
|
||||
handle_user:[],
|
||||
form:{},
|
||||
userList:[],
|
||||
cateOptions:[],
|
||||
mgroupOptions:[],
|
||||
materialOptions:[],
|
||||
equipmentOptions:[],
|
||||
shiftOptions:['白班','夜班'],
|
||||
visible: false,
|
||||
isSaveing: false,
|
||||
setFiltersVisible: false,
|
||||
handle_name:'',
|
||||
leader_name:'',
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.getMaterial();
|
||||
this.getUserList();
|
||||
this.getEquipment();
|
||||
this.getMgroupList();
|
||||
let date = new Date();
|
||||
let year = date.getFullYear();
|
||||
let month = date.getMonth()+1;
|
||||
let day = date.getDate();
|
||||
this.form.handle_date = year+'-'+month+'-'+day;
|
||||
},
|
||||
methods: {
|
||||
getUserList(){
|
||||
let that = this;
|
||||
this.$API.system.user.list.req({belong_dept__name:this.activeType,page:0}).then(res=>{
|
||||
that.userList = res;
|
||||
});
|
||||
},
|
||||
//获取集合列表
|
||||
getMgroupList(){
|
||||
let that = this;
|
||||
this.$API.mtm.mgroup.list.req({page:0,cate:'photon'}).then(res=>{
|
||||
let data = res.filter(item=>{
|
||||
return item.process_cate=='成型'
|
||||
})
|
||||
that.mgroupOptions = data;
|
||||
})
|
||||
},
|
||||
//获取设备列表
|
||||
getEquipment(){
|
||||
this.$API.em.equipment.list.req({page:0,type:10}).then(res=>{
|
||||
this.equipmentOptions = res;
|
||||
})
|
||||
},
|
||||
getMaterial(){
|
||||
let obj ={};
|
||||
obj.page = 0;
|
||||
obj.type = 20;
|
||||
obj.is_hidden = false;
|
||||
this.$API.mtm.material.list.req(obj).then(res=>{
|
||||
this.materialOptions = res;
|
||||
})
|
||||
},
|
||||
//显示
|
||||
open(mode = "add") {
|
||||
this.mode = mode;
|
||||
this.visible = true;
|
||||
return this;
|
||||
},
|
||||
//提交
|
||||
submit() {
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.isSaveing = true;
|
||||
if(this.mtask!==''){
|
||||
this.form.mtask = this.mtask;
|
||||
}else{
|
||||
this.form.handle_user = this.handle_user.join(',');
|
||||
}
|
||||
if (this.mode == "add") {
|
||||
this.$API.wpm.mlog.create.req(this.form).then(res=>{
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
}).catch( (err) =>{
|
||||
//可以处理校验错误
|
||||
this.isSaveing = false;
|
||||
return err;
|
||||
})
|
||||
} else if (this.mode == "edit") {
|
||||
this.$API.wpm.mlog.update.req(this.form.id,this.form).then(res=>{
|
||||
this.isSaveing = false;
|
||||
this.$emit("success", this.form, this.mode);
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功");
|
||||
}).catch( (err) =>{
|
||||
//可以处理校验错误
|
||||
this.isSaveing = false;
|
||||
return err;
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
//表单注入数据
|
||||
setData(data) {
|
||||
Object.assign(this.form, data);
|
||||
if(this.activeType=='8车间'){
|
||||
if(this.form.handle_user.indexOf(',')>-1){
|
||||
this.handle_user = this.form.handle_user.split(',')
|
||||
}else{
|
||||
this.handle_user = [this.form.handle_user];
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
//设置过滤项
|
||||
setFilters(filters) {
|
||||
this.selectionFilters = filters;
|
||||
this.setFiltersVisible = true;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue