diff --git a/common/css/common.css b/common/css/common.css index 14dc78e..1c8d2ad 100644 --- a/common/css/common.css +++ b/common/css/common.css @@ -16,4 +16,7 @@ image { width: 100%; height: 100%; } - +@font-face { + font-family: 'YOUSHEBIAOTIHEI-2'; + src: url('https://file.langsi.online/ttf/YOUSHEBIAOTIHEI-2.TTF') +} diff --git a/common/http.interceptor.js b/common/http.interceptor.js index 905f51f..c62fbe8 100644 --- a/common/http.interceptor.js +++ b/common/http.interceptor.js @@ -42,7 +42,7 @@ const install = (Vue, vm) => { // 所以哪怕您重新登录修改了Storage,下一次的请求将会是最新值 // const token = uni.getStorageSync('token'); - const token = " Bearer ca5a6cd7473c4b18b22044321b1fba91" + const token = " Bearer 794bed8faaf14a00b07befd07b8402b2" // console.log("我是token", token) config.header.Authorization = token; diff --git a/components/tab-bar/tab-bar.vue b/components/tab-bar/tab-bar.vue index 6cdc447..4a7d363 100644 --- a/components/tab-bar/tab-bar.vue +++ b/components/tab-bar/tab-bar.vue @@ -11,7 +11,7 @@ <script> export default { data() { - return { + return { list: [ { iconPath: require('@/static/tabbar/home.png'), @@ -23,7 +23,7 @@ { iconPath: require('@/static/tabbar/tiku.png'), selectedIconPath:require('@/static/tabbar/tiku-act.png'), - text: '题库', + text: '班级', customIcon: true, pagePath:'/pages/home/home' } @@ -35,7 +35,7 @@ pagePath:'/pages/user/usertwo' }, ], - current: 0 + current: 0 } }, } @@ -44,4 +44,11 @@ /deep/.u-tabbar__content__item__button{ top: 20rpx !important; } + /deep/.u-tabbar { + .u-tabbar__content__item:nth-child(2) { + .u-tabbar__content__item__button { + width: 32rpx !important; + } + } + } </style> \ No newline at end of file diff --git a/pages.json b/pages.json index 173704d..0a2b316 100644 --- a/pages.json +++ b/pages.json @@ -218,6 +218,16 @@ "enablePullDownRefresh": false, "navigationStyle": "custom" } + }, + { + "path" : "pages_add/add_class", + "style" : + { + "navigationBarTitleText": "", + "navigationBarBackgroundColor": "#4473f6", + "enablePullDownRefresh": false, + "navigationStyle": "custom" + } } ] @@ -246,7 +256,7 @@ "selectedIconPath": "/static/tabbar/tiku.png", "iconPath": "/static/tabbar/tiku-act.png", "pagePath": "pages/Mystudent/student", - "text": "题库" + "text": "班级" } ,{ "selectedIconPath": "/static/tabbar/my.png", diff --git a/pages/Mystudent/Formteacher.vue b/pages/Mystudent/Formteacher.vue index 2656825..d6356b9 100644 --- a/pages/Mystudent/Formteacher.vue +++ b/pages/Mystudent/Formteacher.vue @@ -54,7 +54,7 @@ export default { }, methods: { getclassteacher(){ - this.$u.get(`/admin-api/classroom/teacher/list?classId=${this.classid}`).then(res => { + this.$u.get(`https://api.admin-v2.langsi.online/admin-api/classroom/teacher/list?classId=${this.classid}`).then(res => { if (res.code == 0) { diff --git a/pages/Mystudent/Mystudent.vue b/pages/Mystudent/Mystudent.vue index c6b9f42..9452838 100644 --- a/pages/Mystudent/Mystudent.vue +++ b/pages/Mystudent/Mystudent.vue @@ -152,6 +152,7 @@ </view> + </view> <view class="work_info"> <view class="work_info_top"> diff --git a/pages/Mystudent/addclassforwork.vue b/pages/Mystudent/addclassforwork.vue index 24c840f..02b3ff2 100644 --- a/pages/Mystudent/addclassforwork.vue +++ b/pages/Mystudent/addclassforwork.vue @@ -22,7 +22,7 @@ <view class="teacher_card_box" > <view class="teacher_card" v-for="(item, index) in classlist" v-if="isloding == false" :key="index" @click="toggleSelection(item)" :class="{ 'act1': item.isSelected }"> <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" v-html="highlightSearch(item.name)"> diff --git a/pages/Mystudent/arrange_work.vue b/pages/Mystudent/arrange_work.vue index 11d1978..82588ef 100644 --- a/pages/Mystudent/arrange_work.vue +++ b/pages/Mystudent/arrange_work.vue @@ -26,8 +26,8 @@ </view> </view> <view class="card_bigbox"> - <view class="work_card" v-for="(item,index ) in workinfo" :key="index" - :class="item.iswork === '1' ? 'act1' : (item.iswork === '2' ? 'act3' : 'default')"> + <view class="work_card" v-for="(item,index ) in workinfo" :key="index" @click="toworkdetail(item.id)" + :class="item.status === 1 ? 'act1' : (item.status === '2' ? 'act3' : 'default')"> <view class="work_card_top"> <view class="work_card_top_left"> <view class="work_card_top_left_img"> @@ -38,15 +38,22 @@ </view> </view> - <view class="work_card_top_right" :class="isalready == true ? 'act2' : ''"> + <view class="work_card_top_right" :class="item.status == 1 ? 'act2' : ''"> 进行中 </view> </view> <view class="work_card_cont_box"> + <!-- v-if="indexs<3" --> <view class="work_card_cont" v-for="(items,indexs ) in item.infos" :key="indexs" v-if="indexs<3"> <view class="work_card_cont_point"></view> <view class="work_card_cont_text" v-if="items.classify==1||items.classify==2"> - {{items.paperName}}-{{items.testName}} + {{items.paperName}}-{{items.testName}}-{{items.partName}} + </view> + <view class="work_card_cont_text" v-if="items.classify==4" style="display: inline-flex;flex-wrap: nowrap;"> + {{items.moduleName}}-{{items.partName}}-<view style="width:140rpx; overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">{{items.questionName}}</view>-跟读 + </view> + <view class="work_card_cont_text" v-if="items.classify==3"> + {{items.paperName}}-{{items.testName}}-{{items.partName}} </view> <view class="work_card_cont_tag" v-if="items.classify==1" style="background: rgba(27,225,178,0.1);color: #1BE1B2;"> @@ -99,6 +106,9 @@ </view> </view> </view> + </view> + <view class="zhanwei" style="width: 100%;height: 60rpx;"> + </view> <view class="botbtn"> <view class="btn"> @@ -142,6 +152,15 @@ this.getworklist() }, methods: { + toworkdetail(id){ + uni.navigateTo({ + url: "/pages_teacher/teacher_teachers/operation_detail?id=" + id + }).then(res => { + + }).catch(err => { + + }); + }, highlightSearch(name) { // 使用正则表达式替换匹配到的 searchKeyword 为带有颜色的文字 if (this.searchKeyword) { diff --git a/pages/Mystudent/student.vue b/pages/Mystudent/student.vue index 47efe5b..04f7b31 100644 --- a/pages/Mystudent/student.vue +++ b/pages/Mystudent/student.vue @@ -129,7 +129,7 @@ @click="toclassdetal(item)"> <view class="class_card_top"> <view class="class_card_left"> - <image src=" https://file.langsi.online/yasiimg/web/static/udWNTRG6GulmTtgPRQ49"></image> + <image :src="item.avatar" style="border-radius: 50%;"></image> </view> <view class="class_card_right"> <view class="class_card_right_top" v-html="highlightSearch(item.name)"> @@ -1012,6 +1012,7 @@ .class_card_left { width: 84rpx; height: 84rpx; + border-radius: 50%; } .class_card_right { diff --git a/pages/compoents/indexList.vue b/pages/compoents/indexList.vue index 832b238..365bf4b 100644 --- a/pages/compoents/indexList.vue +++ b/pages/compoents/indexList.vue @@ -293,7 +293,7 @@ // height: 60rpx; font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; // margin-bottom: 20rpx; @@ -308,7 +308,7 @@ .item { padding: 22rpx 0 18rpx 32rpx; font-size: 24rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #072F5A; margin-bottom: 32rpx; @@ -340,7 +340,7 @@ width: calc(750rpx - 680rpx); text-align: center; font-size: 16rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(46,73,117,0.5); diff --git a/pages/compoents/pages_home.vue b/pages/compoents/pages_home.vue index f180796..2792568 100644 --- a/pages/compoents/pages_home.vue +++ b/pages/compoents/pages_home.vue @@ -370,14 +370,14 @@ .number { font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2D7CE6; } .text { font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(7, 47, 90, 0.5); } @@ -421,7 +421,7 @@ .view_span text:nth-child(1) { font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: bold; color: #072F5A; margin-bottom: 7rpx; @@ -430,7 +430,7 @@ .view_span text:nth-child(2) { font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(46, 73, 117, 0.5); margin-bottom: 7rpx; @@ -456,7 +456,7 @@ .view_text2 view { font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #F18F21; } @@ -464,7 +464,7 @@ .view_text2 text { font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(7, 47, 90, 0.4); } diff --git a/pages/compoents/pages_mine.vue b/pages/compoents/pages_mine.vue index 6247059..f309aef 100644 --- a/pages/compoents/pages_mine.vue +++ b/pages/compoents/pages_mine.vue @@ -153,7 +153,7 @@ .view_reative view text:nth-child(1) { height: 32rpx; font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #2E4975; line-height: 32rpx; @@ -162,7 +162,7 @@ .view_reative view text:nth-child(2) { height: 46rpx; font-size: 36rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; line-height: 47rpx; @@ -195,7 +195,7 @@ text { height: 58rpx; font-size: 32rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; line-height: 58rpx; diff --git a/pages/index/index.vue b/pages/index/index.vue index 09dd28e..10dfd94 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -4,7 +4,16 @@ <u-navbar :is-back="false" title='首页' title-color="#2E4975" :border-bottom="false" :background="true" id="navbar"> </u-navbar> - <view class="top_message"> + <view class="noinfo"> + <view class="noinfo_tit"> + 当前暂无学习数据,快去布置作业吧! + </view> + <view class="noinfo_btn"> + 去安排 + <image src="https://file.langsi.online/yasiimg/web/static/urw7xsodoO8Ay2ZWizL4" mode=""></image> + </view> + </view> + <view class="top_message" v-if="false"> <view class="top_message_left"> <view class="top_message_left_top"> 32 @@ -26,6 +35,9 @@ </view> </view> <view class="work_msa"> + <view class="work_img"> + <image src="https://file.langsi.online/yasiimg/web/static/ukr9UZt8xuv2DgcwkWCq" mode=""></image> + </view> <view class="work_msa_top"> <view class="work_msa_top_left"> 作业完成情况 @@ -165,7 +177,38 @@ .view_by { padding: 0 32rpx; - + .noinfo{ + margin-top: 62rpx; + margin-left: 186rpx; + display: flex; + flex-wrap: wrap; + .noinfo_tit{ + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #627698; + } + .noinfo_btn{ + margin-top: 18rpx; + display: flex; + flex-wrap: nowrap; + justify-content: center; + align-items: center; + width: 160rpx; + height: 56rpx; + background: #2D7CE6; + border-radius: 86rpx 86rpx 86rpx 86rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #FFFFFF; + image{ + margin-left: 8rpx; + width: 16rpx; + height: 16rpx; + } + } + } .top_message { display: flex; @@ -181,7 +224,7 @@ width: 100%; text-align: center; font-size: 76rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; } @@ -190,7 +233,7 @@ width: 100%; text-align: center; font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #2E4975; } @@ -213,7 +256,7 @@ width: 100%; text-align: center; font-size: 76rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; } @@ -222,7 +265,7 @@ width: 100%; text-align: center; font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #2E4975; } @@ -230,13 +273,20 @@ } .work_msa { + position: relative; padding: 32rpx; margin-top: 32rpx; width: 686rpx; height: 459rpx; background: #FFFFFF; border-radius: 20rpx 20rpx 20rpx 20rpx; - + .work_img{ + position: absolute; + left: 22rpx; + top: -190rpx; + height:190rpx ; + width: 145.28rpx; + } .work_msa_top { display: flex; flex-wrap: nowrap; @@ -245,7 +295,7 @@ // justify-content: center; .work_msa_top_left { font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; } @@ -255,7 +305,7 @@ align-items: center; flex-wrap: nowrap; font-size: 24rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(46, 73, 117, 0.65); @@ -279,7 +329,7 @@ align-items: center; margin-top: 32rpx; font-size: 24rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; @@ -345,14 +395,14 @@ margin-left: 16rpx; .stu_info_top{ font-size: 28rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: bold; color: #072F5A; } .stu_info_bot{ margin-top: 4rpx; font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(46,73,117,0.5); } @@ -363,7 +413,7 @@ .card_right_top{ text-align: right; font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #F18F21; } @@ -371,7 +421,7 @@ margin-top: 4rpx; text-align: right; font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(7,47,90,0.4); } diff --git a/pages_teacher/pages_add/add_class.vue b/pages_teacher/pages_add/add_class.vue index 5ddefb5..cc4d372 100644 --- a/pages_teacher/pages_add/add_class.vue +++ b/pages_teacher/pages_add/add_class.vue @@ -1,9 +1,583 @@ <template> - <view>添加学生-班级</view> + <view class="addpage"> + <u-navbar :title="title" :border-bottom="false" :background="bgc" title-color='#2E4975' title-size='36' + height='36'></u-navbar> + <view class="serchbox"> + <view class="serchimg"> + <image src="https://file.langsi.online/yasiimg/web/static/uVMACkynkipOxuTYDqm0"> + + </image> + </view> + <input type="text" + placeholder="搜索相关内容..." + class="input" + placeholder-style="color:#C7CDD3 "> + </view> + + <view class="check_card" v-show="checkindex==0"> + <!-- <view class="check_card_stu"> + + </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 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> </template> <script> + export default { + data() { + return { + title: '班级安排', + // 班级名称数据绑定 + + bgc: { + backgroundColor: "#F6F9FC", + }, + checkindex: 0, + id:13, + workinfo:[], + orgworkinfo:[] + + + } + }, + onLoad() { + this.getworklist() + }, + methods: { + getworklist() { + this.$u.get(`https://api.admin-v2.langsi.online//admin-api/classroom/work-record/classrooms?workId=${this.id}`).then(res => { + + + if (res.code == 0) { + this.workinfo = res.data + this.orgworkinfo = JSON.parse(JSON.stringify(res.data)); + // this.classlist = res.data.list + // this.isloding = false + + } + }) + }, + + + } + } </script> -<style> +<style lang="scss" scoped> + .no-padding /deep/ .u-form-item { + padding: 0; + } + + page { + background: #F6F9FC; + } + + .addpage { + width: 750rpx; + padding: 0 32rpx; + flex-wrap: wrap; + + // display: flex; + // flex-wrap: wrap; + .topbox { + margin-top: 46rpx; + display: flex; + flex-wrap: nowrap; + justify-content: space-between; + align-items: center; + + .search_box { + + width: 480rpx; + height: 88rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + display: flex; + flex-wrap: nowrap; + + .check_search { + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: center; + width: 148rpx; + height: 88rpx; + background: #FFF2E4; + border-radius: 20rpx 0rpx 0rpx 20rpx; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #F39852; + + .icon-arow_down { + margin-left: 8rpx; + font-size: 20rpx; + } + } + + .serchbox { + // padding: 0 32rpx; + display: flex; + flex-wrap: nowrap; + // margin-top: 30rpx; + align-items: center; + // justify-content: space-between; + width: 538rpx; + height: 88rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + + .serchimg { + margin-left: 32rpx; + + width: 32rpx; + height: 32rpx; + + } + + .input { + margin-left: 24rpx; + width: 394rpx; + height: 88rpx; + // border-radius: 30rpx; + // background-color: #f5f8fc; + // display: flex; + // justify-content: center; + // align-items: center; + // text-align: center; + font-size: 28rpx; + font-family: Source Han Sans CN, Source Han Sans CN-Light; + font-weight: 300; + text-align: left; + color: #a7b9cd; + letter-spacing: 1.2rpx; + line-height: 36rpx; + // padding: 0 100rpx; + // padding-right: 135rpx; + box-sizing: border-box; + + } + } + + } + + .addclass { + display: flex; + align-items: center; + justify-content: center; + width: 194rpx; + height: 88rpx; + background: #FFF2E4; + border-radius: 20rpx 20rpx 20rpx 20rpx; + + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #F39852; + } + } + .serchbox { + padding: 0 32rpx; + display: flex; + flex-wrap: nowrap; + margin-top: 30rpx; + align-items: center; + width: 686rpx; + height: 88rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + + .serchimg { + width: 30.51rpx; + height: 32rpx; + margin-right: 24rpx; + } + + .input { + margin: 0 auto; + width: 568rpx; + height: 88rpx; + border-radius: 30rpx; + // background-color: #f5f8fc; + // display: flex; + // justify-content: center; + // align-items: center; + // text-align: center; + font-size: 28rpx; + font-family: Source Han Sans CN, Source Han Sans CN-Light; + font-weight: 300; + text-align: left; + color: #a7b9cd; + letter-spacing: 1.2rpx; + line-height: 36rpx; + // padding: 0 100rpx; + // padding-right: 135rpx; + box-sizing: border-box; + + } + } + + .check_card { + margin-top: 20rpx; + + .check_card_stu { + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + padding: 32rpx; + width: 686rpx; + height: 148rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #FFFFFF; + margin-bottom: 20rpx; + + .check_card_stu_info_left { + display: flex; + flex-wrap: nowrap; + + .class_card_left { + width: 76rpx; + height: 76rpx; + } + + .class_card_right { + margin-left: 12rpx; + display: flex; + flex-wrap: wrap; + + .class_card_right_top { + width: 100%; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: bold; + color: #072F5A; + } + + .class_card_right_bot { + margin-top: 4rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: rgba(7, 47, 90, 0.6); + } + } + } + + .check_card_stu_info_right { + width: 50%; + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + + .class_info { + width: 110rpx; + display: flex; + flex-wrap: wrap; + justify-content: center; + + .class_info_top { + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: rgba(7, 47, 90, 0.5); + } + + .class_info_bot { + margin-top: 12rpx; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #2D7CE6; + } + } + } + } + + .check_card_cls { + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + padding: 32rpx; + width: 686rpx; + height: 148rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #FFFFFF; + margin-bottom: 20rpx; + + .check_card_cls_info_left { + display: flex; + flex-wrap: nowrap; + + .class_card_left { + width: 84rpx; + height: 84rpx; + } + + .class_card_right { + margin-left: 12rpx; + display: flex; + flex-wrap: wrap; + + .class_card_right_top { + width: 100%; + font-size: 32rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: bold; + color: #072F5A; + } + + .class_card_right_bot { + margin-top: 8rpx; + background: #EBF3FF; + border-radius: 4rpx 4rpx 4rpx 4rpx; + padding: 10rpx 20rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #2D7CE6; + } + } + } + + .check_card_cls_info_right { + width: 50%; + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + + .class_info { + width: 110rpx; + display: flex; + flex-wrap: wrap; + justify-content: center; + + .class_info_top { + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: rgba(7, 47, 90, 0.5); + } + + .class_info_bot { + margin-top: 12rpx; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #2D7CE6; + } + } + } + + } + + .act1 { + border: 2rpx solid #2D7CE6; + } + } + + .botbtn { + padding: 32rpx 32rpx 0 32rpx; + margin-left: -32rpx; + position: fixed; + bottom: 0; + width: 750rpx; + height: 200rpx; + background: #FFFFFF; + box-shadow: 0rpx -10rpx 16rpx 0rpx rgba(202, 202, 202, 0.25); + border-radius: 40rpx 40rpx 0rpx 0rpx; + + .btn { + display: flex; + align-items: center; + justify-content: center; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #FFFFFF; + width: 686rpx; + height: 80rpx; + background: linear-gradient(180deg, #74AFFF 0%, #2D7CE6 100%); + border-radius: 104rpx 104rpx 104rpx 104rpx; + } + } + } + + .pop-up { + padding: 30rpx 32rpx; + + .caption { + font-size: 36rpx; + text-align: center; + font-weight: 800; + color: #2E4975; + padding-top: 20rpx; + } + + .caption_top { + font-size: 28rpx; + font-family: 'PingFang'; + color: #2E4975; + margin-top: 40rpx; + } + + .dashboard { + position: absolute; + width: 40rpx; + height: 40rpx; + bottom: 0; + right: 0; + } + + .caption_input { + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #DDE2EE; + margin-top: 16rpx; + padding: 0 20rpx; + } + + .caption_top_links { + font-size: 20rpx; + font-family: 'PingFang'; + font-weight: 500; + color: #2D7CE6; + } + + .element.style { + background-color: red; + } + + .u-list-item u-add-wrap { + width: 62rpx !important; + } + + .caption_add { + width: 93.1%; + background: #2D7CE6; + border-radius: 20rpx 20rpx 20rpx 20rpx; + text-align: center; + margin: 0 auto; + padding: 24rpx 0; + color: #fff; + margin-top: 40rpx; + } + + .caption_class { + margin-top: 40rpx; + } + + .class_body { + margin-top: 40rpx; + + .caption_flex { + display: flex; + align-items: center; + + .caption_boder_text2 { + font-size: 23rpx; + font-weight: 500; + color: #2D7CE6; + } + } + + .caption_boder { + position: relative; + width: 96rpx; + height: 96rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #DDE2EE; + margin-top: 17rpx; + + .class_tp_image { + position: absolute; + top: 28rpx; + right: 32rpx; + bottom: 0; + width: + 28rpx; + height: + 28rpx; + } + + } + } + + + } </style> \ No newline at end of file diff --git a/pages_teacher/teacher_class/class_add.vue b/pages_teacher/teacher_class/class_add.vue index 37937ce..e69de29 100644 --- a/pages_teacher/teacher_class/class_add.vue +++ b/pages_teacher/teacher_class/class_add.vue @@ -1,9 +0,0 @@ -<template> - <view>添加班级</view> -</template> - -<script> -</script> - -<style> -</style> \ No newline at end of file diff --git a/pages_teacher/teacher_class/class_detail.vue b/pages_teacher/teacher_class/class_detail.vue index cf85757..f0466fb 100644 --- a/pages_teacher/teacher_class/class_detail.vue +++ b/pages_teacher/teacher_class/class_detail.vue @@ -330,7 +330,7 @@ width: 36rpx; height: 36rpx; font-size: 20rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #F18F21; diff --git a/pages_teacher/teacher_class/class_members.vue b/pages_teacher/teacher_class/class_members.vue index 0d38515..cc4d372 100644 --- a/pages_teacher/teacher_class/class_members.vue +++ b/pages_teacher/teacher_class/class_members.vue @@ -1,9 +1,583 @@ <template> - <view>班级成员</view> + <view class="addpage"> + <u-navbar :title="title" :border-bottom="false" :background="bgc" title-color='#2E4975' title-size='36' + height='36'></u-navbar> + <view class="serchbox"> + <view class="serchimg"> + <image src="https://file.langsi.online/yasiimg/web/static/uVMACkynkipOxuTYDqm0"> + + </image> + </view> + <input type="text" + placeholder="搜索相关内容..." + class="input" + placeholder-style="color:#C7CDD3 "> + </view> + + <view class="check_card" v-show="checkindex==0"> + <!-- <view class="check_card_stu"> + + </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 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> </template> <script> + export default { + data() { + return { + title: '班级安排', + // 班级名称数据绑定 + + bgc: { + backgroundColor: "#F6F9FC", + }, + checkindex: 0, + id:13, + workinfo:[], + orgworkinfo:[] + + + } + }, + onLoad() { + this.getworklist() + }, + methods: { + getworklist() { + this.$u.get(`https://api.admin-v2.langsi.online//admin-api/classroom/work-record/classrooms?workId=${this.id}`).then(res => { + + + if (res.code == 0) { + this.workinfo = res.data + this.orgworkinfo = JSON.parse(JSON.stringify(res.data)); + // this.classlist = res.data.list + // this.isloding = false + + } + }) + }, + + + } + } </script> -<style> +<style lang="scss" scoped> + .no-padding /deep/ .u-form-item { + padding: 0; + } + + page { + background: #F6F9FC; + } + + .addpage { + width: 750rpx; + padding: 0 32rpx; + flex-wrap: wrap; + + // display: flex; + // flex-wrap: wrap; + .topbox { + margin-top: 46rpx; + display: flex; + flex-wrap: nowrap; + justify-content: space-between; + align-items: center; + + .search_box { + + width: 480rpx; + height: 88rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + display: flex; + flex-wrap: nowrap; + + .check_search { + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: center; + width: 148rpx; + height: 88rpx; + background: #FFF2E4; + border-radius: 20rpx 0rpx 0rpx 20rpx; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #F39852; + + .icon-arow_down { + margin-left: 8rpx; + font-size: 20rpx; + } + } + + .serchbox { + // padding: 0 32rpx; + display: flex; + flex-wrap: nowrap; + // margin-top: 30rpx; + align-items: center; + // justify-content: space-between; + width: 538rpx; + height: 88rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + + .serchimg { + margin-left: 32rpx; + + width: 32rpx; + height: 32rpx; + + } + + .input { + margin-left: 24rpx; + width: 394rpx; + height: 88rpx; + // border-radius: 30rpx; + // background-color: #f5f8fc; + // display: flex; + // justify-content: center; + // align-items: center; + // text-align: center; + font-size: 28rpx; + font-family: Source Han Sans CN, Source Han Sans CN-Light; + font-weight: 300; + text-align: left; + color: #a7b9cd; + letter-spacing: 1.2rpx; + line-height: 36rpx; + // padding: 0 100rpx; + // padding-right: 135rpx; + box-sizing: border-box; + + } + } + + } + + .addclass { + display: flex; + align-items: center; + justify-content: center; + width: 194rpx; + height: 88rpx; + background: #FFF2E4; + border-radius: 20rpx 20rpx 20rpx 20rpx; + + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #F39852; + } + } + .serchbox { + padding: 0 32rpx; + display: flex; + flex-wrap: nowrap; + margin-top: 30rpx; + align-items: center; + width: 686rpx; + height: 88rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + + .serchimg { + width: 30.51rpx; + height: 32rpx; + margin-right: 24rpx; + } + + .input { + margin: 0 auto; + width: 568rpx; + height: 88rpx; + border-radius: 30rpx; + // background-color: #f5f8fc; + // display: flex; + // justify-content: center; + // align-items: center; + // text-align: center; + font-size: 28rpx; + font-family: Source Han Sans CN, Source Han Sans CN-Light; + font-weight: 300; + text-align: left; + color: #a7b9cd; + letter-spacing: 1.2rpx; + line-height: 36rpx; + // padding: 0 100rpx; + // padding-right: 135rpx; + box-sizing: border-box; + + } + } + + .check_card { + margin-top: 20rpx; + + .check_card_stu { + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + padding: 32rpx; + width: 686rpx; + height: 148rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #FFFFFF; + margin-bottom: 20rpx; + + .check_card_stu_info_left { + display: flex; + flex-wrap: nowrap; + + .class_card_left { + width: 76rpx; + height: 76rpx; + } + + .class_card_right { + margin-left: 12rpx; + display: flex; + flex-wrap: wrap; + + .class_card_right_top { + width: 100%; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: bold; + color: #072F5A; + } + + .class_card_right_bot { + margin-top: 4rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: rgba(7, 47, 90, 0.6); + } + } + } + + .check_card_stu_info_right { + width: 50%; + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + + .class_info { + width: 110rpx; + display: flex; + flex-wrap: wrap; + justify-content: center; + + .class_info_top { + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: rgba(7, 47, 90, 0.5); + } + + .class_info_bot { + margin-top: 12rpx; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #2D7CE6; + } + } + } + } + + .check_card_cls { + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + padding: 32rpx; + width: 686rpx; + height: 148rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #FFFFFF; + margin-bottom: 20rpx; + + .check_card_cls_info_left { + display: flex; + flex-wrap: nowrap; + + .class_card_left { + width: 84rpx; + height: 84rpx; + } + + .class_card_right { + margin-left: 12rpx; + display: flex; + flex-wrap: wrap; + + .class_card_right_top { + width: 100%; + font-size: 32rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: bold; + color: #072F5A; + } + + .class_card_right_bot { + margin-top: 8rpx; + background: #EBF3FF; + border-radius: 4rpx 4rpx 4rpx 4rpx; + padding: 10rpx 20rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #2D7CE6; + } + } + } + + .check_card_cls_info_right { + width: 50%; + display: flex; + flex-wrap: nowrap; + align-items: center; + justify-content: space-between; + + .class_info { + width: 110rpx; + display: flex; + flex-wrap: wrap; + justify-content: center; + + .class_info_top { + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: rgba(7, 47, 90, 0.5); + } + + .class_info_bot { + margin-top: 12rpx; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #2D7CE6; + } + } + } + + } + + .act1 { + border: 2rpx solid #2D7CE6; + } + } + + .botbtn { + padding: 32rpx 32rpx 0 32rpx; + margin-left: -32rpx; + position: fixed; + bottom: 0; + width: 750rpx; + height: 200rpx; + background: #FFFFFF; + box-shadow: 0rpx -10rpx 16rpx 0rpx rgba(202, 202, 202, 0.25); + border-radius: 40rpx 40rpx 0rpx 0rpx; + + .btn { + display: flex; + align-items: center; + justify-content: center; + font-size: 28rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #FFFFFF; + width: 686rpx; + height: 80rpx; + background: linear-gradient(180deg, #74AFFF 0%, #2D7CE6 100%); + border-radius: 104rpx 104rpx 104rpx 104rpx; + } + } + } + + .pop-up { + padding: 30rpx 32rpx; + + .caption { + font-size: 36rpx; + text-align: center; + font-weight: 800; + color: #2E4975; + padding-top: 20rpx; + } + + .caption_top { + font-size: 28rpx; + font-family: 'PingFang'; + color: #2E4975; + margin-top: 40rpx; + } + + .dashboard { + position: absolute; + width: 40rpx; + height: 40rpx; + bottom: 0; + right: 0; + } + + .caption_input { + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #DDE2EE; + margin-top: 16rpx; + padding: 0 20rpx; + } + + .caption_top_links { + font-size: 20rpx; + font-family: 'PingFang'; + font-weight: 500; + color: #2D7CE6; + } + + .element.style { + background-color: red; + } + + .u-list-item u-add-wrap { + width: 62rpx !important; + } + + .caption_add { + width: 93.1%; + background: #2D7CE6; + border-radius: 20rpx 20rpx 20rpx 20rpx; + text-align: center; + margin: 0 auto; + padding: 24rpx 0; + color: #fff; + margin-top: 40rpx; + } + + .caption_class { + margin-top: 40rpx; + } + + .class_body { + margin-top: 40rpx; + + .caption_flex { + display: flex; + align-items: center; + + .caption_boder_text2 { + font-size: 23rpx; + font-weight: 500; + color: #2D7CE6; + } + } + + .caption_boder { + position: relative; + width: 96rpx; + height: 96rpx; + background: #FFFFFF; + border-radius: 20rpx 20rpx 20rpx 20rpx; + border: 2rpx solid #DDE2EE; + margin-top: 17rpx; + + .class_tp_image { + position: absolute; + top: 28rpx; + right: 32rpx; + bottom: 0; + width: + 28rpx; + height: + 28rpx; + } + + } + } + + + } </style> \ No newline at end of file diff --git a/pages_teacher/teacher_teachers/operation_detail.vue b/pages_teacher/teacher_teachers/operation_detail.vue index 594d919..ae98431 100644 --- a/pages_teacher/teacher_teachers/operation_detail.vue +++ b/pages_teacher/teacher_teachers/operation_detail.vue @@ -2,7 +2,8 @@ <view class="view_body"> <view class="view_bulk"> <!-- navbar --> - <u-navbar :is-back="true" title='详情' title-color="#000" :border-bottom="false" :background="true" id="navbar"> + <u-navbar :is-back="true" title='详情' title-color="#2E4975" :border-bottom="false" :background="true" + id="navbar"> </u-navbar> <!-- 听力题库作业 --> <view class="view_hearing"> @@ -12,7 +13,7 @@ <u-icon name="kefu-ermai" color="#F18F21"></u-icon> </view> <view class="view_first_wz"> - 听力题库作业 + {{workinfo.name}} </view> </view> @@ -25,7 +26,7 @@ <view>描述</view> </view> <view class="view_textual"> - 最好在中午十二点之前完成交上作业,过期不候 + {{workinfo.des}} </view> </view> <view class="view_descriptive"> @@ -34,7 +35,7 @@ <view>时间</view> </view> <view class="view_textual"> - 02-12 12:00 + {{workinfo.doneTime}} </view> </view> <view class="view_descriptive"> @@ -42,7 +43,11 @@ <u-icon name="clock"></u-icon> <view>已完成</view> </view> - <u-line-progress active-color="#2979ff" :percent="40" class="progress"></u-line-progress> + <view class="speed_box"> + <view class="speed" :style="'width:' + uploadspeath + '%;'"> + {{ uploadspeath }}% + </view> + </view> </view> </view> <!-- 班级 --> @@ -50,29 +55,17 @@ <!-- 安排班级 --> <view class="ap_classes"> <view class="ad_organization"> - <view class="ad_ap">安排班级</view> + <view class="ad_ap">班级安排</view> <view class="ad_icon"> <u-icon name="arrow-right"></u-icon> </view> </view> <view class="ad_images"> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uD0fdxpAjuTJRW3i17oC" mode=""></image> + <view v-for="(item,index ) in workinfo.classrooms" :key="index" v-if="index<=4"> + <image :src="item.avatar" mode=""></image> </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uYx2XEq9tGjmezlk86Nv" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uD0fdxpAjuTJRW3i17oC" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uZY30bUj2rGdQ5DbzhHp" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/ueBRYf4JiLyck19y1ub8" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/u0EhnGWy9EIdBXEF1saO" mode=""></image> + <view class="shenlue" v-if="workinfo.classrooms.length>4"> + {{workinfo.classrooms.length}} </view> </view> </view> @@ -85,177 +78,164 @@ </view> </view> <view class="ad_images"> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uD0fdxpAjuTJRW3i17oC" mode=""></image> + <view v-for="(item,index ) in workinfo.members" :key="index" v-if="index<=4"> + <image :src="item.avatar" mode=""> + </image> </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uYx2XEq9tGjmezlk86Nv" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uD0fdxpAjuTJRW3i17oC" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/uZY30bUj2rGdQ5DbzhHp" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/ueBRYf4JiLyck19y1ub8" mode=""></image> - </view> - <view> - <image src="https://file.langsi.online/yasiimg/web/static/u0EhnGWy9EIdBXEF1saO" mode=""></image> + <view class="shenlue" v-if="workinfo.members.length>4"> + {{workinfo.members.length}} </view> </view> </view> </view> <!-- 时间线 --> - <view class="view_timeline"> - <u-time-line> - <!-- 时间线1 --> - <u-time-line-item nodeTop="2" node-color="red"> - <template v-slot:content> - <view> - <view class="u-order-title"> - <view class="fickle"> - <view class="view_first_wz">Test 1</view> - <view class="changeable greenish">听力</view> - </view> - <!-- 图标 --> - <view class="timeline_tb"> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uzcmU6SwjDXXKQ9viZQP" mode=""></image> + <template v-for="(item,index) in workinfo.papers"> + <view class="title" style=""> + {{item.paperName}} + </view> + <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"> + <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> + <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> + <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> + <view class="changeable violet" v-if="itemsx.classify==4">口语</view> </view> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uw8DV7o16Uh5h5pXR0sY" mode=""></image> + + + </view> + <veiw class="blue-green"> + + <view class="blue_qs" :style="'width:' + itemsx.speedwidth + '%;'" v-if="itemsx.classify==1"> + </view> - </view> + <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> + <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" > + {{itemsx.partName}} + </view> + <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" > + {{itemsx.partName}} + </view> + + <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"> + : + <span v-for=" ts in itemsx.speakingType.split(',') " :key="ts"> + {{ getTypeText(ts) }} + </span> + </view> + </veiw> </view> - <veiw class="blue-green"> - <view class="blue_qs"> - <view class="text_wrap">Part 1:Questions1-10 Complete the notes belowtex </view> + </template> + </u-time-line-item> - - </view> - <view class="text-right"> - <u-icon name="arrow-right" size="18rpx" color="#072F5A"></u-icon> - </view> - </veiw> - </view> - </template> - </u-time-line-item> - <!-- 时间线2 --> - <u-time-line-item> - <template v-slot:content> - <view> - <view class="u-order-title"> - <view class="fickle"> - <view class="view_first_wz">Test 1</view> - <view class="changeable yellow">听力</view> - </view> - <!-- 图标 --> - <view class="timeline_tb"> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uzcmU6SwjDXXKQ9viZQP" mode=""></image> - </view> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uw8DV7o16Uh5h5pXR0sY" mode=""></image> - </view> - </view> - - </view> - <veiw class="blue-green"> - <view class="blue_qs2"> - <view class="text_wrap">Part 1:Questions1-10 Complete the notes belowtex </view> - - - </view> - <view class="text-right"> - <u-icon name="arrow-right" size="18rpx" color="#072F5A"></u-icon> - </view> - </veiw> - </view> - </template> - </u-time-line-item> - <!-- 时间线3 --> - <u-time-line-item> - <template v-slot:content> - <view> - <view class="u-order-title"> - <view class="fickle"> - <view class="view_first_wz">Test 1</view> - <view class="changeable blur">听力</view> - </view> - <!-- 图标 --> - <view class="timeline_tb"> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uzcmU6SwjDXXKQ9viZQP" mode=""></image> - </view> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uw8DV7o16Uh5h5pXR0sY" mode=""></image> - </view> - </view> - - </view> - <veiw class="blue-green"> - <view class="blue_qs3"> - <view class="text_wrap">Part 1:Questions1-10 Complete the notes belowtex </view> - - - </view> - <view class="text-right"> - <u-icon name="arrow-right" size="18rpx" color="#072F5A"></u-icon> - </view> - </veiw> - </view> - </template> - </u-time-line-item> - <!-- 时间线4 --> - <u-time-line-item> - <template v-slot:content> - <view> - <view class="u-order-title"> - <view class="fickle"> - <view class="view_first_wz">Test 1</view> - <view class="changeable violet">听力</view> - </view> - <!-- 图标 --> - <view class="timeline_tb"> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uzcmU6SwjDXXKQ9viZQP" mode=""></image> - </view> - <view class="timeline_image"> - <image src="https://file.langsi.online/yasiimg/web/static/uw8DV7o16Uh5h5pXR0sY" mode=""></image> - </view> - </view> - - </view> - <veiw class="blue-green"> - <view class="blue_qs4"> - <view class="text_wrap">Part 1:Questions1-10 Complete the notes belowtex </view> - - - </view> - <view class="text-right"> - <u-icon name="arrow-right" size="18rpx" color="#072F5A"></u-icon> - </view> - </veiw> - </view> - </template> - </u-time-line-item> - </u-time-line> + </u-time-line> + </view> + </template> + <view class="zhanwei" style="width: 100%;height: 50rpx;"> + </view> </view> </view> </template> -<script> +<script> + export default { + data() { + return { + id: 0, + workinfo: [], + uploadspeath: 0 + } + }, + onLoad(option) { + console.log(option); + this.id = option.id + // this.classid=15 + this.getworklist() + }, + + methods: { + getTypeText(type) { + switch (type) { + case '1': + return '串题'+" "; + case '2': + return '跟读'+" "; + case '3': + return '模考'+" "; + default: + return '其他类型'; + } + }, + getworklist() { + this.$u.get(`https://api.admin-v2.langsi.online/admin-api/classroom/work-record/detail?workId=${this.id}`) + .then(res => { + + + 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; + } + } + + // this.orgworkinfo = JSON.parse(JSON.stringify(res.data)); + // this.classlist = res.data.list + // this.isloding = false + + } + }) + }, + } + } </script> <style lang="scss" scoped> ::v-deep .u-dot { - - /* 在这里编写你的样式代码 */ - background: #2D7CE6 !important; - } + + /* 在这里编写你的样式代码 */ + background: #2D7CE6 !important; + } + + .title { + margin-top: 32rpx; + font-size: 40rpx; + font-family: 'YOUSHEBIAOTIHEI-2', 'YOUSHEBIAOTIHEI-2'; + font-weight: 400; + color: #2E4975; + } + .view_body { width: 100%; background: linear-gradient(183deg, #F0F6FF 0%, #FAFAFA 100%); @@ -269,6 +249,7 @@ } .view_hearing { + border-radius: 20rpx 20rpx 20rpx 20rpx; background-color: #fff; padding: 36rpx 32rpx; } @@ -300,6 +281,28 @@ flex-direction: column; margin-top: 22rpx; + .speed_box { + margin-top: 10rpx; + width: 622rpx; + height: 25rpx; + background: #EBEBEB; + border-radius: 12rpx 12rpx 12rpx 12rpx; + + .speed { + padding-right: 4rpx; + // display: flex; + + // justify-content: center; + text-align: right; + height: 25rpx; + background: #2D7CE6; + border-radius: 12rpx 12rpx 12rpx 12rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #FFFFFF; + } + } } .view_icon { @@ -348,14 +351,29 @@ .ad_images { display: flex; - justify-content: space-between; + // justify-content: space-between; margin-top: 32rpx; + + .shenlue { + display: flex; + justify-content: center; + align-items: center; + background-color: #FFF2E4; + border-radius: 50%; + width: 36rpx; + height: 36rpx; + font-size: 20rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 800; + color: #F18F21; + + } } .ad_images view { width: 36rpx; height: 36rpx; - + margin-right: 12rpx; } .ad_ap { @@ -382,8 +400,9 @@ height: 24rpx; margin-left: 40rpx; } - .fickle{ - display: flex; + + .fickle { + display: flex; } .timeline_tb { @@ -401,51 +420,81 @@ } .blue-green { - height: 116rpx; + height: 78rpx; position: relative; display: flex; - justify-content: space-between; + flex-wrap: nowrap; + align-items: center; + // justify-content: space-between; background: #F9F9F9; border-radius: 20rpx 20rpx 20rpx 20rpx; - padding: 20rpx; + // padding: 20rpx; margin-top: 15rpx; + + .text { + max-width: 300rpx; + z-index: 2; + margin-left: 20rpx; + font-size: 24rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #2E4975; + + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + } + .word{ + z-index: 2; + font-size: 24rpx; + font-family: 'PingFang', 'PingFang'; + font-weight: 500; + color: #2E4975; + } } .blue_qs { position: absolute; left: 0; top: 0; - width: 268rpx; - height: 156rpx; + // width: 268rpx; + z-index: 1; + height: 78rpx; background: #E8FCF7; border-radius: 20rpx 0rpx 0rpx 20rpx; } - .blue_qs2{ + + .blue_qs2 { + z-index: 1; position: absolute; left: 0; top: 0; - width: 416rpx; - height: 156rpx; + width: 416rpx; + height: 78rpx; background: #FCF0D4; border-radius: 20rpx 0rpx 0rpx 20rpx; } - .blue_qs3{ + + .blue_qs3 { + z-index: 1; position: absolute; - left: 0; - top: 0; + left: 0; + top: 0; width: 543rpx; - height: 156rpx; - background: rgba(63,122,242,0.1); - border-radius: 20rpx 0rpx 0rpx 20rpx; + height: 78rpx; + background: rgba(63, 122, 242, 0.1); + border-radius: 20rpx 0rpx 0rpx 20rpx; } - .blue_qs4{ + + .blue_qs4 { + z-index: 1; position: absolute; - left: 0; - top: 0; + left: 0; + top: 0; width: 543rpx; - height: 156rpx; - - border-radius: 20rpx 0rpx 0rpx 20rpx; + height: 78rpx; + background: #FEECF7; + border-radius: 20rpx 0rpx 0rpx 20rpx; } @@ -464,12 +513,13 @@ align-items: center; background: #d0d0d0; } - .changeable{ - padding: 10rpx 20rpx ; + + .changeable { + padding: 10rpx 20rpx; border-radius: 20rpx 20rpx 20rpx 20rpx; font-size: 20rpx; font-weight: 500; - + margin-left: 12rpx; } @@ -485,22 +535,24 @@ color: rgb(200, 200, 200); font-size: 26rpx; } - .greenish{ - background: rgba(27,225,178,0.1); + + .greenish { + background: rgba(27, 225, 178, 0.1); color: #1BE1B2; } - .yellow{ - background: rgba(242,182,42,0.2); + + .yellow { + background: rgba(242, 182, 42, 0.2); color: #F2AA02; } - .blur{ - background: rgba(63,122,242,0.2); + + .blur { + background: rgba(63, 122, 242, 0.2); color: #3F7AF2; } - .violet{ - background: rgba(242,63,170,0.1); + + .violet { + background: rgba(242, 63, 170, 0.1); color: #F23FEB; } - - -</style> +</style> \ No newline at end of file diff --git a/pages_teacher/teacher_teachers/teacher_addOperation.vue b/pages_teacher/teacher_teachers/teacher_addOperation.vue index e258d07..4ef5879 100644 --- a/pages_teacher/teacher_teachers/teacher_addOperation.vue +++ b/pages_teacher/teacher_teachers/teacher_addOperation.vue @@ -32,8 +32,7 @@ <view class="class_bj"> <view class="class_images"> - <view class="class_ys" v-for="(item, index) in classinfo" :key="index" - style="position: relative;"> + <view class="class_ys" v-for="(item, index) in classinfo" :key="index" style="position: relative;"> <view class="close" style="position: absolute;top: 0rpx;right: 8rpx;width: 20rpx;height: 20rpx;" @click="delcls(item.id)"> @@ -41,7 +40,7 @@ </image> </view> <view class="class_tp"> - <image src="https://file.langsi.online/yasiimg/web/static/u4T48EWFfk5p6yrV3gOw" mode=""> + <image :src="item.avatar" mode="" style="border-radius: 50%;"> </image> </view> <view class="class_wz">{{ item.name }}</view> @@ -693,7 +692,7 @@ .text1 { margin-left: 12rpx; font-size: 24rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #627698; } @@ -701,7 +700,7 @@ .text2 { margin-left: 12rpx; font-size: 24rpx; - font-family: PingFang SC, PingFang SC; + font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #2D7CE6; border-bottom: 2px solid #2D7CE6; @@ -723,6 +722,7 @@ width: 56rpx; height: 56rpx; margin-right: 12rpx; + border-radius: 50%; } .Ielts { diff --git a/static/tabbar/chuanti-act.png b/static/tabbar/chuanti-act.png deleted file mode 100644 index 7f69dcc..0000000 Binary files a/static/tabbar/chuanti-act.png and /dev/null differ diff --git a/static/tabbar/chuanti.png b/static/tabbar/chuanti.png deleted file mode 100644 index 54c6015..0000000 Binary files a/static/tabbar/chuanti.png and /dev/null differ diff --git a/static/tabbar/class-active.png b/static/tabbar/class-active.png deleted file mode 100644 index 71bf564..0000000 Binary files a/static/tabbar/class-active.png and /dev/null differ diff --git a/static/tabbar/class.png b/static/tabbar/class.png deleted file mode 100644 index 24cf9cd..0000000 Binary files a/static/tabbar/class.png and /dev/null differ diff --git a/static/tabbar/course-active.png b/static/tabbar/course-active.png deleted file mode 100644 index 71bf564..0000000 Binary files a/static/tabbar/course-active.png and /dev/null differ diff --git a/static/tabbar/course.png b/static/tabbar/course.png deleted file mode 100644 index 24cf9cd..0000000 Binary files a/static/tabbar/course.png and /dev/null differ diff --git a/static/tabbar/home-active.png b/static/tabbar/home-active.png index 06bc184..31a88ae 100644 Binary files a/static/tabbar/home-active.png and b/static/tabbar/home-active.png differ diff --git a/static/tabbar/home.png b/static/tabbar/home.png index 2d6a553..addc7cc 100644 Binary files a/static/tabbar/home.png and b/static/tabbar/home.png differ diff --git a/static/tabbar/memory-active.png b/static/tabbar/memory-active.png deleted file mode 100644 index 192af6f..0000000 Binary files a/static/tabbar/memory-active.png and /dev/null differ diff --git a/static/tabbar/my-active.png b/static/tabbar/my-active.png index a972b7d..d19f1eb 100644 Binary files a/static/tabbar/my-active.png and b/static/tabbar/my-active.png differ diff --git a/static/tabbar/my.png b/static/tabbar/my.png index 244d8cc..dba3a32 100644 Binary files a/static/tabbar/my.png and b/static/tabbar/my.png differ diff --git a/static/tabbar/signup-active.png b/static/tabbar/signup-active.png deleted file mode 100644 index b4ecb61..0000000 Binary files a/static/tabbar/signup-active.png and /dev/null differ diff --git a/static/tabbar/signup.png b/static/tabbar/signup.png deleted file mode 100644 index b10c410..0000000 Binary files a/static/tabbar/signup.png and /dev/null differ diff --git a/static/tabbar/tiku-act.png b/static/tabbar/tiku-act.png index b9d9e92..e0ae510 100644 Binary files a/static/tabbar/tiku-act.png and b/static/tabbar/tiku-act.png differ diff --git a/static/tabbar/tiku.png b/static/tabbar/tiku.png index 2dbb1a2..8274e0e 100644 Binary files a/static/tabbar/tiku.png and b/static/tabbar/tiku.png differ diff --git a/static/tabbar/writing-active.png b/static/tabbar/writing-active.png deleted file mode 100644 index 763a2f8..0000000 Binary files a/static/tabbar/writing-active.png and /dev/null differ diff --git a/static/tabbar/writing.png b/static/tabbar/writing.png deleted file mode 100644 index 2a57332..0000000 Binary files a/static/tabbar/writing.png and /dev/null differ