diff --git a/src/api/index.js b/src/api/index.js index 6de14de..2f3ebc7 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -405,7 +405,7 @@ export default { productTypeList: `nakadai/productType/productTypeList`, supplierList: `nakadai/supplier/supplierList`, tagsList: `nakadai/tags/tagsList`, - listOfGoods: `nakadai/mall/listOfGoods`, + websiteProductList: `nakadai/mall/websiteProductList`, detailsOfGoods: `nakadai/mall/detailsOfGoods`, addLearningRecord: `nakadai/mallCourseLearningRecord/addLearningRecord`, // 课程管理三级联查 diff --git a/src/pages/achievement/info/course.vue b/src/pages/achievement/info/course.vue index 825730d..e069aa2 100644 --- a/src/pages/achievement/info/course.vue +++ b/src/pages/achievement/info/course.vue @@ -326,7 +326,7 @@ export default { pageSizeDetail: 5, totalDetail: 0, curRow: {}, - stageNumber: [], + stageNumber: {}, loadIns: null }; }, @@ -351,20 +351,21 @@ export default { const per = +this.curTab const res = await this.$post(this.api.productReadScore, { pageNum: this.page, - pageSize: 10000, + pageSize: this.pageSize, keyWord: this.keyword, mallId: this.id, cid: this.cid, permissions: per, classId: this.classId }) - this.listDataAll = per ? res.listOfAssessmentResults.records : res.userScoreList.records + this.listData = per ? res.listOfAssessmentResults.records : res.userScoreList.records this.total = per ? res.listOfAssessmentResults.total : res.userScoreList.total const stat = res.experimentalStatistics this.avgScore = stat.averageScore this.peopleNum = stat.experimentalPopulation this.maxScore = stat.maxScore this.minScore = stat.minScore + this.stageNumber = res.stageNumber const err = (per ? res.testErrorRateUnderProduct : res.projectErrorRateAnalysisUnderProduct) || [] err.forEach(e => { e.errorRate = (+e.errorRate).toFixed(2) @@ -379,7 +380,6 @@ export default { this.show(row) this.$store.commit('achievement/setRow', null) }) - this.handlePage() this.getChart() }, initData () { @@ -405,11 +405,6 @@ export default { }) this.initData() }, - // 分页 - handlePage () { - const list = this.listDataAll - this.listData = list.slice((this.page - 1) * this.pageSize, this.page * this.pageSize) - }, // 练习考核切换 tabChange () { this.$router.push({ @@ -509,7 +504,7 @@ export default { }, handleCurrentChange (val) { // 切换分页 this.page = val - this.handlePage() + this.getData(); }, // 打开成绩详情 @@ -566,36 +561,10 @@ export default { this.$router.push(this.curTab == 1 ? `show?reportId=${row.reportId}` : `project?id=${row.projectId}&projectName=${row.projectName}&classId=${this.curRow.classId || ''}&workNumber=${row.workNumber || row.userName}&mallId=${this.id}`) }, getChart () { // 初始化折线图 - const data = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] - const list = this.listDataAll - const prop = this.curTab == 0 ? 'avgScore' : 'averageScore' - list.map(n => { - const val = n[prop] - if (val === 0) { - data[0]++; - } else if (val > 0 && val <= 10) { - data[1]++; - } else if (val > 10 && val <= 20) { - data[2]++; - } else if (val > 20 && val <= 30) { - data[3]++; - } else if (val > 30 && val <= 40) { - data[4]++; - } else if (val > 40 && val <= 50) { - data[5]++; - } else if (val > 50 && val <= 60) { - data[6]++; - } else if (val > 60 && val <= 70) { - data[7]++; - } else if (val > 70 && val <= 80) { - data[8]++; - } else if (val > 80 && val <= 90) { - data[9]++; - } else if (val > 90 && val <= 100) { - data[10]++; - } - }) - + const data = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + for (const i in this.stageNumber) { + data[+(i.replace('num', '')) - 1] = this.stageNumber[i] + } let myChart = echarts.init(document.getElementById("chart")); myChart.setOption({ title: { text: "实验分数分布图" }, @@ -605,12 +574,13 @@ export default { type: "category", boundaryGap: false, interval: 10, - data: ["0", "10", "20", "30", "40", "50", "60", "70", "80", "90", '100'] + data: ["0-10", "11-20", "21-30", "31-40", "41-50", "51-60", "61-70", "71-80", "81-90", "91-100"] }, yAxis: { name: "人数", type: "value", - interval: 1 + interval: 5, + minInterval: 5, }, series: [{ data, diff --git a/src/pages/achievement/info/project.vue b/src/pages/achievement/info/project.vue index 559768e..b410319 100644 --- a/src/pages/achievement/info/project.vue +++ b/src/pages/achievement/info/project.vue @@ -60,11 +60,11 @@
错误率最高:{{ max.judgmentName }} - 参加考试{{ permissions ? max.peopleNum : peopleNum }}人 | {{ permissions ? `共${max.errorTotal || 0}人做错,` : '' }}错误率{{ max.errorRate }}% + 参加考试{{ peopleNum }}人 | {{ permissions ? `共${max.errorTotal || 0}人做错,` : '' }}错误率{{ max.errorRate }}%
错误率最低:{{ min.judgmentName }} - 参加考试{{ permissions ? min.peopleNum : peopleNum }}人 | {{ permissions ? `共${min.errorTotal || 0}人做错,` : '' }}错误率{{ min.errorRate }}% + 参加考试{{ peopleNum }}人 | {{ permissions ? `共${min.errorTotal || 0}人做错,` : '' }}错误率{{ min.errorRate }}%
k) - const yData = Array.from({ length: 101 }, (v, k) => 0) - const list = this.listData - list.map(n => { - yData[n.score]++ - }) + const data = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + for (const i in this.scores) { + data[+(i.replace('num', '')) - 1] = this.scores[i] + } let myChart = echarts.init(document.getElementById("chart")); myChart.setOption({ title: { text: "实验分数分布图" }, @@ -545,19 +538,20 @@ export default { name: "分数", type: "category", boundaryGap: false, - interval: 5, - axisLabel: { - interval: 9, - }, - data: xData + // interval: 5, + // axisLabel: { + // interval: 9, + // }, + data: ["0-10", "11-20", "21-30", "31-40", "41-50", "51-60", "61-70", "71-80", "81-90", "91-100"] }, yAxis: { name: this.permissions ? "人数" : '成绩报告数量', type: "value", - interval: 5 + interval: 5, + minInterval: 5, }, series: [{ - data: yData, + data, type: "line", areaStyle: {}, color: ["#8191fd"] diff --git a/src/pages/product/list/index.vue b/src/pages/product/list/index.vue index 33d4118..000af60 100644 --- a/src/pages/product/list/index.vue +++ b/src/pages/product/list/index.vue @@ -301,8 +301,8 @@ export default { }, // 获取列表 getData () { - this.loadIns = Loading.service() - this.$post(this.api.listOfGoods, { + // this.loadIns = Loading.service() + this.$post(this.api.websiteProductList, { ...this.form, pageNum: this.page, pageSize: this.pageSize, @@ -321,9 +321,9 @@ export default { }) this.list = list ? list : [] this.total = page.total - this.loadIns.close() + // this.loadIns.close() }).catch(res => { - this.loadIns.close() + // this.loadIns.close() }) }, initData () { diff --git a/src/pages/product/show/index.vue b/src/pages/product/show/index.vue index 819f6b7..4f639df 100644 --- a/src/pages/product/show/index.vue +++ b/src/pages/product/show/index.vue @@ -348,7 +348,7 @@ export default { }, // 热门产品 getHot () { - this.$post(this.api.listOfGoods, { + this.$post(this.api.websiteProductList, { hotTag: 1, sort: 1, pageNum: 1, diff --git a/src/pages/screen/index.vue b/src/pages/screen/index.vue index 7e44446..ef23d82 100644 --- a/src/pages/screen/index.vue +++ b/src/pages/screen/index.vue @@ -766,7 +766,7 @@ export default { }, ] // 登录前登录后调的课程接口不一样 - const cousrseRes = await this.$post(this.api.listOfGoods, { + const cousrseRes = await this.$post(this.api.websiteProductList, { pageNum: 1, pageSize: 1000, sort: 0,