web_src/src/App.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web_src/src/components/DeviceList.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web_src/src/components/channelList.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web_src/src/layout/UiHeader.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
web_src/src/App.vue
@@ -76,7 +76,7 @@ line-height: 60px; } .el-main { background-color: #e9eef3; background-color: #f0f2f5; color: #333; text-align: center; padding-top: 0px !important; @@ -101,4 +101,8 @@ box-shadow: inset 0 0 6px rgba(0, 0, 0, .1); -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .1); } .table-header { color: #727272; font-weight: 600; } </style> web_src/src/components/DeviceList.vue
@@ -9,21 +9,21 @@ </div> <!-- <devicePlayer ref="devicePlayer"></devicePlayer> --> <!--设备列表--> <el-table :data="deviceList" border style="width: 100%;font-size: 12px;" :height="winHeight"> <el-table-column prop="name" label="名称" align="center"> <el-table :data="deviceList" style="width: 100%;font-size: 12px;" :height="winHeight" header-row-class-name="table-header"> <el-table-column prop="name" label="名称" > </el-table-column> <el-table-column prop="deviceId" label="设备编号" width="180" align="center"> <el-table-column prop="deviceId" label="设备编号" width="180" > </el-table-column> <el-table-column label="地址" width="180" align="center"> <el-table-column label="地址" width="180" > <template slot-scope="scope"> <div slot="reference" class="name-wrapper"> <el-tag size="medium">{{ scope.row.hostAddress }}</el-tag> </div> </template> </el-table-column> <el-table-column prop="manufacturer" label="厂家" align="center"> <el-table-column prop="manufacturer" label="厂家" > </el-table-column> <el-table-column label="流传输模式" align="center" width="120"> <el-table-column label="流传输模式" width="120"> <template slot-scope="scope"> <el-select size="mini" @change="transportChange(scope.row)" v-model="scope.row.streamMode" placeholder="请选择"> <el-option key="UDP" label="UDP" value="UDP"></el-option> @@ -32,9 +32,9 @@ </el-select> </template> </el-table-column> <el-table-column prop="channelCount" label="通道数" align="center"> <el-table-column prop="channelCount" label="通道数" > </el-table-column> <el-table-column label="状态" width="120" align="center"> <el-table-column label="状态" width="120" > <template slot-scope="scope"> <div slot="reference" class="name-wrapper"> <el-tag size="medium" v-if="scope.row.online == 1">在线</el-tag> @@ -42,30 +42,32 @@ </div> </template> </el-table-column> <el-table-column prop="keepaliveTime" label="最近心跳" align="center" width="140"> <el-table-column prop="keepaliveTime" label="最近心跳" width="140"> </el-table-column> <el-table-column prop="registerTime" label="最近注册" align="center" width="140"> <el-table-column prop="registerTime" label="最近注册" width="140"> </el-table-column> <el-table-column prop="updateTime" label="更新时间" align="center" width="140"> <el-table-column prop="updateTime" label="更新时间" width="140"> </el-table-column> <el-table-column prop="createTime" label="创建时间" align="center" width="140"> <el-table-column prop="createTime" label="创建时间" width="140"> </el-table-column> <el-table-column label="操作" width="450" align="center" fixed="right"> <el-table-column label="操作" width="450" fixed="right"> <template slot-scope="scope"> <el-button size="mini" v-if="scope.row.online!=0" icon="el-icon-refresh" @click="refDevice(scope.row)" <el-button type="text" size="mini" v-bind:disabled="scope.row.online==0" icon="el-icon-refresh" @click="refDevice(scope.row)" @mouseover="getTooltipContent(scope.row.deviceId)">刷新 </el-button> <el-button-group> <el-button size="mini" icon="el-icon-video-camera-solid" v-bind:disabled="scope.row.online==0" type="primary" @click="showChannelList(scope.row)">通道 </el-button> <el-button size="mini" icon="el-icon-location" v-bind:disabled="scope.row.online==0" type="primary" @click="showDevicePosition(scope.row)">定位 </el-button> <el-button size="mini" icon="el-icon-edit" type="primary" @click="edit(scope.row)">编辑</el-button> <el-button size="mini" icon="el-icon-delete" type="danger" @click="deleteDevice(scope.row)">删除</el-button> </el-button-group> <el-divider direction="vertical"></el-divider> <el-button type="text" size="mini" icon="el-icon-video-camera-solid" v-bind:disabled="scope.row.online==0" @click="showChannelList(scope.row)">通道 </el-button> <el-divider direction="vertical"></el-divider> <el-button size="mini" icon="el-icon-location" v-bind:disabled="scope.row.online==0" type="text" @click="showDevicePosition(scope.row)">定位 </el-button> <el-divider direction="vertical"></el-divider> <el-button size="mini" icon="el-icon-edit" type="text" @click="edit(scope.row)">编辑</el-button> <el-divider direction="vertical"></el-divider> <el-button size="mini" icon="el-icon-delete" type="text" @click="deleteDevice(scope.row)" style="color: #f56c6c">删除</el-button> </template> </el-table-column> </el-table> @@ -347,4 +349,5 @@ padding: 0.3rem; width: 14.4rem; } </style> web_src/src/components/channelList.vue
@@ -32,49 +32,42 @@ </div> <devicePlayer ref="devicePlayer" v-loading="isLoging"></devicePlayer> <!--设备列表--> <el-table ref="channelListTable" :data="deviceChannelList" :height="winHeight" border style="width: 100%"> <el-table ref="channelListTable" :data="deviceChannelList" :height="winHeight" style="width: 100%" header-row-class-name="table-header"> <el-table-column prop="channelId" label="通道编号" width="200"> </el-table-column> <el-table-column prop="name" label="通道名称"> <el-table-column prop="name" label="通道名称" > </el-table-column> <el-table-column label="快照" width="80" align="center"> <el-table-column label="快照" width="80"> <template slot-scope="scope"> <!-- <img style="max-height: 3rem;max-width: 4rem;"--> <!-- v-if="scope.row.subCount === 0 && scope.row.parental === 0"--> <!-- :deviceId="scope.row.deviceId"--> <!-- :channelId="scope.row.channelId"--> <!-- :src="getSnap(scope.row)"--> <!-- @error="getSnapErrorEvent($event.target.deviceId, $event.target.channelId)"--> <!-- alt="">--> <el-image :src="getSnap(scope.row)" :preview-src-list="getBigSnap(scope.row)" @error="getSnapErrorEvent(scope.row.deviceId, cope.row.channelId)" :fit="'contain'"> <div slot="error" class="image-slot"> <i class="el-icon-picture-outline"></i> </div> </el-image> <el-image :src="getSnap(scope.row)" :preview-src-list="getBigSnap(scope.row)" @error="getSnapErrorEvent(scope.row.deviceId, cope.row.channelId)" :fit="'contain'"> <div slot="error" class="image-slot"> <i class="el-icon-picture-outline"></i> </div> </el-image> </template> </el-table-column> <el-table-column prop="subCount" label="子节点数"> <el-table-column prop="subCount" label="子节点数" width="120"> </el-table-column> <el-table-column prop="manufacture" label="厂家"> <el-table-column prop="manufacture" label="厂家" width="120"> </el-table-column> <el-table-column label="位置信息" align="center"> <el-table-column label="位置信息" width="180"> <template slot-scope="scope"> <span v-if="scope.row.longitude*scope.row.latitude > 0">{{ scope.row.longitude }},<br>{{ scope.row.latitude }}</span> <span v-if="scope.row.longitude*scope.row.latitude === 0">无</span> </template> </el-table-column> <el-table-column prop="ptztypeText" label="云台类型"/> <el-table-column label="开启音频" align="center"> <el-table-column prop="ptztypeText" label="云台类型" width="120" /> <el-table-column label="开启音频" > <template slot-scope="scope"> <el-switch @change="updateChannel(scope.row)" v-model="scope.row.hasAudio" active-color="#409EFF"> </el-switch> </template> </el-table-column> <el-table-column label="状态" width="180" align="center"> <el-table-column label="状态" width="240" > <template slot-scope="scope"> <div slot="reference" class="name-wrapper"> <el-tag size="medium" v-if="scope.row.status == 1">开启</el-tag> @@ -84,21 +77,21 @@ </el-table-column> <el-table-column label="操作" width="280" align="center" fixed="right"> <el-table-column label="操作" width="280" fixed="right"> <template slot-scope="scope"> <el-button-group> <!-- <el-button size="mini" icon="el-icon-video-play" v-if="scope.row.parental == 0" @click="sendDevicePush(scope.row)">播放</el-button> --> <el-button size="mini" icon="el-icon-video-play" @click="sendDevicePush(scope.row)">播放</el-button> <el-button size="mini" icon="el-icon-switch-button" type="danger" v-if="!!scope.row.streamId" @click="stopDevicePush(scope.row)">停止 </el-button> <el-button size="mini" icon="el-icon-s-open" type="primary" v-if="scope.row.subCount > 0 || scope.row.parental === 1" @click="changeSubchannel(scope.row)">查看 </el-button> <el-button size="mini" icon="el-icon-video-camera" type="primary" @click="queryRecords(scope.row)">设备录像 </el-button> <!-- <el-button size="mini" @click="sendDevicePush(scope.row)">录像查询</el-button> --> </el-button-group> <!-- <el-button size="mini" icon="el-icon-video-play" v-if="scope.row.parental == 0" @click="sendDevicePush(scope.row)">播放</el-button> --> <el-button size="mini" icon="el-icon-video-play" type="text" @click="sendDevicePush(scope.row)">播放</el-button> <el-button size="mini" icon="el-icon-switch-button" type="text" style="color: #f56c6c" v-if="!!scope.row.streamId" @click="stopDevicePush(scope.row)">停止 </el-button> <el-divider direction="vertical"></el-divider> <el-button size="mini" icon="el-icon-s-open" type="text" v-if="scope.row.subCount > 0 || scope.row.parental === 1" @click="changeSubchannel(scope.row)">查看 </el-button> <el-divider v-if="scope.row.subCount > 0 || scope.row.parental === 1" direction="vertical"></el-divider> <el-button size="mini" icon="el-icon-video-camera" type="text" @click="queryRecords(scope.row)">设备录像 </el-button> <!-- <el-button size="mini" @click="sendDevicePush(scope.row)">录像查询</el-button> --> </template> </el-table-column> </el-table> web_src/src/layout/UiHeader.vue
@@ -1,7 +1,9 @@ <template> <div id="UiHeader"> <el-menu router :default-active="activeIndex" menu-trigger="click" background-color="#545c64" text-color="#fff" active-text-color="#ffd04b" mode="horizontal"> <el-menu router :default-active="activeIndex" menu-trigger="click" background-color="#001529" text-color="#fff" active-text-color="#1890ff" mode="horizontal"> <el-menu-item index="/control">控制台</el-menu-item> <el-menu-item index="/live">分屏监控</el-menu-item> <el-menu-item index="/deviceList">国标设备</el-menu-item> @@ -148,4 +150,8 @@ #UiHeader .el-switch__label.is-active{ color: #409EFF; } #UiHeader .el-menu-item.is-active { color: #fff!important; background-color: #1890ff!important; } </style>