Merge branch 'hi-ucs-dev' of http://192.168.124.50:3000/wuhongjian/hi-ucs into hi-ucs-dev
This commit is contained in:
commit
ffbf434cd7
|
@ -8,8 +8,8 @@
|
|||
var _global = {}
|
||||
var CONFIGITEM = {
|
||||
// version: 'qingdao', //青岛
|
||||
version: 'xihaian', // 西海岸
|
||||
//version: 'dev', // 开发
|
||||
// version: 'xihaian', // 西海岸
|
||||
version: 'dev', // 开发
|
||||
// version: 'zhanTingDev', // 展厅dev (2022-09-13:姜永超让添加)
|
||||
// version: 'qingdao', // 测试
|
||||
//version: 'frp', // 内网穿透
|
||||
|
@ -30,7 +30,8 @@ var CONFIGITEM = {
|
|||
apiURL: 'http://15.72.183.90:8000/ucs-admin',
|
||||
websocketURL: '15.72.183.90:8000/ucs-admin',
|
||||
// websocketURL: '192.168.124.233:8888/ucs-admin',
|
||||
POI_URL: 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
// 研发展厅
|
||||
zhanTingDev: {
|
||||
|
@ -48,7 +49,8 @@ var CONFIGITEM = {
|
|||
// websocketURL: '10.16.5.146:8888/ucs-admin', // 姜永超
|
||||
websocketURL: '10.18.1.99:8889/ucs-admin',
|
||||
// websocketURL: '10.16.5.35:8888/ucs-admin',
|
||||
POI_URL: 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
// 西海岸大数据局
|
||||
xihaian: {
|
||||
|
@ -67,12 +69,12 @@ var CONFIGITEM = {
|
|||
},
|
||||
backUrl: 'http://10.134.135.9:9797',
|
||||
previewUrl: 'http://10.134.135.9:9796/',
|
||||
apiURL: 'http://10.134.135.92:8888/renren-admin',
|
||||
// websocketURL: '10.134.135.9:8888/ucs-admin', // 正式环境
|
||||
websocketURL: '10.134.135.92:8888/ucs-admin', // 测试环境
|
||||
//websocketURL: '192.168.124.254:8888/ucs-admin', // 李志成-远雄
|
||||
// websocketURL: '10.134.135.92:8888/ucs-admin', // 测试环境
|
||||
websocketURL: '192.168.124.254:8888/ucs-admin', // 李志成-远雄
|
||||
// websocketURL: '10.18.1.99:8889/ucs-admin', // 研发
|
||||
POI_URL: 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
// 开发
|
||||
dev: {
|
||||
|
@ -88,7 +90,8 @@ var CONFIGITEM = {
|
|||
apiURL: 'http://192.168.124.243:8888/ucs-admin',
|
||||
websocketURL: '192.168.124.243:8888/ucs-admin',
|
||||
// websocketURL: '10.18.1.99:8889/ucs-admin',
|
||||
POI_URL: 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
// 测试
|
||||
test: {
|
||||
|
@ -102,7 +105,8 @@ var CONFIGITEM = {
|
|||
backUrl: 'http://192.168.124.243:9797',
|
||||
previewUrl: 'http://192.168.124.243:9796/',
|
||||
websocketURL: '192.168.124.243:8888/ucs-admin',
|
||||
POI_URL: 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
// 内网穿透
|
||||
frp: {
|
||||
|
@ -116,7 +120,8 @@ var CONFIGITEM = {
|
|||
backUrl: 'http://124.222.94.39:9797',
|
||||
previewUrl: 'http://124.222.94.39:9796/',
|
||||
websocketURL: '124.222.94.39:8888/ucs-admin',
|
||||
POI_URL: 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
|
@ -113,6 +113,15 @@ export function getPlaceType() {
|
|||
config2
|
||||
)
|
||||
}
|
||||
|
||||
//西海岸 根据标签树查询视频列表
|
||||
export function CameraConditionPlaceType(params) {
|
||||
return axios.post(
|
||||
'http://10.134.135.92:9537/data_service/getCamera/CameraConditionPlaceType',
|
||||
params,
|
||||
config2
|
||||
)
|
||||
}
|
||||
// 西海岸--获取摄像头列表的后台地址 (测试环境地址:10.134.135.92:9537)
|
||||
let _cameraUrl =
|
||||
(_global &&
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-01 19:19:40
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-11-19 14:53:29
|
||||
* @LastEditTime: 2022-11-21 16:35:03
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
|
@ -556,3 +556,19 @@ export function willApplyCameraBatchDelete(data) {
|
|||
data,
|
||||
})
|
||||
}
|
||||
// 西海岸基础设施已申请列表
|
||||
export function getApplyCameraListXha(data) {
|
||||
return request({
|
||||
url: '/processForm/tabilityapplication/getApplyCameraList',
|
||||
method: 'get',
|
||||
data,
|
||||
})
|
||||
}
|
||||
// 西海岸基础设施已申请列表删除
|
||||
export function delApplyCamera(data) {
|
||||
return request({
|
||||
url: '/processForm/tabilityapplication/delApplyCamera',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
|
|
@ -143,6 +143,7 @@
|
|||
show-size-changer
|
||||
show-less-items
|
||||
show-quick-jumper
|
||||
:showTotal="total => `共 ${total} 项`"
|
||||
:total="resourceTotal"
|
||||
:page-size-options="pageSizeOptions"
|
||||
@change="pageChange"
|
||||
|
@ -2065,7 +2066,7 @@
|
|||
background: rgba(245, 243, 243, 0.3);
|
||||
|
||||
.details-pageconetent-left {
|
||||
max-height: 6.9rem;
|
||||
max-height: 8.5rem;
|
||||
position: absolute;
|
||||
width: 2.5rem;
|
||||
top: 0.17rem;
|
||||
|
|
|
@ -237,6 +237,7 @@
|
|||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { willApplyCameraBatchDelete } from '@/api/home'
|
||||
import AbilityToApplyFor from './AbilityToApplyFor.vue'
|
||||
import HomeHeader from '@/views/home/components/header'
|
||||
import { reactive, ref, watch, onBeforeUnmount } from 'vue'
|
||||
|
@ -656,6 +657,7 @@
|
|||
if (item.note1 && typeof item.note1 == 'string') {
|
||||
item.note1 = JSON.parse(item.note1)
|
||||
}
|
||||
let delArr = []
|
||||
item.note1 &&
|
||||
item.note1.map((jcss) => {
|
||||
if (!jcss) {
|
||||
|
@ -678,15 +680,22 @@
|
|||
}
|
||||
// 西海岸
|
||||
if (isXiHaiAn.value) {
|
||||
// _itemData.resourceId = jcss.channelId
|
||||
_itemData.managementUnitName = jcss.managementUnitName
|
||||
_itemData.cameraPointTypeName = jcss.cameraPointTypeName
|
||||
delArr.push(jcss.id)
|
||||
}
|
||||
obj.system.push(_itemData)
|
||||
})
|
||||
submitApply(obj).then((res) => {
|
||||
// applySuccess.value = false
|
||||
console.log('摄像头申请================>', res)
|
||||
if (item.id) {
|
||||
if (res.data.msg == 'success') {
|
||||
if (delArr.length > 0) {
|
||||
willApplyCameraBatchDelete(delArr).then((res) => {
|
||||
jumpToDetailsPageconetent()
|
||||
})
|
||||
} else if (item.id) {
|
||||
sgcDel({ ids: [item.id] }).then((res1) => {
|
||||
if (res1.data.msg === 'success') {
|
||||
if (falgNum == 0 && sxt) {
|
||||
|
@ -704,6 +713,7 @@
|
|||
}
|
||||
jumpToDetailsPageconetent()
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -956,7 +966,7 @@
|
|||
}
|
||||
</script>
|
||||
<style scoped lang="less">
|
||||
#apply-container {
|
||||
#apply-container {
|
||||
// background-color: #f5f8fc;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
|
@ -1035,9 +1045,9 @@
|
|||
font-weight: bold;
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.applicationScene {
|
||||
.applicationScene {
|
||||
:deep(.ant-select-selector) {
|
||||
overflow-x: scroll;
|
||||
}
|
||||
|
@ -1045,20 +1055,20 @@
|
|||
:deep(.ant-select-selection-overflow) {
|
||||
flex-wrap: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
textarea {
|
||||
textarea {
|
||||
resize: none;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
.bottom-btn {
|
||||
.bottom-btn {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
// position: fixed;
|
||||
}
|
||||
}
|
||||
|
||||
.cancel-apply {
|
||||
.cancel-apply {
|
||||
width: 80px;
|
||||
height: 38px;
|
||||
margin-right: 20px;
|
||||
|
@ -1069,9 +1079,9 @@ textarea {
|
|||
border: none;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
.confirm-apply {
|
||||
.confirm-apply {
|
||||
width: 80px;
|
||||
height: 38px;
|
||||
background: #0087ff;
|
||||
|
@ -1081,5 +1091,5 @@ textarea {
|
|||
border: none;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -40,6 +40,10 @@
|
|||
:pageSize="5"
|
||||
:total="props.resourceTotal"
|
||||
show-less-items
|
||||
show-size-changer
|
||||
show-quick-jumper
|
||||
:page-size-options="pageSizeOptions"
|
||||
:showTotal="total => `共 ${total} 项`"
|
||||
@change="handleCurrentChange"
|
||||
:showSizeChanger="false"
|
||||
/>
|
||||
|
@ -56,6 +60,7 @@
|
|||
resourceList: { type: Array, default: null },
|
||||
resourceTotal: { type: String, default: '' },
|
||||
})
|
||||
const pageSizeOptions = ref(['5', '10', '20', '50'])
|
||||
console.log('props==========>', props)
|
||||
// 知识库
|
||||
const zskState = reactive({
|
||||
|
|
|
@ -108,6 +108,8 @@
|
|||
<div v-for="(item, index) in biaoqianList">
|
||||
<div class="titleName">{{ item.placeTypeName }}</div>
|
||||
<div class="glgkmk" v-for="(child, index) in item.children">
|
||||
<a-tooltip placement="topLeft">
|
||||
<template #title>{{ child.placeTypeName }}</template>
|
||||
<div
|
||||
class="glgknum"
|
||||
:class="{ active: child.placeTypeCode == chooseId }"
|
||||
|
@ -115,6 +117,8 @@
|
|||
>
|
||||
{{ child.placeTypeName }}
|
||||
</div>
|
||||
</a-tooltip>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -123,7 +127,8 @@
|
|||
<script>
|
||||
import { defineComponent, ref, watch } from 'vue'
|
||||
import { getCameraAllOrgan } from '@/api/videoSurveillance'
|
||||
import { getCameraInfoByAreaId } from '@/api/file'
|
||||
|
||||
import { getCameraInfoByAreaId ,getPlaceType} from '@/api/file'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { UpOutlined, DownOutlined } from '@ant-design/icons-vue'
|
||||
|
@ -148,6 +153,9 @@ export default defineComponent({
|
|||
//选择标签内容
|
||||
const tabClick = (id) => {
|
||||
chooseId.value = id
|
||||
let placeTypeCode =[]
|
||||
placeTypeCode.push(id)
|
||||
mybus.emit('CameraConditionPlaceType', placeTypeCode)
|
||||
}
|
||||
// 初始化
|
||||
const init = async () => {
|
||||
|
@ -159,6 +167,7 @@ export default defineComponent({
|
|||
select = ''
|
||||
}
|
||||
if (select == '基础设施') {
|
||||
|
||||
let res = {}
|
||||
if (whoShow1.value && !whoShow1.value.itShowXiHaiAn) {
|
||||
res = await getCameraAllOrgan({ parentId: 'S4NbecfYB1DBH8HNULGS34' })
|
||||
|
@ -169,24 +178,10 @@ export default defineComponent({
|
|||
})
|
||||
}
|
||||
treeData.value = (res.data && res.data.data) || []
|
||||
let tabs={}
|
||||
tabs = await getPlaceType()
|
||||
//获取标签列表=========
|
||||
biaoqianList.value = [
|
||||
{
|
||||
placeTypeName: '政府机构',
|
||||
children: [
|
||||
{ placeTypeName: '行政中心', placeTypeCode: '1' },
|
||||
{ placeTypeName: '行政中心', placeTypeCode: '12' },
|
||||
{ placeTypeName: '行政中心', placeTypeCode: '14' },
|
||||
],
|
||||
},
|
||||
{
|
||||
placeTypeName: '政府机构1',
|
||||
children: [
|
||||
{ placeTypeName: '行政中心', placeTypeCode: '2' },
|
||||
{ placeTypeName: '行政中心', placeTypeCode: '3' },
|
||||
],
|
||||
},
|
||||
]
|
||||
biaoqianList.value =(tabs.data && tabs.data.data) || []
|
||||
// 只有一个,默认展开到二级菜单
|
||||
if (res.data && res.data.data.length == 1) {
|
||||
showBottom(treeData.value[0])
|
||||
|
@ -196,12 +191,16 @@ export default defineComponent({
|
|||
mybus.on('getDeptList', () => {
|
||||
init()
|
||||
})
|
||||
|
||||
mybus.on('clearChoose', () => {
|
||||
selectId.value=''
|
||||
chooseId.value=''
|
||||
})
|
||||
const onSelect = async (item, val, child) => {
|
||||
let res = {}
|
||||
if (whoShow1.value && !whoShow1.value.itShowXiHaiAn) {
|
||||
res = await getCameraAllOrgan({ parentId: val.id })
|
||||
} else {
|
||||
mybus.emit('getCameraByParentId', val.id)
|
||||
// 西海岸
|
||||
res = await getCameraInfoByAreaId({ areaId: val.id })
|
||||
}
|
||||
|
@ -274,7 +273,7 @@ export default defineComponent({
|
|||
},
|
||||
beforeUnmount() {
|
||||
mybus.off('getDeptList')
|
||||
console.log('getDeptList销毁~~~~~~~~~~~~~~~~~~~')
|
||||
mybus.off('clearChoose')
|
||||
},
|
||||
components: {
|
||||
UpOutlined,
|
||||
|
@ -285,24 +284,33 @@ export default defineComponent({
|
|||
<style lang="less" scoped>
|
||||
.titleName {
|
||||
font-size: 18px;
|
||||
color: #1e1a1a;
|
||||
color: #7e7676;
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
border-left: 6px solid #1296db;
|
||||
}
|
||||
.glgkmk {
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
text-align: left;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 30%;
|
||||
width: 45%;
|
||||
margin-bottom: 10px;
|
||||
margin-left: 10px;
|
||||
|
||||
.glgknum {
|
||||
// width: 100px;
|
||||
// color: #000000;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 1;
|
||||
-webkit-box-orient: vertical;
|
||||
word-break: break-all;
|
||||
}
|
||||
.active {
|
||||
color: #0058e1;
|
||||
}
|
||||
.glgknum {
|
||||
// color: #000000;
|
||||
}
|
||||
}
|
||||
|
||||
.glgkmk :hover {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: Light
|
||||
* @Date: 2022-11-18 11:53:43
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-11-19 17:15:15
|
||||
* @LastEditTime: 2022-11-21 17:51:38
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<template>
|
||||
|
@ -17,30 +17,46 @@
|
|||
{{ item.channelName }}
|
||||
</a-tooltip>
|
||||
</div>
|
||||
<a-button type="link" danger @click="delWillApplyCamera(item.id)">
|
||||
移出
|
||||
</a-button>
|
||||
<a-popconfirm
|
||||
:title="'是否移出' + item.channelName + '?'"
|
||||
ok-text="是"
|
||||
cancel-text="否"
|
||||
@confirm="delWillApplyCamera(item.id)"
|
||||
>
|
||||
<a-button type="link" danger>移出</a-button>
|
||||
</a-popconfirm>
|
||||
</a-list-item>
|
||||
</template>
|
||||
<template #header>
|
||||
<div class="title">待申请列表</div>
|
||||
</template>
|
||||
<template #footer>
|
||||
<a-button type="primary">一键申请</a-button>
|
||||
<a-button type="primary" @click="apply">一键申请</a-button>
|
||||
</template>
|
||||
</a-list>
|
||||
</div>
|
||||
<div class="bottom">
|
||||
<a-list size="small" bordered :data-source="data">
|
||||
<a-list size="small" bordered :data-source="dataList.requested">
|
||||
<template #renderItem="{ item }">
|
||||
<a-list-item>
|
||||
<div class="name">
|
||||
<a-tooltip>
|
||||
<template #title>{{ item }}</template>
|
||||
{{ item }}
|
||||
<template #title>{{ item.cameraInfo.channelName }}</template>
|
||||
{{ item.cameraInfo.channelName }}
|
||||
</a-tooltip>
|
||||
</div>
|
||||
<a-popconfirm
|
||||
v-if="item.approveStatus == '通过'"
|
||||
:title="'是否删除' + item.cameraInfo.channelName + '?'"
|
||||
ok-text="是"
|
||||
cancel-text="否"
|
||||
@confirm="deleteApply(item)"
|
||||
>
|
||||
<a-button type="link" danger>删除</a-button>
|
||||
</a-popconfirm>
|
||||
<a-button v-else type="link" danger @click="deleteApply(item)">
|
||||
删除
|
||||
</a-button>
|
||||
</a-list-item>
|
||||
</template>
|
||||
<template #header>
|
||||
|
@ -49,20 +65,63 @@
|
|||
</a-list>
|
||||
</div>
|
||||
</div>
|
||||
<a-modal
|
||||
:width="800"
|
||||
v-model:visible="visible"
|
||||
title="删除申请"
|
||||
@ok="handleOk"
|
||||
@cancel="clear"
|
||||
>
|
||||
<p>本次申请的摄像头包含以下{{ showArr.length }}个摄像头,是否删除申请?</p>
|
||||
<a-table :columns="columns" :data-source="showArr">
|
||||
<template #bodyCell="{ column, text }">
|
||||
<template v-if="column.dataIndex === 'name'">
|
||||
<a>{{ text }}</a>
|
||||
</template>
|
||||
</template>
|
||||
</a-table>
|
||||
</a-modal>
|
||||
</template>
|
||||
<script setup>
|
||||
import {
|
||||
willApplyCameraSelect,
|
||||
willApplyCameraBatchInsert,
|
||||
willApplyCameraBatchDelete,
|
||||
getApplyCameraListXha,
|
||||
delApplyCamera,
|
||||
} from '@/api/home'
|
||||
import { endProcess } from '@/api/personalCenter.js'
|
||||
import { onBeforeUnmount, reactive, ref } from 'vue'
|
||||
import { message } from 'ant-design-vue'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import { useRouter } from 'vue-router'
|
||||
const dataList = reactive({ toBeApplied: [], requested: [] })
|
||||
// 待办
|
||||
const addWacFlag = ref(true)
|
||||
const delWacFlag = ref(true)
|
||||
const delApply = ref(true)
|
||||
const visible = ref(false)
|
||||
const instanceId = ref('')
|
||||
const showArr = ref({})
|
||||
const columns = [
|
||||
{
|
||||
title: '名称',
|
||||
dataIndex: 'channelName',
|
||||
key: 'channelName',
|
||||
},
|
||||
{
|
||||
title: '地址',
|
||||
dataIndex: 'managementUnitName',
|
||||
key: 'managementUnitName',
|
||||
},
|
||||
{
|
||||
title: '类型',
|
||||
dataIndex: 'cameraPointTypeName',
|
||||
key: 'cameraPointTypeName',
|
||||
ellipsis: true,
|
||||
},
|
||||
]
|
||||
const router = useRouter()
|
||||
const delWillApplyCamera = (id) => {
|
||||
console.log('删除===>', id)
|
||||
if (delWacFlag.value) {
|
||||
|
@ -77,6 +136,86 @@
|
|||
})
|
||||
}
|
||||
}
|
||||
const apply = () => {
|
||||
let obj = {
|
||||
arr: [
|
||||
{
|
||||
checked: true,
|
||||
delFlag: 0,
|
||||
id: '1593084734789996545',
|
||||
idtCameraChannel: '790582098133127168',
|
||||
loading: false,
|
||||
note1: '',
|
||||
resourceId: '1522550195055828996',
|
||||
resourceName: '摄像头列表',
|
||||
type: '基础设施',
|
||||
},
|
||||
],
|
||||
deptName: '西海岸新区工业和信息化局',
|
||||
deptId: '732560225344761856',
|
||||
}
|
||||
dataList.toBeApplied.map((val) => {
|
||||
val.type = '基础设施'
|
||||
val.delFlag = 0
|
||||
val.resourceId = val.channelId
|
||||
val.resourceName = val.channelName
|
||||
// obj.arr.push(val)
|
||||
})
|
||||
obj.arr[0].note1 = JSON.stringify(dataList.toBeApplied)
|
||||
if (obj.arr.length > 0) {
|
||||
console.log('一键申请===================>', obj)
|
||||
localStorage.setItem('applyList', JSON.stringify([obj]))
|
||||
router.push({
|
||||
path: '/apply',
|
||||
})
|
||||
}
|
||||
}
|
||||
// 删除已申请
|
||||
const deleteApply = (item) => {
|
||||
console.log('删除========>', item)
|
||||
if (delApply.value) {
|
||||
delApply.value = false
|
||||
switch (item.approveStatus) {
|
||||
case '审核中':
|
||||
visible.value = true
|
||||
instanceId.value = item.instanceId
|
||||
showArr.value = []
|
||||
dataList.requested.map((val) => {
|
||||
if (val.instanceId == item.instanceId) {
|
||||
showArr.value.push(val.cameraInfo)
|
||||
}
|
||||
})
|
||||
break
|
||||
case '通过':
|
||||
delApplyCamera([item.id]).then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
message.success('删除成功')
|
||||
} else {
|
||||
message.warning('删除失败')
|
||||
}
|
||||
initApply()
|
||||
})
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
const handleOk = () => {
|
||||
endProcess({ instanceId: instanceId.value }).then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
message.success('删除成功')
|
||||
} else {
|
||||
message.warning('删除失败')
|
||||
}
|
||||
initApply()
|
||||
visible.value = false
|
||||
})
|
||||
}
|
||||
const clear = () => {
|
||||
instanceId.value = ''
|
||||
showArr.value = []
|
||||
visible.value = false
|
||||
delApply.value = true
|
||||
}
|
||||
const init = () => {
|
||||
willApplyCameraSelect().then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
|
@ -89,10 +228,25 @@
|
|||
}
|
||||
})
|
||||
}
|
||||
const initApply = () => {
|
||||
getApplyCameraListXha().then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
res.data.data.map((val) => {
|
||||
val.cameraInfo = JSON.parse(val.cameraInfo)
|
||||
})
|
||||
dataList.requested = res.data.data
|
||||
delApply.value = true
|
||||
} else {
|
||||
message.warning('查询失败')
|
||||
dataList.requested = []
|
||||
}
|
||||
})
|
||||
}
|
||||
init()
|
||||
initApply()
|
||||
mybus.on('selectCamera', (obj) => {
|
||||
// 判断最多10条
|
||||
if (dataList.toBeApplied.length + dataList.requested.length > 10) {
|
||||
if (dataList.toBeApplied.length + dataList.requested.length >= 10) {
|
||||
message.warning('最多只能申请10个摄像头!')
|
||||
return
|
||||
}
|
||||
|
@ -127,19 +281,6 @@
|
|||
onBeforeUnmount(() => {
|
||||
mybus.off('selectCamera')
|
||||
})
|
||||
|
||||
const data = [
|
||||
'Racing car sprays burning fuel into crowd.',
|
||||
'Japanese princess to wed commoner.',
|
||||
'Australian walks 100km after outback crash.',
|
||||
'Man charged over missing wedding girl.',
|
||||
'Los Angeles battles huge wildfires.',
|
||||
'Racing car sprays burning fuel into crowd.',
|
||||
'Japanese princess to wed commoner.',
|
||||
'Australian walks 100km after outback crash.',
|
||||
'Man charged over missing wedding girl.',
|
||||
'Los Angeles battles huge wildfires.',
|
||||
]
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.infrastructureApplication {
|
||||
|
@ -168,10 +309,12 @@
|
|||
justify-content: flex-end;
|
||||
}
|
||||
:deep(.ant-list-items) {
|
||||
width: 2.5rem;
|
||||
height: 2.45rem;
|
||||
overflow-y: scroll;
|
||||
}
|
||||
:deep(.ant-spin-nested-loading) {
|
||||
width: 2.5rem;
|
||||
height: 2.45rem;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -128,16 +128,21 @@
|
|||
预约
|
||||
</a-button>
|
||||
</div>
|
||||
|
||||
<!-- <div class="flex-space" style="justify-content: center;display:flex;height:40px;align-items:center;"> -->
|
||||
<a-pagination
|
||||
v-model:current="roomPage"
|
||||
v-model:pageSize="roomLimit"
|
||||
show-quick-jumper
|
||||
:showTotal="total => `共 ${total} 项`"
|
||||
:total="roomTotal"
|
||||
:page-size-options="pageSizeOptions"
|
||||
@change="onRoomChange"
|
||||
@showSizeChange="onShowSizeChange"
|
||||
show-size-changer
|
||||
/>
|
||||
<!-- <el-button @click="onOkChange" class="queding" >确认</el-button>
|
||||
</div> -->
|
||||
</div>
|
||||
<div v-if="roomResult" style="display: grid">
|
||||
<a-table
|
||||
|
@ -1440,10 +1445,14 @@
|
|||
}
|
||||
}
|
||||
//分页
|
||||
const onRoomChange = (pageNumber) => {
|
||||
const onRoomChange = () => {
|
||||
roomPage.value = pageNumber
|
||||
searchData()
|
||||
}
|
||||
const onOkChange = () => {
|
||||
current.value = roomPage.value
|
||||
searchData()
|
||||
}
|
||||
const onShowSizeChange = (current, pageSize) => {
|
||||
roomLimit.value = pageSize
|
||||
searchData()
|
||||
|
@ -2471,6 +2480,16 @@
|
|||
})
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.queding{
|
||||
margin-left: 16px;
|
||||
cursor: pointer;
|
||||
background: #0058e1;
|
||||
color: #ffffff;
|
||||
width: 56px;
|
||||
border-radius: 2px;
|
||||
border: 1px #0058e1 solid;
|
||||
margin-top: 17px;
|
||||
}
|
||||
.infrastructrueBox {
|
||||
padding: 0.2rem;
|
||||
background: #ffffff;
|
||||
|
@ -2803,13 +2822,11 @@
|
|||
}
|
||||
}
|
||||
|
||||
:deep(.ant-pagination) {
|
||||
float: right;
|
||||
}
|
||||
|
||||
:deep(.ant-pagination) {
|
||||
text-align: end;
|
||||
}
|
||||
|
||||
// :deep(.ant-pagination) {
|
||||
// text-align: end;
|
||||
// }
|
||||
}
|
||||
:deep(.ant-table-thead > tr > th) {
|
||||
color: #5580f7 !important;
|
||||
|
|
|
@ -2579,7 +2579,7 @@
|
|||
}
|
||||
|
||||
:deep(.ant-pagination) {
|
||||
float: right;
|
||||
float: center;
|
||||
}
|
||||
|
||||
:deep(.ant-pagination) {
|
||||
|
|
|
@ -35,18 +35,30 @@
|
|||
<el-option label="兴趣点" value="1" />
|
||||
<el-option label="点位" value="2" />
|
||||
</el-select>
|
||||
<el-input
|
||||
<el-autocomplete
|
||||
v-if="addressType==1"
|
||||
v-model="address"
|
||||
:fetch-suggestions="querySearch"
|
||||
clearable
|
||||
class="input-with-select"
|
||||
placeholder="请输入关键字"
|
||||
@select="
|
||||
(addressItem) => {
|
||||
selectedAddress(addressItem, i)
|
||||
}
|
||||
"
|
||||
/>
|
||||
<!-- <el-input
|
||||
v-model="address"
|
||||
placeholder="请输入关键词"
|
||||
class="input-with-select"
|
||||
@keyup.enter="handleEnter"
|
||||
>
|
||||
</el-input>
|
||||
</el-input> -->
|
||||
<el-autocomplete
|
||||
v-else-if="addressType==2"
|
||||
v-model="address"
|
||||
placeholder="请输入地址"
|
||||
placeholder="请输入关键字"
|
||||
:fetch-suggestions="
|
||||
(queryString, cb) => {
|
||||
searchAddressByKeyWord(queryString, cb, i)
|
||||
|
@ -108,7 +120,7 @@ import { ElMessage } from 'element-plus'
|
|||
selectByLabelName,
|
||||
selectByChannelName,
|
||||
} from '@/api/videoSurveillance'
|
||||
import { getCameraByCondition,getListForPOI } from '@/api/file'
|
||||
import { getCameraByCondition,getListForPOI,CameraConditionPlaceType } from '@/api/file'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import * as turf from '@turf/turf';
|
||||
|
||||
|
@ -149,6 +161,7 @@ import { ElMessage } from 'element-plus'
|
|||
type: 0, //0是无,1画圆,2不规则
|
||||
},
|
||||
pointAllData:[],
|
||||
restaurants:[],
|
||||
}
|
||||
},
|
||||
components: {
|
||||
|
@ -205,10 +218,63 @@ import { ElMessage } from 'element-plus'
|
|||
mybus.on('cameraDataOnMap', (data) => {
|
||||
this.addResourceTomap('videoMap', data)
|
||||
})
|
||||
//行政区划点击查询摄像头
|
||||
mybus.off('CameraConditionPlaceType')
|
||||
mybus.on('CameraConditionPlaceType', (data) => {
|
||||
this.queryCameraConditionPlace(data)
|
||||
|
||||
})
|
||||
},
|
||||
methods: { // 查询
|
||||
handleEnter(){
|
||||
methods: {
|
||||
//查询标签视频
|
||||
queryCameraConditionPlace(data) {
|
||||
let params = {
|
||||
placeTypeCode: data,
|
||||
pageNum: "1",
|
||||
pageSize: 30000,
|
||||
}
|
||||
CameraConditionPlaceType(params).then((res) => {
|
||||
this.addResourceTomap('videoMap', res.data.data)
|
||||
})
|
||||
},
|
||||
// 查询
|
||||
querySearch (queryString, cb) {
|
||||
console.log('querySearch',queryString, cb,this.restaurants)
|
||||
if(queryString){
|
||||
getListForPOI({keywords:queryString}).then(res => {
|
||||
if(res.data.data.rows[0]){
|
||||
res.data.data.rows.map( val =>{
|
||||
let arr = val.location.split(',')
|
||||
val.location = {y:arr[1],x:arr[0]}
|
||||
val.value = val.name
|
||||
})
|
||||
const results =res.data.data.rows
|
||||
cb(results)
|
||||
}else{
|
||||
ElMessage({
|
||||
showClose: true,
|
||||
message: '未查询到兴趣点!',
|
||||
type: 'warning',
|
||||
})
|
||||
}
|
||||
})
|
||||
}else{
|
||||
cb([])
|
||||
}
|
||||
// const results = queryString
|
||||
// ? this.restaurants.filter(createFilter(queryString))
|
||||
// : this.restaurants
|
||||
// call callback function to return suggestions
|
||||
},
|
||||
createFilter (queryString) {
|
||||
return (restaurant) => {
|
||||
return (
|
||||
restaurant.toLowerCase().indexOf(queryString.toLowerCase()) === 0
|
||||
)
|
||||
}
|
||||
},
|
||||
// 查询
|
||||
handleEnter(queryString, cb){
|
||||
console.log('查询',this.address,this.addressType)
|
||||
if(this.address){
|
||||
getListForPOI({keywords:this.address}).then(res => {
|
||||
|
@ -233,6 +299,8 @@ import { ElMessage } from 'element-plus'
|
|||
}
|
||||
},
|
||||
selectedAddress(item, index) {
|
||||
mybus.emit('clearChoose')
|
||||
this.getCameraAllPage()
|
||||
// 跳转到相应经纬度
|
||||
console.log('跳转', item)
|
||||
const latLng = {
|
||||
|
@ -380,9 +448,9 @@ import { ElMessage } from 'element-plus'
|
|||
// 初始化地址匹配服务
|
||||
initAddressMatchService() {
|
||||
this.L = window.L || {}
|
||||
this.addressMatchService = L.supermap.addressMatchService(
|
||||
this.addressMatchUrl
|
||||
)
|
||||
// this.addressMatchService = L.supermap.addressMatchService(
|
||||
// this.addressMatchUrl
|
||||
// )
|
||||
},
|
||||
areaMode(){
|
||||
// 转换不规则形状模式
|
||||
|
@ -446,28 +514,32 @@ import { ElMessage } from 'element-plus'
|
|||
},
|
||||
//查询地址建议匹配
|
||||
async searchAddressByKeyWord(queryString, cb, indexX) {
|
||||
this.disasterPointIndex = indexX
|
||||
/* const res = await bdPlaceSearch({ searchKey: queryString });
|
||||
if (res.data) {
|
||||
for(var i=0;i<res.data.length;i++){
|
||||
res.data[i].value = res.data[i].name;
|
||||
}
|
||||
cb(res.data);
|
||||
}*/
|
||||
const match = function (obj) {
|
||||
//console.log('ooooo',obj);
|
||||
obj.result.map((item) => {
|
||||
item.value = item.address
|
||||
console.log('querySearch',queryString, cb,this.restaurants)
|
||||
if(queryString){
|
||||
getCameraByCondition({
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
regionId: "70be8c5b664f4bcf869d82f2e8335051",
|
||||
type: "0",
|
||||
name:queryString,
|
||||
}).then(res => {
|
||||
if(res.data.data[0]){
|
||||
res.data.data.map( val =>{
|
||||
val.location = {y:val.gpsY,x:val.gpsX}
|
||||
val.value = val.channelName
|
||||
})
|
||||
const results = res.data.data
|
||||
cb(results)
|
||||
}else{
|
||||
ElMessage({
|
||||
showClose: true,
|
||||
message: '未查询到点位!',
|
||||
type: 'warning',
|
||||
})
|
||||
cb(obj.result)
|
||||
}
|
||||
if (!queryString) {
|
||||
})
|
||||
}else{
|
||||
cb([])
|
||||
} else {
|
||||
var geoCodeParam = new SuperMap.GeoCodingParameter({
|
||||
address: queryString,
|
||||
})
|
||||
this.addressMatchService.code(geoCodeParam, match)
|
||||
}
|
||||
},
|
||||
getCameraAllPage(page) {
|
||||
|
@ -558,6 +630,7 @@ import { ElMessage } from 'element-plus'
|
|||
}
|
||||
},
|
||||
handleSelect(item) {
|
||||
console.log('1111',item)
|
||||
this.hiMapFun.clearAllLayers()
|
||||
//定时器方法
|
||||
let arr = item.detail.location.split(',')
|
||||
|
|
Loading…
Reference in New Issue