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

This commit is contained in:
gongjiale 2022-10-22 15:29:52 +08:00
commit 70a015cb01
4 changed files with 2279 additions and 1971 deletions

View File

@ -4,7 +4,8 @@
<el-button slot="append" icon="el-icon-search" @click="deptDialog"></el-button> <el-button slot="append" icon="el-icon-search" @click="deptDialog"></el-button>
</el-input> </el-input>
<el-input :value="value" style="display: none"></el-input> <el-input :value="value" style="display: none"></el-input>
<el-dialog :visible.sync="visibleDept" width="30%" :modal="false" :title="placeholder" :close-on-click-modal="false" :close-on-press-escape="false"> <el-dialog :visible.sync="visibleDept" width="30%" :modal="false" :title="placeholder" :close-on-click-modal="false"
:close-on-press-escape="false">
<el-form size="mini" :inline="true"> <el-form size="mini" :inline="true">
<el-form-item :label="$t('keyword')"> <el-form-item :label="$t('keyword')">
<el-input v-model="filterText"></el-input> <el-input v-model="filterText"></el-input>
@ -14,16 +15,9 @@
<el-button type="default">{{ $t('query') }}</el-button> <el-button type="default">{{ $t('query') }}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-tree <el-tree class="filter-tree" :data="deptList" :default-expanded-keys="expandedKeys"
class="filter-tree" :props="{ label: 'name', children: 'children' }" :expand-on-click-node="false" :filter-node-method="filterNode"
:data="deptList" :highlight-current="true" node-key="id" ref="tree">
:default-expanded-keys="expandedKeys"
:props="{ label: 'name', children: 'children' }"
:expand-on-click-node="false"
:filter-node-method="filterNode"
:highlight-current="true"
node-key="id"
ref="tree">
</el-tree> </el-tree>
<template slot="footer"> <template slot="footer">
<el-button type="default" @click="cancelHandle()" size="mini">{{ $t('cancel') }}</el-button> <el-button type="default" @click="cancelHandle()" size="mini">{{ $t('cancel') }}</el-button>
@ -61,6 +55,11 @@ export default {
}, },
deptName(val) { deptName(val) {
this.showDeptName = val this.showDeptName = val
},
visibleDept(val) {
if (!val) {
this.filterText = ''
}
} }
}, },
methods: { methods: {

View File

@ -1,14 +1,14 @@
/* /*
* @Author: hisense.wuhongjian * @Author: hisense.wuhongjian
* @Date: 2020-07-07 16:03:23 * @Date: 2020-07-07 16:03:23
* @LastEditors: hisense.wuhongjian * @LastEditors: Light
* @LastEditTime: 2022-10-13 21:31:09 * @LastEditTime: 2022-10-22 11:08:16
* @Description: 系统静态参数配置 * @Description: 系统静态参数配置
*/ */
var _global = {} var _global = {}
var CONFIGITEM = { var CONFIGITEM = {
// version: 'qingdao', // // version: 'qingdao', //
version: 'xihaian', // 西 version: 'dev', // 西
// version: 'qingdao', // // version: 'qingdao', //
// version: 'zhanTingDev', // dev (2022-09-13:) // version: 'zhanTingDev', // dev (2022-09-13:)
// version: 'qingdao', // // version: 'qingdao', //
@ -86,8 +86,8 @@ var CONFIGITEM = {
userPwd: '', userPwd: '',
}, },
backUrl: 'http://localhost:8001', backUrl: 'http://localhost:8001',
previewUrl: 'http://192.168.124.236:9796/', previewUrl: 'http://192.168.124.243:9796/',
websocketURL: '192.168.124.233:8888/renren-admin', websocketURL: '192.168.124.243:8888/renren-admin',
// websocketURL: '10.18.1.99:8889/renren-admin', // websocketURL: '10.18.1.99:8889/renren-admin',
POI_URL: POI_URL:
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address', 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',

View File

@ -5,15 +5,24 @@
<div class="infrastructrue-tab"> <div class="infrastructrue-tab">
<div v-for="(item, index) in tabList" :key="index" class="tabBox"> <div v-for="(item, index) in tabList" :key="index" class="tabBox">
<b class="leftType">{{ item.title }}</b> <b class="leftType">{{ item.title }}</b>
<el-button @click="nullClick" v-if="item.title == '视频标签'" type="small"> <el-button
@click="nullClick"
v-if="item.title == '视频标签'"
type="small"
>
清空 清空
</el-button> </el-button>
<span v-for="itemContent in item.content" :key="itemContent" @click="tabClick(index, itemContent)" :class=" <span
v-for="itemContent in item.content"
:key="itemContent"
@click="tabClick(index, itemContent)"
:class="
clickList[index].content.indexOf(itemContent.labelName) != -1 || clickList[index].content.indexOf(itemContent.labelName) != -1 ||
clickList[index].content.indexOf(itemContent) != -1 clickList[index].content.indexOf(itemContent) != -1
? 'down' ? 'down'
: '' : ''
"> "
>
{{ itemContent.labelName || itemContent }} {{ itemContent.labelName || itemContent }}
</span> </span>
</div> </div>
@ -21,19 +30,35 @@
<div v-if="!room" class="roomBox"> <div v-if="!room" class="roomBox">
<div class="leftMake"> <div class="leftMake">
<div class="leftTop" @click="roomResults" :class="roomYuyue ? 'roomBackground' : 'nullBackground'"> <div
class="leftTop"
@click="roomResults"
:class="roomYuyue ? 'roomBackground' : 'nullBackground'"
>
会议室预约 会议室预约
</div> </div>
<div class="leftBottom" @click="result" :class="roomResult ? 'roomBackground' : 'nullBackground'"> <div
class="leftBottom"
@click="result"
:class="roomResult ? 'roomBackground' : 'nullBackground'"
>
预约结果 预约结果
</div> </div>
</div> </div>
<div class="roomSearch"> <div class="roomSearch">
<span>会议室搜索</span> <span>会议室搜索</span>
<div class="searchInput"> <div class="searchInput">
<a-input-search v-model:value="roomInput" placeholder="请输入关键词" enter-button="搜索" size="large" <a-input-search
@search="onSearch" /> v-model:value="roomInput"
<a-button style="width: 0.8rem; height: 0.36rem; margin-left: 0.7rem" @click="reSetSearch"> placeholder="请输入关键词"
enter-button="搜索"
size="large"
@search="onSearch"
/>
<a-button
style="width: 0.8rem; height: 0.36rem; margin-left: 0.7rem"
@click="reSetSearch"
>
重置 重置
</a-button> </a-button>
</div> </div>
@ -44,23 +69,40 @@
<div class="roomTime"> <div class="roomTime">
<span>可用时间查询</span> <span>可用时间查询</span>
<a-space direction="vertical" class="roomSpace"> <a-space direction="vertical" class="roomSpace">
<a-date-picker v-model:value="roomCerateDate" placeholder="开始日期" value-format="YYYY-MM-DD" /> <a-date-picker
<a-time-picker v-model:value="roomCreateTime" placeholder="开始时间" value-format="HH:mm:ss" v-model:value="roomCerateDate"
:disabledHours="disabledStartHours" :disabledMinutes="disabledStartMinutes" placeholder="开始日期"
:disabledSeconds="disabledStartSeconds" /> value-format="YYYY-MM-DD"
<a-time-picker v-model:value="roomEndTime" placeholder="结束时间" value-format="HH:mm:ss" />
:disabledHours="disabledEndHours" :disabledMinutes="disabledEndMinutes" <a-time-picker
:disabledSeconds="disabledEndSeconds" /> v-model:value="roomCreateTime"
placeholder="开始时间"
value-format="HH:mm:ss"
:disabledHours="disabledStartHours"
:disabledMinutes="disabledStartMinutes"
:disabledSeconds="disabledStartSeconds"
/>
<a-time-picker
v-model:value="roomEndTime"
placeholder="结束时间"
value-format="HH:mm:ss"
:disabledHours="disabledEndHours"
:disabledMinutes="disabledEndMinutes"
:disabledSeconds="disabledEndSeconds"
/>
</a-space> </a-space>
</div> </div>
</div> </div>
<div class="roomItem" v-for="item in roomList" :key="item.id"> <div class="roomItem" v-for="item in roomList" :key="item.id">
<div class="leftImg"> <div class="leftImg">
<img :src=" <img
:src="
item.pic == null item.pic == null
? 'https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fp1.itc.cn%2Fimages01%2F20201221%2F00885cf666cc4c2ab80c7b4e59259e85.jpeg&refer=http%3A%2F%2Fp1.itc.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1662707222&t=13d3246428ee80cc7519702d5eb6eb7d' ? 'https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fp1.itc.cn%2Fimages01%2F20201221%2F00885cf666cc4c2ab80c7b4e59259e85.jpeg&refer=http%3A%2F%2Fp1.itc.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1662707222&t=13d3246428ee80cc7519702d5eb6eb7d'
: `${item.pic}` : `${item.pic}`
" alt="" /> "
alt=""
/>
</div> </div>
<div class="rightContent"> <div class="rightContent">
<div class="topContent">{{ item.name }}</div> <div class="topContent">{{ item.name }}</div>
@ -73,23 +115,38 @@
{{ item.description }} {{ item.description }}
</div> </div>
</div> </div>
<a-button style=" <a-button
style="
margin-left: 0.8rem; margin-left: 0.8rem;
background: #e1edfa; background: #e1edfa;
color: #0087ff; color: #0087ff;
border: none; border: none;
border-radius: 0.06rem; border-radius: 0.06rem;
" @click="appointment(item)"> "
@click="appointment(item)"
>
预约 预约
</a-button> </a-button>
</div> </div>
<a-pagination v-model:current="roomPage" v-model:pageSize="roomLimit" show-quick-jumper :total="roomTotal" <a-pagination
:page-size-options="pageSizeOptions" @change="onRoomChange" @showSizeChange="onShowSizeChange" v-model:current="roomPage"
show-size-changer /> v-model:pageSize="roomLimit"
show-quick-jumper
:total="roomTotal"
:page-size-options="pageSizeOptions"
@change="onRoomChange"
@showSizeChange="onShowSizeChange"
show-size-changer
/>
</div> </div>
<div v-if="roomResult" style="display: grid"> <div v-if="roomResult" style="display: grid">
<a-table :columns="columnsRomm" :data-source="dataRoom" :filterMultiple="false" :align="center" <a-table
:pagination="false"> :columns="columnsRomm"
:data-source="dataRoom"
:filterMultiple="false"
:align="center"
:pagination="false"
>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column.key === 'bookDate'"> <template v-if="column.key === 'bookDate'">
<span> <span>
@ -114,20 +171,38 @@
</template> </template>
</template> </template>
</a-table> </a-table>
<a-pagination v-model:current="roomPage" v-model:pageSize="roomLimit" show-quick-jumper :total="roomTotal" <a-pagination
:page-size-options="pageSizeOptionsChengguo" @change="onRoomChangeChengguo" v-model:current="roomPage"
@showSizeChange="onShowSizeChangeChengguo" show-size-changer /> v-model:pageSize="roomLimit"
show-quick-jumper
:total="roomTotal"
:page-size-options="pageSizeOptionsChengguo"
@change="onRoomChangeChengguo"
@showSizeChange="onShowSizeChangeChengguo"
show-size-changer
/>
</div> </div>
<a-modal v-model:visible="visibleRoom" width="10rem" title="预约详情" :body-style="bodystyle" class="modalClass" <a-modal
:footer="null"> v-model:visible="visibleRoom"
width="10rem"
title="预约详情"
:body-style="bodystyle"
class="modalClass"
:footer="null"
>
<div class="modalResult" style="margin-bottom: 0.05rem">预约结果</div> <div class="modalResult" style="margin-bottom: 0.05rem">预约结果</div>
<div style=" <div
style="
width: 100%; width: 100%;
height: 0.01rem; height: 0.01rem;
border-top: 1px solid #ccc; border-top: 1px solid #ccc;
transform: scaleY(0.5); transform: scaleY(0.5);
"></div> "
<div class="modalExamine" style="display: flex; flex-direction: column; margin-top: 0.2rem"> ></div>
<div
class="modalExamine"
style="display: flex; flex-direction: column; margin-top: 0.2rem"
>
<span style="margin-bottom: 0.2rem"> <span style="margin-bottom: 0.2rem">
审核结果{{ 审核结果{{
lookData.state == 2 lookData.state == 2
@ -142,24 +217,29 @@
</span> </span>
</div> </div>
<div class="modalYuyue" style="margin-bottom: 0.05rem">预约信息</div> <div class="modalYuyue" style="margin-bottom: 0.05rem">预约信息</div>
<div style=" <div
style="
width: 100%; width: 100%;
height: 0.01rem; height: 0.01rem;
border-top: 1px solid #ccc; border-top: 1px solid #ccc;
transform: scaleY(0.5); transform: scaleY(0.5);
"></div> "
></div>
<div class="modalTime" style="margin-top: 0.2rem"> <div class="modalTime" style="margin-top: 0.2rem">
<div> <div>
预约时段{{ lookData.bookDate }} {{ lookData.startTime }}-{{ 预约时段{{ lookData.bookDate }} {{ lookData.startTime }}-{{
lookData.endTime lookData.endTime
}} }}
</div> </div>
<div class="modalContent" style=" <div
class="modalContent"
style="
width: 7.5rem; width: 7.5rem;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin: 0.15rem 0 0.15rem 0; margin: 0.15rem 0 0.15rem 0;
"> "
>
<span>预约人{{ lookData.name }}</span> <span>预约人{{ lookData.name }}</span>
<span>联系方式{{ lookData.phone }}</span> <span>联系方式{{ lookData.phone }}</span>
<span>预约部门{{ lookData.dept }}</span> <span>预约部门{{ lookData.dept }}</span>
@ -169,18 +249,43 @@
使用事项{{ lookData.matter }} 使用事项{{ lookData.matter }}
</div> </div>
</a-modal> </a-modal>
<a-modal v-model:visible="appointmentRoom" title="会议室预约" width="10rem" @ok="handleOk" :body-style="bodystyle" <a-modal
class="appModal" :footer="null"> v-model:visible="appointmentRoom"
<a-form :model="formState" name="basic" :label-col="{ span: 8 }" :wrapper-col="{ span: 16 }" autocomplete="off" title="会议室预约"
@finish="onFinish" @finishFailed="onFinishFailed" :labelAlign="labelPosition"> width="10rem"
@ok="handleOk"
:body-style="bodystyle"
class="appModal"
:footer="null"
>
<a-form
:model="formState"
name="basic"
:label-col="{ span: 8 }"
:wrapper-col="{ span: 16 }"
autocomplete="off"
@finish="onFinish"
@finishFailed="onFinishFailed"
:labelAlign="labelPosition"
>
<a-row> <a-row>
<a-col :span="8"> <a-col :span="8">
<a-form-item name="bookDate" label="预约日期" v-bind="validateInfos.bookDate" <a-form-item
@blur="validate('create', { trigger: 'blur' }).catch(() => {})"> name="bookDate"
<a-date-picker style="width: 72%" v-model:value="formState.bookDate" value-format="YYYY-MM-DD" label="预约日期"
@change="handleChange" /> v-bind="validateInfos.bookDate"
@blur="validate('create', { trigger: 'blur' }).catch(() => {})"
>
<a-date-picker
style="width: 72%"
v-model:value="formState.bookDate"
value-format="YYYY-MM-DD"
@change="handleChange"
/>
</a-form-item> </a-form-item>
<div :class="roomDateList[0] != null ? 'jinggaoD' : 'jinggaoNull'"> <div
:class="roomDateList[0] != null ? 'jinggaoD' : 'jinggaoNull'"
>
<div class="imgJinggao"></div> <div class="imgJinggao"></div>
<span style="color: #da2a13; font-size: 0.12rem"> <span style="color: #da2a13; font-size: 0.12rem">
当日会议室可用时段{{ roomDateList[0] }} 当日会议室可用时段{{ roomDateList[0] }}
@ -188,21 +293,40 @@
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
<a-form-item name="startTime" label="预约时段" v-bind="validateInfos.startTime" style="display: flex"> <a-form-item
<a-time-picker v-model:value="formState.startTime" placeholder="开始时间" value-format="HH:mm:ss" name="startTime"
:disabledHours="disabledTimeHours" :disabledMinutes="disabledTimeMinutes" label="预约时段"
:disabledSeconds="disabledTimeSeconds" /> v-bind="validateInfos.startTime"
style="display: flex"
>
<a-time-picker
v-model:value="formState.startTime"
placeholder="开始时间"
value-format="HH:mm:ss"
:disabledHours="disabledTimeHours"
:disabledMinutes="disabledTimeMinutes"
:disabledSeconds="disabledTimeSeconds"
/>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
<a-time-picker v-model:value="formState.endTime" placeholder="结束时间" value-format="HH:mm:ss" <a-time-picker
:disabledHours="disabledTimeEndHours" :disabledMinutes="disabledTimeEndMinutes" v-model:value="formState.endTime"
:disabledSeconds="disabledTimeEndSeconds" /> placeholder="结束时间"
value-format="HH:mm:ss"
:disabledHours="disabledTimeEndHours"
:disabledMinutes="disabledTimeEndMinutes"
:disabledSeconds="disabledTimeEndSeconds"
/>
</a-col> </a-col>
</a-row> </a-row>
<a-row style="margin-top: 0.4rem"> <a-row style="margin-top: 0.4rem">
<a-col :span="8"> <a-col :span="8">
<a-form-item name="name" label="预约人" v-bind="validateInfos.name"> <a-form-item
name="name"
label="预约人"
v-bind="validateInfos.name"
>
<a-input v-model:value="formState.name" style="width: 72%" /> <a-input v-model:value="formState.name" style="width: 72%" />
</a-form-item> </a-form-item>
</a-col> </a-col>
@ -212,23 +336,42 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
<a-form-item name="dept" label="预约部门" v-bind="validateInfos.dept"> <a-form-item
name="dept"
label="预约部门"
v-bind="validateInfos.dept"
>
<a-input v-model:value="formState.dept" style="width: 72%" /> <a-input v-model:value="formState.dept" style="width: 72%" />
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row style="margin-top: 0.4rem"> <a-row style="margin-top: 0.4rem">
<a-col :span="24"> <a-col :span="24">
<a-form-item name="matter" v-bind="validateInfos.matter" label="使用事项" class="introduction"> <a-form-item
name="matter"
v-bind="validateInfos.matter"
label="使用事项"
class="introduction"
>
<a-textarea v-model:value="formState.matter" /> <a-textarea v-model:value="formState.matter" />
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row style="margin-top: 0.4rem"> <a-row style="margin-top: 0.4rem">
<a-col :span="24"> <a-col :span="24">
<a-form-item name="uploadRoom" label="附件上传" class="introduction"> <a-form-item
<a-upload :max-count="1" accept=".doc,.docx,pdf" v-model:file-list="fileList" name="uploadRoom"
:action="`${apiURL}/upload`" @remove="handleRemove" @change="roomUpload"> label="附件上传"
class="introduction"
>
<a-upload
:max-count="1"
accept=".doc,.docx,pdf"
v-model:file-list="fileList"
:action="`${apiURL}/upload`"
@remove="handleRemove"
@change="roomUpload"
>
<a-button> <a-button>
<upload-outlined>选择上传附件</upload-outlined> <upload-outlined>选择上传附件</upload-outlined>
</a-button> </a-button>
@ -239,11 +382,18 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-form-item :wrapper-col="{ span: 14, offset: 4 }" style="text-align: center; margin-top: 0.4rem"> <a-form-item
:wrapper-col="{ span: 14, offset: 4 }"
style="text-align: center; margin-top: 0.4rem"
>
<a-button @click="appointmentRoom = false" type="primary" danger> <a-button @click="appointmentRoom = false" type="primary" danger>
取消 取消
</a-button> </a-button>
<a-button style="margin-left: 10px" type="primary" @click="onSubmit"> <a-button
style="margin-left: 10px"
type="primary"
@click="onSubmit"
>
提交 提交
</a-button> </a-button>
</a-form-item> </a-form-item>
@ -273,76 +423,122 @@
<!-- 右侧 --> <!-- 右侧 -->
<div class="contentRight"> <div class="contentRight">
<div class="searchInput" v-if="isXiHaiAn"> <div class="searchInput" v-if="isXiHaiAn">
<a-input-search v-model:value="mapSearchParam.cameraName" placeholder="请输入关键词" enter-button="搜索" <a-input-search
size="large" @change="(e) => getCamera(true, e.target.value)" /> v-model:value="mapSearchParam.cameraName"
<a-button type="primary" style="width: 0.8rem; height: 0.36rem; margin-left: 0.7rem" @click="clean"> placeholder="请输入关键词"
enter-button="搜索"
size="large"
@change="(e) => getCamera(true, e.target.value)"
/>
<a-button
type="primary"
style="width: 0.8rem; height: 0.36rem; margin-left: 0.7rem"
@click="clean"
>
重置 重置
</a-button> </a-button>
</div> </div>
<i class="boundary"></i> <i class="boundary"></i>
<!-- 批量预览 --> <!-- 批量预览 -->
<a-button type="primary" @click="batchPreview" class="buttonAdd" v-if="isXiHaiAn"> <a-button
type="primary"
@click="batchPreview"
class="buttonAdd"
v-if="isXiHaiAn"
>
批量预览 批量预览
</a-button> </a-button>
<!-- 添加至申购车 --> <!-- 添加至申购车 -->
<a-button v-if="isXiHaiAn" type="primary" @click="addShoppingCart" class="buttonAdd"> <a-button
v-if="isXiHaiAn"
type="primary"
@click="addShoppingCart"
class="buttonAdd"
>
添加至申购车 添加至申购车
</a-button> </a-button>
<!-- 一键申请 --> <!-- 一键申请 -->
<a-button v-if="isXiHaiAn" type="primary" @click="apply" class="buttonAdd"> <a-button
v-if="isXiHaiAn"
type="primary"
@click="apply"
class="buttonAdd"
>
一键申请 一键申请
</a-button> </a-button>
<a-button v-else type="primary" @click="goToWeb" class="buttonAdd"> <a-button v-else type="primary" @click="goToWeb" class="buttonAdd">
我要申请{{ selectType }} <template v-if="selectType == '视频会议'">一键组会</template>
<template v-else>我要申请{{ selectType }}</template>
</a-button> </a-button>
</div> </div>
</div> </div>
<!-- 表格 --> <!-- 表格 -->
<div class="infrastructrue-table" v-if="!wrjFlag"> <div class="infrastructrue-table" v-if="!wrjFlag">
<a-table class="ant-table-striped" :dataSource="dataSource" :columns="columns" :scroll="{ y: tableHeight }" <a-table
rowKey="channelId" :rowClassName=" class="ant-table-striped"
:dataSource="dataSource"
:columns="columns"
:scroll="{ y: tableHeight }"
rowKey="channelId"
:rowClassName="
(record, index) => (index % 2 === 1 ? 'table-striped' : null) (record, index) => (index % 2 === 1 ? 'table-striped' : null)
" :pagination="pagination" @change="handleTableChange" :row-selection="{ "
:pagination="pagination"
@change="handleTableChange"
:row-selection="{
selectedRowKeys: selectedRowKeys, selectedRowKeys: selectedRowKeys,
onSelect: onSelectChange, onSelect: onSelectChange,
onSelectAll: onSelectAll, onSelectAll: onSelectAll,
}" :loading="loadingCamera"> }"
:loading="loadingCamera"
>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="isXiHaiAn && column.dataIndex === 'status'"> <template v-if="isXiHaiAn && column.dataIndex === 'status'">
<span>{{ statusText[record.status] || '' }}</span> <span>{{ statusText[record.status] || '' }}</span>
</template> </template>
<template v-if="column.dataIndex === 'operation'"> <template v-if="column.dataIndex === 'operation'">
<!-- 离线 --> <!-- 离线 -->
<a v-if="record.status != 1" class="disabled-text"> <a v-if="record.status != 1" class="disabled-text">预览</a>
预览
</a>
<a-tooltip v-else placement="top"> <a-tooltip v-else placement="top">
<template #title>请申请后在我的申请中预览视频!</template> <template #title>请申请后在我的申请中预览视频!</template>
<a @click=" <a
@click="
openVideo( openVideo(
record.channelCode || record.channelCode ||
record.channelId || record.channelId ||
record.channelCode.channelId, record.channelCode.channelId,
record record
) )
"> "
>
预览 预览
</a> </a>
</a-tooltip> </a-tooltip>
</template> </template>
</template> </template>
</a-table> </a-table>
</div> </div>
<!-- 西海岸-无人机单兵设备 --> <!-- 西海岸-无人机单兵设备 -->
<div class="infrastructrue-table" v-else-if="isXiHaiAn && wrjFlag"> <div class="infrastructrue-table" v-else-if="isXiHaiAn && wrjFlag">
<a-table class="ant-table-striped" :dataSource="dataSource2" :columns="columns2" :scroll="{ y: tableHeight }" <a-table
rowKey="channelId" :rowClassName=" class="ant-table-striped"
:dataSource="dataSource2"
:columns="columns2"
:scroll="{ y: tableHeight }"
rowKey="channelId"
:rowClassName="
(record, index) => (index % 2 === 1 ? 'table-striped' : null) (record, index) => (index % 2 === 1 ? 'table-striped' : null)
" :pagination="pagination" @change="handleTableChange"> "
:pagination="pagination"
@change="handleTableChange"
>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column.dataIndex === 'operation'"> <template v-if="column.dataIndex === 'operation'">
<a-button @click="goToApply(record)" type="link" :disabled="record.state != 1"> <a-button
@click="goToApply(record)"
type="link"
:disabled="record.state != 1"
>
申请 申请
</a-button> </a-button>
<a-button @click="showWrj(record)" type="link">详情</a-button> <a-button @click="showWrj(record)" type="link">详情</a-button>
@ -351,15 +547,25 @@
</a-table> </a-table>
</div> </div>
<!-- 单个预览弹窗 --> <!-- 单个预览弹窗 -->
<a-modal wrapClassName="single-preview-modal" v-model:visible="visible" :width="960" destroyOnClose> <a-modal
wrapClassName="single-preview-modal"
v-model:visible="visible"
:width="960"
destroyOnClose
>
<!-- title="视频预览" --> <!-- title="视频预览" -->
<template #title> <template #title>
<span>视频预览</span> <span>视频预览</span>
<span style="color: #ff4d4f;margin-left:10px">{{`(请申请后在我的申请中预览视频)`}}</span> <span style="color: #ff4d4f; margin-left: 10px">
{{ `(请申请后在我的申请中预览视频)` }}
</span>
</template> </template>
<template #footer></template> <template #footer></template>
<div style="width: 100%; display: flex; justify-content: center"> <div style="width: 100%; display: flex; justify-content: center">
<div style="width: 100%; height: 100%; position: relative" v-show="isXiHaiAn"> <div
style="width: 100%; height: 100%; position: relative"
v-show="isXiHaiAn"
>
<!-- 西海岸--预览视频--遮罩 todo--> <!-- 西海岸--预览视频--遮罩 todo-->
<div class="video-cover" @click="videoShowMsg"></div> <div class="video-cover" @click="videoShowMsg"></div>
<div class="waterMark waterMark-left-top"> <div class="waterMark waterMark-left-top">
@ -380,70 +586,138 @@
</a-modal> </a-modal>
<!-- 图片预览 --> <!-- 图片预览 -->
<a-modal wrapClassName="single-preview-modal" v-model:visible="picVisible" title="图片预览" :width="960" <a-modal
destroyOnClose> wrapClassName="single-preview-modal"
v-model:visible="picVisible"
title="图片预览"
:width="960"
destroyOnClose
>
<template #footer></template> <template #footer></template>
<div style="width: 100%; display: flex; justify-content: center"> <div style="width: 100%; display: flex; justify-content: center">
<a-image :src="options.src" /> <a-image :src="options.src" />
</div> </div>
</a-modal> </a-modal>
<!-- 批量预览图片弹窗 --> <!-- 批量预览图片弹窗 -->
<a-modal wrapClassName="batch-preview-modal" v-model:visible="batchPicVisible" title="图片批量预览" :width="1060" <a-modal
destroyOnClose @cancel="videoClean"> wrapClassName="batch-preview-modal"
v-model:visible="batchPicVisible"
title="图片批量预览"
:width="1060"
destroyOnClose
@cancel="videoClean"
>
<template #footer></template> <template #footer></template>
<div class="batch-video"> <div class="batch-video">
<div v-for="item in videoList" :key="item.id" style="width: 100%; height: 100%"> <div
<a-image width="500px" height="281px" :src="item.options.src" v-for="item in videoList"
fallback="data:image/png;base64,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" /> :key="item.id"
style="width: 100%; height: 100%"
>
<a-image
width="500px"
height="281px"
:src="item.options.src"
fallback="data:image/png;base64,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"
/>
</div> </div>
</div> </div>
<a-pagination v-model:current="current" :total="videoTotal" defaultPageSize="4" :showSizeChanger="false" <a-pagination
@change="batchPicturePreview" show-less-items /> v-model:current="current"
:total="videoTotal"
defaultPageSize="4"
:showSizeChanger="false"
@change="batchPicturePreview"
show-less-items
/>
</a-modal> </a-modal>
<!-- 批量预览视频弹窗 --> <!-- 批量预览视频弹窗 -->
<a-modal wrapClassName="batch-preview-modal" v-model:visible="batchVisible" title="视频批量预览" :width="1060" <a-modal
destroyOnClose @cancel="videoClean"> wrapClassName="batch-preview-modal"
v-model:visible="batchVisible"
title="视频批量预览"
:width="1060"
destroyOnClose
@cancel="videoClean"
>
<template #footer></template> <template #footer></template>
<div class="batch-video"> <div class="batch-video">
<div v-for="(item, index) in videoList" :key="item.id" style="width: 100%; height: 100%; position: relative"> <div
v-for="(item, index) in videoList"
:key="item.id"
style="width: 100%; height: 100%; position: relative"
>
<!-- 批量预览视频--遮罩 --> <!-- 批量预览视频--遮罩 -->
<div class="batch-video-cover" @click="videoShowMsg(index)" v-show="isXiHaiAn"></div> <div
<div class="batch-waterMark batch-waterMark-left-top" v-show="isXiHaiAn"> class="batch-video-cover"
@click="videoShowMsg(index)"
v-show="isXiHaiAn"
></div>
<div
class="batch-waterMark batch-waterMark-left-top"
v-show="isXiHaiAn"
>
{{ userInfo.usernameShow }} {{ userInfo.usernameShow }}
</div> </div>
<div class="batch-waterMark batch-waterMark-right-top" v-show="isXiHaiAn"> <div
class="batch-waterMark batch-waterMark-right-top"
v-show="isXiHaiAn"
>
{{ userInfo.realNameShow }} {{ userInfo.realNameShow }}
</div> </div>
<div class="batch-waterMark batch-waterMark-left-bottom" v-show="isXiHaiAn"> <div
class="batch-waterMark batch-waterMark-left-bottom"
v-show="isXiHaiAn"
>
{{ userInfo.usernameShow }} {{ userInfo.usernameShow }}
</div> </div>
<div class="batch-waterMark batch-waterMark-right-bottom" v-show="isXiHaiAn"> <div
class="batch-waterMark batch-waterMark-right-bottom"
v-show="isXiHaiAn"
>
{{ userInfo.realNameShow }} {{ userInfo.realNameShow }}
</div> </div>
<p></p> <p></p>
<vue3VideoPlay v-bind="item.options" /> <vue3VideoPlay v-bind="item.options" />
</div> </div>
</div> </div>
<a-pagination v-model:current="current" :total="videoTotal" defaultPageSize="4" :showSizeChanger="false" <a-pagination
@change="batchPreview" show-less-items /> v-model:current="current"
:total="videoTotal"
defaultPageSize="4"
:showSizeChanger="false"
@change="batchPreview"
show-less-items
/>
</a-modal> </a-modal>
<a-modal wrapClassName="wrj" v-model:visible="wrjVisible" :width="1000" :title="wrjName + '详情'" <a-modal
@ok="wrjVisible = false"> wrapClassName="wrj"
v-model:visible="wrjVisible"
:width="1000"
:title="wrjName + '详情'"
@ok="wrjVisible = false"
>
<template #footer></template> <template #footer></template>
<div v-for="(db, key) in wrjData" :key="key"> <div v-for="(db, key) in wrjData" :key="key">
<template v-if="typeof db == 'object'"> <template v-if="typeof db == 'object'">
<div style=" <div
style="
font-size: 20px; font-size: 20px;
font-weight: 600; font-weight: 600;
margin: 10px 0; margin: 10px 0;
text-align: center; text-align: center;
"> "
>
{{ db.attrType || '--' }} {{ db.attrType || '--' }}
</div> </div>
<template v-if="db.attrValue"> <template v-if="db.attrValue">
<div style="padding: 0 30px" v-for="(value, key2) in JSON.parse(db.attrValue)" :key="value"> <div
style="padding: 0 30px"
v-for="(value, key2) in JSON.parse(db.attrValue)"
:key="value"
>
{{ key2 + '' + value }} {{ key2 + '' + value }}
</div> </div>
</template> </template>
@ -717,7 +991,12 @@ const tabList = ref([
title: '设施类型', title: '设施类型',
content: isXiHaiAn content: isXiHaiAn
? ['视频资源'] ? ['视频资源']
: ['政务云资源', '视频资源' /**',感知资源' */, '城市云脑会客厅'], : [
'政务云资源',
'视频资源' /**',感知资源' */,
'城市云脑会客厅',
'视频会议',
],
}, },
]) ])
let clickList = ref([]) //tab let clickList = ref([]) //tab
@ -1178,6 +1457,17 @@ const tabClick = (indexFather, name) => {
pagination.value.total = 0 pagination.value.total = 0
selectType.value = '感知资源' selectType.value = '感知资源'
} else if (name == '城市云脑会客厅') { } else if (name == '城市云脑会客厅') {
} else if (name == '视频会议') {
room.value = true
tableHeight.value = 600
showMap.value = false
dataSource.value = []
dataSource2.value = []
pagination.value.total = 0
if (tabList.value[1]) {
tabList.value[1].title = ''
}
selectType.value = '视频会议'
} }
clickList.value[indexFather].content.splice( clickList.value[indexFather].content.splice(
clickList.value[indexFather].content.indexOf(name), clickList.value[indexFather].content.indexOf(name),
@ -1251,6 +1541,24 @@ const tabClick = (indexFather, name) => {
room.value = true room.value = true
wrjFlag.value = false wrjFlag.value = false
emits('add', 2) emits('add', 2)
} else if (name == '视频会议') {
selectType.value = '视频会议'
tableHeight.value = 600
showMap.value = false
dataSource.value = []
dataSource2.value = []
pagination.value.total = 0
if (clickList.value[1]) {
clickList.value[1].content = []
}
clickList.value[indexFather].content[0] = name
if (tabList.value[1]) {
tabList.value[1].title = ''
tabList.value[1].content = []
}
room.value = true
wrjFlag.value = false
// emits('add', 2)
} else if (name == '感知资源') { } else if (name == '感知资源') {
selectType.value = '感知资源' selectType.value = '感知资源'
tableHeight.value = 330 tableHeight.value = 330
@ -1310,7 +1618,7 @@ const tabClick = (indexFather, name) => {
console.log('选中的标签code', mapSearchParam.value) console.log('选中的标签code', mapSearchParam.value)
mapSearchParam.value.labelCodes = mapSearchParam.value.labelCodes + '' mapSearchParam.value.labelCodes = mapSearchParam.value.labelCodes + ''
if (name == '政务云资源' || name == '感知资源') { if (name == '政务云资源' || name == '视频会议' || name == '感知资源') {
dataSource.value = [] dataSource.value = []
dataSource2.value = [] dataSource2.value = []
pagination.value.total = 0 pagination.value.total = 0

View File

@ -33,15 +33,16 @@ export default defineComponent({
imgActive: require('@/assets/personalCenter/applyactive.png'), imgActive: require('@/assets/personalCenter/applyactive.png'),
key: 'apply', key: 'apply',
} }
let menuList = [ const push = {
car,
{
title: '我的发布', title: '我的发布',
img: require('@/assets/personalCenter/push.png'), img: require('@/assets/personalCenter/push.png'),
imgActive: require('@/assets/personalCenter/pushactive.png'), imgActive: require('@/assets/personalCenter/pushactive.png'),
key: 'push', key: 'push',
}, }
let menuList = [
car,
apply, apply,
push,
{ {
title: '我的收藏', title: '我的收藏',
img: require('@/assets/personalCenter/collect.png'), img: require('@/assets/personalCenter/collect.png'),
@ -69,7 +70,7 @@ export default defineComponent({
] ]
// 西 // 西
if (itShowXiHaiAn) { if (itShowXiHaiAn) {
menuList = [car, apply] menuList = [car, apply, push]
} }
const selectedKeys = ref(['apply']) const selectedKeys = ref(['apply'])