页面渲染 数据处理

This commit is contained in:
taoxu 2023-12-26 22:40:39 +08:00
parent cf5bd9045e
commit 804158fa14
7 changed files with 782 additions and 780 deletions

View File

@ -1,8 +1,8 @@
@font-face {
font-family: "iconfont"; /* Project id 3598721 */
src: url('//at.alicdn.com/t/c/font_3598721_fd8phfvkjv.woff2?t=1691978562796') format('woff2'),
url('//at.alicdn.com/t/c/font_3598721_fd8phfvkjv.woff?t=1691978562796') format('woff'),
url('//at.alicdn.com/t/c/font_3598721_fd8phfvkjv.ttf?t=1691978562796') format('truetype');
src: url('//at.alicdn.com/t/c/font_3598721_z5jk4kgjfv.woff2?t=1703600739909') format('woff2'),
url('//at.alicdn.com/t/c/font_3598721_z5jk4kgjfv.woff?t=1703600739909') format('woff'),
url('//at.alicdn.com/t/c/font_3598721_z5jk4kgjfv.ttf?t=1703600739909') format('truetype');
}
.iconfont {
@ -13,6 +13,14 @@
-moz-osx-font-smoothing: grayscale;
}
.icon-xiangxiajiantoucuxiao:before {
content: "\e8c8";
}
.icon-xiangshangjiantoucuxiao:before {
content: "\e8d8";
}
.icon-yiwancheng:before {
content: "\e630";
}

View File

@ -42,7 +42,7 @@ const install = (Vue, vm) => {
// 所以哪怕您重新登录修改了Storage下一次的请求将会是最新值
// const token = uni.getStorageSync('token');
const token = " Bearer 794bed8faaf14a00b07befd07b8402b2"
const token = " Bearer 5791a135fff342a4b7e70109b6936826"
// console.log("我是token", token)
config.header.Authorization = token;

View File

@ -228,6 +228,16 @@
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path" : "teacher_class/class_members",
"style" :
{
"navigationBarTitleText": "",
"navigationBarBackgroundColor": "#4473f6",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
}
]

File diff suppressed because it is too large Load Diff

View File

@ -19,51 +19,28 @@
</view> -->
<view class="check_card_cls">
<view class="check_card_cls " v-for="(item,index) in workinfo" :key="index">
<view class="check_card_cls_info_left">
<view class="class_card_left">
<image src=" https://file.langsi.online/yasiimg/web/static/udWNTRG6GulmTtgPRQ49"></image>
<image :src="item.avatar"></image>
</view>
<view class="class_card_right">
<view class="class_card_right_top">
雅思1班
{{item.name}}
</view>
<view class="class_card_right_bot">
共21人
<view class="class_card_right_bot" v-show="item.classify == 1">
听力
</view>
</view>
</view>
<view class="check_card_cls_info_right">
<view class="class_info">
<view class="class_info_top">
平均成绩/
<view class="class_card_right_bot" v-show="item.classify == 2">
阅读
</view>
<view class="class_info_bot">
6
<view class="class_card_right_bot" v-show="item.classify == 3">
写作
</view>
</view>
<view class="class_info">
<view class="class_info_top">
作业完成度
</view>
<view class="class_info_bot">
80%
</view>
</view>
</view>
</view>
<view class="check_card_cls ">
<view class="check_card_cls_info_left">
<view class="class_card_left">
<image src=" https://file.langsi.online/yasiimg/web/static/udWNTRG6GulmTtgPRQ49"></image>
</view>
<view class="class_card_right">
<view class="class_card_right_top">
雅思1班
</view>
<view class="class_card_right_bot">
共21人
<view class="class_card_right_bot" v-show="item.classify == 4">
口语
</view>
</view>
</view>
@ -103,19 +80,23 @@
backgroundColor: "#F6F9FC",
},
checkindex: 0,
id:13,
id:12,
workinfo:[],
orgworkinfo:[]
}
},
onLoad() {
onLoad(option) {
console.log(option);
this.id = option.id
// this.classid=15
this.getworklist()
},
methods: {
getworklist() {
this.$u.get(`https://api.admin-v2.langsi.online//admin-api/classroom/work-record/classrooms?workId=${this.id}`).then(res => {
this.$u.get(`https://api.admin-v2.langsi.online/admin-api/classroom/work-record/classrooms?workId=${this.id}`).then(res => {
if (res.code == 0) {

View File

@ -19,21 +19,21 @@
</view> -->
<view class="check_card_cls">
<view class="check_card_cls_info_left">
<view class="check_card_stu" v-for="(item,index) in workinfo" :key="index">
<view class="check_card_stu_info_left">
<view class="class_card_left">
<image src=" https://file.langsi.online/yasiimg/web/static/udWNTRG6GulmTtgPRQ49"></image>
<image :src="item.avatar"></image>
</view>
<view class="class_card_right">
<view class="class_card_right_top">
雅思1班
{{item.name}}
</view>
<view class="class_card_right_bot">
共21人
ID{{item.id}}
</view>
</view>
</view>
<view class="check_card_cls_info_right">
<view class="check_card_stu_info_right">
<view class="class_info">
<view class="class_info_top">
平均成绩/
@ -50,43 +50,11 @@
80%
</view>
</view>
</view>
</view>
<view class="check_card_cls ">
<view class="check_card_cls_info_left">
<view class="class_card_left">
<image src=" https://file.langsi.online/yasiimg/web/static/udWNTRG6GulmTtgPRQ49"></image>
</view>
<view class="class_card_right">
<view class="class_card_right_top">
雅思1班
</view>
<view class="class_card_right_bot">
共21人
</view>
</view>
</view>
<view class="check_card_cls_info_right">
<view class="class_info">
<view class="class_info_top">
平均成绩/
</view>
<view class="class_info_bot">
6
</view>
</view>
<view class="class_info">
<view class="class_info_top">
作业完成度
</view>
<view class="class_info_bot">
80%
</view>
</view>
</view>
</view>
</view>
</view>
@ -96,7 +64,7 @@
export default {
data() {
return {
title: '班级安排',
title: '学生安排',
//
bgc: {
@ -110,12 +78,16 @@
}
},
onLoad() {
onLoad(option) {
console.log(option);
this.id = option.id
// this.classid=15
this.getworklist()
},
methods: {
getworklist() {
this.$u.get(`https://api.admin-v2.langsi.online//admin-api/classroom/work-record/classrooms?workId=${this.id}`).then(res => {
this.$u.get(`https://api.admin-v2.langsi.online/admin-api/classroom/work-record/members?workId=${this.id}`).then(res => {
if (res.code == 0) {

View File

@ -53,7 +53,7 @@
<!-- 班级 -->
<view class="ap_class">
<!-- 安排班级 -->
<view class="ap_classes">
<view class="ap_classes" @click="toclass()">
<view class="ad_organization">
<view class="ad_ap">班级安排</view>
<view class="ad_icon">
@ -70,7 +70,7 @@
</view>
</view>
<!-- 成员安排 -->
<view class="ap_classes">
<view class="ap_classes" @click="tostu()">
<view class="ad_organization">
<view class="ad_ap">成员安排</view>
<view class="ad_icon">
@ -96,17 +96,20 @@
<view class="view_timeline" style="margin-top: 20rpx;">
<u-time-line>
<!-- 时间线1 -->
<u-time-line-item nodeTop="2" node-color="red" v-for="(itemsx,indexx) in item.items" :key="indexx">
<u-time-line-item nodeTop="2" node-color="red" v-for="(itemsx,indexx) in item.items"
:key="indexx">
<template v-slot:content>
<view>
<view class="u-order-title">
<view class="fickle">
<view class="view_first_wz" v-if="itemsx.classify==1||itemsx.classify==2">
{{itemsx.testName}}</view>
{{itemsx.testName}}
</view>
<view class="view_first_wz" v-if="itemsx.classify==3">{{itemsx.testName}}
</view>
<view class="view_first_wz" v-if="itemsx.classify==4">
{{itemsx.moduleName}}-{{itemsx.partName}}</view>
{{itemsx.moduleName}}-{{itemsx.partName}}
</view>
<view class="changeable greenish" v-if="itemsx.classify==1">听力</view>
<view class="changeable yellow" v-if="itemsx.classify==2">阅读</view>
<view class="changeable blur" v-if="itemsx.classify==3">写作</view>
@ -117,34 +120,40 @@
</view>
<veiw class="blue-green">
<view class="blue_qs" :style="'width:' + itemsx.speedwidth + '%;'" v-if="itemsx.classify==1">
<view class="blue_qs" :style="'width:' + itemsx.speedwidth + '%;'"
v-if="itemsx.classify==1">
</view>
<view class="blue_qs2" :style="'width:' + itemsx.speedwidth + '%;'" v-if="itemsx.classify==2">
<view class="blue_qs2" :style="'width:' + itemsx.speedwidth + '%;'"
v-if="itemsx.classify==2">
</view>
<view class="blue_qs3" :style="'width:' + itemsx.speedwidth + '%;'" v-if="itemsx.classify==3">
<view class="blue_qs3" :style="'width:' + itemsx.speedwidth + '%;'"
v-if="itemsx.classify==3">
</view>
<view class="blue_qs4" :style="'width:' + itemsx.speedwidth + '%;'" v-if="itemsx.classify==4">
<view class="blue_qs4" :style="'width:' + itemsx.speedwidth + '%;'"
v-if="itemsx.classify==4">
</view>
<view class="text" style="z-index: 2;" v-if="itemsx.classify==1||itemsx.classify==2" >
<view class="text" style="z-index: 2;"
v-if="itemsx.classify==1||itemsx.classify==2">
{{itemsx.partName}}
</view>
<view class="word" style="z-index: 2;" v-if="itemsx.classify==1||itemsx.classify==2">
<view class="word" style="z-index: 2;"
v-if="itemsx.classify==1||itemsx.classify==2">
:{{itemsx.questionType}}
</view>
<view class="text" style="z-index: 2;" v-if="itemsx.classify==3" >
<view class="text" style="z-index: 2;" v-if="itemsx.classify==3">
{{itemsx.partName}}
</view>
<view class="text" style="z-index: 2;" v-if="itemsx.classify==4" >
<view class="text" style="z-index: 2;" v-if="itemsx.classify==4">
{{itemsx.questionName}}
</view>
<view class="word" style="z-index: 2;" v-if="itemsx.classify==4">
<view class="word" style="z-index: 2;" v-if="itemsx.classify==4">
:
<span v-for=" ts in itemsx.speakingType.split(',') " :key="ts">
{{ getTypeText(ts) }}
</span>
<span v-for=" ts in itemsx.speakingType.split(',') " :key="ts">
{{ getTypeText(ts) }}
</span>
</view>
</veiw>
@ -156,7 +165,7 @@
</view>
</template>
<view class="zhanwei" style="width: 100%;height: 50rpx;">
</view>
</view>
</view>
@ -179,18 +188,38 @@
},
methods: {
getTypeText(type) {
switch (type) {
case '1':
return '串题'+" ";
case '2':
return '跟读'+" ";
case '3':
return '模考'+" ";
default:
return '其他类型';
}
},
getTypeText(type) {
switch (type) {
case '1':
return '串题' + " ";
case '2':
return '跟读' + " ";
case '3':
return '模考' + " ";
default:
return '其他类型';
}
},
toclass(){
uni.navigateTo({
url: "/pages_teacher/pages_add/add_class?id=" +this.workinfo.id
}).then(res => {
}).catch(err => {
});
},
tostu(){
uni.navigateTo({
url: "/pages_teacher/teacher_class/class_members?id=" + this.workinfo.id
}).then(res => {
}).catch(err => {
});
},
getworklist() {
this.$u.get(`https://api.admin-v2.langsi.online/admin-api/classroom/work-record/detail?workId=${this.id}`)
.then(res => {
@ -199,17 +228,17 @@
if (res.code == 0) {
this.workinfo = res.data
this.uploadspeath = (this.workinfo.doneNum / this.workinfo.totalNum) * 100;
let json = JSON.stringify(this.workinfo )
for (const paper of this.workinfo.papers) {
// Loop through items in each paper
for (const item of paper.items) {
// Calculate speedwidth and add it to the item
item.speedwidth = (item.doneNum / item.totalNum) * 100;
}
}
let json = JSON.stringify(this.workinfo)
for (const paper of this.workinfo.papers) {
// Loop through items in each paper
for (const item of paper.items) {
// Calculate speedwidth and add it to the item
item.speedwidth = (item.doneNum / item.totalNum) * 100;
}
}
// this.orgworkinfo = JSON.parse(JSON.stringify(res.data));
// this.classlist = res.data.list
// this.isloding = false
@ -231,7 +260,7 @@
.title {
margin-top: 32rpx;
font-size: 40rpx;
font-family: 'YOUSHEBIAOTIHEI-2', 'YOUSHEBIAOTIHEI-2';
font-family: 'YOUSHEBIAOTIHEI-2', 'YOUSHEBIAOTIHEI-2';
font-weight: 400;
color: #2E4975;
}
@ -439,12 +468,13 @@
font-family: 'PingFang', 'PingFang';
font-weight: 500;
color: #2E4975;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.word{
.word {
z-index: 2;
font-size: 24rpx;
font-family: 'PingFang', 'PingFang';