fix: 一些bug调整

This commit is contained in:
caoqianming 2023-11-27 18:14:35 +08:00
parent 4801c126c7
commit 93a85eb192
15 changed files with 1438 additions and 1805 deletions

View File

@ -47,9 +47,11 @@
// return "" // return ""
// } // }
gantt.config.columns = [ gantt.config.columns = [
{name: 'number',label: '任务编号',tree: true,width: '*',align: 'left'}, { name: 'number', label: '任务编号', tree: true, width: '200', align: 'left' },
{name: 'cate',label: '规格型号', width: '70',align: 'center'}, { name: 'material_name', label: '产品名称', width: '70', align: 'left' },
{name: 'count',label: '完成量',width: '50', align: 'center'} { 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.attachEvent('onGanttReady', function () {
gantt.templates.tooltip_text = function (start, end, task) { gantt.templates.tooltip_text = function (start, end, task) {

View File

@ -2,30 +2,15 @@
<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"
:apiObj="apiObj"
row-key="id"
stripe
:params="query"
>
<el-table-column type="index" width="50" /> <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>
@ -33,7 +18,7 @@
</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>
@ -67,61 +52,34 @@
<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"
@closed="dialog.save = false"
></save-dialog>
<el-drawer
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"
:apiObj="apiObj2"
row-key="id"
stripe
:params="query2"
>
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="设备名称" prop="name" show-overflow-tooltip> <el-table-column label="设备名称" prop="equipment_name" show-overflow-tooltip>
</el-table-column> </el-table-column>
<el-table-column label="巡检时间" prop="inspect_time"> <el-table-column label="巡检时间" prop="inspect_time">
</el-table-column> </el-table-column>
@ -130,15 +88,11 @@
<span>{{ results_[scope.row.result] }}</span> <span>{{ results_[scope.row.result] }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="巡检人" prop="production_date"> <el-table-column label="巡检人" prop="inspect_user_name">
</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)"
v-auth="'equipment.delete'"
>
删除 删除
</el-link> </el-link>
</template> </template>
@ -148,22 +102,12 @@
</el-container> </el-container>
</el-drawer> </el-drawer>
<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="inspect_time"> <el-col :md="12" :sm="24" prop="inspect_time">
<el-form-item label="巡检时间"> <el-form-item label="巡检时间">
<el-date-picker <el-date-picker v-model="form.inspect_time" type="datetime" placeholder="巡检时间"
v-model="form.inspect_time" value-format="YYYY-MM-DD HH:mm:ss" style="width:100%">
type="datetime"
placeholder="巡检时间"
value-format="YYYY-MM-DD HH:mm:ss"
style="width:100%"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -193,11 +137,7 @@
<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>

View File

@ -1,54 +1,22 @@
<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"
:rules="rules"
:disabled="mode == 'show'"
label-width="100px"
v-if="form.type==10"
>
<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-select <el-select v-model="form.belong_dept" placeholder="所属部门" clearable style="width: 100%"
v-model="form.belong_dept" @change="deptChange">
placeholder="所属部门" <el-option v-for="item in group" :key="item.id" :label="item.name" :value="item.id"></el-option>
clearable
style="width: 100%"
@change="deptChange"
>
<el-option
v-for="item in group"
: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="所属工段"> <el-form-item label="所属工段">
<el-select <el-select v-model="form.mgroup" placeholder="所属工段" clearable style="width: 100%">
v-model="form.mgroup" <el-option v-for="item in mgroups" :key="item.id" :label="item.name" :value="item.id"></el-option>
placeholder="所属工段"
clearable
style="width: 100%"
>
<el-option
v-for="item in mgroups"
: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>
@ -75,11 +43,7 @@
<el-col :md="12" :sm="24"> <el-col :md="12" :sm="24">
<el-form-item label="状态"> <el-form-item label="状态">
<el-select style="width: 100%" v-model="form.state" placeholder="请选择"> <el-select style="width: 100%" v-model="form.state" placeholder="请选择">
<el-option <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -88,31 +52,22 @@
<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-date-picker <el-date-picker v-model="form.production_date" type="date" placeholder="选择日期" value-format="YYYY-MM-DD"
v-model="form.production_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="购置日期"> <el-form-item label="购置日期">
<el-date-picker <el-date-picker v-model="form.buy_date" type="date" placeholder="选择日期" value-format="YYYY-MM-DD"
v-model="form.buy_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" v-if="baseInfo.name == 'enm'">
<el-form-item label="用电功率"> <el-form-item label="用电功率">
<el-input-number v-model="form.power_kw" :precision="2" :min="0" controls-position="right" placeholder="用电功率"/> <el-input-number v-model="form.power_kw" :precision="2" :min="0" 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">
@ -132,49 +87,23 @@
<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"
:rows="4"
v-model="form.parameter"
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 <el-input type="textarea" :rows="4" v-model="form.description" placeholder="备注" />
type="textarea"
:rows="4"
v-model="form.description"
placeholder="描述"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </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"
:rules="rules"
:disabled="mode == 'show'"
label-width="120px"
v-if="form.type==20"
>
<el-row> <el-row>
<el-col :md="12" :sm="24"> <el-col :md="12" :sm="24">
<el-form-item label="所属部门" prop="belong_dept"> <el-form-item label="所属部门" prop="belong_dept">
<el-select <el-select v-model="form.belong_dept" placeholder="所属部门" clearable style="width: 100%">
v-model="form.belong_dept" <el-option v-for="item in group" :key="item.id" :label="item.name" :value="item.id"></el-option>
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-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -205,13 +134,8 @@
</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.use_date" type="date" placeholder="启用日期" value-format="YYYY-MM-DD"
v-model="form.use_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>
@ -247,20 +171,13 @@
</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" <el-input-number v-model="form.cycle" :precision="1" :min="0" controls-position="right"
:precision="1" :min="0" controls-position="right" style="width: 100%;" placeholder="检定周期(月)" />
style="width: 100%;"
placeholder="检定周期(月)"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-form-item label="备注"> <el-form-item label="备注">
<el-input <el-input type="textarea" :rows="4" v-model="form.description" placeholder="备注" />
type="textarea"
:rows="4"
v-model="form.description"
placeholder="备注"
/>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-main> </el-main>
@ -317,12 +234,18 @@ export default {
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 => {
@ -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>

View File

@ -2,30 +2,15 @@
<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"
:apiObj="apiObj"
row-key="id"
stripe
:params="query"
>
<el-table-column type="index" width="50" /> <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>
@ -45,9 +30,9 @@
</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] }}
@ -63,11 +48,9 @@
</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>
@ -76,50 +59,28 @@
</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,11 +92,7 @@
<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>
@ -152,25 +109,14 @@
<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"
:apiObj="apiObj2"
row-key="id"
stripe
:params="query2"
>
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="设备名称" prop="name" show-overflow-tooltip> <el-table-column label="设备名称" prop="equipment_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>
@ -179,17 +125,11 @@
<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)"
v-auth="'equipment.delete'"
>
删除 删除
</el-link> </el-link>
</template> </template>
@ -200,12 +140,8 @@
</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";
@ -310,6 +246,7 @@ export default {
this.isSaveing = false; this.isSaveing = false;
this.$message.success("操作成功"); this.$message.success("操作成功");
this.$refs.drawer_table.refresh(); this.$refs.drawer_table.refresh();
this.$refs.table.refresh();
}).catch(() => { }).catch(() => {
this.isSaveing = false; this.isSaveing = false;
}) })
@ -321,6 +258,7 @@ export default {
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();
this.$refs.table.refresh();
}).catch((err) => { }).catch((err) => {
return err; return err;
}); });

View File

@ -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,8 +33,7 @@
<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">

View File

@ -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>

View File

@ -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">

View File

@ -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.id = item.id;
obj.material_in = item.material_in; obj.material_in = item.material_in;
obj.material_out = item.material_out; obj.material_out = item.material_out;
obj.material_in_name = item.material_in_name;
obj.material_out_name = item.material_out_name;
obj.mgroup = id; obj.mgroup = id;
obj.isedit = false; obj.isedit = false;
mList.push(obj)
}) })
that.materialList.push(obj); that.materialList = mList
} else { }
}); });
}, },
// //
@ -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;
}) })
} }

View File

@ -71,23 +71,26 @@
</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"
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="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">
@ -103,7 +106,7 @@
</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>
@ -125,7 +128,8 @@
编辑 编辑
</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,21 +137,16 @@
</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>
@ -187,9 +186,11 @@
编辑 编辑
</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)"
v-if="scope.row.state == 30 || scope.row.state == 20">终止</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>
@ -204,46 +205,39 @@
<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"
:data="dataList"
row-key="id"
stripe
:height="bottomHeight"
:hideDo="hideDo"
:params="query"
>
<el-table-column type="index" width="50" /> <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>
@ -253,41 +247,16 @@
</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"
:apiObj="apiObj"
row-key="id"
stripe
:params="paramsObj"
>
<el-table-column type="index" width="50" /> <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>
@ -389,12 +358,16 @@ export default {
} else { } else {
countok = item.count2; countok = item.count2;
} }
if (item.state != 40) {
classInfo.orangeColor = true;
} else {
if (countok >= count) { if (countok >= count) {
classInfo.greenColor = true; classInfo.greenColor = true;
} else { } else {
classInfo.redColor = true; classInfo.redColor = true;
} }
}
return classInfo return classInfo
}, },
// //
@ -449,7 +422,7 @@ export default {
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 = [];
@ -533,10 +506,13 @@ export default {
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 => {
let columList = []
res.forEach(item => { res.forEach(item => {
let obj = {}; let obj = {};
obj.state = item.state
obj.count1 = 0; obj.count2 = 0; obj.count3 = 0; 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;
@ -557,8 +533,11 @@ export default {
} }
} }
} }
that.columList.push(obj); columList.push(obj);
}) })
this.columList = columList
console.log(columList)
}) })
}, },
}, },
@ -568,23 +547,29 @@ export default {
.right-panel>*+* { .right-panel>*+* {
margin-left: 10px; margin-left: 10px;
} }
.countBlock { .countBlock {
width: 80px; width: 80px;
color: #ffffff; color: #ffffff;
text-align: center; text-align: center;
} }
.redColor { .redColor {
background-color: brown; background-color: brown;
} }
.greenColor { .greenColor {
background-color: green; background-color: green;
} }
.orangeColor { .orangeColor {
background-color: orange; background-color: orange;
} }
.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;

View File

@ -8,21 +8,27 @@
</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">
@ -55,7 +61,8 @@
<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,42 +77,28 @@
</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>
@ -116,38 +109,18 @@
<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="任务详情"
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="loading"> <el-container v-loading="loading">
<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"
:apiObj="apiObj"
row-key="id"
stripe
:params="paramsObj"
>
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="工段" prop="mgroup_name" show-overflow-tooltip> <el-table-column label="任务编号" prop="number">
</el-table-column> </el-table-column>
<el-table-column label="物料编号" prop="number"> <el-table-column label="工段" prop="mgroup_name" show-overflow-tooltip>
</el-table-column> </el-table-column>
<el-table-column label="数量" prop="count"> <el-table-column label="数量" prop="count">
</el-table-column> </el-table-column>
@ -320,17 +293,17 @@ export default {
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.specification = '';
objItem.open = true; 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 => {
@ -342,7 +315,6 @@ export default {
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;
@ -355,8 +327,8 @@ export default {
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)
}) })
@ -455,9 +427,11 @@ export default {
.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;
@ -475,5 +449,4 @@ export default {
padding: 10px; padding: 10px;
border-radius: 4px; border-radius: 4px;
} }
</style> </style>

View File

@ -1,19 +1,8 @@
<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">
@ -22,66 +11,38 @@
</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>
@ -130,8 +91,10 @@ export default {
}; };
}, },
mounted() { mounted() {
this.getMaterial();
this.getMgroup(); this.getMgroup();
if (this.activeName == '6车间') {
this.getMaterial6dept();
}
}, },
methods: { methods: {
// //
@ -141,27 +104,39 @@ export default {
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) => {
@ -207,5 +182,4 @@ export default {
}, },
}; };
</script> </script>
<style> <style></style>
</style>

View File

@ -1,129 +1,65 @@
<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>

View File

@ -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">
@ -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%">
@ -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;

View File

@ -2,29 +2,13 @@
<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"
value-format="YYYY-MM-DD"
/>
<el-button
type="primary"
icon="el-icon-search"
@click="handleQuery"
>查询</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="粗加工6车间" name="first"> <el-tab-pane label="粗加工6车间" name="first">
<scTable <scTable ref="table" :apiObj="apiObj" row-key="id" stripe :height="topHeight" :params="query" hidePagination
ref="table" @row-click="rowClick">
:apiObj="apiObj"
row-key="id"
stripe
:height="topHeight"
:params="query"
hidePagination
@row-click="rowClick"
>
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="任务编号" prop="number"> <el-table-column label="任务编号" prop="number">
</el-table-column> </el-table-column>
@ -53,17 +37,9 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="120"> <el-table-column label="操作" fixed="right" width="120">
<template #default="scope"> <template #default="scope">
<el-link <el-link type="primary" @click="table_edit(scope.row)" v-if="scope.row.status == 10">生产记录
type="primary"
@click="table_edit(scope.row)"
v-if="scope.row.status==10"
>生产记录
</el-link> </el-link>
<el-link <el-link type="primary" @click="table_show(scope.row)" v-else>查看
type="primary"
@click="table_show(scope.row)"
v-else
>查看
</el-link> </el-link>
</template> </template>
</el-table-column> </el-table-column>
@ -76,14 +52,7 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="13" style="border-right: 1px solid #eeeeee;"> <el-col :span="13" style="border-right: 1px solid #eeeeee;">
<div class="tableTitle">工序进度</div> <div class="tableTitle">工序进度</div>
<scTable <scTable ref="tableprocess" row-key="id" stripe :hideDo="hideDo" :data="processList" :height="bottomHeight">
ref="tableprocess"
row-key="id"
stripe
:hideDo="hideDo"
:data="processList"
:height="bottomHeight"
>
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="日期" prop="start_date"> <el-table-column label="日期" prop="start_date">
</el-table-column> </el-table-column>
@ -111,28 +80,20 @@
<el-button type="primary" @click="tomio">车间出库</el-button> <el-button type="primary" @click="tomio">车间出库</el-button>
</div> </div>
</div> </div>
<scTable <scTable ref="tableMaterial" row-key="id" stripe :hideDo="hideDo" :data="wMaterial" :height="bottomHeight">
ref="tableMaterial"
row-key="id"
stripe
:hideDo="hideDo"
:data="wMaterial"
:height="bottomHeight"
>
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="产品编号" prop="material_"> <el-table-column label="物料名" prop="material">
<template #default="scope"> <template #default="scope">{{ scope.row.material_.name }}</template>
<span v-if="scope.row.material_">{{ scope.row.material_.number }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column label="产品名称" prop="material_"> <el-table-column label="规格" prop="material">
<template #default="scope"> <template #default="scope">{{ scope.row.material_.specification }}</template>
<span v-if="scope.row.material_">{{ scope.row.material_.name }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column label="型号规格" prop="specification"> <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="count"> <el-table-column label="批次" prop="batch">
</el-table-column>
<el-table-column label="数量" prop="count" width="80">
</el-table-column> </el-table-column>
</scTable> </scTable>
</el-col> </el-col>
@ -140,12 +101,8 @@
</div> </div>
</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>
export default { export default {
@ -193,7 +150,7 @@ export default {
// //
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;
}) })
}, },
@ -282,12 +239,15 @@ export default {
margin-top: 4px; margin-top: 4px;
z-index: 100 z-index: 100
} }
.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
} }
.tableTitle { .tableTitle {
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;

View File

@ -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(',')