648540858
2022-06-14 c801ee62184d13acc4c5d6bd2d9586dca13306fc
调整页面样式
4个文件已修改
138 ■■■■ 已修改文件
web_src/src/App.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web_src/src/components/DeviceList.vue 51 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web_src/src/components/channelList.vue 71 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web_src/src/layout/UiHeader.vue 10 ●●●● 补丁 | 查看 | 原始文档 | 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>