|
|
@@ -26,26 +26,28 @@
|
|
|
<el-button @click="getData" type="primary" icon="el-icon-search">查询 </el-button>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <!-- <el-form-item label="活动日期">
|
|
|
- <el-date-picker v-model="date" type="date" placeholder="选择日期" class="filter-item">
|
|
|
- </el-date-picker>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="时间">
|
|
|
- <el-radio-group v-model="morning" @change="getData" class="filter-item">
|
|
|
- <el-radio-button :label="true">上午</el-radio-button>
|
|
|
- <el-radio-button :label="false">下午</el-radio-button>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="活动地点">
|
|
|
- <el-select v-model="form.address" class="filter-item">
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in addresses"
|
|
|
- :key="index"
|
|
|
- :value="item.value"
|
|
|
- :label="item.value"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item> -->
|
|
|
+ <div v-if="!performance.online">
|
|
|
+ <el-form-item label="活动日期">
|
|
|
+ <el-date-picker v-model="date" type="date" placeholder="选择日期" class="filter-item">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="时间">
|
|
|
+ <el-radio-group v-model="morning" @change="getData" class="filter-item">
|
|
|
+ <el-radio-button :label="true">上午</el-radio-button>
|
|
|
+ <el-radio-button :label="false">下午</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="活动地点">
|
|
|
+ <el-select v-model="form.address" class="filter-item">
|
|
|
+ <el-option
|
|
|
+ v-for="(item, index) in addresses"
|
|
|
+ :key="index"
|
|
|
+ :value="item.value"
|
|
|
+ :label="item.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
<!-- <el-form-item label="评审专家"></el-form-item> -->
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
@@ -70,7 +72,8 @@
|
|
|
<template slot-scope="{ row }">{{ row.participant.join(',') }}</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="quantity" label="表演人数" min-width="70"> </el-table-column>
|
|
|
- <!-- <el-table-column prop="signedIn" label="状态" :formatter="signedInFormatter"> </el-table-column> -->
|
|
|
+ <el-table-column prop="signedIn" label="状态" :formatter="signedInFormatter" v-if="!performance.online">
|
|
|
+ </el-table-column>
|
|
|
<el-table-column prop="score" label="成绩"> </el-table-column>
|
|
|
<el-table-column prop="myScore" label="评分" align="center" min-width="120">
|
|
|
<template slot-scope="{ row }">
|
|
|
@@ -104,8 +107,8 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="操作" align="left" fixed="right" min-width="100">
|
|
|
- <template slot-scope="{ row }">
|
|
|
- <el-button @click="playVideo(row)" size="mini" plain type="primary">查看作品</el-button>
|
|
|
+ <template slot-scope="{ row, $index }">
|
|
|
+ <el-button @click="playVideo(row, $index)" size="mini" plain type="primary">查看作品</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
@@ -132,44 +135,51 @@
|
|
|
</div>
|
|
|
|
|
|
<el-dialog class="videoDialog" destroy-on-close center append-to-body :visible.sync="showViedo" width="70%">
|
|
|
- <video :src="programme.video" controls style="height: 80%; max-width: 80%; margin: 0 auto">
|
|
|
+ <video :src="programme.video" controls style="height: 85%; max-width: 85%; margin: 0 auto">
|
|
|
您的浏览器不支持 video 标签。
|
|
|
</video>
|
|
|
- <el-form>
|
|
|
- <el-form-item label="分数">
|
|
|
- <span v-if="programme.second">{{ programme.myScore }}</span>
|
|
|
- <el-input-number
|
|
|
- v-else
|
|
|
- v-model="programme.myScore"
|
|
|
- size="mini"
|
|
|
- label=""
|
|
|
- :min="0"
|
|
|
- :max="100"
|
|
|
- :step="1"
|
|
|
- :controls="true"
|
|
|
- controls-position="both"
|
|
|
- @change="saveScore(row)"
|
|
|
- >
|
|
|
- </el-input-number>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="备注">
|
|
|
- <span v-if="programme.second">{{ programme.remark }}</span>
|
|
|
- <el-input
|
|
|
- v-else
|
|
|
- size="mini"
|
|
|
- @change="saveScore(row)"
|
|
|
- v-model="programme.remark"
|
|
|
- placeholder="请输入备注"
|
|
|
- style="width: 200px"
|
|
|
- clearable
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <el-button size="mini">保存</el-button>
|
|
|
- <el-button size="mini">上一个</el-button>
|
|
|
- <el-button size="mini">下一个</el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <el-card shadow="never" style="width: 85%; margin: 10px auto">
|
|
|
+ <el-form :form="programme">
|
|
|
+ <el-form-item label="分数">
|
|
|
+ <span v-if="programme.second">{{ programme.myScore }}</span>
|
|
|
+ <el-input-number
|
|
|
+ v-else
|
|
|
+ v-model="programme.myScore"
|
|
|
+ size="mini"
|
|
|
+ label=""
|
|
|
+ :min="0"
|
|
|
+ :max="100"
|
|
|
+ :step="1"
|
|
|
+ :controls="true"
|
|
|
+ controls-position="both"
|
|
|
+ @change="saveScore(row)"
|
|
|
+ >
|
|
|
+ </el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="备注">
|
|
|
+ <span v-if="programme.second">{{ programme.remark }}</span>
|
|
|
+ <el-input
|
|
|
+ v-else
|
|
|
+ size="mini"
|
|
|
+ @change="saveScore(row)"
|
|
|
+ v-model="programme.remark"
|
|
|
+ placeholder="请输入备注"
|
|
|
+ style="width: 200px"
|
|
|
+ clearable
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button size="mini" v-if="!programme.second">保存</el-button>
|
|
|
+ <el-button size="mini" @click="move(-1)" :disabled="index == 0">上一个</el-button>
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ @click="move(1)"
|
|
|
+ :disabled="(page - 1) * pageSize + index == totalElements - 1"
|
|
|
+ >下一个</el-button
|
|
|
+ >
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-card>
|
|
|
<!-- <video
|
|
|
:src="videoUrl"
|
|
|
controlsList="nodownload noremote footbar"
|
|
|
@@ -205,6 +215,7 @@ export default {
|
|
|
dialogSign: false,
|
|
|
performanceId: '',
|
|
|
performances: [],
|
|
|
+ performance: {},
|
|
|
signedInOptions: [
|
|
|
{ label: '已签到', value: 'SIGNED_IN' },
|
|
|
{ label: '未签到', value: 'UNSIGNED' },
|
|
|
@@ -217,7 +228,8 @@ export default {
|
|
|
columnKeys: ['arrangeName'],
|
|
|
addressList: [],
|
|
|
showViedo: false,
|
|
|
- programme: {}
|
|
|
+ programme: {},
|
|
|
+ index: 0
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
@@ -244,6 +256,7 @@ export default {
|
|
|
});
|
|
|
});
|
|
|
this.performanceId = res.content[0].id;
|
|
|
+ this.performance = res.content[0];
|
|
|
this.getData();
|
|
|
this.$http
|
|
|
.post('/performanceSchedule/all', { size: 100 }, { body: 'json' })
|
|
|
@@ -354,7 +367,8 @@ export default {
|
|
|
this.$http
|
|
|
.post('/programmeScore/saveScore?programmeId=' + row.id, {
|
|
|
score: row.myScore,
|
|
|
- remark: row.remark
|
|
|
+ remark: row.remark,
|
|
|
+ performanceId: row.performanceId
|
|
|
})
|
|
|
.then(res => {
|
|
|
this.$message.success('评分成功');
|
|
|
@@ -431,13 +445,19 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
- playVideo(row) {
|
|
|
+ playVideo(row, index) {
|
|
|
+ this.index = index;
|
|
|
if (row.video) {
|
|
|
this.showViedo = true;
|
|
|
this.programme = row;
|
|
|
} else {
|
|
|
this.$message.success('暂无视频');
|
|
|
}
|
|
|
+ },
|
|
|
+ move(direction) {
|
|
|
+ const end = direction + this.index;
|
|
|
+ this.programme = { ...this.tableData[end] };
|
|
|
+ this.index = end;
|
|
|
}
|
|
|
}
|
|
|
};
|