ZZJ
2021-11-03 b4d2703e653bf702d705b18c20d9edb9066c7c8a
src/pages/cameraAccess/components/SeparateRules.vue
@@ -28,25 +28,13 @@
          </div>
          <div v-if="Camera.analytics" class="flex-box" v-show="cameraType === 'camera'">
            <span class="label">分辨率</span>
            <el-select
              v-model="Camera.selectResolution"
              placeholder="请选择"
              size="mini"
              style="width: 134px;
                margin-left:10px;"
            >
              <el-option
                v-for="item in Camera.resolutionOption"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              ></el-option>
            </el-select>
            <span
              class="label"
            >分辨率: {{(Camera.camearInfo.resolution_width == 0 || Camera.camearInfo.resolution_height == 0) ? '本机分辨率': `${Camera.camearInfo.resolution_width} * ${Camera.camearInfo.resolution_height}` }}</span>
          </div>
          <div v-if="Camera.analytics" class="flex-box">
            <span class="label">智能计算节点: {{ Camera.runServerName}}</span>
            <span class="label">SmartAI节点: {{ Camera.runServerName}}</span>
          </div>
          <div v-if="Camera.analytics" class="flex-box">
@@ -270,11 +258,11 @@
    }
  },
  computed: {
    cameraType () {
    cameraType() {
      return this.TreeDataPool.treeActiveName === 'camera' ? "camera" : "dataStack"
    }
  },
  data () {
  data() {
    return {
      mockSceneData: [],
      loading: false,
@@ -321,21 +309,21 @@
      stackFilesSize: 5,
    };
  },
  mounted () {
  mounted() {
    this.mockAsync();
    this.PollData.statistics();
  },
  watch: {
    'Camera.cameraId': {
      handler (n, o) {
      handler(n, o) {
        if (n) {
          if (this.TreeDataPool.treeActiveName == "dataStack") {
            this.stackFilesPage = 1;
            this.stackFilesSize = 5;
            this.stackId = n;
            if (this.stackId) {
              console.log('getStackFiles')
              // console.log('getStackFiles')
              this.swipercanvasData = [];
              this.getStackFiles()
            }
@@ -345,15 +333,15 @@
    }
  },
  methods: {
    prevClick () {
      console.log(this.swiperIndex)
      console.log(this.$refs.swiper.swiper.activeIndex)
    prevClick() {
      // console.log(this.swiperIndex)
      // console.log(this.$refs.swiper.swiper.activeIndex)
      if (this.swiperIndex == 0) {
        console.log('本次分页的第一条')
        // console.log('本次分页的第一条')
        //请求上一页
        if (this.stackFilesPage > 1) {
          this.stackFilesPage--;
          this.getStackFiles();
          this.getStackFiles(true);
        } else {
          this.$message({
            type: 'info',
@@ -363,17 +351,15 @@
      }
    },
    nextClick () {
      console.log(this.swiperIndex)
      console.log(this.$refs.swiper.swiper.activeIndex)
    nextClick() {
      if (this.swiperIndex == this.swipercanvasData.length - 1) {
        console.log('最后一张,加载更多')
        // console.log('最后一张,加载更多')
        //请求下一页
        this.stackFilesPage++;
        this.getStackFiles();
        this.getStackFiles(true);
      }
    },
    getStackFiles () {
    getStackFiles(onClick = false) {
      this.getStackFileLoading = true;
      let _this = this;
      findAllFileByStackId({ name: '', stackId: this.stackId, page: this.stackFilesPage, size: this.stackFilesSize, type: 0 }).then(res => {
@@ -390,20 +376,19 @@
                loading: false
              }
            });
            console.log(_this.swipercanvasData)
            console.log(this.swipercanvasData)
            this.swiperIndex = 0;
            this.$refs.swiper.swiper.activeIndex = 0;
          } else {
            console.log(this.swipercanvasData)
            this.$message({
              type: 'info',
              message: '已无更多数据!'
            });
            if (onClick) {
              this.$message({
                type: 'warning',
                message: '已无更多数据!'
              });
            }
          }
        } else {
          console.log(this.swipercanvasData)
          // console.log(this.swipercanvasData)
          this.$message({
            type: 'error',
            message: '数据请求失败,请稍后重试!'
@@ -411,14 +396,14 @@
        }
        this.getStackFileLoading = false;
      }).catch(e => {
        console.log(e);
        // console.log(e);
        this.getStackFileLoading = false;
      });
    },
    swiperSlideChange () {
    swiperSlideChange() {
      this.swiperIndex = this.$refs.swiper.swiper.activeIndex;
    },
    mockAsync () {
    mockAsync() {
      setTimeout(() => {
        this.mockSceneData = [
          { scenename: "name1", id: 1, icon: ["iconrenlianjiance", "icongetijingzhi"] },
@@ -444,22 +429,28 @@
        ];
      }, 3000)
    },
    drawBaseImg () {
      this.$refs.canvas.showModal();
    drawBaseImg() {
      if (Array.isArray(this.$refs.canvas)) {
        if (this.$refs.canvas.length > 0) {
          this.$refs.canvas[0].showModal();
        }
      } else {
        this.$refs.canvas.showModal();
      }
    },
    getCanvasData (data) {
    getCanvasData(data) {
      let polyon = { ...data };
      polyon.camera_id = this.Camera.cameraId;
      savePolygon(polyon).then(rsp => {
        this.Camera.getPolygon();
        this.Camera.getCameraTask();
        //this.Camera.getCameraTask();
      });
    },
    refresh (url) {
    refresh(url) {
      this.Camera.baseImg = url
    },
    // 初始化摄像机信息,父组件调用
    async initCameraData (id) {
    async initCameraData(id) {
      this.Camera = new VideoRuleData();
      if (id && id !== "") {
@@ -480,7 +471,7 @@
    },
    saveSceneRule (groupRule) {
    saveSceneRule(groupRule) {
      const payload = { ...groupRule }
      payload.cameraIds = [this.Camera.cameraId];
      let _this = this;
@@ -498,15 +489,15 @@
        }
      });
    },
    delScenRule () {
    delScenRule() {
      this.Camera.update();
    },
    changeLoading (params) {
    changeLoading(params) {
      this.loading = params
      // console.log(this.loading,'changeLoading',params)
    },
    //是否进行视频分析处理
    pollEnable (row) {
    pollEnable(row) {
      let val = 0
      if (row) {
        if (this.PollData.RealTimeSum < this.PollData.channelTotal) {
@@ -542,8 +533,9 @@
      this.PollData.statisticTaskInfo();
    },
    //实时、轮询切换
    changePoll (row) {
    changePoll(row) {
      //判断是新增还是更新
      debugger
      if (this.Camera.cameraId && this.Camera.cameraId !== undefined) {
        if (this.PollData.RealTimeSum < this.PollData.channelTotal) {
          if (row.value) {
@@ -591,7 +583,7 @@
      }
    },
    //复制
    ctrlC () {
    ctrlC() {
      this.TreeDataPool.ctrlCameraId = this.Camera.cameraId;
      this.TreeDataPool.ctrlCameraName = this.Camera.cameraName;
      this.$notify({
@@ -599,7 +591,7 @@
        message: "复制算法成功!"
      })
    },
    ctrlV () {
    ctrlV() {
      if (this.Camera.cameraId === this.TreeDataPool.ctrlCameraId) {
        this.$notify({
          type: "warning",
@@ -637,7 +629,7 @@
</script>
<style lang="scss">
.el-message--info .el-message__content {
  color: #999;
  color: #999 !important;
}
.swiper-container {
  margin-left: auto;
@@ -1023,7 +1015,7 @@
  }
}
.el-loading-spinner {
  background: url('/images/cameraAccess/loading.gif') no-repeat;
  background: url("/images/cameraAccess/loading.gif") no-repeat;
  top: 50%;
  margin-top: -21px;
  width: calc(100% - 260px) !important;