123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341 |
- <!--pages/learning_report/learning_report.wxml-->
- <import src="../../templates/nodata/nodata.wxml" />
- <view wx:if='{{options.serviceType!=0&&options.serviceType!=5}}'>
- <view class='container' wx:if='{{navList[navIndex].isLoaded}}'>
- <view class='wrapper pt pb' id="wrapper">
- <!-- 头部导航 -->
- <view class='fixed'>
- <view class='fixed-left' bindtap='backBook'></view>
- <view class="fixed-items">
- <view class='fixed-item {{navIndex == index ? "fixed-item-active" : ""}}' wx:for='{{navList}}' wx:key='index' data-index='{{index}}' bindtap='selectNavIndexCtl'>{{item.text}}</view>
- </view>
- </view>
- <!-- 周报 -->
- <block wx:if='{{navIndex == 0}}'>
- <!-- 周报无数据的情况(目前只有科目列表一种判断,前端写死,不会出现这种情况,这是为了后续做后台动态数据导入造成的情况) -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{navList[navIndex].subjectList.length == 0}}'></template>
- <block wx:else>
- <!-- 周报科目列表 -->
- <view class='nav'>
- <view class='nav-items'>
- <view class='nav-item {{index == navList[navIndex].subjectIndex ? "nav-item-active" : ""}}' wx:for='{{navList[navIndex].subjectList}}' wx:key='{{index}}' data-index='{{index}}' bindtap='selectSubjectIndexCtl'>{{item.subject}}</view>
- </view>
- </view>
- <!-- 周报单科无数据的情况 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{!navList[navIndex].subjectList[navList[navIndex].subjectIndex].learningScore && !navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointProportionList.length && !navList[navIndex].subjectList[navList[navIndex].subjectIndex].otherKnowledgePointProportionList.length && !navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointMasteryList.length}}'></template>
- <block wx:else>
- <!-- 周报头部 -->
- <view class='list' >
- <view class="li-section">
- <view class="li-text-title text-center">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].subject || ''}}学习得分</view>
- <view class="li-text-large text-center">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].learningScore || 0}}</view>
- <view class="li-text">
- <text class="text-gray">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].subject || ''}}的学习掌握情况</text>
- <text class="text-red">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointMasteryDetail}}</text>
- <text class="text-gray">,一共学习</text>
- <text class="text-red text-decoration" bindtap="pageScrollToBottom">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].totalKnowledgeNum}}</text>
- <text class="text-gray" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointGoodNumber || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointGeneralNumber || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointPoorNumber}}'>个知识点,其中</text>
- <text class="text-gray" wx:else>个知识点</text>
- <block wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointGoodNumber}}'>
- <text class="text-red text-decoration" bindtap="pageScrollToBottom">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointGoodNumber}}</text>
- <text class="text-gray">个知识点掌握良好</text>
- </block>
- <block wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointGeneralNumber}}'>
- <text class="text-gray">,</text>
- <text class="text-red text-decoration" bindtap="pageScrollToBottom">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointGeneralNumber}}</text>
- <text class="text-gray">个知识点掌握不牢固</text>
- </block>
- <block wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointPoorNumber}}'>
- <text class="text-gray">,</text>
- <text class="text-red text-decoration" bindtap="pageScrollToBottom">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointPoorNumber}}</text>
- <text class="text-gray">个知识点没有掌握</text>
- </block>
- <text class="text-gray">。</text>
- </view>
- </view>
- </view>
- <!-- 周报知识点占比及其其他知识点展示 -->
- <view class="list" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointProportionList.length || navList[navIndex].subjectList[navList[navIndex].subjectIndex].otherKnowledgePointProportionList.length}}'>
- <block wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePointProportionList.length}}'>
- <view class="li-label">
- <text class="text-gray">上周一共学习了</text>
- <text class="text-red">{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].totalKnowledgeNum}}</text>
- <text class="text-gray">个知识点</text>
- </view>
- <ff-canvas id="knowledgePointRingCanvas" opts="{{ opts }}"></ff-canvas>
- <view class="li-text text-label text-center">知识点占比</view>
- </block>
- <view class="li-study" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].otherKnowledgePointProportionList.length}}'>
- <view class='li-study-area'>
- <view class='li-study-area-title'>
- <image class='li-study-icon-3' src='../../assets/wei_zhi_shi_dian.png'></image>
- <text class='li-study-text-gray'>其他包含的知识点</text>
- </view>
- <view class='li-study-area-content li-study-area-content-row'>
- <view class="li-study-btn-3" wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].otherKnowledgePointProportionList}}' wx:key='{{index}}'>{{item.knowledgeName}}</view>
- </view>
- </view>
- </view>
- </view>
- <!-- 周报知识点掌握情况 -->
- <view class="list" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].moduleList.length}}'>
- <block wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].moduleList}}' wx:key='{{index}}'>
- <view class="li-label">
- <text class="text-black">{{item.module}}-各知识点的掌握情况</text>
- </view>
- <view class="li-items" wx:if='{{item.knowledgePointMasteryList.length > 0}}'>
- <view class="li-item" wx:for='{{item.knowledgePointMasteryList}}' wx:for-item="x" wx:for-index="y" wx:key='{{y}}'>
- <view class="li-item-text text-gray">{{x.knowledgeName}}</view>
- <view class="li-item-row">
- <view class="li-item-flex">
- <view class="li-item-flex-progress" wx:if='{{x.mastery * 100 >= 85}}' style="width: {{x.mastery * 100}}%; background: linear-gradient(90deg, rgba({{greenRGB}}, .3), rgba({{greenRGB}}, 1));"></view>
- <view class="li-item-flex-progress" wx:if='{{x.mastery * 100 >= 60&&x.mastery * 100<85}}' style="width: {{x.mastery * 100}}%; background: linear-gradient(90deg, rgba({{yellowRGB}}, .3), rgba({{yellowRGB}}, 1));"></view>
- <view class="li-item-flex-progress" wx:if='{{x.mastery * 100 <60}}' style="width: {{x.mastery * 100}}%; background: linear-gradient(90deg, rgba({{redRGB}}, .3), rgba({{redRGB}}, 1));"></view>
- </view>
- <view class="li-item-text {{~~(x.mastery * 100) <= 65 ? 'text-red' : 'text-black'}}">{{~~(x.mastery * 100)}}%</view>
- </view>
- </view>
- </view>
- </block>
- </view>
- </block>
- </block>
- </block>
- <!-- 月报 -->
- <block wx:elif='{{navIndex == 1}}'>
- <!-- 月报无数据 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{!navList[navIndex].subjectList.length && !navList[navIndex].learningScore && !navList[navIndex].lastMonth && !navList[navIndex].transcendedStudentProportion && !navList[navIndex].increasedScore}}'></template>
- <block wx:else>
- <!-- 月报头部-得分 -->
- <view class='list' >
- <view class="li-section">
- <view class="li-text-title text-center" wx:if='{{navList[navIndex].learningScore>0}}'>上月得分</view>
- <view class="li-text-large text-center" wx:if='{{navList[navIndex].learningScore>0}}'>{{navList[navIndex].learningScore || 0}}</view>
- <view class="li-text text-center" wx:if='{{navList[navIndex].transcendedStudentProportion*100>0}}'>
- <text class="text-gray">{{navList[navIndex].lastMonth || ''}}月的学习得分超过了</text>
- <text class="text-red">{{~~((navList[navIndex].transcendedStudentProportion || 0) * 100)}}%</text>
- <text class="text-gray">的同年级学生!</text>
- </view>
- <view class="li-text text-center">
- <text class="text-gray">{{navList[navIndex].lastMonth || ''}}月学习得分比上个月</text>
- <text class="text-gray" wx:if='{{navList[navIndex].increasedScore!=0}}'>{{navList[navIndex].increasedScore < 0 ? '降低' : '提高'}}了</text>
- <text class="text-gray" wx:if='{{navList[navIndex].increasedScore==0}}'>没有提升</text>
- <text class="text-red" wx:if='{{navList[navIndex].increasedScore!=0}}'>{{navList[navIndex].increasedScore < 0 ? -navList[navIndex].increasedScore : navList[navIndex].increasedScore || 0}}分</text>
- <text class="text-gray">,继续加油!</text>
- </view>
- </view>
- </view>
- <!-- 月报段落-平均学习时间 -->
- <view class='list' >
- <view class="li-section">
- <view class="li-text-title text-center">{{navList[navIndex].lastMonth || ''}}月平均每日学习时间</view>
- <view class="li-text-large text-center">
- <text class="li-text-large">{{navList[navIndex].averageUsedTime || 0}}</text>
- <text class="li-text-title">分钟</text>
- </view>
- <view class="li-progress">
- <view class="li-progress-active" style="width: {{(navList[navIndex].averageUsedTime > 180 ? 180 : navList[navIndex].averageUsedTime || 0) / 180 * 100}}%; background: linear-gradient(90deg, rgba(96, 133, 234, .3), rgba(96, 133, 234, 1));"></view>
- </view>
- <view class="li-text">
- <text class="text-gray">作业时间越长,不代表学习效 果越好。如果孩子每天作业用时超过</text>
- <text class="text-red">90</text>
- <text class="text-gray">分钟,家长需要关注孩子的时间管理情况哦!</text>
- </view>
- </view>
- </view>
- <!-- 月报无科目列表 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{navList[navIndex].subjectList.length == 0}}'></template>
- <block wx:else>
- <!-- 学期科目列表 -->
- <view class='nav'>
- <view class='nav-items'>
- <view class='nav-item {{index == navList[navIndex].subjectIndex ? "nav-item-active" : ""}}' wx:for='{{navList[navIndex].subjectList}}' wx:key='{{index}}' data-index='{{index}}' bindtap='selectSubjectIndexCtl'>{{item.subject}}</view>
- </view>
- </view>
- <!-- 月报单科无数据 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{!navList[navIndex].subjectList[navList[navIndex].subjectIndex].learnedUnitList.length && !navList[navIndex].subjectList[navList[navIndex].subjectIndex].weakKnowledgePointMasteryList.length}}'></template>
- <block wx:else>
- <view class="list">
- <view class="li-label-1" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].learnedUnitList.length}}'>
- <image class="li-label-image" src="../../assets/yue_bao_icon.png"></image>
- <text class="text-blue">{{navList[navIndex].lastMonth || ''}}月份学习了</text>
- <text class="text-blue" wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].learnedUnitList}}' wx:key='{{index}}'>{{item.unitName || ''}}、</text>
- <text class="text-blue">看看还有哪些知识点需要加强。</text>
- </view>
- <!-- 周报知识点掌握情况 -->
- <view class="list" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].moduleList.length}}'>
- <block wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].moduleList}}' wx:key='{{index}}'>
- <view class="li-label">
- <text class="text-black">{{item.module}}-各知识点的掌握情况</text>
- </view>
- <view class="li-items" wx:if='{{item.knowledgePointMasteryList.length > 0}}'>
- <view class="li-item" wx:for='{{item.knowledgePointMasteryList}}' wx:for-item="x" wx:for-index="y" wx:key='{{y}}'>
- <view class="li-item-text text-gray">{{x.knowledgeName}}</view>
- <view class="li-item-row">
- <view class="li-item-flex">
- <view class="li-item-flex-progress" wx:if='{{x.mastery * 100 >= 85}}' style="width: {{x.mastery * 100}}%; background: linear-gradient(90deg, rgba({{greenRGB}}, .3), rgba({{greenRGB}}, 1));"></view>
- <view class="li-item-flex-progress" wx:if='{{x.mastery * 100 >= 60&&x.mastery * 100<85}}' style="width: {{x.mastery * 100}}%; background: linear-gradient(90deg, rgba({{yellowRGB}}, .3), rgba({{yellowRGB}}, 1));"></view>
- <view class="li-item-flex-progress" wx:if='{{x.mastery * 100 <60}}' style="width: {{x.mastery * 100}}%; background: linear-gradient(90deg, rgba({{redRGB}}, .3), rgba({{redRGB}}, 1));"></view>
- </view>
- <view class="li-item-text {{~~(x.mastery * 100) <= 65 ? 'text-red' : 'text-black'}}">{{~~(x.mastery * 100)}}%</view>
- </view>
- </view>
- </view>
- </block>
- </view>
- </view>
- </block>
- </block>
- </block>
- </block>
- <!-- 学期 -->
- <block wx:elif='{{navIndex == 2}}'>
- <!-- 学期无数据 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{!navList[navIndex].subjectList.length && !navList[navIndex].studentImg && !navList[navIndex].labels.length}}'></template>
- <block wx:else>
- <!-- 学期头部展示-头像-标签 -->
- <view class='header'>
- <image class='header-bg' src='../../assets/zhi_zhuo_wang.png'></image>
- <view class='header-content'>
- <image class='header-icon' src='{{navList[navIndex].studentImg ? baseImgUrl + navList[navIndex].studentImg + thumbnail : "../../assets/default_headicon.png"}}'></image>
- <view class='header-items' wx:if='{{navList[navIndex].labels.length > 0}}'>
- <view class='header-item {{index % 4 == 1 ? "header-item-red" : index % 4 == 2 ? "header-item-yellow" : index % 4 == 3 ? "header-item-green" : "header-item-blue"}}' wx:for='{{navList[navIndex].labels}}' wx:key='{{index}}'>{{item}}</view>
- </view>
- </view>
- </view>
- <!-- 学期无科目列表 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{navList[navIndex].subjectList.length == 0}}'></template>
- <block wx:else>
- <!-- 学期科目列表 -->
- <view class='nav'>
- <view class='nav-items'>
- <view class='nav-item {{index == navList[navIndex].subjectIndex ? "nav-item-active" : ""}}' wx:for='{{navList[navIndex].subjectList}}' wx:key='{{index}}' data-index='{{index}}' bindtap='selectSubjectIndexCtl'>{{item.subject}}</view>
- </view>
- </view>
- <!-- 学期单科无数据 -->
- <template is='nodata-three' data='{{...navList[navIndex].nodataObj}}' wx:if='{{!navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge && !navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePoint && !navList[navIndex].subjectList[navList[navIndex].subjectIndex].homeworkAccuracyRateList}}'></template>
- <view class='list' wx:else>
- <!-- 七天正确率 -->
- <!-- <view class="li-study" wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].homeworkAccuracyRateList.length}}'>
- <view class='li-study-title'>近七天作业正确率</view>
- <view class="li-study-column">
- <view class="li-study-column-item" wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].homeworkAccuracyRateList}}' wx:key='{{index}}'>
- <view class="li-study-column-text">{{item.rate >= 0 ? item.rate + '%': '无作业'}}</view>
- <view class="li-study-column-progress" style="height: {{item.rate / 100 * 400}}rpx; background: linear-gradient(0deg, rgba({{item.rate >= 85 ? greenRGB : item.rate >= 60 ? yellowRGB : redRGB}}, .3), rgba({{item.rate >= 85 ? greenRGB : item.rate >= 60 ? yellowRGB : redRGB}}, 1));"></view>
- <view class="li-study-column-text">{{item.date}}</view>
- </view>
- </view>
- </view> -->
- <!-- 知识维度 -->
- <view class='li-study' wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.dimension.length || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.leaningSuggest.length || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.diagnostic}}'>
- <block wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.dimension.length || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.thisMonthTrueCount.length || navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.overallAvgTrueCount.length}}'>
- <view class='li-study-title'>知识纬度</view>
- <view class='li-study-chart'>
- <canvas class='li-study-canvas' canvas-id='knowledgeRadarCanvas'></canvas>
- <view class='li-study-chart-items'>
- <view class='li-study-chart-item' wx:for='{{navList[navIndex].accuracyArray}}' wx:for-item='val' wx:for-index='key' wx:key='{{key}}'>
- <text class='li-study-chart-item-circle' style='background: {{val.color}};'></text>
- <text class='li-study-chart-item-text' style='color: {{val.color}};'>{{val.name}}</text>
- </view>
- </view>
- </view>
- </block>
- <view class='li-study-area'>
- <view class='li-study-area-title' wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.diagnostic}}'>
- <image class='li-study-icon-1' src='../../assets/zhen_duan_shuo_ming.png'></image>
- <text class='li-study-text-gray'>诊断说明</text>
- </view>
- <view class='li-study-area-content' wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.diagnostic}}'>
- <view class='li-study-text-black'>{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.diagnostic}}</view>
- </view>
- <view class='li-study-area-content' wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.leaningSuggest.length > 0}}'>
- <view class='li-study-text-gray-small' bindtap="toggleLeaningSuggestCtl">
- <text>学习建议</text>
- <view class="li-study-arrow {{navList[navIndex].subjectList[navList[navIndex].subjectIndex].isShowLeaningSuggest ? 'li-study-arrow-active': ''}}"></view>
- </view>
- <view class='li-study-area-items' wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].isShowLeaningSuggest && navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.leaningSuggest.length > 0}}'>
- <view class='li-study-area-item' wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledge.leaningSuggest}}' wx:key='{{index}}'>
- <view class='li-study-area-item-title'>
- <text class='li-study-btn-1'>建议{{index + 1}}</text>
- <text class='li-study-text-red-small'>{{item.title}}</text>
- </view>
- <view class='li-study-text-black'>{{item.content}}</view>
- </view>
- </view>
- </view>
- </view>
- </view>
- <!-- 知识点掌握情况 -->
- <view class='li-study' wx:if='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePoint.length > 0}}'>
- <view class='li-study-title'>知识点掌握情况</view>
- <view class='li-study-area' wx:for='{{navList[navIndex].subjectList[navList[navIndex].subjectIndex].knowledgePoint}}' wx:key='{{index}}' data-index='{{index}}' bindtap="toggleShowNoknowledgePointCtl">
- <view class='li-study-area-row'>
- <view class='li-study-area-flex'>
- <text class='li-study-text-black'>{{item.style}}错误率</text>
- <text class='li-study-text-red-small'>{{item.wrongNum || 0}}</text>
- <text class='li-study-text-gray-small'>/{{item.totalNum || 0}}</text>
- </view>
- <canvas class='li-study-ring' canvas-id='knowledgePointMasteryRingCanvas-{{index}}'></canvas>
- </view>
- <view class='li-study-area-content' wx:if='{{item.noKnowledgePoint.length > 0 && item.isShowNoknowledgePoint}}'>
- <view class='li-study-area-flex'>
- <text class='li-study-btn-2'></text>
- <text class='li-study-text-red-small'>未掌握的知识点</text>
- </view>
- <view class='li-study-area-items'>
- <view class='li-study-area-item' wx:for='{{item.noKnowledgePoint}}' wx:for-item='val' wx:for-index='key' wx:key='{{key}}'>
- <view class='li-study-text-gray-small'>知识点{{key + 1}}</view>
- <view class='li-study-text-black'>{{val.name}}</view>
- <block wx:if='{{val.celebrities.length > 0}}'>
- <view>
- <text class='li-study-btn-1'>名师点拨</text>
- </view>
- <view class='li-study-area-item-li' wx:for='{{val.celebrities}}' wx:for-item='i' wx:for-index='j' wx:key='{{j}}'>
- <view class='li-study-area-item-li-label li-study-text-gray-small'>{{j + 1}}</view>
- <view class='li-study-area-item-li-flex li-study-text-black-small'>{{i}}</view>
- </view>
- </block>
- </view>
- </view>
- </view>
- </view>
- </view>
- </view>
- </block>
- </block>
- </block>
- </view>
- </view>
- </view>
- <view class='li-noData' wx:else>
- <view class='fixed'>
- <view class='fixed-left' bindtap='backBook'></view>
- </view>
- <image src='../../assets/wei_kai_tong.png' class='li-noData-img'></image>
- <view>未开通此服务</view>
- </view>
|