projects/mes-test #133
@ -47,12 +47,14 @@
|
|||||||
type="datetime"
|
type="datetime"
|
||||||
:placeholder="`请选择${col.label}`"
|
:placeholder="`请选择${col.label}`"
|
||||||
value-format="timestamp"
|
value-format="timestamp"
|
||||||
|
@change="$emit('update', form)"
|
||||||
v-bind="col.bind"></el-date-picker>
|
v-bind="col.bind"></el-date-picker>
|
||||||
<el-switch
|
<el-switch
|
||||||
v-if="col.switch"
|
v-if="col.switch"
|
||||||
v-model="form[col.prop]"
|
v-model="form[col.prop]"
|
||||||
active-color="#0b58ff"
|
active-color="#0b58ff"
|
||||||
inactive-color="#e1e1e1"
|
inactive-color="#e1e1e1"
|
||||||
|
@change="$emit('update', form)"
|
||||||
v-bind="col.bind"></el-switch>
|
v-bind="col.bind"></el-switch>
|
||||||
<component
|
<component
|
||||||
v-if="col.subcomponent"
|
v-if="col.subcomponent"
|
||||||
@ -277,7 +279,6 @@ export default {
|
|||||||
} else if (opt.url) {
|
} else if (opt.url) {
|
||||||
// 如果有 depends,则暂时先不获取,注册一个watcher
|
// 如果有 depends,则暂时先不获取,注册一个watcher
|
||||||
if (opt.depends) {
|
if (opt.depends) {
|
||||||
console.log('[handleOptions] setting watch');
|
|
||||||
this.$watch(
|
this.$watch(
|
||||||
() => this.form[opt.depends],
|
() => this.form[opt.depends],
|
||||||
(id) => {
|
(id) => {
|
||||||
@ -300,7 +301,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
immediate: true,
|
immediate: false,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
|
@ -32,9 +32,28 @@ export default {
|
|||||||
updateUrl: '',
|
updateUrl: '',
|
||||||
addUrl: '',
|
addUrl: '',
|
||||||
pageUrl: '',
|
pageUrl: '',
|
||||||
|
infoUrl: '',
|
||||||
|
basePath: '',
|
||||||
form: {}
|
form: {}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
addPath() {
|
||||||
|
return this.basePath + '/create'
|
||||||
|
},
|
||||||
|
updatePath() {
|
||||||
|
return this.basePath + '/update'
|
||||||
|
},
|
||||||
|
deletePath() {
|
||||||
|
return this.basePath + '/delete'
|
||||||
|
},
|
||||||
|
infoPath() {
|
||||||
|
return this.basePath + '/get'
|
||||||
|
},
|
||||||
|
pagePath() {
|
||||||
|
return this.basePath + '/page'
|
||||||
|
}
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// utils
|
// utils
|
||||||
http(url, method, payload) {
|
http(url, method, payload) {
|
||||||
@ -46,16 +65,16 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
put(payload) {
|
put(payload) {
|
||||||
return this.http(this.updateUrl, 'put', payload);
|
return this.http(this.updateUrl == '' ? this.updatePath : this.updateUrl, 'put', payload);
|
||||||
},
|
},
|
||||||
post(payload) {
|
post(payload) {
|
||||||
return this.http(this.addUrl, 'post', payload);
|
return this.http(this.addUrl == '' ? this.addPath : this.addUrl, 'post', payload);
|
||||||
},
|
},
|
||||||
recv(payload) {
|
recv(payload) {
|
||||||
return this.http(this.pageUrl, 'get', payload);
|
return this.http(this.pageUrl == '' ? this.pagePath : this.pageUrl, 'get', payload);
|
||||||
},
|
},
|
||||||
info(payload) {
|
info(payload) {
|
||||||
return this.http(this.infoUrl, 'get', payload);
|
return this.http(this.infoUrl == '' ? this.infoPath : this.infoUrl, 'get', payload);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
@ -82,7 +82,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getAccessToken } from '@/utils/auth';
|
import { getAccessToken } from '@/utils/auth';
|
||||||
import defaultBg from '../../../../../assets/images/default-file-icon.png';
|
import defaultBg from '../../../../assets/images/default-file-icon.png';
|
||||||
|
|
||||||
function checkSize(file, message) {
|
function checkSize(file, message) {
|
||||||
const isLt2M = file.size / 1024 / 1024 < 2;
|
const isLt2M = file.size / 1024 / 1024 < 2;
|
||||||
@ -139,56 +139,7 @@ export default {
|
|||||||
headers: { Authorization: 'Bearer ' + getAccessToken() }, // 设置上传的请求头部
|
headers: { Authorization: 'Bearer ' + getAccessToken() }, // 设置上传的请求头部
|
||||||
fileList: [],
|
fileList: [],
|
||||||
uploadUrl: process.env.VUE_APP_BASE_API + '/admin-api/infra/file/upload',
|
uploadUrl: process.env.VUE_APP_BASE_API + '/admin-api/infra/file/upload',
|
||||||
files: [
|
files: [],
|
||||||
// 服务器返回的结构
|
|
||||||
// {
|
|
||||||
// fileName: 'sf.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://hbimg.b0.upaiyun.com/cc7475787bd08ed926b68eaf53fa1f2c5473259115e3c-gJdObd_fw658',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'sddf.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl: 'https://img0.sc115.com/wm/xqx/pic1/1501xofo4ssolji.jpg',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'jjj.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://www.mms591.com/www.mms591.com-photo/2013081823/1-130QR34544.jpg',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'asdfasdf.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://hbimg.b0.upaiyun.com/8f6bced5f2e38d3a021b2c48d5a98dfb6317e3e12c6a0-QmhJ5v_fw658',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'asdkj.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://www.mms591.com/www.mms591.com-photo/2013013021/1-130130212034.jpg',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'lkasjdf.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://www.mms591.com/www.mms591.com-photo/2013072122/1-130H1223057.jpg',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'asdf.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://img.1ppt.com/uploads/allimg/1212/1-1212101ZH5A2.jpg',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// fileName: 'afdffff.docs',
|
|
||||||
// fileType: 'asset',
|
|
||||||
// fileUrl:
|
|
||||||
// 'https://www.mms591.com/www.mms591.com-photo/2013051721/1-13051H11945.jpg',
|
|
||||||
// },
|
|
||||||
],
|
|
||||||
updateTimer: null,
|
updateTimer: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -414,7 +365,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.default-icon {
|
.default-icon {
|
||||||
background: url(../../../../../assets/images/default-file-icon.png) no-repeat;
|
background: url(../../../../assets/images/default-file-icon.png) no-repeat;
|
||||||
background-position: center;
|
background-position: center;
|
||||||
background-size: 64px;
|
background-size: 64px;
|
||||||
}
|
}
|
@ -6,150 +6,105 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<el-form
|
<el-form class="equipment-info-form" ref="form" :model="form" label-width="200px" label-position="top"
|
||||||
class="equipment-info-form"
|
|
||||||
ref="form"
|
|
||||||
:model="form"
|
|
||||||
label-width="200px"
|
|
||||||
label-position="top"
|
|
||||||
v-loading="formLoading">
|
v-loading="formLoading">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item label="设备名称" prop="name" :rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
label="设备名称"
|
<el-input v-model="form.name" :disabled="disabled" placeholder="请输入设备名称"></el-input>
|
||||||
prop="name"
|
|
||||||
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
|
||||||
<el-input
|
|
||||||
v-model="form.name"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入设备名称"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="设备编码" prop="code" :rules="[]">
|
<el-form-item label="设备编码" prop="code" :rules="[]">
|
||||||
<el-input
|
<el-input v-model="form.code" :disabled="disabled" placeholder="请输入设备编码"></el-input>
|
||||||
v-model="form.code"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入设备编码"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="英文名称" prop="enName" :rules="[]">
|
<el-form-item label="英文名称" prop="enName" :rules="[]">
|
||||||
<el-input
|
<el-input v-model="form.enName" :disabled="disabled" placeholder="请输入英文名称"></el-input>
|
||||||
v-model="form.enName"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入英文名称"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="缩写" prop="abbr" :rules="[]">
|
<el-form-item label="缩写" prop="abbr" :rules="[]">
|
||||||
<el-input
|
<el-input v-model="form.abbr" :disabled="disabled" placeholder="请输入名称缩写"></el-input>
|
||||||
v-model="form.abbr"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入名称缩写"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="设备类型" prop="equipmentTypeId" :rules="[]">
|
<el-form-item label="设备类型" prop="equipmentTypeId"
|
||||||
<el-select
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
v-model="form.equipmentTypeId"
|
<el-select v-model="form.equipmentTypeId" :disabled="disabled" filterable placeholder="请选择设备类型">
|
||||||
:disabled="disabled"
|
<el-option v-for="eqType in eqTypeList" :key="eqType.id" :label="eqType.name"
|
||||||
filterable
|
|
||||||
placeholder="请选择设备类型">
|
|
||||||
<el-option
|
|
||||||
v-for="eqType in eqTypeList"
|
|
||||||
:key="eqType.id"
|
|
||||||
:label="eqType.name"
|
|
||||||
:value="eqType.id"></el-option>
|
:value="eqType.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="备注" prop="remark" :rules="[]">
|
<el-form-item label="预计生产时间(min/天)" prop="workTime" :rules="[
|
||||||
<el-input
|
{ required: true, message: '不能为空', trigger: 'blur' },
|
||||||
v-model="form.remark"
|
{
|
||||||
:disabled="disabled"
|
type: 'number',
|
||||||
placeholder="请输入备注"></el-input>
|
message: '请输入正确的数字值',
|
||||||
|
trigger: 'blur',
|
||||||
|
transform: (val) => Number(val),
|
||||||
|
},
|
||||||
|
]">
|
||||||
|
<el-input v-model="form.workTime" :disabled="disabled" placeholder="请输入预计生产时间"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="生产日期" prop="productionTime" :rules="[]">
|
<el-form-item label="生产日期" prop="productionTime" :rules="[]">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.enterTime" :disabled="disabled" type="datetime" placeholder="请选择生产日期"
|
||||||
v-model="form.enterTime"
|
|
||||||
:disabled="disabled"
|
|
||||||
type="datetime"
|
|
||||||
placeholder="请选择生产日期"
|
|
||||||
value-format="timestamp"></el-date-picker>
|
value-format="timestamp"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="进场日期" prop="enterTime" :rules="[]">
|
<el-form-item label="进场日期" prop="enterTime" :rules="[]">
|
||||||
<el-date-picker
|
<el-date-picker v-model="form.enterTime" :disabled="disabled" type="datetime" placeholder="请选择进场日期"
|
||||||
v-model="form.enterTime"
|
|
||||||
:disabled="disabled"
|
|
||||||
type="datetime"
|
|
||||||
placeholder="请选择进场日期"
|
|
||||||
value-format="timestamp"></el-date-picker>
|
value-format="timestamp"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item label="设备TT值" prop="tvalue" :rules="[
|
||||||
label="设备TT值"
|
{ required: true, message: '不能为空', trigger: 'blur' },
|
||||||
prop="tvalue"
|
{
|
||||||
:rules="[
|
type: 'number',
|
||||||
{ required: true, message: '不能为空', trigger: 'blur' },
|
message: '请输入正确的数字值',
|
||||||
{
|
trigger: 'blur',
|
||||||
type: 'number',
|
transform: (val) => Number(val),
|
||||||
message: '请输入正确的数字值',
|
},
|
||||||
trigger: 'blur',
|
]">
|
||||||
transform: (val) => Number(val),
|
<el-input v-model="form.tvalue" :disabled="disabled" placeholder="请输入设备TT值"></el-input>
|
||||||
},
|
|
||||||
]">
|
|
||||||
<el-input
|
|
||||||
v-model="form.tvalue"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入设备TT值"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item label="产品加工时间(s)" prop="processingTime" :rules="[
|
||||||
label="产品加工时间(s)"
|
{ required: true, message: '不能为空', trigger: 'blur' },
|
||||||
prop="processingTime"
|
{
|
||||||
:rules="[
|
type: 'number',
|
||||||
{ required: true, message: '不能为空', trigger: 'blur' },
|
message: '请输入正确的数字值',
|
||||||
{
|
trigger: 'blur',
|
||||||
type: 'number',
|
transform: (val) => Number(val),
|
||||||
message: '请输入正确的数字值',
|
},
|
||||||
trigger: 'blur',
|
]">
|
||||||
transform: (val) => Number(val),
|
<el-input v-model="form.processingTime" :disabled="disabled" placeholder="请输入产品加工时间"></el-input>
|
||||||
},
|
|
||||||
]">
|
|
||||||
<el-input
|
|
||||||
v-model="form.processingTime"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入产品加工时间"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="制造商" prop="manufacturer" :rules="[]">
|
<el-form-item label="制造商" prop="manufacturer" :rules="[]">
|
||||||
<el-input
|
<el-input v-model="form.manufacturer" :disabled="disabled" placeholder="请输入制造商"></el-input>
|
||||||
v-model="form.manufacturer"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入制造商"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="设备规格" prop="spec" :rules="[]">
|
<el-form-item label="设备规格" prop="spec" :rules="[]">
|
||||||
<el-input
|
<el-input v-model="form.spec" :disabled="disabled" placeholder="请输入设备规格"></el-input>
|
||||||
v-model="form.spec"
|
|
||||||
:disabled="disabled"
|
|
||||||
placeholder="请输入设备规格"></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -157,14 +112,19 @@
|
|||||||
<!-- 功能描述 -->
|
<!-- 功能描述 -->
|
||||||
<el-col>
|
<el-col>
|
||||||
<el-form-item label="功能描述" prop="description" :rules="[]">
|
<el-form-item label="功能描述" prop="description" :rules="[]">
|
||||||
<el-input
|
<el-input type="textarea" :disabled="disabled" v-model="form.description"
|
||||||
type="textarea"
|
|
||||||
:disabled="disabled"
|
|
||||||
v-model="form.description"
|
|
||||||
placeholder="请填写功能描述"></el-input>
|
placeholder="请填写功能描述"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<!-- 功能描述 -->
|
||||||
|
<el-col>
|
||||||
|
<el-form-item label="备注" prop="remark" :rules="[]">
|
||||||
|
<el-input v-model="form.remark" :disabled="disabled" placeholder="请输入备注"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<!-- 上传资料 -->
|
<!-- 上传资料 -->
|
||||||
<el-col>
|
<el-col>
|
||||||
@ -177,10 +137,7 @@
|
|||||||
<!-- 上传图片 -->
|
<!-- 上传图片 -->
|
||||||
<el-col>
|
<el-col>
|
||||||
<el-form-item label="上传图片" prop="pics" :rules="[]">
|
<el-form-item label="上传图片" prop="pics" :rules="[]">
|
||||||
<AssetsUpload
|
<AssetsUpload :is-pic-mode="true" v-model="form.pics" :disabled="disabled" />
|
||||||
:is-pic-mode="true"
|
|
||||||
v-model="form.pics"
|
|
||||||
:disabled="disabled" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -229,6 +186,7 @@ export default {
|
|||||||
equipmentTypeId: '',
|
equipmentTypeId: '',
|
||||||
remark: '',
|
remark: '',
|
||||||
productionTime: '',
|
productionTime: '',
|
||||||
|
workTime: '',
|
||||||
enterTime: '',
|
enterTime: '',
|
||||||
tvalue: '',
|
tvalue: '',
|
||||||
processingTime: '',
|
processingTime: '',
|
||||||
@ -305,16 +263,9 @@ export default {
|
|||||||
return response.data;
|
return response.data;
|
||||||
},
|
},
|
||||||
// 上传成功的特殊处理
|
// 上传成功的特殊处理
|
||||||
beforeUpload() {},
|
beforeUpload() { },
|
||||||
// 上传前的验证规则可通过 bind 属性传入
|
// 上传前的验证规则可通过 bind 属性传入
|
||||||
handleUploadSuccess(response, file, fileList) {
|
handleUploadSuccess(response, file, fileList) {
|
||||||
console.log(
|
|
||||||
'[dialogForm:handleUploadSuccess]',
|
|
||||||
response,
|
|
||||||
file,
|
|
||||||
fileList,
|
|
||||||
this.form
|
|
||||||
);
|
|
||||||
// 保存原始文件名
|
// 保存原始文件名
|
||||||
if ('fileNames' in this.form) this.form.fileNames.push(file.name);
|
if ('fileNames' in this.form) this.form.fileNames.push(file.name);
|
||||||
// 保存完整地址
|
// 保存完整地址
|
@ -1,61 +1,29 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 搜索工作栏 -->
|
<!-- 搜索工作栏 -->
|
||||||
<SearchBar
|
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="handleSearchBarBtnClick" />
|
||||||
:formConfigs="searchBarFormConfig"
|
|
||||||
ref="search-bar"
|
|
||||||
@headBtnClick="handleSearchBarBtnClick" />
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<base-table
|
<base-table :table-props="tableProps" :page="queryParams.pageNo" :limit="queryParams.pageSize" :table-data="list"
|
||||||
:table-props="tableProps"
|
|
||||||
:page="queryParams.pageNo"
|
|
||||||
:limit="queryParams.pageSize"
|
|
||||||
:table-data="list"
|
|
||||||
@emitFun="handleEmitFun">
|
@emitFun="handleEmitFun">
|
||||||
<method-btn
|
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
|
||||||
v-if="tableBtn.length"
|
|
||||||
slot="handleBtn"
|
|
||||||
:width="120"
|
|
||||||
label="操作"
|
|
||||||
:method-list="tableBtn"
|
|
||||||
@clickBtn="handleTableBtnClick" />
|
@clickBtn="handleTableBtnClick" />
|
||||||
</base-table>
|
</base-table>
|
||||||
|
|
||||||
<!-- 分页组件 -->
|
<!-- 分页组件 -->
|
||||||
<pagination
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="queryParams.pageNo"
|
|
||||||
:limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList" />
|
@pagination="getList" />
|
||||||
|
|
||||||
<!-- 对话框(添加) -->
|
<!-- 对话框(添加) -->
|
||||||
<base-dialog
|
<base-dialog :dialogTitle="title" :dialogVisible="open" @close="cancel" @cancel="cancel" width="60%"
|
||||||
:dialogTitle="title"
|
|
||||||
:dialogVisible="open"
|
|
||||||
@close="cancel"
|
|
||||||
@cancel="cancel"
|
|
||||||
width="60%"
|
|
||||||
@confirm="submitForm">
|
@confirm="submitForm">
|
||||||
<DialogForm
|
<DialogForm v-if="open" key="index-dialog-form" ref="form" label-position="top" size="small" :dataForm="form"
|
||||||
v-if="open"
|
|
||||||
key="index-dialog-form"
|
|
||||||
ref="form"
|
|
||||||
label-position="top"
|
|
||||||
size="small"
|
|
||||||
:dataForm="form"
|
|
||||||
:rows="computedRows" />
|
:rows="computedRows" />
|
||||||
</base-dialog>
|
</base-dialog>
|
||||||
|
|
||||||
<!-- 设备 详情 - 编辑 -->
|
<!-- 设备 详情 - 编辑 -->
|
||||||
<EquipmentDrawer
|
<EquipmentDrawer v-if="editVisible" ref="drawer" :mode="editMode" @update-mode="editMode = $event"
|
||||||
v-if="editVisible"
|
:data-id="form.id" :sections="[
|
||||||
ref="drawer"
|
|
||||||
:mode="editMode"
|
|
||||||
@update-mode="editMode = $event"
|
|
||||||
:data-id="form.id"
|
|
||||||
:sections="[
|
|
||||||
{
|
{
|
||||||
name: '基本信息',
|
name: '基本信息',
|
||||||
key: 'base',
|
key: 'base',
|
||||||
@ -69,36 +37,33 @@
|
|||||||
name: '属性列表',
|
name: '属性列表',
|
||||||
key: 'attrs',
|
key: 'attrs',
|
||||||
props: drawerListProps,
|
props: drawerListProps,
|
||||||
url: '/base/equipment-attr/page',
|
url: '/base/core-equipment-attr/page',
|
||||||
urlCreate: '/base/equipment-attr/create',
|
urlCreate: '/base/core-equipment-attr/create',
|
||||||
urlUpdate: '/base/equipment-attr/update',
|
urlUpdate: '/base/core-equipment-attr/update',
|
||||||
urlDelete: '/base/equipment-attr/delete',
|
urlDelete: '/base/core-equipment-attr/delete',
|
||||||
urlDetail: '/base/equipment-attr/get',
|
urlDetail: '/base/core-equipment-attr/get',
|
||||||
queryParams: {
|
queryParams: {
|
||||||
equipmentId: form.id,
|
equipmentId: form.id,
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
},
|
},
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:equipment-attr:update')
|
this.$auth.hasPermi('base:core-equipment-attr:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-attr:delete')
|
this.$auth.hasPermi('base:core-equipment-attr:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
].filter((v) => v),
|
].filter((v) => v),
|
||||||
allowAdd: true,
|
allowAdd: true,
|
||||||
},
|
},
|
||||||
]"
|
]" @refreshDataList="getList" @cancel="cancelEdit" @destroy="cancelEdit" />
|
||||||
@refreshDataList="getList"
|
|
||||||
@cancel="cancelEdit"
|
|
||||||
@destroy="cancelEdit" />
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -129,23 +94,23 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchBarKeys: ['name', 'code'],
|
searchBarKeys: ['name', 'code'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi(`base:equipment:update`)
|
this.$auth.hasPermi(`base:core-equipment:update`)
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment:update')
|
this.$auth.hasPermi('base:core-equipment:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment:delete')
|
this.$auth.hasPermi('base:core-equipment:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
].filter((v) => v),
|
].filter((v) => v),
|
||||||
tableProps: [
|
tableProps: [
|
||||||
@ -211,14 +176,14 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:equipment:export') ? 'button' : '',
|
type: this.$auth.hasPermi('base:core-equipment:export') ? 'button' : '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
name: 'export',
|
name: 'export',
|
||||||
plain: true,
|
plain: true,
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:equipment:create') ? 'button' : '',
|
type: this.$auth.hasPermi('base:core-equipment:create') ? 'button' : '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
name: 'add',
|
name: 'add',
|
||||||
plain: true,
|
plain: true,
|
||||||
@ -268,17 +233,31 @@ export default {
|
|||||||
label: '设备类型',
|
label: '设备类型',
|
||||||
prop: 'equipmentTypeId',
|
prop: 'equipmentTypeId',
|
||||||
url: '/base/core-equipment-type/page?pageNo=1&pageSize=100',
|
url: '/base/core-equipment-type/page?pageNo=1&pageSize=100',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
bind: {
|
bind: {
|
||||||
filterable: true,
|
filterable: true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '预计生产时间(min/天)',
|
||||||
|
prop: 'workTime',
|
||||||
|
rules: [
|
||||||
|
{ required: true, message: '不能为空', trigger: 'blur' },
|
||||||
|
{
|
||||||
|
type: 'number',
|
||||||
|
message: '请输入正确的数字值',
|
||||||
|
trigger: 'blur',
|
||||||
|
transform: (val) => Number(val),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
// {
|
// {
|
||||||
// select: true,
|
// select: true,
|
||||||
// label: '设备分组',
|
// label: '设备分组',
|
||||||
// prop: 'groupId',
|
// prop: 'groupId',
|
||||||
// url: '/base/equipment-group/page?pageNo=1&pageSize=100',
|
// url: '/base/core-equipment-group/page?pageNo=1&pageSize=100',
|
||||||
// },
|
// },
|
||||||
{ input: true, label: '备注', prop: 'remark' },
|
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
@ -309,7 +288,7 @@ export default {
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
input: true,
|
input: true,
|
||||||
label: '产品加工时间(s)',
|
label: '产品加工时间(s)',
|
||||||
prop: 'processingTime',
|
prop: 'processingTime',
|
||||||
rules: [
|
rules: [
|
||||||
{ required: true, message: '不能为空', trigger: 'blur' },
|
{ required: true, message: '不能为空', trigger: 'blur' },
|
||||||
@ -330,7 +309,7 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
input: true,
|
input: true,
|
||||||
label: '设备规格',
|
label: '规格描述',
|
||||||
prop: 'spec',
|
prop: 'spec',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@ -342,6 +321,9 @@ export default {
|
|||||||
prop: 'description',
|
prop: 'description',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
{ input: true, label: '备注', prop: 'remark' }
|
||||||
|
]
|
||||||
// [
|
// [
|
||||||
// {
|
// {
|
||||||
// assetUpload: true,
|
// assetUpload: true,
|
||||||
@ -453,36 +435,36 @@ export default {
|
|||||||
computedRows() {
|
computedRows() {
|
||||||
return this.showUploadComponents
|
return this.showUploadComponents
|
||||||
? [
|
? [
|
||||||
...this.rows,
|
...this.rows,
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
assetUpload: true,
|
assetUpload: true,
|
||||||
key: 'eq-assets', // 用于区分不同的上传组件
|
key: 'eq-assets', // 用于区分不同的上传组件
|
||||||
label: '上传资料',
|
label: '上传资料',
|
||||||
fieldName: 'assets',
|
fieldName: 'assets',
|
||||||
subcomponent: AssetsUpload,
|
subcomponent: AssetsUpload,
|
||||||
prop: 'uploadedAssets',
|
prop: 'uploadedAssets',
|
||||||
default: [],
|
default: [],
|
||||||
bind: {
|
bind: {
|
||||||
'is-pic-mode': false,
|
'is-pic-mode': false,
|
||||||
},
|
|
||||||
},
|
},
|
||||||
],
|
},
|
||||||
[
|
],
|
||||||
{
|
[
|
||||||
assetUpload: true,
|
{
|
||||||
key: 'eq-pics', // 用于区分不同的上传组件
|
assetUpload: true,
|
||||||
label: '上传图片',
|
key: 'eq-pics', // 用于区分不同的上传组件
|
||||||
fieldName: 'images',
|
label: '上传图片',
|
||||||
subcomponent: AssetsUpload,
|
fieldName: 'images',
|
||||||
// prop: '',
|
subcomponent: AssetsUpload,
|
||||||
// default: [],
|
// prop: '',
|
||||||
bind: {
|
// default: [],
|
||||||
'is-pic-mode': true,
|
bind: {
|
||||||
},
|
'is-pic-mode': true,
|
||||||
},
|
},
|
||||||
],
|
},
|
||||||
]
|
],
|
||||||
|
]
|
||||||
: this.rows;
|
: this.rows;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -580,7 +562,7 @@ export default {
|
|||||||
this.getList();
|
this.getList();
|
||||||
this.$modal.msgSuccess('删除成功');
|
this.$modal.msgSuccess('删除成功');
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => { });
|
||||||
},
|
},
|
||||||
/** 导出按钮操作 */
|
/** 导出按钮操作 */
|
||||||
handleExport() {
|
handleExport() {
|
||||||
@ -598,7 +580,7 @@ export default {
|
|||||||
this.$download.excel(response, '设备.xls');
|
this.$download.excel(response, '设备.xls');
|
||||||
this.exportLoading = false;
|
this.exportLoading = false;
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => { });
|
||||||
},
|
},
|
||||||
// 查看详情
|
// 查看详情
|
||||||
viewDetail(id) {
|
viewDetail(id) {
|
360
src/views/base/coreEquipmentLineBind/index.vue
Normal file
@ -0,0 +1,360 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<!-- 搜索工作栏 -->
|
||||||
|
<SearchBar
|
||||||
|
:formConfigs="searchBarFormConfig"
|
||||||
|
ref="search-bar"
|
||||||
|
@headBtnClick="handleSearchBarBtnClick" />
|
||||||
|
|
||||||
|
<!-- 列表 -->
|
||||||
|
<base-table
|
||||||
|
:table-props="tableProps"
|
||||||
|
:page="queryParams.pageNo"
|
||||||
|
:limit="queryParams.pageSize"
|
||||||
|
:table-data="list"
|
||||||
|
@emitFun="handleEmitFun">
|
||||||
|
<method-btn
|
||||||
|
v-if="tableBtn.length"
|
||||||
|
slot="handleBtn"
|
||||||
|
label="操作"
|
||||||
|
:width="120"
|
||||||
|
:method-list="tableBtn"
|
||||||
|
@clickBtn="handleTableBtnClick" />
|
||||||
|
</base-table>
|
||||||
|
|
||||||
|
<!-- 分页组件 -->
|
||||||
|
<pagination
|
||||||
|
v-show="total > 0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="queryParams.pageNo"
|
||||||
|
:limit.sync="queryParams.pageSize"
|
||||||
|
@pagination="getList" />
|
||||||
|
|
||||||
|
<!-- 对话框(添加 / 修改) -->
|
||||||
|
<base-dialog
|
||||||
|
:dialogTitle="title"
|
||||||
|
:dialogVisible="open"
|
||||||
|
@close="cancel"
|
||||||
|
@cancel="cancel"
|
||||||
|
@confirm="submitForm">
|
||||||
|
<DialogForm
|
||||||
|
v-if="open"
|
||||||
|
ref="form"
|
||||||
|
v-model="form"
|
||||||
|
:has-files="false"
|
||||||
|
:rows="rows" />
|
||||||
|
</base-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import moment from 'moment';
|
||||||
|
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
||||||
|
|
||||||
|
// import { getAccessToken } from '@/utils/auth';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'EquipmentLineBind',
|
||||||
|
components: {},
|
||||||
|
mixins: [basicPageMixin],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
basePath: '/base/core-equipment-bind-section',
|
||||||
|
searchBarKeys: ['equipmentName', 'productionLineId'],
|
||||||
|
tableBtn: [
|
||||||
|
this.$auth.hasPermi('base:core-equipment-bind-section:update')
|
||||||
|
? {
|
||||||
|
type: 'edit',
|
||||||
|
btnName: '修改',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
this.$auth.hasPermi('base:core-equipment-bind-section:delete')
|
||||||
|
? {
|
||||||
|
type: 'delete',
|
||||||
|
btnName: '删除',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
].filter((v) => v),
|
||||||
|
tableProps: [
|
||||||
|
{
|
||||||
|
prop: 'createTime',
|
||||||
|
label: '添加时间',
|
||||||
|
fixed: true,
|
||||||
|
width: 180,
|
||||||
|
filter: (val) => moment(val).format('yyyy-MM-DD HH:mm:ss'),
|
||||||
|
},
|
||||||
|
{ prop: 'productionLineName', label: '产线名称' },
|
||||||
|
{ prop: 'workshopSectionName', label: '工段名称' },
|
||||||
|
{ prop: 'equipmentName', label: '设备名称' },
|
||||||
|
{ prop: 'sort', label: '工段中排序' },
|
||||||
|
{
|
||||||
|
prop: 'lineDataType',
|
||||||
|
label: '产线统计类型',
|
||||||
|
filter: (val) =>
|
||||||
|
val != null ? ['无类型', '进片数量统计', '出片数量统计'][val] : '',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prop: 'sectionDataType',
|
||||||
|
label: '工段统计类型',
|
||||||
|
filter: (val) =>
|
||||||
|
val != null ? ['无类型', '进片数量统计', '出片数量统计'][val] : '',
|
||||||
|
},
|
||||||
|
// { prop: 'remark', label: '备注' },
|
||||||
|
],
|
||||||
|
searchBarFormConfig: [
|
||||||
|
{
|
||||||
|
type: 'select',
|
||||||
|
label: '产线',
|
||||||
|
placeholder: '请选择产线',
|
||||||
|
param: 'productionLineId',
|
||||||
|
selectOptions: [],
|
||||||
|
filterable: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'input',
|
||||||
|
label: '设备名',
|
||||||
|
placeholder: '请输入设备名称',
|
||||||
|
param: 'equipmentName',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'button',
|
||||||
|
btnName: '查询',
|
||||||
|
name: 'search',
|
||||||
|
color: 'primary',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'separate',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: this.$auth.hasPermi('base:core-equipment-bind-section:create')
|
||||||
|
? 'button'
|
||||||
|
: '',
|
||||||
|
btnName: '新增',
|
||||||
|
name: 'add',
|
||||||
|
plain: true,
|
||||||
|
color: 'success',
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// type: this.$auth.hasPermi('base:quality-inspection-type:export')
|
||||||
|
// ? 'button'
|
||||||
|
// : '',
|
||||||
|
// btnName: '导出',
|
||||||
|
// name: 'export',
|
||||||
|
// color: 'warning',
|
||||||
|
// },
|
||||||
|
],
|
||||||
|
rows: [
|
||||||
|
[
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
label: '产线',
|
||||||
|
prop: 'productionLineId',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
url: '/base/core-production-line/listAll',
|
||||||
|
bind: { clearable: true, filterable: true },
|
||||||
|
// watch: 'workshopSectionId'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
label: '工段',
|
||||||
|
prop: 'workshopSectionId',
|
||||||
|
depends: 'productionLineId',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
bind: { clearable: true, filterable: true },
|
||||||
|
url: '/base/core-workshop-section/listByParentId',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
label: '设备',
|
||||||
|
prop: 'equipmentId',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
bind: { clearable: true, filterable: true },
|
||||||
|
url: '/base/core-equipment/listAll',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '工段排序',
|
||||||
|
prop: 'sort',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
options: [
|
||||||
|
{ label: '无类型', value: 0 },
|
||||||
|
{ label: '进片数量统计', value: 1 },
|
||||||
|
{ label: '出片数量统计', value: 2 },
|
||||||
|
],
|
||||||
|
label: '产线统计类型',
|
||||||
|
prop: 'lineDataType',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
options: [
|
||||||
|
{ label: '无类型', value: 0 },
|
||||||
|
{ label: '进片数量统计', value: 1 },
|
||||||
|
{ label: '出片数量统计', value: 2 },
|
||||||
|
],
|
||||||
|
label: '工段统计类型',
|
||||||
|
prop: 'sectionDataType',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
],
|
||||||
|
// 是否显示弹出层
|
||||||
|
open: false,
|
||||||
|
// 查询参数
|
||||||
|
queryParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
equipmentName: null,
|
||||||
|
productionLineId: null,
|
||||||
|
},
|
||||||
|
// 表单参数
|
||||||
|
form: {},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.initSearchOptions();
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 初始化查询条件 */
|
||||||
|
async initSearchOptions() {
|
||||||
|
this.http('/base/core-production-line/listAll', 'get').then(
|
||||||
|
({ code, data }) => {
|
||||||
|
if (code == 0) {
|
||||||
|
this.searchBarFormConfig[0].selectOptions = data.map((item) => {
|
||||||
|
return {
|
||||||
|
name: item.name,
|
||||||
|
id: item.id,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
},
|
||||||
|
/** 查询列表 */
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
// 执行查询
|
||||||
|
this.recv(this.queryParams).then(({ code, data }) => {
|
||||||
|
// if (code == 0) {
|
||||||
|
this.list = data.list;
|
||||||
|
this.total = data.total;
|
||||||
|
this.loading = false;
|
||||||
|
// }
|
||||||
|
});
|
||||||
|
// .catch(err => {
|
||||||
|
// this.list = [];
|
||||||
|
// this.total = 0;
|
||||||
|
// this.loading = false;
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
/** 取消按钮 */
|
||||||
|
cancel() {
|
||||||
|
this.open = false;
|
||||||
|
this.reset();
|
||||||
|
},
|
||||||
|
/** 表单重置 */
|
||||||
|
reset() {
|
||||||
|
this.form = {
|
||||||
|
id: undefined,
|
||||||
|
productionLineId: undefined,
|
||||||
|
// 工段
|
||||||
|
workshopSectionId: undefined,
|
||||||
|
// 设备
|
||||||
|
equipmentId: undefined,
|
||||||
|
// 工段排序
|
||||||
|
sort: undefined,
|
||||||
|
// 产线统计类型
|
||||||
|
lineDataType: undefined,
|
||||||
|
// 工段统计类型
|
||||||
|
sectionDataType: undefined,
|
||||||
|
};
|
||||||
|
this.resetForm('form');
|
||||||
|
},
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
handleQuery() {
|
||||||
|
this.queryParams.pageNo = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
/** 重置按钮操作 */
|
||||||
|
resetQuery() {
|
||||||
|
this.resetForm('queryForm');
|
||||||
|
this.handleQuery();
|
||||||
|
},
|
||||||
|
/** 新增按钮操作 */
|
||||||
|
handleAdd() {
|
||||||
|
this.reset();
|
||||||
|
this.open = true;
|
||||||
|
this.title = '添加设备工段绑定';
|
||||||
|
},
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
handleUpdate(row) {
|
||||||
|
this.reset();
|
||||||
|
const id = row.id;
|
||||||
|
this.info({ id }).then(({ code, data }) => {
|
||||||
|
this.form = data;
|
||||||
|
this.open = true;
|
||||||
|
this.title = '修改设备工段绑定';
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 提交按钮 */
|
||||||
|
submitForm() {
|
||||||
|
this.$refs['form'].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 修改的提交
|
||||||
|
if (this.form.id != null) {
|
||||||
|
this.put(this.form).then(({ code, data }) => {
|
||||||
|
this.$modal.msgSuccess('修改成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.post(this.form).then(({ code, data }) => {
|
||||||
|
this.$modal.msgSuccess('修改成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 删除按钮操作 */
|
||||||
|
handleDelete(row) {
|
||||||
|
const id = row.id;
|
||||||
|
this.$modal
|
||||||
|
.confirm('是否确认删除绑定"' + row.name + '"?')
|
||||||
|
.then(function () {
|
||||||
|
return deleteEquipmentType(id);
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.getList();
|
||||||
|
this.$modal.msgSuccess('删除成功');
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
/** 导出按钮操作 */
|
||||||
|
handleExport() {
|
||||||
|
// 处理查询参数
|
||||||
|
let params = { ...this.queryParams };
|
||||||
|
params.pageNo = undefined;
|
||||||
|
params.pageSize = undefined;
|
||||||
|
this.$modal
|
||||||
|
.confirm('是否确认导出所有设备工段绑定?')
|
||||||
|
.then(() => {
|
||||||
|
this.exportLoading = true;
|
||||||
|
// return exportEquipmentTypeExcel(params);
|
||||||
|
})
|
||||||
|
.then((response) => {
|
||||||
|
this.$download.excel(response, '设备工段绑定.xls');
|
||||||
|
this.exportLoading = false;
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
@ -70,13 +70,13 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchBarKeys: ['name'],
|
searchBarKeys: ['name'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:equipment-type:update')
|
this.$auth.hasPermi('base:core-equipment-type:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-type:delete')
|
this.$auth.hasPermi('base:core-equipment-type:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -112,7 +112,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:equipment-type:create')
|
type: this.$auth.hasPermi('base:core-equipment-type:create')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
@ -237,25 +237,6 @@ export default {
|
|||||||
const id = row.id;
|
const id = row.id;
|
||||||
getEquipmentType(id).then((response) => {
|
getEquipmentType(id).then((response) => {
|
||||||
this.form = response.data;
|
this.form = response.data;
|
||||||
// this.form = {
|
|
||||||
// code: 'SBLX20230925184444000041',
|
|
||||||
// name: '测试131',
|
|
||||||
// remark: '测试可删除',
|
|
||||||
// id: '1706258479729336322',
|
|
||||||
// files: [
|
|
||||||
// { fileName: '1.png', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: '1.asdfaslkjfkasdf.png', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: '2.txt', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: '1.rar', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: '1.kkk', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: 'test.file', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: '222', fileUrl: '', fileType: 2 },
|
|
||||||
// { fileName: 'g', fileUrl: '', fileType: 2 },
|
|
||||||
// ],
|
|
||||||
// createTime: 1695638697000,
|
|
||||||
// parentId: '1701869972319584257',
|
|
||||||
// };
|
|
||||||
// debugger;
|
|
||||||
this.open = true;
|
this.open = true;
|
||||||
this.title = '修改设备类型';
|
this.title = '修改设备类型';
|
||||||
});
|
});
|
@ -1,214 +0,0 @@
|
|||||||
<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="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="queryParams.equipmentId" placeholder="请输入设备id" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-attr:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-attr:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="ID" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备id" align="center" prop="equipmentId" />
|
|
||||||
<el-table-column label="属性名称" align="center" prop="name" />
|
|
||||||
<el-table-column label="属性值" align="center" prop="value" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-attr:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-attr:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="form.equipmentId" placeholder="请输入设备id" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="属性名称" prop="name">
|
|
||||||
<el-input v-model="form.name" placeholder="请输入属性名称" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="属性值" prop="value">
|
|
||||||
<el-input v-model="form.value" 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>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { createEquipmentAttr, updateEquipmentAttr, deleteEquipmentAttr, getEquipmentAttr, getEquipmentAttrPage, exportEquipmentAttrExcel } from "@/api/base/equipmentAttr";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentAttr",
|
|
||||||
components: {
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 设备属性列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentId: null,
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
equipmentId: [{ required: true, message: "设备id不能为空", trigger: "blur" }],
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentAttrPage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentId: undefined,
|
|
||||||
name: undefined,
|
|
||||||
value: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加设备属性";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentAttr(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改设备属性";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentAttr(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentAttr(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除设备属性编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentAttr(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有设备属性数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentAttrExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '设备属性.xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,225 +0,0 @@
|
|||||||
<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="设备ID" prop="equipmentId">
|
|
||||||
<el-input v-model="queryParams.equipmentId" placeholder="请输入设备ID" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-file:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-file:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="id" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备ID" align="center" prop="equipmentId" />
|
|
||||||
<el-table-column label="文件类型 1.图片 2.设备资料" align="center" prop="fileType">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<dict-tag :type="DICT_TYPE.EQU_FILE_TYPE" :value="scope.row.fileType" />
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="原始文件名" align="center" prop="fileName" />
|
|
||||||
<el-table-column label="文件url" align="center" prop="fileUrl" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-file:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-file:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备ID" prop="equipmentId">
|
|
||||||
<el-input v-model="form.equipmentId" placeholder="请输入设备ID" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="文件类型 1.图片 2.设备资料" prop="fileType">
|
|
||||||
<el-select v-model="form.fileType" placeholder="请选择文件类型 1.图片 2.设备资料">
|
|
||||||
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.EQU_FILE_TYPE)"
|
|
||||||
:key="dict.value" :label="dict.label" :value="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="原始文件名" prop="fileName">
|
|
||||||
<el-input v-model="form.fileName" placeholder="请输入原始文件名" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="文件url" prop="fileUrl">
|
|
||||||
<el-input v-model="form.fileUrl" placeholder="请输入文件url" />
|
|
||||||
</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 { createEquipmentFile, updateEquipmentFile, deleteEquipmentFile, getEquipmentFile, getEquipmentFilePage, exportEquipmentFileExcel } from "@/api/base/equipmentFile";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentFile",
|
|
||||||
components: {
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 设备文件对应列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentId: null,
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentFilePage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentId: undefined,
|
|
||||||
fileType: undefined,
|
|
||||||
fileName: undefined,
|
|
||||||
fileUrl: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加设备文件对应";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentFile(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改设备文件对应";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentFile(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentFile(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除设备文件对应编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentFile(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有设备文件对应数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentFileExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '设备文件对应.xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,277 +0,0 @@
|
|||||||
<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="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="queryParams.equipmentId" placeholder="请输入设备id" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="queryParams.equipmentName" placeholder="请输入设备名称" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="进入设备的数量" prop="inQuantity">
|
|
||||||
<el-input v-model="queryParams.inQuantity" placeholder="请输入进入设备的数量" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="离开设备的数量,若plc只记录一个生产数量,也写入该字段" prop="outQuantity">
|
|
||||||
<el-input v-model="queryParams.outQuantity" placeholder="请输入离开设备的数量,若plc只记录一个生产数量,也写入该字段" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="正常生产量" prop="okQuantity">
|
|
||||||
<el-input v-model="queryParams.okQuantity" placeholder="请输入正常生产量" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备上报的报废数量" prop="nokQuantity">
|
|
||||||
<el-input v-model="queryParams.nokQuantity" placeholder="请输入设备上报的报废数量" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="生产数量的记录时间" prop="recordTime">
|
|
||||||
<el-date-picker v-model="queryParams.recordTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="创建时间" prop="createTime">
|
|
||||||
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-quantity-log:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-quantity-log:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="id" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备id" align="center" prop="equipmentId" />
|
|
||||||
<el-table-column label="设备名称" align="center" prop="equipmentName" />
|
|
||||||
<el-table-column label="进入设备的数量" align="center" prop="inQuantity" />
|
|
||||||
<el-table-column label="离开设备的数量,若plc只记录一个生产数量,也写入该字段" align="center" prop="outQuantity" />
|
|
||||||
<el-table-column label="正常生产量" align="center" prop="okQuantity" />
|
|
||||||
<el-table-column label="设备上报的报废数量" align="center" prop="nokQuantity" />
|
|
||||||
<el-table-column label="生产数量的记录时间" align="center" prop="recordTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.recordTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="版本号" align="center" prop="version" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-quantity-log:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-quantity-log:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="form.equipmentId" placeholder="请输入设备id" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="form.equipmentName" placeholder="请输入设备名称" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="进入设备的数量" prop="inQuantity">
|
|
||||||
<el-input v-model="form.inQuantity" placeholder="请输入进入设备的数量" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="离开设备的数量,若plc只记录一个生产数量,也写入该字段" prop="outQuantity">
|
|
||||||
<el-input v-model="form.outQuantity" placeholder="请输入离开设备的数量,若plc只记录一个生产数量,也写入该字段" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="正常生产量" prop="okQuantity">
|
|
||||||
<el-input v-model="form.okQuantity" placeholder="请输入正常生产量" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备上报的报废数量" prop="nokQuantity">
|
|
||||||
<el-input v-model="form.nokQuantity" placeholder="请输入设备上报的报废数量" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="生产数量的记录时间" prop="recordTime">
|
|
||||||
<el-date-picker clearable v-model="form.recordTime" type="date" value-format="timestamp" placeholder="选择生产数量的记录时间" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="form.version" 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>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { createEquipmentQuantityLog, updateEquipmentQuantityLog, deleteEquipmentQuantityLog, getEquipmentQuantityLog, getEquipmentQuantityLogPage, exportEquipmentQuantityLogExcel } from "@/api/base/equipmentQuantityLog";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentQuantityLog",
|
|
||||||
components: {
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 后端用 设备生产数量统计表(按一定时间段写入)列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentId: null,
|
|
||||||
equipmentName: null,
|
|
||||||
inQuantity: null,
|
|
||||||
outQuantity: null,
|
|
||||||
okQuantity: null,
|
|
||||||
nokQuantity: null,
|
|
||||||
recordTime: [],
|
|
||||||
version: null,
|
|
||||||
createTime: [],
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
equipmentName: [{ required: true, message: "设备名称不能为空", trigger: "blur" }],
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentQuantityLogPage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentId: undefined,
|
|
||||||
equipmentName: undefined,
|
|
||||||
inQuantity: undefined,
|
|
||||||
outQuantity: undefined,
|
|
||||||
okQuantity: undefined,
|
|
||||||
nokQuantity: undefined,
|
|
||||||
recordTime: undefined,
|
|
||||||
version: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加后端用 设备生产数量统计表(按一定时间段写入)";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentQuantityLog(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改后端用 设备生产数量统计表(按一定时间段写入)";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentQuantityLog(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentQuantityLog(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除后端用 设备生产数量统计表(按一定时间段写入)编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentQuantityLog(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有后端用 设备生产数量统计表(按一定时间段写入)数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentQuantityLogExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '后端用 设备生产数量统计表(按一定时间段写入).xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,276 +0,0 @@
|
|||||||
<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="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="queryParams.equipmentId" placeholder="请输入设备id" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="queryParams.equipmentName" placeholder="请输入设备名称" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="进入设备的基板数量" prop="inQuantity">
|
|
||||||
<el-input v-model="queryParams.inQuantity" placeholder="请输入进入设备的基板数量" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="离开设备的基板数量,若plc只记录一个生产数量,也写入该字段" prop="outQuantity">
|
|
||||||
<el-input v-model="queryParams.outQuantity" placeholder="请输入离开设备的基板数量,若plc只记录一个生产数量,也写入该字段" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="正常生产量" prop="okQuantity">
|
|
||||||
<el-input v-model="queryParams.okQuantity" placeholder="请输入正常生产量" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备上报的报废数量" prop="nokQuantity">
|
|
||||||
<el-input v-model="queryParams.nokQuantity" placeholder="请输入设备上报的报废数量" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="记录时间" prop="recordTime">
|
|
||||||
<el-date-picker v-model="queryParams.recordTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="创建时间" prop="createTime">
|
|
||||||
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-quantity-realtime:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-quantity-realtime:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="id" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备id" align="center" prop="equipmentId" />
|
|
||||||
<el-table-column label="设备名称" align="center" prop="equipmentName" />
|
|
||||||
<el-table-column label="进入设备的基板数量" align="center" prop="inQuantity" />
|
|
||||||
<el-table-column label="离开设备的基板数量,若plc只记录一个生产数量,也写入该字段" align="center" prop="outQuantity" />
|
|
||||||
<el-table-column label="正常生产量" align="center" prop="okQuantity" />
|
|
||||||
<el-table-column label="设备上报的报废数量" align="center" prop="nokQuantity" />
|
|
||||||
<el-table-column label="记录时间" align="center" prop="recordTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.recordTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="版本号" align="center" prop="version" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-quantity-realtime:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-quantity-realtime:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="form.equipmentId" placeholder="请输入设备id" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="form.equipmentName" placeholder="请输入设备名称" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="进入设备的基板数量" prop="inQuantity">
|
|
||||||
<el-input v-model="form.inQuantity" placeholder="请输入进入设备的基板数量" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="离开设备的基板数量,若plc只记录一个生产数量,也写入该字段" prop="outQuantity">
|
|
||||||
<el-input v-model="form.outQuantity" placeholder="请输入离开设备的基板数量,若plc只记录一个生产数量,也写入该字段" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="正常生产量" prop="okQuantity">
|
|
||||||
<el-input v-model="form.okQuantity" placeholder="请输入正常生产量" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备上报的报废数量" prop="nokQuantity">
|
|
||||||
<el-input v-model="form.nokQuantity" placeholder="请输入设备上报的报废数量" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="记录时间" prop="recordTime">
|
|
||||||
<el-date-picker clearable v-model="form.recordTime" type="date" value-format="timestamp" placeholder="选择记录时间" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="form.version" 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>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { createEquipmentQuantityRealtime, updateEquipmentQuantityRealtime, deleteEquipmentQuantityRealtime, getEquipmentQuantityRealtime, getEquipmentQuantityRealtimePage, exportEquipmentQuantityRealtimeExcel } from "@/api/base/equipmentQuantityRealtime";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentQuantityRealtime",
|
|
||||||
components: {
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 后端用 设备生产数量实时列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentId: null,
|
|
||||||
equipmentName: null,
|
|
||||||
inQuantity: null,
|
|
||||||
outQuantity: null,
|
|
||||||
okQuantity: null,
|
|
||||||
nokQuantity: null,
|
|
||||||
recordTime: [],
|
|
||||||
version: null,
|
|
||||||
createTime: [],
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentQuantityRealtimePage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentId: undefined,
|
|
||||||
equipmentName: undefined,
|
|
||||||
inQuantity: undefined,
|
|
||||||
outQuantity: undefined,
|
|
||||||
okQuantity: undefined,
|
|
||||||
nokQuantity: undefined,
|
|
||||||
recordTime: undefined,
|
|
||||||
version: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加后端用 设备生产数量实时";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentQuantityRealtime(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改后端用 设备生产数量实时";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentQuantityRealtime(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentQuantityRealtime(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除后端用 设备生产数量实时编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentQuantityRealtime(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有后端用 设备生产数量实时数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentQuantityRealtimeExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '后端用 设备生产数量实时.xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,289 +0,0 @@
|
|||||||
<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="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="queryParams.equipmentId" placeholder="请输入设备id" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="queryParams.equipmentName" placeholder="请输入设备名称" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="plc id" prop="plcId">
|
|
||||||
<el-input v-model="queryParams.plcId" placeholder="请输入plc id" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="plc" prop="plc">
|
|
||||||
<el-input v-model="queryParams.plc" placeholder="请输入plc" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="状态,0正常 1计划停机 2故障" prop="status">
|
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择状态,0正常 1计划停机 2故障" clearable size="small">
|
|
||||||
<el-option label="请选择字典生成" value="" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="记录时间" prop="recordTime">
|
|
||||||
<el-date-picker v-model="queryParams.recordTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="持续时间(分钟),状态变动时记录并更新" prop="duration">
|
|
||||||
<el-input v-model="queryParams.duration" placeholder="请输入持续时间(分钟),状态变动时记录并更新" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="备注" prop="remark">
|
|
||||||
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="创建时间" prop="createTime">
|
|
||||||
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-status-log:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-status-log:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="id" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备id" align="center" prop="equipmentId" />
|
|
||||||
<el-table-column label="设备名称" align="center" prop="equipmentName" />
|
|
||||||
<el-table-column label="plc id" align="center" prop="plcId" />
|
|
||||||
<el-table-column label="plc" align="center" prop="plc" />
|
|
||||||
<el-table-column label="状态,0正常 1计划停机 2故障" align="center" prop="status" />
|
|
||||||
<el-table-column label="记录时间" align="center" prop="recordTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.recordTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="持续时间(分钟),状态变动时记录并更新" align="center" prop="duration" />
|
|
||||||
<el-table-column label="备注" align="center" prop="remark" />
|
|
||||||
<el-table-column label="版本号" align="center" prop="version" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-status-log:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-status-log:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="form.equipmentId" placeholder="请输入设备id" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="form.equipmentName" placeholder="请输入设备名称" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="plc id" prop="plcId">
|
|
||||||
<el-input v-model="form.plcId" placeholder="请输入plc id" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="plc" prop="plc">
|
|
||||||
<el-input v-model="form.plc" placeholder="请输入plc" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="状态,0正常 1计划停机 2故障" prop="status">
|
|
||||||
<el-radio-group v-model="form.status">
|
|
||||||
<el-radio label="1">请选择字典生成</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="记录时间" prop="recordTime">
|
|
||||||
<el-date-picker clearable v-model="form.recordTime" type="date" value-format="timestamp" placeholder="选择记录时间" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="持续时间(分钟),状态变动时记录并更新" prop="duration">
|
|
||||||
<el-input v-model="form.duration" 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="version">
|
|
||||||
<el-input v-model="form.version" 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>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { createEquipmentStatusLog, updateEquipmentStatusLog, deleteEquipmentStatusLog, getEquipmentStatusLog, getEquipmentStatusLogPage, exportEquipmentStatusLogExcel } from "@/api/base/equipmentStatusLog";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentStatusLog",
|
|
||||||
components: {
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 后端用 设备工作状态列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentId: null,
|
|
||||||
equipmentName: null,
|
|
||||||
plcId: null,
|
|
||||||
plc: null,
|
|
||||||
status: null,
|
|
||||||
recordTime: [],
|
|
||||||
duration: null,
|
|
||||||
remark: null,
|
|
||||||
version: null,
|
|
||||||
createTime: [],
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentStatusLogPage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentId: undefined,
|
|
||||||
equipmentName: undefined,
|
|
||||||
plcId: undefined,
|
|
||||||
plc: undefined,
|
|
||||||
status: undefined,
|
|
||||||
recordTime: undefined,
|
|
||||||
duration: undefined,
|
|
||||||
remark: undefined,
|
|
||||||
version: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加后端用 设备工作状态";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentStatusLog(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改后端用 设备工作状态";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentStatusLog(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentStatusLog(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除后端用 设备工作状态编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentStatusLog(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有后端用 设备工作状态数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentStatusLogExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '后端用 设备工作状态.xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,296 +0,0 @@
|
|||||||
<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="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="queryParams.equipmentId" placeholder="请输入设备id" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="queryParams.equipmentName" placeholder="请输入设备名称" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="状态,0正常 1计划停机 2故障" prop="status">
|
|
||||||
<el-select v-model="queryParams.status" placeholder="请选择状态,0正常 1计划停机 2故障" clearable size="small">
|
|
||||||
<el-option label="请选择字典生成" value="" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否运行中" prop="run">
|
|
||||||
<el-select v-model="queryParams.run" placeholder="请选择是否运行中" clearable size="small">
|
|
||||||
<el-option label="请选择字典生成" value="" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否发生运行错误" prop="error">
|
|
||||||
<el-select v-model="queryParams.error" placeholder="请选择是否发生运行错误" clearable size="small">
|
|
||||||
<el-option label="请选择字典生成" value="" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="备注" prop="remark">
|
|
||||||
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="记录时间" prop="recordTime">
|
|
||||||
<el-date-picker v-model="queryParams.recordTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="创建时间" prop="createTime">
|
|
||||||
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-status-realtime:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-status-realtime:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="id" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备id" align="center" prop="equipmentId" />
|
|
||||||
<el-table-column label="设备名称" align="center" prop="equipmentName" />
|
|
||||||
<el-table-column label="状态,0正常 1计划停机 2故障" align="center" prop="status" />
|
|
||||||
<el-table-column label="是否运行中" align="center" prop="run" />
|
|
||||||
<el-table-column label="是否发生运行错误" align="center" prop="error" />
|
|
||||||
<el-table-column label="描述" align="center" prop="description" />
|
|
||||||
<el-table-column label="备注" align="center" prop="remark" />
|
|
||||||
<el-table-column label="记录时间" align="center" prop="recordTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.recordTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="版本号" align="center" prop="version" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-status-realtime:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-status-realtime:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备id" prop="equipmentId">
|
|
||||||
<el-input v-model="form.equipmentId" placeholder="请输入设备id" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="设备名称" prop="equipmentName">
|
|
||||||
<el-input v-model="form.equipmentName" placeholder="请输入设备名称" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="状态,0正常 1计划停机 2故障" prop="status">
|
|
||||||
<el-radio-group v-model="form.status">
|
|
||||||
<el-radio label="1">请选择字典生成</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否运行中" prop="run">
|
|
||||||
<el-radio-group v-model="form.run">
|
|
||||||
<el-radio label="1">请选择字典生成</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否发生运行错误" prop="error">
|
|
||||||
<el-radio-group v-model="form.error">
|
|
||||||
<el-radio label="1">请选择字典生成</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="描述">
|
|
||||||
<editor v-model="form.description" :min-height="192"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="备注" prop="remark">
|
|
||||||
<el-input v-model="form.remark" placeholder="请输入备注" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="记录时间" prop="recordTime">
|
|
||||||
<el-date-picker clearable v-model="form.recordTime" type="date" value-format="timestamp" placeholder="选择记录时间" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="版本号" prop="version">
|
|
||||||
<el-input v-model="form.version" 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>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { createEquipmentStatusRealtime, updateEquipmentStatusRealtime, deleteEquipmentStatusRealtime, getEquipmentStatusRealtime, getEquipmentStatusRealtimePage, exportEquipmentStatusRealtimeExcel } from "@/api/base/equipmentStatusRealtime";
|
|
||||||
import Editor from '@/components/Editor';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentStatusRealtime",
|
|
||||||
components: {
|
|
||||||
Editor
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 后端用 设备状态实时列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentId: null,
|
|
||||||
equipmentName: null,
|
|
||||||
status: null,
|
|
||||||
run: null,
|
|
||||||
error: null,
|
|
||||||
description: null,
|
|
||||||
remark: null,
|
|
||||||
recordTime: [],
|
|
||||||
version: null,
|
|
||||||
createTime: [],
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentStatusRealtimePage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentId: undefined,
|
|
||||||
equipmentName: undefined,
|
|
||||||
status: undefined,
|
|
||||||
run: undefined,
|
|
||||||
error: undefined,
|
|
||||||
description: undefined,
|
|
||||||
remark: undefined,
|
|
||||||
recordTime: undefined,
|
|
||||||
version: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加后端用 设备状态实时";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentStatusRealtime(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改后端用 设备状态实时";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentStatusRealtime(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentStatusRealtime(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除后端用 设备状态实时编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentStatusRealtime(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有后端用 设备状态实时数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentStatusRealtimeExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '后端用 设备状态实时.xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -1,229 +0,0 @@
|
|||||||
<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="设备类型ID" prop="equipmentTypeId">
|
|
||||||
<el-input v-model="queryParams.equipmentTypeId" placeholder="请输入设备类型ID" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="原始名称" prop="fileName">
|
|
||||||
<el-input v-model="queryParams.fileName" placeholder="请输入原始名称" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="下载地址" prop="fileUrl">
|
|
||||||
<el-input v-model="queryParams.fileUrl" placeholder="请输入下载地址" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="创建时间" prop="createTime">
|
|
||||||
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
|
||||||
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" @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="['base:equipment-type-file:create']">新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
|
||||||
v-hasPermi="['base:equipment-type-file:export']">导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<el-table v-loading="loading" :data="list">
|
|
||||||
<el-table-column label="ID" align="center" prop="id" />
|
|
||||||
<el-table-column label="设备类型ID" align="center" prop="equipmentTypeId" />
|
|
||||||
<el-table-column label="原始名称" align="center" prop="fileName" />
|
|
||||||
<el-table-column label="下载地址" align="center" prop="fileUrl" />
|
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
||||||
<template v-slot="scope">
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-type-file:update']">修改</el-button>
|
|
||||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['base:equipment-type-file:delete']">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"/>
|
|
||||||
|
|
||||||
<!-- 对话框(添加 / 修改) -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
<el-form-item label="设备类型ID" prop="equipmentTypeId">
|
|
||||||
<el-input v-model="form.equipmentTypeId" placeholder="请输入设备类型ID" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="原始名称" prop="fileName">
|
|
||||||
<el-input v-model="form.fileName" placeholder="请输入原始名称" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="下载地址" prop="fileUrl">
|
|
||||||
<el-input v-model="form.fileUrl" 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>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { createEquipmentTypeFile, updateEquipmentTypeFile, deleteEquipmentTypeFile, getEquipmentTypeFile, getEquipmentTypeFilePage, exportEquipmentTypeFileExcel } from "@/api/base/equipmentTypeFile";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "EquipmentTypeFile",
|
|
||||||
components: {
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
// 遮罩层
|
|
||||||
loading: true,
|
|
||||||
// 导出遮罩层
|
|
||||||
exportLoading: false,
|
|
||||||
// 显示搜索条件
|
|
||||||
showSearch: true,
|
|
||||||
// 总条数
|
|
||||||
total: 0,
|
|
||||||
// 设备类型文件关联列表
|
|
||||||
list: [],
|
|
||||||
// 弹出层标题
|
|
||||||
title: "",
|
|
||||||
// 是否显示弹出层
|
|
||||||
open: false,
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
equipmentTypeId: null,
|
|
||||||
fileName: null,
|
|
||||||
fileUrl: null,
|
|
||||||
createTime: [],
|
|
||||||
},
|
|
||||||
// 表单参数
|
|
||||||
form: {},
|
|
||||||
// 表单校验
|
|
||||||
rules: {
|
|
||||||
equipmentTypeId: [{ required: true, message: "设备类型ID不能为空", trigger: "blur" }],
|
|
||||||
fileName: [{ required: true, message: "原始名称不能为空", trigger: "blur" }],
|
|
||||||
fileUrl: [{ required: true, message: "下载地址不能为空", trigger: "blur" }],
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/** 查询列表 */
|
|
||||||
getList() {
|
|
||||||
this.loading = true;
|
|
||||||
// 执行查询
|
|
||||||
getEquipmentTypeFilePage(this.queryParams).then(response => {
|
|
||||||
this.list = response.data.list;
|
|
||||||
this.total = response.data.total;
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 取消按钮 */
|
|
||||||
cancel() {
|
|
||||||
this.open = false;
|
|
||||||
this.reset();
|
|
||||||
},
|
|
||||||
/** 表单重置 */
|
|
||||||
reset() {
|
|
||||||
this.form = {
|
|
||||||
id: undefined,
|
|
||||||
equipmentTypeId: undefined,
|
|
||||||
fileName: undefined,
|
|
||||||
fileUrl: undefined,
|
|
||||||
};
|
|
||||||
this.resetForm("form");
|
|
||||||
},
|
|
||||||
/** 搜索按钮操作 */
|
|
||||||
handleQuery() {
|
|
||||||
this.queryParams.pageNo = 1;
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
/** 重置按钮操作 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm("queryForm");
|
|
||||||
this.handleQuery();
|
|
||||||
},
|
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset();
|
|
||||||
this.open = true;
|
|
||||||
this.title = "添加设备类型文件关联";
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset();
|
|
||||||
const id = row.id;
|
|
||||||
getEquipmentTypeFile(id).then(response => {
|
|
||||||
this.form = response.data;
|
|
||||||
this.open = true;
|
|
||||||
this.title = "修改设备类型文件关联";
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (!valid) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 修改的提交
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateEquipmentTypeFile(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 添加的提交
|
|
||||||
createEquipmentTypeFile(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("新增成功");
|
|
||||||
this.open = false;
|
|
||||||
this.getList();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const id = row.id;
|
|
||||||
this.$modal.confirm('是否确认删除设备类型文件关联编号为"' + id + '"的数据项?').then(function() {
|
|
||||||
return deleteEquipmentTypeFile(id);
|
|
||||||
}).then(() => {
|
|
||||||
this.getList();
|
|
||||||
this.$modal.msgSuccess("删除成功");
|
|
||||||
}).catch(() => {});
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
// 处理查询参数
|
|
||||||
let params = {...this.queryParams};
|
|
||||||
params.pageNo = undefined;
|
|
||||||
params.pageSize = undefined;
|
|
||||||
this.$modal.confirm('是否确认导出所有设备类型文件关联数据项?').then(() => {
|
|
||||||
this.exportLoading = true;
|
|
||||||
return exportEquipmentTypeFileExcel(params);
|
|
||||||
}).then(response => {
|
|
||||||
this.$download.excel(response, '设备类型文件关联.xls');
|
|
||||||
this.exportLoading = false;
|
|
||||||
}).catch(() => {});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
Before Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 45 KiB |
@ -21,7 +21,7 @@
|
|||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
v-model="dataForm.code"
|
v-model="dataForm.code"
|
||||||
@change="$emit('update', dataForm)"
|
@change="$emit('update', dataForm)"
|
||||||
placeholder="请输入工段排序" />
|
placeholder="请输入报警编码" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!--
|
<!--
|
||||||
<el-form-item
|
<el-form-item
|
@ -58,7 +58,7 @@
|
|||||||
queryParams: { id: alarmForm.id },
|
queryParams: { id: alarmForm.id },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '属性列表',
|
name: '报警明细',
|
||||||
key: 'attrs',
|
key: 'attrs',
|
||||||
props: drawerListProps,
|
props: drawerListProps,
|
||||||
url: '/base/equipment-group-alarm/page',
|
url: '/base/equipment-group-alarm/page',
|
||||||
@ -72,13 +72,13 @@
|
|||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
},
|
},
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:equipment-group:update')
|
this.$auth.hasPermi('equipment:alarm-group:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-group:delete')
|
this.$auth.hasPermi('equipment:alarm-group:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -119,19 +119,19 @@ export default {
|
|||||||
editMode: '',
|
editMode: '',
|
||||||
searchBarKeys: ['name', 'code'],
|
searchBarKeys: ['name', 'code'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:equipment-group:update')
|
this.$auth.hasPermi('equipment:alarm-group:update')
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '查看报警',
|
btnName: '查看报警',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-group:update')
|
this.$auth.hasPermi('equipment:alarm-group:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-group:delete')
|
this.$auth.hasPermi('equipment:alarm-group:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -193,8 +193,8 @@ export default {
|
|||||||
label: '设备分组编码',
|
label: '设备分组编码',
|
||||||
prop: 'code',
|
prop: 'code',
|
||||||
// url: '/base/core-equipment/getCode',
|
// url: '/base/core-equipment/getCode',
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
],
|
],
|
||||||
drawerListProps: [
|
drawerListProps: [
|
||||||
{
|
{
|
||||||
@ -250,7 +250,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:equipment-group:create')
|
type: this.$auth.hasPermi('equipment:alarm-group:create')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
@ -259,7 +259,7 @@ export default {
|
|||||||
color: 'success',
|
color: 'success',
|
||||||
},
|
},
|
||||||
// {
|
// {
|
||||||
// type: this.$auth.hasPermi('base:equipment-group:export') ? 'button' : '',
|
// type: this.$auth.hasPermi('equipment:alarm-group:export') ? 'button' : '',
|
||||||
// btnName: '导出',
|
// btnName: '导出',
|
||||||
// name: 'export',
|
// name: 'export',
|
||||||
// color: 'warning',
|
// color: 'warning',
|
||||||
@ -375,7 +375,7 @@ export default {
|
|||||||
handleAdd() {
|
handleAdd() {
|
||||||
this.reset();
|
this.reset();
|
||||||
this.open = true;
|
this.open = true;
|
||||||
this.title = '添加设备分组(用于同类型不同厂家的设备区分)';
|
this.title = '添加设备分组';
|
||||||
},
|
},
|
||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
handleUpdate(row) {
|
handleUpdate(row) {
|
||||||
@ -384,7 +384,7 @@ export default {
|
|||||||
getEquipmentGroup(id).then((response) => {
|
getEquipmentGroup(id).then((response) => {
|
||||||
this.form = response.data;
|
this.form = response.data;
|
||||||
this.open = true;
|
this.open = true;
|
||||||
this.title = '修改设备分组(用于同类型不同厂家的设备区分)';
|
this.title = '修改设备分组';
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
@ -445,18 +445,13 @@ export default {
|
|||||||
params.pageNo = undefined;
|
params.pageNo = undefined;
|
||||||
params.pageSize = undefined;
|
params.pageSize = undefined;
|
||||||
this.$modal
|
this.$modal
|
||||||
.confirm(
|
.confirm('是否确认导出所有设备分组数据项?')
|
||||||
'是否确认导出所有设备分组(用于同类型不同厂家的设备区分)数据项?'
|
|
||||||
)
|
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.exportLoading = true;
|
this.exportLoading = true;
|
||||||
return exportEquipmentGroupExcel(params);
|
return exportEquipmentGroupExcel(params);
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
this.$download.excel(
|
this.$download.excel(response, '设备分组.xls');
|
||||||
response,
|
|
||||||
'设备分组(用于同类型不同厂家的设备区分).xls'
|
|
||||||
);
|
|
||||||
this.exportLoading = false;
|
this.exportLoading = false;
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
@ -118,19 +118,19 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchBarKeys: ['groupId', 'equipmentName'],
|
searchBarKeys: ['groupId', 'equipmentName'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:equipment-bind-group:update')
|
this.$auth.hasPermi('equipment:bind-group:update')
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '查看报警',
|
btnName: '查看报警',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-bind-group:update')
|
this.$auth.hasPermi('equipment:bind-group:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:equipment-bind-group:delete')
|
this.$auth.hasPermi('equipment:bind-group:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -199,7 +199,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:equipment-bind-group:create')
|
type: this.$auth.hasPermi('equipment:bind-group:create')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
@ -0,0 +1,29 @@
|
|||||||
|
<!--
|
||||||
|
filename: CollectionConfig.vue
|
||||||
|
author: liubin
|
||||||
|
date: 2023-10-30 10:09:03
|
||||||
|
description:
|
||||||
|
-->
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="equipment-collection-config">
|
||||||
|
collection config
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "EquipmentCollectionConfig",
|
||||||
|
components: {},
|
||||||
|
props: {},
|
||||||
|
data() {
|
||||||
|
return {}
|
||||||
|
},
|
||||||
|
computed: {},
|
||||||
|
methods: {},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
|
||||||
|
</style>
|
385
src/views/equipment/base/config/DataCollection/TableConfig.vue
Normal file
@ -0,0 +1,385 @@
|
|||||||
|
<!--
|
||||||
|
filename: TableConfig.vue
|
||||||
|
author: liubin
|
||||||
|
date: 2023-10-30 10:09:03
|
||||||
|
description:
|
||||||
|
-->
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<!-- 搜索工作栏 -->
|
||||||
|
<SearchBar
|
||||||
|
:formConfigs="searchBarFormConfig"
|
||||||
|
ref="search-bar"
|
||||||
|
@headBtnClick="handleSearchBarBtnClick" />
|
||||||
|
|
||||||
|
<!-- 列表 -->
|
||||||
|
<base-table
|
||||||
|
:table-props="tableProps"
|
||||||
|
:page="queryParams.pageNo"
|
||||||
|
:limit="queryParams.pageSize"
|
||||||
|
:table-data="list"
|
||||||
|
ref="pageTable"
|
||||||
|
@emitFun="handleEmitFun">
|
||||||
|
<method-btn
|
||||||
|
v-if="tableBtn.length"
|
||||||
|
slot="handleBtn"
|
||||||
|
label="操作"
|
||||||
|
:method-list="tableBtn"
|
||||||
|
@clickBtn="handleTableBtnClick" />
|
||||||
|
</base-table>
|
||||||
|
|
||||||
|
<!-- 分页组件 -->
|
||||||
|
<pagination
|
||||||
|
v-show="total > 0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="queryParams.pageNo"
|
||||||
|
:limit.sync="queryParams.pageSize"
|
||||||
|
@pagination="getList" />
|
||||||
|
|
||||||
|
<!-- 对话框(添加 / 修改) -->
|
||||||
|
<base-dialog
|
||||||
|
:dialogTitle="title"
|
||||||
|
:dialogVisible="open"
|
||||||
|
width="700px"
|
||||||
|
@close="cancel"
|
||||||
|
@cancel="cancel"
|
||||||
|
@confirm="submitForm">
|
||||||
|
<DialogForm v-if="open" ref="form" v-model="form" :rows="rows" />
|
||||||
|
</base-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
createEquipmentPlc,
|
||||||
|
updateEquipmentPlc,
|
||||||
|
deleteEquipmentPlc,
|
||||||
|
getEquipmentPlc,
|
||||||
|
getEquipmentPlcPage,
|
||||||
|
exportEquipmentPlcExcel,
|
||||||
|
} from '@/api/base/equipmentPlc';
|
||||||
|
import moment from 'moment';
|
||||||
|
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
||||||
|
|
||||||
|
const switchBtn = {
|
||||||
|
name: 'SwitchBtn',
|
||||||
|
props: ['injectData'],
|
||||||
|
data() {
|
||||||
|
return {};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
active() {
|
||||||
|
return +this.injectData[this.injectData.prop] == 1 ? true : false;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {},
|
||||||
|
render: function (h) {
|
||||||
|
return h(
|
||||||
|
'el-switch',
|
||||||
|
{
|
||||||
|
props: {
|
||||||
|
value: this.active,
|
||||||
|
},
|
||||||
|
on: {
|
||||||
|
change: (newVal) => {
|
||||||
|
this.$emit('emitData', {
|
||||||
|
action: 'update-collect',
|
||||||
|
payload: {
|
||||||
|
...this.injectData,
|
||||||
|
collection: newVal ? 1 : 0,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
null
|
||||||
|
);
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'EquipmentPlc',
|
||||||
|
mixins: [basicPageMixin],
|
||||||
|
components: {},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tableKey: Math.random(),
|
||||||
|
searchBarKeys: ['name', 'plcTableName'],
|
||||||
|
tableBtn: [
|
||||||
|
this.$auth.hasPermi('equipment:realtime-table-config:update')
|
||||||
|
? {
|
||||||
|
type: 'edit',
|
||||||
|
btnName: '修改',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
this.$auth.hasPermi('equipment:realtime-table-config:delete')
|
||||||
|
? {
|
||||||
|
type: 'delete',
|
||||||
|
btnName: '删除',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
].filter((v) => v),
|
||||||
|
tableProps: [
|
||||||
|
// {
|
||||||
|
// prop: 'createTime',
|
||||||
|
// label: '添加时间',
|
||||||
|
// fixed: true,
|
||||||
|
// width: 180,
|
||||||
|
// filter: (val) => moment(val).format('yyyy-MM-DD HH:mm:ss'),
|
||||||
|
// },
|
||||||
|
{ prop: 'code', label: '编码' },
|
||||||
|
{ prop: 'plcTableName', label: '关联表名' },
|
||||||
|
{ prop: 'name', label: '标识名称' },
|
||||||
|
{ prop: 'enName', label: '英文名称' },
|
||||||
|
{
|
||||||
|
prop: 'collection',
|
||||||
|
label: '是否采集',
|
||||||
|
subcomponent: switchBtn,
|
||||||
|
},
|
||||||
|
{ prop: 'description', label: '描述' },
|
||||||
|
],
|
||||||
|
searchBarFormConfig: [
|
||||||
|
{
|
||||||
|
type: 'input',
|
||||||
|
label: '表名',
|
||||||
|
placeholder: '请输入表名',
|
||||||
|
param: 'plcTableName',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'input',
|
||||||
|
label: '标识',
|
||||||
|
placeholder: '请输入标识',
|
||||||
|
param: 'name',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'button',
|
||||||
|
btnName: '查询',
|
||||||
|
name: 'search',
|
||||||
|
color: 'primary',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'separate',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// type: this.$auth.hasPermi('equipment:realtime-table-config:create')
|
||||||
|
// ? 'button'
|
||||||
|
// : '',
|
||||||
|
type: 'button',
|
||||||
|
btnName: '新增',
|
||||||
|
name: 'add',
|
||||||
|
plain: true,
|
||||||
|
color: 'success',
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// type: this.$auth.hasPermi('equipment:realtime-table-config:export') ? 'button' : '',
|
||||||
|
// btnName: '导出',
|
||||||
|
// name: 'export',
|
||||||
|
// color: 'warning',
|
||||||
|
// },
|
||||||
|
],
|
||||||
|
rows: [
|
||||||
|
[
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '关联表名',
|
||||||
|
prop: 'plcTableName',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
// bind: {
|
||||||
|
// disabled: true, // some condition, like detail mode...
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '编码',
|
||||||
|
prop: 'code',
|
||||||
|
url: '/base/equipment-group/getCode',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '标识',
|
||||||
|
prop: 'name',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
// bind: {
|
||||||
|
// disabled: true, // some condition, like detail mode...
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '英文名',
|
||||||
|
prop: 'enName',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
switch: true,
|
||||||
|
label: '是否采集', // 是否采集 0 代表不采集, 1 代表采集
|
||||||
|
prop: 'collection',
|
||||||
|
bind: {
|
||||||
|
'active-value': 1,
|
||||||
|
'inactive-value': 0,
|
||||||
|
value: 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
textarea: true,
|
||||||
|
label: '描述',
|
||||||
|
prop: 'description',
|
||||||
|
bind: {
|
||||||
|
placeholder: '请输入备注',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
],
|
||||||
|
// 是否显示弹出
|
||||||
|
open: false,
|
||||||
|
// 查询参数
|
||||||
|
queryParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
plcTableName: null,
|
||||||
|
name: null,
|
||||||
|
},
|
||||||
|
// 表单参数
|
||||||
|
form: {},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 覆盖 handleEmitFun 的默认实现 */
|
||||||
|
handleEmitFun({ action, payload }) {
|
||||||
|
switch (action) {
|
||||||
|
case 'update-collect':
|
||||||
|
this.reset();
|
||||||
|
const tempForm = {};
|
||||||
|
Object.keys(this.form).forEach((key) => {
|
||||||
|
tempForm[key] = payload[key];
|
||||||
|
});
|
||||||
|
updateEquipmentPlc(tempForm).then((response) => {
|
||||||
|
this.$modal.msgSuccess('修改成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/** 查询列表 */
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
// 执行查询
|
||||||
|
getEquipmentPlcPage(this.queryParams).then((response) => {
|
||||||
|
this.list = response.data.list;
|
||||||
|
this.total = response.data.total;
|
||||||
|
this.loading = false;
|
||||||
|
// this.tableKey = Math.random(); // method 1
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 取消按钮 */
|
||||||
|
cancel() {
|
||||||
|
this.open = false;
|
||||||
|
this.reset();
|
||||||
|
},
|
||||||
|
/** 表单重置 */
|
||||||
|
reset() {
|
||||||
|
this.form = {
|
||||||
|
id: undefined,
|
||||||
|
plcTableName: undefined,
|
||||||
|
code: undefined,
|
||||||
|
name: undefined,
|
||||||
|
enName: undefined,
|
||||||
|
description: undefined,
|
||||||
|
collection: undefined,
|
||||||
|
};
|
||||||
|
this.resetForm('form');
|
||||||
|
},
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
handleQuery() {
|
||||||
|
this.queryParams.pageNo = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
/** 重置按钮操作 */
|
||||||
|
resetQuery() {
|
||||||
|
this.resetForm('queryForm');
|
||||||
|
this.handleQuery();
|
||||||
|
},
|
||||||
|
/** 新增按钮操作 */
|
||||||
|
handleAdd() {
|
||||||
|
this.reset();
|
||||||
|
this.open = true;
|
||||||
|
this.title = '添加实时数据采集配置';
|
||||||
|
},
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
handleUpdate(row) {
|
||||||
|
this.reset();
|
||||||
|
const id = row.id;
|
||||||
|
getEquipmentPlc(id).then((response) => {
|
||||||
|
this.form = response.data;
|
||||||
|
this.open = true;
|
||||||
|
this.title = '修改实时数据采集配置';
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 提交按钮 */
|
||||||
|
submitForm() {
|
||||||
|
this.$refs['form'].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 修改的提交
|
||||||
|
if (this.form.id != null) {
|
||||||
|
updateEquipmentPlc(this.form).then((response) => {
|
||||||
|
this.$modal.msgSuccess('修改成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 添加的提交
|
||||||
|
createEquipmentPlc(this.form).then((response) => {
|
||||||
|
this.$modal.msgSuccess('新增成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 删除按钮操作 */
|
||||||
|
handleDelete(row) {
|
||||||
|
const id = row.id;
|
||||||
|
this.$modal
|
||||||
|
.confirm('是否确认删除实时数据采集配置编号为"' + id + '"的数据项?')
|
||||||
|
.then(function () {
|
||||||
|
return deleteEquipmentPlc(id);
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.getList();
|
||||||
|
this.$modal.msgSuccess('删除成功');
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
/** 导出按钮操作 */
|
||||||
|
handleExport() {
|
||||||
|
// 处理查询参数
|
||||||
|
let params = { ...this.queryParams };
|
||||||
|
params.pageNo = undefined;
|
||||||
|
params.pageSize = undefined;
|
||||||
|
this.$modal
|
||||||
|
.confirm('是否确认导出所有实时数据采集配置数据项?')
|
||||||
|
.then(() => {
|
||||||
|
this.exportLoading = true;
|
||||||
|
return exportEquipmentPlcExcel(params);
|
||||||
|
})
|
||||||
|
.then((response) => {
|
||||||
|
this.$download.excel(response, '实时数据采集配置.xls');
|
||||||
|
this.exportLoading = false;
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
187
src/views/equipment/base/config/deprecated/dialogForm.vue
Normal file
@ -0,0 +1,187 @@
|
|||||||
|
<!--
|
||||||
|
filename: dialogForm.vue
|
||||||
|
author: liubin
|
||||||
|
date: 2023-09-11 15:55:13
|
||||||
|
description: DialogForm for equipmentBindSection only
|
||||||
|
-->
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<el-form
|
||||||
|
ref="form"
|
||||||
|
:model="dataForm"
|
||||||
|
label-width="100px"
|
||||||
|
v-loading="formLoading">
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item
|
||||||
|
label="报警编码"
|
||||||
|
prop="code"
|
||||||
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
|
<el-input
|
||||||
|
:disabled="disabled"
|
||||||
|
v-model="dataForm.code"
|
||||||
|
@change="$emit('update', dataForm)"
|
||||||
|
placeholder="请输入工段排序" />
|
||||||
|
</el-form-item>
|
||||||
|
<!--
|
||||||
|
<el-form-item
|
||||||
|
label="报警编码"
|
||||||
|
prop="code"
|
||||||
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
|
<el-select
|
||||||
|
v-model="dataForm.code"
|
||||||
|
placeholder="请选择产线"
|
||||||
|
@change="handleProductlineChange">
|
||||||
|
<el-option
|
||||||
|
v-for="opt in productionLineList"
|
||||||
|
:key="opt.value"
|
||||||
|
:label="opt.label"
|
||||||
|
:value="opt.value" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item> -->
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item
|
||||||
|
label="报警类型"
|
||||||
|
prop="type"
|
||||||
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
|
<el-select
|
||||||
|
v-model="dataForm.type"
|
||||||
|
:disabled="disabled"
|
||||||
|
placeholder="请选择报警类型"
|
||||||
|
@change="$emit('update', dataForm)">
|
||||||
|
<el-option
|
||||||
|
v-for="opt in [
|
||||||
|
{ label: '布尔型', value: 2 },
|
||||||
|
{ label: '字符型', value: 1 },
|
||||||
|
]"
|
||||||
|
:key="opt.value"
|
||||||
|
:label="opt.label"
|
||||||
|
:value="opt.value" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item
|
||||||
|
label="报警级别"
|
||||||
|
prop="grade"
|
||||||
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
|
<el-select
|
||||||
|
:disabled="disabled"
|
||||||
|
v-model="dataForm.grade"
|
||||||
|
placeholder="请选择报警级别"
|
||||||
|
@change="$emit('update', dataForm)">
|
||||||
|
<el-option
|
||||||
|
v-for="opt in getDictDatas(DICT_TYPE.EQU_ALARM_LEVEL)"
|
||||||
|
:key="opt.value"
|
||||||
|
:label="opt.label"
|
||||||
|
:value="opt.value" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item
|
||||||
|
v-if="+dataForm.type == 1"
|
||||||
|
label="设备报警编码"
|
||||||
|
prop="alarmCode">
|
||||||
|
<el-input
|
||||||
|
:disabled="disabled"
|
||||||
|
v-model="dataForm.alarmCode"
|
||||||
|
@change="$emit('update', dataForm)"
|
||||||
|
placeholder="请输入设备报警编码" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item
|
||||||
|
label="参数列名"
|
||||||
|
prop="plcParamName"
|
||||||
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
|
<el-input
|
||||||
|
:disabled="disabled"
|
||||||
|
v-model="dataForm.plcParamName"
|
||||||
|
placeholder="请输入参数列名"
|
||||||
|
@change="$emit('update', dataForm)"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item
|
||||||
|
label="报警内容"
|
||||||
|
prop="alarmContent"
|
||||||
|
:rules="[{ required: true, message: '不能为空', trigger: 'blur' }]">
|
||||||
|
<el-input
|
||||||
|
:disabled="disabled"
|
||||||
|
v-model="dataForm.alarmContent"
|
||||||
|
placeholder="请输入报警内容"
|
||||||
|
@change="$emit('update', dataForm)"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'DialogForm',
|
||||||
|
model: {
|
||||||
|
prop: 'dataForm',
|
||||||
|
event: 'update',
|
||||||
|
},
|
||||||
|
emits: ['update'],
|
||||||
|
components: {},
|
||||||
|
props: {
|
||||||
|
dataForm: {
|
||||||
|
type: Object,
|
||||||
|
default: () => ({}),
|
||||||
|
},
|
||||||
|
disabled: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
formLoading: true,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getCode('/base/equipment-group-alarm/getCode').then((code) => {
|
||||||
|
this.formLoading = false;
|
||||||
|
this.$emit('update', {
|
||||||
|
...this.dataForm,
|
||||||
|
code,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 模拟透传 ref */
|
||||||
|
validate(cb) {
|
||||||
|
return this.$refs.form.validate(cb);
|
||||||
|
},
|
||||||
|
resetFields(args) {
|
||||||
|
return this.$refs.form.resetFields(args);
|
||||||
|
},
|
||||||
|
async handleProductlineChange(id) {
|
||||||
|
await this.getWorksectionList(id);
|
||||||
|
this.dataForm.workshopSectionId = null;
|
||||||
|
this.$emit('update', this.dataForm);
|
||||||
|
},
|
||||||
|
async getCode(url) {
|
||||||
|
const response = await this.$axios(url);
|
||||||
|
return response.data;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.el-date-editor,
|
||||||
|
.el-select {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
361
src/views/equipment/base/config/deprecated/index.vue
Normal file
@ -0,0 +1,361 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<!-- 搜索工作栏 -->
|
||||||
|
<SearchBar
|
||||||
|
:formConfigs="searchBarFormConfig"
|
||||||
|
ref="search-bar"
|
||||||
|
@headBtnClick="handleSearchBarBtnClick" />
|
||||||
|
|
||||||
|
<!-- 列表 -->
|
||||||
|
<base-table
|
||||||
|
:table-props="tableProps"
|
||||||
|
:page="queryParams.pageNo"
|
||||||
|
:limit="queryParams.pageSize"
|
||||||
|
:table-data="list"
|
||||||
|
@emitFun="handleEmitFun">
|
||||||
|
<method-btn
|
||||||
|
v-if="tableBtn.length"
|
||||||
|
slot="handleBtn"
|
||||||
|
label="操作"
|
||||||
|
:width="120"
|
||||||
|
:method-list="tableBtn"
|
||||||
|
@clickBtn="handleTableBtnClick" />
|
||||||
|
</base-table>
|
||||||
|
|
||||||
|
<!-- 分页组件 -->
|
||||||
|
<pagination
|
||||||
|
v-show="total > 0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="queryParams.pageNo"
|
||||||
|
:limit.sync="queryParams.pageSize"
|
||||||
|
@pagination="getList" />
|
||||||
|
|
||||||
|
<!-- 对话框(添加 / 修改) -->
|
||||||
|
<base-dialog
|
||||||
|
:dialogTitle="title"
|
||||||
|
:dialogVisible="open"
|
||||||
|
width="736px"
|
||||||
|
@close="cancel"
|
||||||
|
@cancel="cancel"
|
||||||
|
@confirm="submitForm">
|
||||||
|
<DialogForm v-if="open" ref="form" v-model="form" :rows="rows" />
|
||||||
|
</base-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
createEquipmentGroupAlarm,
|
||||||
|
updateEquipmentGroupAlarm,
|
||||||
|
deleteEquipmentGroupAlarm,
|
||||||
|
getEquipmentGroupAlarm,
|
||||||
|
getEquipmentGroupAlarmPage,
|
||||||
|
exportEquipmentGroupAlarmExcel,
|
||||||
|
} from '@/api/base/equipmentGroupAlarm';
|
||||||
|
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
||||||
|
import moment from 'moment';
|
||||||
|
import { publicFormatter } from '@/utils/dict';
|
||||||
|
import DialogForm from './dialogForm.vue';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'EquipmentGroupAlarm',
|
||||||
|
components: { DialogForm },
|
||||||
|
mixins: [basicPageMixin],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
searchBarKeys: [''],
|
||||||
|
tableBtn: [
|
||||||
|
this.$auth.hasPermi('base:equipment-group-alarm:update')
|
||||||
|
? {
|
||||||
|
type: 'edit',
|
||||||
|
btnName: '修改',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
this.$auth.hasPermi('base:equipment-group-alarm:delete')
|
||||||
|
? {
|
||||||
|
type: 'delete',
|
||||||
|
btnName: '删除',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
].filter((v) => v),
|
||||||
|
tableProps: [
|
||||||
|
{
|
||||||
|
prop: 'createTime',
|
||||||
|
label: '添加时间',
|
||||||
|
fixed: true,
|
||||||
|
width: 180,
|
||||||
|
filter: (val) => moment(val).format('yyyy-MM-DD HH:mm:ss'),
|
||||||
|
},
|
||||||
|
{ width: 240, prop: 'code', label: '报警编码' },
|
||||||
|
{
|
||||||
|
prop: 'type',
|
||||||
|
label: '报警类型',
|
||||||
|
filter: (val) =>
|
||||||
|
val != null ? ['-', '字符型', '布尔型', '-'][val] : '-',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prop: 'grade',
|
||||||
|
label: '报警级别',
|
||||||
|
filter: publicFormatter(this.DICT_TYPE.EQU_ALARM_LEVEL),
|
||||||
|
},
|
||||||
|
{ prop: 'alarmCode', label: '设备报警编码' },
|
||||||
|
{ prop: 'plcParamName', label: '参数列名' },
|
||||||
|
{ prop: 'alarmContent', label: '报警内容' },
|
||||||
|
],
|
||||||
|
searchBarFormConfig: [
|
||||||
|
{
|
||||||
|
type: 'input',
|
||||||
|
label: '设备分组编码',
|
||||||
|
width: '220',
|
||||||
|
placeholder: '/',
|
||||||
|
param: 'equipmentGroupCode',
|
||||||
|
defaultSelect: null,
|
||||||
|
disabled: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'input',
|
||||||
|
label: '设备分组名称',
|
||||||
|
placeholder: '/',
|
||||||
|
param: 'equipmentGroupName',
|
||||||
|
defaultSelect: null,
|
||||||
|
disabled: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: this.$auth.hasPermi('base:equipment-group-alarm:create')
|
||||||
|
? 'button'
|
||||||
|
: '',
|
||||||
|
btnName: '新增',
|
||||||
|
name: 'add',
|
||||||
|
plain: true,
|
||||||
|
color: 'success',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
rows: [
|
||||||
|
[
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '报警编码', // 自动生成
|
||||||
|
prop: 'code',
|
||||||
|
url: '/base/equipment-group-alarm/getCode',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
label: '报警类型', // 固定选项
|
||||||
|
prop: 'type',
|
||||||
|
options: [
|
||||||
|
{ label: '布尔型', value: 2 },
|
||||||
|
{ label: '字符型', value: 1 },
|
||||||
|
],
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
select: true,
|
||||||
|
label: '报警级别', // 字典
|
||||||
|
prop: 'grade',
|
||||||
|
options: this.getDictDatas(this.DICT_TYPE.EQU_ALARM_LEVEL),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '设备报警编码', // 对应到设备实际的报警编码
|
||||||
|
prop: 'alarmCode',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '参数列名', // 在实时数据库的列名
|
||||||
|
prop: 'plcParamName',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input: true,
|
||||||
|
label: '报警内容',
|
||||||
|
prop: 'alarmContent',
|
||||||
|
rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
],
|
||||||
|
// 是否显示弹出层
|
||||||
|
open: false,
|
||||||
|
// 查询参数
|
||||||
|
queryParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
equipmentGroupId: null,
|
||||||
|
},
|
||||||
|
// 表单参数
|
||||||
|
form: {
|
||||||
|
id: null,
|
||||||
|
equipmentGroupId: null,
|
||||||
|
code: null,
|
||||||
|
type: null,
|
||||||
|
grade: null,
|
||||||
|
alarmCode: null,
|
||||||
|
alarmContent: null,
|
||||||
|
plcParamName: null,
|
||||||
|
},
|
||||||
|
// // 表单校验
|
||||||
|
// rules: {
|
||||||
|
// equipmentGroupId: [{ required: true, message: "设备分组ID,关联base_equipment_group不能为空", trigger: "blur" }],
|
||||||
|
// type: [{ required: true, message: "报警类型:1.字符型,2.布尔型不能为空", trigger: "change" }],
|
||||||
|
// alarmContent: [{ required: true, message: "报警内容 该条报警具体的解释不能为空", trigger: "blur" }],
|
||||||
|
// plcParamName: [{ required: true, message: "关联编码,对应到plc_param_name的编码,用于链接数采不能为空", trigger: "blur" }],
|
||||||
|
// }
|
||||||
|
};
|
||||||
|
},
|
||||||
|
// watch: {
|
||||||
|
// $route(value) {
|
||||||
|
// console.log('new route info', value)
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// created() {
|
||||||
|
// this.getList();
|
||||||
|
// },
|
||||||
|
activated() {
|
||||||
|
// 设置顶部搜索栏信息
|
||||||
|
const { equipmentGroupName, equipmentGroupCode, equipmentGroupId } =
|
||||||
|
this.$route.params;
|
||||||
|
this.setSearchBarFormValue('equipmentGroupName', equipmentGroupName);
|
||||||
|
this.setSearchBarFormValue('equipmentGroupCode', equipmentGroupCode);
|
||||||
|
this.queryParams.equipmentGroupId = equipmentGroupId;
|
||||||
|
// if (!equipmentGroupId) this.getList(); // 拦截
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
deactivated() {
|
||||||
|
this.setSearchBarFormValue('equipmentGroupName', null);
|
||||||
|
this.setSearchBarFormValue('equipmentGroupCode', null);
|
||||||
|
this.queryParams.equipmentGroupId = null;
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 设置 searchBarForm 的默认值 - 用得比较少 */
|
||||||
|
setSearchBarFormValue(param, value) {
|
||||||
|
this.searchBarFormConfig.forEach((config) => {
|
||||||
|
if (config.param == param) {
|
||||||
|
config.defaultSelect = value;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 查询列表 */
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
// 执行查询
|
||||||
|
getEquipmentGroupAlarmPage(this.queryParams).then((response) => {
|
||||||
|
this.list = response.data.list;
|
||||||
|
this.total = response.data.total;
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 取消按钮 */
|
||||||
|
cancel() {
|
||||||
|
this.open = false;
|
||||||
|
this.reset();
|
||||||
|
},
|
||||||
|
/** 表单重置 */
|
||||||
|
reset() {
|
||||||
|
this.form = {
|
||||||
|
id: null,
|
||||||
|
equipmentGroupId: null,
|
||||||
|
code: null,
|
||||||
|
type: null,
|
||||||
|
grade: null,
|
||||||
|
alarmCode: null,
|
||||||
|
alarmContent: null,
|
||||||
|
plcParamName: null,
|
||||||
|
};
|
||||||
|
this.resetForm('form');
|
||||||
|
},
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
handleQuery() {
|
||||||
|
this.queryParams.pageNo = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
/** 重置按钮操作 */
|
||||||
|
resetQuery() {
|
||||||
|
this.resetForm('queryForm');
|
||||||
|
this.handleQuery();
|
||||||
|
},
|
||||||
|
/** 新增按钮操作 */
|
||||||
|
handleAdd() {
|
||||||
|
if (this.queryParams.equipmentGroupId == null)
|
||||||
|
return this.$message.error('没有检测到设备分组信息');
|
||||||
|
this.reset();
|
||||||
|
this.open = true;
|
||||||
|
this.title = '添加设备分组报警明细';
|
||||||
|
},
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
handleUpdate(row) {
|
||||||
|
this.reset();
|
||||||
|
const id = row.id;
|
||||||
|
getEquipmentGroupAlarm(id).then((response) => {
|
||||||
|
this.form = response.data;
|
||||||
|
this.open = true;
|
||||||
|
this.title = '修改设备分组报警明细';
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 提交按钮 */
|
||||||
|
submitForm() {
|
||||||
|
this.$refs['form'].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 修改的提交
|
||||||
|
if (this.form.id != null) {
|
||||||
|
updateEquipmentGroupAlarm({
|
||||||
|
...this.form,
|
||||||
|
equipmentGroupId: this.queryParams.equipmentGroupId,
|
||||||
|
}).then((response) => {
|
||||||
|
this.$modal.msgSuccess('修改成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 添加的提交
|
||||||
|
createEquipmentGroupAlarm({
|
||||||
|
...this.form,
|
||||||
|
equipmentGroupId: this.queryParams.equipmentGroupId,
|
||||||
|
}).then((response) => {
|
||||||
|
this.$modal.msgSuccess('新增成功');
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 删除按钮操作 */
|
||||||
|
handleDelete(row) {
|
||||||
|
const id = row.id;
|
||||||
|
this.$modal
|
||||||
|
.confirm('是否确认删除该报警?')
|
||||||
|
.then(function () {
|
||||||
|
return deleteEquipmentGroupAlarm(id);
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.getList();
|
||||||
|
this.$modal.msgSuccess('删除成功');
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
/** 导出按钮操作 */
|
||||||
|
handleExport() {
|
||||||
|
// 处理查询参数
|
||||||
|
let params = { ...this.queryParams };
|
||||||
|
params.pageNo = undefined;
|
||||||
|
params.pageSize = undefined;
|
||||||
|
this.$modal
|
||||||
|
.confirm('是否确认导出所有设备分组报警明细数据项?')
|
||||||
|
.then(() => {
|
||||||
|
this.exportLoading = true;
|
||||||
|
return exportEquipmentGroupAlarmExcel(params);
|
||||||
|
})
|
||||||
|
.then((response) => {
|
||||||
|
this.$download.excel(response, '设备分组报警明细.xls');
|
||||||
|
this.exportLoading = false;
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
@ -227,8 +227,12 @@ export default {
|
|||||||
cancelButtonText: '取消',
|
cancelButtonText: '取消',
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}
|
}
|
||||||
).then(() => {
|
).then(async () => {
|
||||||
view.cell.remove()
|
const id = node.attrs.detId.text;
|
||||||
|
const status = await this.handleDelete(id);
|
||||||
|
if (status) {
|
||||||
|
view.cell.remove();
|
||||||
|
}
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
return;
|
return;
|
||||||
})
|
})
|
||||||
@ -326,8 +330,9 @@ export default {
|
|||||||
|
|
||||||
async handleDelete(id) {
|
async handleDelete(id) {
|
||||||
const { code, data } = await this.delete({ id });
|
const { code, data } = await this.delete({ id });
|
||||||
|
debugger;
|
||||||
if (code == 0) {
|
if (code == 0) {
|
||||||
this.$msgSuccess('成功删除一个工序!');
|
this.$modal.msgSuccess('成功删除一个工序!');
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@ -419,7 +424,7 @@ export default {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
).catch(err => {
|
).catch(err => {
|
||||||
this.$msgError(err)
|
this.$modal.msgError(err)
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -435,8 +440,11 @@ export default {
|
|||||||
info(payload) {
|
info(payload) {
|
||||||
return this.http(this.infoUrl, 'get', payload);
|
return this.http(this.infoUrl, 'get', payload);
|
||||||
},
|
},
|
||||||
delete(payload) {
|
delete({ id }) {
|
||||||
return this.http(this.deleteUrl, 'delete', payload);
|
return this.$axios({
|
||||||
|
url: this.deleteUrl + `?id=${id}`,
|
||||||
|
method: 'delete',
|
||||||
|
});
|
||||||
},
|
},
|
||||||
http(url, method, payload) {
|
http(url, method, payload) {
|
||||||
return this.$axios({
|
return this.$axios({
|
||||||
|
@ -80,7 +80,7 @@
|
|||||||
<el-form-item v-if="form.type !== 3" label="菜单图标">
|
<el-form-item v-if="form.type !== 3" label="菜单图标">
|
||||||
<el-popover placement="bottom-start" width="460" trigger="click" @show="$refs['iconSelect'].reset()">
|
<el-popover placement="bottom-start" width="460" trigger="click" @show="$refs['iconSelect'].reset()">
|
||||||
<IconSelect ref="iconSelect" @selected="selected" />
|
<IconSelect ref="iconSelect" @selected="selected" />
|
||||||
<el-input slot="reference" v-model="form.icon" placeholder="点击选择图标" readonly>
|
<el-input slot="reference" clearable v-model="form.icon" placeholder="点击选择图标">
|
||||||
<svg-icon v-if="form.icon" slot="prefix" :icon-class="form.icon" class="el-input__icon"
|
<svg-icon v-if="form.icon" slot="prefix" :icon-class="form.icon" class="el-input__icon"
|
||||||
style="height: 32px;width: 16px;"/>
|
style="height: 32px;width: 16px;"/>
|
||||||
<i v-else slot="prefix" class="el-icon-search el-input__icon" />
|
<i v-else slot="prefix" class="el-icon-search el-input__icon" />
|
||||||
|