“dzb”
2022-11-03 5a1874080ae2a058db35a05778a5aa4d3cf3f541
页面导航框架搭建
2个文件已修改
1个文件已添加
444 ■■■■■ 已修改文件
src/views/intelligentPatrol/illegalSearch/index.vue 321 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/layout/components/Main/index.vue 109 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/intelligentPatrol/illegalSearch/index.vue
@@ -1,15 +1,332 @@
<template>
  <div class="illegal-search">
    <header>
      <div class="headerContent">
        <!-- 条件筛选 -->
        <el-form ref="condition" :model="form" label-width="100px">
          <el-form-item :label=item.label :key=item.id v-for="item in headerList">
            <el-input v-model="item.value" :placeholder="item.placeholder"></el-input>
          </el-form-item>
        </el-form>
      </div>
    </header>
    <main>
      <div class="mainContent">
        <!-- 按钮区域 -->
        <div class="main-btns">
          <div class="main-btns-left">
            <el-button icon="el-icon-download">下载图片</el-button>
            <el-button icon="el-icon-folder">导出</el-button>
          </div>
          <div class="main-btns-right">
            <el-button icon="el-icon-search">查询</el-button>
            <el-button icon="el-icon-delete-solid" @click="handleReset">重置</el-button>
          </div>
        </div>
        <!-- 数据展示 -->
        <el-table ref="multipleTable"
          :header-cell-style="{ background: '#06122c', 'font-size': '12px', color: '#4b9bb7', 'font-weight': '650', 'line-height': '45px' }"
          :data="tableData" style="width: 100%" :row-class-name="tableRowClassName">
          <el-table-column type="selection" min-width="5">
          </el-table-column>
          <el-table-column prop="number" label="事件编号" min-width="10">
          </el-table-column>
          <el-table-column prop="type" label="违规类型" min-width="10">
          </el-table-column>
          <el-table-column prop="source" label="事件来源" min-width="10">
          </el-table-column>
          <el-table-column prop="level" label="事件等级" min-width="10">
          </el-table-column>
          <el-table-column prop="point" label="报警点位" min-width="10">
          </el-table-column>
          <el-table-column prop="org" label="所属组织" min-width="10">
          </el-table-column>
          <el-table-column prop="alarmTime" label="报警时间" min-width="12">
          </el-table-column>
          <el-table-column prop="continueTime" label="持续时间" min-width="12">
          </el-table-column>
          <el-table-column prop="carNumber" label="车牌号码" min-width="10">
          </el-table-column>
          <el-table-column prop="state" label="审核状态" min-width="10">
          </el-table-column>
          <el-table-column prop="advice" label="处理意见" min-width="10">
          </el-table-column>
          <el-table-column prop="operation" label="操作" min-width="15">
            <template slot-scope="scope">
              <div class="operation">
                <span @click="handleView(scope.row)">查看</span>
              </div>
            </template>
          </el-table-column>
        </el-table>
      </div>
    </main>
    <footer>
      <!-- 查看具体信息 -->
      <el-dialog title="提示" :visible.sync="dialogView" width="30%" :before-close="handleClose">
        <ViewInfo :info="info"></ViewInfo>
      </el-dialog>
    </footer>
  </div>
</template>
<script>
import helper from "@/utils/mydate.js"
import ViewInfo from './viewInfo'
export default {
  components: {
    ViewInfo
  },
  data() {
    return {
      tableData: [
        {
          number: '123456',
          type: '人民路右二',
          source: '视频上报',
          level: '一般事件',
          point: '123.123,123.233',
          org: '人民部',
          alarmTime: '2022-02-12 12:00:00',
          continueTime: '2小时30分钟06秒',
          carNumber: '浙B245CM',
          state: '待审核',
          advice: '需及时处理'
        },
        {
          number: '123457',
          type: '人民路左二',
          source: '视频上报',
          level: '高发事件',
          point: '123.123,123.233',
          org: '人民部',
          alarmTime: '2022-02-12 12:00:00',
          continueTime: '2小时30分钟06秒',
          carNumber: '浙B245CM',
          state: '待审核',
          advice: '需及时处理'
        },
        {
          number: '123458',
          type: '人寿路右二',
          source: '视频上报',
          level: '一般事件',
          point: '123.123,123.233',
          org: '人民部',
          alarmTime: '2022-02-12 12:00:00',
          continueTime: '2小时30分钟06秒',
          carNumber: '浙B245CM',
          state: '待审核',
          advice: '需及时处理'
        },
        {
          number: '123459',
          type: '人民路右二',
          source: '视频上报',
          level: '一般事件',
          point: '123.123,123.233',
          org: '人民部',
          alarmTime: '2022-02-12 12:00:00',
          continueTime: '2小时30分钟06秒',
          carNumber: '浙B245CM',
          state: '待审核',
          advice: '需及时处理'
        },
        {
          number: '123460',
          type: '人民路右二',
          source: '视频上报',
          level: '一般事件',
          point: '123.123,123.233',
          org: '人民部',
          alarmTime: '2022-02-12 12:00:00',
          continueTime: '2小时30分钟06秒',
          carNumber: '浙B245CM',
          state: '待审核',
          advice: '需及时处理'
        }
      ],
      context: "",
      dialogView: false,
      info: '',
      headerList: [
        {
          id: 1,
          label: '所属组织:',
          value: '',
          placeholder: '请输入所属组织'
        },
        {
          id: 2,
          label: '报警时间:',
          value: '',
          placeholder: '请输入报警时间'
        },
        {
          id: 3,
          label: '违规类型:',
          value: '',
          placeholder: '请输入违规类型'
        },
        {
          id: 4,
          label: '事件编号:',
          value: '',
          placeholder: '请输入事件编号'
        },
        {
          id: 5,
          label: '监控点名称:',
          value: '',
          placeholder: '请输入监控点名称'
        },
        {
          id: 6,
          label: '审核状态:',
          value: '',
          placeholder: '请输入审核状态'
        },
        {
          id: 7,
          label: '车牌号:',
          value: '',
          placeholder: '请输入车牌号'
        },
        {
          id: 8,
          label: '处理意见:',
          value: '',
          placeholder: '请输入事件等级'
        },
        {
          id: 9,
          label: '报警时间:',
          value: '',
          placeholder: '请输入所属组织'
        },
      ],
      form: {
      }
    }
  },
  methods: {
    changeTime({ createTime }) {
      return helper(createTime);
    },
    // 设置表格斑马纹
    tableRowClassName({ row, rowIndex }) {
      if ((rowIndex + 1) % 2 == 0) {
        return 'warning-row';
      } else {
        return 'success-row';
      }
      return '';
    },
    // 表单重置
    handleReset() {
      this.headerList.forEach(item => {
        item.value = ''
      })
    },
    // 关闭弹窗
    handleClose(done) {
      done();
    },
    // 打开弹窗
    handleView(data) {
      console.log(data)
    }
  }
}
</script>
<style lang="scss" scoped>
.illegal-search {
  text-align: left;
  margin: 10px 20px;
  color: #4b9bb7;
<style>
  header {
    background-color: #09152f;
    border: 1pox solid #fff;
    .headerContent {
      padding: 20px 40px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      ::v-deep .el-form {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        .el-form-item {
          width: 30%;
        }
        .el-form-item__label {
          color: #4b9bb7;
        }
      }
    }
  }
  main {
    background-color: #09152f;
    margin-top: 20px;
    padding-bottom: 50px;
    border: 1pox solid #fff;
    .mainTitle {
      line-height: 60px;
    }
    .main-btns {
      display: flex;
      justify-content: space-between;
      line-height: 60px;
      padding: 0 20px;
      .el-button {
        background-color: #17324c;
        border: 1px solid #17324c;
        color: #4b9bb7;
      }
    }
    .tools {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0 20px;
      .funs-sp {
        border: 1px solid #17324c;
      }
      .funs {
        display: flex;
        .funsItem {
          line-height: 28px;
          display: flex;
          align-items: center;
          border-radius: 4px;
          font-size: 12px;
          margin-left: 10px;
          .el-checkbox {
            width: 80px;
            padding: 0 10px;
          }
          .el-select {
            width: 120px;
          }
          &::v-deep .el-input__inner {
            border: none;
            background-color: #09152f;
          }}}}}}
</style>
src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue
New file
@@ -0,0 +1,14 @@
<template>
    <div class="view-info"></div>
</template>
<script>
export default{
    data(){
        return{
        }
    }
}
</script>
<style lang="scss" scoped>
</style>
src/views/layout/components/Main/index.vue
@@ -4,22 +4,12 @@
    <div class="content">
      <!-- 页面导航区域 -->
      <div class="page-nav" v-if="navFlag">
        <div>
           <h1>系统设置</h1>
             <div>
               <span >基本设置</span>
               <span >门户设置</span>
             </div>
             <div>
               <span >设备管理</span>
               <span>接入管理</span>
             </div>
        <div class="nav-item" v-for="item in navList" :key="item.id">
          <div class="nav-title">{{item.title}}</div>
          <div class="nav-child" v-if="item.children && item.children.length!==0">
            <el-link :underline="false" class="child-item" v-for="child in item.children" @click="handleJump(child.link)" :key="child.id">{{child.label}}</el-link>
          </div>
        </div>
        <div>运营管理</div>
        <div>视频巡查</div>
        <div>智能巡查</div>
      </div>
      <router-view v-else></router-view>
      <!-- 底部区域 -->
@@ -39,12 +29,56 @@
  },
  data() {
    return {
      navFlag:true
      navFlag: true,
      navList:[
        {
          id:1,
          title:'系统设置',
          children:[
            {
              id:2,
              label:'部门管理',
              link:'',
            },
            {
              id:3,
              label:'账户管理',
              link:'',
            },
            {
              id:4,
              label:'角色管理',
              link:'',
            },
            {
              id:5,
              label:'权限管理',
              link:'',
            },
            {
              id:6,
              label:'日志管理',
              link:'',
            },
          ]
        },
        {
          id:7,
          title:'运营管理'
        }
      ]
    }
  },
  watch:{
    '$route.path'(newPath,oldPath){
  watch: {
    '$route.path'(newPath, oldPath) {
      newPath === '/home' ? this.navFlag = true : this.navFlag = false
    }
  },
  methods:{
    handleJump(url){
      console.log(url)
      // 路由跳转
      // this.$router.push({path:url})
    }
  }
};
@@ -53,9 +87,48 @@
.el-main {
  min-width: 1024px;
  padding: 0;
  .content {
    padding: 11px;
    height: 100%;
    .page-nav{
      padding: 40px 100px;
      text-align: left;
      .nav-item{
        line-height: 60px;
        .nav-title{
          color: #4b9bb7;
        }
        .nav-child{
          display: flex;
          // justify-content: space-between;
          flex-wrap: wrap;
          .el-link{
            justify-content: flex-start;
            padding-left: 30px;
          }
          .child-item{
            width: 24%;
            text-align: left;
            margin-bottom: 22px;
            margin-right: 1%;
            border: 1px solid #17324c;
            color: #4b9bb7;
            position: relative;
            &::after{
              content: '';
              display: block;
              position: absolute;
              left: 15px;
              height: 8px;
              width: 8px;
              border-radius: 50%;
              background-color: #4b9bb7;
            }
          }
        }
      }
    }
  }
}
</style>