Commit 843542b9 authored by xinzhedeai's avatar xinzhedeai

环境、冲击地压、尾矿库 设备管理

parent 5cd9ee70
......@@ -88,9 +88,9 @@ export default {
},
// 修改
set: (iotNormalMachine) => {
iotNormalMachine.enterpriseId = null
iotNormalMachine.mineType = null
iotNormalMachine.mineId = null
// iotNormalMachine.enterpriseId = null
// iotNormalMachine.mineType = null
// iotNormalMachine.mineId = null
iotNormalMachine.createDatetime = null
iotNormalMachine.createBy = null
iotNormalMachine.updateDatetime = null
......
......@@ -61,9 +61,9 @@ export default {
},
// 修改
set: (iotNormalMachine) => {
iotNormalMachine.enterpriseId = null
iotNormalMachine.mineType = null
iotNormalMachine.mineId = null
// iotNormalMachine.enterpriseId = null
// iotNormalMachine.mineType = null
// iotNormalMachine.mineId = null
iotNormalMachine.createDatetime = null
iotNormalMachine.createBy = null
iotNormalMachine.updateDatetime = null
......
......@@ -4,7 +4,9 @@
<div class="head-container">
<div>
<el-input v-model="searchParam.nameLike" clearable size="small" placeholder="设备名称" style="width: 200px;" class="filter-item" />
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="searchSubmit">搜索</el-button>
<el-input v-model="searchParam.enterpriseName" clearable size="small" placeholder="所属企业" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.mineName" clearable size="small" placeholder="所属矿山" style="width: 200px;" class="filter-item" />
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="searchSubmit">搜索2</el-button>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="searchParamReset">重置</el-button>
<el-tooltip class="item" effect="dark" content="按当前查询条件导出" placement="top">
<el-button :loading="exporting" class="filter-item" size="mini" type="info" plain icon="el-icon-download" @click="exportSubmit">导出</el-button>
......@@ -28,6 +30,34 @@
<!--弹出框1-->
<el-dialog append-to-body :close-on-click-modal="true" :visible.sync="dialog1Show" :title="editState==1?'新增':editState==2?'修改':'查看'" width="960px">
<el-form ref="dialog1Form" :hide-required-asterisk="!dialog1Editing" :model="dialog1Data" :rules="dialog1Rules" size="mini" label-width="180px" style="margin-right: 80px;">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="所属企业:" prop="enterpriseId">
<span v-show="!dialog1Editing">{{ dialog1Data.enterpriseName }}</span>
<el-select
v-model="dialog1Data.enterpriseId"
placeholder="请选择"
@change="enterpriseChange"
>
<el-option
v-for="item in options4enterpriseIdList"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属矿山" prop="mineId">
<span v-show="!dialog1Editing">{{ dialog1Data.mineName }}</span>
<el-select v-model="dialog1Data.mineId" placeholder="请选择" clearable size="small" class="filter-item" style="width: 200px;">
<el-option v-for="mine in mineList" :key="mine.index" :label="mine.name" :value="mine.index" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="设备编号:" prop="code">
......@@ -164,6 +194,8 @@
<el-table-column :show-overflow-tooltip="true" prop="id" label="编号" width="100px" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="name" label="设备名称" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="code" label="设备编码" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="enterpriseName" label="所属企业" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="mineName" label="所属矿山" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="unit" label="单位" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="manufacturer" label="生产厂家" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="place" label="安装位置" align="center" />
......@@ -190,6 +222,8 @@
<script>
import iotGroundPressureMachineApi from '@/api/kd/iotGroundPressureMachine'
import mineApi from '@/api/kd/mine'
import {getCompanyList} from '@/api/system/user'
import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex'
import { downloadFile } from '@/utils'
......@@ -197,13 +231,18 @@ import { downloadFile } from '@/utils'
const searchParam = {// 默认搜索条件
page: 1,
count: 10,
searchCount: true
searchCount: true,
mineName: '',
enterpriseName: ''
}
export default {
name: 'EIotGroundPressureMachine', // 本页面名
components: {},
data() {
return {
options4enterpriseIdList: [],
mineList: [],
selectedMine: {},
httpHeaders: {
'Authorization': getToken()
......@@ -220,6 +259,8 @@ export default {
dialog1Saving: false,
dialog1Data: {},
dialog1Rules: {
enterpriseId: [{ required: true, message: '请选择' }],
mineId: [{ required: true, message: '请选择' }],
code: [{ required: true, message: '请填写' }],
name: [{ required: true, message: '请填写' }],
unit: [{ required: true, message: '请填写' }],
......@@ -252,26 +293,44 @@ export default {
}
},
mounted() {
const selectedMineJson = window.localStorage.getItem('kd.selected.mine')
let noMine = false
if (!selectedMineJson) {
noMine = true
} else {
const selectedMine = JSON.parse(selectedMineJson)
if (!selectedMine || selectedMine.enterpriseId !== this.user.enterpriseId) {
noMine = true
} else {
this.selectedMine = selectedMine
}
}
// if (noMine) {
// const selectedMineJson = window.localStorage.getItem('kd.selected.mine')
// let noMine = false
// if (!selectedMineJson) {
// noMine = true
// } else {
// const selectedMine = JSON.parse(selectedMineJson)
// if (!selectedMine || selectedMine.enterpriseId !== this.user.enterpriseId) {
// noMine = true
// } else {
// this.selectedMine = selectedMine
// }
// }
// // if (noMine) {
// this.$message.error('当前未选择矿山')
// this.$router.replace('/dashboard')
// }
this.searchParamReset()
this.searchSubmit()
// 获取企业公司
getCompanyList({})
.then((res) => {
this.options4enterpriseIdList = res.body;
});
},
methods: {
enterpriseChange(value){
// 矿山选项卡
this.getAllMineByEnterpriseId(value)
},
getAllMineByEnterpriseId(enterpriseId){
mineApi.getAllMineByEnterpriseId({
enterpriseId
}).then(response => {
let i = 1
response.body.forEach(x => { x.index = i++ })
this.mineList = response.body
})
},
searchParamReset() {
this.searchParam = JSON.parse(JSON.stringify(searchParam))
},
......@@ -309,8 +368,8 @@ export default {
} else {
this.dialog1Saving = true
if (this.editState === 1) { // 新增
this.dialog1Data.mineType = this.selectedMine.mineType
this.dialog1Data.mineId = this.selectedMine.id
// this.dialog1Data.mineType = this.selectedMine.mineType
// this.dialog1Data.mineId = this.selectedMine.id
iotGroundPressureMachineApi.add(this.dialog1Data).then(() => {
this.dialog1Show = false
this.$message.success('保存成功')
......@@ -365,6 +424,7 @@ export default {
this.dialog1Show = true
this.$nextTick(() => {
this.$refs['dialog1Form'].clearValidate()
this.getAllMineByEnterpriseId(this.dialog1Data.enterpriseId)
})
}).catch(() => {
this.searchSubmit()
......
......@@ -4,6 +4,8 @@
<div class="head-container">
<div>
<el-input v-model="searchParam.nameLike" clearable size="small" placeholder="设备名称" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.enterpriseName" clearable size="small" placeholder="所属企业" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.mineName" clearable size="small" placeholder="所属矿山" style="width: 200px;" class="filter-item" />
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="searchSubmit">搜索</el-button>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="searchParamReset">重置</el-button>
<el-tooltip class="item" effect="dark" content="按当前查询条件导出" placement="top">
......@@ -28,6 +30,34 @@
<!--弹出框1-->
<el-dialog append-to-body :close-on-click-modal="true" :visible.sync="dialog1Show" :title="editState==1?'新增':editState==2?'修改':'查看'" width="960px">
<el-form ref="dialog1Form" :hide-required-asterisk="!dialog1Editing" :model="dialog1Data" :rules="dialog1Rules" size="mini" label-width="180px" style="margin-right: 80px;">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="所属企业:" prop="enterpriseId">
<span v-show="!dialog1Editing">{{ dialog1Data.enterpriseName }}</span>
<el-select
v-model="dialog1Data.enterpriseId"
placeholder="请选择"
@change="enterpriseChange"
>
<el-option
v-for="item in options4enterpriseIdList"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属矿山" prop="mineId">
<span v-show="!dialog1Editing">{{ dialog1Data.mineName }}</span>
<el-select v-model="dialog1Data.mineId" placeholder="请选择" clearable size="small" class="filter-item" style="width: 200px;">
<el-option v-for="mine in mineList" :key="mine.index" :label="mine.name" :value="mine.index" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="设备编号:" prop="code">
......@@ -164,6 +194,8 @@
<el-table-column :show-overflow-tooltip="true" prop="id" label="编号" width="100px" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="name" label="设备名称" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="code" label="设备编号" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="enterpriseName" label="所属企业" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="mineName" label="所属矿山" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="monitoringType" label="监测类型" align="center">
<template slot-scope="scope">
<span>{{ (getMonitoringTypeByCode(scope.row.code)||{}).name }}</span>
......@@ -195,6 +227,8 @@
<script>
import iotTailingsMachineApi from '@/api/kd/iotTailingsMachine'
import AMapSearchPoint from '@/components/AMap/AMapSearchPoint'
import mineApi from '@/api/kd/mine'
import {getCompanyList} from '@/api/system/user'
import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex'
import { downloadFile } from '@/utils'
......@@ -202,13 +236,17 @@ import { downloadFile } from '@/utils'
const searchParam = {// 默认搜索条件
page: 1,
count: 10,
searchCount: true
searchCount: true,
mineName: '',
enterpriseName: ''
}
export default {
name: 'EIotTailingsMachine', // 本页面名
components: { AMapSearchPoint },
data() {
return {
options4enterpriseIdList: [],
mineList: [],
selectedMine: {},
httpHeaders: {
'Authorization': getToken()
......@@ -225,6 +263,8 @@ export default {
dialog1Saving: false,
dialog1Data: {},
dialog1Rules: {
enterpriseId: [{ required: true, message: '请选择' }],
mineId: [{ required: true, message: '请选择' }],
code: [{ required: true, message: '请填写' }],
name: [{ required: true, message: '请填写' }],
unit: [{ required: true, message: '请填写' }],
......@@ -259,26 +299,44 @@ export default {
}
},
mounted() {
const selectedMineJson = window.localStorage.getItem('kd.selected.mine')
let noMine = false
if (!selectedMineJson) {
noMine = true
} else {
const selectedMine = JSON.parse(selectedMineJson)
if (!selectedMine || selectedMine.enterpriseId !== this.user.enterpriseId) {
noMine = true
} else {
this.selectedMine = selectedMine
}
}
// const selectedMineJson = window.localStorage.getItem('kd.selected.mine')
// let noMine = false
// if (!selectedMineJson) {
// noMine = true
// } else {
// const selectedMine = JSON.parse(selectedMineJson)
// if (!selectedMine || selectedMine.enterpriseId !== this.user.enterpriseId) {
// noMine = true
// } else {
// this.selectedMine = selectedMine
// }
// }
// if (noMine) {
// this.$message.error('当前未选择矿山')
// this.$router.replace('/dashboard')
// }
this.searchParamReset()
this.searchSubmit()
// 获取企业公司
getCompanyList({})
.then((res) => {
this.options4enterpriseIdList = res.body;
});
},
methods: {
enterpriseChange(value){
// 矿山选项卡
this.getAllMineByEnterpriseId(value)
},
getAllMineByEnterpriseId(enterpriseId){
mineApi.getAllMineByEnterpriseId({
enterpriseId
}).then(response => {
let i = 1
response.body.forEach(x => { x.index = i++ })
this.mineList = response.body
})
},
searchParamReset() {
this.searchParam = JSON.parse(JSON.stringify(searchParam))
},
......@@ -316,8 +374,8 @@ export default {
} else {
this.dialog1Saving = true
if (this.editState === 1) { // 新增
this.dialog1Data.mineType = this.selectedMine.mineType
this.dialog1Data.mineId = this.selectedMine.id
// this.dialog1Data.mineType = this.selectedMine.mineType
// this.dialog1Data.mineId = this.selectedMine.id
iotTailingsMachineApi.add(this.dialog1Data).then(() => {
this.dialog1Show = false
this.$message.success('保存成功')
......@@ -372,6 +430,7 @@ export default {
this.dialog1Show = true
this.$nextTick(() => {
this.$refs['dialog1Form'].clearValidate()
this.getAllMineByEnterpriseId(this.dialog1Data.enterpriseId)
})
}).catch(() => {
this.searchSubmit()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment