Merge branch 'hi-ucs-dev' of http://192.168.124.50:3000/wuhongjian/hi-ucs into hi-ucs-dev

This commit is contained in:
wuhongjian 2022-11-21 19:12:16 +08:00
commit df8aa20b3f
9 changed files with 382 additions and 182 deletions

View File

@ -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,
})
}

View File

@ -143,6 +143,7 @@
show-size-changer
show-less-items
show-quick-jumper
:showTotal="total => `共 ${total} 项`"
:total="resourceTotal"
:page-size-options="pageSizeOptions"
@change="pageChange"

View File

@ -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()
}
}
})
}

View File

@ -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({

View File

@ -191,7 +191,10 @@ 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) {
@ -270,7 +273,7 @@ export default defineComponent({
},
beforeUnmount() {
mybus.off('getDeptList')
console.log('getDeptList销毁~~~~~~~~~~~~~~~~~~~')
mybus.off('clearChoose')
},
components: {
UpOutlined,

View File

@ -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;
}
}

View File

@ -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;

View File

@ -2579,7 +2579,7 @@
}
:deep(.ant-pagination) {
float: right;
float: center;
}
:deep(.ant-pagination) {

View File

@ -41,7 +41,7 @@
:fetch-suggestions="querySearch"
clearable
class="input-with-select"
placeholder="请输入关键"
placeholder="请输入关键"
@select="
(addressItem) => {
selectedAddress(addressItem, i)
@ -58,7 +58,7 @@
<el-autocomplete
v-else-if="addressType==2"
v-model="address"
placeholder="请输入地址"
placeholder="请输入关键字"
:fetch-suggestions="
(queryString, cb) => {
searchAddressByKeyWord(queryString, cb, i)
@ -298,6 +298,8 @@ import { ElMessage } from 'element-plus'
}
},
selectedAddress(item, index) {
mybus.emit('clearChoose')
this.getCameraAllPage()
//
console.log('跳转', item)
const latLng = {
@ -511,29 +513,32 @@ import { ElMessage } from 'element-plus'
},
//
async searchAddressByKeyWord(queryString, cb, indexX) {
console.log('queryString, cb, indexX',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
})
cb(obj.result)
}
if (!queryString) {
cb([])
const results = res.data.data
cb(results)
}else{
var geoCodeParam = new SuperMap.GeoCodingParameter({
address: queryString,
ElMessage({
showClose: true,
message: '未查询到点位!',
type: 'warning',
})
this.addressMatchService.code(geoCodeParam, match)
}
})
}else{
cb([])
}
},
getCameraAllPage(page) {