xiangpei
2025-06-12 914e96b60e0590ef5bce703a57c2201edf1d3c18
manager/src/views/video/VideoList.vue
@@ -92,8 +92,22 @@
              </div>
            </div>
          </Form-item>
          <Form-item class="video-warp" :label-width="0">
          <Form-item v-if="detail.videoContentType === 'video'" label="视频时长:" :label-width="72">
            <div>{{formatSeconds(detail.videoDuration)}}</div>
          </Form-item>
          <Form-item v-if="detail.videoContentType === 'img'" label="图片张数:" :label-width="72">
            <div>{{detail.imgs.length}}</div>
          </Form-item>
          <Form-item v-if="detail.videoContentType === 'video'" class="video-warp" :label-width="0">
            <video :src="detail.videoUrl" autoplay controls style="width: 768px;height: 432px"/>
          </Form-item>
          <Form-item v-if="detail.videoContentType === 'img'" :label-width="0">
            <div style="display: flex;flex-direction: row;flex-wrap: wrap">
              <div v-for="img in detail.imgs" :key="img" class="img-warp">
                <img :src="img" class="image">
              </div>
            </div>
          </Form-item>
          <Form-item label="审核结果:" :label-width="100" prop="result">
            <RadioGroup v-model="auditingForm.result">
@@ -150,6 +164,9 @@
        </template>
        <template slot-scope="{ row, index }" slot="videoFileKey">
          <div class="play-text" @click="playVideo(row.videoFileKey, row.title)">点击播放</div>
        </template>
        <template slot-scope="{ row, index }" slot="videoDuration">
          <div>{{formatSeconds(row.videoDuration)}}</div>
        </template>
        <template slot-scope="{ row, index }" slot="recommend">
          <i-switch v-model="row.recommend" :before-change="() => handleBeforeChange(row)" true-color="#13ce66"/>
@@ -284,6 +301,13 @@
          slot: "videoFileKey"
        },
        {
          title: "时长",
          key: "videoDuration",
          width: 80,
          align: 'center',
          slot: "videoDuration",
        },
        {
          title: "播放量",
          key: "playNum",
          width: 80,
@@ -339,6 +363,18 @@
    this.getTags('')
  },
  methods: {
    // 秒转x分x秒
    formatSeconds(seconds) {
      if (isNaN(seconds) || seconds < 0) return '0秒';
      const mins = Math.floor(seconds / 60);
      const secs = seconds % 60;
      if (mins === 0) return `${secs}秒`;
      if (secs === 0) return `${mins}分`;
      return `${mins}分${secs}秒`;
    },
    // 获取标签列表
    getTags(tagName) {
      let params = {
@@ -548,4 +584,11 @@
  display: flex;
  align-items: center;
}
.img-warp {
  padding: 10px;
}
.image {
  width: 150px;
  height: 200px;
}
</style>