Commit 589effb0 authored by 罗超's avatar 罗超

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

# Conflicts:
#	src/pages/index/index.vue
parents c060bce8 7d21f9fe
...@@ -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
}, },
] ]
......
This diff is collapsed.
<template> <template>
<view class="CommentsComponents-box"> <view class="CommentsComponents-box">
<view class="CommentsComponents activeOne flex"> <view class="CommentsComponents activeOne flex">
<view class="CommentsComponents-time-box flex">
<view class="CommentsComponents-time-box flex"> <view class="CommentsComponents-time">
<view class="CommentsComponents-time"> <view>{{jobData.CreateTime}}</view>
<view>05/25 17:13</view> </view>
</view> <view class="CommentsComponents-line">
<view class="CommentsComponents-line"> <view class="CommentsComponents-point"></view>
<view class="CommentsComponents-point"></view> </view>
</view> </view>
</view> <view class="CommentsComponents-center-box">
<view class="CommentsComponents-center-box"> <view class="CommentsComponents-center-line"></view>
<view class="CommentsComponents-center-line"></view> <view class="CommentsComponents-center flex">
<view class="CommentsComponents-center flex"> <view class="CommentsComponents-left flex">
<view class="CommentsComponents-left flex"> <van-image width="38rpx" height="38rpx" fit="cover" class="operation-img" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png" />
<van-image width="38rpx" height="38rpx" fit="cover" class="operation-img" <view class="operation-name">{{jobData.Title}}</view>
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png"/> </view>
<view class="operation-name">周老师的评语</view> <view class="CommentsComponents-right">
</view> {{jobData.DataObj.Comment}}
<view class="CommentsComponents-right"> </view>
你是个做事小心翼翼,感情细腻丰富的女孩 </view>
,每次看你认真的样子老师都很感动。你也是幸运的,周 </view>
边有很多人都在关爱着你,所以,对他们,尤其是父母,记得不要 </view>
太莽撞,不要太任性,要学着体谅,学着换位思考
,学着懂事。另外,今后要多运动、多锻炼,有健康才能成就美好未来!
</view>
</view>
</view>
</view>
</view> </view>
</template> </template>
<script> <script>
...@@ -40,12 +34,9 @@ ...@@ -40,12 +34,9 @@
} from "vue"; } from "vue";
export default { export default {
props: { props: ["jobData"],
},
components: {}, components: {},
setup() { setup() {
let data = reactive({ let data = reactive({
obj: { obj: {
Name: '', Name: '',
...@@ -61,95 +52,111 @@ ...@@ -61,95 +52,111 @@
}; };
</script> </script>
<style scoped> <style scoped>
.CommentsComponents-right{ .CommentsComponents-right {
color: #FFFFFF; color: #FFFFFF;
font-size: 20rpx; font-size: 20rpx;
line-height: 35rpx; line-height: 35rpx;
letter-spacing: 1rpx; letter-spacing: 1rpx;
} }
.CommentsComponents.activeThree .operation-name{
color: #282828; .CommentsComponents.activeThree .operation-name {
} color: #282828;
.CommentsComponents.activeTwo .operation-name{ }
color: #282828;
} .CommentsComponents.activeTwo .operation-name {
.CommentsComponents.activeOne .operation-name{ color: #282828;
color: #FFFFFF; }
}
.operation-name{ .CommentsComponents.activeOne .operation-name {
font-size: 26rpx; color: #FFFFFF;
letter-spacing: 1px; }
font-weight: 500;
flex-grow: 1; .operation-name {
} font-size: 26rpx;
.operation-img{ letter-spacing: 1px;
margin-right: 12rpx; font-weight: 500;
border-radius: 50%; flex-grow: 1;
flex-shrink: 0; }
}
.CommentsComponents-left{ .operation-img {
flex: 1; margin-right: 12rpx;
flex-grow: 1; border-radius: 50%;
margin-top: -5rpx; flex-shrink: 0;
margin-bottom: 10rpx; }
}
.CommentsComponents-center{ .CommentsComponents-left {
flex-direction: column; flex: 1;
} flex-grow: 1;
.CommentsComponents-center-line{ margin-top: -5rpx;
width: 4rpx; margin-bottom: 10rpx;
height: 23rpx; }
background: #FEFEFE;
position: absolute; .CommentsComponents-center {
left: 0; flex-direction: column;
top: 33rpx; }
}
.CommentsComponents.activeOne .CommentsComponents-center-box{ .CommentsComponents-center-line {
background: #52C1CA; width: 4rpx;
} height: 23rpx;
.CommentsComponents-center-box{ background: #FEFEFE;
flex-grow: 1; position: absolute;
position: relative; left: 0;
border-radius: 30rpx; top: 33rpx;
padding: 31rpx 18rpx 21rpx 24rpx; }
margin-bottom: 50rpx;
} .CommentsComponents.activeOne .CommentsComponents-center-box {
.CommentsComponents.activeOne .CommentsComponents-point{ background: #52C1CA;
background: #1E7BF5; }
box-shadow: 0px 0px 12px 0px rgba(30, 123, 245, 0.46);
} .CommentsComponents-center-box {
.CommentsComponents-point{ flex-grow: 1;
width: 19rpx; position: relative;
height: 19rpx; border-radius: 30rpx;
position: absolute; padding: 31rpx 18rpx 21rpx 24rpx;
top: 20rpx; margin-bottom: 50rpx;
left: -13rpx; }
border-radius: 50%;
border: 3px solid #FFFFFF; .CommentsComponents.activeOne .CommentsComponents-point {
box-shadow: 0px 0px 12px 0px rgba(255, 255, 255, 0.46); background: #1E7BF5;
} box-shadow: 0px 0px 12px 0px rgba(30, 123, 245, 0.46);
.CommentsComponents-line{ }
width: 4rpx;
height: 100%; .CommentsComponents-point {
background: #F1F1F1; width: 19rpx;
margin-left: 46rpx; height: 19rpx;
margin-right: 46rpx; position: absolute;
position: relative; top: 20rpx;
} left: -13rpx;
.CommentsComponents-time{ border-radius: 50%;
width: 61rpx; border: 3px solid #FFFFFF;
height: 55rpx; box-shadow: 0px 0px 12px 0px rgba(255, 255, 255, 0.46);
color: #CCC8C6; }
font-size: 20rpx;
border-radius: 20rpx; .CommentsComponents-line {
padding: 14rpx 13rpx; width: 4rpx;
background: #F6F6F6; height: 100%;
} background: #F1F1F1;
.CommentsComponents{ margin-left: 46rpx;
justify-content: space-between; margin-right: 46rpx;
padding: 0 50rpx; position: relative;
} }
.CommentsComponents-box{
background: #FFFFFF; .CommentsComponents-time {
} width: 61rpx;
height: 55rpx;
color: #CCC8C6;
font-size: 20rpx;
border-radius: 20rpx;
padding: 14rpx 13rpx;
background: #F6F6F6;
}
.CommentsComponents {
justify-content: space-between;
padding: 0 50rpx;
}
.CommentsComponents-box {
background: #FFFFFF;
}
</style> </style>
This diff is collapsed.
This diff is collapsed.
...@@ -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" /> <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" />
</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" />
</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() {
......
<template>
<view class="jobDetailsComponents-box">
<view class="jobDetailsComponents activeTwo flex">
<view class="jobDetailsComponents-time-box flex">
<view class="jobDetailsComponents-time flex">
<view></view>
<text>潇潇</text>
</view>
<view class="jobDetailsComponents-line">
<view class="jobDetailsComponents-point"></view>
</view>
</view>
<view class="jobDetailsComponents-center-box">
<view class="jobDetailsComponents-center flex">
<view class="jobDetailsComponents-left flex">
<view class="operation-state flex">
<view class="operation-state-img"></view>
<view class="operation-state-text">未批阅</view>
</view>
<view class="operation-name">2022-05-22</view>
</view>
<view class="jobDetailsComponents-right flex">
<view class="homework-score flex">
<view class="homework-score-title">
得分 <text>86</text>
</view>
</view>
<view class="homework-score flex">
<view class="homework-score-title">
得分率 <text>86</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="jobDetailsComponents activeOne flex">
<view class="jobDetailsComponents-time-box flex">
<view class="jobDetailsComponents-time flex">
<view></view>
<text>潇潇</text>
</view>
<view class="jobDetailsComponents-line">
<view class="jobDetailsComponents-point"></view>
</view>
</view>
<view class="jobDetailsComponents-center-box">
<view class="jobDetailsComponents-center flex">
<view class="jobDetailsComponents-left flex">
<view class="operation-state flex">
<view class="operation-state-img"></view>
<view class="operation-state-text">批阅</view>
</view>
<view class="operation-name">2022-05-22</view>
</view>
<view class="jobDetailsComponents-right flex">
<view class="homework-score flex">
<view class="homework-score-title">
得分 <text>86</text>
</view>
</view>
<view class="homework-score flex">
<view class="homework-score-title">
得分率 <text>86</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import {
reactive,
toRefs,
onMounted,
getCurrentInstance,
inject
} from "vue";
export default {
props: {
},
components: {},
setup() {
let data = reactive({
obj: {
Name: '',
Photo: '',
},
showPhone: false,
showLogin: true, //多次点击
});
let methods = {
}
return {
...toRefs(data),
...methods
};
},
};
</script>
<style scoped>
.homework-score-title text{
font-size: 46rpx;
font-weight: 800;
font-style: italic;
padding: 0 10rpx 0 17rpx;
}
.homework-score-title{
color: #282828;
font-size: 20rpx;
font-weight: 400;
letter-spacing: 1px;
}
.homework-score:first-child{
margin-right: 16rpx;
}
.homework-score{
align-items: center;
justify-content: space-between;
}
.jobDetailsComponents-right{
height: 88rpx;
background: #FCEEEF;
padding: 0 22rpx;
border-radius: 25rpx;
justify-content: space-between;
flex-shrink: 0;
}
.operation-state-text{
font-size: 20rpx;
letter-spacing: 2px;
}
.jobDetailsComponents.activeThree .operation-state-img{
background: url('https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_480.png')no-repeat;
background-size: 22rpx 22rpx;
}
.jobDetailsComponents.activeTwo .operation-state-img{
background: url('https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_781.png')no-repeat;
background-size: 22rpx 22rpx;
}
.jobDetailsComponents.activeOne .operation-state-img{
background: url('https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_44.png')no-repeat;
background-size: 22rpx 22rpx;
}
.operation-state-img{
width: 22rpx;
height: 22rpx;
margin-right: 9rpx;
margin-top: 4rpx;
}
.operation-state{
font-size: 20rpx;
white-space: nowrap;
color: #282828;
}
.operation-name{
font-size: 16rpx;
letter-spacing: 1px;
font-weight: 500;
color: #C2BCBA;
}
.jobDetailsComponents-left{
justify-content: space-between;
align-items: center;
margin-bottom: 17rpx;
}
.jobDetailsComponents-center{
flex-direction: column;
}
.jobDetailsComponents-center-box{
flex-grow: 1;
border-radius: 30rpx;
padding: 17rpx 26rpx 23rpx 21rpx;
margin-bottom: 40rpx;
background: #FFFFFF;
box-shadow: 0px 6px 29px 0px rgba(76, 76, 76, 0.09);
border-radius: 20px;
}
.jobDetailsComponents.activeThree .jobDetailsComponents-point{
background: #C1C1C1;
}
.jobDetailsComponents.activeTwo .jobDetailsComponents-point{
background: #282828;
}
.jobDetailsComponents.activeOne .jobDetailsComponents-point{
background: #C81727;
box-shadow: 0px 0px 12px 0px rgba(200, 23, 39, 0.46);
}
.jobDetailsComponents .jobDetailsComponents-point{
width: 19rpx;
height: 19rpx;
position: absolute;
top: 20rpx;
left: -13rpx;
border-radius: 50%;
border: 3px solid #FFFFFF;
box-shadow: 0px 0px 12px 0px rgba(255, 255, 255, 0.46);
}
.jobDetailsComponents-line{
width: 4rpx;
height: 100%;
background: #F1F1F1;
margin-left: 46rpx;
margin-right: 46rpx;
position: relative;
}
.jobDetailsComponents-time text{
font-size: 20rpx;
font-weight: bold;
white-space: nowrap;
margin-top: 18rpx;
margin-left: 4rpx;
}
.jobDetailsComponents-time{
color: #282828;
font-size: 36rpx;
font-weight: bold;
letter-spacing: 1rpx;
}
.jobDetailsComponents-time-box{
}
.jobDetailsComponents{
justify-content: space-between;
padding: 0 50rpx;
}
</style>
This diff is collapsed.
<template> <template>
<view class="examList-box"> <view class="examList-box">
<view class="examList-import"> <view class="examList-import" @click="ImportInformation">
<van-icon name="plus" /> <van-icon name="plus" />
<text>导入考试信息</text> <text>导入考试信息</text>
</view> </view>
...@@ -33,6 +33,20 @@ ...@@ -33,6 +33,20 @@
</view> </view>
<!-- <view class="noData">暂无数据</view> --> <!-- <view class="noData">暂无数据</view> -->
</view> </view>
<van-popup :show="show" :round="true">
<view class="examList-popup-box">
<van-icon class="examList-popup-closure" name="cross" @click="show=false"/>
<view class="examList-popup-title">导入考试信息</view>
<view class="examList-popup-content">
<input v-model="obj.name" class="examList-popup-name" placeholder="请输入考试名称">
<view class="examList-popup-fil" @click="uploadFiles">
<van-image class="img" width="32rpx" height="32rpx" fit="cover"
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653639041000_305.png" />
选择文件
</view>
</view>
</view>
</van-popup>
</view> </view>
</template> </template>
<script> <script>
...@@ -58,12 +72,19 @@ ...@@ -58,12 +72,19 @@
}, },
showPhone: false, showPhone: false,
showLogin: true, //多次点击 showLogin: true, //多次点击
show:false,
}); });
let methods = { let methods = {
JobDetails(){ JobDetails(){
uni.reLaunch({ uni.reLaunch({
url: '/pages/index/workSituation' url: '/pages/index/workSituation'
}); });
},
ImportInformation(){
this.show = true
},
uploadFiles(){
} }
} }
return { return {
...@@ -74,6 +95,52 @@ ...@@ -74,6 +95,52 @@
}; };
</script> </script>
<style scoped> <style scoped>
.img {
display: inline-block;
position: relative;
top: 6rpx;
margin-right: 10rpx;
}
.examList-popup-fil{
line-height: 88rpx;
padding: 0 10rpx;
border-radius: 44rpx;
font-size: 30rpx;
color: #FFFFFF;
background: #C91727;
margin-top: 27rpx;
text-align: center;
}
.examList-popup-name{
background-color: #FFFFFF;
text-align: center;
border: 1px solid #AAAAAA;
height: 86rpx;
line-height: 86rpx;
padding: 0 10rpx;
border-radius: 44rpx;
font-size: 30rpx;
}
.examList-popup-title{
width: 100%;
text-align: center;
font-size: 30rpx;
font-weight: 500;
margin-bottom: 73rpx;
letter-spacing: 1rpx;
}
.examList-popup-closure{
position: absolute;
right: 31rpx;
top: 31rpx;
color: #282828;
font-size: 38rpx;
}
.examList-popup-box{
position: relative;
width: 548rpx;
padding: 48rpx 55rpx 98rpx 55rpx;
}
.homework-score-num view:last-child{ .homework-score-num view:last-child{
font-size: 23rpx; font-size: 23rpx;
margin-top: 25rpx; margin-top: 25rpx;
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
let methods = { let methods = {
JobDetails(){ JobDetails(){
uni.reLaunch({ uni.reLaunch({
url: '/pages/index/workSituation' url: '/pages/index/jobDetails'
}); });
} }
} }
......
...@@ -14,6 +14,12 @@ ...@@ -14,6 +14,12 @@
"style": { "style": {
"navigationStyle": "custom" "navigationStyle": "custom"
} }
},
{
"path": "pages/index/jobDetails",
"style": {
"navigationStyle": "custom"
}
},{ },{
"path": "pages/index/workSituation", "path": "pages/index/workSituation",
"style": { "style": {
......
...@@ -3,32 +3,34 @@ ...@@ -3,32 +3,34 @@
<navbar class="navbarSticky" bg="#F6F6F6"> <navbar class="navbarSticky" bg="#F6F6F6">
<view class="index-header-box"> <view class="index-header-box">
<view class="index-header-img"> <view class="index-header-img">
<van-image width="100%" height="100%" fit="cover" class="img" <van-image width="100%" height="100%" fit="cover" class="img" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png" />
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1653464014000_713.png" />
</view> </view>
<view class="index-header-tetx"> <view class="index-header-tetx">
<view class="index-header-title"> <view class="index-header-title">
welcome welcome
</view> </view>
<view class="index-header-name">周一围</view> <view class="index-header-name">{{userData.AccountName}}</view>
</view> </view>
</view> </view>
</navbar> </navbar>
<view style="margin: 40rpx 0 10rpx 0;"> <view style="margin: 40rpx 0 10rpx 0;">
<view style="padding:0 50rpx;font-weight: 800;color: #282828;"> <view style="padding:0 50rpx;font-weight: 800;color: #282828;">
<view style="font-size: 36rpx;">Hello,</view> <view style="font-size: 36rpx;">Hello,{{userData.AccountName}}</view>
<view style="font-size: 50rpx;">您的学情反馈已准备好</view> <view style="font-size: 50rpx;">您的学情反馈已准备好</view>
</view> </view>
</view> </view>
<course-card></course-card> <course-card :stuCourseList="stuCourseList"></course-card>
<view class="index-student-title flex"> <view class="index-student-title flex">
<text>反馈详情</text> <text>考情详情</text>
<view>(共53条)</view> <view>(共{{workList!=null&&workList.length>0?workList.length:0}}条)</view>
</view> </view>
<view class="index-student-information"> <view class="index-student-information">
<JobComponents></JobComponents> <template v-for="(item,index) in workList">
<examComponents></examComponents> <JobComponents v-if="item.ResultType==1" :jobData="item"></JobComponents>
<commentsComponents></commentsComponents> <examComponents v-if="item.ResultType==2" :jobData="item"></examComponents>
<commentsComponents v-if="item.ResultType==3" :jobData="item"></commentsComponents>
</template>
</view> </view>
</view> </view>
</template> </template>
...@@ -50,13 +52,10 @@ ...@@ -50,13 +52,10 @@
provide, provide,
nextTick, nextTick,
} from "vue"; } from "vue";
// import {
// getActivityList
// } from "../../api/activity";
import { import {
getSweepCode getSweepCode
} from '../../api/index.js' } from '../../api/index.js'
import { import {
getImageColor getImageColor
} from '../../utils/index.js' } from '../../utils/index.js'
...@@ -64,11 +63,6 @@ ...@@ -64,11 +63,6 @@
import navbar from '../../components/navbar.vue' import navbar from '../../components/navbar.vue'
import bottom from '../../components/bottom.vue' import bottom from '../../components/bottom.vue'
export default { export default {
// data(){
// return{
// }
// }
components: { components: {
indexassembly, indexassembly,
navbar, navbar,
...@@ -83,28 +77,16 @@ ...@@ -83,28 +77,16 @@
proxy proxy
} = getCurrentInstance(); } = getCurrentInstance();
let data = reactive({ let data = reactive({
ActiveMsg: { stuCourseList: [], //学员课程列表
pageIndex: 1, userData: {}, //用户信息
pageSize: 10, //学员作业和考试查询参数
ActivityType: 0, workMsg: {
SelectIsEnd: 0, courseId: 0,
},
ActivityList: [],
pageData: {
LearningGardenList: []
},
SurveyObj:{
ActivitySurveyId:0,
ActivitySurveyGuestId:0,
}, },
userData: {} workList: [],//学员作业、考试、评语数据
}); });
let methods = { let methods = {
goTongji() {
//console.log("SurveyObj",data.SurveyObj);
this.jumpPage('/pages/study/questionNaire?ActivitySurveyId='+data.SurveyObj.ActivitySurveyId+"&ActivitySurveyGuestId="+data.SurveyObj.ActivitySurveyGuestId);
},
jumpPage(url) { jumpPage(url) {
uni.navigateTo({ uni.navigateTo({
url: url, url: url,
...@@ -115,10 +97,7 @@ ...@@ -115,10 +97,7 @@
url: '/pages/timetable/timeTable', url: '/pages/timetable/timeTable',
}) })
}, },
//跳转至详情
goActiveDetail(Id) {
// this.jumpPage(`/pages/activity/activityDetails?Id=${Id}`);
},
base64_decode(data) { base64_decode(data) {
var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var o1, var o1,
...@@ -155,91 +134,26 @@ ...@@ -155,91 +134,26 @@
} }
} while (i < data.length); } while (i < data.length);
dec = tmp_arr.join(""); dec = tmp_arr.join("");
//dec = utf8_decode(dec);
return dec; return dec;
}, },
//{"cmd":"checkin","params":{"classId":0,"ClassDate":"2022-4-19","ClassRoomId":27, //获取学员课程列表
//"School_Id":0,"TeacherId":8,"CheckStatus":0,"StudyNum":"90","ClassTimeId":16531}} getStuCourse() {
proxy.$request("/Stu/GetStuCourse", {}).then(res => {
scan() { let tempArray = res.Data;
//调起条码扫描 data.stuCourseList = tempArray;
console.log("进来了") if (tempArray && tempArray.length > 0) {
let that = this this.getStuHomeWorkAndExam(tempArray[0].courseId)
uni.scanCode({
scanType: ['qrCode'],
success: function(res) {
// 解码
var saveObj={};
try {
saveObj = that.base64_decode(res.result)
// console.log(saveObj)
} catch (e) {
//TODO handle the exception
// console.log(e)
}
var jsonObj= JSON.parse(saveObj)
if(jsonObj.cmd =="checkin"){
var userData = uni.getStorageSync('userInfo');
console.log("userData",userData);
jsonObj.params.StuId=userData.AccountId;
var array=[];
array.push(jsonObj.params);
console.log("jsonObj.params",jsonObj.params)
let result = getSweepCode(array);
if (result) {
// console.log(result)
if (result.Code == 1) {
console.log('扫码成功')
uni.navigateTo({
url:'./success',
})
}else{
console.log('扫码失败')
uni.navigateTo({
url: './fail'
})
}
}
}
},
});
},
async getActivityData() {
// let res = await getActivityList(data.ActiveMsg);
// if (res.resultCode == 1) {
// data.ActivityList = res.data.pageData;
// }
},
getIndexData() {
proxy.$request("/AppletIndex/GetIndexInfo_V2", {}).then(res => {
data.pageData = res.Data
uni.setStorageSync("indexData", res.Data);
data.SurveyObj.ActivitySurveyId=res.Data.ActivitySurveyId;
data.SurveyObj.ActivitySurveyGuestId=res.Data.ActivitySurveyGuestId;
if (data.pageData.LearningGardenList.length > 0) {
data.pageData.LearningGardenList.forEach((x, y) => {
if (x.List.length > 0) {
x.List.forEach(async (item, index) => {
await this.getColor(item.Img, index, y).then(v => {
data.pageData.LearningGardenList[v.y]
.List[
v.index].bgcolor = v.formatres;
data.pageData.LearningGardenList[v.y]
.List[
v.index].bgcolor1 = v
.formatres1;
data.pageData.LearningGardenList[v.y]
.List[
v.index].bgcolor2 = v
.formatres2;
})
})
}
})
} }
}) })
}, },
//获取学员作业、考试、评语
getStuHomeWorkAndExam(courseId) {
this.workMsg.courseId = courseId;
data.workList = [];
proxy.$request("/Stu/GetStuWork", this.workMsg).then(res => {
data.workList = res.Data;
})
},
async getColor(src, index, y) { async getColor(src, index, y) {
let res = await getImageColor('myCanvas', 'img' + index, src) let res = await getImageColor('myCanvas', 'img' + index, src)
let obj = {} let obj = {}
...@@ -250,33 +164,6 @@ ...@@ -250,33 +164,6 @@
obj.y = y obj.y = y
return obj return obj
}, },
againdata() {
data.userData = uni.getStorageSync('userInfo');
methods.getIndexData();
methods.getActivityData();
},
jumpGarden(id) {
if (id == 1) {
uni.navigateTo({
url: "/pages/learningGarden/learningGardenList"
})
} else if (id == 2) {
// uni.navigateTo({
// url:"/pages/learningGarden/learningGardenList"
// })
}
},
jumpJiahemini() {
let userinfo = uni.getStorageSync('userInfo');
wx.navigateToMiniProgram({
appId: 'wx38e054ee42b054f4',
path: '', //为空则打开首页
extraData: {
Id: userinfo.Id || 0
}
})
}
}; };
onMounted(() => { onMounted(() => {
...@@ -288,8 +175,7 @@ ...@@ -288,8 +175,7 @@
}; };
}, },
onShow() { onShow() {
this.getActivityData(); this.getStuCourse();
this.getIndexData();
this.userData = uni.getStorageSync('userInfo'); this.userData = uni.getStorageSync('userInfo');
}, },
onShareAppMessage() { onShareAppMessage() {
...@@ -310,35 +196,41 @@ ...@@ -310,35 +196,41 @@
</script> </script>
<style scoped> <style scoped>
.index-student-title view{ .index-student-title view {
font-size: 25rpx; font-size: 25rpx;
color: #ABABAB; color: #ABABAB;
margin-left: 20rpx; margin-left: 20rpx;
padding: 13rpx 0 0 0; padding: 13rpx 0 0 0;
} }
.index-student-title text{
.index-student-title text {
font-size: 36rpx; font-size: 36rpx;
font-weight: 800; font-weight: 800;
color: #282828; color: #282828;
} }
.index-student-title{
.index-student-title {
padding: 0 50rpx 45rpx; padding: 0 50rpx 45rpx;
} }
.index-student-information{
.index-student-information {
min-height: 500rpx; min-height: 500rpx;
background: rgba(255,255,255,.7); background: rgba(255, 255, 255, .7);
border-radius: 50rpx 50rpx 0 0; border-radius: 50rpx 50rpx 0 0;
padding: 71rpx 0 0 0; padding: 71rpx 0 0 0;
} }
.index-header-name{
.index-header-name {
font-size: 30rpx; font-size: 30rpx;
color: #474747; color: #474747;
} }
.index-header-tetx{
.index-header-tetx {
color: #D0D0D0; color: #D0D0D0;
font-size: 24rpx; font-size: 24rpx;
} }
.index-header-img .img{
.index-header-img .img {
display: block; display: block;
border: 2rpx solid rgba(164, 164, 164, 0.32); border: 2rpx solid rgba(164, 164, 164, 0.32);
border-radius: 50%; border-radius: 50%;
...@@ -348,7 +240,8 @@ ...@@ -348,7 +240,8 @@
box-sizing: border-box; box-sizing: border-box;
margin: 4rpx; margin: 4rpx;
} }
.index-header-img{
.index-header-img {
width: 68rpx; width: 68rpx;
height: 68rpx; height: 68rpx;
border-radius: 50%; border-radius: 50%;
...@@ -357,6 +250,7 @@ ...@@ -357,6 +250,7 @@
margin-right: 20rpx; margin-right: 20rpx;
background: #FFFFFF; background: #FFFFFF;
} }
.indexpage { .indexpage {
min-height: 100vh; min-height: 100vh;
background-color: #f6f6f6; background-color: #f6f6f6;
...@@ -366,26 +260,29 @@ ...@@ -366,26 +260,29 @@
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% auto; background-size: 100% auto;
} }
.index-header-box{
.index-header-box {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
padding:0rpx 42rpx ; padding: 0rpx 42rpx;
} }
.index-header-box .index-header-title{
.index-header-box .index-header-title {
font-size: 24rpx; font-size: 24rpx;
font-weight: 400; font-weight: 400;
color: #B8B8B8; color: #B8B8B8;
} }
.index-header-box .index-header-name{
.index-header-box .index-header-name {
font-size: 30rpx; font-size: 30rpx;
font-weight: 800; font-weight: 800;
color: #282828; color: #282828;
} }
.navbarSticky { .navbarSticky {
display: sticky; display: sticky;
top: 0; top: 0;
z-index: 9; z-index: 9;
} }
</style> </style>
<template>
<view class="jobDetails-box">
<navbar class="navbarSticky" bg="#F6F6F6">
<view class="jobDetails-header-box">
<van-icon class="jobDetails-header-left" name="arrow-left" @click="back"/>
<text class="jobDetails-header-title">作业情况</text>
</view>
</navbar>
<view class="jobDetails-content">
<view class="jobDetails-content-header">
<view class="jobDetails-conten-title flex">
<text>成都2022科学益智L4 -05乐思会</text>
<view>高一作业11</view>
</view>
<view class="jobDetails-num-box flex">
<view class="jobDetails-num flex">
<text>学生数</text>
<view>15</view>
</view>
<view class="jobDetails-num flex">
<text>已提交</text>
<view>12</view>
</view>
<view class="jobDetails-num flex">
<text>已批阅</text>
<view>10</view>
</view>
<view class="jobDetails-num flex">
<text>优秀</text>
<view>5</view>
</view>
</view>
</view>
<view class="index-student-information">
<jobDetailsComponents></jobDetailsComponents>
</view>
</view>
</view>
</template>
<script>
import jobDetailsComponents from '@/components/index/scoreDetails/jobDetailsComponents'
import {
reactive,
toRefs,
onMounted,
getCurrentInstance,
inject
} from "vue";
export default {
props: {
},
components: {
jobDetailsComponents
},
setup() {
let data = reactive({
obj: {
Name: '',
Photo: '',
},
showPhone: false,
showLogin: true, //多次点击
});
let methods = {
back(){
uni.reLaunch({
url: '/pages/index/workSituation'
});
}
}
return {
...toRefs(data),
...methods
};
}
};
</script>
<style scoped>
.index-student-information{
min-height: 800rpx;
background: #FFFFFF;
border-radius: 50rpx 50rpx 0 0;
padding: 71rpx 0 30rpx 0;
}
.jobDetails-num view{
font-size: 36rpx;
font-weight: 800;
font-style: italic;
margin-top: 15rpx;
}
.jobDetails-num text{
font-size: 20rpx;
font-weight: 400;
}
.jobDetails-num{
flex-direction: column;
color: #CE8086;
}
.jobDetails-num-box{
justify-content: space-between;
padding: 70rpx 100rpx 35rpx 100rpx;
}
.jobDetails-conten-title view{
font-size: 50rpx;
font-weight: 800;
}
.jobDetails-conten-title text{
font-size: 36rpx;
font-weight: 400;
margin-bottom: 10rpx;
}
.jobDetails-conten-title{
padding: 50rpx 50rpx 0 50rpx;
flex-direction: column;
color: #282828;
letter-spacing: 1rpx;
}
.jobDetails-content-header{
}
.jobDetails-content{
position: relative;
z-index: 2;
}
.jobDetails-box{
background: #FCEEEF;
position: fixed;
top: 0;
bottom: 0;
left: 0;
right: 0;
z-index: 0;
}
.jobDetails-header-title{
position: absolute;
left: 0;
right: 0;
top: 0;
padding: 37rpx 31rpx;
text-align: center;
letter-spacing: 1rpx;
font-size: 32rpx;
font-weight: 500;
color: #282828;
}
.jobDetails-header{
margin: 50rpx 50rpx 0 50rpx;
align-items: center;
}
.jobDetails-header-left{
font-size: 40rpx;
position: relative;
z-index: 3;
}
.jobDetails-header-box{
padding: 37rpx 31rpx;
position: relative;
}
.navbarSticky {
display: sticky;
top: 0;
z-index: 9;
}
</style>
...@@ -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 {
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
<view style="font-size: 50rpx;">李老师</view> <view style="font-size: 50rpx;">李老师</view>
</view> </view>
</view> </view>
<course-card></course-card> <courseCard></courseCard>
<view class="index-student-information"> <view class="index-student-information">
<view class="workSituation-title-box flex"> <view class="workSituation-title-box flex">
<view class="workSituation-title flex" <view class="workSituation-title flex"
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
</template> </template>
<script> <script>
import courseCard from '../../components/index/course-card' import courseCard from '@/components/index/workSituation/courseCard'
import operation from '@/components/index/workSituation/operation' import operation from '@/components/index/workSituation/operation'
import studentList from '@/components/index/workSituation/studentList' import studentList from '@/components/index/workSituation/studentList'
import examList from '@/components/index/workSituation/examList' import examList from '@/components/index/workSituation/examList'
...@@ -87,7 +87,7 @@ ...@@ -87,7 +87,7 @@
{name:'作业情况',num:5}, {name:'作业情况',num:5},
{name:'考试信息',num:18}, {name:'考试信息',num:18},
], ],
tabNme:'作业情况' tabNme:'考试信息'
}); });
let methods = { let methods = {
...@@ -166,7 +166,7 @@ ...@@ -166,7 +166,7 @@
border-radius: 30rpx; border-radius: 30rpx;
} }
.index-student-information{ .index-student-information{
min-height: 500rpx; min-height: 800rpx;
background: rgba(255,255,255,.7); background: rgba(255,255,255,.7);
border-radius: 50rpx 50rpx 0 0; border-radius: 50rpx 50rpx 0 0;
padding: 50rpx 0 30rpx 0; padding: 50rpx 0 30rpx 0;
......
...@@ -63,8 +63,8 @@ ...@@ -63,8 +63,8 @@
} = getCurrentInstance(); } = getCurrentInstance();
let Toast = inject("$toast"); let Toast = inject("$toast");
let msg = reactive({ let msg = reactive({
Account: "", Account: "13802557508",
Password: "", Password: "557508",
}); });
let data = reactive({ let data = reactive({
phoneNum: "", phoneNum: "",
...@@ -100,7 +100,7 @@ ...@@ -100,7 +100,7 @@
Toast.fail("请输入密码"); Toast.fail("请输入密码");
return; return;
} }
let res = await this.$request('/AppletLogin/Login', msg).then(res=>{ let res = await this.$request('/Login/Login', msg).then(res=>{
if(res.Code==1){ if(res.Code==1){
res.Data.Account = msg.Account; res.Data.Account = msg.Account;
uni.setStorageSync("userInfo", res.Data); uni.setStorageSync("userInfo", res.Data);
......
//请求教育接口 //请求教育接口
let host = '' let host = ''
if (process.env.NODE_ENV === "development") { if (process.env.NODE_ENV === "development") {
host = 'http://192.168.10.46:8300/api' host = 'http://192.168.10.46:8900/api'
// host = 'http://192.168.10.65:8085/api' // host = 'http://192.168.10.65:8085/api'
// host = 'https://eduapi.oytour.com/api'
} else { } else {
host = 'https://eduapi.oytour.com/api' host = 'https://eduapi.oytour.com/api'
} }
...@@ -16,10 +15,10 @@ let request = (param) => { ...@@ -16,10 +15,10 @@ let request = (param) => {
method: param.method || "Post", method: param.method || "Post",
header: param.header || { header: param.header || {
'content-type': "application/json", 'content-type': "application/json",
'token': token || "" 'Authorization': token || ""
}, },
data: { data: {
msg: param.data, Msg: param.data,
}, },
success: res => { success: res => {
if (res.data.Code === 1) { if (res.data.Code === 1) {
......
...@@ -126,8 +126,8 @@ export default global['__wxComponents']['vant/search/index'] ...@@ -126,8 +126,8 @@ export default global['__wxComponents']['vant/search/index']
padding-left: var(--padding-sm,24rpx); padding-left: var(--padding-sm,24rpx);
border-radius: 4rpx; border-radius: 4rpx;
border-radius: var(--border-radius-sm,4rpx); border-radius: var(--border-radius-sm,4rpx);
background-color: #f7f8fa; background-color: #FFFFFF;
background-color: var(--search-background-color,#f7f8fa); background-color: var(--search-background-color,#FFFFFF);
} }
.van-search__content--round { .van-search__content--round {
......
...@@ -21,8 +21,8 @@ ...@@ -21,8 +21,8 @@
padding-left: var(--padding-sm,24rpx); padding-left: var(--padding-sm,24rpx);
border-radius: 4rpx; border-radius: 4rpx;
border-radius: var(--border-radius-sm,4rpx); border-radius: var(--border-radius-sm,4rpx);
background-color: #f7f8fa; background-color: #FFFFFF;
background-color: var(--search-background-color,#f7f8fa); background-color: var(--search-background-color,#FFFFFF);
} }
.van-search__content--round { .van-search__content--round {
......
...@@ -126,8 +126,8 @@ export default global['__wxComponents']['vant/search/index'] ...@@ -126,8 +126,8 @@ export default global['__wxComponents']['vant/search/index']
padding-left: var(--padding-sm,24rpx); padding-left: var(--padding-sm,24rpx);
border-radius: 4rpx; border-radius: 4rpx;
border-radius: var(--border-radius-sm,4rpx); border-radius: var(--border-radius-sm,4rpx);
background-color: #f7f8fa; background-color: #FFFFFF;
background-color: var(--search-background-color,#f7f8fa); background-color: var(--search-background-color,#FFFFFF);
} }
.van-search__content--round { .van-search__content--round {
......
...@@ -21,8 +21,8 @@ ...@@ -21,8 +21,8 @@
padding-left: var(--padding-sm,24rpx); padding-left: var(--padding-sm,24rpx);
border-radius: 4rpx; border-radius: 4rpx;
border-radius: var(--border-radius-sm,4rpx); border-radius: var(--border-radius-sm,4rpx);
background-color: #f7f8fa; background-color: #FFFFFF;
background-color: var(--search-background-color,#f7f8fa); background-color: var(--search-background-color,#FFFFFF);
} }
.van-search__content--round { .van-search__content--round {
......
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