hanbaoshan
2020-10-20 98a6297b10a4b97c3022f84d3ba7908c178d9ee0
src/pages/cameraAccess/components/CameraInfo.vue
@@ -62,9 +62,9 @@
        <el-col :span="9" :offset="1">
          <el-form-item label="事件声音">
            <div class="flex-wrap" style="margin-left:-10px">
              <el-switch v-model="form.voiceEnable" active-color="#409eff" :width="50"></el-switch>
              <el-switch v-model="form.voiceEnable" :width="50"></el-switch>
              <el-select
                v-model="form.voiceId"
                v-model="voice"
                placeholder="选择声音"
                size="small"
                value-key="id"
@@ -77,9 +77,15 @@
                  :value="item"
                ></el-option>
              </el-select>
              <span class="player-btn" @click="togglePlayer">
              <span class="player-btn" @click="togglePlayer" style="cursor:pointer;">
                <i
                  v-if="togglePlay"
                  class="el-icon-video-play"
                  style="font-size:26px; vertical-align:middle; color:#409eff"
                ></i>
                <i
                  v-else
                  class="el-icon-video-pause"
                  style="font-size:26px; vertical-align:middle; color:#409eff"
                ></i>
              </span>
@@ -146,7 +152,6 @@
                <li style="width:100%">
                  <info-card
                    style="width:100%;min-width: 440px"
                    :realtime="PollData.RealTimeValidCount"
                    :polling="PollData.PollValidCount"
                    :dataStack="PollData.stackChannelCount"
@@ -225,7 +230,8 @@
      },
      resolutionList: [],
      //传感器列表
      sensors: []
      sensors: [],
      voice: null
    };
  },
  computed: {
@@ -252,6 +258,10 @@
      this.visibilitychange();
    });
    this.getSounds();
    this.eventAudio.addEventListener("ended", () => {
      this.togglePlay = true
    })
  },
  methods: {
    getSounds() {
@@ -265,7 +275,10 @@
    },
    selSound(sound) {
      this.soundPath = sound.path;
      this.form.voiceId = sound.id
      this.form.voiceId = sound.id;
      this.togglePlay = true;
      this.eventAudio.pause()
      // this.eventAudio.
    },
    togglePlayer() {
      if (!this.soundPath) {
@@ -276,13 +289,14 @@
        return false;
      }
      this.eventAudio.src = this.soundPath;
      if (this.togglePlay) {
        this.eventAudio.play();
        this.togglePlay = false
      } else {
        this.eventAudio.pause()
        this.togglePlay = true
      }
      this.togglePlay = !this.togglePlay
      // this.togglePlay = !this.togglePlay
    },
    visibilitychange() {
      switch (document.visibilityState) {
@@ -298,6 +312,8 @@
      this.isAdd = false;
      this.videoItem = null;
      this.$refs.addForm.resetFields();
      this.voice = null;
      // this.initFormData();
      // this.$refs.addForm.clearValidate();
      if (node.type === "4") {
@@ -320,7 +336,15 @@
              this.sensors = res.data.sensors
            }
            this.$nextTick(() => {
              this.initFormData()
              Object.assign(this.form, res.data)
              this.soundList.forEach(element => {
                if (this.form.voiceId == element.id) {
                  this.voice = element
                }
              })
              if (this.form.run_type !== -1) {
                this.form.isAI = true
              } else {
@@ -337,6 +361,16 @@
      let list = this.$refs.cameraEditor.getResult()
      // console.log(list, "sensor")
      // id为空,新增摄像机
      if (this.form.voiceEnable && this.form.voiceId === "") {
        this.$notify({
          type: "error",
          message: "请选择一个事件声音"
        });
        return;
      }
      this.$refs[formName].validate(async valid => {
        if (valid) {
          const isRequire = this.verifyRequrie();