parent
a3774557d1
commit
a76fb07aab
|
@ -3,28 +3,43 @@
|
||||||
<div style="height: 100%; vertical-align: middle">
|
<div style="height: 100%; vertical-align: middle">
|
||||||
<div style="padding: 10px 15px">
|
<div style="padding: 10px 15px">
|
||||||
<span style="color: rgba(0, 0, 0, 0.4392156863); margin-right: 10px">区域:</span>
|
<span style="color: rgba(0, 0, 0, 0.4392156863); margin-right: 10px">区域:</span>
|
||||||
<a-tree-select v-model:value="value1" style="width: 200px"
|
<a-tree-select
|
||||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" placeholder="请选择" :tree-data="treedata"
|
v-model:value="value1"
|
||||||
labelInValue="true" :field-names="{
|
style="width: 200px"
|
||||||
|
:dropdown-style="{maxHeight: '400px', overflow: 'auto'}"
|
||||||
|
placeholder="请选择"
|
||||||
|
:tree-data="treedata"
|
||||||
|
labelInValue="true"
|
||||||
|
:field-names="{
|
||||||
children: 'children',
|
children: 'children',
|
||||||
value: 'title',
|
value: 'title',
|
||||||
label: 'title',
|
label: 'title'
|
||||||
}" tree-node-filter-prop="title">
|
}"
|
||||||
|
tree-node-filter-prop="title"
|
||||||
|
>
|
||||||
<template #suffixIcon>
|
<template #suffixIcon>
|
||||||
<SmileOutlined />
|
<SmileOutlined />
|
||||||
</template>
|
</template>
|
||||||
</a-tree-select>
|
</a-tree-select>
|
||||||
<span style="color: rgba(0, 0, 0, 0.4392156863); margin-right: 10px; margin-left: 20px">时间:</span>
|
<span style="color: rgba(0, 0, 0, 0.4392156863); margin-right: 10px; margin-left: 20px">时间:</span>
|
||||||
<el-date-picker v-model="value2" :disabled-date="disabledDate" type="datetimerange" range-separator="至"
|
<el-date-picker
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期" value-format="YYYY-MM-DD HH:mm:ss"
|
v-model="value2"
|
||||||
format="YYYY-MM-DD HH:mm:ss" date-format="YYYY/MM/DD ddd" time-format="A hh:mm:ss"
|
:disabled-date="disabledDate"
|
||||||
style="vertical-align: middle; width: 335px">
|
type="datetimerange"
|
||||||
|
range-separator="至"
|
||||||
|
start-placeholder="开始日期"
|
||||||
|
end-placeholder="结束日期"
|
||||||
|
value-format="YYYY-MM-DD HH:mm:ss"
|
||||||
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
|
date-format="YYYY/MM/DD ddd"
|
||||||
|
time-format="A hh:mm:ss"
|
||||||
|
style="vertical-align: middle; width: 335px"
|
||||||
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
<a-button type="primary" style="margin-left: 10px" @click="seach">查询</a-button>
|
<a-button type="primary" style="margin-left: 10px" @click="seach">查询</a-button>
|
||||||
</div>
|
</div>
|
||||||
<div style="margin: 5px auto; height: calc(100% - 116px); width: 100%; overflow: auto">
|
<div style="margin: 5px auto; height: calc(100% - 116px); width: 100%; overflow: auto">
|
||||||
<el-table :data="tableData" border="false" highlight-current-row="false" style="width: 100%"
|
<el-table :data="tableData" border="false" highlight-current-row="false" style="width: 100%" height="calc(100% )">
|
||||||
height="calc(100% )">
|
|
||||||
<el-table-column type="index" width="60" label="序号" fixed="left" align="center" />
|
<el-table-column type="index" width="60" label="序号" fixed="left" align="center" />
|
||||||
<!-- <el-table-column prop="timestamp" label="报警时间" align="center" show-overflow-tooltip width="170"/> -->
|
<!-- <el-table-column prop="timestamp" label="报警时间" align="center" show-overflow-tooltip width="170"/> -->
|
||||||
<el-table-column prop="timestamp" label="报警时间" align="center" show-overflow-tooltip width="170" />
|
<el-table-column prop="timestamp" label="报警时间" align="center" show-overflow-tooltip width="170" />
|
||||||
|
@ -55,8 +70,7 @@
|
||||||
<span v-else>未转发</span>
|
<span v-else>未转发</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="translateTime" label="转发110时间" align="center" show-overflow-tooltip
|
<el-table-column prop="translateTime" label="转发110时间" align="center" show-overflow-tooltip width="170" />
|
||||||
width="170" />
|
|
||||||
<el-table-column align="center" label="文件列表" width="90" fixed="right">
|
<el-table-column align="center" label="文件列表" width="90" fixed="right">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<a-button type="link" @click="fileinfo(scope.row)">查看</a-button>
|
<a-button type="link" @click="fileinfo(scope.row)">查看</a-button>
|
||||||
|
@ -68,21 +82,25 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<el-pagination style="position: absolute; right: 60px; margin-top: 10px"
|
<el-pagination style="position: absolute; right: 60px; margin-top: 10px" @current-change="handleCurrentChange2" :page-size="20" layout="total, prev, pager, next" :total="total2">
|
||||||
@current-change="handleCurrentChange2" :page-size="20" layout="total, prev, pager, next"
|
|
||||||
:total="total2">
|
|
||||||
</el-pagination>
|
</el-pagination>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-dialog title="文件列表" v-model="dialogVisible" width="30%" :before-close="handleClose">
|
<el-dialog title="文件列表" v-model="dialogVisible" width="30%" :before-close="handleClose">
|
||||||
<ul v-if="fileList">
|
<ul v-if="fileList">
|
||||||
<li v-if="fileList.length > 0" style="display: inline-block; margin-right: 5px"
|
<li v-if="fileList.length > 0" style="display: inline-block; margin-right: 5px" v-for="(item, index) in fileList">
|
||||||
v-for="(item, index) in fileList">
|
<el-image
|
||||||
<el-image style="width: 150px; height: 150px" v-if="item.type == 'image'" :src="item.url"
|
style="width: 150px; height: 150px"
|
||||||
:zoom-rate="1.2" :max-scale="7" :min-scale="0.2" :preview-src-list="[item.url]"
|
v-if="item.type == 'image'"
|
||||||
:initial-index="4" fit="cover" />
|
:src="item.url"
|
||||||
<video width="150" height="150" v-if="item.type == 'video'" :src="item.url" autoplay="autoplay"
|
:zoom-rate="1.2"
|
||||||
controls></video>
|
:max-scale="7"
|
||||||
|
:min-scale="0.2"
|
||||||
|
:preview-src-list="[item.url]"
|
||||||
|
:initial-index="4"
|
||||||
|
fit="cover"
|
||||||
|
/>
|
||||||
|
<video width="150" height="150" v-if="item.type == 'video'" :src="item.url" autoplay="true" controls></video>
|
||||||
</li>
|
</li>
|
||||||
<el-empty v-else :image-size="150"></el-empty>
|
<el-empty v-else :image-size="150"></el-empty>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -90,14 +108,14 @@
|
||||||
|
|
||||||
<!-- 详情 -->
|
<!-- 详情 -->
|
||||||
<el-dialog title="警情详情" v-model="dialogVisible1" width="60%" :before-close="handleClose">
|
<el-dialog title="警情详情" v-model="dialogVisible1" width="60%" :before-close="handleClose">
|
||||||
<div class="uploadBtn" style="text-align: right; margin-right: 10px">
|
<div class="uploadBtn" style="text-align: right; margin-right: 10px; margin-bottom: 5px">
|
||||||
<el-button type="primary" v-if="showdata.state != 'close'" @click="close(showdata)">关闭</el-button>
|
<el-button type="primary" v-if="showdata.state != 'close'" @click="close(showdata)">关闭</el-button>
|
||||||
<el-button type="primary" @click="onSubmit"><el-icon>
|
<el-button type="primary" @click="onSubmit"
|
||||||
<Download />
|
><el-icon> <Download /> </el-icon>下载</el-button
|
||||||
</el-icon>下载</el-button>
|
>
|
||||||
<el-button><el-icon>
|
<el-button
|
||||||
<Printer />
|
><el-icon> <Printer /> </el-icon>打印</el-button
|
||||||
</el-icon>打印</el-button>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-descriptions title="" border direction="" :column="2">
|
<el-descriptions title="" border direction="" :column="2">
|
||||||
|
@ -114,13 +132,19 @@
|
||||||
<el-descriptions-item label="推送110状态"><el-tag type="danger">失败</el-tag></el-descriptions-item>
|
<el-descriptions-item label="推送110状态"><el-tag type="danger">失败</el-tag></el-descriptions-item>
|
||||||
<el-descriptions-item label="文件列表">
|
<el-descriptions-item label="文件列表">
|
||||||
<ul v-if="fileList">
|
<ul v-if="fileList">
|
||||||
<li v-if="fileList.length > 0" style="display: inline-block; margin-right: 5px"
|
<li v-if="fileList.length > 0" style="display: inline-block; margin-right: 5px" v-for="(item, index) in fileList">
|
||||||
v-for="(item, index) in fileList">
|
<el-image
|
||||||
<el-image style="width: 150px; height: 150px" v-if="item.type == 'image'" :src="item.url"
|
style="width: 150px; height: 150px"
|
||||||
:zoom-rate="1.2" :max-scale="7" :min-scale="0.2" :preview-src-list="[item.url]"
|
v-if="item.type == 'image'"
|
||||||
:initial-index="4" fit="cover" />
|
:src="item.url"
|
||||||
<video width="150" height="150" v-if="item.type == 'video'" :src="item.url"
|
:zoom-rate="1.2"
|
||||||
autoplay="autoplay" controls></video>
|
:max-scale="7"
|
||||||
|
:min-scale="0.2"
|
||||||
|
:preview-src-list="[item.url]"
|
||||||
|
:initial-index="4"
|
||||||
|
fit="cover"
|
||||||
|
/>
|
||||||
|
<video width="150" height="150" v-if="item.type == 'video'" :src="item.url" autoplay="true" controls></video>
|
||||||
</li>
|
</li>
|
||||||
<el-empty v-else :image-size="150"></el-empty>
|
<el-empty v-else :image-size="150"></el-empty>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -142,21 +166,21 @@
|
||||||
seach()
|
seach()
|
||||||
gettreedata()
|
gettreedata()
|
||||||
})
|
})
|
||||||
const disabledDate = (time) => {
|
const disabledDate = (time: any) => {
|
||||||
return time.getTime() > Date.now() - 8.64e6
|
return time.getTime() > Date.now() - 8.64e6
|
||||||
}
|
}
|
||||||
//关闭
|
//关闭
|
||||||
const close = (info) => {
|
const close = (info: any) => {
|
||||||
api
|
api
|
||||||
.post('/multialarm/client/alarm_event/close', {
|
.post('/multialarm/client/alarm_event/close', {
|
||||||
eventId: info.multiAlarmId,
|
eventId: info.multiAlarmId
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
// console.log('关闭接口', res)
|
// console.log('关闭接口', res)
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
ElMessage({
|
ElMessage({
|
||||||
message: '关闭成功',
|
message: '关闭成功',
|
||||||
type: 'success',
|
type: 'success'
|
||||||
})
|
})
|
||||||
dialogVisible1.value = false
|
dialogVisible1.value = false
|
||||||
} else {
|
} else {
|
||||||
|
@ -173,7 +197,7 @@
|
||||||
const gettreedata = () => {
|
const gettreedata = () => {
|
||||||
api
|
api
|
||||||
.post('/common/client/user/org/tree', {
|
.post('/common/client/user/org/tree', {
|
||||||
name: localStorage.getItem('loginname'),
|
name: localStorage.getItem('loginname')
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log('过滤树', res)
|
console.log('过滤树', res)
|
||||||
|
@ -192,13 +216,13 @@
|
||||||
}
|
}
|
||||||
const fileList = ref([])
|
const fileList = ref([])
|
||||||
const ipcList = ref([])
|
const ipcList = ref([])
|
||||||
const fileinfo = (data) => {
|
const fileinfo = (data: any) => {
|
||||||
api
|
api
|
||||||
.post('/multialarm/client/alarm_event/get_all_resource', {
|
.post('/multialarm/client/alarm_event/get_all_resource', {
|
||||||
range: 1000,
|
range: 1000,
|
||||||
multiAlarmId: data.multiAlarmId,
|
multiAlarmId: data.multiAlarmId
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res: any) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
console.log('ress', res)
|
console.log('ress', res)
|
||||||
fileList.value = res.data.fileList
|
fileList.value = res.data.fileList
|
||||||
|
@ -208,24 +232,29 @@
|
||||||
dialogVisible.value = true
|
dialogVisible.value = true
|
||||||
}
|
}
|
||||||
const showdata = ref()
|
const showdata = ref()
|
||||||
const fileinfo1 = (data) => {
|
const fileinfo1 = (data: any) => {
|
||||||
showdata.value = data
|
showdata.value = data
|
||||||
dialogVisible1.value = true
|
dialogVisible1.value = true
|
||||||
}
|
}
|
||||||
const value2 = ref('')
|
const value2 = ref<any>('')
|
||||||
let value1 = ref('')
|
|
||||||
const tableData = ref([])
|
let value1 = ref<any>('')
|
||||||
|
const tableData = ref<any>([])
|
||||||
//查询
|
//查询
|
||||||
const pageNum2 = ref(1)
|
const pageNum2 = ref(1)
|
||||||
const handleCurrentChange2 = (data) => {
|
const handleCurrentChange2 = (data: any) => {
|
||||||
|
console.log(value2)
|
||||||
|
|
||||||
pageNum2.value = data
|
pageNum2.value = data
|
||||||
api
|
api
|
||||||
.post('/multialarm/client/sensor/alarm_event/getlist', {
|
.post('/multialarm/client/sensor/alarm_event/getlist', {
|
||||||
start: value2._rawValue[0],
|
// start: value2._rawValue[0],
|
||||||
end: value2._rawValue[1],
|
// end: value2._rawValue[1],
|
||||||
|
start: value2.value[0],
|
||||||
|
end: value2.value[1],
|
||||||
pagesize: 20,
|
pagesize: 20,
|
||||||
pageindex: data - 1,
|
pageindex: data - 1,
|
||||||
city: city == '湖南省' ? null : city,
|
city: city == '湖南省' ? null : city
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log('安保点位', res)
|
console.log('安保点位', res)
|
||||||
|
@ -236,28 +265,31 @@
|
||||||
}
|
}
|
||||||
const total2 = ref()
|
const total2 = ref()
|
||||||
const seach = () => {
|
const seach = () => {
|
||||||
|
console.log(value1)
|
||||||
|
|
||||||
if (value1.value == '' || value1.value == undefined) {
|
if (value1.value == '' || value1.value == undefined) {
|
||||||
} else {
|
} else {
|
||||||
city = value1.value.value
|
city = value1.value.value
|
||||||
}
|
}
|
||||||
|
|
||||||
api
|
api
|
||||||
.post('/multialarm/client/sensor/alarm_event/getcount', {
|
.post('/multialarm/client/sensor/alarm_event/getcount', {
|
||||||
start: value2._rawValue[0],
|
start: value2.value[0],
|
||||||
end: value2._rawValue[1],
|
end: value2.value[1],
|
||||||
city: city == '湖南省' ? null : city,
|
city: city == '湖南省' ? null : city
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res: any) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
total2.value = res.data.count
|
total2.value = res.data.count
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
api
|
api
|
||||||
.post('/multialarm/client/sensor/alarm_event/getlist', {
|
.post('/multialarm/client/sensor/alarm_event/getlist', {
|
||||||
start: value2._rawValue[0],
|
start: value2.value[0],
|
||||||
end: value2._rawValue[1],
|
end: value2.value[1],
|
||||||
pagesize: 20,
|
pagesize: 20,
|
||||||
pageindex: 0,
|
pageindex: 0,
|
||||||
city: city == '湖南省' ? null : city,
|
city: city == '湖南省' ? null : city
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
// console.log('警情管理', res)
|
// console.log('警情管理', res)
|
||||||
|
@ -266,6 +298,7 @@
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
const onSubmit = function () {}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
@ -275,46 +308,44 @@
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.demo-tabs>.el-tabs__content {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-descriptions) {
|
// :deep(.el-descriptions) {
|
||||||
width: 98%;
|
// width: 98%;
|
||||||
margin: 10px auto;
|
// margin: 10px auto;
|
||||||
text-align: center;
|
// text-align: center;
|
||||||
border: 1px solid #1F9BD9;
|
// border: 1px solid #1F9BD9;
|
||||||
|
|
||||||
--el-descriptions-table-border: {
|
// --el-descriptions-table-border: {
|
||||||
1px solid #1F9BD9
|
// 1px solid #1F9BD9
|
||||||
}
|
// }
|
||||||
|
|
||||||
;
|
// ;
|
||||||
|
|
||||||
--el-descriptions-item-bordered-label-background: {
|
// --el-descriptions-item-bordered-label-background: {
|
||||||
transparent
|
// transparent
|
||||||
}
|
// }
|
||||||
|
|
||||||
;
|
// ;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-descriptions__body) {
|
// :deep(.el-descriptions__body) {
|
||||||
background: transparent;
|
// background: transparent;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-descriptions__label) {
|
// :deep(.el-descriptions__label) {
|
||||||
width: 130px;
|
// width: 130px;
|
||||||
color: rgb(12, 214, 254);
|
// color: rgb(12, 214, 254);
|
||||||
background: transparent;
|
// background: transparent;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-descriptions__content.el-descriptions__cell.is-bordered-content) {
|
// :deep(.el-descriptions__content.el-descriptions__cell.is-bordered-content) {
|
||||||
color: #fff;
|
// color: #fff;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell) {
|
// :deep(.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell) {
|
||||||
border: 1px solid #1F9BD9;
|
// border: 1px solid #1F9BD9;
|
||||||
}
|
// }
|
||||||
|
|
||||||
.uploadBtn .el-button {
|
.uploadBtn .el-button {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
|
@ -332,37 +363,37 @@
|
||||||
border: 1px solid rgb(12, 214, 254);
|
border: 1px solid rgb(12, 214, 254);
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-dialog__body) {
|
// :deep(.el-dialog__body) {
|
||||||
padding: 10px;
|
// padding: 10px;
|
||||||
color: #fff;
|
// color: #fff;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-dialog) {
|
// :deep(.el-dialog) {
|
||||||
--el-dialog-bg-color: #071D4D;
|
// --el-dialog-bg-color: #071D4D;
|
||||||
border: 3px solid #387dbf;
|
// border: 3px solid #387dbf;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-dialog__header) {
|
// :deep(.el-dialog__header) {
|
||||||
padding: 13px;
|
// padding: 13px;
|
||||||
border-bottom: 1px solid #3374b4 !important;
|
// border-bottom: 1px solid #3374b4 !important;
|
||||||
margin-right: 0px;
|
// margin-right: 0px;
|
||||||
}
|
// }
|
||||||
|
|
||||||
:deep(.el-dialog__title) {
|
// :deep(.el-dialog__title) {
|
||||||
color: #067bc1 !important;
|
// color: #067bc1 !important;
|
||||||
font-weight: 500;
|
// font-weight: 500;
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
// :deep(.el-dialog__headerbtn .el-dialog__close) {
|
||||||
|
// color: #fff;
|
||||||
|
// font-weight: 500;
|
||||||
|
// font-size: 18px;
|
||||||
|
// }
|
||||||
:deep(.el-input__inner) {
|
:deep(.el-input__inner) {
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-dialog__headerbtn .el-dialog__close) {
|
|
||||||
color: #fff;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-tabs__nav-wrap::after) {
|
:deep(.el-tabs__nav-wrap::after) {
|
||||||
background-color: #d9d9d95e;
|
background-color: #d9d9d95e;
|
||||||
height: 4px;
|
height: 4px;
|
||||||
|
|
Loading…
Reference in New Issue