|
|
|
@ -132,16 +132,32 @@
|
|
|
|
|
<el-tab-pane label="转发" :name="5"></el-tab-pane>
|
|
|
|
|
<el-tab-pane label="推荐" :name="6"></el-tab-pane>
|
|
|
|
|
</el-tabs>
|
|
|
|
|
<div class="middle-tab" style="">
|
|
|
|
|
<el-radio-group @change="changeDateType" v-model="playNumForm.dateCondition" size="default">
|
|
|
|
|
<div class="middle-tab">
|
|
|
|
|
<el-form :inline="true">
|
|
|
|
|
<el-form-item label="用户">
|
|
|
|
|
<el-select clearable v-model="playNumForm.userId" @change="statusChange">
|
|
|
|
|
<el-option v-for="(item) in userList" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="任务">
|
|
|
|
|
<el-select clearable v-model="playNumForm.taskId" @change="statusChange">
|
|
|
|
|
<el-option v-for="(item) in taskList" :key="item.id" :label="item.title" :value="item.id"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item>
|
|
|
|
|
<el-radio-group style="margin-left: 12px" @change="changeDateType" v-model="playNumForm.dateCondition" size="default">
|
|
|
|
|
<el-radio-button :label="2">本周</el-radio-button>
|
|
|
|
|
<el-radio-button :label="3">本月</el-radio-button>
|
|
|
|
|
<el-radio-button :label="4">全年</el-radio-button>
|
|
|
|
|
</el-radio-group>
|
|
|
|
|
<!-- <el-button @click="changeDateType(2)" size="default" text>本周</el-button>
|
|
|
|
|
<el-button @click="changeDateType(3)" size="default" text>本月</el-button>
|
|
|
|
|
<el-button @click="changeDateType(4)" size="default" text>全年</el-button> -->
|
|
|
|
|
<el-date-picker style="margin-left: 24px" size="default" value-format="YYYY-MM-DD HH:mm:ss" type="daterange" v-model="selTime" @change="dateRangeChange"></el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item>
|
|
|
|
|
<el-date-picker style="margin-left: 12px" value-format="YYYY-MM-DD HH:mm:ss" type="daterange" v-model="selTime" @change="dateRangeChange"></el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item>
|
|
|
|
|
<el-button @click="toExcel">导出Excel</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="chart-content">
|
|
|
|
@ -201,6 +217,8 @@ export default defineComponent({
|
|
|
|
|
dateCondition: 2
|
|
|
|
|
});
|
|
|
|
|
const playNumForm = reactive({
|
|
|
|
|
taskId: undefined,
|
|
|
|
|
userId: undefined,
|
|
|
|
|
dateCondition: 2,
|
|
|
|
|
beginTime: undefined,
|
|
|
|
|
endTime: undefined,
|
|
|
|
@ -210,13 +228,16 @@ export default defineComponent({
|
|
|
|
|
const tableData = ref([]);
|
|
|
|
|
const selTime = ref([]);
|
|
|
|
|
const myChart = ref();
|
|
|
|
|
const userList = ref([]);
|
|
|
|
|
const taskList = ref([]);
|
|
|
|
|
const { proxy } = getCurrentInstance();
|
|
|
|
|
return {
|
|
|
|
|
form,playNumForm,proxy,playNumFormType,myChart,selTime,
|
|
|
|
|
tableData,totalData
|
|
|
|
|
tableData,totalData,userList,taskList
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
this.getApi();
|
|
|
|
|
this.getTotal();
|
|
|
|
|
this.drawChart();
|
|
|
|
|
this.getRank();
|
|
|
|
@ -225,6 +246,25 @@ export default defineComponent({
|
|
|
|
|
statusChange() {
|
|
|
|
|
this.drawChart();
|
|
|
|
|
},
|
|
|
|
|
getApi() {
|
|
|
|
|
let obj = {pageNum: 1, pageSize: 1000}
|
|
|
|
|
this.proxy.$post("/task/list", obj).then(res => {
|
|
|
|
|
if(res.code == 200) {
|
|
|
|
|
const data = res.data.records
|
|
|
|
|
this.taskList = data
|
|
|
|
|
} else {
|
|
|
|
|
this.$message.error(res.msg)
|
|
|
|
|
}
|
|
|
|
|
}).catch(() => {});
|
|
|
|
|
this.proxy.$post("/user/list", obj).then(res => {
|
|
|
|
|
if(res.code == 200) {
|
|
|
|
|
const data = res.data.records
|
|
|
|
|
this.userList = data
|
|
|
|
|
} else {
|
|
|
|
|
this.$message.error(res.msg)
|
|
|
|
|
}
|
|
|
|
|
}).catch(() => {});
|
|
|
|
|
},
|
|
|
|
|
getTotal() {
|
|
|
|
|
this.proxy.$post("/statistics/data1", {}).then(res => {
|
|
|
|
|
if(res.code == 200) {
|
|
|
|
@ -314,6 +354,12 @@ export default defineComponent({
|
|
|
|
|
},
|
|
|
|
|
rankStatusChange() {
|
|
|
|
|
this.getRank()
|
|
|
|
|
},
|
|
|
|
|
toExcel() {
|
|
|
|
|
let date = new Date()
|
|
|
|
|
this.proxy.$download("/statistics/excel2", this.playNumForm, '播放量趋势'+date.toLocaleString()+'.xlsx').then(res => {
|
|
|
|
|
console.log(res);
|
|
|
|
|
}).catch(() => {});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|