暂存
This commit is contained in:
29
common/debounce.js
Normal file
29
common/debounce.js
Normal file
@@ -0,0 +1,29 @@
|
||||
let timeout = null
|
||||
|
||||
/**
|
||||
* 防抖原理:一定时间内,只有最后一次操作,再过wait毫秒后才执行函数
|
||||
*
|
||||
* @param {Function} func 要执行的回调函数
|
||||
* @param {Number} wait 延时的时间
|
||||
* @param {Boolean} immediate 是否立即执行
|
||||
* @return null
|
||||
*/
|
||||
function debounce(func, wait = 500, immediate = false) {
|
||||
// 清除定时器
|
||||
if (timeout !== null) clearTimeout(timeout)
|
||||
// 立即执行,此类情况一般用不到
|
||||
if (immediate) {
|
||||
const callNow = !timeout
|
||||
timeout = setTimeout(() => {
|
||||
timeout = null
|
||||
}, wait)
|
||||
if (callNow) typeof func === 'function' && func()
|
||||
} else {
|
||||
// 设置定时器,当最后一次操作后,timeout不会再被清除,所以在延时wait毫秒后执行func回调方法
|
||||
timeout = setTimeout(() => {
|
||||
typeof func === 'function' && func()
|
||||
}, wait)
|
||||
}
|
||||
}
|
||||
|
||||
export default debounce
|
||||
@@ -6,9 +6,9 @@ if (process.env.NODE_ENV === 'development') {
|
||||
// socketUrl = "ws://localhost:6001/";
|
||||
// baseUrl = "https://twin-ui.com/demo/";
|
||||
// baseUrl = "https://testapi.nuttyreading.com/"; // 线上测试环境
|
||||
baseUrl = "https://api.nuttyreading.com/"; // 线上正式
|
||||
// baseUrl = "https://api.nuttyreading.com/"; // 线上正式
|
||||
// baseUrl = "http://192.168.110.110:9200/pb/"; // 磊哥
|
||||
// baseUrl = "http://192.168.110.100:9200/pb/"; // 开发用电脑
|
||||
baseUrl = "http://192.168.110.100:9200/pb/"; // 开发用电脑
|
||||
// baseUrl = "http://59.110.212.44:9200/pb/";
|
||||
// baseUrl = "http://192.168.110.100:9100/pb/"; // 开发用电脑
|
||||
// baseUrl = "http://192.168.110.110:9200/pb/";
|
||||
|
||||
@@ -3,7 +3,11 @@
|
||||
<z-nav-bar title="我的证书"></z-nav-bar>
|
||||
<!-- 公共组件-每个页面必须引入 -->
|
||||
<public-module></public-module>
|
||||
|
||||
<view class="list" v-if="certificateList.length > 0">
|
||||
<view class="" style="margin: 10rpx;">
|
||||
【 共 {{certificateList.length}} 个证书 】
|
||||
</view>
|
||||
<view class="item" v-for="(item,index) in certificateList" :key="index">
|
||||
<view class="flex_box">
|
||||
<h3>编号:{{item.certificateNo}}</h3>
|
||||
|
||||
@@ -734,13 +734,15 @@
|
||||
_myurl = '/pages/course/chapterDetailAndorid'
|
||||
// }
|
||||
if (this.librayList[this.curIndex].isBuy == 1 || v.isAudition == 1 ||
|
||||
this.vip.type != "1" || this.vip.type != "2") {
|
||||
this.vip.type == "1" || this.vip.type == "2") {
|
||||
let noRecored = false
|
||||
v.isAudition == 1 && this.userMsg.vip == 0 && this.librayList[this.curIndex].isBuy == 0 ?
|
||||
noRecored = true : ''
|
||||
uni.navigateTo({
|
||||
url: `${_myurl}?navTitle=${this.pageTitle}&title=${v.title}&courseId=${this.courseId}&id=${v.id}&conditions=${v.conditions}&noRecored=${noRecored}`,
|
||||
});
|
||||
}else if(this.vip.type != "1" && this.librayList[this.curIndex].type == 2){
|
||||
this.$commonJS.showToast("请开通超V后观看本课程");
|
||||
} else {
|
||||
this.$commonJS.showToast("请先购买课程");
|
||||
}
|
||||
|
||||
@@ -864,11 +864,12 @@
|
||||
}
|
||||
|
||||
.jianjie {
|
||||
line-height: 30rpx; height: 60rpx; overflow: hidden;
|
||||
overflow: hidden;
|
||||
margin-top: 10rpx;
|
||||
font-size: 24rpx;
|
||||
@include bov();
|
||||
color: #9c9c9c;
|
||||
line-height: 30rpx; height: 60rpx;
|
||||
}
|
||||
|
||||
.txt555 {
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
font-size: 24rpx;
|
||||
@include bov();
|
||||
color: #9c9c9c;
|
||||
line-height: 30rpx; height: 60rpx; overflow: hidden;
|
||||
}
|
||||
|
||||
.txt555 {
|
||||
|
||||
@@ -6,8 +6,11 @@
|
||||
" class="commonPageeeee commonPageBox">
|
||||
<!-- 公共组件-每个页面必须引入 -->
|
||||
<public-module></public-module>
|
||||
<u-icon @click="goSetting" class="setIcon" labelColor="#258feb" labelPos="bottom" label="设置" name="setting"
|
||||
<view class="setIcon" @click="goSetting">
|
||||
<u-icon class="" labelColor="#258feb" labelPos="bottom" label="设置" name="setting"
|
||||
:style="`top:${(10 + statusBarHeight) * 2}rpx`" color="#258feb" size="28"></u-icon>
|
||||
</view>
|
||||
|
||||
<view class="bg_top flex_box flex_between">
|
||||
<view class="per_mes">
|
||||
<view class="per_mes_user">
|
||||
@@ -349,6 +352,7 @@
|
||||
this.infoShow = true;
|
||||
},
|
||||
goSetting() {
|
||||
console.log('点击了');
|
||||
this.onPageJump("/pages/mine/set/index");
|
||||
},
|
||||
goUserInfo() {
|
||||
@@ -899,7 +903,8 @@
|
||||
.setIcon {
|
||||
position: absolute;
|
||||
right: 30rpx;
|
||||
top: 30rpx;
|
||||
top: 70rpx;
|
||||
z-index: 2;
|
||||
}
|
||||
.mine_box {
|
||||
width: 100%;
|
||||
|
||||
@@ -58,10 +58,10 @@
|
||||
<text class="scoreNumber greenScore">{{performanceScore.userScore}}</text>分
|
||||
<view class="">
|
||||
<view class="" style="margin: 10rpx 0;">
|
||||
(<text class="c999" v-if="performanceScore.examScore">{{performanceScore.examScore}}分考试分 <uni-icons type="eye"
|
||||
(<text class="c999" v-if="performanceScore.examScore >= 0">{{performanceScore.examScore}}分考试分 <uni-icons type="eye"
|
||||
size="20" color="#999" @click="showPaperList = true"></uni-icons></text>
|
||||
<text v-if="performanceScore.examScore && performanceScore.usualScore">,</text>
|
||||
<text class="c999" v-if="performanceScore.usualScore"> {{performanceScore.usualScore}}分平时表现分</text>)
|
||||
<text v-if="performanceScore.examScore >= 0 && performanceScore.usualScore >= 0">,</text>
|
||||
<text class="c999" v-if="performanceScore.usualScore >= 0"> {{performanceScore.usualScore}}分表现分</text>)
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -76,8 +76,9 @@
|
||||
<template v-if="performanceScore.userScore < 60">
|
||||
<view class="flex_box flex_center align-items_box" style="justify-content: center;">
|
||||
<text style="text-align: center;">很遗憾,您的成绩未达标</text>
|
||||
{{newCLass}}
|
||||
<view class="" style="text-align: center;"
|
||||
v-if="newCLass && newCLass.id">
|
||||
v-if="newCLass && newCLass != null && newCLass.id">
|
||||
<text class="small_btn chongxiu border_radius_10"
|
||||
@click="onPageJump('/pages/miniClass/classInfo',newCLass.id)">加入新班级重修</text>
|
||||
</view>
|
||||
@@ -157,11 +158,11 @@
|
||||
<text class="ciyao"><i
|
||||
class="mainTxt PM_font">{{performanceScore.questionScore}}</i>分</text>
|
||||
</view>
|
||||
<view v-if="classModel.isExam == 1 && thisClass.state == '2'">
|
||||
<!-- <view v-if="classModel.isExam == 1 && thisClass.state == '2'">
|
||||
<text class="ciyao">考试分</text>
|
||||
<text class="ciyao"><i
|
||||
class="mainTxt PM_font">{{performanceScore.questionScore}}</i>分</text>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
@@ -248,14 +249,15 @@
|
||||
v-for="(item, index) in tijiaoTitleList" :key="index">{{item.name}}</text>
|
||||
</view>
|
||||
<!-- 课程排序 -->
|
||||
<view class="courseTab border_radius_10" v-if="questionsList.length > 1">
|
||||
<view class="flex_box flex_between">
|
||||
<!-- <view > -->
|
||||
<view class="courseTab border_radius_10" v-if="questionsList.length > 1 && tijiaoTitleId == '3'">
|
||||
<view class="flex_box flex_between" v-if="tabCourseList.length <= 3 ">
|
||||
<text :class="['item','border_radius_10',curCourseId == item.id ? 'cur' :'']"
|
||||
@click="clickCourseTab(index,item.id)" v-for="(item, index) in tabCourseList"
|
||||
:key="index">{{item.title}}</text>
|
||||
<!-- </view> -->
|
||||
</view>
|
||||
<template v-if="tabCourseList.length > 3 && tijiaoTitleId == '3'">
|
||||
<u-tabs :list="tabCourseList" lineWidth="0" lineHeight="0" @click="tabsClickCourseTab" :activeStyle="courseActiveStyle" :current="curCourseIndex"></u-tabs>
|
||||
</template>
|
||||
</view>
|
||||
<!-- 班内任务 --><!-- 医案 --> <!-- 心得 --><!-- 思考题 -->
|
||||
<view class="" v-if="tijiaoTitleId != '3'">
|
||||
@@ -286,45 +288,55 @@
|
||||
<view class="submitRecode">
|
||||
<view class="newBox">
|
||||
<view class="item " v-for="(item, index) in taskList" @click="clickTask(item)">
|
||||
<view class="leve1 flex_box">
|
||||
<text>{{item.title}}</text>
|
||||
</view>
|
||||
<view :class="['leve2']">
|
||||
<view :class="[item.zhedie ? '' : 'zhedie']" v-html="item.content">
|
||||
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="leve3">
|
||||
<view class="tips flex_box">
|
||||
<view class="leve1 flex_box flex_between">
|
||||
<text style="flex: 1;">{{item.title}}</text>
|
||||
<view class="btn1" @click.stop="changeZheDie(item, index)">
|
||||
{{item.zhedie ? '收起' : '展开'}}
|
||||
</view>
|
||||
</view>
|
||||
<view :class="['leve2']" v-if="item.zhedie">
|
||||
<view :class="[item.zhedie ? '' : 'zhedie']" v-html="item.content"></view>
|
||||
</view>
|
||||
<view class="leve3">
|
||||
<view class="tips flex_box" v-if="item.zhedie">
|
||||
<!-- <text>发布者:{{item.createUser.nickname != null && item.createUser.nickname != '' ? item.createUser.nickname : '匿名用户'}}</text> -->
|
||||
<text style="" class="date">日期:{{item.createTime}}</text>
|
||||
</view>
|
||||
<template v-if="tijiaoTitleId == 2 && isHave">
|
||||
<view class="">
|
||||
<view class="score" v-if="item.scoreSuccess == 0">
|
||||
等待评分
|
||||
</view>
|
||||
<!-- <view class="score" v-if="item.scoreSuccess > 0 && item.scoreSuccess ">
|
||||
正在评分
|
||||
</view> -->
|
||||
<view class="score" v-if="item.scoreSuccess >= 1">
|
||||
分数:{{item.score}}
|
||||
</view>
|
||||
</view>
|
||||
<text class="btn"
|
||||
v-show="tijiaoTitleId == 2 && myExperience == 1 && item.scoreSuccess == 0 && thisClass.state == '1'"
|
||||
v-show="myExperience == 1 && item.scoreSuccess == 0 && thisClass.state == '1'"
|
||||
@click.stop="editMyXinde(item)">修改</text>
|
||||
</view>
|
||||
<template v-if="roleCode.includes('0') && isHave">
|
||||
<view class="leve3" v-show="item.reply && tijiaoTitleId != 2">
|
||||
<text>已提交答案</text>
|
||||
</view>
|
||||
<view class="leve3 no"
|
||||
v-show="!item.reply && tijiaoTitleId != 2 && thisClass.state == '1'">
|
||||
<text>未提交答案 点击开始答题</text>
|
||||
</view>
|
||||
<view class="leve3 cantAnswer"
|
||||
v-show="!item.reply && tijiaoTitleId != 2 && (thisClass.state == '2' || thisClass.state == '3')">
|
||||
<text>未作答 已不可作答</text>
|
||||
</template>
|
||||
<template v-if="roleCode.includes('0') && isHave && tijiaoTitleId != 2">
|
||||
<template v-if="item.reply && item.otherInfo != null">
|
||||
<text v-if="item.otherInfo[0].scoreSuccess == 0">等待评分</text>
|
||||
<text class="pIng" v-if="item.otherInfo[0].scoreSuccess < 2 && item.otherInfo[0].scoreSuccess > 0">正在评分</text>
|
||||
<view class="" v-if="item.otherInfo[0].scoreSuccess >=2">
|
||||
<text class="score" >{{item.otherInfo[0].score}} 分</text>
|
||||
<!-- <text style="color: #999; padding-left: 10rpx; font-size: 26rpx;">分</text> -->
|
||||
</view>
|
||||
</template>
|
||||
<template
|
||||
v-if="!item.reply && thisClass.state == '1'">
|
||||
<text class="no">未提交答案 点击开始答题</text>
|
||||
</template>
|
||||
<template
|
||||
v-if="!item.reply && (thisClass.state == '2' || thisClass.state == '3')">
|
||||
<text class="cantAnswer">未作答 已不可作答</text>
|
||||
</template>
|
||||
</template>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -345,15 +357,28 @@
|
||||
<view class="item "
|
||||
v-for="(item, index) in questionsList[curCourseIndex].chapterList"
|
||||
@click="jumpToVideoPage(item)">
|
||||
<view class=" flex_box">
|
||||
<view class=" flex_box align-items_box">
|
||||
<view class="pp" style="flex: 1; font-size: 28rpx;" v-html="item.title">
|
||||
</view>
|
||||
<text v-if="item.reply == null"
|
||||
style="color: #ff9277; font-size: 26rpx;">未作答</text>
|
||||
<text v-else class=""
|
||||
style="padding-left: 10rpx; color: #55aaff; font-size: 26rpx;">已作答</text>
|
||||
<template v-if="item.reply == null">
|
||||
<text v-if="thisClass.state == '1'" style="color: #ff9277; font-size: 26rpx;">未作答</text>
|
||||
<text v-if="thisClass.state == '2' || thisClass.state == '3'" style="color: #999; font-size: 26rpx;">已不可作答</text>
|
||||
</template>
|
||||
<template v-else>
|
||||
<!-- <text class=""
|
||||
style="padding-left: 10rpx; color: #55aaff; font-size: 26rpx;">已作答</text> -->
|
||||
<text style="padding-left: 10rpx; color: #55aa7f; font-size: 26rpx;" v-if="item.reply.scoreSuccess <= 0 && thisClass.state != '2'">
|
||||
等待评分
|
||||
</text>
|
||||
<text style="padding-left: 10rpx; color: #999; font-size: 26rpx;" v-if="item.reply.scoreSuccess <= 0 && thisClass.state == '2'">
|
||||
已结班无法评分
|
||||
</text>
|
||||
<view class="" style="margin-left: 5rpx;" v-if="item.reply.scoreSuccess > 0">
|
||||
<text class="score">{{item.reply.score}}</text><text style="color: #999;">分</text>
|
||||
</view>
|
||||
<!-- <view class="questJUmp">前往所在章节</view> -->
|
||||
</template>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -514,9 +539,7 @@
|
||||
<script>
|
||||
import QfImageCropper from '@/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue';
|
||||
import addCerInfo from "@/components/addCerInfo.vue";
|
||||
// import {
|
||||
// chooseImage
|
||||
// } from '@/node_modules/uview-ui';
|
||||
import debounce from "@/common/debounce.js";
|
||||
import sutdentScoreList from "./components/sutdent_score_list.vue";
|
||||
// import permission from "@/js_sdk/wa-permission/permission.js"
|
||||
import $http from '@/config/requestConfig.js';
|
||||
@@ -526,6 +549,13 @@
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
courseActiveStyle:{
|
||||
background:'#fff',
|
||||
color:'#666',
|
||||
padding:"10rpx",
|
||||
borderRadius:"10rpx"
|
||||
},
|
||||
certificateFlag:false, // 证书生成中的标记
|
||||
buyCourseMsg: '',
|
||||
fileList1: [],
|
||||
questionsList: [],
|
||||
@@ -786,7 +816,7 @@
|
||||
}
|
||||
|
||||
}
|
||||
if (this.thisClass.state == '2') {
|
||||
if (this.thisClass.state == '2' || this.thisClass.state == '2') {
|
||||
var userObj = await this.getUserData()
|
||||
if (userObj) {
|
||||
this.submitInfo.name = userObj.name
|
||||
@@ -1195,6 +1225,9 @@
|
||||
},
|
||||
// 生成证书
|
||||
createCertificate() {
|
||||
debounce(async () => {
|
||||
if(this.certificateFlag) return
|
||||
this.certificateFlag = true
|
||||
if (this.submitInfo.name && this.submitInfo.name != null && this.submitInfo.name != '' &&
|
||||
this.submitInfo.photo && this.submitInfo.photo != null && this.submitInfo.photo != '') {
|
||||
|
||||
@@ -1226,6 +1259,9 @@
|
||||
})
|
||||
return
|
||||
}
|
||||
uni.showLoading({
|
||||
title:'正在生成'
|
||||
})
|
||||
var data = {
|
||||
"type": type, //证书类型A a证 B b证 ZK自考
|
||||
"relationId": this.classId //小班id、课程id
|
||||
@@ -1240,11 +1276,13 @@
|
||||
},
|
||||
})
|
||||
.then(async (res) => {
|
||||
uni.hideLoading()
|
||||
|
||||
if (res.code == 0) {
|
||||
console.log('证书返回值', res);
|
||||
uni.showToast({
|
||||
title: '生成成功',
|
||||
icon: 'none'
|
||||
icon: 'success'
|
||||
})
|
||||
setTimeout(() => {
|
||||
this.closeManager()
|
||||
@@ -1256,12 +1294,20 @@
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
setTimeout(()=>{
|
||||
this.certificateFlag = false
|
||||
},300)
|
||||
|
||||
}).catch(e => {
|
||||
this.certificateFlag = false
|
||||
uni.hideLoading()
|
||||
uni.showToast({
|
||||
title: e.errMsg,
|
||||
icon: 'none'
|
||||
})
|
||||
});
|
||||
},300)
|
||||
|
||||
},
|
||||
// 查询平时表现分+ 最终成绩 + 可加入的新班级 + 证书信息
|
||||
async getScore() {
|
||||
@@ -1349,11 +1395,11 @@
|
||||
},
|
||||
})
|
||||
.then((res) => {
|
||||
if (res.code == 0 && res.result != null) {
|
||||
if (res.code == 0 && res.result != null && res.result != 'null') {
|
||||
this.newCLass = res.result
|
||||
console.log('同模型的待开班班级', this.newCLass);
|
||||
|
||||
} else {
|
||||
console.log('走这里吗码码码码码');
|
||||
this.newCLass = undefined
|
||||
}
|
||||
}).catch(e => {
|
||||
@@ -1398,6 +1444,16 @@
|
||||
}
|
||||
|
||||
},
|
||||
// 滑块滚动
|
||||
tabsClickCourseTab(e){
|
||||
console.log('滑块滚动',e);
|
||||
if (this.curCourseIndex == e.index) {
|
||||
return
|
||||
} else {
|
||||
this.curCourseIndex = e.index
|
||||
this.curCourseId = e.id
|
||||
}
|
||||
},
|
||||
// 跳转到播放页面
|
||||
jumpToVideoPage(val) {
|
||||
uni.navigateTo({
|
||||
@@ -1560,7 +1616,7 @@
|
||||
},
|
||||
async titleClick(item, textIndex) {
|
||||
|
||||
console.log('进来了吗', item);
|
||||
console.log('进来了吗titleClick', item, textIndex);
|
||||
if(this.loadFlag){
|
||||
uni.showToast({
|
||||
title:'操作太快了,休息一下吧',
|
||||
@@ -1577,6 +1633,9 @@
|
||||
this.tabCourseList = this.questionsList.map(item => {
|
||||
return item.courseEntity
|
||||
})
|
||||
this.tabCourseList.forEach(item1 => {
|
||||
item1.name = item1.title
|
||||
})
|
||||
}
|
||||
return
|
||||
}
|
||||
@@ -1830,7 +1889,7 @@
|
||||
clickHelp() {
|
||||
uni.showModal({
|
||||
title: '说明',
|
||||
content: `表现分由${this.classModel.isTask == 1 ? '作业('+this.classModel.taskScore+'%),' : ''}${this.classModel.isMedicalcase == 1 ? '医案('+this.classModel.medicalcaseScore+'%),' : ''}${this.classModel.isExperience == 1 ? '心得('+this.classModel.experienceScore+'%),' : ''} ${this.classModel.isQuestion == 1 ? '思考题('+this.classModel.questionScore+'%)' : ''}构成。`,
|
||||
content: `表现分由${this.classModel.isTask == 1 ? '作业('+this.classModel.taskScore+'%),' : ''}${this.classModel.isMedicalcase == 1 ? '医案('+this.classModel.medicalcaseScore+'%),' : ''}${this.classModel.isExperience == 1 ? '心得('+this.classModel.experienceScore+'%),' : ''} ${this.classModel.isQuestion == 1 ? '思考题('+this.classModel.questionScore+'%)' : ''}构成,班内总成绩总分为100分。`,
|
||||
showCancel: false,
|
||||
confirmText: '好的'
|
||||
})
|
||||
@@ -2229,6 +2288,10 @@
|
||||
padding-bottom: 20rpx;
|
||||
margin-bottom: 20rpx;
|
||||
// .userName{}
|
||||
.btn1 {
|
||||
color: $themeColor;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.leve2 {
|
||||
@@ -2254,10 +2317,7 @@
|
||||
|
||||
.date {}
|
||||
|
||||
.btn1 {
|
||||
color: $themeColor;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
|
||||
.btn {
|
||||
border: 1px solid $themeColor;
|
||||
@@ -2269,15 +2329,18 @@
|
||||
}
|
||||
}
|
||||
|
||||
.leve3.no {
|
||||
.leve3{
|
||||
.no{
|
||||
color: #ff9277;
|
||||
text-align: center;
|
||||
text-align: center;}
|
||||
.pIng{
|
||||
color: #55aa00;
|
||||
}
|
||||
.cantAnswer{
|
||||
color: #999;
|
||||
text-align: center;}
|
||||
}
|
||||
|
||||
.leve3.cantAnswer {
|
||||
color: #999;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -869,47 +869,13 @@
|
||||
},
|
||||
// 改变班级状态
|
||||
changeClassStatu(statusCode) {
|
||||
// var mm = 0
|
||||
// mm = await this.getHomeWorkLength()
|
||||
let that = this
|
||||
if (statusCode == '1') {
|
||||
console.log('this.admins', this.admins);
|
||||
if (this.homeWorkList.length == 0 && this.classModel.isTask == 1) {
|
||||
uni.showToast({
|
||||
title: '开班前请发布班内作业,开班后将不可添加和更改',
|
||||
icon: 'none',
|
||||
duration: 3000
|
||||
})
|
||||
return
|
||||
}
|
||||
that.opClass(statusCode)
|
||||
// if (statusCode == '1') {
|
||||
|
||||
} else if (statusCode == '2') {
|
||||
var nowTime = Date.now()
|
||||
// var datecc = new Date(this.thisClass.endTime);
|
||||
// console.log('datecc...',datecc,nowTime,time3)
|
||||
var startTime = new Date(this.thisClass.startTime); // 开班时间
|
||||
var time3 = startTime.getTime(); // 开班时间的时间戳 毫秒
|
||||
var daysTime = parseInt(this.classModel.days) * 1000 * 60 * 60 * 24
|
||||
if (nowTime < (time3 + daysTime)) {
|
||||
uni.showModal({
|
||||
title: "提示",
|
||||
content: '是否要提前结班?',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
// return
|
||||
that.opClass(statusCode)
|
||||
} else {
|
||||
return
|
||||
}
|
||||
},
|
||||
})
|
||||
} else {
|
||||
console.log('this.statusCode', statusCode);
|
||||
// return
|
||||
that.opClass(statusCode)
|
||||
}
|
||||
// } else if (statusCode == '2') {
|
||||
// that.opClass(statusCode)
|
||||
}
|
||||
// }
|
||||
|
||||
},
|
||||
// 考试周和结班状态下,学员的信息
|
||||
@@ -980,13 +946,18 @@
|
||||
}, 500)
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.msg,
|
||||
title: res.errMsg,
|
||||
icon: 'none',
|
||||
duration: 300
|
||||
duration: 3000
|
||||
})
|
||||
}
|
||||
}).catch(e => {
|
||||
console.log(e, '数据报错')
|
||||
uni.showToast({
|
||||
title: res.errMsg,
|
||||
icon: 'none',
|
||||
duration: 300
|
||||
})
|
||||
});
|
||||
},
|
||||
taskEdit(item) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<view>
|
||||
<view style="min-height: 100vh;">
|
||||
<!-- 公共组件-每个页面必须引入 -->
|
||||
<public-module></public-module>
|
||||
<z-nav-bar title="我的班级">
|
||||
@@ -10,7 +10,7 @@
|
||||
:activeStyle="activeStyle" :scrollable="scrollable" :list="tabList"
|
||||
itemStyle="padding-left: 15px; background-color:#fff; padding-right: 15px; height: 50px;"></u-tabs>
|
||||
</view> -->
|
||||
<view class="containerBg">
|
||||
<view class="containerBg" style="background-color: #f6f6f8;">
|
||||
<view class="subCate flex" v-if="subList1.length> 0">
|
||||
<text :class="['item',subTabId == item.id ? 'active' : '']" v-for="(item, index) in subList1"
|
||||
@click="curseClick(item)" :key="index">{{item.title}}</text>
|
||||
|
||||
@@ -50,13 +50,13 @@
|
||||
学员信息:{{curReplay.createUser.nickname != null && curReplay.createUser.nickname != '' ? curReplay.createUser.nickname : '匿名用户'}}
|
||||
/ {{curReplay.createUser.tel}}
|
||||
</view> -->
|
||||
<view class="score" v-show="curReplay.scoreSuccess == 1">
|
||||
<view class="score" v-show="curReplay.scoreSuccess >= 1">
|
||||
分数:{{curReplay.score}}
|
||||
</view>
|
||||
<view class="score noscore" v-show="curReplay.scoreSuccess == 0">
|
||||
未生成成绩
|
||||
未开始评分
|
||||
</view>
|
||||
<template v-if="roleCode.includes('4') || roleCode.includes('5') && curReplay.scoreSuccess != 1">
|
||||
<template v-if="(roleCode.includes('4') || roleCode.includes('5')) && curReplay.scoreSuccess < 1 && (classState == '3' || classState == '1')">
|
||||
<view class="" style=" padding: 10rpx 10rpx; margin-top: 20rpx;">
|
||||
<view class="scoreBox flex_box">
|
||||
<text>分数</text>
|
||||
|
||||
@@ -65,10 +65,15 @@
|
||||
<view class="score" v-show="item.scoreSuccess >= 2">
|
||||
分数:{{item.score}}
|
||||
</view>
|
||||
<view class="score" v-show="item.scoreSuccess < 2">
|
||||
<view class="score" v-show="item.scoreSuccess < 2 && (classState == '1' || classState == '3')">
|
||||
正在评分
|
||||
</view>
|
||||
</template>
|
||||
<template v-else-if="classState == '1' || classState == '3'">
|
||||
<view class="noanser" style="color: #999;" v-show="item.scoreSuccess == 0">
|
||||
等待评分
|
||||
</view>
|
||||
</template>
|
||||
</view>
|
||||
<view class="leve2">
|
||||
<view :class="['contentss',item.zhedie ? '' : 'zhedie']">
|
||||
|
||||
@@ -65,13 +65,13 @@
|
||||
<view class="score" v-if="item.scoreSuccess >= 2">
|
||||
分数:{{item.score}}
|
||||
</view>
|
||||
<view class="score noscore" v-else-if="item.scoreInfo != ''">
|
||||
<view class="score noscore" v-else-if="item.scoreInfo != '' && (classState == '1' || classState == '3')">
|
||||
<text v-show="item.scoreInfos < 2 && item.haveGiveScore">等待其他评分员评分</text>
|
||||
<text v-show="item.scoreInfos < 2 && !item.haveGiveScore && roleCode.includes('4')">请您评分</text>
|
||||
<text v-show="item.scoreInfos < 2 && ( roleCode.includes('1') || roleCode.includes('1') || roleCode.includes('主任') || roleCode.includes('副主任'))">已开始评分</text>
|
||||
<!-- <button v-show="item.scoreInfos >= 2" class="getScore" @click.stop="getRealScore(item.id)" >生成成绩</button> -->
|
||||
</view>
|
||||
<view class="score noscore" v-else>未开始评分</view>
|
||||
<view class="score noscore" v-else-if="classState == '1' || classState == '3'">未开始评分</view>
|
||||
<view class="date">
|
||||
{{item.createTime}}
|
||||
</view>
|
||||
@@ -113,9 +113,9 @@
|
||||
分数:{{curReplay.score}}
|
||||
</view> -->
|
||||
<view class="score noscore" v-show="curReplay.scoreSuccess == 0">
|
||||
未生成成绩
|
||||
未开始评分
|
||||
</view>
|
||||
<template v-if="roleCode.includes('4') || roleCode.includes('5') && curReplay.scoreSuccess < 2 && (classState == '1' || classState == '3')">
|
||||
<template v-if="(roleCode.includes('4') || roleCode.includes('5')) && curReplay.scoreSuccess < 2 && (classState == '1' || classState == '3')">
|
||||
<view class="" style=" padding: 10rpx 10rpx; margin-top: 20rpx;">
|
||||
<view class="scoreBox flex_box">
|
||||
<text>分数</text>
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
学员信息:{{curReplay.createUser.nickname != null && curReplay.createUser.nickname != '' ? curReplay.createUser.nickname : '匿名用户'}}
|
||||
/ {{curReplay.createUser.tel}}
|
||||
</view>
|
||||
<view class="score" v-show="curReplay.scoreSuccess == 1">
|
||||
<view class="score" v-show="curReplay.scoreSuccess >= 1">
|
||||
分数:{{curReplay.score}}
|
||||
</view>
|
||||
<view class="score noscore" v-show="curReplay.scoreSuccess == 0">
|
||||
@@ -62,8 +62,7 @@
|
||||
</view>
|
||||
<!-- -->
|
||||
<template
|
||||
v-if="roleCode.includes('4') && curReplay.scoreSuccess != 1 ||
|
||||
roleCode.includes('5') && curReplay.scoreSuccess != 1 && (classState == '1' || classState == '3')">
|
||||
v-if="(roleCode.includes('4') || roleCode.includes('5')) && curReplay.scoreSuccess < 1 && (classState == '1' || classState == '3')">
|
||||
<view class="" style=" padding: 10rpx 10rpx; margin-top: 20rpx;">
|
||||
<view class="scoreBox flex_box">
|
||||
<text>分数</text>
|
||||
@@ -72,11 +71,6 @@
|
||||
{{item}} 分
|
||||
</text>
|
||||
</view>
|
||||
<!-- <uni-forms :modelValue="form" :rules="rules" ref="form">
|
||||
<uni-forms-item label="分数" name="score" >
|
||||
<uni-easyinput type="number" v-model="form.score" placeholder="请输入分数:0-2.5分" />
|
||||
</uni-forms-item>
|
||||
</uni-forms> -->
|
||||
</view>
|
||||
<view class="btn_box" v-if="classState != '2' && classState != '0'"><button @click="onSubmit">提 交</button></view>
|
||||
</template>
|
||||
|
||||
Reference in New Issue
Block a user