|
@@ -24,23 +24,26 @@
|
|
|
</div>
|
|
|
|
|
|
<el-table :data="tableData">
|
|
|
- <el-table-column width="100" prop="id" label="ID"> </el-table-column>
|
|
|
+ <el-table-column width="200" prop="id" label="ID"> </el-table-column>
|
|
|
<el-table-column label="语音内容">
|
|
|
<span slot-scope="scope">{{ scope.row.content }}</span>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="播报时间">
|
|
|
- <span slot-scope="scope">{{ scope.row.type }}</span>
|
|
|
+ <span slot-scope="scope"
|
|
|
+ >{{ scope.row.type | activityAudioTypeFilter
|
|
|
+ }}{{ scope.row.playTime | playTimFilter }}</span
|
|
|
+ >
|
|
|
</el-table-column>
|
|
|
<el-table-column width="80" label="状态">
|
|
|
<span slot-scope="scope">{{
|
|
|
- scope.row.enable | zeroOneEnableDisableFilter
|
|
|
+ scope.row.enable | booleanEnableDisableFilter
|
|
|
}}</span>
|
|
|
</el-table-column>
|
|
|
- <el-table-column width="100" label="语音">
|
|
|
+ <!-- <el-table-column width="100" label="语音">
|
|
|
<template slot-scope="scope">
|
|
|
<audio :src="scope.row.attachmentPath"></audio>
|
|
|
</template>
|
|
|
- </el-table-column>
|
|
|
+ </el-table-column> -->
|
|
|
<el-table-column width="120" label="操作人">
|
|
|
<span slot-scope="scope">{{ scope.row.updateName }}</span>
|
|
|
</el-table-column>
|
|
@@ -49,14 +52,20 @@
|
|
|
scope.row.updateTime | datetimeFilter
|
|
|
}}</span>
|
|
|
</el-table-column>
|
|
|
- <el-table-column :context="_self" label="操作" width="210" fixed="right">
|
|
|
+ <el-table-column :context="_self" label="操作" width="160" fixed="right">
|
|
|
<div slot-scope="scope">
|
|
|
- <el-button size="mini" type="primary" plain @click="edit(scope.row)">
|
|
|
+ <el-button
|
|
|
+ v-if="scope.row.audioDefault === 'CUSTOM'"
|
|
|
+ size="mini"
|
|
|
+ type="primary"
|
|
|
+ plain
|
|
|
+ @click="edit(scope.row)"
|
|
|
+ >
|
|
|
编辑
|
|
|
</el-button>
|
|
|
<el-button
|
|
|
size="mini"
|
|
|
- type="primary"
|
|
|
+ :type="!scope.row.enable ? 'primary' : 'danger'"
|
|
|
plain
|
|
|
@click="enableAudio(scope.row)"
|
|
|
>
|
|
@@ -80,7 +89,7 @@
|
|
|
|
|
|
<ActivityAudioDialog
|
|
|
ref="ActivityAudioDialog"
|
|
|
- :activity="selectedAudio"
|
|
|
+ :instance="selectedAudio"
|
|
|
@reload="searchForm"
|
|
|
/>
|
|
|
</div>
|
|
@@ -92,12 +101,18 @@ import {
|
|
|
toggleEnableActivityAudio,
|
|
|
} from "@/api/examwork-activity";
|
|
|
import ActivityAudioDialog from "./ActivityAudioDialog";
|
|
|
+import { timeNumberToText } from "@/utils/utils";
|
|
|
|
|
|
export default {
|
|
|
name: "ActivityAudioManagement",
|
|
|
components: {
|
|
|
ActivityAudioDialog,
|
|
|
},
|
|
|
+ filters: {
|
|
|
+ playTimFilter(val) {
|
|
|
+ return val ? timeNumberToText(val * 1000) : "";
|
|
|
+ },
|
|
|
+ },
|
|
|
computed: {
|
|
|
activityId() {
|
|
|
return this.$route.params.activityId;
|
|
@@ -153,9 +168,9 @@ export default {
|
|
|
async enableAudio(row) {
|
|
|
await toggleEnableActivityAudio({
|
|
|
audioId: row.id,
|
|
|
- enable: row.enable === 0 ? 1 : 0,
|
|
|
+ enable: !row.enable,
|
|
|
});
|
|
|
- this.searchForm();
|
|
|
+ row.enable = !row.enable;
|
|
|
},
|
|
|
},
|
|
|
};
|