Merge branch 'master' of http://192.168.0.56:3000/bonus/SafetyAlertSystem-ui
This commit is contained in:
commit
bafab4120b
|
|
@ -0,0 +1,10 @@
|
|||
module.exports = {
|
||||
tabWidth: 4,
|
||||
semi: false,
|
||||
vueIndentScriptAndStyle: false,
|
||||
singleQuote: true,
|
||||
trailingComma: 'all',
|
||||
proseWrap: 'never',
|
||||
htmlWhitespaceSensitivity: 'strict',
|
||||
endOfLine: 'auto',
|
||||
}
|
||||
|
|
@ -5,8 +5,15 @@ import request from '@/utils/request'
|
|||
/** 边代设备列表查询 */
|
||||
export const queryEdgeDeviceListApiTwo = (data) => {
|
||||
return request.get('/base/tbBdDeviceRecord//getDeviceList', {
|
||||
params: data
|
||||
params: data,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
/* 获取杆塔数据 */
|
||||
export const getPowerListApi = (params) => {
|
||||
return request.get('/base/tbBdDeviceRecord/getPowerList', { params })
|
||||
}
|
||||
/* 修改边带与杆塔的绑定关系 */
|
||||
export const putPowerDataApi = (params) => {
|
||||
return request.post('/base/tbBdDeviceRecord/updatePowerId', params)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,14 @@
|
|||
:props="item.optionProps"
|
||||
:show-all-levels="false"
|
||||
clearable
|
||||
@change="handleCasAdd($event, item.f_model, cascaderFunc, extraTableProp)"
|
||||
@change="
|
||||
handleCasAdd(
|
||||
$event,
|
||||
item.f_model,
|
||||
cascaderFunc,
|
||||
extraTableProp,
|
||||
)
|
||||
"
|
||||
style="width: 240px"
|
||||
/>
|
||||
<el-cascader
|
||||
|
|
@ -132,7 +139,8 @@
|
|||
select-on-indeterminate
|
||||
style="width: 100%"
|
||||
v-loading="loading"
|
||||
@selection-change="handleSelectionChange">
|
||||
@selection-change="handleSelectionChange"
|
||||
>
|
||||
>
|
||||
<!-- <el-table-column
|
||||
type="selection"
|
||||
|
|
@ -170,18 +178,18 @@
|
|||
</template>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column
|
||||
<el-table-column
|
||||
align="center"
|
||||
label="操作"
|
||||
v-if="handleShow && showOperation"
|
||||
v-if="handleShow && isShowHandle"
|
||||
:min-width="dynamicWidth"
|
||||
>
|
||||
<template slot-scope="{ row }">
|
||||
<div class="optionDivRef">
|
||||
<slot :data="row" name="handle">-</slot>
|
||||
<slot :data="row" name="handle"></slot>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column> -->
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<!-- 分页 -->
|
||||
|
|
@ -222,11 +230,11 @@ export default {
|
|||
/** 传递参数 */
|
||||
sendParams: {
|
||||
type: Object,
|
||||
default: () => null
|
||||
default: () => null,
|
||||
},
|
||||
sendId: {
|
||||
type: Number,
|
||||
default: () => null
|
||||
default: () => null,
|
||||
},
|
||||
/** 是否显示查询按钮 */
|
||||
showSearchBtn: {
|
||||
|
|
@ -239,39 +247,44 @@ export default {
|
|||
},
|
||||
cascaderFunc: {
|
||||
type: Function,
|
||||
default: () => null
|
||||
default: () => null,
|
||||
},
|
||||
extraTableProp: {
|
||||
type: Object,
|
||||
default: () => null
|
||||
default: () => null,
|
||||
},
|
||||
showOperation: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
default: true,
|
||||
},
|
||||
showRightTools: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
default: true,
|
||||
},
|
||||
selectable: {
|
||||
type: Function,
|
||||
default: () => {
|
||||
return true
|
||||
}
|
||||
},
|
||||
},
|
||||
selSingle: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
default: false,
|
||||
},
|
||||
showIndex: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
}
|
||||
default: true,
|
||||
},
|
||||
|
||||
isShowHandle: {
|
||||
type: Boolean,
|
||||
default: () => false,
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
/* 根据操作栏控制表头是否显示 */
|
||||
tableColumCheckProps() {
|
||||
return this.columCheckList.filter(e => {
|
||||
return this.columCheckList.filter((e) => {
|
||||
return e.checked != false
|
||||
})
|
||||
},
|
||||
|
|
@ -288,14 +301,14 @@ export default {
|
|||
handler(nv, ov) {
|
||||
if (nv !== ov) {
|
||||
this.columnsList = nv
|
||||
this.columCheckList = this.columnsList.map(e => {
|
||||
this.columCheckList = this.columnsList.map((e) => {
|
||||
this.$set(e, 'checked', true)
|
||||
return e
|
||||
})
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
deep: true,
|
||||
},
|
||||
/* sendParams: {
|
||||
handler(nv, ov) {
|
||||
console.log(nv, ov)
|
||||
|
|
@ -311,9 +324,7 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
// 表单校验
|
||||
formRules: {
|
||||
|
||||
},
|
||||
formRules: {},
|
||||
loading: false,
|
||||
// 列表接口查询参数
|
||||
queryParams: {
|
||||
|
|
@ -338,17 +349,17 @@ export default {
|
|||
columCheckList: [],
|
||||
// 操作列最小宽度
|
||||
dynamicWidth: 0,
|
||||
idCount: 1
|
||||
idCount: 1,
|
||||
}
|
||||
},
|
||||
|
||||
created() {
|
||||
this.columCheckList = this.columnsList.map(e => {
|
||||
this.columCheckList = this.columnsList.map((e) => {
|
||||
this.$set(e, 'checked', true)
|
||||
return e
|
||||
})
|
||||
/* 生成查询参数 */
|
||||
this.formLabel.map(e => {
|
||||
this.formLabel.map((e) => {
|
||||
this.$set(this.queryParams, e.f_model, '')
|
||||
// 设置表单必填
|
||||
if (e.f_rule) {
|
||||
|
|
@ -356,8 +367,8 @@ export default {
|
|||
{
|
||||
required: true,
|
||||
message: `请填写${e.f_label}`,
|
||||
trigger: 'blur'
|
||||
}
|
||||
trigger: 'blur',
|
||||
},
|
||||
])
|
||||
}
|
||||
})
|
||||
|
|
@ -385,7 +396,7 @@ export default {
|
|||
}
|
||||
console.log(this.queryParams)
|
||||
if (Object.keys(this.formRules).length !== 0) {
|
||||
this.$refs.queryFormRef.validate(async valid => {
|
||||
this.$refs.queryFormRef.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.loading = true
|
||||
const res = await this.requestApi(this.queryParams)
|
||||
|
|
@ -417,7 +428,6 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
/** 查询按钮 */
|
||||
handleQuery() {
|
||||
|
|
@ -441,12 +451,7 @@ export default {
|
|||
this.queryParams[val] = e[e.length - 1]
|
||||
},
|
||||
/** 级联选择只选最后一级 */
|
||||
handleCasAdd(
|
||||
e,
|
||||
val,
|
||||
func,
|
||||
prop
|
||||
) {
|
||||
handleCasAdd(e, val, func, prop) {
|
||||
if (e.length !== 0) {
|
||||
this.queryParams[val] = e[e.length - 1]
|
||||
let setObj = {}
|
||||
|
|
@ -459,12 +464,14 @@ export default {
|
|||
this.idCount++
|
||||
// 获取单位
|
||||
func({
|
||||
id: e[e.length - 1]
|
||||
}).then(res => {
|
||||
id: e[e.length - 1],
|
||||
})
|
||||
.then((res) => {
|
||||
this.$set(setObj, 'name', res.data.parentName)
|
||||
this.$set(setObj, 'unitName', res.data.unitName)
|
||||
this.$set(setObj, 'typeName', res.data.name)
|
||||
}).catch(err => {})
|
||||
})
|
||||
.catch((err) => {})
|
||||
for (let key in this.queryParams) {
|
||||
this.$set(setObj, key, this.queryParams[key])
|
||||
}
|
||||
|
|
@ -509,7 +516,6 @@ export default {
|
|||
this.msgList = e
|
||||
this.$emit('transIdList', this.msgList)
|
||||
},
|
||||
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
<div class="app-container">
|
||||
<!-- 表格 -->
|
||||
<TableModelTwo
|
||||
:isShowHandle="true"
|
||||
:formLabel="formLabel"
|
||||
:columnsList="columnsList"
|
||||
:request-api="queryEdgeDeviceListApiTwo"
|
||||
|
|
@ -11,30 +12,101 @@
|
|||
<template slot="devUserPhone" slot-scope="{ data }">
|
||||
{{ phoneCrypto(data.devUserPhone) || '-' }}
|
||||
</template>
|
||||
|
||||
<template slot="handle" slot-scope="{ data }">
|
||||
<el-button
|
||||
size="mini"
|
||||
@click="handleClick(data)"
|
||||
v-if="data.proType === '2'"
|
||||
>{{ data.bindId ? '修改杆塔' : '绑定杆塔' }}</el-button
|
||||
>
|
||||
</template>
|
||||
</TableModelTwo>
|
||||
|
||||
<!-- 绑定弹框 -->
|
||||
<el-dialog
|
||||
width="40%"
|
||||
title="绑定杆塔"
|
||||
v-if="bindVisible"
|
||||
:visible.sync="bindVisible"
|
||||
>
|
||||
<el-form
|
||||
label-width="80px"
|
||||
ref="bindPowerFormRef"
|
||||
:model="bindPowerForm"
|
||||
:rules="bindPowerFormRules"
|
||||
>
|
||||
<el-form-item label="绑定杆塔" prop="powerId">
|
||||
<el-select
|
||||
clearable
|
||||
placeholder="请选择需要绑定的杆塔"
|
||||
v-model="bindPowerForm.powerId"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in powerList"
|
||||
:key="item.powerId"
|
||||
:label="item.powerName"
|
||||
:value="item.powerId"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button size="mini" type="primary" @click="onSubmit"
|
||||
>确 定</el-button
|
||||
>
|
||||
<el-button size="mini" @click="onCancel">取 消</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { formLabel, columnsList, } from './config'
|
||||
import { formLabel, columnsList } from './config'
|
||||
import { commonMixin } from '../mixins/common'
|
||||
import {
|
||||
queryEdgeDeviceListApiTwo
|
||||
getPowerListApi,
|
||||
putPowerDataApi,
|
||||
queryEdgeDeviceListApiTwo,
|
||||
} from '@/api/base/edgeDevice'
|
||||
export default {
|
||||
name: 'EdgeDevice',
|
||||
methods: {
|
||||
queryEdgeDeviceListApiTwo
|
||||
async handleClick(row) {
|
||||
if (row.bindId) {
|
||||
this.bindPowerForm.powerId = row.bindId
|
||||
} else {
|
||||
this.bindPowerForm.powerId = ''
|
||||
}
|
||||
const { id } = row
|
||||
this.bindPowerForm.id = id
|
||||
const res = await getPowerListApi({ id })
|
||||
this.powerList = res.rows
|
||||
this.bindVisible = true
|
||||
},
|
||||
|
||||
/* 确定 */
|
||||
onSubmit() {
|
||||
this.$refs.bindPowerFormRef.validate(async (valid) => {
|
||||
if (valid) {
|
||||
const res = await putPowerDataApi(this.bindPowerForm)
|
||||
if (res.code === 200) {
|
||||
this.$message.success('绑定成功!')
|
||||
this.bindVisible = false
|
||||
this.$refs.tableRef.getTableList()
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
/* 取消 */
|
||||
onCancel() {
|
||||
this.bindVisible = false
|
||||
},
|
||||
},
|
||||
|
||||
mixins: [commonMixin],
|
||||
components: {
|
||||
|
||||
},
|
||||
created() {
|
||||
},
|
||||
components: {},
|
||||
created() {},
|
||||
data() {
|
||||
return {
|
||||
// 搜索区表单配置项
|
||||
|
|
@ -43,6 +115,23 @@ export default {
|
|||
// exportList: [],
|
||||
// 列表区配置项
|
||||
columnsList,
|
||||
powerList: [], // 杆塔数据源
|
||||
bindVisible: false,
|
||||
queryEdgeDeviceListApiTwo,
|
||||
bindPowerForm: {
|
||||
powerId: '',
|
||||
id: '',
|
||||
},
|
||||
|
||||
bindPowerFormRules: {
|
||||
powerId: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择需要绑定的杆塔',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
},
|
||||
// 弹框区配置项
|
||||
}
|
||||
},
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ module.exports = {
|
|||
proxy: {
|
||||
// detail: https://cli.vuejs.org/config/#devserver-proxy
|
||||
[process.env.VUE_APP_BASE_API]: {
|
||||
target: `http://192.168.2.12:18080`,
|
||||
target: `http://192.168.0.110:18080`,
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
["^" + process.env.VUE_APP_BASE_API]: "",
|
||||
|
|
|
|||
Loading…
Reference in New Issue