Commit 4e7cafc5 authored by zhengke's avatar zhengke

Merge branch 'master' of http://gitlab.oytour.com/youjie/thinkapp

parents 0c9d85ab 589effb0
...@@ -17,8 +17,10 @@ ...@@ -17,8 +17,10 @@
onMounted, onMounted,
} from "vue"; } from "vue";
export default { export default {
props: {}, props: {
setup() { DifficultyList:[]
},
setup(props) {
let data = reactive({ let data = reactive({
chartData: {}, chartData: {},
opts: { opts: {
...@@ -70,11 +72,19 @@ ...@@ -70,11 +72,19 @@
//模拟从服务器获取数据时的延时 //模拟从服务器获取数据时的延时
setTimeout(() => { setTimeout(() => {
//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接 //模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
let cate =[];
let serNum =[];
let serScore=[];
props.DifficultyList.forEach(item=>{
cate.push(item.Difficulty);
serNum.push(item.Count);
serScore.push(item.Score);
});
let res = { let res = {
categories: ["简单", "中档题", "难题"], categories: cate,
series: [{ series: [{
name: "题目数量", name: "题目数量",
data: [4, 16, 5], data: serNum,
textColor:"#CE8086", textColor:"#CE8086",
type: "column", type: "column",
index:0, index:0,
...@@ -86,7 +96,7 @@ ...@@ -86,7 +96,7 @@
color: "#282828", color: "#282828",
textColor:"#282828", textColor:"#282828",
index:1, index:1,
data: [8,62,30], data: serScore,
textOffset:-20 textOffset:-20
} }
] ]
......
...@@ -18,8 +18,8 @@ ...@@ -18,8 +18,8 @@
onMounted, onMounted,
} from "vue"; } from "vue";
export default { export default {
props: {}, props: ["ModuleList"],
setup() { setup(props) {
let data = reactive({ let data = reactive({
chartData: {}, chartData: {},
...@@ -52,8 +52,16 @@ ...@@ -52,8 +52,16 @@
//模拟从服务器获取数据时的延时 //模拟从服务器获取数据时的延时
setTimeout(() => { setTimeout(() => {
//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接 //模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
let cate = [];//模块名称
let grRate =[];//个人得分率
let avgRate =[];//平均得分率
props.ModuleList.forEach(item=>{
cate.push(item.Module);
grRate.push(item.ScoreRate * 100);
avgRate.push(item.AvgScoreRate * 100);
});
let res = { let res = {
categories: ["化学与生活", "物质分类", "物质的量综合", "离子反应", "氧还原反应", "化学实验","元素及其化合物"], categories: cate,
series: [ series: [
{ {
name: "", name: "",
...@@ -62,11 +70,11 @@ ...@@ -62,11 +70,11 @@
}, },
{ {
name: "平均得分率", name: "平均得分率",
data: [80,66,50,90,53,60,20] data: avgRate
}, },
{ {
name: "个人得分率", name: "个人得分率",
data: [74, 87, 69, 97, 16, 16,88] data: grRate
}, },
] ]
......
...@@ -18,8 +18,10 @@ ...@@ -18,8 +18,10 @@
onMounted, onMounted,
} from "vue"; } from "vue";
export default { export default {
props: {}, props: {
setup() { DifficultyRateList:[]
},
setup(props) {
let data = reactive({ let data = reactive({
chartData: {}, chartData: {},
...@@ -52,8 +54,16 @@ ...@@ -52,8 +54,16 @@
//模拟从服务器获取数据时的延时 //模拟从服务器获取数据时的延时
setTimeout(() => { setTimeout(() => {
//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接 //模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
let cate =[];
let grScore=[];
let avgScore=[];
props.DifficultyRateList.forEach(item=>{
cate.push(item.Difficulty);
grScore.push(item.ScoreRate * 100);
avgScore.push(item.AvgScoreRate * 100);
});
let res = { let res = {
categories: ["简单题", "中档题", "难题"], categories: cate,
series: [ series: [
{ {
name: "", name: "",
...@@ -62,11 +72,11 @@ ...@@ -62,11 +72,11 @@
}, },
{ {
name: "平均得分率", name: "平均得分率",
data: [80,66,50] data: avgScore
}, },
{ {
name: "个人得分率", name: "个人得分率",
data: [25, 87, 69] data: grScore
}, },
] ]
......
...@@ -4,39 +4,12 @@ ...@@ -4,39 +4,12 @@
<view v-for="(T,index) in TitleList" :key="index">{{T}}</view> <view v-for="(T,index) in TitleList" :key="index">{{T}}</view>
</view> </view>
<view class="allGraspTheSituation-content flex"> <view class="allGraspTheSituation-content flex">
<view class="allGraspTheSituation-left flex">
<view v-for="(l,index) in letftTitleList" :key="index">{{l}}</view>
</view>
<view class="allGraspTheSituation-right flex"> <view class="allGraspTheSituation-right flex">
<view class="allGraspTheSituation-num flex"> <view class="allGraspTheSituation-num flex" v-for="(item,index) in ModuleList" :key="index">
<text>2</text> <text>{{item.Module}}</text>
<text class="fullScore">100<text>%</text></text> <text>{{item.Score}}</text>
<text>12<text>.5</text></text> <text class="fullScore">{{item.ScoreRate * 100}}<text>%</text></text>
</view> <text class="fullScore">{{item.AvgScoreRate * 100}}<text>%</text></text>
<view class="allGraspTheSituation-num flex">
<text>2</text>
<text>62<text>%</text></text>
<text>3<text>.5</text></text>
</view>
<view class="allGraspTheSituation-num flex">
<text>2</text>
<text>62<text>%</text></text>
<text>3<text>.5</text></text>
</view>
<view class="allGraspTheSituation-num flex">
<text>2</text>
<text>62<text>%</text></text>
<text>3<text>.5</text></text>
</view>
<view class="allGraspTheSituation-num flex">
<text>2</text>
<text>62<text>%</text></text>
<text>3<text>.5</text></text>
</view>
<view class="allGraspTheSituation-num flex">
<text>2</text>
<text class="failed">45<text>%</text></text>
<text>12<text>.5</text></text>
</view> </view>
</view> </view>
...@@ -55,7 +28,7 @@ ...@@ -55,7 +28,7 @@
export default { export default {
props: { props: {
ModuleList:[]
}, },
components: {}, components: {},
setup() { setup() {
...@@ -67,8 +40,7 @@ ...@@ -67,8 +40,7 @@
}, },
showPhone: false, showPhone: false,
showLogin: true, //多次点击 showLogin: true, //多次点击
TitleList:['考点','分数','个人得分率','平均得分'], TitleList:['考点','分数','个人得分率','平均得分']
letftTitleList:['化学与生活','物质分类','物质的量综合','离子反应','氧化还原反应','化学实验','元素及其化合物']
}); });
return { return {
...toRefs(data), ...toRefs(data),
......
...@@ -13,41 +13,19 @@ ...@@ -13,41 +13,19 @@
width="200">{{item}}</th> width="200">{{item}}</th>
</tr> </tr>
<tr class="analysisTest-content-right flex"> <tr class="analysisTest-content-right flex">
<td class="analysisTest-td"> <td class="analysisTest-td" v-for="(item,index) in ScoreList" :key="index">
<view class="analysisTest-number">1</view> <view class="analysisTest-number">{{item.Sort}}</view>
<view class="analysisTest-difficulty"> <view class="analysisTest-difficulty">
<van-icon name="star" v-for="(s,index) in 3" :key="index"/> <view v-if="item.Difficulty == '易'"><van-icon name="star" v-for="(s,i) in 1" :key="i"/></view>
<view v-else-if="item.Difficulty == '中'"><van-icon name="star" v-for="(s,i) in 2" :key="i"/></view>
<view v-else-if="item.Difficulty == '难'"><van-icon name="star" v-for="(s,i) in 3" :key="i"/></view>
</view> </view>
<view class="analysisTest-KnowledgePoint">化学与生活</view> <view class="analysisTest-KnowledgePoint">{{item.KnowledgePoint}}</view>
<view class="analysisTest-ScoreOne">1</view> <view class="analysisTest-ScoreOne">{{item.QScore}}</view>
<view class="analysisTest-ScoreTwo">2</view> <view class="analysisTest-ScoreTwo">{{item.Score}}</view>
<view class="analysisTest-scoringRate">75%</view> <view class="analysisTest-scoringRate">{{item.ScoreRate * 100}}%</view>
<view class="analysisTest-TheAverageAcore">1.7555555555555555555555</view> <view class="analysisTest-TheAverageAcore">{{item.AvgScore}}</view>
<view class="analysisTest-averageScoringRate">88%</view> <view class="analysisTest-averageScoringRate">{{item.AvgScoreRate * 100}}%</view>
</td>
<td class="analysisTest-td">
<view class="analysisTest-number">1</view>
<view class="analysisTest-difficulty">
<van-icon name="star" v-for="(s,index) in 1" :key="index"/>
</view>
<view class="analysisTest-KnowledgePoint">化学与生活</view>
<view class="analysisTest-ScoreOne">1</view>
<view class="analysisTest-ScoreTwo">2</view>
<view class="analysisTest-scoringRate">75%</view>
<view class="analysisTest-TheAverageAcore">1.7555555555555555555555</view>
<view class="analysisTest-averageScoringRate">88%</view>
</td>
<td class="analysisTest-td">
<view class="analysisTest-number">1</view>
<view class="analysisTest-difficulty">
<van-icon name="star" v-for="(s,index) in 1" :key="index"/>
</view>
<view class="analysisTest-KnowledgePoint">化学与生活</view>
<view class="analysisTest-ScoreOne">1</view>
<view class="analysisTest-ScoreTwo">2</view>
<view class="analysisTest-scoringRate">75%</view>
<view class="analysisTest-TheAverageAcore">1.7555555555555555555555</view>
<view class="analysisTest-averageScoringRate">88%</view>
</td> </td>
</tr> </tr>
...@@ -68,9 +46,7 @@ ...@@ -68,9 +46,7 @@
} from "vue"; } from "vue";
export default { export default {
props: { props: ["ScoreList"],
},
components: {}, components: {},
setup() { setup() {
......
...@@ -4,21 +4,11 @@ ...@@ -4,21 +4,11 @@
<view v-for="(T,index) in TitleList" :key="index">{{T}}</view> <view v-for="(T,index) in TitleList" :key="index">{{T}}</view>
</view> </view>
<view class="dfficultyAnalysis-content flex"> <view class="dfficultyAnalysis-content flex">
<view class="dfficultyAnalysis-left flex">
<view v-for="(l,index) in letftTitleList" :key="index">{{l}}</view>
</view>
<view class="dfficultyAnalysis-right flex"> <view class="dfficultyAnalysis-right flex">
<view class="dfficultyAnalysis-num flex"> <view class="dfficultyAnalysis-num flex" v-for="(item,index) in DifficultyList" :key="index">
<text>2</text> <text>{{item.Difficulty}}</text>
<text>53<text>.5</text></text> <text>{{item.Count}}</text>
</view> <text>{{item.Score}}</text>
<view class="dfficultyAnalysis-num flex">
<text>2</text>
<text>62<text>.5</text></text>
</view>
<view class="dfficultyAnalysis-num flex">
<text>2</text>
<text>12<text>.5</text></text>
</view> </view>
</view> </view>
...@@ -37,7 +27,7 @@ ...@@ -37,7 +27,7 @@
export default { export default {
props: { props: {
DifficultyList:[]
}, },
components: {}, components: {},
setup() { setup() {
...@@ -49,8 +39,7 @@ ...@@ -49,8 +39,7 @@
}, },
showPhone: false, showPhone: false,
showLogin: true, //多次点击 showLogin: true, //多次点击
TitleList:['题目难度','题目数量','题目分数'], TitleList:['题目难度','题目数量','题目分数']
letftTitleList:['简单题','中档题','难题']
}); });
return { return {
...toRefs(data), ...toRefs(data),
......
...@@ -4,21 +4,11 @@ ...@@ -4,21 +4,11 @@
<view v-for="(T,index) in TitleList" :key="index">{{T}}</view> <view v-for="(T,index) in TitleList" :key="index">{{T}}</view>
</view> </view>
<view class="graspTheSituation-content flex"> <view class="graspTheSituation-content flex">
<view class="graspTheSituation-left flex">
<view v-for="(l,index) in letftTitleList" :key="index">{{l}}</view>
</view>
<view class="graspTheSituation-right flex"> <view class="graspTheSituation-right flex">
<view class="graspTheSituation-num flex"> <view class="graspTheSituation-num flex" v-for="(item,index) in DifficultyRateList" :key="index">
<text>2<text>%</text></text> <text>{{item.Difficulty}}</text>
<text>53<text>%</text></text> <text>{{item.ScoreRate}}<text>%</text></text>
</view> <text>{{item.AvgScoreRate}}<text>%</text></text>
<view class="graspTheSituation-num flex">
<text>2<text>%</text></text>
<text>62<text>%</text></text>
</view>
<view class="graspTheSituation-num flex">
<text>2<text>%</text></text>
<text>12<text>%</text></text>
</view> </view>
</view> </view>
...@@ -37,7 +27,7 @@ ...@@ -37,7 +27,7 @@
export default { export default {
props: { props: {
DifficultyRateList:[]
}, },
components: {}, components: {},
setup() { setup() {
......
...@@ -12,13 +12,13 @@ ...@@ -12,13 +12,13 @@
</view> </view>
<view class="scoreDetails-header-tetx"> <view class="scoreDetails-header-tetx">
<view class="scoreDetails-header-name"> <view class="scoreDetails-header-name">
周一围 {{ExamScore.StuName}}
</view> </view>
<view class="scoreDetails-header-title">化学成绩详情</view> <view class="scoreDetails-header-title">{{ExamScore.ExamName}}</view>
</view> </view>
<view class="scoreDetails-header-num flex"> <view class="scoreDetails-header-num flex">
<view>总分</view> <view>总分</view>
<text>92</text> <text>{{ExamScore.TScore}}</text>
</view> </view>
</view> </view>
<view class="scoreDetails-Fraction flex"> <view class="scoreDetails-Fraction flex">
...@@ -26,8 +26,7 @@ ...@@ -26,8 +26,7 @@
<view class="scoreDetails-Fraction-img activeOne"></view> <view class="scoreDetails-Fraction-img activeOne"></view>
<view class="scoreDetails-Fraction-num"> <view class="scoreDetails-Fraction-num">
<view> <view>
<text>45</text> <text>{{ExamScore.Rank}}</text>
</view> </view>
<view>排名</view> <view>排名</view>
</view> </view>
...@@ -36,8 +35,7 @@ ...@@ -36,8 +35,7 @@
<view class="scoreDetails-Fraction-img activeTwo"></view> <view class="scoreDetails-Fraction-img activeTwo"></view>
<view class="scoreDetails-Fraction-num"> <view class="scoreDetails-Fraction-num">
<view> <view>
<text>45</text> <text>{{ExamScore.ScoreRate * 100}}</text>%
%
</view> </view>
<view>得分率</view> <view>得分率</view>
</view> </view>
...@@ -46,7 +44,7 @@ ...@@ -46,7 +44,7 @@
<view class="scoreDetails-Fraction-img activeThree"></view> <view class="scoreDetails-Fraction-img activeThree"></view>
<view class="scoreDetails-Fraction-num"> <view class="scoreDetails-Fraction-num">
<view> <view>
<text>45</text> <text>{{ExamScore.RankRate * 100}}</text>%
</view> </view>
<view>领先度</view> <view>领先度</view>
</view> </view>
...@@ -54,29 +52,29 @@ ...@@ -54,29 +52,29 @@
</view> </view>
<view class="scoreDetails-title flex"> <view class="scoreDetails-title flex">
<text>各小题得分分析考</text> <text>各小题得分分析考</text>
<view>(共53条)</view> <view>(共{{ExamScore.ScoreList.length}}小题)</view>
</view> </view>
<analysisTest></analysisTest> <analysisTest :ScoreList="ExamScore.ScoreList"></analysisTest>
<view class="scoreDetails-title flex"> <view class="scoreDetails-title flex">
<text>各板块掌握情况</text> <text>各板块掌握情况</text>
</view> </view>
<view class="index-student-information"> <view class="index-student-information">
<penta></penta> <penta :ModuleList="ExamScore.ModuleList"></penta>
<allGraspTheSituation></allGraspTheSituation> <allGraspTheSituation :ModuleList="ExamScore.ModuleList"></allGraspTheSituation>
</view> </view>
<view class="scoreDetails-title flex"> <view class="scoreDetails-title flex">
<text>试卷难度分析</text> <text>试卷难度分析</text>
</view> </view>
<view class="index-student-information"> <view class="index-student-information">
<line></line> <line :DifficultyList="ExamScore.DifficultyList"></line>
<dfficultyAnalysis></dfficultyAnalysis> <dfficultyAnalysis :DifficultyList="ExamScore.DifficultyList"></dfficultyAnalysis>
</view> </view>
<view class="scoreDetails-title flex"> <view class="scoreDetails-title flex">
<text>难度掌握情况</text> <text>难度掌握情况</text>
</view> </view>
<view class="index-student-information"> <view class="index-student-information">
<triangle></triangle> <triangle :DifficultyRateList="ExamScore.DifficultyRateList"></triangle>
<graspTheSituation></graspTheSituation> <graspTheSituation :DifficultyRateList="ExamScore.DifficultyRateList"></graspTheSituation>
</view> </view>
</view> </view>
</template> </template>
...@@ -127,24 +125,22 @@ ...@@ -127,24 +125,22 @@
proxy proxy
} = getCurrentInstance(); } = getCurrentInstance();
let data = reactive({ let data = reactive({
ActiveMsg: { userData: {},
pageIndex: 1, Msg:{
pageSize: 10, ExamId:0,
ActivityType: 0, StuUId:0
SelectIsEnd: 0,
}, },
ActivityList: [], ExamScore:{},
pageData: {
LearningGardenList: []
},
SurveyObj:{
ActivitySurveyId:0,
ActivitySurveyGuestId:0,
},
userData: {}
}); });
let methods = { let methods = {
//获取学生成绩
getExamStuScore(){
proxy.$request("/Exam/GetExamStuScoreInfo", data.Msg).then(res => {
data.ExamScore = res.Data;
})
},
back() { back() {
uni.navigateTo({ uni.navigateTo({
url: '/pages/index/index' url: '/pages/index/index'
...@@ -160,8 +156,13 @@ ...@@ -160,8 +156,13 @@
...methods, ...methods,
}; };
}, },
onLoad(options){
this.Msg.ExamId = options.examId;
this.Msg.StuUId = options.stuUId;
},
onShow() { onShow() {
this.userData = uni.getStorageSync('userInfo'); this.userData = uni.getStorageSync('userInfo');
this.getExamStuScore();
}, },
onShareAppMessage() { onShareAppMessage() {
return { return {
......
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