ZZJ
2021-11-09 7b803f4c1d2b94f4a6421d400038bfe77136521f
Merge branch 'master' of http://192.168.5.5:10010/r/web/vue-smart-ai
2个文件已修改
234 ■■■■■ 已修改文件
src/pages/shuohuangMonitorAnalyze/components/lkgManage.vue 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/shuohuangMonitorAnalyze/components/lkgManage.vue
@@ -1,13 +1,20 @@
<template>
  <div class="lkg-manage">
    <div class="import-btn">
      <label> 上传 LKJ 数据文件: </label>
      <el-button
      <!-- <label> : </label> -->
      <!-- <el-button
        size="mini"
        type="primary"
        @click="uploadDirectoryTrigger"
        :loading="uploading"
      >点击上传</el-button>
        >上传 LKJ 数据文件</el-button
      > -->
      <span
        class="icon iconfont"
        @click="uploadDirectoryTrigger"
        style="font-size: 34px; color: #92abd1"
        >&#xe7b0;</span
      >
      <input
        ref="directoryInput"
        @change="importDirectory"
@@ -19,8 +26,21 @@
    </div>
    <div class="lkg-list">
      <el-table :data="lkgData" stripe style="width: 100%">
        <el-table-column type="index" width="100" label="序号"></el-table-column>
      <el-table
        :data="lkgData"
        stripe
        style="width: 100%"
        :header-cell-style="{
          background: '#2D52D7',
          color: '#fff',
          height: '50px',
        }"
      >
        <el-table-column
          type="index"
          width="120"
          label="序号"
        ></el-table-column>
        <el-table-column prop="CarNumber" label="机车号"></el-table-column>
        <el-table-column prop="TrainNumber" label="车次"></el-table-column>
        <el-table-column prop="Driver1" label="司机"></el-table-column>
@@ -29,7 +49,12 @@
        <el-table-column prop="EndTime" label="结束时间"></el-table-column>
        <el-table-column label="操作">
          <template slot-scope="scope">
            <i class="el-icon-delete del-icon" @click="delLKG(scope.row)"></i>
            <div class="icon-wrap">
              <span class="iconfont icon del-icon" @click="delLKG(scope.row)"
                >&#xe775;</span
              >
            </div>
            <!-- <i class="el-icon-delete del-icon" ></i> -->
          </template>
        </el-table-column>
      </el-table>
@@ -38,92 +63,136 @@
</template>
<script>
import { uploadLKG, getLKGData, delLKGData } from "@/api/shuohuang"
import { uploadLKG, getLKGData, delLKGData } from "@/api/shuohuang";
export default {
  data() {
    return {
      uploading: false,
      lkgData: []
    }
      lkgData: [],
    };
  },
  mounted() {
    this.fetchLKGData();
  },
  methods: {
    uploadDirectoryTrigger() {
      this.$refs['directoryInput'].click();
      this.$refs["directoryInput"].click();
    },
    importDirectory() {
      let _this = this;
      _this.uploading = true;
      let formData = new FormData;
      for (let i = 0; i < this.$refs['directoryInput'].files.length; i++) {
        formData.append('files', this.$refs['directoryInput'].files[i])
      let formData = new FormData();
      for (let i = 0; i < this.$refs["directoryInput"].files.length; i++) {
        formData.append("files", this.$refs["directoryInput"].files[i]);
      }
      uploadLKG(formData).then(res => {
        if (res && res.success) {
          this.$message.success("上传成功")
        }
        _this.uploading = false;
        this.fetchLKGData();
      }).catch(err => {
        this.$message.warning("上传失败", err)
        _this.uploading = false;
      })
      uploadLKG(formData)
        .then((res) => {
          if (res && res.success) {
            this.$message.success("上传成功");
          }
          _this.uploading = false;
          this.fetchLKGData();
        })
        .catch((err) => {
          this.$message.warning("上传失败", err);
          _this.uploading = false;
        });
    },
    fetchLKGData() {
      getLKGData().then(rsp => {
      getLKGData().then((rsp) => {
        if (rsp && rsp.success) {
          this.lkgData = rsp.data;
        }
      })
      });
    },
    delLKG(row) {
      this.$confirm("此操作将永久删除该文件, 是否继续?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          delLKGData({ id: row.ID })
            .then((rsp) => {
              if (rsp && rsp.success) {
                this.$message.success("删除成功");
              } else {
                this.$message.warning("删除失败");
              }
      this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        delLKGData({ id: row.ID }).then(rsp => {
          if (rsp && rsp.success) {
            this.$message.success("删除成功")
          } else {
            this.$message.warning("删除失败")
          }
          this.fetchLKGData()
        }).catch(err => {
          this.$message.warning("删除失败")
              this.fetchLKGData();
            })
            .catch((err) => {
              this.$message.warning("删除失败");
            });
        })
      }).catch(() => {
        this.$message({
          type: 'info',
          message: '已取消删除'
        .catch(() => {
          this.$message({
            type: "info",
            message: "已取消删除",
          });
        });
      });
    }
  }
}
    },
  },
};
</script>
<style lang="scss">
.lkg-manage {
  background: #fff;
  padding: 25px 33px;box-shadow: 0px 3px 6px rgba(160, 174, 230, 0.56);
border-radius: 10px;
  .import-btn {
    text-align: left;
    margin: 10px 20px;
    margin-bottom: 10px;
    span {
      cursor: pointer;
    }
    button {
      span {
        color: #fff;
      }
    }
  }
  .lkg-list {
    margin: 10px 20px;
    // margin: 10px 20px;
    .el-table--striped
      .el-table__body
      tr.el-table__row--striped
      td.el-table__cell {
      background: #f4f6f9;
    }
    .el-table__row > td {
      border: none;
    }
    .el-table th.is-leaf {
      border: none;
    }
    .el-table {
      margin-top: 15px;
      border: none;
    }
    th.el-table__cell > .cell {
      color: #fff;
    }
  }
  .del-icon {
    color: red;
  .icon-wrap {
    background: #9dabc1;
    width: 24px; height: 24px;
    border-radius: 50%;
    text-align: center;
    .del-icon {
    color: #fff;
    font-size: 21px;
    cursor: pointer;
  }
  }
  .icon-wrap:hover{
    background: #D94141;
  }
}
</style>
src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue
@@ -263,7 +263,6 @@
                    >
                      {{ label.Desc }}
                    </span>
                    <!-- (index == data.LableLst.length - 1 ? "" : ",") -->
                  </div>
                  <div v-else-if="hasError(data)" class="has-error">
                    <span>有异常</span>
@@ -320,9 +319,16 @@
      <div class="content" v-show="showType == 'list'">
        <el-table
          :data="tableData"
          stripe
          fit
          ref="elTable"
          @row-click="checkVideoDetail"
          :header-cell-style="{
            background: '#2D52D7',
            color: '#fff',
            height: '50px',
            padding: 0,
          }"
        >
          <el-table-column label="名称" prop="VideoName" sortable width="500">
            <template slot-scope="scope" style="cursor: pointer">
@@ -905,6 +911,8 @@
  }
  .flex-box {
    display: flex;
    height: 18px;
    line-height: 18px;
  }
  .filter-area {
    background: #fff;
@@ -1192,6 +1200,7 @@
      }
      .el-table {
        border: none;
        margin-bottom: 20px;
      }
      .el-col {
        margin-bottom: 10px;
@@ -1201,7 +1210,7 @@
        text-align: left;
        background: #fff;
        border-radius: 0 0 5px 5px;
        height: 360px;
        height: 368px;
        margin-bottom: 10px;
        border: 1px solid#CCD9F0;
        &:hover {
@@ -1223,7 +1232,7 @@
          }
        }
        .video-info {
          padding: 10px;
          padding: 14px;
          .base-info {
            > div {
              margin-bottom: 1px;
@@ -1302,28 +1311,27 @@
          font-size: 20px;
          right: 10px;
          bottom: 10px;
          i {
            color: #c7d0e5;
          }
          .follow {
            color: #f90741;
          }
        }
      }
      .el-table--striped
        .el-table__body
        tr.el-table__row--striped
        td.el-table__cell {
        background: #f4f6f9;
      }
      .el-table {
        border: 1px solid #dedede;
        th {
          background: #f5f5f5;
          color: #333;
        }
        .operation {
          cursor: pointer;
          .star {
            color: #ccc;
          }
          .follow {
            color: #409eff;
          }
        th.el-table__cell > .cell {
          color: #fff;
        }
        .el-table__row > td {
          border: none;
        }
        th.is-leaf {
          border: none;
        }
      }
      .pagination-center {
@@ -1332,7 +1340,15 @@
        padding: 10px 0 20px;
      }
    }
    .star {
      font-size: 20px;
      i {
        color: #c7d0e5;
      }
      .follow {
        color: #f90741;
      }
    }
    .el-dialog__wrapper {
      top: -22px;
    }
@@ -1350,7 +1366,8 @@
      .el-dialog__header {
        padding: 0px;
        .el-dialog__headerbtn {
          top: 6px;
          top: 10px;
          font-size: 20px;
        }
      }
      .title-partment {