Commit c0379768 authored by WBY1026's avatar WBY1026

完成数据统计的全部部分

parent 568d16b5
import request from '@/utils/request'
/**
* 查询列表
* @param params
* @returns {AxiosPromise}
*/
export function getExamineList(name,rows, page) {
return request({
url: '/blesson/getExamineList?rows=' + rows + '&page=' + page + '&lessonName=' + name,
method: 'get'
})
}
// 查询侧拉列表
// 参与考核人数
export function getExamineParticipant(businessId, page, rows) {
return request({
url: '/blesson/getExamineParticipant?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 满分人数
export function getFullMark(businessId, page, rows) {
return request({
url: '/blesson/getFullMark?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 及格人数
export function getPassNumber(businessId, page, rows) {
return request({
url: '/blesson/getPassNumber?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// ===============================
import request from '@/utils/request'
/**
* 查询列表
* @param params
* @returns {AxiosPromise}
*/
export function getUserView(name,rows, page) {
return request({
url: '/pc/sysuser/getUserView?rows=' + rows + '&page=' + page + '&name=' + name,
method: 'get'
})
}
// 查询侧拉列表
// 计划课程总数
export function getTotal(businessId, page, rows) {
return request({
url: '/pc/sysuser/getTotal?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 学习中课程数
export function getLearning(businessId, page, rows) {
return request({
url: '/pc/sysuser/getLearning?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 已学完课程数
export function getFinish(businessId, page, rows) {
return request({
url: '/pc/sysuser/getFinish?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 未开始课程数
export function getNotStart(businessId, page, rows) {
return request({
url: '/pc/sysuser/getNotStart?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 参与考核课程数
export function getExamedNumber(businessId, page, rows) {
return request({
url: '/pc/sysuser/getExamedNumber?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// 未考核课程数
export function getNotExamedNumber(businessId, page, rows) {
return request({
url: '/pc/sysuser/getNotExamedNumber?businessId=' + businessId + '&page=' + page + '&rows=' + rows,
method: 'get'
})
}
// ===============================
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
<span style="font-size: 16px;">课程名称:</span> <span style="font-size: 16px;">课程名称:</span>
<span> <span>
<el-input v-model="input" placeholder="请输入" style="width: 140px; margin-left: 10px;"></el-input> <el-input v-model="input" placeholder="请输入" style="width: 140px; margin-left: 10px;"></el-input>
<el-button type="primary" style="margin-left: 10px;">查询</el-button> <el-button type="primary" style="margin-left: 10px;" @click="searchByName">查询</el-button>
<el-button>重置</el-button> <el-button @click="reset">重置</el-button>
</span> </span>
</div> </div>
<el-table <el-table
...@@ -22,9 +22,8 @@ ...@@ -22,9 +22,8 @@
:header-cell-style="{background:'rgb(250,250,250)'}"> :header-cell-style="{background:'rgb(250,250,250)'}">
<el-table-column type="index" width="55" label="序号" align="center" /> <el-table-column type="index" width="55" label="序号" align="center" />
<el-table-column label="课程名称" align="center" prop="lessonName" /> <el-table-column label="课程名称" align="center" prop="lessonName" />
<el-table-column label="试题数量" align="center" prop="testNumber" width="130" <el-table-column label="试题数量" align="center" prop="testNumber" width="130" />
:show-overflow-tooltip="true" /> <el-table-column label="总分" align="center" prop="full"/>
<el-table-column label="总分" align="center" prop="full" :show-overflow-tooltip="true" />
<el-table-column label="及格分数" align="center" prop="line"></el-table-column> <el-table-column label="及格分数" align="center" prop="line"></el-table-column>
<el-table-column label="参与考核人数" align="center" prop="participant"></el-table-column> <el-table-column label="参与考核人数" align="center" prop="participant"></el-table-column>
<el-table-column label="平均分" align="center" prop="avg"></el-table-column> <el-table-column label="平均分" align="center" prop="avg"></el-table-column>
...@@ -55,8 +54,8 @@ ...@@ -55,8 +54,8 @@
<!-- 内容 --> <!-- 内容 -->
<div style="width: 90%; margin-left: 5%;"> <div style="width: 90%; margin-left: 5%;">
<div>课程名称:</div> <span style="width: 50%;">课程:{{ this.detailQueryParams.lessonName }}</span>
<div>未开始人数:</div> <span style="margin-left: 50%;">{{this.detailQueryParams.label}}:{{ this.detailQueryParams.labelInfo }}</span>
<el-table v-loading="loading" border :data="detailList"> <el-table v-loading="loading" border :data="detailList">
<el-table-column type="index" width="55" label="序号" align="center" /> <el-table-column type="index" width="55" label="序号" align="center" />
<el-table-column v-for="(column, index) in drawerHead" :key="index" <el-table-column v-for="(column, index) in drawerHead" :key="index"
...@@ -80,6 +79,7 @@ ...@@ -80,6 +79,7 @@
<script> <script>
import { getDataCache, setDataCache } from '@/assets/js/filterData' import { getDataCache, setDataCache } from '@/assets/js/filterData'
import { getExamineList,getExamineParticipant,getFullMark,getPassNumber } from '@/api/dataStatistics/assessView'
export default { export default {
name: 'assessView', name: 'assessView',
...@@ -192,6 +192,9 @@ export default { ...@@ -192,6 +192,9 @@ export default {
detailQueryParams: { detailQueryParams: {
page: 1, page: 1,
rows: 10, rows: 10,
lessonName: '',
label: '',
labelInfo: '',
username: '', username: '',
loginTime: '' loginTime: ''
}, },
...@@ -209,25 +212,106 @@ export default { ...@@ -209,25 +212,106 @@ export default {
}, },
created() { created() {
},
mounted() {
this.init()
}, },
methods: { methods: {
init() {
this.list = []
this.getList()
},
searchByName() {
this.queryParams.page = 1
this.queryParams.rows = 10
this.getList()
},
reset(){
this.input = ''
this.queryParams.page = 1
this.queryParams.rows = 10
this.getList()
},
/** 查询分页 */ /** 查询分页 */
getList() { getList() {
// this.loading = true getExamineList(this.input, this.queryParams.rows , this.queryParams.page)
// list(this.addDateRange(this.queryParams, this.dateRange)).then(response => { .then((res)=>{
// this.list = response.rows let data = res.data
// this.total = response.total this.list = data.records
// this.loading = false this.total = data.total
// }) })
.catch((err)=>{
console.log(err);
})
}, },
/** 查询分页 */ /** 查询分页 */
detailGetList() { detailGetList() {
// this.loading = true switch (this.detailQueryParams.column) {
// list(this.addDateRange(this.queryParams, this.dateRange)).then(response => { case 'participant':
// this.list = response.rows this.drawer = true
// this.total = response.total getExamineParticipant(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
// this.loading = false .then((res)=>{
// }) let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '单位类型',prop: 'unitType'},
{label: '所属单位',prop: 'unitName'},
{label: '登录名',prop: 'userName'},
{label: '用户姓名',prop: 'name'},
{label: '考核成绩(分)',prop: 'score'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'fullNumber':
this.drawer = true
getFullMark(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '单位类型',prop: 'unitType'},
{label: '所属单位',prop: 'unitName'},
{label: '登录名',prop: 'userName'},
{label: '用户姓名',prop: 'name'},
{label: '考核成绩(分)',prop: 'score'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'passNumber':
this.drawer = true
getPassNumber(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '单位类型',prop: 'unitType'},
{label: '所属单位',prop: 'unitName'},
{label: '登录名',prop: 'userName'},
{label: '用户姓名',prop: 'name'},
{label: '考核成绩(分)',prop: 'score'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
default:
// console.log('Unknown fruit.');
}
}, },
// 右侧弹窗关闭逻辑 // 右侧弹窗关闭逻辑
handleClose(done) { handleClose(done) {
...@@ -235,13 +319,21 @@ export default { ...@@ -235,13 +319,21 @@ export default {
}, },
// 获取被点击的格的信息 // 获取被点击的格的信息
clickTable(row,column,event,cell) { clickTable(row,column,event,cell) {
this.drawer = true this.detailList = []
// 行信息 this.detailQueryParams.page = 1
console.log(row) this.detailQueryParams.rows = 10
// 列信息 // // 行的信息
console.log(column) // console.log(row.businessId);
console.log(event) // // 列的信息
console.log(cell) // console.log(column.property);
this.detailQueryParams.id = row.businessId
this.detailQueryParams.column = column.property
this.detailQueryParams.lessonName = row.lessonName
this.detailQueryParams.label = column.label
this.detailQueryParams.labelInfo = row[column.property]
this.detailGetList(this.detailQueryParams.rows, this.detailQueryParams.page)
}, },
} }
} }
...@@ -252,7 +344,6 @@ export default { ...@@ -252,7 +344,6 @@ export default {
margin-left: 1%; margin-left: 1%;
margin-top: 20px; margin-top: 20px;
width: 98%; width: 98%;
height: 500px;
border-radius: 4px; border-radius: 4px;
// box-shadow: 0 0 5px rgba(63, 63, 63, 0.4); // box-shadow: 0 0 5px rgba(63, 63, 63, 0.4);
......
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
<span style="font-size: 16px;">姓名:</span> <span style="font-size: 16px;">姓名:</span>
<span> <span>
<el-input v-model="input" placeholder="请输入" style="width: 140px; margin-left: 10px;"></el-input> <el-input v-model="input" placeholder="请输入" style="width: 140px; margin-left: 10px;"></el-input>
<el-button type="primary" style="margin-left: 10px;">查询</el-button> <el-button type="primary" style="margin-left: 10px;" @click="searchByName">查询</el-button>
<el-button>重置</el-button> <el-button @click="reset">重置</el-button>
</span> </span>
</div> </div>
<el-table <el-table
...@@ -53,8 +53,8 @@ ...@@ -53,8 +53,8 @@
<!-- 内容 --> <!-- 内容 -->
<div style="width: 90%; margin-left: 5%;"> <div style="width: 90%; margin-left: 5%;">
<div>课程名称:</div> <span style="width: 50%;">{{ this.detailQueryParams.name }}-{{ this.detailQueryParams.unitName }}-{{ this.detailQueryParams.phone }}</span>
<div>未开始人数:</div> <span style="margin-left: 20%;">{{this.detailQueryParams.label}}:{{ this.detailQueryParams.labelInfo }}</span>
<el-table v-loading="loading" border :data="detailList"> <el-table v-loading="loading" border :data="detailList">
<el-table-column type="index" width="55" label="序号" align="center" /> <el-table-column type="index" width="55" label="序号" align="center" />
<el-table-column v-for="(column, index) in drawerHead" :key="index" <el-table-column v-for="(column, index) in drawerHead" :key="index"
...@@ -78,6 +78,8 @@ ...@@ -78,6 +78,8 @@
<script> <script>
import { getDataCache, setDataCache } from '@/assets/js/filterData' import { getDataCache, setDataCache } from '@/assets/js/filterData'
import { getUserView, getTotal,getLearning,getFinish,getNotStart,getExamedNumber,getNotExamedNumber } from '@/api/dataStatistics/userView'
export default { export default {
name: 'userView', name: 'userView',
...@@ -185,7 +187,13 @@ export default { ...@@ -185,7 +187,13 @@ export default {
page: 1, page: 1,
rows: 10, rows: 10,
username: '', username: '',
loginTime: '' loginTime: '',
name: '',
unitName: '',
phone: '',
label: '',
labelInfo: '',
}, },
// 右到左的抽屉相关数据 // 右到左的抽屉相关数据
drawer: false, drawer: false,
...@@ -201,25 +209,171 @@ export default { ...@@ -201,25 +209,171 @@ export default {
}, },
created() { created() {
},
mounted() {
this.init()
}, },
methods: { methods: {
init() {
this.list = []
this.getList()
},
searchByName() {
this.queryParams.page = 1
this.queryParams.rows = 10
this.getList()
},
reset(){
this.input = ''
this.queryParams.page = 1
this.queryParams.rows = 10
this.getList()
},
/** 查询分页 */ /** 查询分页 */
getList() { getList() {
// this.loading = true getUserView(this.input, this.queryParams.rows , this.queryParams.page)
// list(this.addDateRange(this.queryParams, this.dateRange)).then(response => { .then((res)=>{
// this.list = response.rows let data = res.data
// this.total = response.total this.list = data.records
// this.loading = false this.total = data.total
// }) })
.catch((err)=>{
console.log(err);
})
}, },
/** 查询分页 */ /** 查询分页 */
detailGetList() { detailGetList() {
// this.loading = true switch (this.detailQueryParams.column) {
// list(this.addDateRange(this.queryParams, this.dateRange)).then(response => { case 'total':
// this.list = response.rows this.drawer = true
// this.total = response.total getTotal(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
// this.loading = false .then((res)=>{
// }) let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '学习类型',prop: 'classType'},
{label: '课程名称',prop: 'className'},
{label: '课程讲师',prop: 'classTeacher'},
{label: '剩余有效天数',prop: 'days'},
{label: '学习状态',prop: 'status'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'learning':
this.drawer = true
getLearning(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '学习类型',prop: 'classType'},
{label: '课程名称',prop: 'className'},
{label: '课程讲师',prop: 'classTeacher'},
{label: '剩余有效天数',prop: 'days'},
{label: '学习进度',prop: 'schedule'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'finish':
this.drawer = true
getFinish(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '学习类型',prop: 'classType'},
{label: '课程名称',prop: 'className'},
{label: '课程讲师',prop: 'classTeacher'},
{label: '课时',prop: 'classHour'},
{label: '完成日期',prop: 'finishDate'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'notStart':
this.drawer = true
getNotStart(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '学习类型',prop: 'classType'},
{label: '课程名称',prop: 'className'},
{label: '课程讲师',prop: 'classTeacher'},
{label: '剩余有效天数',prop: 'days'},
{label: '学习状态',prop: 'status'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'examedNumber':
this.drawer = true
getExamedNumber(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '课程名称',prop: 'className'},
{label: '满分/及格线',prop: 'standard'},
{label: '课程平均分',prop: 'courseAverage'},
{label: '考核提交时间',prop: 'submissionTime'},
{label: '考核成绩(分)',prop: 'score'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
case 'notExamedNumber':
this.drawer = true
getNotExamedNumber(this.detailQueryParams.id,this.detailQueryParams.page,this.detailQueryParams.rows)
.then((res)=>{
let data = res.data
this.detailList = data.records
this.drawerHead = [
{label: '课程名称',prop: 'className'},
{label: '满分/及格线',prop: 'standard'},
{label: '课程平均分',prop: 'courseAverage'},
{label: '最高分',prop: 'topScore'},
{label: '最低分',prop: 'lowScore'},
]
this.detailTotal = data.total
})
.catch((err)=>{
console.log(err);
})
break;
default:
// console.log('Unknown fruit.');
}
}, },
// 右侧弹窗关闭逻辑 // 右侧弹窗关闭逻辑
handleClose(done) { handleClose(done) {
...@@ -227,13 +381,22 @@ export default { ...@@ -227,13 +381,22 @@ export default {
}, },
// 获取被点击的格的信息 // 获取被点击的格的信息
clickTable(row,column,event,cell) { clickTable(row,column,event,cell) {
this.drawer = true this.detailList = []
// 行信息 this.detailQueryParams.page = 1
console.log(row) this.detailQueryParams.rows = 10
// 列信息 // // 行的信息
console.log(column) // console.log(row.businessId);
console.log(event) // // 列的信息
console.log(cell) // console.log(column.property);
this.detailQueryParams.id = row.businessId
this.detailQueryParams.column = column.property
this.detailQueryParams.name = row.name
this.detailQueryParams.unitName = row.unitName
this.detailQueryParams.phone = row.phone
this.detailQueryParams.label = column.label
this.detailQueryParams.labelInfo = row[column.property]
this.detailGetList(this.detailQueryParams.rows, this.detailQueryParams.page)
}, },
} }
} }
...@@ -244,7 +407,6 @@ export default { ...@@ -244,7 +407,6 @@ export default {
margin-left: 1%; margin-left: 1%;
margin-top: 20px; margin-top: 20px;
width: 98%; width: 98%;
height: 500px;
border-radius: 4px; border-radius: 4px;
// box-shadow: 0 0 5px rgba(63, 63, 63, 0.4); // box-shadow: 0 0 5px rgba(63, 63, 63, 0.4);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment