|
@@ -52,7 +52,7 @@
|
|
|
<view class="flex_row">
|
|
|
<view class="t-icon t-icon-classicon-copy" style="width: 60rpx; height: 60rpx;"></view>
|
|
|
<view class="flex_cloumn">
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_title">{{classList[classCurrent - 3].title}}</view>
|
|
|
<view class="tag">
|
|
|
<view class="tag_text">{{classList[classCurrent - 3].name}}</view>
|
|
@@ -61,7 +61,7 @@
|
|
|
<view class="tag_text">{{classList[classCurrent - 3].teacher}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_subtitle">上节</view>
|
|
|
<view class="class_item_detail" style="font-size: 32rpx;">
|
|
|
{{classList[classCurrent - 3].time}}
|
|
@@ -80,7 +80,7 @@
|
|
|
<view class="flex_row">
|
|
|
<view class="t-icon t-icon-classicon-copy" style="width: 60rpx; height: 60rpx;"></view>
|
|
|
<view class="flex_cloumn">
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_title">{{classList[classCurrent - 2].title}}</view>
|
|
|
<view class="tag">
|
|
|
<view class="tag_text">{{classList[classCurrent - 2].name}}</view>
|
|
@@ -89,7 +89,7 @@
|
|
|
<view class="tag_text">{{classList[classCurrent - 2].teacher}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_subtitle">上节</view>
|
|
|
<view class="class_item_detail" style="font-size: 32rpx;">
|
|
|
{{classList[classCurrent - 2].time}}
|
|
@@ -104,11 +104,11 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
<!-- 当前 -->
|
|
|
- <view class="class_item" style="background-color: #FFF;background: #FFF;">
|
|
|
+ <view class="class_item" style="border-image: linear-gradient(to right, #4169E1, #FFF) 1;">
|
|
|
<view class="flex_row">
|
|
|
<view class="t-icon t-icon-classicon-copy" style="width: 60rpx; height: 60rpx;"></view>
|
|
|
<view class="flex_cloumn">
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_title" style="color: #4169E1;">
|
|
|
{{classList[classCurrent - 1].title}}
|
|
|
</view>
|
|
@@ -119,7 +119,7 @@
|
|
|
<view class="tag_text">{{classList[classCurrent - 1].teacher}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_subtitle" style="color: #4169E1;">当前</view>
|
|
|
<view class="class_item_detail" style="font-size: 32rpx;color: #4169E1;">
|
|
|
{{classList[classCurrent - 1].time}}
|
|
@@ -139,7 +139,7 @@
|
|
|
<view class="t-icon t-icon-classicon-noarrive" style="width: 60rpx; height: 60rpx;">
|
|
|
</view>
|
|
|
<view class="flex_cloumn">
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_title">{{classList[classCurrent].title}}</view>
|
|
|
<view class="tag">
|
|
|
<view class="tag_text">{{classList[classCurrent].name}}</view>
|
|
@@ -148,7 +148,7 @@
|
|
|
<view class="tag_text">{{classList[classCurrent].teacher}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_subtitle">下节</view>
|
|
|
<view class="class_item_detail" style="font-size: 32rpx;">
|
|
|
{{classList[classCurrent].time}}
|
|
@@ -168,7 +168,7 @@
|
|
|
<view class="t-icon t-icon-classicon-noarrive" style="width: 60rpx; height: 60rpx;">
|
|
|
</view>
|
|
|
<view class="flex_cloumn">
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_title">{{classList[classCurrent+1].title}}</view>
|
|
|
<view class="tag">
|
|
|
<view class="tag_text">{{classList[classCurrent+1].name}}</view>
|
|
@@ -177,7 +177,7 @@
|
|
|
<view class="tag_text">{{classList[classCurrent+1].teacher}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="flex_row">
|
|
|
+ <view class="flex_row_home">
|
|
|
<view class="class_item_subtitle">下节</view>
|
|
|
<view class="class_item_detail" style="font-size: 32rpx;">
|
|
|
{{classList[classCurrent+1].time}}
|
|
@@ -202,13 +202,13 @@
|
|
|
<view class="detail_image" :style="{backgroundImage:`url(${image})`}"></view>
|
|
|
<view class="class_list">
|
|
|
<view class="class_item" style="height: 120rpx;">
|
|
|
- <view class="flex_row" style="justify-content: space-around;">
|
|
|
+ <view class="flex_row_home" style="justify-content: space-around;">
|
|
|
<view class="class_item_title">{{classList.length === 0 ? '自由安排' : '准备上课'}}</view>
|
|
|
<view class="tag" style="margin: 0;">
|
|
|
<view class="tag_text">{{classList.length === 0 ? '无课程' : '已下课'}}</view>
|
|
|
</view>
|
|
|
<view class="class_item_subtitle">{{classList.length === 0 ? '假期' : '课间'}}</view>
|
|
|
- <view class="flex_row" @click="navClassDetail">
|
|
|
+ <view class="flex_row_home" @click="navClassDetail">
|
|
|
<view class="t-icon t-icon-fenlei"></view>
|
|
|
<view class="class_item_title" style="color: #4169E1;margin-left: 10rpx;">课程列表
|
|
|
</view>
|
|
@@ -270,7 +270,7 @@
|
|
|
<!-- 今日出席模块 -->
|
|
|
<view class="card_item" style="background-color: #f3f4f9;justify-content: space-between;">
|
|
|
<!-- 当前课程 -->
|
|
|
- <view class="item_box">
|
|
|
+ <view class="item_box1">
|
|
|
<view class="icon_box" style="background-color: #d8deff; margin-left: 20rpx;">
|
|
|
<view class="t-icon t-icon-shangke-"></view>
|
|
|
</view>
|
|
@@ -298,16 +298,16 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
<!-- 出勤课程统计 -->
|
|
|
- <view class="item_box">
|
|
|
+ <view class="item_box2">
|
|
|
<view class="icon_box" style="background-color: #d8deff;margin-left: 20rpx;">
|
|
|
<view class="t-icon t-icon-shangkejilu"></view>
|
|
|
</view>
|
|
|
<view class="flex_cloumn"
|
|
|
style="align-items: center;justify-content: space-around;height: 80rpx;">
|
|
|
<view class="subtitle" style="font-size: 24rpx;">出勤课程</view>
|
|
|
- <view class="title" style="font-size: 32rpx;" v-if="classCurrent!=-1">{{finishClassNum}} 节
|
|
|
+ <view class="title" style="font-size: 32rpx;" v-if="classList">{{finishClassNum}} 节
|
|
|
</view>
|
|
|
- <view class="title" style="font-size: 32rpx;" v-if="classCurrent===-1">无统计</view>
|
|
|
+ <view class="title" style="font-size: 32rpx;" v-if="!classList">0 节</view>
|
|
|
</view>
|
|
|
<view v-if="classList">
|
|
|
<view class="icon_box" style="margin-right: 20rpx;"
|
|
@@ -326,7 +326,7 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
- <!-- 课例列表 -->
|
|
|
+ <!-- 推荐课例列表 -->
|
|
|
<view class="flex_cloumn" style="margin: 15rpx 0 10rpx 20rpx;">
|
|
|
<view class="title" style="font-size: 32rpx;">课程推荐</view>
|
|
|
<view class="bottom_tag"></view>
|
|
@@ -340,12 +340,27 @@
|
|
|
<view style="display: flex; width: 100%;height: 100%;">
|
|
|
<view class="image_item" :style="{backgroundImage: `url(${classItem.coverImage})`}">
|
|
|
</view>
|
|
|
- <view class="flex_cloumn" style="margin-left: 30rpx;">
|
|
|
- <view class="title">{{classItem.title}}</view>
|
|
|
+ <view class="flex_cloumn"
|
|
|
+ style="margin: 20rpx 20rpx 20rpx 30rpx;justify-content: space-between;width: 400rpx;">
|
|
|
+ <view class="title" style="font-size: 32rpx;">{{classItem.title}}</view>
|
|
|
+ <view style="display: flex;align-items: center;">
|
|
|
+ <view class="tag_fill" style="background-color: #d8deff;width:fit-content;">
|
|
|
+ <view class="t-icon t-icon-a-wangluokechengzaixianjiaoyu"
|
|
|
+ style="width: 30rpx;height: 30rpx;margin-right: 5rpx;"></view>
|
|
|
+ <view class="tag_text" style="color: #4169E1;">{{classItem.classHour}} 学时</view>
|
|
|
+ </view>
|
|
|
+ <view class="tag_fill"
|
|
|
+ style="background-color: #d8deff;width:fit-content;margin-left: 20rpx;">
|
|
|
+ <view class="t-icon t-icon-xiaoyuanredian"
|
|
|
+ style="width: 30rpx;height: 30rpx;margin-right: 5rpx;"></view>
|
|
|
+ <view class="tag_text" style="color: #4169E1;">{{classItem.learnNum}} 已学</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="desc">{{classItem.description}}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
-
|
|
|
+
|
|
|
</view>
|
|
|
</scroll-view>
|
|
|
</view>
|
|
@@ -367,7 +382,7 @@
|
|
|
data() {
|
|
|
return {
|
|
|
cardList: [{
|
|
|
- icon: 't-icon t-icon-wenjian',
|
|
|
+ icon: 't-icon t-icon-chakandingdan',
|
|
|
title: '今日评测',
|
|
|
canvasId: 'tab_home_chart1',
|
|
|
data: {
|
|
@@ -379,7 +394,7 @@
|
|
|
},
|
|
|
chartOpts: {}
|
|
|
}, {
|
|
|
- icon: 't-icon t-icon-yaoqing',
|
|
|
+ icon: 't-icon t-icon-renwu',
|
|
|
title: '今日作业',
|
|
|
canvasId: 'tab_home_chart2',
|
|
|
data: {
|
|
@@ -391,7 +406,7 @@
|
|
|
},
|
|
|
chartOpts: {}
|
|
|
}, {
|
|
|
- icon: 't-icon t-icon-bianji',
|
|
|
+ icon: 't-icon t-icon-wenjian',
|
|
|
title: '今日活动',
|
|
|
canvasId: 'tab_home_chart3',
|
|
|
data: {
|
|
@@ -407,7 +422,7 @@
|
|
|
//当前课程索引
|
|
|
classCurrent: '',
|
|
|
//已上课程
|
|
|
- finishClassNum: '',
|
|
|
+ finishClassNum: 0,
|
|
|
//课程缺省image
|
|
|
image: 'https://image.meiye.art/pic_1631411820764Vm5iw82gnV2lVKWRokFmU',
|
|
|
//时间戳
|
|
@@ -468,7 +483,21 @@
|
|
|
}
|
|
|
return false
|
|
|
}
|
|
|
- //获取当前课程索引值
|
|
|
+ //当前时间戳是否在课程开始时间之前
|
|
|
+ function CompareDateStart(start) {
|
|
|
+ //获得当前时间时间戳
|
|
|
+ let timeNow = (new Date()).format("yyyy-MM-dd hh:mm").replace(new RegExp("-", "gm"), "/")
|
|
|
+ let timeHaoMiao = (new Date(timeNow)).getTime()
|
|
|
+ //获得课程开始结束时间戳
|
|
|
+ let today = (new Date()).format("yyyy-MM-dd ")
|
|
|
+ let classStart = (today + start).replace(new RegExp("-", "gm"), "/")
|
|
|
+ let classStartHaoMiao = (new Date(classStart)).getTime()
|
|
|
+ //比较
|
|
|
+ if (timeHaoMiao < classStartHaoMiao)
|
|
|
+ return true
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ //获取当前课程索引值(在课程中)
|
|
|
let i = 1
|
|
|
for (let item of this.classList) {
|
|
|
let timeArr = item.time.split("-")
|
|
@@ -478,12 +507,29 @@
|
|
|
}
|
|
|
i++
|
|
|
}
|
|
|
- //存入已上课程
|
|
|
- this.finishClassNum = i
|
|
|
- //判断是否不在任意一个时间段内
|
|
|
+ //判断是否不在任意一个时间段内并存入已上课程
|
|
|
if (i > this.classList.length) {
|
|
|
- i = -1
|
|
|
+ let j = 1
|
|
|
+ this.classList.forEach((item, index) => {
|
|
|
+ let timeArr = item.time.split("-")
|
|
|
+ let res = CompareDateStart(timeArr[0])
|
|
|
+ if (res) {
|
|
|
+ j = index -1
|
|
|
+ i = -1
|
|
|
+ }else {
|
|
|
+ j = this.classList.length
|
|
|
+ i = -1
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.finishClassNum = j
|
|
|
+ console.log('j',j);
|
|
|
+ console.log('i',i);
|
|
|
}
|
|
|
+
|
|
|
+ //判断是否不在任意一个时间段内
|
|
|
+ // if (i > this.classList.length) {
|
|
|
+ // i = -1
|
|
|
+ // }
|
|
|
//判断有无课程
|
|
|
if (this.classList.length === 0) {
|
|
|
i = -1
|
|
@@ -575,14 +621,14 @@
|
|
|
let finishClassData = []
|
|
|
for (let i = 0; i < this.finishClassNum; i++) {
|
|
|
finishClassData.push(this.classList[i])
|
|
|
+ console.log('单个课程', this.classList[i]);
|
|
|
+
|
|
|
}
|
|
|
+ console.log('完成课程', finishClassData);
|
|
|
if (finishClassData.length != 0) {
|
|
|
let isAttendArr = finishClassData.filter(x => x.attendance === true)
|
|
|
this.classAttendanceQuality = isAttendArr.length === this.finishClassNum ? '全勤' : '缺勤'
|
|
|
}
|
|
|
- // else{
|
|
|
- // this.classAttendanceQuality = '假期'
|
|
|
- // }
|
|
|
},
|
|
|
//导航
|
|
|
navClassDetail() {
|
|
@@ -634,7 +680,9 @@
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .flex_row {
|
|
|
+ .flex_row_home {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
margin: 10rpx 20rpx;
|
|
|
}
|
|
|
|
|
@@ -646,7 +694,17 @@
|
|
|
margin-top: -80rpx;
|
|
|
}
|
|
|
|
|
|
- .item_box {
|
|
|
+ .item_box1 {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ width: 100%;
|
|
|
+ height: 140rpx;
|
|
|
+ background-color: #FFF;
|
|
|
+ border-radius: $border-radius;
|
|
|
+ }
|
|
|
+
|
|
|
+ .item_box2 {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: space-between;
|
|
@@ -656,6 +714,7 @@
|
|
|
border-radius: $border-radius;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
.icon_box {
|
|
|
display: flex;
|
|
|
align-items: center;
|