Merge remote-tracking branch 'origin/master'

master
夜笙歌 5 months ago
commit 9356a6ec60

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询不合格品流程管理列表
export function listExceptionProcess(query) {
return request({
url: '/report/exceptionProcess/list',
method: 'get',
params: query
})
}
// 查询不合格品流程管理详细
export function getExceptionProcess(objId) {
return request({
url: '/report/exceptionProcess/' + objId,
method: 'get'
})
}
// 新增不合格品流程管理
export function addExceptionProcess(data) {
return request({
url: '/report/exceptionProcess',
method: 'post',
data: data
})
}
// 修改不合格品流程管理
export function updateExceptionProcess(data) {
return request({
url: '/report/exceptionProcess',
method: 'put',
data: data
})
}
// 删除不合格品流程管理
export function delExceptionProcess(objId) {
return request({
url: '/report/exceptionProcess/' + objId,
method: 'delete'
})
}

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询切换订单管理列表
export function listSwitchOrder(query) {
return request({
url: '/report/switchOrder/list',
method: 'get',
params: query
})
}
// 查询切换订单管理详细
export function getSwitchOrder(objId) {
return request({
url: '/report/switchOrder/' + objId,
method: 'get'
})
}
// 新增切换订单管理
export function addSwitchOrder(data) {
return request({
url: '/report/switchOrder',
method: 'post',
data: data
})
}
// 修改切换订单管理
export function updateSwitchOrder(data) {
return request({
url: '/report/switchOrder',
method: 'put',
data: data
})
}
// 删除切换订单管理
export function delSwitchOrder(objId) {
return request({
url: '/report/switchOrder/' + objId,
method: 'delete'
})
}

@ -56,6 +56,9 @@ import SizeSelect from '@/components/SizeSelect'
import Search from '@/components/HeaderSearch'
import RuoYiGit from '@/components/RuoYi/Git'
import RuoYiDoc from '@/components/RuoYi/Doc'
import { parseTime } from '@//utils/ruoyi'
import { listExceptionProcess } from '@//api/report/exceptionProcess'
import { getInfo } from '@//api/login'
export default {
components: {
@ -91,7 +94,70 @@ export default {
}
}
},
data() {
return {
//
queryParams: {
pageNum: 1,
pageSize: 10,
productionUserFlag: '1',
},
// List
postList: [],
}
},
created() {
// 10=,81=,5=,6=
getInfo().then(res => {
this.postList = res.postList
if (this.postList.includes(81)) {
this.queryParams.qualityUserFlag = '9'
this.exceptionProcessTask();
}else if (this.postList.includes(5)) {
this.queryParams.productionManagerFlag = '9'
this.exceptionProcessTask();
}else if (this.postList.includes(6)) {
this.queryParams.qualityManagerFlag = '9'
this.exceptionProcessTask();
}
})
},
methods: {
//
exceptionProcessTask() {
let self = this;
let params = { ...this.queryParams }
listExceptionProcess(params).then(response => {
if (response.total > 0){
self.openAlarm();
}
})
setInterval(function() {
listExceptionProcess(params).then(response => {
if (response.total > 0){
self.openAlarm();
}
})
}, 300000);
},
//
openAlarm() {
this.$notify({
title: "不合格流程待处理提示",
position: "bottom-right",
message: this.$createElement(
"div",
{
on: {
click: () => {
this.$tab.openPage("不合格品流程管理","/quality/exceptionProcess", null);
},
},
},
[this.$createElement("el-button", {}, ["点击查看"])]
),
});
},
toggleSideBar() {
this.$store.dispatch('app/toggleSideBar')
},

@ -0,0 +1,705 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px">
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input
v-model="queryParams.boxBarcode"
placeholder="请输入MES箱体码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="流转标识" prop="productionUserFlag">
<el-select v-model="queryParams.productionUserFlag" placeholder="请选择流转标识" clearable>
<el-option
v-for="dict in dict.type.circulation_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="班组" prop="teamCode">-->
<!-- <el-input-->
<!-- v-model="queryParams.teamCode"-->
<!-- placeholder="请输入班组"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="申请时间">
<el-date-picker
v-model="daterangeApplyTime"
style="width: 340px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始时间"
end-placeholder="结束时间"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-if="handleAddVisible"
v-hasPermi="['report:exceptionProcess:add']"
>新增审批流程
</el-button>
</el-col>
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- type="success"-->
<!-- plain-->
<!-- icon="el-icon-edit"-->
<!-- size="mini"-->
<!-- :disabled="single"-->
<!-- @click="handleUpdate"-->
<!-- v-hasPermi="['report:exceptionProcess:edit']"-->
<!-- >修改-->
<!-- </el-button>-->
<!-- </el-col>-->
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['report:exceptionProcess:remove']"
>删除
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['report:exceptionProcess:export']"
>导出
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>-->
</el-row>
<el-table v-loading="loading" :data="exceptionProcessList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="主键标识" align="center" prop="objId" v-if="columns[0].visible"/>
<el-table-column label="产线" align="center" prop="productLineName" v-if="columns[1].visible"/>
<el-table-column label="SAP订单编号" align="center" prop="orderCode" v-if="columns[1].visible" width="100"/>
<el-table-column label="物料型号" align="center" prop="materialModel" v-if="columns[1].visible" width="150"/>
<el-table-column label="MES箱体码" align="center" prop="boxBarcode" v-if="columns[1].visible" width="190"/>
<el-table-column label="流转标识" align="center" prop="productionUserFlag" v-if="columns[2].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.circulation_flag" :value="scope.row.productionUserFlag"/>
</template>
</el-table-column>
<el-table-column label="班组" align="center" prop="teamCode" v-if="columns[3].visible"/>
<el-table-column label="申请原因" align="center" prop="applyReason" v-if="columns[4].visible"/>
<el-table-column label="申请时间" align="center" prop="applyTime" width="180" v-if="columns[5].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.applyTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="质管员标识" align="center" prop="qualityUserFlag" v-if="columns[6].visible" width="100">
<template slot-scope="scope">
<dict-tag :options="dict.type.agree_flag" :value="scope.row.qualityUserFlag"/>
</template>
</el-table-column>
<el-table-column label="不合格原因" align="center" prop="failureReason" v-if="columns[7].visible" width="100"/>
<!-- <el-table-column label="不合格类型" align="center" prop="failureType" v-if="columns[8].visible"/>-->
<el-table-column label="质管员审核时间" align="center" prop="qualityUserTime" width="180" v-if="columns[9].visible"/>
<el-table-column label="生产部经理标识" align="center" prop="productionManagerFlag" v-if="columns[10].visible" width="120">
<template slot-scope="scope">
<dict-tag :options="dict.type.agree_flag" :value="scope.row.productionManagerFlag"/>
</template>
</el-table-column>
<el-table-column label="生产部经理审核时间" align="center" prop="productionManagerTime" width="180" v-if="columns[11].visible"/>
<el-table-column label="质量部经理标识" align="center" prop="qualityManagerFlag" v-if="columns[12].visible" width="120">
<template slot-scope="scope">
<dict-tag :options="dict.type.agree_flag" :value="scope.row.qualityManagerFlag"/>
</template>
</el-table-column>
<el-table-column label="质量部经理审核时间" align="center" prop="qualityManagerTime" width="180" v-if="columns[13].visible"/>
<!-- <el-table-column label="备注" align="center" prop="remark" v-if="columns[17].visible"/>-->
<!-- <el-table-column label="创建人" align="center" prop="createdBy" v-if="columns[18].visible"/>-->
<!-- <el-table-column label="创建时间" align="center" prop="createdTime" width="180" v-if="columns[19].visible">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ parseTime(scope.row.createdTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="修改人" align="center" prop="updatedBy" v-if="columns[20].visible"/>-->
<!-- <el-table-column label="修改时间" align="center" prop="updatedTime" width="180" v-if="columns[21].visible">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ parseTime(scope.row.updatedTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="130">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
v-if="qualityUserVisible && scope.row.qualityUserFlag == null && scope.row.productionUserFlag === '1'"
@click="qualityUserUpdate(scope.row)"
>质管员评审
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
v-if="productionManagerVisible && scope.row.productionManagerFlag == null
&& scope.row.qualityUserFlag != null && scope.row.productionUserFlag === '1'"
@click="productionManagerUpdate(scope.row)"
>生产部经理评审
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
v-if="qualityManagerVisible && scope.row.qualityManagerFlag == null
&& scope.row.productionManagerFlag != null && scope.row.productionUserFlag === '1'"
@click="qualityManagerUpdate(scope.row)"
>质量部经理评审
</el-button>
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-edit"-->
<!-- @click="handleUpdate(scope.row)"-->
<!-- v-hasPermi="['report:exceptionProcess:edit']"-->
<!-- >审批-->
<!-- </el-button>-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-delete"-->
<!-- @click="handleDelete(scope.row)"-->
<!-- v-hasPermi="['report:exceptionProcess:remove']"-->
<!-- >删除-->
<!-- </el-button>-->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加不合格品流程管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input v-model="form.boxBarcode" placeholder="请输入MES箱体码"/>
</el-form-item>
<el-form-item label="班组">
<el-select v-model="form.teamCode" placeholder="请输入班组">
<el-option
v-for="item in teamMemberList"
:key="item.teamCode"
:label="item.teamName"
:value="item.teamCode"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="申请原因" prop="applyReason">
<el-input v-model="form.applyReason" type="textarea" placeholder="请输入申请原因"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 质管员管理对话框 -->
<el-dialog :title="title" :visible.sync="qualityUserOpen" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="SAP订单" prop="orderCode">
<el-input v-model="form.orderCode" disabled/>
</el-form-item>
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input v-model="form.boxBarcode" placeholder="请输入MES箱体码" disabled/>
</el-form-item>
<el-form-item label="班组">
<el-select v-model="form.teamCode" placeholder="请输入班组" disabled>
<el-option
v-for="item in teamMemberList"
:key="item.teamCode"
:label="item.teamName"
:value="item.teamCode"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="申请原因" prop="applyReason">
<el-input v-model="form.applyReason" type="textarea" disabled/>
</el-form-item>
<el-form-item label="质管员标识" prop="qualityUserFlag">
<el-radio-group v-model="form.qualityUserFlag">
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="不合格原因" prop="failureReason">
<el-input v-model="form.failureReason" type="textarea" placeholder="请输入不合格原因"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 生产部经理管理对话框 -->
<el-dialog :title="title" :visible.sync="productionManagerOpen" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="SAP订单" prop="orderCode">
<el-input v-model="form.orderCode" disabled/>
</el-form-item>
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input v-model="form.boxBarcode" placeholder="请输入MES箱体码" disabled/>
</el-form-item>
<el-form-item label="班组">
<el-select v-model="form.teamCode" placeholder="请输入班组" disabled>
<el-option
v-for="item in teamMemberList"
:key="item.teamCode"
:label="item.teamName"
:value="item.teamCode"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="申请原因" prop="applyReason">
<el-input v-model="form.applyReason" type="textarea" disabled/>
</el-form-item>
<el-form-item label="质管员标识" prop="qualityUserFlag">
<el-radio-group v-model="form.qualityUserFlag" disabled>
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="不合格原因" prop="failureReason">
<el-input v-model="form.failureReason" type="textarea" placeholder="请输入不合格原因" disabled/>
</el-form-item>
<el-form-item label="生产部经理标识" prop="productionManagerFlag">
<el-radio-group v-model="form.productionManagerFlag">
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 质量部经理管理对话框 -->
<el-dialog :title="title" :visible.sync="qualityManagerOpen" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="SAP订单" prop="orderCode">
<el-input v-model="form.orderCode" disabled/>
</el-form-item>
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input v-model="form.boxBarcode" placeholder="请输入MES箱体码" disabled/>
</el-form-item>
<el-form-item label="班组">
<el-select v-model="form.teamCode" placeholder="请输入班组" disabled>
<el-option
v-for="item in teamMemberList"
:key="item.teamCode"
:label="item.teamName"
:value="item.teamCode"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="申请原因" prop="applyReason">
<el-input v-model="form.applyReason" type="textarea" disabled/>
</el-form-item>
<el-form-item label="质管员标识" prop="qualityUserFlag">
<el-radio-group v-model="form.qualityUserFlag" disabled>
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="不合格原因" prop="failureReason">
<el-input v-model="form.failureReason" type="textarea" placeholder="请输入不合格原因" disabled/>
</el-form-item>
<el-form-item label="生产部经理标识" prop="productionManagerFlag">
<el-radio-group v-model="form.productionManagerFlag" disabled>
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="质量部经理标识" prop="qualityManagerFlag">
<el-radio-group v-model="form.qualityManagerFlag">
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listExceptionProcess,
getExceptionProcess,
delExceptionProcess,
addExceptionProcess,
updateExceptionProcess
} from '@/api/report/exceptionProcess'
import { getTeamMemberList } from '@//api/base/teamMembers'
import { getInfo } from '@//api/login'
import { getTime } from '@//utils'
export default {
name: 'ExceptionProcess',
dicts: ['circulation_flag', 'agree_flag'],
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
handleAddVisible: false,
//
qualityUserVisible: false,
//
productionManagerVisible: false,
//
qualityManagerVisible: false,
//
total: 0,
//
exceptionProcessList: [],
//
teamMemberList: [],
// List
postList: [],
//
title: '',
//
open: false,
qualityUserOpen: false,
productionManagerOpen: false,
qualityManagerOpen: false,
//
daterangeApplyTime: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
boxBarcode: null,
productionUserFlag: '1',
teamCode: null,
applyReason: null,
applyTime: null,
qualityUserFlag: null,
failureReason: null,
failureType: null,
qualityUserTime: null,
productionManagerFlag: null,
productionManagerTime: null,
qualityManagerFlag: null,
qualityManagerTime: null,
inspectionUserCode: null,
inspectionUserFlag: null,
imageAddress: null,
createdBy: null,
createdTime: null,
updatedBy: null,
updatedTime: null
},
//
form: {
// 1=2=3=4=
currentUserPost: null
},
//
rules: {
boxBarcode: [
{ required: true, message: 'MES箱体码不能为空', trigger: 'blur' }
],
teamCode: [
{ required: true, message: '班组不能为空', trigger: 'blur' }
]
},
columns: [
{ key: 0, label: `主键标识`, visible: false },
{ key: 1, label: `MES箱体码`, visible: true },
{ key: 2, label: `流转标识`, visible: true },
{ key: 3, label: `班组`, visible: true },
{ key: 4, label: `申请原因`, visible: true },
{ key: 5, label: `申请时间`, visible: true },
{ key: 6, label: `质管员标识`, visible: true },
{ key: 7, label: `不合格原因`, visible: true },
{ key: 8, label: `不合格类型`, visible: true },
{ key: 9, label: `质管员审核时间`, visible: true },
{ key: 10, label: `生产部经理标识`, visible: true },
{ key: 11, label: `生产部经理审核时间`, visible: true },
{ key: 12, label: `质量部经理标识`, visible: true },
{ key: 13, label: `质量部经理审核时间`, visible: true }
// { key: 17, label: ``, visible: true },
// { key: 18, label: ``, visible: true },
// { key: 19, label: ``, visible: true },
// { key: 20, label: ``, visible: true },
// { key: 21, label: ``, visible: true }
]
}
},
created() {
getTeamMemberList(null).then(response => {
this.teamMemberList = response.data
})
// 10=,81=,5=,6=
getInfo().then(res => {
this.postList = res.postList
console.log('用户岗位:', res.postList)
if (this.postList.includes(10)) {
this.handleAddVisible = true
}
if (this.postList.includes(81)) {
this.qualityUserVisible = true
}
if (this.postList.includes(5)) {
this.productionManagerVisible = true
}
if (this.postList.includes(6)) {
this.qualityManagerVisible = true
}
this.getList()
})
},
methods: {
/** 查询不合格品流程管理列表 */
getList() {
this.loading = true
this.queryParams.params = {}
if (null != this.daterangeApplyTime && '' != this.daterangeApplyTime) {
this.queryParams.params['beginApplyTime'] = this.daterangeApplyTime[0]
this.queryParams.params['endApplyTime'] = this.daterangeApplyTime[1]
}
listExceptionProcess(this.queryParams).then(response => {
this.exceptionProcessList = response.rows
this.total = response.total
this.loading = false
})
},
//
cancel() {
this.open = false
this.reset()
},
//
reset() {
this.form = {
objId: null,
boxBarcode: null,
productionUserFlag: null,
teamCode: null,
applyReason: null,
applyTime: null,
qualityUserFlag: null,
failureReason: null,
failureType: null,
qualityUserTime: null,
productionManagerFlag: null,
productionManagerTime: null,
qualityManagerFlag: null,
qualityManagerTime: null,
inspectionUserCode: null,
inspectionUserFlag: null,
imageAddress: null,
remark: null,
createdBy: null,
createdTime: null,
updatedBy: null,
updatedTime: null
}
this.resetForm('form')
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.daterangeApplyTime = []
this.resetForm('queryForm')
this.handleQuery()
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.objId)
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset()
this.open = true
this.title = '添加不合格品流程管理'
},
/** 质检员评审按钮操作 */
qualityUserUpdate(row) {
this.reset()
const objId = row.objId || this.ids
getExceptionProcess(objId).then(response => {
this.form = response.data
this.form.currentUserPost = 2;
this.form.qualityUserTime = new Date().getTime();
this.qualityUserOpen = true
this.title = '质管员评审'
})
},
/** 生产部经理评审按钮操作 */
productionManagerUpdate(row) {
this.reset()
const objId = row.objId || this.ids
getExceptionProcess(objId).then(response => {
this.form = response.data
this.form.currentUserPost = 3;
this.form.productionManagerTime = new Date().getTime();
this.productionManagerOpen = true
this.title = '生产部经理评审'
})
},
/** 质量部经理评审按钮操作 */
qualityManagerUpdate(row) {
this.reset()
const objId = row.objId || this.ids
getExceptionProcess(objId).then(response => {
this.form = response.data
this.form.currentUserPost = 4;
this.form.qualityManagerTime = new Date().getTime();
this.qualityManagerOpen = true
this.title = '质量部经理评审'
})
},
/** 提交按钮 */
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
if (this.form.objId != null) {
if (this.form.currentUserPost === 2 && this.form.qualityUserFlag == null){
this.$modal.msgError('请选择质管员标识!')
return;
}
if (this.form.currentUserPost === 2 && this.form.failureReason == null){
this.$modal.msgError('请填写不合格原因!')
return;
}
if (this.form.currentUserPost === 3 && this.form.productionManagerFlag == null){
this.$modal.msgError('请选择生产部经理标识!')
return;
}
if (this.form.currentUserPost === 4 && this.form.qualityManagerFlag == null){
this.$modal.msgError('请选择质量部经理标识!')
return;
}
if (this.form.currentUserPost === 2 && this.form.qualityUserFlag === '2'){
this.form.productionUserFlag = 2
}else if (this.form.currentUserPost === 3 && this.form.productionManagerFlag === '2'){
this.form.productionUserFlag = 3
}else if (this.form.currentUserPost === 4 && this.form.qualityManagerFlag === '2'){
this.form.productionUserFlag = 4
}else if (this.form.currentUserPost === 4 && this.form.qualityManagerFlag === '1'){
this.form.productionUserFlag = 9
}
updateExceptionProcess(this.form).then(response => {
this.$modal.msgSuccess('评审成功')
this.qualityUserOpen = false
this.productionManagerOpen = false
this.qualityManagerOpen = false
this.open = false
this.getList()
})
} else {
this.form.productionUserFlag = '1'
addExceptionProcess(this.form).then(response => {
this.$modal.msgSuccess('新增成功')
this.open = false
this.getList()
})
}
}
})
},
/** 删除按钮操作 */
handleDelete(row) {
const objIds = row.objId || this.ids
this.$modal.confirm('是否确认删除不合格品流程管理编号为"' + objIds + '"的数据项?').then(function() {
return delExceptionProcess(objIds)
}).then(() => {
this.getList()
this.$modal.msgSuccess('删除成功')
}).catch(() => {
})
},
/** 导出按钮操作 */
handleExport() {
this.download('report/exceptionProcess/export', {
...this.queryParams
}, `exceptionProcess_${new Date().getTime()}.xlsx`)
}
}
}
</script>

@ -0,0 +1,676 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input
v-model="queryParams.boxBarcode"
placeholder="请输入MES箱体码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="流转标识" prop="productionUserFlag">
<el-select v-model="queryParams.productionUserFlag" placeholder="请选择流转标识" clearable>
<el-option
v-for="dict in dict.type.circulation_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="班组" prop="teamCode">
<el-input
v-model="queryParams.teamCode"
placeholder="请输入班组"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="申请原因" prop="applyReason">
<el-input
v-model="queryParams.applyReason"
placeholder="请输入申请原因"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="申请时间">
<el-date-picker
v-model="daterangeApplyTime"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item label="质管员标识" prop="qualityUserFlag">
<el-select v-model="queryParams.qualityUserFlag" placeholder="请选择质管员标识" clearable>
<el-option
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="不合格原因" prop="failureReason">
<el-input
v-model="queryParams.failureReason"
placeholder="请输入不合格原因"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="不合格类型" prop="failureType">
<el-input
v-model="queryParams.failureType"
placeholder="请输入不合格类型"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="质管员审核时间" prop="qualityUserTime">
<el-input
v-model="queryParams.qualityUserTime"
placeholder="请输入质管员审核时间"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生产经理标识" prop="productionManagerFlag">
<el-select v-model="queryParams.productionManagerFlag" placeholder="请选择生产经理标识" clearable>
<el-option
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="生产经理审核时间" prop="productionManagerTime">
<el-date-picker clearable
v-model="queryParams.productionManagerTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择生产经理审核时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="质量经理标识" prop="qualityManagerFlag">
<el-select v-model="queryParams.qualityManagerFlag" placeholder="请选择质量经理标识" clearable>
<el-option
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="质量经理审核时间" prop="qualityManagerTime">
<el-date-picker clearable
v-model="queryParams.qualityManagerTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择质量经理审核时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="巡检班长编号" prop="inspectionUserCode">
<el-input
v-model="queryParams.inspectionUserCode"
placeholder="请输入巡检班长编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="巡检班长消息标识" prop="inspectionUserFlag">
<el-input
v-model="queryParams.inspectionUserFlag"
placeholder="请输入巡检班长消息标识"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="图片地址" prop="imageAddress">
<el-input
v-model="queryParams.imageAddress"
placeholder="请输入图片地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="创建人" prop="createdBy">
<el-input
v-model="queryParams.createdBy"
placeholder="请输入创建人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="创建时间" prop="createdTime">
<el-date-picker clearable
v-model="queryParams.createdTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择创建时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="修改人" prop="updatedBy">
<el-input
v-model="queryParams.updatedBy"
placeholder="请输入修改人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="修改时间" prop="updatedTime">
<el-date-picker clearable
v-model="queryParams.updatedTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择修改时间"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['report:exceptionProcess:add']"
>新增
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['report:exceptionProcess:edit']"
>修改
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['report:exceptionProcess:remove']"
>删除
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['report:exceptionProcess:export']"
>导出
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="exceptionProcessList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="主键标识" align="center" prop="objId" v-if="columns[0].visible"/>
<el-table-column label="MES箱体码" align="center" prop="boxBarcode" v-if="columns[1].visible"/>
<el-table-column label="流转标识" align="center" prop="productionUserFlag" v-if="columns[2].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.circulation_flag" :value="scope.row.productionUserFlag"/>
</template>
</el-table-column>
<el-table-column label="班组" align="center" prop="teamCode" v-if="columns[3].visible"/>
<el-table-column label="申请原因" align="center" prop="applyReason" v-if="columns[4].visible"/>
<el-table-column label="申请时间" align="center" prop="applyTime" width="180" v-if="columns[5].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.applyTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="质管员标识" align="center" prop="qualityUserFlag" v-if="columns[6].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.agree_flag" :value="scope.row.qualityUserFlag"/>
</template>
</el-table-column>
<el-table-column label="不合格原因" align="center" prop="failureReason" v-if="columns[7].visible"/>
<el-table-column label="不合格类型" align="center" prop="failureType" v-if="columns[8].visible"/>
<el-table-column label="质管员审核时间" align="center" prop="qualityUserTime" v-if="columns[9].visible"/>
<el-table-column label="生产经理标识" align="center" prop="productionManagerFlag" v-if="columns[10].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.agree_flag" :value="scope.row.productionManagerFlag"/>
</template>
</el-table-column>
<el-table-column label="生产经理审核时间" align="center" prop="productionManagerTime" width="180"
v-if="columns[11].visible"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.productionManagerTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="质量经理标识" align="center" prop="qualityManagerFlag" v-if="columns[12].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.agree_flag" :value="scope.row.qualityManagerFlag"/>
</template>
</el-table-column>
<el-table-column label="质量经理审核时间" align="center" prop="qualityManagerTime" width="180" v-if="columns[13].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.qualityManagerTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="巡检班长编号" align="center" prop="inspectionUserCode" v-if="columns[14].visible"/>
<el-table-column label="巡检班长消息标识" align="center" prop="inspectionUserFlag" v-if="columns[15].visible"/>
<el-table-column label="图片地址" align="center" prop="imageAddress" v-if="columns[16].visible"/>
<el-table-column label="备注" align="center" prop="remark" v-if="columns[17].visible"/>
<el-table-column label="创建人" align="center" prop="createdBy" v-if="columns[18].visible"/>
<el-table-column label="创建时间" align="center" prop="createdTime" width="180" v-if="columns[19].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createdTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="修改人" align="center" prop="updatedBy" v-if="columns[20].visible"/>
<el-table-column label="修改时间" align="center" prop="updatedTime" width="180" v-if="columns[21].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updatedTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['report:exceptionProcess:edit']"
>修改
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['report:exceptionProcess:remove']"
>删除
</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改不合格品流程管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="MES箱体码" prop="boxBarcode">
<el-input v-model="form.boxBarcode" placeholder="请输入MES箱体码"/>
</el-form-item>
<el-form-item label="流转标识" prop="productionUserFlag">
<el-radio-group v-model="form.productionUserFlag">
<el-radio
v-for="dict in dict.type.circulation_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="班组" prop="teamCode">
<el-input v-model="form.teamCode" placeholder="请输入班组"/>
</el-form-item>
<el-form-item label="申请原因" prop="applyReason">
<el-input v-model="form.applyReason" placeholder="请输入申请原因"/>
</el-form-item>
<el-form-item label="申请时间" prop="applyTime">
<el-date-picker clearable
v-model="form.applyTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择申请时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="质管员标识" prop="qualityUserFlag">
<el-radio-group v-model="form.qualityUserFlag">
<el-radio
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.value"
>{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="不合格原因" prop="failureReason">
<el-input v-model="form.failureReason" placeholder="请输入不合格原因"/>
</el-form-item>
<el-form-item label="不合格类型" prop="failureType">
<el-input v-model="form.failureType" placeholder="请输入不合格类型"/>
</el-form-item>
<el-form-item label="质管员审核时间" prop="qualityUserTime">
<el-input v-model="form.qualityUserTime" placeholder="请输入质管员审核时间"/>
</el-form-item>
<el-form-item label="生产经理标识" prop="productionManagerFlag">
<el-select v-model="form.productionManagerFlag" placeholder="请选择生产经理标识">
<el-option
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="生产经理审核时间" prop="productionManagerTime">
<el-date-picker clearable
v-model="form.productionManagerTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择生产经理审核时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="质量经理标识" prop="qualityManagerFlag">
<el-select v-model="form.qualityManagerFlag" placeholder="请选择质量经理标识">
<el-option
v-for="dict in dict.type.agree_flag"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="质量经理审核时间" prop="qualityManagerTime">
<el-date-picker clearable
v-model="form.qualityManagerTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择质量经理审核时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="巡检班长编号" prop="inspectionUserCode">
<el-input v-model="form.inspectionUserCode" placeholder="请输入巡检班长编号"/>
</el-form-item>
<el-form-item label="巡检班长消息标识" prop="inspectionUserFlag">
<el-input v-model="form.inspectionUserFlag" placeholder="请输入巡检班长消息标识"/>
</el-form-item>
<el-form-item label="图片地址" prop="imageAddress">
<el-input v-model="form.imageAddress" placeholder="请输入图片地址"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注"/>
</el-form-item>
<el-form-item label="创建人" prop="createdBy">
<el-input v-model="form.createdBy" placeholder="请输入创建人"/>
</el-form-item>
<el-form-item label="创建时间" prop="createdTime">
<el-date-picker clearable
v-model="form.createdTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择创建时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="修改人" prop="updatedBy">
<el-input v-model="form.updatedBy" placeholder="请输入修改人"/>
</el-form-item>
<el-form-item label="修改时间" prop="updatedTime">
<el-date-picker clearable
v-model="form.updatedTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择修改时间"
>
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listExceptionProcess,
getExceptionProcess,
delExceptionProcess,
addExceptionProcess,
updateExceptionProcess
} from '@/api/report/exceptionProcess'
export default {
name: 'ExceptionProcess',
dicts: ['circulation_flag', 'agree_flag'],
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
exceptionProcessList: [],
//
title: '',
//
open: false,
//
daterangeApplyTime: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
boxBarcode: null,
productionUserFlag: null,
teamCode: null,
applyReason: null,
applyTime: null,
qualityUserFlag: null,
failureReason: null,
failureType: null,
qualityUserTime: null,
productionManagerFlag: null,
productionManagerTime: null,
qualityManagerFlag: null,
qualityManagerTime: null,
inspectionUserCode: null,
inspectionUserFlag: null,
imageAddress: null,
createdBy: null,
createdTime: null,
updatedBy: null,
updatedTime: null
},
//
form: {},
//
rules: {
boxBarcode: [
{ required: true, message: 'MES箱体码不能为空', trigger: 'blur' }
]
},
columns: [
{ key: 0, label: `主键标识`, visible: true },
{ key: 1, label: `MES箱体码`, visible: true },
{ key: 2, label: `流转标识`, visible: true },
{ key: 3, label: `班组`, visible: true },
{ key: 4, label: `申请原因`, visible: true },
{ key: 5, label: `申请时间`, visible: true },
{ key: 6, label: `质管员标识`, visible: true },
{ key: 7, label: `不合格原因`, visible: true },
{ key: 8, label: `不合格类型`, visible: true },
{ key: 9, label: `质管员审核时间`, visible: true },
{ key: 10, label: `生产经理标识`, visible: true },
{ key: 11, label: `生产经理审核时间`, visible: true },
{ key: 12, label: `质量经理标识`, visible: true },
{ key: 13, label: `质量经理审核时间`, visible: true },
{ key: 14, label: `巡检班长编号`, visible: true },
{ key: 15, label: `巡检班长消息标识`, visible: true },
{ key: 16, label: `图片地址`, visible: true },
{ key: 17, label: `备注`, visible: true },
{ key: 18, label: `创建人`, visible: true },
{ key: 19, label: `创建时间`, visible: true },
{ key: 20, label: `修改人`, visible: true },
{ key: 21, label: `修改时间`, visible: true }
]
}
},
created() {
this.getList()
},
methods: {
/** 查询不合格品流程管理列表 */
getList() {
this.loading = true
this.queryParams.params = {}
if (null != this.daterangeApplyTime && '' != this.daterangeApplyTime) {
this.queryParams.params['beginApplyTime'] = this.daterangeApplyTime[0]
this.queryParams.params['endApplyTime'] = this.daterangeApplyTime[1]
}
listExceptionProcess(this.queryParams).then(response => {
this.exceptionProcessList = response.rows
this.total = response.total
this.loading = false
})
},
//
cancel() {
this.open = false
this.reset()
},
//
reset() {
this.form = {
objId: null,
boxBarcode: null,
productionUserFlag: null,
teamCode: null,
applyReason: null,
applyTime: null,
qualityUserFlag: null,
failureReason: null,
failureType: null,
qualityUserTime: null,
productionManagerFlag: null,
productionManagerTime: null,
qualityManagerFlag: null,
qualityManagerTime: null,
inspectionUserCode: null,
inspectionUserFlag: null,
imageAddress: null,
remark: null,
createdBy: null,
createdTime: null,
updatedBy: null,
updatedTime: null
}
this.resetForm('form')
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.daterangeApplyTime = []
this.resetForm('queryForm')
this.handleQuery()
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.objId)
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset()
this.open = true
this.title = '添加不合格品流程管理'
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset()
const objId = row.objId || this.ids
getExceptionProcess(objId).then(response => {
this.form = response.data
this.open = true
this.title = '修改不合格品流程管理'
})
},
/** 提交按钮 */
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
if (this.form.objId != null) {
updateExceptionProcess(this.form).then(response => {
this.$modal.msgSuccess('修改成功')
this.open = false
this.getList()
})
} else {
addExceptionProcess(this.form).then(response => {
this.$modal.msgSuccess('新增成功')
this.open = false
this.getList()
})
}
}
})
},
/** 删除按钮操作 */
handleDelete(row) {
const objIds = row.objId || this.ids
this.$modal.confirm('是否确认删除不合格品流程管理编号为"' + objIds + '"的数据项?').then(function() {
return delExceptionProcess(objIds)
}).then(() => {
this.getList()
this.$modal.msgSuccess('删除成功')
}).catch(() => {
})
},
/** 导出按钮操作 */
handleExport() {
this.download('report/exceptionProcess/export', {
...this.queryParams
}, `exceptionProcess_${new Date().getTime()}.xlsx`)
}
}
}
</script>

@ -0,0 +1,456 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="箱体码" prop="materialBarcode">
<el-input
v-model="queryParams.materialBarcode"
placeholder="请输入箱体码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="切换工位" prop="switchStationCode">-->
<!-- <el-input-->
<!-- v-model="queryParams.switchStationCode"-->
<!-- placeholder="请输入切换工位"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="原订单编号" prop="oldOrderCode">-->
<!-- <el-input-->
<!-- v-model="queryParams.oldOrderCode"-->
<!-- placeholder="请输入原订单编号"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="切换订单标识" prop="isSwitch">-->
<!-- <el-select v-model="queryParams.isSwitch" placeholder="请选择切换订单标识" clearable>-->
<!-- <el-option-->
<!-- v-for="dict in dict.type.is_switch"-->
<!-- :key="dict.value"-->
<!-- :label="dict.label"-->
<!-- :value="dict.value"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="创建人" prop="createBy">-->
<!-- <el-input-->
<!-- v-model="queryParams.createBy"-->
<!-- placeholder="请输入创建人"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="创建时间">-->
<!-- <el-date-picker-->
<!-- v-model="daterangeCreateTime"-->
<!-- style="width: 240px"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- type="daterange"-->
<!-- range-separator="-"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- ></el-date-picker>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="更新人" prop="updateBy">-->
<!-- <el-input-->
<!-- v-model="queryParams.updateBy"-->
<!-- placeholder="请输入更新人"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="更新时间">-->
<!-- <el-date-picker-->
<!-- v-model="daterangeUpdateTime"-->
<!-- style="width: 240px"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- type="daterange"-->
<!-- range-separator="-"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- ></el-date-picker>-->
<!-- </el-form-item>-->
<el-form-item label="订单编号" prop="orderCode">
<el-input
v-model="queryParams.orderCode"
placeholder="请输入订单编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="打印标识" prop="isPrint">
<el-select v-model="queryParams.isPrint" placeholder="请选择打印标识" clearable>
<el-option
v-for="dict in dict.type.is_switch"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- type="primary"-->
<!-- plain-->
<!-- icon="el-icon-plus"-->
<!-- size="mini"-->
<!-- @click="handleAdd"-->
<!-- v-hasPermi="['report:switchOrder:add']"-->
<!-- >新增-->
<!-- </el-button>-->
<!-- </el-col>-->
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
<!-- type="success"-->
<!-- plain-->
<!-- icon="el-icon-edit"-->
<!-- size="mini"-->
<!-- :disabled="single"-->
<!-- @click="handleUpdate"-->
<!-- v-hasPermi="['report:switchOrder:edit']"-->
<!-- >修改-->
<!-- </el-button>-->
<!-- </el-col>-->
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['report:switchOrder:remove']"
>删除
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['report:switchOrder:export']"
>导出
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="switchOrderList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="主键标识" align="center" prop="objId" v-if="columns[0].visible"/>
<el-table-column label="订单编号" align="center" prop="orderCode" v-if="columns[10].visible"/>
<el-table-column label="切换工位" align="center" prop="switchStationName" v-if="columns[2].visible"/>
<el-table-column label="箱体码" align="center" prop="materialBarcode" v-if="columns[1].visible" width="190"/>
<el-table-column label="切换订单标识" align="center" prop="isSwitch" v-if="columns[4].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.is_switch" :value="scope.row.isSwitch"/>
</template>
</el-table-column>
<el-table-column label="打印标识" align="center" prop="isPrint" v-if="columns[11].visible">
<template slot-scope="scope">
<dict-tag :options="dict.type.is_switch" :value="scope.row.isPrint"/>
</template>
</el-table-column>
<el-table-column label="创建人" align="center" prop="createBy" v-if="columns[5].visible"/>
<el-table-column label="创建时间" align="center" prop="createTime" width="180" v-if="columns[6].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="更新人" align="center" prop="updateBy" v-if="columns[7].visible"/>
<el-table-column label="更新时间" align="center" prop="updateTime" width="180" v-if="columns[8].visible">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" v-if="columns[9].visible"/>
<el-table-column label="原订单编号" align="center" prop="oldOrderCode" v-if="columns[3].visible"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['report:switchOrder:edit']"
>修改SAP订单
</el-button>
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-delete"-->
<!-- @click="handleDelete(scope.row)"-->
<!-- v-hasPermi="['report:switchOrder:remove']"-->
<!-- >删除-->
<!-- </el-button>-->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改切换订单管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<!-- <el-form-item label="主键标识" prop="objId">-->
<!-- <el-input v-model="form.objId" placeholder="请输入主键标识"/>-->
<!-- </el-form-item>-->
<el-form-item label="箱体码" prop="materialBarcode">
<el-input v-model="form.materialBarcode" placeholder="请输入箱体码" disabled/>
</el-form-item>
<el-form-item label="原订单编号" prop="orderCode">
<el-input v-model="form.orderCode" placeholder="请输入原订单编号" disabled/>
</el-form-item>
<el-form-item label="切换工位" prop="switchStationName">
<el-input v-model="form.switchStationName" placeholder="请输入切换工位" disabled/>
</el-form-item>
<el-form-item label="新订单编号" prop="oldOrderCode">
<el-input v-model="form.oldOrderCode" placeholder="请输入新订单编号" />
</el-form-item>
<!-- <el-form-item label="切换订单标识" prop="isSwitch">-->
<!-- <el-radio-group v-model="form.isSwitch">-->
<!-- <el-radio-->
<!-- v-for="dict in dict.type.is_switch"-->
<!-- :key="dict.value"-->
<!-- :label="dict.value"-->
<!-- >{{ dict.label }}-->
<!-- </el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="备注" prop="remark">-->
<!-- <el-input v-model="form.remark" placeholder="请输入备注"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="打印标识" prop="isPrint">-->
<!-- <el-radio-group v-model="form.isPrint">-->
<!-- <el-radio-->
<!-- v-for="dict in dict.type.is_switch"-->
<!-- :key="dict.value"-->
<!-- :label="dict.value"-->
<!-- >{{ dict.label }}-->
<!-- </el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listSwitchOrder,
getSwitchOrder,
delSwitchOrder,
addSwitchOrder,
updateSwitchOrder
} from '@/api/report/switchOrder'
export default {
name: 'SwitchOrder',
dicts: ['is_switch'],
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
switchOrderList: [],
//
title: '',
//
open: false,
//
daterangeCreateTime: [],
//
daterangeUpdateTime: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
objId: null,
materialBarcode: null,
switchStationCode: null,
switchStationName: null,
oldOrderCode: null,
isSwitch: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
orderCode: null,
isPrint: null
},
//
form: {},
//
rules: {
oldOrderCode: [
{ required: true, message: '新订单编号不能为空', trigger: 'blur' }
],
},
columns: [
{ key: 0, label: `主键标识`, visible: false },
{ key: 1, label: `箱体码`, visible: true },
{ key: 2, label: `切换工位`, visible: true },
{ key: 3, label: `原订单编号`, visible: false },
{ key: 4, label: `切换订单标识`, visible: true },
{ key: 5, label: `创建人`, visible: false },
{ key: 6, label: `创建时间`, visible: true },
{ key: 7, label: `更新人`, visible: false },
{ key: 8, label: `更新时间`, visible: true },
{ key: 9, label: `备注`, visible: false },
{ key: 10, label: `订单编号`, visible: true },
{ key: 11, label: `打印标识`, visible: true }
]
}
},
created() {
this.getList()
},
methods: {
/** 查询切换订单管理列表 */
getList() {
this.loading = true
this.queryParams.params = {}
if (null != this.daterangeCreateTime && '' != this.daterangeCreateTime) {
this.queryParams.params['beginCreateTime'] = this.daterangeCreateTime[0]
this.queryParams.params['endCreateTime'] = this.daterangeCreateTime[1]
}
if (null != this.daterangeUpdateTime && '' != this.daterangeUpdateTime) {
this.queryParams.params['beginUpdateTime'] = this.daterangeUpdateTime[0]
this.queryParams.params['endUpdateTime'] = this.daterangeUpdateTime[1]
}
listSwitchOrder(this.queryParams).then(response => {
this.switchOrderList = response.rows
this.total = response.total
this.loading = false
})
},
//
cancel() {
this.open = false
this.reset()
},
//
reset() {
this.form = {
objId: null,
materialBarcode: null,
switchStationCode: null,
oldOrderCode: null,
isSwitch: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
remark: null,
orderCode: null,
isPrint: null
}
this.resetForm('form')
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.daterangeCreateTime = []
this.daterangeUpdateTime = []
this.resetForm('queryForm')
this.handleQuery()
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.objId)
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset()
this.open = true
this.title = '添加切换订单管理'
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset()
const objId = row.objId || this.ids
getSwitchOrder(objId).then(response => {
this.form = response.data
this.open = true
this.title = '修改切换订单管理'
})
},
/** 提交按钮 */
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
if (this.form.objId != null) {
updateSwitchOrder(this.form).then(response => {
this.$modal.msgSuccess('修改SAP订单成功请到打印机旁进行补打条码')
this.open = false
this.getList()
})
} else {
addSwitchOrder(this.form).then(response => {
this.$modal.msgSuccess('新增成功')
this.open = false
this.getList()
})
}
}
})
},
/** 删除按钮操作 */
handleDelete(row) {
const objIds = row.objId || this.ids
this.$modal.confirm('是否确认删除切换订单管理编号为"' + objIds + '"的数据项?').then(function() {
return delSwitchOrder(objIds)
}).then(() => {
this.getList()
this.$modal.msgSuccess('删除成功')
}).catch(() => {
})
},
/** 导出按钮操作 */
handleExport() {
this.download('report/switchOrder/export', {
...this.queryParams
}, `switchOrder_${new Date().getTime()}.xlsx`)
}
}
}
</script>
Loading…
Cancel
Save