fix: 一些bug调整
This commit is contained in:
parent
4801c126c7
commit
93a85eb192
|
@ -2,90 +2,92 @@
|
||||||
<div ref="ganttContainer"></div>
|
<div ref="ganttContainer"></div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import {gantt} from 'dhtmlx-gantt';
|
import { gantt } from 'dhtmlx-gantt';
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
tasks: {
|
tasks: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default () {
|
default() {
|
||||||
return {
|
return {
|
||||||
data: [],
|
data: [],
|
||||||
links: [],
|
links: [],
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
start_date:{
|
|
||||||
type:String,
|
|
||||||
default () {
|
|
||||||
return ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
end_date:{
|
|
||||||
type:String,
|
|
||||||
default () {
|
|
||||||
return ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
mounted: function () {
|
start_date: {
|
||||||
gantt.clearAll();// 清空之前的配置
|
type: String,
|
||||||
gantt.i18n.setLocale('cn'); // 设置中文
|
default() {
|
||||||
gantt.config.date_format = "%Y-%m-%d";
|
return ''
|
||||||
gantt.config.date_grid = "%Y/%m/%d";
|
}
|
||||||
gantt.config.readonly = true; // 设置中文
|
},
|
||||||
gantt.config.autosize = true;//自适应尺寸
|
end_date: {
|
||||||
gantt.plugins({tooltip: true});
|
type: String,
|
||||||
gantt.config.bar_height = 20; //task高度
|
default() {
|
||||||
// gantt.config.start_date = new Date(2023, 9, 1);
|
return ''
|
||||||
// gantt.config.end_date = new Date(2023, 9, 10);
|
}
|
||||||
//更改父项图标
|
},
|
||||||
// gantt.templates.grid_folder = (item) => {
|
},
|
||||||
// return ""
|
mounted: function () {
|
||||||
// }
|
gantt.clearAll();// 清空之前的配置
|
||||||
//更改子项图标
|
gantt.i18n.setLocale('cn'); // 设置中文
|
||||||
// gantt.templates.grid_file = (item) => {
|
gantt.config.date_format = "%Y-%m-%d";
|
||||||
// return ""
|
gantt.config.date_grid = "%Y/%m/%d";
|
||||||
// }
|
gantt.config.readonly = true; // 设置中文
|
||||||
gantt.config.columns = [
|
gantt.config.autosize = true;//自适应尺寸
|
||||||
{name: 'number',label: '任务编号',tree: true,width: '*',align: 'left'},
|
gantt.plugins({ tooltip: true });
|
||||||
{name: 'cate',label: '规格型号', width: '70',align: 'center'},
|
gantt.config.bar_height = 20; //task高度
|
||||||
{name: 'count',label: '完成量',width: '50', align: 'center'}
|
// gantt.config.start_date = new Date(2023, 9, 1);
|
||||||
];
|
// gantt.config.end_date = new Date(2023, 9, 10);
|
||||||
gantt.attachEvent('onGanttReady', function () {
|
//更改父项图标
|
||||||
gantt.templates.tooltip_text = function (start, end, task) {
|
// gantt.templates.grid_folder = (item) => {
|
||||||
return task.number +
|
// return ""
|
||||||
|
// }
|
||||||
|
//更改子项图标
|
||||||
|
// gantt.templates.grid_file = (item) => {
|
||||||
|
// return ""
|
||||||
|
// }
|
||||||
|
gantt.config.columns = [
|
||||||
|
{ name: 'number', label: '任务编号', tree: true, width: '200', align: 'left' },
|
||||||
|
{ name: 'material_name', label: '产品名称', width: '70', align: 'left' },
|
||||||
|
{ name: 'material_specification', label: '规格', width: '70', align: 'left' },
|
||||||
|
{ name: 'material_model', label: '型号', width: '70', align: 'left' },
|
||||||
|
{ name: 'count', label: '任务量', width: '50', align: 'center' }
|
||||||
|
];
|
||||||
|
gantt.attachEvent('onGanttReady', function () {
|
||||||
|
gantt.templates.tooltip_text = function (start, end, task) {
|
||||||
|
return task.number +
|
||||||
'<br/>计划产量:' + task.count +
|
'<br/>计划产量:' + task.count +
|
||||||
'<br/>当日产量:' + task.count_real +
|
'<br/>当日产量:' + task.count_real +
|
||||||
'<br/>完成产量:' + task.count_ok +
|
'<br/>完成产量:' + task.count_ok +
|
||||||
'<br/>开工时间:' + gantt.templates.tooltip_date_format(start) +
|
'<br/>开工时间:' + gantt.templates.tooltip_date_format(start) +
|
||||||
'<br/>完工时间:' + gantt.templates.tooltip_date_format(start);
|
'<br/>完工时间:' + gantt.templates.tooltip_date_format(start);
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
//自适应甘特图的尺寸大小, 使得在不出现滚动条的情况下, 显示全部任务
|
//自适应甘特图的尺寸大小, 使得在不出现滚动条的情况下, 显示全部任务
|
||||||
// gantt.config.autosize = true;
|
// gantt.config.autosize = true;
|
||||||
// gantt.config.open_split_tasks = true;
|
// gantt.config.open_split_tasks = true;
|
||||||
|
|
||||||
// gantt.config.scale_unit = "day";
|
// gantt.config.scale_unit = "day";
|
||||||
// gantt.config.step = 1;
|
// gantt.config.step = 1;
|
||||||
// gantt.config.date_scale = " %Y/%m/%d";
|
// gantt.config.date_scale = " %Y/%m/%d";
|
||||||
//时间轴样式
|
//时间轴样式
|
||||||
var yearScaleCss = function () {
|
var yearScaleCss = function () {
|
||||||
return 'yearScaleStyle';
|
return 'yearScaleStyle';
|
||||||
};
|
};
|
||||||
var monthScaleCss = function () {
|
var monthScaleCss = function () {
|
||||||
return 'monthScaleStyle';
|
return 'monthScaleStyle';
|
||||||
};
|
};
|
||||||
gantt.config.scales = [
|
gantt.config.scales = [
|
||||||
{ unit: 'year', step: 1, format: " %Y年", css: yearScaleCss },
|
{ unit: 'year', step: 1, format: " %Y年", css: yearScaleCss },
|
||||||
{ unit: 'day', step: 1, format: " %m月%d日", css: monthScaleCss }
|
{ unit: 'day', step: 1, format: " %m月%d日", css: monthScaleCss }
|
||||||
];
|
];
|
||||||
gantt.config.duration_step = 1;
|
gantt.config.duration_step = 1;
|
||||||
// 初始化甘特图
|
// 初始化甘特图
|
||||||
gantt.init(this.$refs.ganttContainer);
|
gantt.init(this.$refs.ganttContainer);
|
||||||
gantt.parse(this.$props.tasks);
|
gantt.parse(this.$props.tasks);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
}
|
||||||
<style>
|
</script>
|
||||||
@import "~dhtmlx-gantt/codebase/dhtmlxgantt.css";
|
<style>
|
||||||
</style>
|
@import "~dhtmlx-gantt/codebase/dhtmlxgantt.css";
|
||||||
|
</style>
|
|
@ -2,38 +2,23 @@
|
||||||
<el-container>
|
<el-container>
|
||||||
<el-header>
|
<el-header>
|
||||||
<div class="left-panel">
|
<div class="left-panel">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="add">新增</el-button>
|
<el-button type="primary" icon="el-icon-plus" @click="add" v-auth="'equipment.create'">新增</el-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-panel">
|
<div class="right-panel">
|
||||||
<el-input
|
<el-input v-model="query.search" placeholder="名称" clearable style="margin-right: 5px;"></el-input>
|
||||||
v-model="query.search"
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
|
||||||
placeholder="名称"
|
|
||||||
clearable
|
|
||||||
style="margin-right: 5px;"
|
|
||||||
></el-input>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
@click="handleQuery"
|
|
||||||
></el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</el-header>
|
</el-header>
|
||||||
<el-main class="nopadding">
|
<el-main class="nopadding">
|
||||||
<scTable
|
<scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="query">
|
||||||
ref="table"
|
<el-table-column type="index" width="50" />
|
||||||
:apiObj="apiObj"
|
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:params="query"
|
|
||||||
>
|
|
||||||
<el-table-column type="index" width="50"/>
|
|
||||||
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
|
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="设备编号" prop="number">
|
<el-table-column label="设备编号" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="型号规格" prop="model">
|
<el-table-column label="型号规格" prop="model">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="生产厂及国别" prop="factory" show-overflow-tooltip>
|
<el-table-column label="生产厂" prop="factory" show-overflow-tooltip>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="生产日期" prop="production_date">
|
<el-table-column label="生产日期" prop="production_date">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -41,13 +26,13 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="状态">
|
<el-table-column label="状态">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tag v-if="scope.row.state===10" type="success">
|
<el-tag v-if="scope.row.state === 10" type="success">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else-if="scope.row.state===20" type="warning">
|
<el-tag v-else-if="scope.row.state === 20" type="warning">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else-if="scope.row.state===30">
|
<el-tag v-else-if="scope.row.state === 30">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else type="danger">
|
<el-tag v-else type="danger">
|
||||||
|
@ -64,117 +49,76 @@
|
||||||
<el-table-column label="存放位置" show-overflow-tooltip>
|
<el-table-column label="存放位置" show-overflow-tooltip>
|
||||||
<template #default="scope">{{ scope.row.place }}</template>
|
<template #default="scope">{{ scope.row.place }}</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" show-overflow-tooltip>
|
<el-table-column label="备注" show-overflow-tooltip>
|
||||||
<template #default="scope">{{ scope.row.description }}</template>
|
<template #default="scope">{{ scope.row.description }}</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" fixed="right" align="left">
|
<el-table-column label="操作" fixed="right" align="left" width="180">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-link
|
<el-button link type="primary" @click="table_record(scope.row)" v-auth="'echeckrecord.create'">
|
||||||
type="primary"
|
巡检
|
||||||
@click="table_record (scope.row)"
|
</el-button>
|
||||||
v-auth="'equipment'"
|
|
||||||
>
|
|
||||||
巡检记录
|
|
||||||
</el-link>
|
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
<el-link
|
<el-button link type="warning" @click="table_edit(scope.row)" v-auth="'equipment.update'">
|
||||||
type="primary"
|
|
||||||
@click="table_edit(scope.row)"
|
|
||||||
v-auth="'equipment'"
|
|
||||||
>
|
|
||||||
编辑
|
编辑
|
||||||
</el-link>
|
</el-button>
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
<el-link
|
<el-button link type="danger" @click="table_del(scope.row)" v-auth="'equipment.delete'">
|
||||||
type="danger"
|
|
||||||
@click="table_del(scope.row)"
|
|
||||||
v-auth="'equipment'"
|
|
||||||
>
|
|
||||||
删除
|
删除
|
||||||
</el-link>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</scTable>
|
</scTable>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
<save-dialog
|
<save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess"
|
||||||
v-if="dialog.save"
|
@closed="dialog.save = false"></save-dialog>
|
||||||
ref="saveDialog"
|
<el-drawer title="检定记录" v-model="visibleRecord" :size="1000" destroy-on-close @closed="visibleRecord = false">
|
||||||
@success="handleSaveSuccess"
|
<el-container v-loading="loading">
|
||||||
@closed="dialog.save = false"
|
<el-button type="primary" icon="el-icon-plus" @click="record_create" v-auth="'equipment'"
|
||||||
></save-dialog>
|
style="position: absolute;z-index: 10;left: 110px;top: 16px;"></el-button>
|
||||||
<el-drawer
|
<el-main style="padding: 0 20px 20px 20px">
|
||||||
title="检定记录"
|
<scTable ref="drawer_table" :apiObj="apiObj2" row-key="id" stripe :params="query2">
|
||||||
v-model="visibleRecord"
|
<el-table-column type="index" width="50" />
|
||||||
:size="1000"
|
<el-table-column label="设备名称" prop="equipment_name" show-overflow-tooltip>
|
||||||
destroy-on-close
|
</el-table-column>
|
||||||
@closed="visibleRecord=false"
|
<el-table-column label="巡检时间" prop="inspect_time">
|
||||||
>
|
</el-table-column>
|
||||||
<el-container v-loading="loading">
|
<el-table-column label="巡检结果" prop="result">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="record_create" v-auth="'equipment'" style="position: absolute;z-index: 10;left: 110px;top: 16px;"></el-button>
|
<template #default="scope">
|
||||||
<el-main style="padding: 0 20px 20px 20px">
|
<span>{{ results_[scope.row.result] }}</span>
|
||||||
<scTable
|
</template>
|
||||||
ref="drawer_table"
|
</el-table-column>
|
||||||
:apiObj="apiObj2"
|
<el-table-column label="巡检人" prop="inspect_user_name">
|
||||||
row-key="id"
|
</el-table-column>
|
||||||
stripe
|
<el-table-column label="操作" fixed="right" align="center" width="160px">
|
||||||
:params="query2"
|
<template #default="scope">
|
||||||
>
|
<el-link type="danger" @click="record_del(scope.row)" v-auth="'equipment.delete'">
|
||||||
<el-table-column type="index" width="50"/>
|
删除
|
||||||
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
|
</el-link>
|
||||||
</el-table-column>
|
</template>
|
||||||
<el-table-column label="巡检时间" prop="inspect_time">
|
</el-table-column>
|
||||||
</el-table-column>
|
</scTable>
|
||||||
<el-table-column label="巡检结果" prop="result">
|
</el-main>
|
||||||
<template #default="scope">
|
</el-container>
|
||||||
<span>{{results_[scope.row.result]}}</span>
|
</el-drawer>
|
||||||
</template>
|
<el-dialog title="设备巡检" v-model="visible">
|
||||||
</el-table-column>
|
<el-form ref="dialogForm" :rules="rules" label-width="100px" :model="form">
|
||||||
<el-table-column label="巡检人" prop="production_date">
|
<el-row>
|
||||||
</el-table-column>
|
<el-col :md="12" :sm="24" prop="inspect_time">
|
||||||
<el-table-column label="操作" fixed="right" align="center" width="160px">
|
<el-form-item label="巡检时间">
|
||||||
<template #default="scope">
|
<el-date-picker v-model="form.inspect_time" type="datetime" placeholder="巡检时间"
|
||||||
<el-link
|
value-format="YYYY-MM-DD HH:mm:ss" style="width:100%">
|
||||||
type="danger"
|
</el-date-picker>
|
||||||
@click="record_del(scope.row)"
|
</el-form-item>
|
||||||
v-auth="'equipment.delete'"
|
</el-col>
|
||||||
>
|
<el-col :md="12" :sm="24">
|
||||||
删除
|
<el-form-item label="巡检人" prop="inspect_user">
|
||||||
</el-link>
|
<span style="display:flex">
|
||||||
</template>
|
<el-input readonly v-model="form.inspect_user_name"></el-input>
|
||||||
</el-table-column>
|
<ehsUserSelect :multiple="false" @submit="getReceptionist" />
|
||||||
</scTable>
|
</span>
|
||||||
</el-main>
|
</el-form-item>
|
||||||
</el-container>
|
<!-- <el-form-item label="巡检人" prop="inspect_user">
|
||||||
</el-drawer>
|
|
||||||
<el-dialog title="设备巡检" v-model="visible">
|
|
||||||
<el-form
|
|
||||||
ref="dialogForm"
|
|
||||||
:rules="rules"
|
|
||||||
label-width="100px"
|
|
||||||
:model="form"
|
|
||||||
>
|
|
||||||
<el-row>
|
|
||||||
<el-col :md="12" :sm="24" prop="inspect_time">
|
|
||||||
<el-form-item label="巡检时间">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="form.inspect_time"
|
|
||||||
type="datetime"
|
|
||||||
placeholder="巡检时间"
|
|
||||||
value-format="YYYY-MM-DD HH:mm:ss"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="巡检人" prop="inspect_user">
|
|
||||||
<span style="display:flex">
|
|
||||||
<el-input readonly v-model="form.inspect_user_name"></el-input>
|
|
||||||
<ehsUserSelect :multiple="false" @submit="getReceptionist"/>
|
|
||||||
</span>
|
|
||||||
</el-form-item>
|
|
||||||
<!-- <el-form-item label="巡检人" prop="inspect_user">
|
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.inspect_user"
|
v-model="form.inspect_user"
|
||||||
placeholder="巡检人"
|
placeholder="巡检人"
|
||||||
|
@ -189,31 +133,27 @@
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="巡检结果" prop="result">
|
<el-form-item label="巡检结果" prop="result">
|
||||||
<el-select style="width: 100%" v-model="form.result" placeholder="巡检结果">
|
<el-select style="width: 100%" v-model="form.result" placeholder="巡检结果">
|
||||||
<el-option
|
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id">
|
||||||
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-input v-model="form.note" placeholder="备注" />
|
||||||
</el-col>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="备注">
|
</el-row>
|
||||||
<el-input v-model="form.note" placeholder="备注"/>
|
</el-form>
|
||||||
</el-form-item>
|
<el-footer>
|
||||||
</el-col>
|
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
|
||||||
</el-row>
|
<el-button @click="visible = false">取消</el-button>
|
||||||
</el-form>
|
</el-footer>
|
||||||
<el-footer>
|
</el-dialog>
|
||||||
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
|
|
||||||
<el-button @click="visible = false">取消</el-button>
|
|
||||||
</el-footer>
|
|
||||||
</el-dialog>
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import saveDialog from "./equipment_form.vue";
|
import saveDialog from "./equipment_form.vue";
|
||||||
|
@ -229,85 +169,85 @@ export default {
|
||||||
},
|
},
|
||||||
apiObj: this.$API.em.equipment.list,
|
apiObj: this.$API.em.equipment.list,
|
||||||
query: {
|
query: {
|
||||||
page:1,
|
page: 1,
|
||||||
page_size:20,
|
page_size: 20,
|
||||||
type:10
|
type: 10
|
||||||
},
|
},
|
||||||
apiObj2: this.$API.em.einspect.list,
|
apiObj2: this.$API.em.einspect.list,
|
||||||
query2: {
|
query2: {
|
||||||
equipment:''
|
equipment: ''
|
||||||
},
|
},
|
||||||
selection: [],
|
selection: [],
|
||||||
state_: {
|
state_: {
|
||||||
10: '完好',
|
10: '完好',
|
||||||
20: '限用',
|
20: '限用',
|
||||||
30: '在修',
|
30: '在修',
|
||||||
40: '禁用',
|
40: '禁用',
|
||||||
},
|
},
|
||||||
results_:{
|
results_: {
|
||||||
'pass': '合格',
|
'pass': '合格',
|
||||||
'fail': '不合格',
|
'fail': '不合格',
|
||||||
},
|
},
|
||||||
options:[
|
options: [
|
||||||
{id:'pass',name: '合格'},
|
{ id: 'pass', name: '合格' },
|
||||||
{id:'fail',name: '不合格'}
|
{ id: 'fail', name: '不合格' }
|
||||||
],
|
],
|
||||||
form:{},
|
form: {},
|
||||||
rules: {
|
rules: {
|
||||||
check_date: [{ required: true, message: "请选择检验时间" }],
|
check_date: [{ required: true, message: "请选择检验时间" }],
|
||||||
check_organization: [{ required: true, message: "请填写检定机构" }],
|
check_organization: [{ required: true, message: "请填写检定机构" }],
|
||||||
},
|
},
|
||||||
item:{},
|
item: {},
|
||||||
visible:false,
|
visible: false,
|
||||||
visibleRecord:false,
|
visibleRecord: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted(){
|
mounted() {
|
||||||
this.getUserList();
|
this.getUserList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
//获取员工
|
//获取员工
|
||||||
getUserList(){
|
getUserList() {
|
||||||
let that = this;
|
let that = this;
|
||||||
this.$API.system.user.list.req({page_size:20,page:1}).then(res=>{
|
this.$API.system.user.list.req({ page_size: 20, page: 1 }).then(res => {
|
||||||
that.userList = res.results;
|
that.userList = res.results;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
getReceptionist(data) {
|
getReceptionist(data) {
|
||||||
this.form.inspect_user=data.id;
|
this.form.inspect_user = data.id;
|
||||||
this.form.inspect_user_name=data.name;
|
this.form.inspect_user_name = data.name;
|
||||||
},
|
},
|
||||||
//添加
|
//添加
|
||||||
add() {
|
add() {
|
||||||
this.dialog.save = true;
|
this.dialog.save = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.saveDialog.open("add",10);
|
this.$refs.saveDialog.open("add", 10);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//编辑
|
//编辑
|
||||||
table_edit(row) {
|
table_edit(row) {
|
||||||
this.dialog.save = true;
|
this.dialog.save = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.saveDialog.open("edit",10).setData(row);
|
this.$refs.saveDialog.open("edit", 10).setData(row);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//查看
|
//查看
|
||||||
table_show(row) {
|
table_show(row) {
|
||||||
this.dialog.save = true;
|
this.dialog.save = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.saveDialog.open("show",10).setData(row);
|
this.$refs.saveDialog.open("show", 10).setData(row);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
table_record(row){
|
table_record(row) {
|
||||||
this.item = row;
|
this.item = row;
|
||||||
this.form.equipment = row.id;
|
this.form.equipment = row.id;
|
||||||
this.query2.equipment = row.id;
|
this.query2.equipment = row.id;
|
||||||
this.$nextTick(()=>{
|
this.$nextTick(() => {
|
||||||
this.visibleRecord = true;
|
this.visibleRecord = true;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
//新增检验
|
//新增检验
|
||||||
record_create(){
|
record_create() {
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
},
|
},
|
||||||
//提交检验
|
//提交检验
|
||||||
|
@ -315,12 +255,12 @@ export default {
|
||||||
this.$refs.dialogForm.validate(async (valid) => {
|
this.$refs.dialogForm.validate(async (valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
this.isSaveing = true;
|
this.isSaveing = true;
|
||||||
this.$API.em.einspect.create.req(this.form).then(res=>{
|
this.$API.em.einspect.create.req(this.form).then(res => {
|
||||||
this.visible = false;
|
this.visible = false;
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
this.$message.success("操作成功");
|
this.$message.success("操作成功");
|
||||||
this.$refs.drawer_table.refresh();
|
this.$refs.drawer_table.refresh();
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -348,8 +288,8 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
this.$refs.table.queryData(this.query)
|
this.$refs.table.queryData(this.query)
|
||||||
},
|
},
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.query = {};
|
this.query = {};
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,267 +1,184 @@
|
||||||
<template>
|
<template>
|
||||||
<el-drawer
|
<el-drawer :title="titleMap[mode]" v-model="visible" :size="1000" destroy-on-close @closed="$emit('closed')">
|
||||||
:title="titleMap[mode]"
|
|
||||||
v-model="visible"
|
|
||||||
:size="1000"
|
|
||||||
destroy-on-close
|
|
||||||
@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" :model="form" :rules="rules" :disabled="mode == 'show'" label-width="100px"
|
||||||
ref="dialogForm"
|
v-if="form.type == 10">
|
||||||
:model="form"
|
<el-row>
|
||||||
:rules="rules"
|
<el-col :md="12" :sm="24">
|
||||||
:disabled="mode == 'show'"
|
<el-form-item label="所属部门">
|
||||||
label-width="100px"
|
<el-select v-model="form.belong_dept" placeholder="所属部门" clearable style="width: 100%"
|
||||||
v-if="form.type==10"
|
@change="deptChange">
|
||||||
>
|
<el-option v-for="item in group" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
<el-row>
|
</el-select>
|
||||||
<el-col :md="12" :sm="24">
|
</el-form-item>
|
||||||
<el-form-item label="所属部门">
|
</el-col>
|
||||||
<el-select
|
<el-col :md="12" :sm="24">
|
||||||
v-model="form.belong_dept"
|
<el-form-item label="所属工段">
|
||||||
placeholder="所属部门"
|
<el-select v-model="form.mgroup" placeholder="所属工段" clearable style="width: 100%">
|
||||||
clearable
|
<el-option v-for="item in mgroups" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
style="width: 100%"
|
</el-select>
|
||||||
@change="deptChange"
|
</el-form-item>
|
||||||
>
|
</el-col>
|
||||||
<el-option
|
<el-col :md="12" :sm="24">
|
||||||
v-for="item in group"
|
<el-form-item label="设备名称" prop="name">
|
||||||
:key="item.id"
|
<el-input v-model="form.name" placeholder="设备名称" />
|
||||||
: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="设备编号" prop="number">
|
||||||
</el-form-item>
|
<el-input v-model="form.number" placeholder="设备编号" />
|
||||||
</el-col>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="所属工段">
|
<el-col :md="12" :sm="24">
|
||||||
<el-select
|
<el-form-item label="型号规格">
|
||||||
v-model="form.mgroup"
|
<el-input v-model="form.model" placeholder="规格型号规格" />
|
||||||
placeholder="所属工段"
|
</el-form-item>
|
||||||
clearable
|
</el-col>
|
||||||
style="width: 100%"
|
<el-col :md="12" :sm="24">
|
||||||
>
|
<el-form-item label="生产厂">
|
||||||
<el-option
|
<el-input v-model="form.factory" placeholder="生产厂" />
|
||||||
v-for="item in mgroups"
|
</el-form-item>
|
||||||
:key="item.id"
|
</el-col>
|
||||||
:label="item.name"
|
<el-col :md="12" :sm="24">
|
||||||
:value="item.id"
|
<el-form-item label="状态">
|
||||||
></el-option>
|
<el-select style="width: 100%" v-model="form.state" placeholder="请选择">
|
||||||
</el-select>
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
|
||||||
</el-form-item>
|
</el-option>
|
||||||
</el-col>
|
</el-select>
|
||||||
<el-col :md="12" :sm="24">
|
</el-form-item>
|
||||||
<el-form-item label="设备名称" prop="name">
|
</el-col>
|
||||||
<el-input v-model="form.name" placeholder="设备名称"/>
|
</el-row>
|
||||||
</el-form-item>
|
<el-row>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="生产日期">
|
||||||
<el-form-item label="设备编号" prop="number">
|
<el-date-picker v-model="form.production_date" type="date" placeholder="选择日期" value-format="YYYY-MM-DD"
|
||||||
<el-input v-model="form.number" placeholder="设备编号"/>
|
style="width:100%">
|
||||||
</el-form-item>
|
</el-date-picker>
|
||||||
</el-col>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="型号规格">
|
<el-col :md="12" :sm="24">
|
||||||
<el-input v-model="form.model" placeholder="规格型号规格"/>
|
<el-form-item label="购置日期">
|
||||||
</el-form-item>
|
<el-date-picker v-model="form.buy_date" type="date" placeholder="选择日期" value-format="YYYY-MM-DD"
|
||||||
</el-col>
|
style="width:100%">
|
||||||
<el-col :md="12" :sm="24">
|
</el-date-picker>
|
||||||
<el-form-item label="生产厂">
|
</el-form-item>
|
||||||
<el-input v-model="form.factory" placeholder="生产厂"/>
|
</el-col>
|
||||||
</el-form-item>
|
<el-col :md="12" :sm="24" v-if="baseInfo.name == 'enm'">
|
||||||
</el-col>
|
<el-form-item label="用电功率">
|
||||||
<el-col :md="12" :sm="24">
|
<el-input-number v-model="form.power_kw" :precision="2" :min="0" controls-position="right"
|
||||||
<el-form-item label="状态">
|
placeholder="用电功率" />
|
||||||
<el-select style="width: 100%" v-model="form.state" placeholder="请选择">
|
</el-form-item>
|
||||||
<el-option
|
</el-col>
|
||||||
v-for="item in options"
|
<el-col :md="12" :sm="24">
|
||||||
:key="item.value"
|
<el-form-item label="责任人" prop="leader_name">
|
||||||
:label="item.label"
|
<span style="display:flex">
|
||||||
:value="item.value">
|
<el-input readonly v-model="form.keeper_name"></el-input>
|
||||||
</el-option>
|
<ehsUserSelect :multiple="false" @submit="getReceptionist" />
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="生产日期">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="form.production_date"
|
|
||||||
type="date"
|
|
||||||
placeholder="选择日期"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="购置日期">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="form.buy_date"
|
|
||||||
type="date"
|
|
||||||
placeholder="选择日期"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="用电功率">
|
|
||||||
<el-input-number v-model="form.power_kw" :precision="2" :min="0" controls-position="right" placeholder="用电功率"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="责任人" prop="leader_name">
|
|
||||||
<span style="display:flex">
|
|
||||||
<el-input readonly v-model="form.keeper_name"></el-input>
|
|
||||||
<ehsUserSelect :multiple="false" @submit="getReceptionist"/>
|
|
||||||
</span>
|
</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="存放位置">
|
<el-form-item label="存放位置">
|
||||||
<el-input v-model="form.place" placeholder="存放位置"/>
|
<el-input v-model="form.place" placeholder="存放位置" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="技术参数">
|
<el-form-item label="技术参数">
|
||||||
<el-input
|
<el-input type="textarea" :rows="4" v-model="form.parameter" placeholder="技术参数" />
|
||||||
type="textarea"
|
</el-form-item>
|
||||||
:rows="4"
|
</el-col>
|
||||||
v-model="form.parameter"
|
<el-col :md="12" :sm="24">
|
||||||
placeholder="技术参数"
|
<el-form-item label="备注">
|
||||||
/>
|
<el-input type="textarea" :rows="4" v-model="form.description" placeholder="备注" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
</el-row>
|
||||||
<el-form-item label="描述">
|
|
||||||
<el-input
|
|
||||||
type="textarea"
|
|
||||||
:rows="4"
|
|
||||||
v-model="form.description"
|
|
||||||
placeholder="描述"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-form
|
<el-form ref="dialogForm" :model="form" :rules="rules" :disabled="mode == 'show'" label-width="120px"
|
||||||
ref="dialogForm"
|
v-if="form.type == 20">
|
||||||
:model="form"
|
<el-row>
|
||||||
:rules="rules"
|
<el-col :md="12" :sm="24">
|
||||||
:disabled="mode == 'show'"
|
<el-form-item label="所属部门" prop="belong_dept">
|
||||||
label-width="120px"
|
<el-select v-model="form.belong_dept" placeholder="所属部门" clearable style="width: 100%">
|
||||||
v-if="form.type==20"
|
<el-option v-for="item in group" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
>
|
</el-select>
|
||||||
<el-row>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="所属部门" prop="belong_dept">
|
<el-col :md="12" :sm="24">
|
||||||
<el-select
|
<el-form-item label="计量编号" prop="number">
|
||||||
v-model="form.belong_dept"
|
<el-input v-model="form.number" placeholder="设备编号" />
|
||||||
placeholder="所属部门"
|
</el-form-item>
|
||||||
clearable
|
</el-col>
|
||||||
style="width: 100%"
|
<el-col :md="12" :sm="24">
|
||||||
>
|
<el-form-item label="设备名称" prop="name">
|
||||||
<el-option
|
<el-input v-model="form.name" placeholder="设备名称" />
|
||||||
v-for="item in group"
|
</el-form-item>
|
||||||
:key="item.id"
|
</el-col>
|
||||||
:label="item.name"
|
<el-col :md="12" :sm="24">
|
||||||
:value="item.id"
|
<el-form-item label="规格型号">
|
||||||
></el-option>
|
<el-input v-model="form.model" placeholder="规格型号" />
|
||||||
</el-select>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="仪表类型">
|
||||||
<el-form-item label="计量编号" prop="number">
|
<el-input v-model="form.meter_type" placeholder="仪表类型" />
|
||||||
<el-input v-model="form.number" placeholder="设备编号"/>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="量范">
|
||||||
<el-form-item label="设备名称" prop="name">
|
<el-input v-model="form.measurement_range" placeholder="量范" />
|
||||||
<el-input v-model="form.name" placeholder="设备名称"/>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="启用日期">
|
||||||
<el-form-item label="规格型号">
|
<el-date-picker v-model="form.use_date" type="date" placeholder="启用日期" value-format="YYYY-MM-DD"
|
||||||
<el-input v-model="form.model" placeholder="规格型号"/>
|
style="width:100%">
|
||||||
</el-form-item>
|
</el-date-picker>
|
||||||
</el-col>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="仪表类型">
|
<el-col :md="12" :sm="24">
|
||||||
<el-input v-model="form.meter_type" placeholder="仪表类型"/>
|
<el-form-item label="出厂编号">
|
||||||
</el-form-item>
|
<el-input placeholder="出厂编号" />
|
||||||
</el-col>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="量范">
|
<el-col :md="12" :sm="24">
|
||||||
<el-input v-model="form.measurement_range" placeholder="量范"/>
|
<el-form-item label="测量介质">
|
||||||
</el-form-item>
|
<el-input placeholder="测量介质" />
|
||||||
</el-col>
|
</el-form-item>
|
||||||
<el-col :md="12" :sm="24">
|
</el-col>
|
||||||
<el-form-item label="启用日期">
|
<el-col :md="12" :sm="24">
|
||||||
<el-date-picker
|
<el-form-item label="管理等级">
|
||||||
v-model="form.use_date"
|
<el-input v-model="form.management_level" placeholder="管理等级" />
|
||||||
type="date"
|
</el-form-item>
|
||||||
placeholder="启用日期"
|
</el-col>
|
||||||
value-format="YYYY-MM-DD"
|
<el-col :md="12" :sm="24">
|
||||||
style="width:100%"
|
<el-form-item label="精度等级">
|
||||||
>
|
<el-input v-model="form.accuracy_level" placeholder="精度等级" />
|
||||||
</el-date-picker>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="生产厂家">
|
||||||
<el-form-item label="出厂编号">
|
<el-input v-model="form.factory" placeholder="生产厂家" />
|
||||||
<el-input placeholder="出厂编号"/>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="安装位置">
|
||||||
<el-form-item label="测量介质">
|
<el-input v-model="form.place" placeholder="安装位置" />
|
||||||
<el-input placeholder="测量介质"/>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :md="12" :sm="24">
|
||||||
<el-col :md="12" :sm="24">
|
<el-form-item label="检定周期(月)">
|
||||||
<el-form-item label="管理等级">
|
<el-input-number v-model="form.cycle" :precision="1" :min="0" controls-position="right"
|
||||||
<el-input v-model="form.management_level" placeholder="管理等级"/>
|
style="width: 100%;" placeholder="检定周期(月)" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
</el-row>
|
||||||
<el-form-item label="精度等级">
|
<el-form-item label="备注">
|
||||||
<el-input v-model="form.accuracy_level" placeholder="精度等级"/>
|
<el-input type="textarea" :rows="4" v-model="form.description" placeholder="备注" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="生产厂家">
|
|
||||||
<el-input v-model="form.factory" placeholder="生产厂家"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="安装位置">
|
|
||||||
<el-input v-model="form.place" placeholder="安装位置"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="检定周期(月)">
|
|
||||||
<el-input-number v-model="form.cycle"
|
|
||||||
:precision="1" :min="0" controls-position="right"
|
|
||||||
style="width: 100%;"
|
|
||||||
placeholder="检定周期(月)"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-form-item label="备注">
|
|
||||||
<el-input
|
|
||||||
type="textarea"
|
|
||||||
:rows="4"
|
|
||||||
v-model="form.description"
|
|
||||||
placeholder="备注"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-main>
|
</el-main>
|
||||||
<el-footer>
|
<el-footer>
|
||||||
|
@ -286,28 +203,28 @@ export default {
|
||||||
show: "查看",
|
show: "查看",
|
||||||
},
|
},
|
||||||
form: {
|
form: {
|
||||||
type:10,
|
type: 10,
|
||||||
|
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
name: [{required: true, message: "请输入", trigger: "blur"}],
|
name: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||||
number: [{required: true, message: "请输入", trigger: "blur"}],
|
number: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||||
keeper_name: [{required: true, message: "请输入", trigger: "blur"}],
|
keeper_name: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||||
belong_dept: [{required: true, message: "请选择所属部门", trigger: "blur"}]
|
belong_dept: [{ required: true, message: "请选择所属部门", trigger: "blur" }]
|
||||||
},
|
},
|
||||||
options: [{
|
options: [{
|
||||||
value: 10,
|
value: 10,
|
||||||
label: '完好'
|
label: '完好'
|
||||||
}, {
|
}, {
|
||||||
value: 20,
|
value: 20,
|
||||||
label: '限用'
|
label: '限用'
|
||||||
}, {
|
}, {
|
||||||
value: 30,
|
value: 30,
|
||||||
label: '在修'
|
label: '在修'
|
||||||
}, {
|
}, {
|
||||||
value: 40,
|
value: 40,
|
||||||
label: '禁用'
|
label: '禁用'
|
||||||
}],
|
}],
|
||||||
visible: false,
|
visible: false,
|
||||||
isSaveing: false,
|
isSaveing: false,
|
||||||
keeperOptions: [],
|
keeperOptions: [],
|
||||||
|
@ -316,33 +233,39 @@ export default {
|
||||||
setFiltersVisible: false,
|
setFiltersVisible: false,
|
||||||
belong_dept_options: [],
|
belong_dept_options: [],
|
||||||
group: [],
|
group: [],
|
||||||
mgroups:[],
|
mgroups: [],
|
||||||
|
baseInfo: {}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getGroup();
|
this.getGroup();
|
||||||
|
this.getBaseInfo();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getBaseInfo() {
|
||||||
|
this.baseInfo = this.$TOOL.data.get('BASE_INFO').base
|
||||||
|
console.log(this.baseInfo)
|
||||||
|
},
|
||||||
//部门数据
|
//部门数据
|
||||||
getGroup() {
|
getGroup() {
|
||||||
this.$API.system.dept.list.req({type:'dept'}).then(res=>{
|
this.$API.system.dept.list.req({ type: 'dept' }).then(res => {
|
||||||
this.group = res.results;
|
this.group = res.results;
|
||||||
});
|
});
|
||||||
},
|
|
||||||
getReceptionist(data) {
|
|
||||||
this.form.keeper=data.id;
|
|
||||||
this.form.keeper_name=data.name
|
|
||||||
},
|
},
|
||||||
deptChange(){
|
getReceptionist(data) {
|
||||||
this.$API.mtm.mgroup.list.req({ page:0,belong_dept:this.form.belong_dept}).then(res=>{
|
this.form.keeper = data.id;
|
||||||
|
this.form.keeper_name = data.name
|
||||||
|
},
|
||||||
|
deptChange() {
|
||||||
|
this.$API.mtm.mgroup.list.req({ page: 0, belong_dept: this.form.belong_dept }).then(res => {
|
||||||
this.mgroups = res;
|
this.mgroups = res;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//显示
|
//显示
|
||||||
open(mode = "add",type) {
|
open(mode = "add", type) {
|
||||||
this.mode = mode;
|
this.mode = mode;
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
this.form.type=type;
|
this.form.type = type;
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
//表单提交方法
|
//表单提交方法
|
||||||
|
@ -376,6 +299,7 @@ export default {
|
||||||
//表单注入数据
|
//表单注入数据
|
||||||
setData(data) {
|
setData(data) {
|
||||||
Object.assign(this.form, data);
|
Object.assign(this.form, data);
|
||||||
|
this.deptChange()
|
||||||
},
|
},
|
||||||
//设置过滤项
|
//设置过滤项
|
||||||
setFilters(filters) {
|
setFilters(filters) {
|
||||||
|
@ -386,5 +310,4 @@ export default {
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style></style>
|
||||||
</style>
|
|
||||||
|
|
|
@ -2,31 +2,16 @@
|
||||||
<el-container>
|
<el-container>
|
||||||
<el-header>
|
<el-header>
|
||||||
<div class="left-panel">
|
<div class="left-panel">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="add">新增</el-button>
|
<el-button type="primary" icon="el-icon-plus" @click="add" v-auth="'equipment.create'">新增</el-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-panel">
|
<div class="right-panel">
|
||||||
<el-input
|
<el-input v-model="query.search" placeholder="名称" clearable style="margin-right: 5px;"></el-input>
|
||||||
v-model="query.search"
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
|
||||||
placeholder="名称"
|
|
||||||
clearable
|
|
||||||
style="margin-right: 5px;"
|
|
||||||
></el-input>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
@click="handleQuery"
|
|
||||||
></el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</el-header>
|
</el-header>
|
||||||
<el-main class="nopadding">
|
<el-main class="nopadding">
|
||||||
<scTable
|
<scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="query">
|
||||||
ref="table"
|
<el-table-column type="index" width="50" />
|
||||||
:apiObj="apiObj"
|
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:params="query"
|
|
||||||
>
|
|
||||||
<el-table-column type="index" width="50"/>
|
|
||||||
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
|
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="计量编号" prop="number">
|
<el-table-column label="计量编号" prop="number">
|
||||||
|
@ -45,17 +30,17 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="生产厂家" prop="factory" show-overflow-tooltip>
|
<el-table-column label="生产厂家" prop="factory" show-overflow-tooltip>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="检定周期(月)" prop="cycle">
|
<el-table-column label="检定周期/月" prop="cycle" width="100">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="检定日期" prop="check_date">
|
<el-table-column label="检定日期" prop="check_date" width="100">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tag v-if="scope.row.state===10" type="success">
|
<el-tag v-if="scope.row.state === 10" type="success">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else-if="scope.row.state===20" type="warning">
|
<el-tag v-else-if="scope.row.state === 20" type="warning">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else-if="scope.row.state===30">
|
<el-tag v-else-if="scope.row.state === 30">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else type="danger">
|
<el-tag v-else type="danger">
|
||||||
|
@ -63,63 +48,39 @@
|
||||||
</el-tag>
|
</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="检定结果" prop="check_date">
|
<el-table-column label="下次检定日期" prop="next_check_date" width="100">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="下次检定日期" prop="next_check_date">
|
<el-table-column label="精度等级" prop="accuracy_level" show-overflow-tooltip>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="精度等级" prop="factory" show-overflow-tooltip>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="安装位置" prop="place" show-overflow-tooltip>
|
<el-table-column label="安装位置" prop="place" show-overflow-tooltip>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" show-overflow-tooltip>
|
<el-table-column label="备注" show-overflow-tooltip>
|
||||||
<template #default="scope">{{ scope.row.description }}</template>
|
<template #default="scope">{{ scope.row.description }}</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" fixed="right" align="center" width="170px">
|
<el-table-column label="操作" fixed="right" align="center" width="170px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-link
|
<el-link type="primary" v-if="scope.row.cycle !== null" @click="table_record(scope.row)"
|
||||||
type="primary"
|
v-auth="'einspect.create'">
|
||||||
v-if="scope.row.cycle!==null"
|
检定记录
|
||||||
@click="table_record (scope.row)"
|
|
||||||
v-auth="'equipment'"
|
|
||||||
>
|
|
||||||
检定记录
|
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
<el-link
|
<el-link type="primary" @click="table_edit(scope.row)" v-auth="'equipment.update'">
|
||||||
type="primary"
|
|
||||||
@click="table_edit(scope.row)"
|
|
||||||
v-auth="'equipment'"
|
|
||||||
>
|
|
||||||
编辑
|
编辑
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
<el-link
|
<el-link type="danger" @click="table_del(scope.row)" v-auth="'equipment.delete'">
|
||||||
type="danger"
|
|
||||||
@click="table_del(scope.row)"
|
|
||||||
v-auth="'equipment'"
|
|
||||||
>
|
|
||||||
删除
|
删除
|
||||||
</el-link>
|
</el-link>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</scTable>
|
</scTable>
|
||||||
<el-dialog title="计量器具检验" v-model="visible">
|
<el-dialog title="计量器具检验" v-model="visible">
|
||||||
<el-form
|
<el-form ref="dialogForm" :rules="rules" label-width="100px" :model="form">
|
||||||
ref="dialogForm"
|
|
||||||
:rules="rules"
|
|
||||||
label-width="100px"
|
|
||||||
:model="form"
|
|
||||||
>
|
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :md="12" :sm="24" prop="check_date">
|
<el-col :md="12" :sm="24" prop="check_date">
|
||||||
<el-form-item label="检定时间">
|
<el-form-item label="检定时间">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.check_date" type="date" placeholder="检定时间" value-format="YYYY-MM-DD"
|
||||||
v-model="form.check_date"
|
style="width:100%">
|
||||||
type="date"
|
|
||||||
placeholder="检定时间"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
@ -131,18 +92,14 @@
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="检定结果" prop="result">
|
<el-form-item label="检定结果" prop="result">
|
||||||
<el-select style="width: 100%" v-model="form.result" placeholder="检定结果">
|
<el-select style="width: 100%" v-model="form.result" placeholder="检定结果">
|
||||||
<el-option
|
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id">
|
||||||
v-for="item in options"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id">
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="备注">
|
<el-form-item label="备注">
|
||||||
<el-input v-model="form.note" placeholder="备注"/>
|
<el-input v-model="form.note" placeholder="备注" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
@ -152,62 +109,41 @@
|
||||||
<el-button @click="visible = false">取消</el-button>
|
<el-button @click="visible = false">取消</el-button>
|
||||||
</el-footer>
|
</el-footer>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<el-drawer
|
<el-drawer title="检定记录" v-model="visibleRecord" :size="1000" destroy-on-close @closed="visibleRecord = false">
|
||||||
title="检定记录"
|
|
||||||
v-model="visibleRecord"
|
|
||||||
:size="1000"
|
|
||||||
destroy-on-close
|
|
||||||
@closed="visibleRecord=false"
|
|
||||||
>
|
|
||||||
<el-container v-loading="loading">
|
<el-container v-loading="loading">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="record_create" v-auth="'equipment'" style="position: absolute;z-index: 10;left: 110px;top: 16px;"></el-button>
|
<el-button type="primary" icon="el-icon-plus" @click="record_create" v-auth="'equipment'"
|
||||||
|
style="position: absolute;z-index: 10;left: 110px;top: 16px;"></el-button>
|
||||||
<el-main style="padding: 0 20px 20px 20px">
|
<el-main style="padding: 0 20px 20px 20px">
|
||||||
<scTable
|
<scTable ref="drawer_table" :apiObj="apiObj2" row-key="id" stripe :params="query2">
|
||||||
ref="drawer_table"
|
<el-table-column type="index" width="50" />
|
||||||
:apiObj="apiObj2"
|
<el-table-column label="设备名称" prop="equipment_name" show-overflow-tooltip>
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:params="query2"
|
|
||||||
>
|
|
||||||
<el-table-column type="index" width="50"/>
|
|
||||||
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="检定日期" prop="check_date">
|
<el-table-column label="检定日期" prop="check_date">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="检定结果" prop="result">
|
<el-table-column label="检定结果" prop="result">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{state_[scope.row.result]}}</span>
|
<span>{{ state_[scope.row.result] }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="检定周期(月)" prop="factory" show-overflow-tooltip>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="检定单位" prop="check_organization">
|
<el-table-column label="检定单位" prop="check_organization">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" fixed="right" align="center" width="160px">
|
<el-table-column label="操作" fixed="right" align="center" width="160px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-link
|
<el-link type="danger" @click="record_del(scope.row)" v-auth="'equipment.delete'">
|
||||||
type="danger"
|
删除
|
||||||
@click="record_del(scope.row)"
|
</el-link>
|
||||||
v-auth="'equipment.delete'"
|
</template>
|
||||||
>
|
</el-table-column>
|
||||||
删除
|
|
||||||
</el-link>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</scTable>
|
</scTable>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
<save-dialog
|
<save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess"
|
||||||
v-if="dialog.save"
|
@closed="dialog.save = false"></save-dialog>
|
||||||
ref="saveDialog"
|
|
||||||
@success="handleSaveSuccess"
|
|
||||||
@closed="dialog.save = false"
|
|
||||||
></save-dialog>
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import saveDialog from "./equipment_form.vue";
|
import saveDialog from "./equipment_form.vue";
|
||||||
export default {
|
export default {
|
||||||
name: "rparty",
|
name: "rparty",
|
||||||
|
@ -222,44 +158,44 @@ export default {
|
||||||
},
|
},
|
||||||
apiObj: this.$API.em.equipment.list,
|
apiObj: this.$API.em.equipment.list,
|
||||||
query: {
|
query: {
|
||||||
page:1,
|
page: 1,
|
||||||
page_size:20,
|
page_size: 20,
|
||||||
type:20,
|
type: 20,
|
||||||
},
|
},
|
||||||
apiObj2: this.$API.em.echeckrecord.list,
|
apiObj2: this.$API.em.echeckrecord.list,
|
||||||
query2: {
|
query2: {
|
||||||
page:1,
|
page: 1,
|
||||||
page_size:20,
|
page_size: 20,
|
||||||
equipment:''
|
equipment: ''
|
||||||
},
|
},
|
||||||
visible:false,
|
visible: false,
|
||||||
isSaveing:false,
|
isSaveing: false,
|
||||||
visibleRecord:false,
|
visibleRecord: false,
|
||||||
selection: [],
|
selection: [],
|
||||||
state_: {
|
state_: {
|
||||||
10: '完好',
|
10: '完好',
|
||||||
20: '限用',
|
20: '限用',
|
||||||
30: '在修',
|
30: '在修',
|
||||||
40: '禁用',
|
40: '禁用',
|
||||||
},
|
},
|
||||||
options:[
|
options: [
|
||||||
{id:10,name: '正常'},
|
{ id: 10, name: '正常' },
|
||||||
{id:20,name: '异常'}
|
{ id: 20, name: '异常' }
|
||||||
],
|
],
|
||||||
form:{},
|
form: {},
|
||||||
rules: {
|
rules: {
|
||||||
check_date: [{ required: true, message: "请选择检验时间" }],
|
check_date: [{ required: true, message: "请选择检验时间" }],
|
||||||
check_organization: [{ required: true, message: "请填写检定机构" }],
|
check_organization: [{ required: true, message: "请填写检定机构" }],
|
||||||
},
|
},
|
||||||
item:{},
|
item: {},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
table_record(row){
|
table_record(row) {
|
||||||
this.item = row;
|
this.item = row;
|
||||||
this.form.equipment = row.id;
|
this.form.equipment = row.id;
|
||||||
this.query2.equipment = row.id;
|
this.query2.equipment = row.id;
|
||||||
this.$nextTick(()=>{
|
this.$nextTick(() => {
|
||||||
this.visibleRecord = true;
|
this.visibleRecord = true;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
@ -267,21 +203,21 @@ export default {
|
||||||
add() {
|
add() {
|
||||||
this.dialog.save = true;
|
this.dialog.save = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.saveDialog.open("add",20);
|
this.$refs.saveDialog.open("add", 20);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//编辑
|
//编辑
|
||||||
table_edit(row) {
|
table_edit(row) {
|
||||||
this.dialog.save = true;
|
this.dialog.save = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.saveDialog.open("edit",20).setData(row);
|
this.$refs.saveDialog.open("edit", 20).setData(row);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//查看
|
//查看
|
||||||
table_show(row) {
|
table_show(row) {
|
||||||
this.dialog.save = true;
|
this.dialog.save = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.saveDialog.open("show",20).setData(row);
|
this.$refs.saveDialog.open("show", 20).setData(row);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//删除
|
//删除
|
||||||
|
@ -297,20 +233,21 @@ export default {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//新增检验
|
//新增检验
|
||||||
record_create(){
|
record_create() {
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
},
|
},
|
||||||
//提交检验
|
//提交检验
|
||||||
submit() {
|
submit() {
|
||||||
this.$refs.dialogForm.validate(async (valid) => {
|
this.$refs.dialogForm.validate(async (valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
this.isSaveing = true;
|
this.isSaveing = true;
|
||||||
this.$API.em.echeckrecord.create.req(this.form).then(res=>{
|
this.$API.em.echeckrecord.create.req(this.form).then(res => {
|
||||||
this.visible = false;
|
this.visible = false;
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
this.$message.success("操作成功");
|
this.$message.success("操作成功");
|
||||||
this.$refs.drawer_table.refresh();
|
this.$refs.drawer_table.refresh();
|
||||||
}).catch(()=>{
|
this.$refs.table.refresh();
|
||||||
|
}).catch(() => {
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -319,11 +256,12 @@ export default {
|
||||||
//删除检验
|
//删除检验
|
||||||
record_del(row) {
|
record_del(row) {
|
||||||
this.$API.em.echeckrecord.delete.req(row.id).then((res) => {
|
this.$API.em.echeckrecord.delete.req(row.id).then((res) => {
|
||||||
this.$message.success("删除成功");
|
this.$message.success("删除成功");
|
||||||
this.$refs.drawer_table.refresh();
|
this.$refs.drawer_table.refresh();
|
||||||
}).catch((err) => {
|
this.$refs.table.refresh();
|
||||||
return err;
|
}).catch((err) => {
|
||||||
});
|
return err;
|
||||||
|
});
|
||||||
},
|
},
|
||||||
//本地更新数据
|
//本地更新数据
|
||||||
handleSaveSuccess(data, mode) {
|
handleSaveSuccess(data, mode) {
|
||||||
|
@ -334,8 +272,8 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
this.$refs.table.queryData(this.query)
|
this.$refs.table.queryData(this.query)
|
||||||
},
|
},
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.query = {};
|
this.query = {};
|
||||||
},
|
},
|
||||||
|
|
|
@ -21,6 +21,10 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="物料名称" prop="name">
|
<el-table-column label="物料名称" prop="name">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column label="规格" prop="specification">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="型号" prop="model">
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="物料类别" prop="type">
|
<el-table-column label="物料类别" prop="type">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span><el-tag>{{ typeOptions[scope.row.type] }}</el-tag>
|
<span><el-tag>{{ typeOptions[scope.row.type] }}</el-tag>
|
||||||
|
@ -29,12 +33,11 @@
|
||||||
<el-tag type="warning" v-if="scope.row.is_hidden">隐</el-tag></span>
|
<el-tag type="warning" v-if="scope.row.is_hidden">隐</el-tag></span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="specification">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="关联物料" prop="brothers">
|
<el-table-column label="关联物料" prop="brothers">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-icon v-if="scope.row.brothers.length>0" color="green">
|
<el-icon v-if="scope.row.brothers.length > 0" color="green">
|
||||||
<CircleCheckFilled />
|
<CircleCheckFilled />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
|
@ -15,13 +15,18 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24" prop="cate">
|
<el-col :md="12" :sm="24" prop="cate">
|
||||||
<el-form-item label="物料cate">
|
<el-form-item label="物料系列">
|
||||||
<el-input v-model="form.cate" placeholder="物料名称" />
|
<el-input v-model="form.cate" placeholder="物料系列" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="规格型号">
|
<el-form-item label="规格">
|
||||||
<el-input v-model="form.specification" placeholder="规格型号" />
|
<el-input v-model="form.specification" placeholder="规格" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :md="12" :sm="24">
|
||||||
|
<el-form-item label="型号">
|
||||||
|
<el-input v-model="form.model" placeholder="型号" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
|
@ -33,19 +38,8 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="关联物料" prop="type">
|
<el-form-item label="关联物料" prop="type">
|
||||||
<el-select
|
<el-select v-model="brothers" placeholder="关联物料" clearable multiple style="width:100%">
|
||||||
v-model="brothers"
|
<el-option v-for="item in materialOptions" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
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-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
@ -93,7 +87,7 @@ export default {
|
||||||
edit: "编辑物料",
|
edit: "编辑物料",
|
||||||
show: "查看物料",
|
show: "查看物料",
|
||||||
},
|
},
|
||||||
brothers:[],
|
brothers: [],
|
||||||
form: {},
|
form: {},
|
||||||
rules: {
|
rules: {
|
||||||
name: [{ required: true, message: "请输入物料名称", trigger: "blur" }],
|
name: [{ required: true, message: "请输入物料名称", trigger: "blur" }],
|
||||||
|
@ -111,9 +105,9 @@ export default {
|
||||||
{ id: 60, name: '辅助工装' },
|
{ id: 60, name: '辅助工装' },
|
||||||
{ id: 70, name: '办公用品' },
|
{ id: 70, name: '办公用品' },
|
||||||
],
|
],
|
||||||
handle_user:[],
|
handle_user: [],
|
||||||
selectionFilters: [],
|
selectionFilters: [],
|
||||||
materialOptions:[],
|
materialOptions: [],
|
||||||
setFiltersVisible: false,
|
setFiltersVisible: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
@ -127,17 +121,17 @@ export default {
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
getMaterial(val){
|
getMaterial(val) {
|
||||||
let that = this;
|
let that = this;
|
||||||
let query = {};
|
let query = {};
|
||||||
query.type = val;
|
query.type = val;
|
||||||
query.page = 0;
|
query.page = 0;
|
||||||
query.is_hidden = false;
|
query.is_hidden = false;
|
||||||
this.$API.mtm.material.list.req(query).then(res=>{
|
this.$API.mtm.material.list.req(query).then(res => {
|
||||||
that.materialOptions = res;
|
that.materialOptions = res;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
typeChange(val){
|
typeChange(val) {
|
||||||
this.getMaterial(val);
|
this.getMaterial(val);
|
||||||
},
|
},
|
||||||
//提交
|
//提交
|
||||||
|
@ -147,22 +141,22 @@ export default {
|
||||||
this.isSaveing = true;
|
this.isSaveing = true;
|
||||||
this.form.brothers = this.brothers;
|
this.form.brothers = this.brothers;
|
||||||
if (this.mode == "add") {
|
if (this.mode == "add") {
|
||||||
this.$API.mtm.material.create.req(this.form).then(res=>{
|
this.$API.mtm.material.create.req(this.form).then(res => {
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
this.$emit("success", this.form, this.mode);
|
this.$emit("success", this.form, this.mode);
|
||||||
this.visible = false;
|
this.visible = false;
|
||||||
this.$message.success("操作成功");
|
this.$message.success("操作成功");
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
this.visible = false;
|
this.visible = false;
|
||||||
})
|
})
|
||||||
} else if (this.mode == "edit") {
|
} else if (this.mode == "edit") {
|
||||||
this.$API.mtm.material.update.req(this.form.id, this.form).then(res=>{
|
this.$API.mtm.material.update.req(this.form.id, this.form).then(res => {
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
this.$emit("success", this.form, this.mode);
|
this.$emit("success", this.form, this.mode);
|
||||||
this.visible = false;
|
this.visible = false;
|
||||||
this.$message.success("操作成功");
|
this.$message.success("操作成功");
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,12 +20,12 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="所属部门" prop="belong_dept_name" min-width="150"></el-table-column>
|
<el-table-column label="所属部门" prop="belong_dept_name" min-width="150"></el-table-column>
|
||||||
<el-table-column label="班次规则" prop="shift_rule" min-width="80"></el-table-column>
|
<el-table-column label="班次规则" prop="shift_rule" min-width="80"></el-table-column>
|
||||||
<el-table-column label="能源监测" prop="need_enm" min-width="80">
|
<!-- <el-table-column label="能源监测" prop="need_enm" min-width="80">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.need_enm">是</span>
|
<span v-if="scope.row.need_enm">是</span>
|
||||||
<span v-else>否</span>
|
<span v-else>否</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column> -->
|
||||||
<el-table-column label="排序" prop="sort" min-width="80"></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="创建时间" prop="create_time" min-width="150"></el-table-column>
|
||||||
<el-table-column label="操作" fixed="right" align="center" width="180">
|
<el-table-column label="操作" fixed="right" align="center" width="180">
|
||||||
|
|
|
@ -12,9 +12,9 @@
|
||||||
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="能源监测" prop="need_enm">
|
<!-- <el-form-item label="能源监测" prop="need_enm">
|
||||||
<el-switch v-model="form.need_enm"></el-switch>
|
<el-switch v-model="form.need_enm"></el-switch>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item label="所属部门">
|
<el-form-item label="所属部门">
|
||||||
<el-select v-model="form.belong_dept" placeholder="所属部门" clearable style="width: 100%;">
|
<el-select v-model="form.belong_dept" placeholder="所属部门" clearable style="width: 100%;">
|
||||||
<el-option v-for="item in group" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
<el-option v-for="item in group" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
|
@ -32,24 +32,30 @@
|
||||||
<sc-form-table ref="table" v-model="materialList" :addTemplate="addTemplate" placeholder="暂无数据">
|
<sc-form-table ref="table" v-model="materialList" :addTemplate="addTemplate" placeholder="暂无数据">
|
||||||
<el-table-column prop="type" label="输入物料" min-width="120" align="center">
|
<el-table-column prop="type" label="输入物料" min-width="120" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-select v-model="scope.row.material_in" style="width: 100%">
|
<span v-if="!scope.row.isedit">{{
|
||||||
|
scope.row.material_in_name
|
||||||
|
}}</span>
|
||||||
|
<el-select v-else 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-option v-for="item in materials" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="type" label="输出物料" min-width="120" align="center">
|
<el-table-column prop="type" label="输出物料" min-width="120" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-select v-model="scope.row.material_out" filterable style="width: 100%">
|
<span v-if="!scope.row.isedit">{{
|
||||||
<el-option v-for="item in materials" :key="item" :label="item" :value="item"></el-option>
|
scope.row.material_out_name
|
||||||
|
}}</span>
|
||||||
|
<el-select v-else 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>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="type" label="操作" min-width="80" align="center">
|
<el-table-column prop="type" label="操作" min-width="80" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button type="primary" v-if="scope.row.isedit"
|
<el-button type="primary" size="small" v-if="scope.row.isedit"
|
||||||
@click="submitForm(scope.row, scope.$index)">确定</el-button>
|
@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="warning" size="small" v-else @click="editForm(scope.row, scope.$index)">编辑</el-button>
|
||||||
<el-button type="danger" @click="delForm(scope.row, scope.$index)">删除</el-button>
|
<el-button type="danger" size="small" @click="delForm(scope.row, scope.$index)">删除</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</sc-form-table>
|
</sc-form-table>
|
||||||
|
@ -99,7 +105,7 @@ export default {
|
||||||
routes: [],
|
routes: [],
|
||||||
materials: [],
|
materials: [],
|
||||||
setFiltersVisible: false,
|
setFiltersVisible: false,
|
||||||
materialList: [{ material_in: '', material_out: '', mgroup: '', isedit: true }],
|
materialList: [],
|
||||||
addTemplate: { material_in: '', material_out: '', mgroup: '', isedit: true }
|
addTemplate: { material_in: '', material_out: '', mgroup: '', isedit: true }
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
@ -142,16 +148,19 @@ export default {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.$API.mtm.route.list.req({ mgroup: id, page: 0 }).then(res => {
|
that.$API.mtm.route.list.req({ mgroup: id, page: 0 }).then(res => {
|
||||||
that.routes = res;
|
that.routes = res;
|
||||||
if (res.length > 0) {
|
let mList = []
|
||||||
res.forEach(item => {
|
res.forEach(item => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
obj.material_in = item.material_in;
|
obj.id = item.id;
|
||||||
obj.material_out = item.material_out;
|
obj.material_in = item.material_in;
|
||||||
obj.mgroup = id;
|
obj.material_out = item.material_out;
|
||||||
obj.isedit = false;
|
obj.material_in_name = item.material_in_name;
|
||||||
})
|
obj.material_out_name = item.material_out_name;
|
||||||
that.materialList.push(obj);
|
obj.mgroup = id;
|
||||||
} else { }
|
obj.isedit = false;
|
||||||
|
mList.push(obj)
|
||||||
|
})
|
||||||
|
that.materialList = mList
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//显示
|
//显示
|
||||||
|
@ -213,6 +222,7 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
obj.mgroup = that.form.id;
|
obj.mgroup = that.form.id;
|
||||||
this.$API.mtm.route.create.req(obj).then(res => {
|
this.$API.mtm.route.create.req(obj).then(res => {
|
||||||
|
that.materialList[index] = res
|
||||||
that.materialList[index].isedit = false;
|
that.materialList[index].isedit = false;
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
<template>
|
<template>
|
||||||
<el-container style="flex-direction: column">
|
<el-container style="flex-direction: column">
|
||||||
<el-main id="topContainer" class="nopadding" style="position: relative;margin-bottom: 10px;">
|
<el-main id="topContainer" class="nopadding" style="position: relative;margin-bottom: 10px;">
|
||||||
<div class="right-panel btnsContainer">
|
<div class="right-panel btnsContainer">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="add">新增任务</el-button>
|
<el-button type="primary" icon="el-icon-plus" @click="add">新增任务</el-button>
|
||||||
<!-- <el-button type="primary" @click="utaskDepuse" v-loading="isloading">任务分解</el-button> -->
|
<!-- <el-button type="primary" @click="utaskDepuse" v-loading="isloading">任务分解</el-button> -->
|
||||||
<el-button type="primary" @click="utaskDepuse" v-loading="isloading">任务下达</el-button>
|
<el-button type="primary" @click="utaskDepuse" v-loading="isloading">任务下达</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
||||||
<!-- <el-tab-pane label="混料工序" name="8车间">
|
<!-- <el-tab-pane label="混料工序" name="8车间">
|
||||||
|
@ -71,39 +71,42 @@
|
||||||
</scTable>
|
</scTable>
|
||||||
</el-tab-pane> -->
|
</el-tab-pane> -->
|
||||||
<el-tab-pane label="成型7车间" name="7车间">
|
<el-tab-pane label="成型7车间" name="7车间">
|
||||||
<scTable
|
<scTable ref="table7" :apiObj="apiUtask" row-key="id" stripe :height="topHeight" :params="paramsUtask7"
|
||||||
ref="table7"
|
@row-click="rowclick" @selection-change="handleSelectionChange">
|
||||||
:apiObj="apiUtask"
|
<el-table-column type="selection" width="40" />
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:height="topHeight"
|
|
||||||
:params="paramsUtask7"
|
|
||||||
@row-click="rowclick"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="40" />
|
|
||||||
<el-table-column type="index" width="40" />
|
<el-table-column type="index" width="40" />
|
||||||
<el-table-column label="任务编号" prop="number">
|
<el-table-column label="任务编号" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
<el-table-column label="产品名称" prop="material_" show-overflow-tooltip>
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.name }}
|
||||||
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="型号" prop="number">
|
<el-table-column label="规格" prop="material_">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.specification }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="型号" prop="material_">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.model }}
|
||||||
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="任务状态" prop="state">
|
<el-table-column label="任务状态" prop="state">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tag v-if="scope.row.state!==40">
|
<el-tag v-if="scope.row.state !== 40">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else type="success">
|
<el-tag v-else type="success">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="任务量" prop="number">
|
<el-table-column label="任务量" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="计划量" prop="count">
|
<el-table-column label="计划量" prop="count">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="日均产量" prop="count">
|
<el-table-column label="日均产量" prop="count_day">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="计划开工时间" prop="start_date">
|
<el-table-column label="计划开工时间" prop="start_date">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -120,12 +123,13 @@
|
||||||
<el-link type="primary" @click="table_show(scope.row)">
|
<el-link type="primary" @click="table_show(scope.row)">
|
||||||
查看
|
查看
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==10"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 10"></el-divider>
|
||||||
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.state==10">
|
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.state == 10">
|
||||||
编辑
|
编辑
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==10||scope.row.state==14"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 10 || scope.row.state == 14"></el-divider>
|
||||||
<el-link type="danger" @click="table_del(scope.row)" v-if="scope.row.state==10||scope.row.state==14">
|
<el-link type="danger" @click="table_del(scope.row)"
|
||||||
|
v-if="scope.row.state == 10 || scope.row.state == 14">
|
||||||
删除
|
删除
|
||||||
</el-link>
|
</el-link>
|
||||||
</template>
|
</template>
|
||||||
|
@ -133,33 +137,28 @@
|
||||||
</scTable>
|
</scTable>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="成型10车间" name="10车间">
|
<el-tab-pane label="成型10车间" name="10车间">
|
||||||
<scTable
|
<scTable ref="table10" :apiObj="apiUtask" row-key="id" stripe :height="topHeight" :params="paramsUtask10"
|
||||||
ref="table10"
|
@row-click="rowclick" @selection-change="handleSelectionChange">
|
||||||
:apiObj="apiUtask"
|
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:height="topHeight"
|
|
||||||
:params="paramsUtask10"
|
|
||||||
@row-click="rowclick"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="40" />
|
<el-table-column type="selection" width="40" />
|
||||||
<el-table-column type="index" width="40" />
|
<el-table-column type="index" width="40" />
|
||||||
<el-table-column label="任务编号" prop="number">
|
<el-table-column label="任务编号" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.name }}
|
||||||
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="型号" prop="number">
|
<el-table-column label="型号" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="任务状态" prop="state">
|
<el-table-column label="任务状态" prop="state">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tag v-if="scope.row.state!==40">
|
<el-tag v-if="scope.row.state !== 40">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else type="success">
|
<el-tag v-else type="success">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="任务量" prop="number">
|
<el-table-column label="任务量" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -182,14 +181,16 @@
|
||||||
<el-link type="primary" @click="table_show(scope.row)">
|
<el-link type="primary" @click="table_show(scope.row)">
|
||||||
查看
|
查看
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==10"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 10"></el-divider>
|
||||||
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.state==10">
|
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.state == 10">
|
||||||
编辑
|
编辑
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==30||scope.row.state==20"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 30 || scope.row.state == 20"></el-divider>
|
||||||
<el-link type="danger" @click="table_end(scope.row)" v-if="scope.row.state==30||scope.row.state==20">终止</el-link>
|
<el-link type="danger" @click="table_end(scope.row)"
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==10||scope.row.state==14"></el-divider>
|
v-if="scope.row.state == 30 || scope.row.state == 20">终止</el-link>
|
||||||
<el-link type="danger" @click="table_del(scope.row)" v-if="scope.row.state==10||scope.row.state==14">
|
<el-divider direction="vertical" v-if="scope.row.state == 10 || scope.row.state == 14"></el-divider>
|
||||||
|
<el-link type="danger" @click="table_del(scope.row)"
|
||||||
|
v-if="scope.row.state == 10 || scope.row.state == 14">
|
||||||
删除
|
删除
|
||||||
</el-link>
|
</el-link>
|
||||||
</template>
|
</template>
|
||||||
|
@ -204,91 +205,59 @@
|
||||||
<span style="font-size:14px ;">生产进度</span>
|
<span style="font-size:14px ;">生产进度</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-panel">
|
<div class="right-panel">
|
||||||
<el-date-picker
|
<el-date-picker v-model="query.date" type="daterange" range-separator="至" start-placeholder="开始时间"
|
||||||
v-model="query.date"
|
end-placeholder="结束时间" value-format="YYYY-MM-DD" />
|
||||||
type="daterange"
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||||
range-separator="至"
|
|
||||||
start-placeholder="开始时间"
|
|
||||||
end-placeholder="结束时间"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
/>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
@click="handleQuery"
|
|
||||||
>查询</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</el-header>
|
</el-header>
|
||||||
<scTable
|
<scTable ref="table2" :data="dataList" row-key="id" stripe :height="bottomHeight" :hideDo="hideDo" :params="query">
|
||||||
ref="table2"
|
<el-table-column type="index" width="50" />
|
||||||
:data="dataList"
|
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:height="bottomHeight"
|
|
||||||
:hideDo="hideDo"
|
|
||||||
:params="query"
|
|
||||||
>
|
|
||||||
<el-table-column type="index" width="50"/>
|
|
||||||
<el-table-column label="任务编号" prop="number" width="100" fixed="left">
|
<el-table-column label="任务编号" prop="number" width="100" fixed="left">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产品名称" prop="name" width="100" show-overflow-tooltip fixed="left">
|
<el-table-column label="产品名称" prop="material" width="100" show-overflow-tooltip fixed="left">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.name }}
|
||||||
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="型号" prop="xh" width="100" fixed="left">
|
<el-table-column label="规格" prop="specification" width="100" fixed="left">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.specification }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="型号" prop="model" width="100" fixed="left">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.model }}
|
||||||
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="计划量" prop="count" width="100" fixed="left">
|
<el-table-column label="计划量" prop="count" width="100" fixed="left">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="日均产量" prop="count1" width="100" fixed="left">
|
<el-table-column label="日均产量" prop="count_day" width="100" fixed="left">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="计划开工时间" prop="start_date" width="100" fixed="left">
|
<el-table-column label="计划开工时间" prop="start_date" width="100" fixed="left">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="计划完工时间" prop="end_date" width="100" fixed="left">
|
<el-table-column label="计划完工时间" prop="end_date" width="100" fixed="left">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column v-for="item in columList" :label="item.data" :key="item">
|
<el-table-column v-for="item in columList" :label="item.data" :key="item" width="100">
|
||||||
<div :class="bindClass(item)">
|
<div :class="bindClass(item)">
|
||||||
<div v-if="activeName=='10车间'">{{ item.count1 }}</div>
|
<div v-if="activeName == '10车间'">{{ item.count1 }}</div>
|
||||||
<div>{{ item.count2 }}</div>
|
<div>{{ item.count2 }}</div>
|
||||||
<div>{{ item.count3 }}</div>
|
<div>{{ item.count3 }}</div>
|
||||||
</div>
|
</div>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</scTable>
|
</scTable>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
<save-dialog
|
<save-dialog v-if="dialog.save" ref="saveDialog" :activeName="activeName" @success="handleSaveSuccess"
|
||||||
v-if="dialog.save"
|
@closed="dialog.save = false"></save-dialog>
|
||||||
ref="saveDialog"
|
<el-drawer title="任务详情" v-model="visibleRecord" :size="800" destroy-on-close @closed="visibleRecord = false">
|
||||||
:activeName="activeName"
|
|
||||||
@success="handleSaveSuccess"
|
|
||||||
@closed="dialog.save = false"
|
|
||||||
></save-dialog>
|
|
||||||
<el-drawer
|
|
||||||
title="任务详情"
|
|
||||||
v-model="visibleRecord"
|
|
||||||
:size="800"
|
|
||||||
destroy-on-close
|
|
||||||
@closed="visibleRecord=false"
|
|
||||||
>
|
|
||||||
<div class="right-panel tabsHeader">
|
<div class="right-panel tabsHeader">
|
||||||
<el-date-picker
|
<el-date-picker v-model="paramsObj.start_date" type="date" value-format="YYYY-MM-DD" />
|
||||||
v-model="paramsObj.start_date"
|
<el-button type="primary" icon="el-icon-search" @click="handleDetailQuery">查询</el-button>
|
||||||
type="date"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
/>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
@click="handleDetailQuery"
|
|
||||||
>查询</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
<el-container v-loading="isloading">
|
<el-container v-loading="isloading">
|
||||||
<el-main style="padding: 0 20px 20px 20px">
|
<el-main style="padding: 0 20px 20px 20px">
|
||||||
<scTable
|
<scTable ref="drawer_table" :apiObj="apiObj" row-key="id" stripe :params="paramsObj">
|
||||||
ref="drawer_table"
|
<el-table-column type="index" width="50" />
|
||||||
:apiObj="apiObj"
|
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:params="paramsObj"
|
|
||||||
>
|
|
||||||
<el-table-column type="index" width="50"/>
|
|
||||||
<el-table-column label="工段" prop="mgroup_name" show-overflow-tooltip>
|
<el-table-column label="工段" prop="mgroup_name" show-overflow-tooltip>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="任务编号" prop="number">
|
<el-table-column label="任务编号" prop="number">
|
||||||
|
@ -299,7 +268,7 @@
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="状态" prop="state" show-overflow-tooltip>
|
<el-table-column label="状态" prop="state" show-overflow-tooltip>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tag v-if="scope.row.state!==40">
|
<el-tag v-if="scope.row.state !== 40">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else type="success">
|
<el-tag v-else type="success">
|
||||||
|
@ -317,7 +286,7 @@ import saveDialog from "./mtask_form.vue";
|
||||||
export default {
|
export default {
|
||||||
name: "rparty",
|
name: "rparty",
|
||||||
components: {
|
components: {
|
||||||
saveDialog,
|
saveDialog,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -325,30 +294,30 @@ export default {
|
||||||
save: false,
|
save: false,
|
||||||
},
|
},
|
||||||
apiUtask: this.$API.pm.utask.list,
|
apiUtask: this.$API.pm.utask.list,
|
||||||
paramsUtask7: { belong_dept__name: '7车间' },
|
paramsUtask7: { belong_dept__name: '7车间' },
|
||||||
paramsUtask8: { belong_dept__name: '8车间' },
|
paramsUtask8: { belong_dept__name: '8车间' },
|
||||||
paramsUtask10: { belong_dept__name: '10车间' },
|
paramsUtask10: { belong_dept__name: '10车间' },
|
||||||
apiObj: null,
|
apiObj: null,
|
||||||
paramsObj:{utask:''},
|
paramsObj: { utask: '' },
|
||||||
query: {
|
query: {
|
||||||
page:1,
|
page: 1,
|
||||||
page_size:20,
|
page_size: 20,
|
||||||
date:''
|
date: ''
|
||||||
},
|
},
|
||||||
utaskId:'',
|
utaskId: '',
|
||||||
isloading:false,
|
isloading: false,
|
||||||
visibleRecord:false,
|
visibleRecord: false,
|
||||||
tableHeight:null,
|
tableHeight: null,
|
||||||
hideDo:true,
|
hideDo: true,
|
||||||
activeName:'7车间',
|
activeName: '7车间',
|
||||||
dataList:[
|
dataList: [
|
||||||
// {number:'rwbh2023',name:'玻璃棒',xh:'',count:100,count1:100,start_date:'2023-10-15',end_date:'2023-10-15', count01:100, count02:200, count03:300 },
|
// {number:'rwbh2023',name:'玻璃棒',xh:'',count:100,count1:100,start_date:'2023-10-15',end_date:'2023-10-15', count01:100, count02:200, count03:300 },
|
||||||
// {number:'rwbh2023',name:'玻璃棒',xh:'',count:100,count1:100,start_date:'2023-10-15',end_date:'2023-10-15', count01:100, count02:250, count03:300 },
|
// {number:'rwbh2023',name:'玻璃棒',xh:'',count:100,count1:100,start_date:'2023-10-15',end_date:'2023-10-15', count01:100, count02:250, count03:300 },
|
||||||
],
|
],
|
||||||
// columList:['10.15','10.16','10.17'],
|
// columList:['10.15','10.16','10.17'],
|
||||||
columList:[],
|
columList: [],
|
||||||
selection: [],
|
selection: [],
|
||||||
selectedIds:[],
|
selectedIds: [],
|
||||||
state_: {
|
state_: {
|
||||||
10: '创建中',
|
10: '创建中',
|
||||||
14: '已分解',
|
14: '已分解',
|
||||||
|
@ -356,45 +325,49 @@ export default {
|
||||||
30: '生产中',
|
30: '生产中',
|
||||||
40: '已提交'
|
40: '已提交'
|
||||||
},
|
},
|
||||||
topHeight:null,
|
topHeight: null,
|
||||||
bottomHeight:null,
|
bottomHeight: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted(){
|
mounted() {
|
||||||
let date = new Date();
|
let date = new Date();
|
||||||
let year = date.getFullYear();
|
let year = date.getFullYear();
|
||||||
let month = date.getMonth()+1;
|
let month = date.getMonth() + 1;
|
||||||
let day = date.getDate();
|
let day = date.getDate();
|
||||||
let timeNow = date.getTime();
|
let timeNow = date.getTime();
|
||||||
let timer = 1000*60*60*24*2;
|
let timer = 1000 * 60 * 60 * 24 * 2;
|
||||||
let data2 = new Date(timeNow-timer);//2天前日期
|
let data2 = new Date(timeNow - timer);//2天前日期
|
||||||
let year2 = data2.getFullYear();
|
let year2 = data2.getFullYear();
|
||||||
let month2 = data2.getMonth()+1;
|
let month2 = data2.getMonth() + 1;
|
||||||
let day2 = data2.getDate();
|
let day2 = data2.getDate();
|
||||||
let startDate = year2+'-'+month2+'-'+day2;
|
let startDate = year2 + '-' + month2 + '-' + day2;
|
||||||
let endDate = year+'-'+month+'-'+day;
|
let endDate = year + '-' + month + '-' + day;
|
||||||
this.query.date = [startDate,endDate];
|
this.query.date = [startDate, endDate];
|
||||||
let heights = document.getElementById('topContainer').clientHeight;
|
let heights = document.getElementById('topContainer').clientHeight;
|
||||||
this.topHeight = (heights-45)+'px';
|
this.topHeight = (heights - 45) + 'px';
|
||||||
this.bottomHeight = (heights-65)+'px';
|
this.bottomHeight = (heights - 65) + 'px';
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 动态绑定Class
|
// 动态绑定Class
|
||||||
bindClass(item){
|
bindClass(item) {
|
||||||
let count = item.count;
|
let count = item.count;
|
||||||
let classInfo = {countBlock:true, redColor: false, greenColor: false, orangeColor:false };
|
let classInfo = { countBlock: true, redColor: false, greenColor: false, orangeColor: false };
|
||||||
let countok = 0;
|
let countok = 0;
|
||||||
if(this.activeName=='10车间'){
|
if (this.activeName == '10车间') {
|
||||||
countok = item.count3;
|
countok = item.count3;
|
||||||
}else{
|
} else {
|
||||||
countok = item.count2;
|
countok = item.count2;
|
||||||
}
|
}
|
||||||
|
if (item.state != 40) {
|
||||||
if(countok>=count){
|
classInfo.orangeColor = true;
|
||||||
classInfo.greenColor = true;
|
} else {
|
||||||
}else{
|
if (countok >= count) {
|
||||||
classInfo.redColor = true;
|
classInfo.greenColor = true;
|
||||||
|
} else {
|
||||||
|
classInfo.redColor = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return classInfo
|
return classInfo
|
||||||
},
|
},
|
||||||
//添加
|
//添加
|
||||||
|
@ -414,30 +387,30 @@ export default {
|
||||||
//删除
|
//删除
|
||||||
async table_del(row) {
|
async table_del(row) {
|
||||||
this.$confirm(`确定删除吗?`, "提示", {
|
this.$confirm(`确定删除吗?`, "提示", {
|
||||||
type: "warning",
|
type: "warning",
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$API.pm.utask.delete.req(row.id).then((res) => {
|
this.$API.pm.utask.delete.req(row.id).then((res) => {
|
||||||
this.$message.success("删除成功");
|
this.$message.success("删除成功");
|
||||||
this.$refs.table7.refresh();
|
this.$refs.table7.refresh();
|
||||||
return res;
|
return res;
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
return err;
|
return err;
|
||||||
});
|
});
|
||||||
}).catch(() => {});
|
}).catch(() => { });
|
||||||
},
|
},
|
||||||
//终止
|
//终止
|
||||||
table_end(row){
|
table_end(row) {
|
||||||
this.$confirm(`确定终止该任务吗?`, "提示", {
|
this.$confirm(`确定终止该任务吗?`, "提示", {
|
||||||
type: "warning",
|
type: "warning",
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$API.pm.utask.stop.req(row.id).then((res) => {
|
this.$API.pm.utask.stop.req(row.id).then((res) => {
|
||||||
this.$message.success("操作成功");
|
this.$message.success("操作成功");
|
||||||
this.$refs.table10.refresh();
|
this.$refs.table10.refresh();
|
||||||
return res;
|
return res;
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
return err;
|
return err;
|
||||||
});
|
});
|
||||||
}).catch(() => {});
|
}).catch(() => { });
|
||||||
},
|
},
|
||||||
//本地更新数据
|
//本地更新数据
|
||||||
handleSaveSuccess(data, mode) {
|
handleSaveSuccess(data, mode) {
|
||||||
|
@ -448,73 +421,73 @@ export default {
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
let startDate = this.query.date[0];
|
let startDate = this.query.date[0];
|
||||||
let endDate = this.query.date[1];
|
let endDate = this.query.date[1];
|
||||||
let arr = this.getBetweenDate(startDate,endDate);
|
let arr = this.getBetweenDate(startDate, endDate);
|
||||||
this.columList = arr;
|
// this.columList = arr;
|
||||||
},
|
},
|
||||||
getBetweenDate(start,end){
|
getBetweenDate(start, end) {
|
||||||
let arr = [];
|
let arr = [];
|
||||||
let startTimer = new Date(start).getTime();
|
let startTimer = new Date(start).getTime();
|
||||||
let endTimer = new Date(end).getTime();
|
let endTimer = new Date(end).getTime();
|
||||||
let oneTime = 1000*60*60*24;//1天时间
|
let oneTime = 1000 * 60 * 60 * 24;//1天时间
|
||||||
let tempTime = startTimer;
|
let tempTime = startTimer;
|
||||||
while(tempTime<=endTimer){
|
while (tempTime <= endTimer) {
|
||||||
let dates = new Date(tempTime);
|
let dates = new Date(tempTime);
|
||||||
let year = dates.getFullYear();
|
let year = dates.getFullYear();
|
||||||
let month = dates.getMonth()+1;
|
let month = dates.getMonth() + 1;
|
||||||
let day = dates.getDate();
|
let day = dates.getDate();
|
||||||
let item = year+'-'+month+'-'+day;
|
let item = year + '-' + month + '-' + day;
|
||||||
arr.push(item);
|
arr.push(item);
|
||||||
tempTime = tempTime+oneTime;
|
tempTime = tempTime + oneTime;
|
||||||
}
|
}
|
||||||
return arr;
|
return arr;
|
||||||
},
|
},
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.query = {};
|
this.query = {};
|
||||||
},
|
},
|
||||||
handleSelectionChange(selection){
|
handleSelectionChange(selection) {
|
||||||
this.selectedIds = [];
|
this.selectedIds = [];
|
||||||
selection.forEach(item => {
|
selection.forEach(item => {
|
||||||
this.selectedIds.push(item.id)
|
this.selectedIds.push(item.id)
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//任务分解
|
//任务分解
|
||||||
utaskDepuse(){
|
utaskDepuse() {
|
||||||
let that = this;
|
let that = this;
|
||||||
if(that.selectedIds.length>0){
|
if (that.selectedIds.length > 0) {
|
||||||
let ids =that.selectedIds;
|
let ids = that.selectedIds;
|
||||||
that.isloading = true;
|
that.isloading = true;
|
||||||
that.$API.pm.utask.scheduemtasks.req({ids:ids}).then(res=>{
|
that.$API.pm.utask.scheduemtasks.req({ ids: ids }).then(res => {
|
||||||
that.$API.pm.utask.assgin.req({ids:ids}).then(res=>{
|
that.$API.pm.utask.assgin.req({ ids: ids }).then(res => {
|
||||||
that.$message.success('下达任务成功');
|
that.$message.success('下达任务成功');
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
that.$refs.table7.refresh();
|
that.$refs.table7.refresh();
|
||||||
// that.$refs.table8.refresh();
|
// that.$refs.table8.refresh();
|
||||||
that.$refs.table10.refresh();
|
that.$refs.table10.refresh();
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
})
|
})
|
||||||
|
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
})
|
})
|
||||||
}else{
|
} else {
|
||||||
this.$message.error('未选择任何任务')
|
this.$message.error('未选择任何任务')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
utaskAssgin(){
|
utaskAssgin() {
|
||||||
let that = this;
|
let that = this;
|
||||||
if(that.selectedIds.length>0){
|
if (that.selectedIds.length > 0) {
|
||||||
that.isloading = true;
|
that.isloading = true;
|
||||||
that.$API.pm.utask.assgin.req({ids:that.selectedIds}).then(res=>{
|
that.$API.pm.utask.assgin.req({ ids: that.selectedIds }).then(res => {
|
||||||
that.$message.success('下达任务成功');
|
that.$message.success('下达任务成功');
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
that.$refs.table7.refresh();
|
that.$refs.table7.refresh();
|
||||||
// that.$refs.table8.refresh();
|
// that.$refs.table8.refresh();
|
||||||
that.$refs.table10.refresh();
|
that.$refs.table10.refresh();
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
})
|
})
|
||||||
}else{
|
} else {
|
||||||
this.$message.error('未选择任何任务')
|
this.$message.error('未选择任何任务')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -525,71 +498,83 @@ export default {
|
||||||
this.apiObj = this.$API.pm.mtask.list;
|
this.apiObj = this.$API.pm.mtask.list;
|
||||||
this.visibleRecord = true;
|
this.visibleRecord = true;
|
||||||
},
|
},
|
||||||
handleClick(){
|
handleClick() {
|
||||||
this.columList = [];
|
this.columList = [];
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
},
|
},
|
||||||
rowclick(val){
|
rowclick(val) {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.columList = [];
|
that.columList = [];
|
||||||
let utask = val.id;
|
let utask = val.id;
|
||||||
that.dataList.push(val)
|
that.dataList = [val]
|
||||||
this.$API.pm.mtask.list.req({utask:utask,page:0}).then(res=>{
|
this.$API.pm.mtask.list.req({ utask: utask, page: 0 }).then(res => {
|
||||||
res.forEach(item=>{
|
let columList = []
|
||||||
|
res.forEach(item => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
obj.count1 = 0;obj.count2 = 0;obj.count3 = 0;
|
|
||||||
|
obj.state = item.state
|
||||||
|
obj.count1 = 0; obj.count2 = 0; obj.count3 = 0;
|
||||||
obj.count = item.count;
|
obj.count = item.count;
|
||||||
obj.data = item.start_date;
|
obj.data = item.start_date;
|
||||||
if(that.activeName=='7车间'){
|
if (that.activeName == '7车间') {
|
||||||
let rate = (item.count_ok/item.count)*100;
|
let rate = (item.count_ok / item.count) * 100;
|
||||||
obj.count2 = item.count_ok;//7车间count_ok
|
obj.count2 = item.count_ok;//7车间count_ok
|
||||||
obj.count3 = rate+'%';//7车间合格率
|
obj.count3 = rate + '%';//7车间合格率
|
||||||
}else if(that.activeName=='10车间'){
|
} else if (that.activeName == '10车间') {
|
||||||
let mlogs = item.mlogs;
|
let mlogs = item.mlogs;
|
||||||
if(mlogs.length>0){
|
if (mlogs.length > 0) {
|
||||||
for(let i=0;i<mlogs.length;i++){
|
for (let i = 0; i < mlogs.length; i++) {
|
||||||
if(mlogs[i].shift_name=='白班'){
|
if (mlogs[i].shift_name == '白班') {
|
||||||
obj.count1 = mlogs[i].count_ok;//10车间白班
|
obj.count1 = mlogs[i].count_ok;//10车间白班
|
||||||
}else{
|
} else {
|
||||||
obj.count2 = mlogs[i].count_ok;//10车间夜班
|
obj.count2 = mlogs[i].count_ok;//10车间夜班
|
||||||
}
|
}
|
||||||
obj.count3 = obj.count1+obj.count2;//10车间合计
|
obj.count3 = obj.count1 + obj.count2;//10车间合计
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
that.columList.push(obj);
|
columList.push(obj);
|
||||||
|
|
||||||
})
|
})
|
||||||
|
this.columList = columList
|
||||||
|
console.log(columList)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.right-panel > * + * {
|
.right-panel>*+* {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
}
|
}
|
||||||
.countBlock{
|
|
||||||
width: 80px;
|
.countBlock {
|
||||||
color: #ffffff;
|
width: 80px;
|
||||||
text-align: center;
|
color: #ffffff;
|
||||||
}
|
text-align: center;
|
||||||
.redColor{
|
}
|
||||||
background-color: brown;
|
|
||||||
}
|
.redColor {
|
||||||
.greenColor{
|
background-color: brown;
|
||||||
background-color: green;
|
}
|
||||||
}
|
|
||||||
.orangeColor{
|
.greenColor {
|
||||||
background-color: orange;
|
background-color: green;
|
||||||
}
|
}
|
||||||
.el-main.nopadding{
|
|
||||||
padding:0 20px 0 20px
|
.orangeColor {
|
||||||
}
|
background-color: orange;
|
||||||
.btnsContainer{
|
}
|
||||||
display: inline-block;
|
|
||||||
position: absolute;
|
.el-main.nopadding {
|
||||||
right: 20px;
|
padding: 0 20px 0 20px
|
||||||
margin-top: 4px;
|
}
|
||||||
z-index: 100
|
|
||||||
}
|
.btnsContainer {
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
right: 20px;
|
||||||
|
margin-top: 4px;
|
||||||
|
z-index: 100
|
||||||
|
}
|
||||||
</style>
|
</style>
|
|
@ -4,34 +4,40 @@
|
||||||
<div class="right-panel btnsContainer" style=" ">
|
<div class="right-panel btnsContainer" style=" ">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="add">新增</el-button>
|
<el-button type="primary" icon="el-icon-plus" @click="add">新增</el-button>
|
||||||
<el-button type="primary" @click="utaskDepuse" v-loading="isloading">任务分解</el-button>
|
<el-button type="primary" @click="utaskDepuse" v-loading="isloading">任务分解</el-button>
|
||||||
<el-button type="primary" @click="utaskAssgin" v-loading="isloading">任务下达</el-button>
|
<el-button type="primary" @click="utaskAssgin" v-loading="isloading">任务下达</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-tabs v-model="activeName" class="demo-tabs">
|
<el-tabs v-model="activeName" class="demo-tabs">
|
||||||
<el-tab-pane label="粗加工6车间" name="6车间">
|
<el-tab-pane label="粗加工6车间" name="6车间">
|
||||||
<scTable
|
<scTable ref="table1" :apiObj="apiUtask" row-key="id" stripe :params="paramsUtask" :height="tableHeight"
|
||||||
ref="table1"
|
@row-click="rowClick" @selection-change="handleSelectionChange" hidePagination>
|
||||||
:apiObj="apiUtask"
|
|
||||||
row-key="id" stripe
|
|
||||||
:params="paramsUtask"
|
|
||||||
:height="tableHeight"
|
|
||||||
@row-click="rowClick"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
|
|
||||||
hidePagination
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="40" />
|
<el-table-column type="selection" width="40" />
|
||||||
<el-table-column type="index" width="40" />
|
<el-table-column type="index" width="40" />
|
||||||
<el-table-column label="任务编号" prop="number">
|
<el-table-column label="任务编号" prop="number">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column label="产品名称" prop="material">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.name }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="规格" prop="material">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.specification }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="型号" prop="material">
|
||||||
|
<template #default="scope">
|
||||||
|
{{ scope.row.material_.model }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="任务状态" prop="state">
|
<el-table-column label="任务状态" prop="state">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tag v-if="scope.row.state!==40">
|
<el-tag v-if="scope.row.state !== 40">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<el-tag v-else type="success">
|
<el-tag v-else type="success">
|
||||||
{{ state_[scope.row.state] }}
|
{{ state_[scope.row.state] }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="任务量" prop="count">
|
<el-table-column label="任务量" prop="count">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -48,14 +54,15 @@
|
||||||
<el-link type="primary" @click="table_show(scope.row)">
|
<el-link type="primary" @click="table_show(scope.row)">
|
||||||
查看
|
查看
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==10"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 10"></el-divider>
|
||||||
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.state==10">
|
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.state == 10">
|
||||||
编辑
|
编辑
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==30"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 30"></el-divider>
|
||||||
<el-link type="primary" @click="table_end(scope.row)" v-if="scope.row.state==30">终止</el-link>
|
<el-link type="primary" @click="table_end(scope.row)" v-if="scope.row.state == 30">终止</el-link>
|
||||||
<el-divider direction="vertical" v-if="scope.row.state==10||scope.row.state==20"></el-divider>
|
<el-divider direction="vertical" v-if="scope.row.state == 10 || scope.row.state == 20"></el-divider>
|
||||||
<el-link type="danger" @click="table_del(scope.row)" v-if="scope.row.state==10||scope.row.state==20">
|
<el-link type="danger" @click="table_del(scope.row)"
|
||||||
|
v-if="scope.row.state == 10 || scope.row.state == 20">
|
||||||
删除
|
删除
|
||||||
</el-link>
|
</el-link>
|
||||||
</template>
|
</template>
|
||||||
|
@ -70,102 +77,68 @@
|
||||||
</div>
|
</div>
|
||||||
<el-tabs v-model="activeNameSub" class="demo-tabs" @tab-click="handleClick">
|
<el-tabs v-model="activeNameSub" class="demo-tabs" @tab-click="handleClick">
|
||||||
<el-tab-pane label="生产进度" name="rate">
|
<el-tab-pane label="生产进度" name="rate">
|
||||||
<GanttComponent class="left-container" :tasks="tasks" :start_date="start_date" :end_date="end_date"></GanttComponent>
|
<GanttComponent class="left-container" :tasks="tasks" :start_date="start_date" :end_date="end_date">
|
||||||
|
</GanttComponent>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
<save-dialog v-if="dialog.save" ref="saveDialog" :activeName="activeName" @success="handleSaveSuccess"
|
<save-dialog v-if="dialog.save" ref="saveDialog" :activeName="activeName" @success="handleSaveSuccess"
|
||||||
@closed="dialog.save = false"></save-dialog>
|
@closed="dialog.save = false"></save-dialog>
|
||||||
<el-dialog
|
<el-dialog title="排产" destroy-on-close v-model="visible" @closed="closeAssginVisible">
|
||||||
title="排产"
|
|
||||||
destroy-on-close
|
|
||||||
v-model="visible"
|
|
||||||
@closed="closeAssginVisible"
|
|
||||||
>
|
|
||||||
<el-form ref="dialogForm" :model="form" :rules="rules" label-width="120px">
|
<el-form ref="dialogForm" :model="form" :rules="rules" label-width="120px">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="计划开工日期" prop="start_date">
|
<el-form-item label="计划开工日期" prop="start_date">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.start_date" type="date" placeholder="计划开工日期" value-format="YYYY-MM-DD"
|
||||||
v-model="form.start_date"
|
style="width:90%">
|
||||||
type="date"
|
|
||||||
placeholder="计划开工日期"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:90%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="计划完工日期" prop="end_date">
|
<el-form-item label="计划完工日期" prop="end_date">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.end_date" type="date" placeholder="计划完工日期" value-format="YYYY-MM-DD"
|
||||||
v-model="form.end_date"
|
style="width:90%">
|
||||||
type="date"
|
|
||||||
placeholder="计划完工日期"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:90%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-footer>
|
<el-footer>
|
||||||
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
|
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
|
||||||
<el-button @click="visible = false">取消</el-button>
|
<el-button @click="visible = false">取消</el-button>
|
||||||
</el-footer>
|
</el-footer>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<el-drawer
|
<el-drawer title="任务详情" v-model="visibleRecord" :size="800" destroy-on-close @closed="visibleRecord = false">
|
||||||
title="任务详情"
|
<div class="right-panel tabsHeader">
|
||||||
v-model="visibleRecord"
|
<el-date-picker v-model="paramsObj.start_date" type="date" value-format="YYYY-MM-DD" />
|
||||||
:size="800"
|
<el-button type="primary" icon="el-icon-search" @click="handleDetailQuery">查询</el-button>
|
||||||
destroy-on-close
|
</div>
|
||||||
@closed="visibleRecord=false"
|
<el-container v-loading="loading">
|
||||||
>
|
<el-main style="padding: 0 20px 20px 20px">
|
||||||
<div class="right-panel tabsHeader">
|
<scTable ref="drawer_table" :apiObj="apiObj" row-key="id" stripe :params="paramsObj">
|
||||||
<el-date-picker
|
<el-table-column type="index" width="50" />
|
||||||
v-model="paramsObj.start_date"
|
<el-table-column label="任务编号" prop="number">
|
||||||
type="date"
|
</el-table-column>
|
||||||
value-format="YYYY-MM-DD"
|
<el-table-column label="工段" prop="mgroup_name" show-overflow-tooltip>
|
||||||
/>
|
</el-table-column>
|
||||||
<el-button
|
<el-table-column label="数量" prop="count">
|
||||||
type="primary"
|
</el-table-column>
|
||||||
icon="el-icon-search"
|
<el-table-column label="工作日期" prop="start_date">
|
||||||
@click="handleDetailQuery"
|
</el-table-column>
|
||||||
>查询</el-button>
|
<el-table-column label="状态" prop="state" show-overflow-tooltip>
|
||||||
</div>
|
<template #default="scope">
|
||||||
<el-container v-loading="loading">
|
<el-tag v-if="scope.row.state !== 40">
|
||||||
<el-main style="padding: 0 20px 20px 20px">
|
{{ state_[scope.row.state] }}
|
||||||
<scTable
|
</el-tag>
|
||||||
ref="drawer_table"
|
<el-tag v-else type="success">
|
||||||
:apiObj="apiObj"
|
{{ state_[scope.row.state] }}
|
||||||
row-key="id"
|
</el-tag>
|
||||||
stripe
|
</template>
|
||||||
:params="paramsObj"
|
</el-table-column>
|
||||||
>
|
</scTable>
|
||||||
<el-table-column type="index" width="50"/>
|
</el-main>
|
||||||
<el-table-column label="工段" prop="mgroup_name" show-overflow-tooltip>
|
</el-container>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="物料编号" prop="number">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="数量" prop="count">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="工作日期" prop="start_date">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="状态" prop="state" show-overflow-tooltip>
|
|
||||||
<template #default="scope">
|
|
||||||
<el-tag v-if="scope.row.state!==40">
|
|
||||||
{{ state_[scope.row.state] }}
|
|
||||||
</el-tag>
|
|
||||||
<el-tag v-else type="success">
|
|
||||||
{{ state_[scope.row.state] }}
|
|
||||||
</el-tag>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</scTable>
|
|
||||||
</el-main>
|
|
||||||
</el-container>
|
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
@ -175,7 +148,7 @@ import { useTransitionFallthroughEmits } from 'element-plus';
|
||||||
export default {
|
export default {
|
||||||
name: "rparty",
|
name: "rparty",
|
||||||
components: {
|
components: {
|
||||||
saveDialog,GanttComponent
|
saveDialog, GanttComponent
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -190,21 +163,21 @@ export default {
|
||||||
ganttLoading: false,
|
ganttLoading: false,
|
||||||
projectId: '',
|
projectId: '',
|
||||||
orderitems: [],
|
orderitems: [],
|
||||||
form:{
|
form: {
|
||||||
orderitems:[],
|
orderitems: [],
|
||||||
start_date:'',
|
start_date: '',
|
||||||
end_date:'',
|
end_date: '',
|
||||||
|
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
start_date: [{required: true, message: "请选择计划开工日期", trigger: "blur"}],
|
start_date: [{ required: true, message: "请选择计划开工日期", trigger: "blur" }],
|
||||||
end_date: [{required: true, message: "请选择计划完工日期", trigger: "blur"}],
|
end_date: [{ required: true, message: "请选择计划完工日期", trigger: "blur" }],
|
||||||
},
|
},
|
||||||
dialog: {
|
dialog: {
|
||||||
save: false,
|
save: false,
|
||||||
},
|
},
|
||||||
apiObj:null,
|
apiObj: null,
|
||||||
paramsObj:{start_date:''},
|
paramsObj: { start_date: '' },
|
||||||
apiUtask: this.$API.pm.utask.list,
|
apiUtask: this.$API.pm.utask.list,
|
||||||
apiOrderItem: this.$API.sam.orderitem.list,
|
apiOrderItem: this.$API.sam.orderitem.list,
|
||||||
paramsOrderItem: { utask__isnull: true },
|
paramsOrderItem: { utask__isnull: true },
|
||||||
|
@ -214,22 +187,22 @@ export default {
|
||||||
page_size: 20,
|
page_size: 20,
|
||||||
date: ''
|
date: ''
|
||||||
},
|
},
|
||||||
isloading:false,
|
isloading: false,
|
||||||
visibleRecord:false,
|
visibleRecord: false,
|
||||||
isSaveing:false,
|
isSaveing: false,
|
||||||
tableHeight:null,
|
tableHeight: null,
|
||||||
activeName: '6车间',
|
activeName: '6车间',
|
||||||
activeNameSub: 'rate',
|
activeNameSub: 'rate',
|
||||||
visible:false,
|
visible: false,
|
||||||
orderitemList:[],
|
orderitemList: [],
|
||||||
selectedIds:[],
|
selectedIds: [],
|
||||||
utaskDetail:[],
|
utaskDetail: [],
|
||||||
tasks: {
|
tasks: {
|
||||||
data: []
|
data: []
|
||||||
},
|
},
|
||||||
loading:false,
|
loading: false,
|
||||||
end_date:'',
|
end_date: '',
|
||||||
start_date:'',
|
start_date: '',
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
@ -238,62 +211,62 @@ export default {
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
let heights = document.getElementById('topContainer').clientHeight;
|
let heights = document.getElementById('topContainer').clientHeight;
|
||||||
console.log('heights',heights)
|
console.log('heights', heights)
|
||||||
this.tableHeight = (heights-50)+'px';
|
this.tableHeight = (heights - 50) + 'px';
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleSelectionChange(selection){
|
handleSelectionChange(selection) {
|
||||||
this.selectedIds = [];
|
this.selectedIds = [];
|
||||||
selection.forEach(item => {
|
selection.forEach(item => {
|
||||||
this.selectedIds.push(item.id)
|
this.selectedIds.push(item.id)
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//任务分解
|
//任务分解
|
||||||
utaskDepuse(){
|
utaskDepuse() {
|
||||||
let that = this;
|
let that = this;
|
||||||
if(that.selectedIds.length>0){
|
if (that.selectedIds.length > 0) {
|
||||||
that.isloading = true;
|
that.isloading = true;
|
||||||
that.$API.pm.utask.scheduemtasks.req({ids:that.selectedIds}).then(res=>{
|
that.$API.pm.utask.scheduemtasks.req({ ids: that.selectedIds }).then(res => {
|
||||||
that.$message.success('任务分解成功');
|
that.$message.success('任务分解成功');
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
that.$refs.table1.refresh();
|
that.$refs.table1.refresh();
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
})
|
})
|
||||||
}else{
|
} else {
|
||||||
this.$message.error('未选择任何任务')
|
this.$message.error('未选择任何任务')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//终止
|
//终止
|
||||||
table_end(row){
|
table_end(row) {
|
||||||
this.$confirm(`确定终止该任务吗?`, "提示", {
|
this.$confirm(`确定终止该任务吗?`, "提示", {
|
||||||
type: "warning",
|
type: "warning",
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
// this.$API.pm.utask.delete.req(row.id).then((res) => {
|
// this.$API.pm.utask.delete.req(row.id).then((res) => {
|
||||||
// this.$message.success("删除成功");
|
// this.$message.success("删除成功");
|
||||||
// this.$refs.table7.refresh();
|
// this.$refs.table7.refresh();
|
||||||
// return res;
|
// return res;
|
||||||
// }).catch((err) => {
|
// }).catch((err) => {
|
||||||
// return err;
|
// return err;
|
||||||
// });
|
// });
|
||||||
}).catch(() => {});
|
}).catch(() => { });
|
||||||
},
|
},
|
||||||
utaskAssgin(){
|
utaskAssgin() {
|
||||||
let that = this;
|
let that = this;
|
||||||
if(that.selectedIds.length>0){
|
if (that.selectedIds.length > 0) {
|
||||||
that.isloading = true;
|
that.isloading = true;
|
||||||
that.$API.pm.utask.assgin.req({ids:that.selectedIds}).then(res=>{
|
that.$API.pm.utask.assgin.req({ ids: that.selectedIds }).then(res => {
|
||||||
that.$message.success('下达任务成功');
|
that.$message.success('下达任务成功');
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
that.$refs.table1.refresh();
|
that.$refs.table1.refresh();
|
||||||
}).catch(()=>{
|
}).catch(() => {
|
||||||
that.isloading = false;
|
that.isloading = false;
|
||||||
})
|
})
|
||||||
}else{
|
} else {
|
||||||
this.$message.error('未选择任何任务')
|
this.$message.error('未选择任何任务')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selectionOrderItemChange(selection){
|
selectionOrderItemChange(selection) {
|
||||||
this.orderitemList = [];
|
this.orderitemList = [];
|
||||||
selection.forEach(item => {
|
selection.forEach(item => {
|
||||||
this.orderitemList.push(item.id)
|
this.orderitemList.push(item.id)
|
||||||
|
@ -303,60 +276,59 @@ export default {
|
||||||
startPlan() {
|
startPlan() {
|
||||||
debugger;
|
debugger;
|
||||||
let that = this;
|
let that = this;
|
||||||
if(this.orderitemList.length>0){
|
if (this.orderitemList.length > 0) {
|
||||||
that.visible = true;
|
that.visible = true;
|
||||||
}else{
|
} else {
|
||||||
this.$message.error('未选择任何订单明细项目')
|
this.$message.error('未选择任何订单明细项目')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
rowClick(row){
|
rowClick(row) {
|
||||||
//获取 mtask
|
//获取 mtask
|
||||||
let that = this;
|
let that = this;
|
||||||
that.tasks.data = [];
|
that.tasks.data = [];
|
||||||
that.start_date = row.start_date;
|
that.start_date = row.start_date;
|
||||||
that.end_date = row.end_date;
|
that.end_date = row.end_date;
|
||||||
let objItem = {};
|
let objItem = {};
|
||||||
objItem.id=row.id;
|
objItem.id = row.id;
|
||||||
objItem.type='utask';
|
objItem.type = 'utask';
|
||||||
objItem.number=row.number;
|
objItem.number = row.number;
|
||||||
objItem.count=row.count;
|
objItem.count = row.count;
|
||||||
objItem.text =row.number,
|
objItem.text = row.number;
|
||||||
objItem.cate='',
|
objItem.material_name = row.material_.name;
|
||||||
|
objItem.material_specification = row.material_.specification;
|
||||||
|
objItem.material_model = row.material_.model;
|
||||||
objItem.progress = 1;
|
objItem.progress = 1;
|
||||||
objItem.count_ok=row.count_ok;
|
objItem.count_ok = row.count_ok;
|
||||||
objItem.count_real=row.count_real;
|
objItem.count_real = row.count_real;
|
||||||
objItem.count_notok=row.count_notok;
|
objItem.count_notok = row.count_notok;
|
||||||
objItem.state =row.state;
|
objItem.state = row.state;
|
||||||
objItem.start_date =row.start_date;
|
objItem.start_date = row.start_date;
|
||||||
objItem.mgroup_name = '';
|
objItem.mgroup_name = row.mgroup_name;
|
||||||
objItem.material_name = '';
|
objItem.open = true;
|
||||||
objItem.specification = '';
|
|
||||||
objItem.open=true;
|
|
||||||
that.tasks.data.push(objItem)
|
that.tasks.data.push(objItem)
|
||||||
this.$API.pm.mtask.list.req({utask:row.id,page:0,ordering:'start_date,mgroup__process__sort'}).then(res=>{
|
this.$API.pm.mtask.list.req({ utask: row.id, page: 0, ordering: 'start_date,mgroup__process__sort' }).then(res => {
|
||||||
console.log('获取甘特图数据',res)//获取甘特图数据
|
console.log('获取甘特图数据', res)//获取甘特图数据
|
||||||
res.forEach(item=>{
|
res.forEach(item => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
obj.id=item.id;
|
obj.id = item.id;
|
||||||
obj.type='task';
|
obj.type = 'task';
|
||||||
obj.parent=row.id;
|
obj.parent = row.id;
|
||||||
obj.number=item.number;
|
obj.number = item.number;
|
||||||
obj.text =item.mgroup_name,
|
obj.text = item.mgroup_name,
|
||||||
obj.cate='100*50*2',
|
obj.state = item.state;
|
||||||
obj.state =item.state;
|
|
||||||
obj.start = item.start_date;
|
obj.start = item.start_date;
|
||||||
obj.start_date = item.start_date;
|
obj.start_date = item.start_date;
|
||||||
obj.duration = 1;
|
obj.duration = 1;
|
||||||
obj.progress = item.count_real/item.count;
|
obj.progress = item.count_real / item.count;
|
||||||
obj.count=item.count;
|
obj.count = item.count;
|
||||||
obj.count_ok=item.count_ok;
|
obj.count_ok = item.count_ok;
|
||||||
obj.count_real=item.count_real;
|
obj.count_real = item.count_real;
|
||||||
obj.count_notok=item.count_notok;
|
obj.count_notok = item.count_notok;
|
||||||
obj.state = item.state;
|
obj.state = item.state;
|
||||||
obj.utask = item.utask;
|
obj.utask = item.utask;
|
||||||
obj.mgroup_name = item.mgroup_name;
|
obj.mgroup_name = item.mgroup_name;
|
||||||
obj.material_name = item.material_out_.name;
|
// obj.material_name = item.material_out_.name;
|
||||||
obj.specification = item.material_out_.specification;
|
// obj.material_specification = item.material_out_.specification;
|
||||||
console.log(obj)
|
console.log(obj)
|
||||||
that.tasks.data.push(obj)
|
that.tasks.data.push(obj)
|
||||||
})
|
})
|
||||||
|
@ -400,7 +372,7 @@ export default {
|
||||||
this.apiObj = this.$API.pm.mtask.list;
|
this.apiObj = this.$API.pm.mtask.list;
|
||||||
this.visibleRecord = true;
|
this.visibleRecord = true;
|
||||||
},
|
},
|
||||||
handleDetailQuery(){
|
handleDetailQuery() {
|
||||||
this.$refs.drawer_table.refresh();
|
this.$refs.drawer_table.refresh();
|
||||||
},
|
},
|
||||||
//删除
|
//删除
|
||||||
|
@ -428,8 +400,8 @@ export default {
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.query = {};
|
this.query = {};
|
||||||
},
|
},
|
||||||
closeAssginVisible(){},
|
closeAssginVisible() { },
|
||||||
submit(){
|
submit() {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.$refs.dialogForm.validate(async (valid) => {
|
that.$refs.dialogForm.validate(async (valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
|
@ -437,12 +409,12 @@ export default {
|
||||||
that.form.orderitems = that.orderitemList;
|
that.form.orderitems = that.orderitemList;
|
||||||
that.form.belong_dept = '3423857962907983872';//6车间
|
that.form.belong_dept = '3423857962907983872';//6车间
|
||||||
console.log(that.form)
|
console.log(that.form)
|
||||||
that.$API.pm.utask.schedueutasks.req(that.form).then(res=>{
|
that.$API.pm.utask.schedueutasks.req(that.form).then(res => {
|
||||||
that.visible = false;
|
that.visible = false;
|
||||||
that.$message.success("操作成功");
|
that.$message.success("操作成功");
|
||||||
that.$refs.table1.refresh();
|
that.$refs.table1.refresh();
|
||||||
that.$refs.table2.refresh();
|
that.$refs.table2.refresh();
|
||||||
}).catch(err=>{
|
}).catch(err => {
|
||||||
that.visible = false;
|
that.visible = false;
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -452,13 +424,15 @@ export default {
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.right-panel > * + * {
|
.right-panel>*+* {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-main.nopadding {
|
.el-main.nopadding {
|
||||||
padding: 0 20px 0 20px
|
padding: 0 20px 0 20px
|
||||||
}
|
}
|
||||||
.btnsContainer{
|
|
||||||
|
.btnsContainer {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 20px;
|
right: 20px;
|
||||||
|
@ -475,5 +449,4 @@ export default {
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
|
@ -1,87 +1,48 @@
|
||||||
<template>
|
<template>
|
||||||
<el-dialog
|
<el-dialog :title="titleMap[mode]" v-model="visible" :size="1000" destroy-on-close @closed="$emit('closed')">
|
||||||
:title="titleMap[mode]"
|
|
||||||
v-model="visible"
|
|
||||||
:size="1000"
|
|
||||||
destroy-on-close
|
|
||||||
@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" :model="form" :rules="rules" label-width="120px">
|
||||||
ref="dialogForm"
|
|
||||||
:model="form"
|
|
||||||
:rules="rules"
|
|
||||||
label-width="120px"
|
|
||||||
>
|
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="任务编号" prop="number">
|
<el-form-item label="任务编号" prop="number">
|
||||||
<el-input v-model="form.number" placeholder="任务编号" :disabled="mode=='edit'"/>
|
<el-input v-model="form.number" placeholder="任务编号" :disabled="mode == 'edit'" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24" v-if="activeName!=='6车间'">
|
<el-col :md="12" :sm="24" v-if="activeName !== '6车间'">
|
||||||
<el-form-item label="工段" prop="mgroup">
|
<el-form-item label="工段" prop="mgroup">
|
||||||
<el-select
|
<el-select v-model="form.mgroup" placeholder="工段" clearable style="width:100%" :disabled="mode == 'edit'"
|
||||||
v-model="form.mgroup"
|
@change="getMaterial">
|
||||||
placeholder="工段"
|
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||||
clearable
|
|
||||||
style="width:100%"
|
|
||||||
:disabled="mode=='edit'"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in options"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="产物" prop="material">
|
<el-form-item label="产物" prop="material">
|
||||||
<el-select
|
<el-select v-model="form.material" placeholder="产物" clearable style="width:100%"
|
||||||
v-model="form.material"
|
:disabled="mode == 'edit'">
|
||||||
placeholder="产物"
|
<el-option v-for="item in materialOptions" :key="item.id" :label="item.name"
|
||||||
clearable
|
:value="item.id"></el-option>
|
||||||
style="width:100%"
|
|
||||||
:disabled="mode=='edit'"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in materialOptions"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="任务数" prop="count">
|
<el-form-item label="任务数" prop="count">
|
||||||
<el-input-number style="width:100%" v-model="form.count" :min="1" controls-position="right" placeholder="任务数"/>
|
<el-input-number style="width:100%" v-model="form.count" :min="1" controls-position="right"
|
||||||
|
placeholder="任务数" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="开工日期" prop="start_date">
|
<el-form-item label="开工日期" prop="start_date">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.start_date" type="date" placeholder="开工日期" value-format="YYYY-MM-DD"
|
||||||
v-model="form.start_date"
|
style="width:100%">
|
||||||
type="date"
|
|
||||||
placeholder="开工日期"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="完工日期" prop="end_date">
|
<el-form-item label="完工日期" prop="end_date">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.end_date" type="date" placeholder="完工日期" value-format="YYYY-MM-DD"
|
||||||
v-model="form.end_date"
|
style="width:100%">
|
||||||
type="date"
|
|
||||||
placeholder="完工日期"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
@ -98,8 +59,8 @@
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
emits: ["success", "closed"],
|
emits: ["success", "closed"],
|
||||||
props:{
|
props: {
|
||||||
activeName:{ type: String, default: '' },
|
activeName: { type: String, default: '' },
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -112,17 +73,17 @@ export default {
|
||||||
},
|
},
|
||||||
form: {},
|
form: {},
|
||||||
rules: {
|
rules: {
|
||||||
mgroup:[{required:true, message:'请选择工段', trigger: "blur"}],
|
mgroup: [{ required: true, message: '请选择工段', trigger: "blur" }],
|
||||||
count:[{required:true, message:'请输入任务数', trigger: "blur"}],
|
count: [{ required: true, message: '请输入任务数', trigger: "blur" }],
|
||||||
start_date: [{required: true, message: "请选择开始时间", trigger: "blur"}],
|
start_date: [{ required: true, message: "请选择开始时间", trigger: "blur" }],
|
||||||
end_date: [{required: true, message: "请选择结束时间", trigger: "blur"}],
|
end_date: [{ required: true, message: "请选择结束时间", trigger: "blur" }],
|
||||||
number: [{required: true, message: "请输入任务编号", trigger: "blur"}],
|
number: [{ required: true, message: "请输入任务编号", trigger: "blur" }],
|
||||||
material: [{required: true, message: "请选选择产品", trigger: "blur"}]
|
material: [{ required: true, message: "请选选择产品", trigger: "blur" }]
|
||||||
},
|
},
|
||||||
visible: false,
|
visible: false,
|
||||||
isSaveing: false,
|
isSaveing: false,
|
||||||
options:[],
|
options: [],
|
||||||
materialOptions:[],
|
materialOptions: [],
|
||||||
selectionFilters: [],
|
selectionFilters: [],
|
||||||
setFiltersVisible: false,
|
setFiltersVisible: false,
|
||||||
belong_dept_options: [],
|
belong_dept_options: [],
|
||||||
|
@ -130,38 +91,52 @@ export default {
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getMaterial();
|
|
||||||
this.getMgroup();
|
this.getMgroup();
|
||||||
|
if (this.activeName == '6车间') {
|
||||||
|
this.getMaterial6dept();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
//显示
|
//显示
|
||||||
open(mode = "add",type) {
|
open(mode = "add", type) {
|
||||||
this.mode = mode;
|
this.mode = mode;
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
getMgroup(){
|
getMgroup() {
|
||||||
var res = this.$API.mtm.mgroup.list.req({ page: 0 }).then(res => {
|
var res = this.$API.mtm.mgroup.list.req({ page: 0, belong_dept__name: this.activeName }).then(res => {
|
||||||
this.options = res;
|
this.options = res;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
getMaterial(){
|
getMaterial6dept() {
|
||||||
//type:20,is_hidden:false 一部
|
this.$API.mtm.material.list.req({ page: 0, need_route: true }).then(res => {
|
||||||
//二部 page:0,type:'10'
|
|
||||||
let obj ={};
|
|
||||||
obj.page = 0;
|
|
||||||
if(this.activeName=='6车间'){
|
|
||||||
obj.type = 10;
|
|
||||||
obj.is_hidden = false;
|
|
||||||
obj.is_assemb = false;
|
|
||||||
}else{
|
|
||||||
obj.type = 20;
|
|
||||||
obj.is_hidden = false;
|
|
||||||
}
|
|
||||||
this.$API.mtm.material.list.req(obj).then(res=>{
|
|
||||||
this.materialOptions = res;
|
this.materialOptions = res;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
getMaterial(mgroupId) {
|
||||||
|
//type:20,is_hidden:false 一部
|
||||||
|
//二部 page:0,type:'10'
|
||||||
|
this.$API.mtm.route.list.req({ page: 0, mgroup: mgroupId }).then(res => {
|
||||||
|
let mOptions = []
|
||||||
|
for (var i = 0; i < res.length; i++) {
|
||||||
|
mOptions.push({ 'id': res[i].material_out, 'name': res[i].material_out_name })
|
||||||
|
}
|
||||||
|
this.materialOptions = mOptions;
|
||||||
|
})
|
||||||
|
// let obj = {};
|
||||||
|
// obj.page = 0;
|
||||||
|
// if (this.activeName == '6车间') {
|
||||||
|
// obj.type = 10;
|
||||||
|
// obj.is_hidden = false;
|
||||||
|
// obj.is_assemb = false;
|
||||||
|
// } else {
|
||||||
|
// obj.type = 20;
|
||||||
|
// obj.is_hidden = false;
|
||||||
|
// }
|
||||||
|
// this.$API.mtm.material.list.req(obj).then(res => {
|
||||||
|
// this.materialOptions = res;
|
||||||
|
// })
|
||||||
|
},
|
||||||
//提交
|
//提交
|
||||||
submit() {
|
submit() {
|
||||||
this.$refs.dialogForm.validate(async (valid) => {
|
this.$refs.dialogForm.validate(async (valid) => {
|
||||||
|
@ -169,19 +144,19 @@ export default {
|
||||||
this.isSaveing = true;
|
this.isSaveing = true;
|
||||||
try {
|
try {
|
||||||
var res;
|
var res;
|
||||||
if(this.activeName=='6车间'){
|
if (this.activeName == '6车间') {
|
||||||
this.form.belong_dept = '3423857962907983872';//6车间
|
this.form.belong_dept = '3423857962907983872';//6车间
|
||||||
}else if(this.activeName=='7车间'){
|
} else if (this.activeName == '7车间') {
|
||||||
this.form.belong_dept = '3423858259797598208';//7车间
|
this.form.belong_dept = '3423858259797598208';//7车间
|
||||||
}else if(this.activeName=='8车间'){
|
} else if (this.activeName == '8车间') {
|
||||||
this.form.belong_dept = '3423858687901908992';//8车间
|
this.form.belong_dept = '3423858687901908992';//8车间
|
||||||
}else if(this.activeName=='10车间'){
|
} else if (this.activeName == '10车间') {
|
||||||
this.form.belong_dept = '3423858348557549568';//10车间
|
this.form.belong_dept = '3423858348557549568';//10车间
|
||||||
}
|
}
|
||||||
if (this.mode == "add") {
|
if (this.mode == "add") {
|
||||||
res = await this.$API.pm.utask.create.req(this.form);
|
res = await this.$API.pm.utask.create.req(this.form);
|
||||||
} else if (this.mode == "edit") {
|
} else if (this.mode == "edit") {
|
||||||
res = await this.$API.pm.utask.update.req(this.form.id,this.form);
|
res = await this.$API.pm.utask.update.req(this.form.id, this.form);
|
||||||
}
|
}
|
||||||
this.isSaveing = false;
|
this.isSaveing = false;
|
||||||
this.$emit("success");
|
this.$emit("success");
|
||||||
|
@ -207,5 +182,4 @@ export default {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style></style>
|
||||||
</style>
|
|
||||||
|
|
|
@ -1,275 +1,211 @@
|
||||||
<template>
|
<template>
|
||||||
<el-dialog
|
<el-dialog :title="titleMap[mode]" v-model="visible" width="1000px" :size="1000" destroy-on-close
|
||||||
:title="titleMap[mode]"
|
@closed="$emit('closed')">
|
||||||
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-form ref="dialogForm" :model="form" :rules="rules" label-width="80px">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="交接物料" prop="material">
|
<el-form-item label="交接物料" prop="material">
|
||||||
<el-select
|
<el-select v-model="form.wm" placeholder="交接物料" clearable style="width:100%"
|
||||||
v-model="form.wm"
|
@change="materialChange">
|
||||||
placeholder="交接物料"
|
<el-option v-for="item in materialOptions" :key="item.id" :label="item.batch"
|
||||||
clearable
|
:value="item.id"></el-option>
|
||||||
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-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="交接数量" width="100">
|
<el-form-item label="交接数量" width="100">
|
||||||
<el-input-number
|
<el-input-number v-model="form.count" controls-position="right" :min="0" step="1"
|
||||||
v-model="form.count"
|
:step-strictly="true" style="width:100%" placeholder="交接数量">
|
||||||
controls-position="right"
|
|
||||||
:min="0" step="1"
|
|
||||||
:step-strictly="true"
|
|
||||||
style="width:100%"
|
|
||||||
placeholder="交接数量">
|
|
||||||
</el-input-number>
|
</el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="送料部门" prop="send_dept">
|
<el-form-item label="送料部门" prop="send_dept">
|
||||||
<el-select
|
<el-select v-model="form.send_dept" placeholder="送料部门" clearable style="width:100%">
|
||||||
v-model="form.send_dept"
|
<el-option v-for="item in deptOptions" :key="item.id" :label="item.name"
|
||||||
placeholder="送料部门"
|
:value="item.id"></el-option>
|
||||||
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-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="交送人" prop="send_user">
|
<el-form-item label="交送人" prop="send_user">
|
||||||
<el-select
|
<el-select v-model="form.send_user" placeholder="交送人" clearable style="width:100%">
|
||||||
v-model="form.send_user"
|
<el-option v-for="item in userList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
placeholder="交送人"
|
|
||||||
clearable
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in userList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="接收部门" prop="recive_dept">
|
<el-form-item label="接收部门" prop="recive_dept">
|
||||||
<el-select
|
<el-select v-model="form.recive_dept" placeholder="接收部门" clearable style="width:100%">
|
||||||
v-model="form.recive_dept"
|
<el-option v-for="item in deptOptions" :key="item.id" :label="item.name"
|
||||||
placeholder="接收部门"
|
:value="item.id"></el-option>
|
||||||
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-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="接收人" prop="recive_user">
|
<el-form-item label="接收人" prop="recive_user">
|
||||||
<el-select
|
<el-select v-model="form.recive_user" placeholder="接收人" clearable style="width:100%">
|
||||||
v-model="form.recive_user"
|
<el-option v-for="item in userList2" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
placeholder="接收人"
|
|
||||||
clearable
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in userList2"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="交送日期">
|
<el-form-item label="交送日期">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.send_date" type="date" placeholder="选择时间" format="YYYY-MM-DD"
|
||||||
v-model="form.send_date"
|
value-format="YYYY-MM-DD" style="width:100%" />
|
||||||
type="date"
|
|
||||||
placeholder="选择时间"
|
|
||||||
format="YYYY-MM-DD"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
style="width:100%"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-footer>
|
<el-footer>
|
||||||
<el-button type="primary" v-loading="isSaveing" @click="submit">确定</el-button>
|
<el-button type="primary" v-loading="isSaveing" @click="submit">确定</el-button>
|
||||||
<el-button @click="resetForm">取消</el-button>
|
<el-button @click="visible = false">取消</el-button>
|
||||||
</el-footer>
|
</el-footer>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
emits: ["success", "closed"],
|
emits: ["success", "closed"],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
yseorno:['是','否'],
|
yseorno: ['是', '否'],
|
||||||
loading: false,
|
loading: false,
|
||||||
mode: "add",
|
mode: "add",
|
||||||
titleMap: {
|
titleMap: {
|
||||||
add: "新增交接记录",
|
add: "新增交接记录",
|
||||||
edit: "编辑交接记录",
|
edit: "编辑交接记录",
|
||||||
show: "查看交接记录",
|
show: "查看交接记录",
|
||||||
},
|
},
|
||||||
handle_user:[],
|
handle_user: [],
|
||||||
form:{
|
form: {
|
||||||
batch:'',
|
batch: '',
|
||||||
count:0,//送料数
|
count: 0,//送料数
|
||||||
wm:'',
|
wm: '',
|
||||||
send_user:'',
|
send_user: '',
|
||||||
send_dept:'',
|
send_dept: '',
|
||||||
send_date:'',
|
send_date: '',
|
||||||
recive_dept:'',
|
recive_dept: '',
|
||||||
recive_user:'',
|
recive_user: '',
|
||||||
},
|
},
|
||||||
userList:[],
|
userList: [],
|
||||||
userList2:[],
|
userList2: [],
|
||||||
deptOptions:[],
|
deptOptions: [],
|
||||||
materialOptions:[],
|
materialOptions: [],
|
||||||
visible: false,
|
visible: false,
|
||||||
isSaveing: false,
|
isSaveing: false,
|
||||||
setFiltersVisible: false,
|
setFiltersVisible: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
let materialObj = this.$TOOL.data.get('MATERIAL_OBJECT');
|
let materialObj = this.$TOOL.data.get('MATERIAL_OBJECT');
|
||||||
this.materialObj = materialObj;
|
this.materialObj = materialObj;
|
||||||
this.getDeptOptions();
|
this.getDeptOptions();
|
||||||
this.getMaterial();
|
this.getMaterial();
|
||||||
this.getUserList();
|
this.getUserList();
|
||||||
let date = new Date();
|
let date = new Date();
|
||||||
let year = date.getFullYear();
|
let year = date.getFullYear();
|
||||||
let month = date.getMonth()+1;
|
let month = date.getMonth() + 1;
|
||||||
let day = date.getDate();
|
let day = date.getDate();
|
||||||
this.form.handle_date = year+'-'+month+'-'+day;
|
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;
|
||||||
|
});
|
||||||
},
|
},
|
||||||
methods: {
|
//获取部门列表
|
||||||
//获取6车间和8车间 的人员
|
getDeptOptions() {
|
||||||
getUserList(){
|
this.$API.system.dept.list.req({ page: 0, type__in: 'dept' }).then((res) => {
|
||||||
let that = this;
|
this.deptOptions = [];
|
||||||
this.$API.system.user.list.req({belong_dept__name:'6车间',page:0}).then(res=>{
|
res.forEach(item => {
|
||||||
that.userList2 = res;
|
if (item.parent == '3423856735881117696') {
|
||||||
});
|
this.deptOptions.push(item)
|
||||||
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;
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
};
|
//获取车间物料
|
||||||
|
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>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.formTitle{
|
.formTitle {
|
||||||
margin-bottom:10px;
|
margin-bottom: 10px;
|
||||||
font-weight:600
|
font-weight: 600
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -4,19 +4,13 @@
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
<el-col :span="activeSpan" style="border-right: 1px solid #eeeeee;position: relative;">
|
<el-col :span="activeSpan" style="border-right: 1px solid #eeeeee;position: relative;">
|
||||||
<div class="right-panel btnWrap">
|
<div class="right-panel btnWrap">
|
||||||
<el-button v-if="activeName == '8车间' || activeName == '退火'" type="primary" icon="el-icon-plus" @click="add">新增</el-button>
|
<el-button v-if="activeName == '8车间' || activeName == '退火'" type="primary" icon="el-icon-plus"
|
||||||
|
@click="add">新增</el-button>
|
||||||
<el-button v-if="activeName == '退火'" type="primary" @click="submittuihuo">提交</el-button>
|
<el-button v-if="activeName == '退火'" type="primary" @click="submittuihuo">提交</el-button>
|
||||||
<el-date-picker v-if="activeName == '7车间' || activeName == '10车间'"
|
<el-date-picker v-if="activeName == '7车间' || activeName == '10车间'" v-model="paramsDate" type="date"
|
||||||
v-model="paramsDate"
|
value-format="YYYY-MM-DD" />
|
||||||
type="date"
|
<el-button type="primary" icon="el-icon-search" @click="handleQuerys"
|
||||||
value-format="YYYY-MM-DD"
|
v-if="activeName == '7车间' || activeName == '10车间'">查询</el-button>
|
||||||
/>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
@click="handleQuerys"
|
|
||||||
v-if="activeName == '7车间' || activeName == '10车间'"
|
|
||||||
>查询</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
||||||
<el-tab-pane label="混料工序" name="8车间">
|
<el-tab-pane label="混料工序" name="8车间">
|
||||||
|
@ -30,8 +24,6 @@
|
||||||
}}</span>
|
}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="设备" prop="equipment_name">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="批次" prop="batch">
|
<el-table-column label="批次" prop="batch">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量/桶数" prop="count_real">
|
<el-table-column label="数量/桶数" prop="count_real">
|
||||||
|
@ -68,8 +60,6 @@
|
||||||
}}</span>
|
}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="设备" prop="equipment_name">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="批次" prop="batch">
|
<el-table-column label="批次" prop="batch">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量/桶数" prop="count">
|
<el-table-column label="数量/桶数" prop="count">
|
||||||
|
@ -86,7 +76,7 @@
|
||||||
编辑
|
编辑
|
||||||
</el-link>
|
</el-link>
|
||||||
<el-divider direction="vertical"></el-divider>
|
<el-divider direction="vertical"></el-divider>
|
||||||
<el-link type="danger" @click="table_del(scope.row, '8车间')" v-auth="'equipment'">
|
<el-link type="danger" @click="delHandover2(scope.row, '8车间')" v-auth="'equipment'">
|
||||||
删除
|
删除
|
||||||
</el-link>
|
</el-link>
|
||||||
</template>
|
</template>
|
||||||
|
@ -170,26 +160,18 @@
|
||||||
</div>
|
</div>
|
||||||
<scTable ref="table8wM" :apiObj="apiObjMetarial" row-key="id" stripe :height="tableHeightHalf"
|
<scTable ref="table8wM" :apiObj="apiObjMetarial" row-key="id" stripe :height="tableHeightHalf"
|
||||||
:params="paramsMaterial" hidePagination hideDo @selection-change="handleSelectionChange">
|
:params="paramsMaterial" hidePagination hideDo @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="index" width="50" />
|
<el-table-column label="物料名" prop="material">
|
||||||
<el-table-column type="selection" width="40" />
|
<template #default="scope">{{ scope.row.material_.name }}</template>
|
||||||
<el-table-column label="送料日期" prop="send_date">
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产物" prop="material" show-overflow-tooltip>
|
<el-table-column label="规格" prop="material">
|
||||||
<template #default="scope"><span v-if="scope.row.material_out_">{{ scope.row.material_out_.name
|
<template #default="scope">{{ scope.row.material_.specification }}</template>
|
||||||
}}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="设备" prop="equipment_name">
|
<el-table-column label="型号" prop="material">
|
||||||
|
<template #default="scope">{{ scope.row.material_.model }}</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="批次" prop="batch">
|
<el-table-column label="批次" prop="batch">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量/桶数" prop="count_real">
|
<el-table-column label="数量" prop="count" width="80">
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="每桶重量/kg" prop="count_real_eweight">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="交送人" prop="send_user_name">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="接收人" prop="send_user_name">
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<!-- <el-table-column label="操作" fixed="right" align="left">
|
<!-- <el-table-column label="操作" fixed="right" align="left">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
@ -216,7 +198,7 @@
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="7车间" name="7车间">
|
<el-tab-pane label="7车间" name="7车间">
|
||||||
<scTable ref="table7" :apiObj="apiObjMtask" row-key="id" stripe :height="tableHeight" :params="params7"
|
<scTable ref="table7" :apiObj="apiObjMtask" row-key="id" stripe :height="tableHeight" :params="params7"
|
||||||
hideDo @row-click="rowClick">
|
hideDo @row-click="rowClick">
|
||||||
<el-table-column type="index" width="50" />
|
<el-table-column type="index" width="50" />
|
||||||
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
@ -261,7 +243,7 @@
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="10车间" name="10车间">
|
<el-tab-pane label="10车间" name="10车间">
|
||||||
<scTable ref="table10" :apiObj="apiObjMtask" row-key="id" stripe :height="tableHeight" :params="params10"
|
<scTable ref="table10" :apiObj="apiObjMtask" row-key="id" stripe :height="tableHeight" :params="params10"
|
||||||
hideDo @row-click="rowClick">
|
hideDo @row-click="rowClick">
|
||||||
<el-table-column type="index" width="50" />
|
<el-table-column type="index" width="50" />
|
||||||
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
@ -303,7 +285,7 @@
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12" v-if="activeName=='7车间'||activeName == '10车间'">
|
<el-col :span="12" v-if="activeName == '7车间' || activeName == '10车间'">
|
||||||
<el-card>
|
<el-card>
|
||||||
<el-form label-width="100px">
|
<el-form label-width="100px">
|
||||||
<el-row>
|
<el-row>
|
||||||
|
@ -462,28 +444,20 @@
|
||||||
<el-button type="primary" @click="getMaterial">领料</el-button>
|
<el-button type="primary" @click="getMaterial">领料</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<scTable ref="table8wM" :apiObj="apiObjMetarial" row-key="id" stripe :height="300"
|
<scTable ref="table8wM" :apiObj="apiObjMetarial" row-key="id" stripe :height="300" :params="paramsMaterial"
|
||||||
:params="paramsMaterial" hidePagination hideDo>
|
hidePagination hideDo>
|
||||||
<el-table-column type="index" width="50" />
|
<el-table-column label="物料名" prop="material">
|
||||||
<el-table-column type="selection" width="40" />
|
<template #default="scope">{{ scope.row.material_.name }}</template>
|
||||||
<el-table-column label="送料日期" prop="send_date">
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产物" prop="material" show-overflow-tooltip>
|
<el-table-column label="规格" prop="material">
|
||||||
<template #default="scope">
|
<template #default="scope">{{ scope.row.material_.specification }}</template>
|
||||||
<span v-if="scope.row.material_out_">{{ scope.row.material_out_.name}}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="设备" prop="equipment_name">
|
<el-table-column label="型号" prop="material">
|
||||||
|
<template #default="scope">{{ scope.row.material_.model }}</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="批次" prop="batch">
|
<el-table-column label="批次" prop="batch">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量/桶数" prop="count_real">
|
<el-table-column label="数量" prop="count" width="80">
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="每桶重量/kg" prop="count_real_eweight">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="交送人" prop="send_user_name">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="接收人" prop="send_user_name">
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</scTable>
|
</scTable>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
@ -511,13 +485,6 @@
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
|
||||||
<el-form-item label="送料部门" prop="send_dept">
|
|
||||||
<el-select v-model="handoverForm.send_dept" placeholder="送料部门" clearable style="width:100%">
|
|
||||||
<el-option v-for="item in group" :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-col :md="12" :sm="24">
|
||||||
<el-form-item label="接收人" prop="recive_user">
|
<el-form-item label="接收人" prop="recive_user">
|
||||||
<el-select v-model="handoverForm.recive_user" placeholder="接收人" clearable style="width:100%">
|
<el-select v-model="handoverForm.recive_user" placeholder="接收人" clearable style="width:100%">
|
||||||
|
@ -569,7 +536,7 @@ export default {
|
||||||
handover: false
|
handover: false
|
||||||
},
|
},
|
||||||
handoverVisible: false,
|
handoverVisible: false,
|
||||||
paramsDate:'',
|
paramsDate: '',
|
||||||
// apiObj: this.$API.pm.mtask.list,
|
// apiObj: this.$API.pm.mtask.list,
|
||||||
params7: {
|
params7: {
|
||||||
mgroup__belong_dept__name: '7车间'
|
mgroup__belong_dept__name: '7车间'
|
||||||
|
@ -679,16 +646,16 @@ export default {
|
||||||
console.log(val.index);
|
console.log(val.index);
|
||||||
if (val.index == 0) {
|
if (val.index == 0) {
|
||||||
this.activeSpan = 24
|
this.activeSpan = 24
|
||||||
}else if(val.index == 1) {
|
} else if (val.index == 1) {
|
||||||
this.activeSpan = 24;
|
this.activeSpan = 24;
|
||||||
this.paramsMaterial.belong_dept__name = '8车间';
|
this.paramsMaterial.belong_dept__name = '8车间';
|
||||||
this.$refs.table8wM.refresh();
|
this.$refs.table8wM.refresh();
|
||||||
}else if(val.index == 2){
|
} else if (val.index == 2) {
|
||||||
this.activeSpan = 12;
|
this.activeSpan = 12;
|
||||||
this.paramsMaterial.belong_dept__name = '7车间';
|
this.paramsMaterial.belong_dept__name = '7车间';
|
||||||
this.$refs.table8wM.refresh();
|
this.$refs.table8wM.refresh();
|
||||||
}
|
}
|
||||||
else if(val.index == 3){
|
else if (val.index == 3) {
|
||||||
this.activeSpan = 12;
|
this.activeSpan = 12;
|
||||||
this.paramsMaterial.belong_dept__name = '10车间';
|
this.paramsMaterial.belong_dept__name = '10车间';
|
||||||
this.$refs.table8wM.refresh();
|
this.$refs.table8wM.refresh();
|
||||||
|
@ -697,14 +664,14 @@ export default {
|
||||||
this.choseData = null;
|
this.choseData = null;
|
||||||
this.flogs = [];
|
this.flogs = [];
|
||||||
},
|
},
|
||||||
handleQuerys(){
|
handleQuerys() {
|
||||||
if(this.activeName=='7车间'){
|
if (this.activeName == '7车间') {
|
||||||
this.params7.start_date = this.paramsDate;
|
this.params7.start_date = this.paramsDate;
|
||||||
this.params7.end_date = this.paramsDate;
|
this.params7.end_date = this.paramsDate;
|
||||||
console.log('paramsDate',this.paramsDate)
|
console.log('paramsDate', this.paramsDate)
|
||||||
console.log('7车间',this.params7)
|
console.log('7车间', this.params7)
|
||||||
this.$refs.table7.queryData(this.params7);
|
this.$refs.table7.queryData(this.params7);
|
||||||
}else{
|
} else {
|
||||||
this.params10.start_date = this.paramsDate;
|
this.params10.start_date = this.paramsDate;
|
||||||
this.params10.end_date = this.paramsDate;
|
this.params10.end_date = this.paramsDate;
|
||||||
this.$refs.table10.queryData(this.params10);
|
this.$refs.table10.queryData(this.params10);
|
||||||
|
@ -719,8 +686,8 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
//退火日志提交
|
//退火日志提交
|
||||||
table_tuihuo_submit(row){
|
table_tuihuo_submit(row) {
|
||||||
this.$API.wpm.mlog.submit.req(row.id,row).then(res => {
|
this.$API.wpm.mlog.submit.req(row.id, row).then(res => {
|
||||||
console.log(res)
|
console.log(res)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
@ -754,7 +721,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//提交退火
|
//提交退火
|
||||||
submittuihuo(){},
|
submittuihuo() { },
|
||||||
|
|
||||||
//编辑
|
//编辑
|
||||||
table_edit(row) {
|
table_edit(row) {
|
||||||
|
@ -820,7 +787,7 @@ export default {
|
||||||
this.handoverForm.batch = row.batch;
|
this.handoverForm.batch = row.batch;
|
||||||
this.handoverForm.count = row.count_real;
|
this.handoverForm.count = row.count_real;
|
||||||
this.handoverForm.count_eweight = row.count_real_eweight;
|
this.handoverForm.count_eweight = row.count_real_eweight;
|
||||||
this.handoverForm.send_dept = '';
|
this.handoverForm.send_dept = row.belong_dept;
|
||||||
this.handoverForm.recive_dept = '';
|
this.handoverForm.recive_dept = '';
|
||||||
this.handoverForm.send_user = '';
|
this.handoverForm.send_user = '';
|
||||||
this.handoverForm.recive_user = '';
|
this.handoverForm.recive_user = '';
|
||||||
|
@ -846,6 +813,7 @@ export default {
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$API.wpm.handover.delete.req(row.id).then((res) => {
|
this.$API.wpm.handover.delete.req(row.id).then((res) => {
|
||||||
this.$message.success("删除成功");
|
this.$message.success("删除成功");
|
||||||
|
this.$refs.table8.refresh();
|
||||||
return res;
|
return res;
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
return err;
|
return err;
|
||||||
|
|
|
@ -1,151 +1,108 @@
|
||||||
<template>
|
<template>
|
||||||
<el-container style="flex-direction: column">
|
<el-container style="flex-direction: column">
|
||||||
<el-main id="topContainer" class="nopadding" style="position: relative;margin-bottom: 10px;">
|
<el-main id="topContainer" class="nopadding" style="position: relative;margin-bottom: 10px;">
|
||||||
<div class="right-panel tabsHeader">
|
<div class="right-panel tabsHeader">
|
||||||
<el-date-picker
|
<el-date-picker v-model="query.date" type="date" value-format="YYYY-MM-DD" />
|
||||||
v-model="query.date"
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||||
type="date"
|
</div>
|
||||||
value-format="YYYY-MM-DD"
|
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
||||||
/>
|
<el-tab-pane label="粗加工6车间" name="first">
|
||||||
<el-button
|
<scTable ref="table" :apiObj="apiObj" row-key="id" stripe :height="topHeight" :params="query" hidePagination
|
||||||
type="primary"
|
@row-click="rowClick">
|
||||||
icon="el-icon-search"
|
<el-table-column type="index" width="50" />
|
||||||
@click="handleQuery"
|
<el-table-column label="任务编号" prop="number">
|
||||||
>查询</el-button>
|
</el-table-column>
|
||||||
</div>
|
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
||||||
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
<template #default="scope">
|
||||||
<el-tab-pane label="粗加工6车间" name="first">
|
<span v-if="scope.row.material_out_">{{ scope.row.material_out_.name }}</span>
|
||||||
<scTable
|
</template>
|
||||||
ref="table"
|
</el-table-column>
|
||||||
:apiObj="apiObj"
|
<el-table-column label="产品型号" prop="number">
|
||||||
row-key="id"
|
</el-table-column>
|
||||||
stripe
|
<el-table-column label="产品规格" prop="number">
|
||||||
:height="topHeight"
|
</el-table-column>
|
||||||
:params="query"
|
<el-table-column label="计划数量" prop="count">
|
||||||
hidePagination
|
</el-table-column>
|
||||||
@row-click="rowClick"
|
<el-table-column label="计划日期" prop="count">
|
||||||
>
|
</el-table-column>
|
||||||
<el-table-column type="index" width="50"/>
|
<el-table-column label="状态" prop="state">
|
||||||
<el-table-column label="任务编号" prop="number">
|
<template #default="scope">
|
||||||
</el-table-column>
|
<el-tag v-if="scope.row.state !== 40">
|
||||||
<el-table-column label="产品名称" prop="material" show-overflow-tooltip>
|
{{ state_[scope.row.state] }}
|
||||||
<template #default="scope">
|
</el-tag>
|
||||||
<span v-if="scope.row.material_out_">{{ scope.row.material_out_.name }}</span>
|
<el-tag v-else type="success">
|
||||||
</template>
|
{{ state_[scope.row.state] }}
|
||||||
</el-table-column>
|
</el-tag>
|
||||||
<el-table-column label="产品型号" prop="number">
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产品规格" prop="number">
|
<el-table-column label="操作" fixed="right" width="120">
|
||||||
</el-table-column>
|
<template #default="scope">
|
||||||
<el-table-column label="计划数量" prop="count">
|
<el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.status == 10">生产记录
|
||||||
</el-table-column>
|
</el-link>
|
||||||
<el-table-column label="计划日期" prop="count">
|
<el-link type="primary" @click="table_show(scope.row)" v-else>查看
|
||||||
</el-table-column>
|
</el-link>
|
||||||
<el-table-column label="状态" prop="state">
|
</template>
|
||||||
<template #default="scope">
|
</el-table-column>
|
||||||
<el-tag v-if="scope.row.state!==40">
|
</scTable>
|
||||||
{{ state_[scope.row.state] }}
|
</el-tab-pane>
|
||||||
</el-tag>
|
</el-tabs>
|
||||||
<el-tag v-else type="success">
|
</el-main>
|
||||||
{{ state_[scope.row.state] }}
|
<el-main class="nopadding" style="position: relative;">
|
||||||
</el-tag>
|
<div>
|
||||||
</template>
|
<el-row :gutter="20">
|
||||||
</el-table-column>
|
<el-col :span="13" style="border-right: 1px solid #eeeeee;">
|
||||||
<el-table-column label="操作" fixed="right" width="120">
|
<div class="tableTitle">工序进度</div>
|
||||||
<template #default="scope">
|
<scTable ref="tableprocess" row-key="id" stripe :hideDo="hideDo" :data="processList" :height="bottomHeight">
|
||||||
<el-link
|
<el-table-column type="index" width="50" />
|
||||||
type="primary"
|
<el-table-column label="日期" prop="start_date">
|
||||||
@click="table_edit(scope.row)"
|
</el-table-column>
|
||||||
v-if="scope.row.status==10"
|
<el-table-column label="工序" prop="mgroup_name">
|
||||||
>生产记录
|
</el-table-column>
|
||||||
</el-link>
|
<el-table-column label="产品名称" prop="number">
|
||||||
<el-link
|
</el-table-column>
|
||||||
type="primary"
|
<el-table-column label="型号规格" prop="specification">
|
||||||
@click="table_show(scope.row)"
|
</el-table-column>
|
||||||
v-else
|
<el-table-column label="规格" prop="number">
|
||||||
>查看
|
</el-table-column>
|
||||||
</el-link>
|
<el-table-column label="计划数量" prop="count">
|
||||||
</template>
|
</el-table-column>
|
||||||
</el-table-column>
|
<el-table-column label="合格数量" prop="count_ok">
|
||||||
</scTable>
|
</el-table-column>
|
||||||
</el-tab-pane>
|
<el-table-column label="操作人" prop="">
|
||||||
</el-tabs>
|
</el-table-column>
|
||||||
</el-main>
|
</scTable>
|
||||||
<el-main class="nopadding" style="position: relative;">
|
</el-col>
|
||||||
<div>
|
<el-col :span="11">
|
||||||
<el-row :gutter="20">
|
<div class="tableTitle" style="display:flex;justify-content: space-between;">
|
||||||
<el-col :span="13" style="border-right: 1px solid #eeeeee;">
|
<div>车间物料</div>
|
||||||
<div class="tableTitle">工序进度</div>
|
<div class="btnsContainer right-panel">
|
||||||
<scTable
|
<el-button type="primary" @click="tomio">车间入库</el-button>
|
||||||
ref="tableprocess"
|
<el-button type="primary" @click="tomio">车间出库</el-button>
|
||||||
row-key="id"
|
|
||||||
stripe
|
|
||||||
:hideDo="hideDo"
|
|
||||||
:data="processList"
|
|
||||||
:height="bottomHeight"
|
|
||||||
>
|
|
||||||
<el-table-column type="index" width="50"/>
|
|
||||||
<el-table-column label="日期" prop="start_date">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="工序" prop="mgroup_name">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="产品名称" prop="number">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="型号规格" prop="specification">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="规格" prop="number">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="计划数量" prop="count">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="合格数量" prop="count_ok">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作人" prop="">
|
|
||||||
</el-table-column>
|
|
||||||
</scTable>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="11">
|
|
||||||
<div class="tableTitle" style="display:flex;justify-content: space-between;">
|
|
||||||
<div>车间物料</div>
|
|
||||||
<div class="btnsContainer right-panel">
|
|
||||||
<el-button type="primary" @click="tomio">车间入库</el-button>
|
|
||||||
<el-button type="primary" @click="tomio">车间出库</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<scTable
|
</div>
|
||||||
ref="tableMaterial"
|
<scTable ref="tableMaterial" row-key="id" stripe :hideDo="hideDo" :data="wMaterial" :height="bottomHeight">
|
||||||
row-key="id"
|
<el-table-column type="index" width="50" />
|
||||||
stripe
|
<el-table-column label="物料名" prop="material">
|
||||||
:hideDo="hideDo"
|
<template #default="scope">{{ scope.row.material_.name }}</template>
|
||||||
:data="wMaterial"
|
</el-table-column>
|
||||||
:height="bottomHeight"
|
<el-table-column label="规格" prop="material">
|
||||||
>
|
<template #default="scope">{{ scope.row.material_.specification }}</template>
|
||||||
<el-table-column type="index" width="50"/>
|
</el-table-column>
|
||||||
<el-table-column label="产品编号" prop="material_">
|
<el-table-column label="型号" prop="material">
|
||||||
<template #default="scope">
|
<template #default="scope">{{ scope.row.material_.model }}</template>
|
||||||
<span v-if="scope.row.material_">{{ scope.row.material_.number }}</span>
|
</el-table-column>
|
||||||
</template>
|
<el-table-column label="批次" prop="batch">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="产品名称" prop="material_">
|
<el-table-column label="数量" prop="count" width="80">
|
||||||
<template #default="scope">
|
</el-table-column>
|
||||||
<span v-if="scope.row.material_">{{ scope.row.material_.name }}</span>
|
</scTable>
|
||||||
</template>
|
</el-col>
|
||||||
</el-table-column>
|
</el-row>
|
||||||
<el-table-column label="型号规格" prop="specification">
|
</div>
|
||||||
</el-table-column>
|
</el-main>
|
||||||
<el-table-column label="数量" prop="count">
|
</el-container>
|
||||||
</el-table-column>
|
<save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess"
|
||||||
</scTable>
|
@closed="dialog.save = false"></save-dialog>
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
|
||||||
</el-main>
|
|
||||||
</el-container>
|
|
||||||
<save-dialog
|
|
||||||
v-if="dialog.save"
|
|
||||||
ref="saveDialog"
|
|
||||||
@success="handleSaveSuccess"
|
|
||||||
@closed="dialog.save = false"
|
|
||||||
></save-dialog>
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
|
@ -157,59 +114,59 @@ export default {
|
||||||
},
|
},
|
||||||
apiObj: "",
|
apiObj: "",
|
||||||
query: {
|
query: {
|
||||||
page:1,
|
page: 1,
|
||||||
page_size:20,
|
page_size: 20,
|
||||||
belong_dept_name:'6车间',
|
belong_dept_name: '6车间',
|
||||||
date:'2023-10-24'
|
date: '2023-10-24'
|
||||||
},
|
},
|
||||||
activeName:'first',
|
activeName: 'first',
|
||||||
tableData: [],
|
tableData: [],
|
||||||
selection: [],
|
selection: [],
|
||||||
wMaterial:[],//车间物料
|
wMaterial: [],//车间物料
|
||||||
processList:[],//工序进度
|
processList: [],//工序进度
|
||||||
state_: {
|
state_: {
|
||||||
10: '创建中',
|
10: '创建中',
|
||||||
20: '已下达',
|
20: '已下达',
|
||||||
30: '生产中',
|
30: '生产中',
|
||||||
40: '已提交',
|
40: '已提交',
|
||||||
},
|
},
|
||||||
hideDo:true,
|
hideDo: true,
|
||||||
topHeight:null,
|
topHeight: null,
|
||||||
bottomHeight:null,
|
bottomHeight: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted(){
|
mounted() {
|
||||||
let heights = document.getElementById('topContainer').clientHeight;
|
let heights = document.getElementById('topContainer').clientHeight;
|
||||||
console.log('heights',heights)
|
console.log('heights', heights)
|
||||||
this.topHeight = (heights-50)+'px';
|
this.topHeight = (heights - 50) + 'px';
|
||||||
this.bottomHeight = (heights-50)+'px';
|
this.bottomHeight = (heights - 50) + 'px';
|
||||||
this.getWorkSpaceMaterial();
|
this.getWorkSpaceMaterial();
|
||||||
let NowDate = new Date();
|
let NowDate = new Date();
|
||||||
let month = NowDate.getMonth()>8?NowDate.getMonth()+1:'0'+(NowDate.getMonth()+1)
|
let month = NowDate.getMonth() > 8 ? NowDate.getMonth() + 1 : '0' + (NowDate.getMonth() + 1)
|
||||||
this.query.date = NowDate.getFullYear()+'-'+(NowDate.getMonth()+1)+'-'+NowDate.getDate();
|
this.query.date = NowDate.getFullYear() + '-' + (NowDate.getMonth() + 1) + '-' + NowDate.getDate();
|
||||||
this.apiObj = this.$API.pm.mtask.daylist;
|
this.apiObj = this.$API.pm.mtask.daylist;
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
//车间物料
|
//车间物料
|
||||||
getWorkSpaceMaterial(){
|
getWorkSpaceMaterial() {
|
||||||
let that = this;
|
let that = this;
|
||||||
this.$API.wpm.wmaterial.list.req({belong_dept_name:'6车间'}).then(res=>{
|
this.$API.wpm.wmaterial.list.req({ belong_dept__name: '6车间' }).then(res => {
|
||||||
that.wMaterial = res.results;
|
that.wMaterial = res.results;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
handleClick(val){
|
handleClick(val) {
|
||||||
if(val==0){
|
if (val == 0) {
|
||||||
|
|
||||||
}else if(val==1){
|
} else if (val == 1) {
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//点击任务
|
//点击任务
|
||||||
rowClick(row){
|
rowClick(row) {
|
||||||
debugger;
|
debugger;
|
||||||
console.log(row)
|
console.log(row)
|
||||||
let that = this;
|
let that = this;
|
||||||
this.$API.pm.mtask.list.req({start_date:row.start_date,end_date:row.end_date,mgroup__belong_dept__name:'6车间',utask:row.utask}).then(res=>{
|
this.$API.pm.mtask.list.req({ start_date: row.start_date, end_date: row.end_date, mgroup__belong_dept__name: '6车间', utask: row.utask }).then(res => {
|
||||||
// debugger;
|
// debugger;
|
||||||
console.log('工序进度')
|
console.log('工序进度')
|
||||||
console.log(res)
|
console.log(res)
|
||||||
|
@ -233,9 +190,9 @@ export default {
|
||||||
//查看
|
//查看
|
||||||
table_show(row) {
|
table_show(row) {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: "worktaskFlog",
|
name: "worktaskFlog",
|
||||||
query:{mtask:row.id}
|
query: { mtask: row.id }
|
||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -243,15 +200,15 @@ export default {
|
||||||
//删除
|
//删除
|
||||||
async table_del(row) {
|
async table_del(row) {
|
||||||
this.$confirm(`确定删除吗?`, "提示", {
|
this.$confirm(`确定删除吗?`, "提示", {
|
||||||
type: "warning",
|
type: "warning",
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$API.pm.mtask.delete.req(row.id).then((res) => {
|
this.$API.pm.mtask.delete.req(row.id).then((res) => {
|
||||||
this.$message.success("删除成功");
|
this.$message.success("删除成功");
|
||||||
return res;
|
return res;
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
return err;
|
return err;
|
||||||
});
|
});
|
||||||
}).catch(() => {});
|
}).catch(() => { });
|
||||||
},
|
},
|
||||||
|
|
||||||
//本地更新数据
|
//本地更新数据
|
||||||
|
@ -268,31 +225,34 @@ export default {
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.query = {};
|
this.query = {};
|
||||||
},
|
},
|
||||||
tomio(){
|
tomio() {
|
||||||
this.$router.push('/inm/mio')
|
this.$router.push('/inm/mio')
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.tabsHeader{
|
.tabsHeader {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 20px;
|
right: 20px;
|
||||||
margin-top: 4px;
|
margin-top: 4px;
|
||||||
z-index:100
|
z-index: 100
|
||||||
}
|
}
|
||||||
.right-panel > * + * {
|
|
||||||
margin-left: 10px;
|
.right-panel>*+* {
|
||||||
}
|
margin-left: 10px;
|
||||||
.el-main.nopadding{
|
}
|
||||||
padding:0 20px 0 20px
|
|
||||||
}
|
.el-main.nopadding {
|
||||||
.tableTitle{
|
padding: 0 20px 0 20px
|
||||||
height: 40px;
|
}
|
||||||
line-height: 40px;
|
|
||||||
font-size: 14px;
|
.tableTitle {
|
||||||
box-sizing: border-box;
|
height: 40px;
|
||||||
border-bottom: 1px solid #eeeeee;
|
line-height: 40px;
|
||||||
}
|
font-size: 14px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-bottom: 1px solid #eeeeee;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
|
@ -6,7 +6,8 @@
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="工段" prop="material">
|
<el-form-item label="工段" prop="material">
|
||||||
<el-select v-model="form.mgroup" placeholder="工段" clearable style="width:100%">
|
<el-select v-model="form.mgroup" placeholder="工段" clearable style="width:100%"
|
||||||
|
@change="getMaterial">
|
||||||
<el-option v-for="item in mgroupOptions" :key="item.id" :label="item.name"
|
<el-option v-for="item in mgroupOptions" :key="item.id" :label="item.name"
|
||||||
:value="item.id"></el-option>
|
:value="item.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
@ -20,16 +21,24 @@
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<!-- <el-col :md="12" :sm="24">
|
||||||
<el-form-item label="设备" prop="material">
|
<el-form-item label="设备" prop="material">
|
||||||
<el-select v-model="form.equipment" placeholder="设备" clearable style="width:100%">
|
<el-select v-model="form.equipment" placeholder="设备" clearable style="width:100%">
|
||||||
<el-option v-for="item in equipmentOptions" :key="item.id" :label="item.name"
|
<el-option v-for="item in equipmentOptions" :key="item.id" :label="item.name"
|
||||||
:value="item.id"></el-option>
|
:value="item.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</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.id" :label="item.name"
|
||||||
|
:value="item.id"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="批次" width="100">
|
<el-form-item label="物料批次" width="100">
|
||||||
<el-input v-model="form.batch" tyle="width:100%" placeholder="请输入批次"></el-input>
|
<el-input v-model="form.batch" tyle="width:100%" placeholder="请输入批次"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
@ -48,12 +57,18 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24">
|
<el-col :md="12" :sm="24">
|
||||||
<el-form-item label="配料人" prop="material">
|
<el-form-item label="配料人">
|
||||||
<el-select v-model="form.handle_users" placeholder="配料人" clearable multiple style="width:100%">
|
<el-select v-model="form.handle_users" placeholder="配料人" clearable multiple style="width:100%">
|
||||||
<el-option v-for="item in userList" :key="item.id" :label="item.name" :value="item.id" />
|
<el-option v-for="item in userList" :key="item.id" :label="item.name" :value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :md="12" :sm="24">
|
||||||
|
<el-form-item label="操作日期" prop="handle_date">
|
||||||
|
<el-date-picker v-model="form.handle_date" type="date" placeholder="操作日期" format="YYYY-MM-DD"
|
||||||
|
value-format="YYYY-MM-DD" style="width:100%" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
<!-- 退火 -->
|
<!-- 退火 -->
|
||||||
|
@ -462,7 +477,7 @@
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-footer>
|
<el-footer>
|
||||||
<el-button type="primary" v-loading="isSaveing" @click="submit">确定</el-button>
|
<el-button type="primary" v-loading="isSaveing" @click="submit">确定</el-button>
|
||||||
<el-button @click="resetForm">取消</el-button>
|
<el-button @click="visible = false">取消</el-button>
|
||||||
</el-footer>
|
</el-footer>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
|
@ -506,7 +521,7 @@ export default {
|
||||||
materialOptions: [],
|
materialOptions: [],
|
||||||
equipmentOptions: [],
|
equipmentOptions: [],
|
||||||
wMaterialOptions: [],
|
wMaterialOptions: [],
|
||||||
shiftOptions: ['白班', '夜班'],
|
shiftOptions: [],
|
||||||
visible: false,
|
visible: false,
|
||||||
isSaveing: false,
|
isSaveing: false,
|
||||||
setFiltersVisible: false,
|
setFiltersVisible: false,
|
||||||
|
@ -516,22 +531,21 @@ export default {
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
let materialObj = this.$TOOL.data.get('MATERIAL_OBJECT');
|
// 先去除缓存
|
||||||
this.materialObj = materialObj;
|
// let materialObj = this.$TOOL.data.get('MATERIAL_OBJECT');
|
||||||
this.form.material_out = materialObj.id;
|
// this.materialObj = materialObj;
|
||||||
this.getMaterial();
|
// this.form.material_out = materialObj.id;
|
||||||
|
// this.getMaterial();
|
||||||
|
this.getMgroupList();
|
||||||
this.getUserList();
|
this.getUserList();
|
||||||
this.getEquipment();
|
this.getEquipment();
|
||||||
this.getMgroupList();
|
this.getShiftOptions();
|
||||||
let date = new Date();
|
let date = new Date();
|
||||||
let year = date.getFullYear();
|
let year = date.getFullYear();
|
||||||
let month = date.getMonth() + 1;
|
let month = date.getMonth() + 1;
|
||||||
let day = date.getDate();
|
let day = date.getDate();
|
||||||
this.form.handle_date = year + '-' + month + '-' + day;
|
this.form.handle_date = year + '-' + month + '-' + day;
|
||||||
if (this.activeType == '10车间') {
|
if (this.activeType == '10车间') {
|
||||||
this.$API.mtm.shift.list.req({ page: 0 }).then(res => {
|
|
||||||
this.shiftOptions = res;
|
|
||||||
})
|
|
||||||
if (this.mode == 'add') {
|
if (this.mode == 'add') {
|
||||||
let mlogb = [];
|
let mlogb = [];
|
||||||
if (this.brothersList && this.brothersList.length > 0) {
|
if (this.brothersList && this.brothersList.length > 0) {
|
||||||
|
@ -548,6 +562,11 @@ export default {
|
||||||
this.getWorkShopMaterial();
|
this.getWorkShopMaterial();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getShiftOptions() {
|
||||||
|
this.$API.mtm.shift.list.req({ page: 0 }).then(res => {
|
||||||
|
this.shiftOptions = res;
|
||||||
|
})
|
||||||
|
},
|
||||||
getUserList() {
|
getUserList() {
|
||||||
let that = this;
|
let that = this;
|
||||||
let deptName = '';
|
let deptName = '';
|
||||||
|
@ -570,10 +589,10 @@ export default {
|
||||||
//获取集合列表
|
//获取集合列表
|
||||||
getMgroupList() {
|
getMgroupList() {
|
||||||
let that = this;
|
let that = this;
|
||||||
this.$API.mtm.mgroup.list.req({ page: 0, cate: 'photon' }).then(res => {
|
this.$API.mtm.mgroup.list.req({ page: 0, belong_dept__name: this.activeType }).then(res => {
|
||||||
let data = res.filter(item => {
|
// let data = res.filter(item => {
|
||||||
return item.process_cate == '成型'
|
// return item.process_cate == '成型'
|
||||||
})
|
// })
|
||||||
that.mgroupOptions = res;
|
that.mgroupOptions = res;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
@ -583,13 +602,20 @@ export default {
|
||||||
this.equipmentOptions = res;
|
this.equipmentOptions = res;
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getMaterial() {
|
getMaterial(mgroupId) {
|
||||||
let obj = {};
|
this.$API.mtm.route.list.req({ page: 0, mgroup: mgroupId }).then(res => {
|
||||||
obj.page = 0;
|
let mOptions = []
|
||||||
obj.is_hidden = false;
|
for (var i = 0; i < res.length; i++) {
|
||||||
this.$API.mtm.material.list.req(obj).then(res => {
|
mOptions.push({ 'id': res[i].material_out, 'name': res[i].material_out_name })
|
||||||
this.materialOptions = res;
|
}
|
||||||
|
this.materialOptions = mOptions;
|
||||||
})
|
})
|
||||||
|
// let obj = {};
|
||||||
|
// obj.page = 0;
|
||||||
|
// obj.is_hidden = false;
|
||||||
|
// this.$API.mtm.material.list.req(obj).then(res => {
|
||||||
|
// this.materialOptions = res;
|
||||||
|
// })
|
||||||
},
|
},
|
||||||
//获取车间物料
|
//获取车间物料
|
||||||
// getMaterial(){
|
// getMaterial(){
|
||||||
|
@ -694,6 +720,7 @@ export default {
|
||||||
//表单注入数据
|
//表单注入数据
|
||||||
setData(data) {
|
setData(data) {
|
||||||
Object.assign(this.form, data);
|
Object.assign(this.form, data);
|
||||||
|
this.getMaterial(this.form.mgroup)
|
||||||
if (this.activeType == '8车间') {
|
if (this.activeType == '8车间') {
|
||||||
if (this.form.handle_user.indexOf(',') > -1) {
|
if (this.form.handle_user.indexOf(',') > -1) {
|
||||||
this.handle_user = this.form.handle_user.split(',')
|
this.handle_user = this.form.handle_user.split(',')
|
||||||
|
|
Loading…
Reference in New Issue