mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-mobile.git
synced 2025-12-09 02:46:46 +08:00
提交修改调整
This commit is contained in:
@@ -28,6 +28,9 @@ send 姓名
|
|||||||
const pagelist=function(query){
|
const pagelist=function(query){
|
||||||
return ajax.post('/xboe/m/comment/tome/page',query);
|
return ajax.post('/xboe/m/comment/tome/page',query);
|
||||||
}
|
}
|
||||||
|
const mobilepage=function(query){
|
||||||
|
return ajax.post('/xboe/m/comment/tome/mobilepage',query);
|
||||||
|
}
|
||||||
/*
|
/*
|
||||||
保存评论
|
保存评论
|
||||||
{Object }
|
{Object }
|
||||||
@@ -87,5 +90,6 @@ export default{
|
|||||||
pageQuery,
|
pageQuery,
|
||||||
reply,
|
reply,
|
||||||
replyList,
|
replyList,
|
||||||
delReply
|
delReply,
|
||||||
|
mobilepage
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,10 @@ import ajax from '@/utils/xajax.js'
|
|||||||
const list=function(query){
|
const list=function(query){
|
||||||
return ajax.post('/xboe/sys/message/list',query);
|
return ajax.post('/xboe/sys/message/list',query);
|
||||||
}
|
}
|
||||||
|
const mobilelist=function(query){
|
||||||
|
return ajax.post('/xboe/sys/message/mobilelist',query);
|
||||||
|
}
|
||||||
|
// mobilelist
|
||||||
/*
|
/*
|
||||||
删除消息
|
删除消息
|
||||||
@param ids 勾选的多个消息id
|
@param ids 勾选的多个消息id
|
||||||
@@ -61,5 +65,6 @@ export default{
|
|||||||
isRead,
|
isRead,
|
||||||
updateIsRead,
|
updateIsRead,
|
||||||
readAll,
|
readAll,
|
||||||
cleanAll
|
cleanAll,
|
||||||
|
mobilelist
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
{{course.name}}
|
{{course.name}}
|
||||||
</view>
|
</view>
|
||||||
<view class="course-text">
|
<view class="course-text">
|
||||||
{{course.teacher}} | {{course.studys || course.studies}}人已学
|
{{course.teacher}} | {{formatUserNumber(course.studys || course.studies)}}人已学
|
||||||
</view>
|
</view>
|
||||||
<view class="course-type">
|
<view class="course-type">
|
||||||
<text class="type-index" v-if="sysTypeName(course.sysType1) != ''">{{sysTypeName(course.sysType1)}}</text>
|
<text class="type-index" v-if="sysTypeName(course.sysType1) != ''">{{sysTypeName(course.sysType1)}}</text>
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { mapGetters,mapActions} from 'vuex';
|
import { mapGetters,mapActions} from 'vuex';
|
||||||
import {toScore} from '@/utils/tools.js'
|
import {toScore,formatUserNumber} from '@/utils/tools.js'
|
||||||
export default {
|
export default {
|
||||||
props:{
|
props:{
|
||||||
items:{
|
items:{
|
||||||
@@ -37,6 +37,7 @@
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
converToScore:toScore,
|
converToScore:toScore,
|
||||||
|
formatUserNumber,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<!-- ${filterWidth} -->
|
<!-- ${filterWidth} -->
|
||||||
<u-popup :show="filterShow" mode="center" @close="closeFilter" :safeAreaInsetTop="true" :closeable="false">
|
<u-popup :show="filterShow" mode="center" @close="closeFilter" :safeAreaInsetTop="true" :closeable="false">
|
||||||
<view :style="{width:filterWidth}" style="height: 100vh;padding-top: 32upx; overflow: auto;position: relative;">
|
<view :style="{width:filterWidth}" style="height: 100vh;padding-top: 32upx; overflow: auto;position: relative;">
|
||||||
<view v-if="type==1" >
|
<view v-if="type==1" style="margin-bottom: 400upx;">
|
||||||
<view class="filter-title-top">
|
<view class="filter-title-top">
|
||||||
<u-icon @click="filterShow = false" class="icon" name="arrow-left" color="#333333" size="20"></u-icon>课程分类
|
<u-icon @click="filterShow = false" class="icon" name="arrow-left" color="#333333" size="20"></u-icon>课程分类
|
||||||
</view>
|
</view>
|
||||||
@@ -22,6 +22,9 @@
|
|||||||
<view class="filter-option" :class="{'filter-checked':course.courseType==20}" @click="setCourseFilter('courseType',20)">录播课</view>
|
<view class="filter-option" :class="{'filter-checked':course.courseType==20}" @click="setCourseFilter('courseType',20)">录播课</view>
|
||||||
<view class="filter-option" :class="{'filter-checked':course.courseType==30}" @click="setCourseFilter('courseType',30)">线下课</view>
|
<view class="filter-option" :class="{'filter-checked':course.courseType==30}" @click="setCourseFilter('courseType',30)">线下课</view>
|
||||||
<view class="filter-option" :class="{'filter-checked':course.courseType==40}" @click="setCourseFilter('courseType',40)">学习项目</view>
|
<view class="filter-option" :class="{'filter-checked':course.courseType==40}" @click="setCourseFilter('courseType',40)">学习项目</view>
|
||||||
|
</view>
|
||||||
|
<view class="">
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view class="filter-title" style="margin-top: 10upx;">内容分类</view>
|
<view class="filter-title" style="margin-top: 10upx;">内容分类</view>
|
||||||
<view class="filter-body">
|
<view class="filter-body">
|
||||||
@@ -189,6 +192,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
|
stopRoll(){},
|
||||||
toNewLink(){
|
toNewLink(){
|
||||||
location.href='https://m.qingxuetang.com/x/?appId=qxtcorp306130';
|
location.href='https://m.qingxuetang.com/x/?appId=qxtcorp306130';
|
||||||
},
|
},
|
||||||
@@ -492,6 +496,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.filter-footer{
|
.filter-footer{
|
||||||
|
position: fixed;
|
||||||
|
bottom: 126upx;
|
||||||
|
left: 0;
|
||||||
|
right:0;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
margin-top: 84upx;
|
margin-top: 84upx;
|
||||||
|
|||||||
@@ -18,12 +18,11 @@
|
|||||||
<view v-if="users.length>0" style="overflow-x: auto;height: 160upx;white-space: nowrap;overflow-y: hidden;">
|
<view v-if="users.length>0" style="overflow-x: auto;height: 160upx;white-space: nowrap;overflow-y: hidden;">
|
||||||
<view style="line-height: 60upx;display: inline-block;margin: 10upx;" v-for="(su,suidx) in users" :key="suidx" @click="confirmShare(su)">
|
<view style="line-height: 60upx;display: inline-block;margin: 10upx;" v-for="(su,suidx) in users" :key="suidx" @click="confirmShare(su)">
|
||||||
<view style="text-align: center;"><!--用户头像-->
|
<view style="text-align: center;"><!--用户头像-->
|
||||||
<view v-if="su.avatar"><image :src="su.avatar" shape="circle" style="width: 80upx;height: 80upx;"></image></view>
|
<view v-if="su.avatar" style="border-radius: 50%;"><image :src="$config.fileUrl+su.avatar" shape="circle" style="width: 80upx;height: 80upx;border-radius: 50%;"></image></view>
|
||||||
<view v-else>
|
<view v-else>
|
||||||
<image v-if="su.sex === 1 " shape="circle" src="../../static/images/man.png" style="width: 80upx;height: 80upx;" alt=""></image>
|
<image v-if="su.sex === 1 " shape="circle" src="../../static/images/man.png" style="width: 80upx;height: 80upx;" alt=""></image>
|
||||||
<image v-else shape="circle" src="../../static/images/woman.png" style="width: 80upx;height: 80upx;" alt=""></image>
|
<image v-else shape="circle" src="../../static/images/woman.png" style="width: 80upx;height: 80upx;" alt=""></image>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view style="text-align: center;font-size: 22upx;">{{su.name}}({{su.code}})</view>
|
<view style="text-align: center;font-size: 22upx;">{{su.name}}({{su.code}})</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -144,7 +143,7 @@
|
|||||||
// item.sex=1;
|
// item.sex=1;
|
||||||
// ids.push(item.aid);
|
// ids.push(item.aid);
|
||||||
// }
|
// }
|
||||||
item.avatar='';
|
// item.avatar='';
|
||||||
item.sex=1;
|
item.sex=1;
|
||||||
ids.push(item.aid);
|
ids.push(item.aid);
|
||||||
});
|
});
|
||||||
@@ -242,9 +241,9 @@
|
|||||||
item.avatar= author.avatar;
|
item.avatar= author.avatar;
|
||||||
item.code= author.code;
|
item.code= author.code;
|
||||||
item.sex=author.sex;
|
item.sex=author.sex;
|
||||||
if(author.avatar != '') {
|
// if(author.avatar != '') {
|
||||||
item.avatar=this.$config.fileUrl + author.avatar;
|
// item.avatar=this.$config.fileUrl + author.avatar;
|
||||||
}
|
// }
|
||||||
return true;
|
return true;
|
||||||
}else{
|
}else{
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
<u-toast ref="toast"></u-toast>
|
<u-toast ref="toast"></u-toast>
|
||||||
<view class="news-page-btn">
|
<view class="news-page-btn">
|
||||||
<view class="btn-index" @click="selectFn">多选</view>
|
<view class="btn-index" @click="selectFn">多选</view>
|
||||||
<view class="btn-index" @click="isAllClear()">清空</view>
|
<view class="btn-index" :class="{'wu-list':items.length == 0}" @click="isAllClear()">清空</view>
|
||||||
<view class="btn-index" @click="allRead()">一键已读</view>
|
<view class="btn-index" :class="{'wu-list':items.length == 0}" @click="allRead()">一键已读</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="news-page-list">
|
<view class="news-page-list">
|
||||||
<view class="list-index" v-for="item in items" :key="item.id" @click="returnRouter(item)">
|
<view class="list-index" v-for="item in items" :key="item.id" @click="returnRouter(item)">
|
||||||
@@ -43,6 +43,7 @@
|
|||||||
props:{
|
props:{
|
||||||
items:{
|
items:{
|
||||||
type:Array,
|
type:Array,
|
||||||
|
default:()=>[]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
@@ -72,15 +73,18 @@
|
|||||||
url: '/pages/resource/qaDetail?id=' + item.refId
|
url: '/pages/resource/qaDetail?id=' + item.refId
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
if (item.conType == '10') {
|
uni.navigateTo({
|
||||||
uni.navigateTo({
|
url: '/pages/study/courseStudy?id=' + item.refId
|
||||||
url: '/pages/resource/microDetail?id=' + item.refId
|
});
|
||||||
});
|
// if (item.conType == '10') {
|
||||||
} else if (item.conType == '20') {
|
// uni.navigateTo({
|
||||||
uni.navigateTo({
|
// url: '/pages/resource/microDetail?id=' + item.refId
|
||||||
url: '/pages/resource/courseDetail?id=' +item.refId
|
// });
|
||||||
});
|
// } else if (item.conType == '20') {
|
||||||
}
|
// uni.navigateTo({
|
||||||
|
// url: '/pages/resource/courseDetail?id=' +item.refId
|
||||||
|
// });
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cancel() {
|
cancel() {
|
||||||
@@ -131,6 +135,9 @@
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
isAllClear() {
|
isAllClear() {
|
||||||
|
if(this.items.length == 0) {
|
||||||
|
return
|
||||||
|
}
|
||||||
this.isAll = 0;
|
this.isAll = 0;
|
||||||
this.modalShow = true;
|
this.modalShow = true;
|
||||||
this.content='确认删所有信息吗?'
|
this.content='确认删所有信息吗?'
|
||||||
@@ -144,6 +151,9 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
allRead(){
|
allRead(){
|
||||||
|
if(this.items.length == 0) {
|
||||||
|
return
|
||||||
|
}
|
||||||
let ids = this.items.map(item=>{
|
let ids = this.items.map(item=>{
|
||||||
if(!item.isRead) {
|
if(!item.isRead) {
|
||||||
return item.id;
|
return item.id;
|
||||||
@@ -160,6 +170,9 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
.wu-list{
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
/deep/ .u-modal{
|
/deep/ .u-modal{
|
||||||
width: 288px !important;
|
width: 288px !important;
|
||||||
border-radius: 28upx;
|
border-radius: 28upx;
|
||||||
|
|||||||
@@ -114,6 +114,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
this.tab = options.type;
|
||||||
this.$store.dispatch('GetUserInfo').then(rs => {
|
this.$store.dispatch('GetUserInfo').then(rs => {
|
||||||
this.userInfo = rs;
|
this.userInfo = rs;
|
||||||
this.getMyPage();
|
this.getMyPage();
|
||||||
@@ -146,7 +147,10 @@
|
|||||||
} else {
|
} else {
|
||||||
$this.follow.list.splice(this.cancelIndex,1);
|
$this.follow.list.splice(this.cancelIndex,1);
|
||||||
}
|
}
|
||||||
this.$refs.messager.show({message:'停止关注成功',type:'info'});
|
uni.showToast({
|
||||||
|
title:'停止关注成功'
|
||||||
|
})
|
||||||
|
// this.$refs.messager.show({message:'停止关注成功',type:'info'});
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@@ -161,7 +165,7 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
ubtab(num){
|
ubtab(num){
|
||||||
this.tab = num
|
this.tab = num;
|
||||||
},
|
},
|
||||||
getMyPage() {//关注我的,关注他的
|
getMyPage() {//关注我的,关注他的
|
||||||
this.followMe.aid = this.userInfo.aid;
|
this.followMe.aid = this.userInfo.aid;
|
||||||
@@ -225,7 +229,7 @@
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.$message.error(res.message);
|
// this.$message.error(res.message);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -78,12 +78,12 @@
|
|||||||
|
|
||||||
</view>
|
</view>
|
||||||
<text class="asset-border"></text>
|
<text class="asset-border"></text>
|
||||||
<view @click="navigateTo('follow')">
|
<view @click="navigateTo('follow?type=1')">
|
||||||
<text>{{ concernme }}</text>
|
<text>{{ concernme }}</text>
|
||||||
关注我的
|
关注我的
|
||||||
</view>
|
</view>
|
||||||
<text class="asset-border"></text>
|
<text class="asset-border"></text>
|
||||||
<view @click="navigateTo('follow')">
|
<view @click="navigateTo('follow?type=2')">
|
||||||
<text>{{ myconcern }}</text>
|
<text>{{ myconcern }}</text>
|
||||||
我的关注
|
我的关注
|
||||||
</view>
|
</view>
|
||||||
@@ -367,7 +367,6 @@
|
|||||||
|
|
||||||
Followto(){
|
Followto(){
|
||||||
apiFollow.counts(this.userInfoObj.aid).then(res => {
|
apiFollow.counts(this.userInfoObj.aid).then(res => {
|
||||||
console.log(res);
|
|
||||||
this.concernme = res.result.passive;
|
this.concernme = res.result.passive;
|
||||||
this.myconcern = res.result.initiative;
|
this.myconcern = res.result.initiative;
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -100,15 +100,15 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<u-popup :show="inputShow" @close="closeInput" @open="openInput">
|
<u-popup :show="inputShow" @close="closeInput" @open="openInput" :round="16">
|
||||||
<view>
|
<view>
|
||||||
<view style="display: flex;">
|
<view style="padding: 60upx 30upx;">
|
||||||
<view style="flex: 1;padding: 15upx;">
|
<view>
|
||||||
<u--textarea :height="150" v-model="inputValue" :plaholder="'回复'" count></u--textarea>
|
<u--textarea style="border: none;background: #F4F4F4;" :height="50" v-model="inputValue" :plaholder="'回复'" count></u--textarea>
|
||||||
</view>
|
</view>
|
||||||
<view style="width:160upx;text-align: center;padding-top: 10px;line-height: 80upx;">
|
<view style="width:160upx;padding-top: 10px;float: right;height: 120upx;">
|
||||||
<view>
|
<view>
|
||||||
<u-button type="primary" @click="publishReply" text="发布" style="width: 100upx;height: 80upx;margin-top: 80upx;"></u-button>
|
<u-button type="primary" @click="publishReply" text="发布" style="padding: 2upx 30upx;height: 52upx;background: #87B3FF;border-color: #87B3FF;"></u-button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="top-content">
|
<view class="top-content">
|
||||||
<view>{{uinfo.uCurrency}}</view>
|
<view>{{uinfo.uCurrency}}</view>
|
||||||
统计时间:2022.11.4
|
统计时间:{{formatDate(new Date()).split(' ')[0]}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="ub-list" v-for="(day, index) in uCoinRecord" :key="index">
|
<view class="ub-list" v-for="(day, index) in uCoinRecord" :key="index">
|
||||||
@@ -32,6 +32,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import apiStat from '@/api/phase2/stat.js';
|
import apiStat from '@/api/phase2/stat.js';
|
||||||
|
import {formatDate} from '../../utils/tools.js'
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(['userInfo']),
|
...mapGetters(['userInfo']),
|
||||||
@@ -41,6 +42,7 @@
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
formatDate,
|
||||||
uCoinRecord: [],
|
uCoinRecord: [],
|
||||||
uinfo: {
|
uinfo: {
|
||||||
uCurrency: 0, // 用户累计U币
|
uCurrency: 0, // 用户累计U币
|
||||||
|
|||||||
@@ -211,6 +211,17 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
/deep/ .u-modal{
|
||||||
|
width: 288px !important;
|
||||||
|
border-radius: 28upx;
|
||||||
|
}
|
||||||
|
/deep/ .u-modal__content{
|
||||||
|
text-align: center;
|
||||||
|
font-size: 36upx;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #333333;
|
||||||
|
padding: 33px 25px 33px 25px;
|
||||||
|
}
|
||||||
.uavatar{
|
.uavatar{
|
||||||
border:1px solid #73adfe;
|
border:1px solid #73adfe;
|
||||||
color:#73adfe;
|
color:#73adfe;
|
||||||
|
|||||||
@@ -46,7 +46,6 @@
|
|||||||
loadStatus:'noMore',//more,loading,noMore
|
loadStatus:'noMore',//more,loading,noMore
|
||||||
query:{
|
query:{
|
||||||
pageIndex:1,//当前页
|
pageIndex:1,//当前页
|
||||||
type:null,//当前只限于文章
|
|
||||||
pageSize:10,//条数
|
pageSize:10,//条数
|
||||||
},//查询条件
|
},//查询条件
|
||||||
message:{
|
message:{
|
||||||
@@ -98,7 +97,7 @@
|
|||||||
}
|
}
|
||||||
let $this = this;
|
let $this = this;
|
||||||
uni.showLoading({ title: '加载中...' });
|
uni.showLoading({ title: '加载中...' });
|
||||||
apiMessage.list(this.queryData).then(res => {
|
apiMessage.mobilelist(this.queryData).then(res => {
|
||||||
if (res.status == 200) {
|
if (res.status == 200) {
|
||||||
let ids = [];
|
let ids = [];
|
||||||
this.emptyControl=true
|
this.emptyControl=true
|
||||||
@@ -133,7 +132,7 @@
|
|||||||
this.data=[]
|
this.data=[]
|
||||||
this.pageIndex=1
|
this.pageIndex=1
|
||||||
}
|
}
|
||||||
apiComments.pagelist(this.query).then(res=>{
|
apiComments.mobilepage(this.query).then(res=>{
|
||||||
if (res.status == 200) {
|
if (res.status == 200) {
|
||||||
this.total=res.result.count;
|
this.total=res.result.count;
|
||||||
let ids = [];
|
let ids = [];
|
||||||
|
|||||||
@@ -742,7 +742,18 @@
|
|||||||
url: '/pages/plus/feedback'
|
url: '/pages/plus/feedback'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
/deep/ .u-modal{
|
||||||
|
width: 288px !important;
|
||||||
|
border-radius: 28upx;
|
||||||
|
}
|
||||||
|
/deep/ .u-modal__content{
|
||||||
|
text-align: center;
|
||||||
|
font-size: 36upx;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
padding: 33px 25px 33px 25px;
|
padding: 33px 25px 33px 25px;
|
||||||
|
|||||||
@@ -4,11 +4,16 @@
|
|||||||
<!-- <view class="top-ten" style="margin-top: 21px;margin-left: 13px;">
|
<!-- <view class="top-ten" style="margin-top: 21px;margin-left: 13px;">
|
||||||
<text class="textbtn" @click="loadstatusSelecShow=!loadstatusSelecShow">状态</text>
|
<text class="textbtn" @click="loadstatusSelecShow=!loadstatusSelecShow">状态</text>
|
||||||
</view> -->
|
</view> -->
|
||||||
<view class="searchView">
|
<view class="searchView" v-show="tabIndex===0">
|
||||||
<u-search :clearabled="true" @search="loadBoeData(true)" @clear="loadBoeData(true)"
|
<u-search :clearabled="true" @search="loadBoeData(true)" @clear="loadBoeData(true)"
|
||||||
placeholder="搜索关键字" v-model="loadkeyword" :showAction="false" shape="square" bgColor="##F2F5F7">
|
placeholder="搜索关键字" v-model="loadkeyword" :showAction="false" shape="square" bgColor="##F2F5F7">
|
||||||
</u-search>
|
</u-search>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="searchView" v-show="tabIndex===1">
|
||||||
|
<u-search :clearabled="true" @search="getLearning()" @clear="getLearning()"
|
||||||
|
placeholder="搜索关键字" v-model="learkeyword" :showAction="false" shape="square" bgColor="##F2F5F7">
|
||||||
|
</u-search>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="tabbar" style="position: relative;">
|
<view class="tabbar" style="position: relative;">
|
||||||
<view class="tabbar-item" style="text-align: right;margin-right: 26upx;" @click="clicktab(0)" :class="{'active':tabIndex===0}">
|
<view class="tabbar-item" style="text-align: right;margin-right: 26upx;" @click="clicktab(0)" :class="{'active':tabIndex===0}">
|
||||||
@@ -20,14 +25,25 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 筛选状态 -->
|
<!-- 筛选状态 -->
|
||||||
<view class="addition" v-if="tabIndex===1">
|
<view class="addition" v-show="tabIndex===0">
|
||||||
<view class="textbtn" style="color:#666;font-size: 28upx;" @click="statusSelectShow = !statusSelectShow">
|
<view class="textbtn" style="color:#666;font-size: 28upx;" @click="statusSelectShow = !statusSelectShow">
|
||||||
<text>筛选</text>
|
<text>筛选</text>
|
||||||
<u-icon style="margin-left: 18upx;" name="arrow-down"></u-icon>
|
<u-icon style="margin-left: 18upx;" name="arrow-down"></u-icon>
|
||||||
</view>
|
</view>
|
||||||
<view class="sea-show" v-show="statusSelectShow">
|
<view class="sea-show" v-show="statusSelectShow">
|
||||||
<view v-for="(status,index) in selectData" :key="index" :class="[articleList.status == status.value? 'sea-active':'','sea-index']" @click="chooseStatus(status)">
|
<view v-for="(status,index) in statustList" :key="index" :class="[classType == status.value? 'sea-active':'','sea-index']" @click="autonomyStatus(status.value)">
|
||||||
{{status.label}}
|
{{status.name}}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="addition" v-show="tabIndex===1">
|
||||||
|
<view class="textbtn" style="color:#666;font-size: 28upx;" @click="statusSelectShow = !statusSelectShow">
|
||||||
|
<text>筛选</text>
|
||||||
|
<u-icon style="margin-left: 18upx;" name="arrow-down"></u-icon>
|
||||||
|
</view>
|
||||||
|
<view class="sea-show" v-show="statusSelectShow">
|
||||||
|
<view v-for="(status,index) in statustList" :key="index" :class="[classType == status.value? 'sea-active':'','sea-index']" @click="taskStatus(status.value)">
|
||||||
|
{{status.name}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -108,11 +124,13 @@
|
|||||||
<text style="font-size: 30upx; font-weight: bold;" v-html="$keywordActiveShow(c.courseName, autonomy.keyword)"></text>
|
<text style="font-size: 30upx; font-weight: bold;" v-html="$keywordActiveShow(c.courseName, autonomy.keyword)"></text>
|
||||||
</view>
|
</view>
|
||||||
<view class="coures-midd">
|
<view class="coures-midd">
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view class="rowbtn">
|
<view class="rowbtn" >
|
||||||
<image @click.native.stop="rowbtn(c)" style="width: 100%;height: 100%;"
|
<image @click.native.stop="removecour(c)" style="width: 100%;height: 100%;position: relative"
|
||||||
src="../../static/images/icon/more.png" alt="">
|
src="../../static/images/icon/more.png" alt="">
|
||||||
|
<view class="delcoures" v-show="c.delcour" @click.native.stop="rowbtn(c)">
|
||||||
|
<u-icon style="line-height: 90upx;" name="trash" label="删除课程"></u-icon>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="coures-bottom coures-midd">
|
<view class="coures-bottom coures-midd">
|
||||||
<view v-if="c.teacherName" class="course-author">
|
<view v-if="c.teacherName" class="course-author">
|
||||||
@@ -295,7 +313,7 @@
|
|||||||
couresList: '',
|
couresList: '',
|
||||||
switch: '',
|
switch: '',
|
||||||
hisswitch: '',
|
hisswitch: '',
|
||||||
classType: 0,
|
classType: '',
|
||||||
hisclassType: '',
|
hisclassType: '',
|
||||||
historyList: '',
|
historyList: '',
|
||||||
studyList: [],
|
studyList: [],
|
||||||
@@ -413,6 +431,10 @@
|
|||||||
}, 500);
|
}, 500);
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
removecour(item){
|
||||||
|
console.log(item);
|
||||||
|
item.delcour = !item.delcour
|
||||||
|
},
|
||||||
rowbtn(row) {
|
rowbtn(row) {
|
||||||
this.delData = row;
|
this.delData = row;
|
||||||
this.btnsShow = true;
|
this.btnsShow = true;
|
||||||
@@ -427,6 +449,7 @@
|
|||||||
});
|
});
|
||||||
this.studyList.forEach((item, index) => {
|
this.studyList.forEach((item, index) => {
|
||||||
if (item.id === this.delData.id) {
|
if (item.id === this.delData.id) {
|
||||||
|
// item.delcour = false;
|
||||||
this.studyList.splice(index, 1);
|
this.studyList.splice(index, 1);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -514,16 +537,17 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
autonomyStatus(num) {
|
autonomyStatus(num) {
|
||||||
// this.isSelect = num;
|
this.status = num;
|
||||||
this.autonomy.status = num;
|
this.getLearning();
|
||||||
this.searchData();
|
},
|
||||||
|
taskStatus(num) {
|
||||||
|
this.boeStatus = num;
|
||||||
|
this.loadBoeData(true);
|
||||||
},
|
},
|
||||||
closeBtns() {
|
closeBtns() {
|
||||||
this.btnsShow = false;
|
this.btnsShow = false;
|
||||||
},
|
},
|
||||||
searchData() {
|
searchData() {
|
||||||
// this.page.pageIndex = 1;
|
|
||||||
// this.isListOne = true;
|
|
||||||
let list = this.studyData;
|
let list = this.studyData;
|
||||||
let type;
|
let type;
|
||||||
let wei;
|
let wei;
|
||||||
@@ -580,13 +604,10 @@
|
|||||||
}
|
}
|
||||||
apiBoeCourse.cmtaskList(params).then(res => {
|
apiBoeCourse.cmtaskList(params).then(res => {
|
||||||
this.taskCount = res.result.count;
|
this.taskCount = res.result.count;
|
||||||
// let userIds=[];
|
|
||||||
res.result.list.forEach(item => {
|
res.result.list.forEach(item => {
|
||||||
let time = this.formatDate(item.created_at * 1000);
|
let time = this.formatDate(item.created_at * 1000);
|
||||||
item.created_at = time.split(' ')[0];
|
item.created_at = time.split(' ')[0];
|
||||||
// userIds.push(item.sysCreateAid);
|
|
||||||
});
|
});
|
||||||
// this.loadUserInfos(rs.result.list, userIds);
|
|
||||||
this.couresList = res.result.list;
|
this.couresList = res.result.list;
|
||||||
if (this.taskCount > this.taskPageIndex * this.taskPageSize) {
|
if (this.taskCount > this.taskPageIndex * this.taskPageSize) {
|
||||||
this.taskHasMore = true;
|
this.taskHasMore = true;
|
||||||
@@ -700,23 +721,20 @@
|
|||||||
title: '加载中...'
|
title: '加载中...'
|
||||||
});
|
});
|
||||||
this.loadStatus = 'loading';
|
this.loadStatus = 'loading';
|
||||||
// let classType = null;
|
|
||||||
|
|
||||||
let data = [];
|
let data = [];
|
||||||
let lear = {
|
let lear = {
|
||||||
pageIndex: 1, //第几页
|
pageIndex: 1, //第几页
|
||||||
pageSize: 200,
|
pageSize: 200,
|
||||||
courseName: this.learkeyword,
|
courseName: this.learkeyword,
|
||||||
// courseType: classType,
|
|
||||||
status: this.status,
|
status: this.status,
|
||||||
}
|
}
|
||||||
// if(this.classType == 'online-course' || this.classType == '') {
|
|
||||||
await apicourseStudy.myStudyList(lear).then(res => {
|
await apicourseStudy.myStudyList(lear).then(res => {
|
||||||
if (res.status == 200) {
|
if (res.status == 200) {
|
||||||
// 我报名的接口
|
// 我报名的接口
|
||||||
//console.log(res)
|
//console.log(res)
|
||||||
let courseIds = [];
|
let courseIds = [];
|
||||||
res.result.list.forEach(item => {
|
res.result.list.forEach(item => {
|
||||||
|
item.delcour = false;
|
||||||
item.teachersName = '';
|
item.teachersName = '';
|
||||||
item.addTime = item.addTime.split(' ')[0];
|
item.addTime = item.addTime.split(' ')[0];
|
||||||
courseIds.push(item.courseId);
|
courseIds.push(item.courseId);
|
||||||
@@ -733,10 +751,14 @@
|
|||||||
type: this.classType
|
type: this.classType
|
||||||
}
|
}
|
||||||
await apiBoeCourse.myLearning(learData).then(res => {
|
await apiBoeCourse.myLearning(learData).then(res => {
|
||||||
|
|
||||||
if (res.status == 200) {
|
if (res.status == 200) {
|
||||||
|
res.result.dataList.forEach(item => {
|
||||||
|
item.delcour = false;
|
||||||
|
})
|
||||||
let list = this.filterConversion(res.result.dataList);
|
let list = this.filterConversion(res.result.dataList);
|
||||||
data.push(...list);
|
data.push(...list);
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.loadStatus = 'noMore';
|
this.loadStatus = 'noMore';
|
||||||
@@ -865,6 +887,18 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
.delcoures{
|
||||||
|
position: absolute;
|
||||||
|
width: 180upx;
|
||||||
|
top: 40upx;
|
||||||
|
right: 0;
|
||||||
|
background: #FFFFFF;
|
||||||
|
box-shadow: 0px 1px 4px 1px rgba(0,0,0,0.08);
|
||||||
|
border-radius: 8upx;
|
||||||
|
z-index: 77;
|
||||||
|
padding: 30upx 30upx;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
.addition {
|
.addition {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 10upx;
|
right: 10upx;
|
||||||
@@ -875,7 +909,7 @@
|
|||||||
color: #4f4f4f;
|
color: #4f4f4f;
|
||||||
font-size: 28upx;
|
font-size: 28upx;
|
||||||
}
|
}
|
||||||
.sea-show{
|
.sea-show {
|
||||||
width: 130upx;
|
width: 130upx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 80upx;
|
top: 80upx;
|
||||||
@@ -1022,15 +1056,10 @@
|
|||||||
padding: 20upx 30upx 10upx 30upx;
|
padding: 20upx 30upx 10upx 30upx;
|
||||||
|
|
||||||
.sea-active {
|
.sea-active {
|
||||||
border: 1rpx solid #679cfc !important;
|
|
||||||
color: #679cfc;
|
color: #679cfc;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sea-index {
|
.sea-index {
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
padding: 6rpx 16rpx;
|
|
||||||
border: 1rpx solid #ccc;
|
|
||||||
border-radius: 20rpx;
|
|
||||||
margin-right: 16rpx;
|
margin-right: 16rpx;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user