Browse Source
- 新增市场端我的页面,包括用户信息、统计信息等功能模块 - 实现切换身份、到课率统计、即将到期等功能跳转 - 添加个人资料编辑功能,包括头像、姓名、性别等信息修改- 新增授课统计详情页面,展示详细授课信息 - 实现意见反馈和设置页面的跳转master
9 changed files with 1725 additions and 9 deletions
@ -0,0 +1,256 @@ |
|||||
|
<!--到课统计-详情--> |
||||
|
<template> |
||||
|
<view class="main_box"> |
||||
|
|
||||
|
<view class="main_section"> |
||||
|
<view class="section_3"> |
||||
|
<view class="ul"> |
||||
|
<view class="li"> |
||||
|
<view class="left_box"> |
||||
|
<view class="date_box"> |
||||
|
<text>12</text> |
||||
|
<text>/</text> |
||||
|
<text>24</text> |
||||
|
</view> |
||||
|
<view class="ratio"> |
||||
|
到课率:80% |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="center_box"> |
||||
|
<view>班级:少年班</view> |
||||
|
<view>时间:2020-05-25 15:30 - 17:30</view> |
||||
|
<view>课室:302室 |
||||
|
</view> |
||||
|
<view>课程:篮球少儿课 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right_box"> |
||||
|
<view class="tag" style="background:#fad24e;">上课中</view> |
||||
|
<!-- <view class="tag" style="background:#1cd188;">待上课</view>--> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li"> |
||||
|
<view class="left_box"> |
||||
|
<view class="date_box"> |
||||
|
<text>12</text> |
||||
|
<text>/</text> |
||||
|
<text>24</text> |
||||
|
</view> |
||||
|
<view class="ratio"> |
||||
|
到课率:80% |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="center_box"> |
||||
|
<view>班级:少年班</view> |
||||
|
<view>时间:2020-05-25 15:30 - 17:30</view> |
||||
|
<view>课室:302室 |
||||
|
</view> |
||||
|
<view>课程:篮球少儿课 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right_box"> |
||||
|
<!-- <view class="tag" style="background:#fad24e;">上课中</view>--> |
||||
|
<view class="tag" style="background:#1cd188;">待上课</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import user from '@/api/user.js'; |
||||
|
import AQTabber from "@/components/AQ/AQTabber.vue" |
||||
|
|
||||
|
|
||||
|
export default { |
||||
|
components: { |
||||
|
AQTabber, |
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
formData:{}, |
||||
|
|
||||
|
//课程下拉菜单相关 |
||||
|
show_course:false,//是否显示下拉菜单 |
||||
|
//课程下拉菜单 |
||||
|
course_name:'课程',//选中的下拉菜单名称 |
||||
|
options_course: [ |
||||
|
{ |
||||
|
text: '请选择课程', |
||||
|
value: '', |
||||
|
checked: true |
||||
|
}, { |
||||
|
text: '羽毛球课程1', |
||||
|
value: '1' |
||||
|
}, { |
||||
|
text: '篮球课程2', |
||||
|
value: '2' |
||||
|
} |
||||
|
], |
||||
|
|
||||
|
//课室下拉菜单相关 |
||||
|
show_classroom:false,//是否显示下拉菜单 |
||||
|
//课程下拉菜单 |
||||
|
classroom_name:'课室',//选中的下拉菜单名称 |
||||
|
options_classroom: [ |
||||
|
{ |
||||
|
text: '请选择课室', |
||||
|
value: '', |
||||
|
checked: true |
||||
|
}, { |
||||
|
text: '羽毛球201', |
||||
|
value: '1' |
||||
|
}, { |
||||
|
text: '篮球室101', |
||||
|
value: '2' |
||||
|
} |
||||
|
], |
||||
|
} |
||||
|
}, |
||||
|
onLoad() { |
||||
|
}, |
||||
|
methods: { |
||||
|
//选中课程下拉菜单点击事件 |
||||
|
clickCourse(e){ |
||||
|
console.log(e) |
||||
|
this.course_name = e.text |
||||
|
this.show_course = true |
||||
|
}, |
||||
|
//显示下拉菜单 |
||||
|
filterTapCourse() { |
||||
|
//显示下拉框 |
||||
|
this.$refs.ref_course.show() |
||||
|
this.show_course = true; |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
|
||||
|
//选中课室 |
||||
|
clickClassroom(e){ |
||||
|
console.log(e) |
||||
|
this.classroom_name = e.text |
||||
|
this.show_classroom = true |
||||
|
}, |
||||
|
//显示课室下拉菜单 |
||||
|
filterTapClassroom() { |
||||
|
//显示下拉框 |
||||
|
this.$refs.ref_classroom.show() |
||||
|
this.show_classroom = true; |
||||
|
}, |
||||
|
|
||||
|
//打开课时详情页 |
||||
|
openViewCourseInfo(item){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/course/info' |
||||
|
}) |
||||
|
}, |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
|
||||
|
.main_box{ |
||||
|
background: #292929 ; |
||||
|
} |
||||
|
|
||||
|
//自定义导航栏 |
||||
|
.navbar_section{ |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
background: #29d3b4; |
||||
|
.title{ |
||||
|
padding: 20rpx 0; |
||||
|
font-size: 30rpx; |
||||
|
color: #315d55; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.main_section{ |
||||
|
min-height: 100vh; |
||||
|
background: #292929 100%; |
||||
|
padding: 0 24rpx; |
||||
|
padding-top: 32rpx; |
||||
|
padding-bottom: 150rpx; |
||||
|
font-size: 28rpx; |
||||
|
.section_3{ |
||||
|
color: #fff; |
||||
|
font-size: 24rpx; |
||||
|
.title_box{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
.top_box{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: center; |
||||
|
text{ |
||||
|
font-size: 30rpx; |
||||
|
} |
||||
|
} |
||||
|
.line{ |
||||
|
width: 90rpx; |
||||
|
height: 2px; |
||||
|
background: #29D3B4; |
||||
|
} |
||||
|
} |
||||
|
.ul{ |
||||
|
margin-top: 30rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 20rpx; |
||||
|
.li{ |
||||
|
position: relative; |
||||
|
border-radius: 22rpx; |
||||
|
background: #434544 100%; |
||||
|
padding: 14rpx 0; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
.left_box{ |
||||
|
margin-left: 28rpx; |
||||
|
width: 146rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 10rpx; |
||||
|
.date_box{ |
||||
|
display: flex; |
||||
|
font-size: 48rpx; |
||||
|
text:nth-child(1){ |
||||
|
color: #29D3B4; |
||||
|
} |
||||
|
} |
||||
|
.ratio{ |
||||
|
color: #AAAAAA; |
||||
|
} |
||||
|
} |
||||
|
.center_box{ |
||||
|
margin-left: 52rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 10rpx; |
||||
|
} |
||||
|
.right_box{ |
||||
|
.tag{ |
||||
|
position:absolute; |
||||
|
top: 0rpx; |
||||
|
right: 0rpx; |
||||
|
padding: 10rpx; |
||||
|
width: 102rpx; |
||||
|
text-align: center; |
||||
|
font-size: 24rpx; |
||||
|
border-bottom-left-radius: 20rpx; |
||||
|
border-top-right-radius: 20rpx; |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,316 @@ |
|||||
|
<!--即将到期--> |
||||
|
<template> |
||||
|
<view class="main_box"> |
||||
|
<!--自定义导航栏--> |
||||
|
<!-- <view class="navbar_section">--> |
||||
|
<!-- <view class="title">班级详情</view>--> |
||||
|
<!-- </view>--> |
||||
|
|
||||
|
<view class="main_section"> |
||||
|
<!-- 班级成员列表--> |
||||
|
<view class="section_4"> |
||||
|
<view class="ul"> |
||||
|
<view class="li" @click="openViewStudentInfo({id:1})"> |
||||
|
<view class="left"> |
||||
|
<view class="box_1"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="tag_box"> |
||||
|
即将到期 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="box_2"> |
||||
|
<view class="name">黄明明</view> |
||||
|
<view class="date">课程截止时间:2020.05:25</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>已上课时</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>剩余课时</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li" @click="openViewStudentInfo({id:1})"> |
||||
|
<view class="left"> |
||||
|
<view class="box_1"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="tag_box"> |
||||
|
即将到期 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="box_2"> |
||||
|
<view class="name">黄明明</view> |
||||
|
<view class="date">课程截止时间:2020.05:25</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>已上课时</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>剩余课时</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li" @click="openViewStudentInfo({id:1})"> |
||||
|
<view class="left"> |
||||
|
<view class="box_1"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="tag_box"> |
||||
|
即将到期 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="box_2"> |
||||
|
<view class="name">黄明明</view> |
||||
|
<view class="date">课程截止时间:2020.05:25</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>已上课时</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>剩余课时</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li" @click="openViewStudentInfo({id:1})"> |
||||
|
<view class="left"> |
||||
|
<view class="box_1"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="tag_box"> |
||||
|
即将到期 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="box_2"> |
||||
|
<view class="name">黄明明</view> |
||||
|
<view class="date">课程截止时间:2020.05:25</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>已上课时</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>剩余课时</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li" @click="openViewStudentInfo({id:1})"> |
||||
|
<view class="left"> |
||||
|
<view class="box_1"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="tag_box"> |
||||
|
即将到期 |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="box_2"> |
||||
|
<view class="name">黄明明</view> |
||||
|
<view class="date">课程截止时间:2020.05:25</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>已上课时</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>剩余课时</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li" @click="openViewStudentInfo({id:1})"> |
||||
|
<view class="left"> |
||||
|
<view class="box_1"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<!-- <view class="tag_box">--> |
||||
|
<!-- 即将到期--> |
||||
|
<!-- </view>--> |
||||
|
</view> |
||||
|
<view class="box_2"> |
||||
|
<view class="name">黄明明</view> |
||||
|
<view class="date">课程截止时间:2020.05:25</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>已上课时</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view>24</view> |
||||
|
<view>剩余课时</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<!-- 底部导航--> |
||||
|
<!-- <AQTabber/>--> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import user from '@/api/user.js'; |
||||
|
import AQTabber from "@/components/AQ/AQTabber.vue" |
||||
|
|
||||
|
|
||||
|
export default { |
||||
|
components: { |
||||
|
AQTabber, |
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
formData:{}, |
||||
|
tabType:'1',//1=班级成员,2=作业任务 |
||||
|
} |
||||
|
}, |
||||
|
onLoad() { |
||||
|
}, |
||||
|
methods: { |
||||
|
//切换tab |
||||
|
tabChange(tabType) { |
||||
|
this.tabType = tabType |
||||
|
}, |
||||
|
|
||||
|
//打开课程详情 |
||||
|
openViewCourseInfo(item){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/course/info' |
||||
|
}) |
||||
|
}, |
||||
|
//打开学员详情页 |
||||
|
openViewStudentInfo(item){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/student/info' |
||||
|
}) |
||||
|
}, |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
|
||||
|
.main_box{ |
||||
|
background: #292929 ; |
||||
|
} |
||||
|
|
||||
|
//自定义导航栏 |
||||
|
.navbar_section{ |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
background: #292929; |
||||
|
.title{ |
||||
|
padding: 20rpx 0; |
||||
|
font-size: 30rpx; |
||||
|
color: #fff; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.main_section{ |
||||
|
min-height: 100vh; |
||||
|
background: #292929 100%; |
||||
|
padding: 0 24rpx; |
||||
|
padding-top: 40rpx; |
||||
|
padding-bottom: 150rpx; |
||||
|
font-size: 24rpx; |
||||
|
color: #FFFFFF; |
||||
|
//班级成员列表 |
||||
|
.section_4{ |
||||
|
.ul{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 10rpx; |
||||
|
.li{ |
||||
|
padding: 20rpx 0; |
||||
|
padding-bottom: 40rpx; |
||||
|
border-bottom: 2px solid #D7D7D7; |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
.left{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
gap: 30rpx; |
||||
|
.box_1{ |
||||
|
padding-left: 20rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
justify-content: center; |
||||
|
position: relative; |
||||
|
.pic{ |
||||
|
width: 84rpx; |
||||
|
height: 84rpx; |
||||
|
border-radius: 50%; |
||||
|
} |
||||
|
.tag_box{ |
||||
|
position: absolute; |
||||
|
bottom: -30rpx; |
||||
|
width: 120rpx; |
||||
|
height: 38rpx; |
||||
|
background-color: #F59A23; |
||||
|
border-radius: 4rpx; |
||||
|
line-height: 35rpx; |
||||
|
text-align: center; |
||||
|
font-size: 20rpx; |
||||
|
} |
||||
|
} |
||||
|
.box_2{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 20rpx; |
||||
|
.name{ |
||||
|
font-size: 28rpx; |
||||
|
} |
||||
|
.date{ |
||||
|
font-size: 24rpx; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.right{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
gap: 14rpx; |
||||
|
.item{ |
||||
|
border: 1px solid #00E5BB; |
||||
|
border-radius: 10rpx; |
||||
|
width: 102rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
view{ |
||||
|
text-align: center; |
||||
|
height: 50rpx; |
||||
|
line-height: 50rpx; |
||||
|
} |
||||
|
view:nth-child(1){ |
||||
|
font-size: 32rpx; |
||||
|
background-color: #fff; |
||||
|
color: #00e5bb; |
||||
|
} |
||||
|
view:nth-child(2){ |
||||
|
font-size: 20rpx; |
||||
|
background-color: #00e5bb; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,317 @@ |
|||||
|
<!--我的-首页--> |
||||
|
<template> |
||||
|
<view class="main_box"> |
||||
|
<!--自定义导航栏--> |
||||
|
<view class="navbar_section"> |
||||
|
<view class="title">我的</view> |
||||
|
</view> |
||||
|
|
||||
|
<view style="background:#29D3B4;"> |
||||
|
<!--用户信息--> |
||||
|
<view class="user_section"> |
||||
|
<view class="box"> |
||||
|
<view class="left" @click="openViewMyInfo()"> |
||||
|
<image class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="name">包子皮</view> |
||||
|
</view> |
||||
|
<view class="right"> |
||||
|
<view class="btn">切换身份</view> |
||||
|
<view class="btn" @click="openViewArrivalStatistics()">到课率统计</view> |
||||
|
<view class="btn"></view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<!--统计信息--> |
||||
|
<view class="count_section"> |
||||
|
<view class="main"> |
||||
|
<view class="course_box"> |
||||
|
<view class="top"> |
||||
|
<view class="item"> |
||||
|
<view class="num">1234</view> |
||||
|
<view class="intro">总授课数/节</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view class="num">4</view> |
||||
|
<view class="intro">总授班级/个</view> |
||||
|
</view> |
||||
|
<view class="item"> |
||||
|
<view class="num">1234</view> |
||||
|
<view class="intro">总负责学员/名 |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
月授课数 |
||||
|
<text>12</text> |
||||
|
节,月负责学员 |
||||
|
<text>188</text> |
||||
|
名 |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bg_box bg_top"></view> |
||||
|
<view class="bg_box bg_bottom"></view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<view class="main_section"> |
||||
|
<view class="section_box"> |
||||
|
<view class="item"> |
||||
|
<view>我的体育场</view> |
||||
|
<view>xxx场馆</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item" @click="openViewDueSoon()"> |
||||
|
<view>即将到期</view> |
||||
|
<view></view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item" @click="openViewSchoolingStatistics()"> |
||||
|
<view>授课统计</view> |
||||
|
<view></view> |
||||
|
</view> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
|
<view class="section_box"> |
||||
|
<view class="item" @click="openViewFeedback()"> |
||||
|
<view>意见反馈</view> |
||||
|
<view></view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item" @click="openViewSetUp()"> |
||||
|
<view>设置</view> |
||||
|
<view></view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<!-- 底部导航--> |
||||
|
<AQTabber/> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import user from '@/api/user.js'; |
||||
|
import AQTabber from "@/components/AQ/AQTabber.vue" |
||||
|
|
||||
|
|
||||
|
export default { |
||||
|
components: { |
||||
|
AQTabber, |
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
formData:{}, |
||||
|
} |
||||
|
}, |
||||
|
onLoad() { |
||||
|
}, |
||||
|
methods: { |
||||
|
//打开到课率统计 |
||||
|
openViewArrivalStatistics(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/my/arrival_statistics' |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
//打开即将到期 |
||||
|
openViewDueSoon(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/my/due_soon' |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
//打开授课统计 |
||||
|
openViewSchoolingStatistics(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/my/schooling_statistics' |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
//打开意见反馈 |
||||
|
openViewFeedback(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/common/feedback' |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
//打开个人资料 |
||||
|
openViewMyInfo(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/my/info' |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
//打开设置 |
||||
|
openViewSetUp(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/my/set_up' |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
|
||||
|
.main_box{ |
||||
|
background: #292929; |
||||
|
min-height: 28vh; |
||||
|
} |
||||
|
|
||||
|
//自定义导航栏 |
||||
|
.navbar_section{ |
||||
|
border: 1px solid #29D3B4; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
background: #29D3B4; |
||||
|
.title{ |
||||
|
padding: 20rpx 0; |
||||
|
font-size: 30rpx; |
||||
|
color: #fff; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
//用户信息 |
||||
|
.user_section { |
||||
|
background-color: #29D3B4; |
||||
|
padding-top: 58rpx; |
||||
|
padding-bottom: 42rpx; |
||||
|
color: #fff; |
||||
|
font-size: 28rpx; |
||||
|
.box{ |
||||
|
padding-left: 19rpx; |
||||
|
padding-right: 29rpx; |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: center; |
||||
|
gap: 15rpx; |
||||
|
.left{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
gap: 20rpx; |
||||
|
.pic{ |
||||
|
width: 144rpx; |
||||
|
height: 144rpx; |
||||
|
border-radius: 50%; |
||||
|
} |
||||
|
.name{ |
||||
|
font-size: 28rpx; |
||||
|
} |
||||
|
} |
||||
|
.right{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 20rpx; |
||||
|
.btn{ |
||||
|
min-height: 28rpx; |
||||
|
font-size: 28rpx; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
//统计信息 |
||||
|
.count_section{ |
||||
|
position: relative; |
||||
|
.main{ |
||||
|
position: relative; |
||||
|
z-index: 2; |
||||
|
padding: 0rpx 24rpx; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
.course_box{ |
||||
|
padding: 42rpx 28rpx; |
||||
|
width: 692rpx; |
||||
|
border-radius: 20rpx; |
||||
|
background-color: #fff; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 32rpx; |
||||
|
.top{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: center; |
||||
|
.item{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
gap: 12rpx; |
||||
|
.num{ |
||||
|
color: #29D3B4; |
||||
|
font-size: 56rpx; |
||||
|
} |
||||
|
.intro{ |
||||
|
color: #AAAAAA; |
||||
|
font-size: 24rpx; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.bottom{ |
||||
|
font-size: 24rpx; |
||||
|
color: #333333; |
||||
|
text{ |
||||
|
color: #29D3B4; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
.bg_box{ |
||||
|
z-index: 1; |
||||
|
width: 100%; |
||||
|
height: 150rpx; |
||||
|
} |
||||
|
|
||||
|
.bg_top{ |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
background-color: #29D3B4; |
||||
|
} |
||||
|
.bg_bottom{ |
||||
|
top: 50%; |
||||
|
position: absolute; |
||||
|
background-color: #292929; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.main_section{ |
||||
|
background: #292929 100%; |
||||
|
padding: 0 24rpx; |
||||
|
padding-top: 40rpx; |
||||
|
padding-bottom: 150rpx; |
||||
|
font-size: 24rpx; |
||||
|
color: #333333; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 22rpx; |
||||
|
|
||||
|
.section_box { |
||||
|
background: #fff; |
||||
|
border-radius: 16rpx; |
||||
|
padding: 6rpx 24rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
.item{ |
||||
|
padding: 24rpx 78rpx; |
||||
|
border-top: 1px solid #F2F2F2; |
||||
|
font-size: 28rpx; |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
.item:nth-child(1){ |
||||
|
border-top: 0; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,365 @@ |
|||||
|
<!--授课统计-详情--> |
||||
|
<template> |
||||
|
<view class="main_box"> |
||||
|
|
||||
|
<view class="main_section"> |
||||
|
<view class="section"> |
||||
|
<view class="item"> |
||||
|
<image @click="changeAvatar()" class="pic" src="http://www.firstui.cn:4000/vipdoc/img/img_logo.png"></image> |
||||
|
<view class="btn" @click="changeAvatar()">修改头像</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="section"> |
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
姓名 <text class="required">*</text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input v-model="formData.name" placeholder="请输入姓名" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
账号 <text class="required"></text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input disabled placeholder="暂无" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
部门 <text class="required"></text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input disabled placeholder="暂无" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
等级 <text class="required"></text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input disabled placeholder="暂无" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="section"> |
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
性别 <text class="required">*</text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input placeholder="请选择性别" v-model="sex_name" @click="picker_show_sex=true"/> |
||||
|
<fui-picker |
||||
|
layer="1" |
||||
|
:linkage="true" |
||||
|
:options="options_sex_arr" |
||||
|
:show="picker_show_sex" |
||||
|
@change="changePickerSex" |
||||
|
@cancel="picker_sex_show=false" |
||||
|
></fui-picker> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
生日 <text class="required">*</text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input placeholder="请选择生日" @click="picker_show_birthday=true" v-model="formData.birthday"/> |
||||
|
<fui-date-picker |
||||
|
:minDate="minDate" |
||||
|
:maxDate="maxDate" |
||||
|
:show="picker_show_birthday" |
||||
|
type="3" |
||||
|
@change="changePickerBirthday" |
||||
|
@cancel="picker_show_birthday=false" |
||||
|
></fui-date-picker> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
邮箱 <text class="required">*</text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input v-model="formData.email" placeholder="请输入邮箱" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
手机 <text class="required">*</text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input v-model="formData.tel" placeholder="请输入手机" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="item"> |
||||
|
<view class="title"> |
||||
|
微信 <text class="required"></text> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<input v-model="formData.wx" placeholder="请输入微信" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="submet_btn">提交</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import user from '@/api/user.js'; |
||||
|
import {Api_url} from "@/common/config.js"; |
||||
|
import AQTabber from "@/components/AQ/AQTabber" |
||||
|
|
||||
|
|
||||
|
export default { |
||||
|
components: { |
||||
|
AQTabber, |
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
formData:{ |
||||
|
images_arr:[], |
||||
|
name:'',//姓名 |
||||
|
email:'',//邮箱 |
||||
|
tel:'',//手机 |
||||
|
wx:'',//微信 |
||||
|
sex:'',//性别 |
||||
|
birthday:'',//生日 |
||||
|
}, |
||||
|
|
||||
|
//上传图片APi路径 |
||||
|
uploadUrl: `${Api_url}/salesmanapi/common/uploadFile`, |
||||
|
|
||||
|
//性别选择器 相关 |
||||
|
picker_show_sex: false, |
||||
|
sex_name:'请选择', |
||||
|
options_sex_arr:[ |
||||
|
{ value: 1, text: '男' }, |
||||
|
{ value: 2, text: '女' }, |
||||
|
], |
||||
|
|
||||
|
//生日选择器相关 |
||||
|
minDate:'', |
||||
|
maxDate:'', |
||||
|
picker_show_birthday:false, |
||||
|
} |
||||
|
}, |
||||
|
onLoad() { |
||||
|
}, |
||||
|
onShow() { |
||||
|
this.init() |
||||
|
}, |
||||
|
methods: { |
||||
|
|
||||
|
async init(){ |
||||
|
this.getBirthday() |
||||
|
}, |
||||
|
|
||||
|
// 修改头像按钮 |
||||
|
changeAvatar() { |
||||
|
uni.chooseImage({ |
||||
|
count: 1, |
||||
|
sizeType: ['compressed'], |
||||
|
sourceType: ['album', 'camera'], |
||||
|
success: (res) => { |
||||
|
const tempFilePath = res.tempFilePaths[0] |
||||
|
// 这里可以调用上传接口 |
||||
|
this.uploadFilePromise(tempFilePath) |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
async uploadFilePromise(url) { |
||||
|
console.log('AQ',this.uploadUrl,url) |
||||
|
return new Promise((resolve, reject) => { |
||||
|
let a = uni.uploadFile({ |
||||
|
url: this.uploadUrl, // 仅为示例,非真实的接口地址 |
||||
|
filePath: url, |
||||
|
name: "file", |
||||
|
formData: { |
||||
|
token: this.$store.state.token, |
||||
|
}, |
||||
|
success: (e) => { |
||||
|
console.log('上传成功1',e) |
||||
|
let res = JSON.parse(e.data.replace(/\ufeff/g, "") || "{}") |
||||
|
console.log('上传成功2',res) |
||||
|
if (res.code >= 0){ |
||||
|
this.userInfo.pic = res.data.pic_path |
||||
|
this.editPic(res.data.pic_path) |
||||
|
}else{ |
||||
|
this.$util.showToast({ |
||||
|
title: res.message |
||||
|
}); |
||||
|
} |
||||
|
setTimeout(() => { |
||||
|
resolve(res.data.data); |
||||
|
}, 1000); |
||||
|
}, |
||||
|
}); |
||||
|
}); |
||||
|
}, |
||||
|
//修改头像Api |
||||
|
async editPic(pic) { |
||||
|
let res = await salesmanApi.editPic({pic: pic}) |
||||
|
if (res.code >= 0) { |
||||
|
this.$util.showToast({ |
||||
|
title: '修改成功' |
||||
|
}) |
||||
|
} else { |
||||
|
this.$util.showToast({ |
||||
|
title: res.message |
||||
|
}) |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
//性别选择相关 |
||||
|
changePickerSex(e){ |
||||
|
console.log('监听选择',e) |
||||
|
this.sex_name = e.text |
||||
|
this.formData.sex = e.value |
||||
|
this.picker_show_sex = false |
||||
|
}, |
||||
|
|
||||
|
//生日选择相关 |
||||
|
//获取当前年月日+获取30年前的日期 |
||||
|
getBirthday(){ |
||||
|
let date = new Date(); |
||||
|
let year = date.getFullYear(); |
||||
|
let month = date.getMonth() + 1; |
||||
|
let day = date.getDate(); |
||||
|
let year_30 = year - 30; |
||||
|
let month_30 = month; |
||||
|
let day_30 = day; |
||||
|
if (month_30 == 2 && day_30 > 28) { |
||||
|
month_30 = 3; |
||||
|
day_30 = 1; |
||||
|
} |
||||
|
if (month_30 == 4 && day_30 > 30) { |
||||
|
month_30 = 5; |
||||
|
day_30 = 1; |
||||
|
} |
||||
|
if (month_30 == 6 && day_30 > 30) { |
||||
|
month_30 = 7; |
||||
|
day_30 = 1; |
||||
|
} |
||||
|
if (month_30 == 9 && day_30 > 30) { |
||||
|
month_30 = 10; |
||||
|
day_30 = 1; |
||||
|
} |
||||
|
if (month_30 == 11 && day_30 > 30) { |
||||
|
month_30 = 12; |
||||
|
day_30 = 1; |
||||
|
} |
||||
|
if (month_30 > 12) { |
||||
|
month_30 = month_30 - 12; |
||||
|
year_30 = year_30 + 1; |
||||
|
} |
||||
|
let minDate = year_30 + "-" + month_30 + "-" + day_30 |
||||
|
let maxDate = year + "-" + month + "-" + day |
||||
|
this.minDate = minDate |
||||
|
this.maxDate = maxDate |
||||
|
}, |
||||
|
|
||||
|
//监听生日选择 |
||||
|
changePickerBirthday(e){ |
||||
|
console.log('监听生日选择',e) |
||||
|
this.formData.birthday = e.result |
||||
|
this.picker_show_birthday = false |
||||
|
}, |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
|
||||
|
.main_box{ |
||||
|
background: #292929 ; |
||||
|
} |
||||
|
|
||||
|
//自定义导航栏 |
||||
|
.navbar_section{ |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
background: #29d3b4; |
||||
|
.title{ |
||||
|
padding: 20rpx 0; |
||||
|
font-size: 30rpx; |
||||
|
color: #315d55; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.main_section{ |
||||
|
min-height: 100vh; |
||||
|
background: #292929 100%; |
||||
|
padding: 0 0rpx; |
||||
|
padding-top: 32rpx; |
||||
|
padding-bottom: 150rpx; |
||||
|
font-size: 28rpx; |
||||
|
color: #fff; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 20rpx; |
||||
|
|
||||
|
.section{ |
||||
|
background-color: #434544; |
||||
|
.item{ |
||||
|
padding: 20rpx 40rpx; |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: center; |
||||
|
.pic{ |
||||
|
width: 82rpx; |
||||
|
height: 82rpx; |
||||
|
border-radius: 50%; |
||||
|
} |
||||
|
.btn{} |
||||
|
|
||||
|
.title{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
font-size: 26rpx; |
||||
|
color: #D7D7D7; |
||||
|
.required{ |
||||
|
margin-left: 10rpx; |
||||
|
color: red; |
||||
|
} |
||||
|
} |
||||
|
.input{ |
||||
|
input{ |
||||
|
text-align: right; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.submet_btn{ |
||||
|
margin: 0 auto; |
||||
|
margin-top: 40rpx; |
||||
|
border: 2px solid #25a18b; |
||||
|
color: #25a18b; |
||||
|
width: 80%; |
||||
|
height: 80rpx; |
||||
|
font-size: 30rpx; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,275 @@ |
|||||
|
<!--授课统计-详情--> |
||||
|
<template> |
||||
|
<view class="main_box"> |
||||
|
|
||||
|
<view class="main_section"> |
||||
|
<view class="section_1"> |
||||
|
<view class="ul"> |
||||
|
<view class="li"> |
||||
|
<view class="title">2021年3月</view> |
||||
|
<view class="box"> |
||||
|
<view class="top"> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">34</view> |
||||
|
<view class="explain">月授课数/节</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">4</view> |
||||
|
<view class="explain">总授班级/个</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">1234</view> |
||||
|
<view class="explain">月负责学员/名</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
月到课率<text>88%</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li"> |
||||
|
<view class="title">2021年3月</view> |
||||
|
<view class="box"> |
||||
|
<view class="top"> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">34</view> |
||||
|
<view class="explain">月授课数/节</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">4</view> |
||||
|
<view class="explain">总授班级/个</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">1234</view> |
||||
|
<view class="explain">月负责学员/名</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
月到课率<text>88%</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li"> |
||||
|
<view class="title">2021年3月</view> |
||||
|
<view class="box"> |
||||
|
<view class="top"> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">34</view> |
||||
|
<view class="explain">月授课数/节</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">4</view> |
||||
|
<view class="explain">总授班级/个</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">1234</view> |
||||
|
<view class="explain">月负责学员/名</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
月到课率<text>88%</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="li"> |
||||
|
<view class="title">2021年3月</view> |
||||
|
<view class="box"> |
||||
|
<view class="top"> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">34</view> |
||||
|
<view class="explain">月授课数/节</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">4</view> |
||||
|
<view class="explain">总授班级/个</view> |
||||
|
</view> |
||||
|
<view class="top_item"> |
||||
|
<view class="num">1234</view> |
||||
|
<view class="explain">月负责学员/名</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
月到课率<text>88%</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import user from '@/api/user.js'; |
||||
|
import AQTabber from "@/components/AQ/AQTabber.vue" |
||||
|
|
||||
|
|
||||
|
export default { |
||||
|
components: { |
||||
|
AQTabber, |
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
formData:{}, |
||||
|
|
||||
|
//课程下拉菜单相关 |
||||
|
show_course:false,//是否显示下拉菜单 |
||||
|
//课程下拉菜单 |
||||
|
course_name:'课程',//选中的下拉菜单名称 |
||||
|
options_course: [ |
||||
|
{ |
||||
|
text: '请选择课程', |
||||
|
value: '', |
||||
|
checked: true |
||||
|
}, { |
||||
|
text: '羽毛球课程1', |
||||
|
value: '1' |
||||
|
}, { |
||||
|
text: '篮球课程2', |
||||
|
value: '2' |
||||
|
} |
||||
|
], |
||||
|
|
||||
|
//课室下拉菜单相关 |
||||
|
show_classroom:false,//是否显示下拉菜单 |
||||
|
//课程下拉菜单 |
||||
|
classroom_name:'课室',//选中的下拉菜单名称 |
||||
|
options_classroom: [ |
||||
|
{ |
||||
|
text: '请选择课室', |
||||
|
value: '', |
||||
|
checked: true |
||||
|
}, { |
||||
|
text: '羽毛球201', |
||||
|
value: '1' |
||||
|
}, { |
||||
|
text: '篮球室101', |
||||
|
value: '2' |
||||
|
} |
||||
|
], |
||||
|
} |
||||
|
}, |
||||
|
onLoad() { |
||||
|
}, |
||||
|
methods: { |
||||
|
//选中课程下拉菜单点击事件 |
||||
|
clickCourse(e){ |
||||
|
console.log(e) |
||||
|
this.course_name = e.text |
||||
|
this.show_course = true |
||||
|
}, |
||||
|
//显示下拉菜单 |
||||
|
filterTapCourse() { |
||||
|
//显示下拉框 |
||||
|
this.$refs.ref_course.show() |
||||
|
this.show_course = true; |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
|
||||
|
//选中课室 |
||||
|
clickClassroom(e){ |
||||
|
console.log(e) |
||||
|
this.classroom_name = e.text |
||||
|
this.show_classroom = true |
||||
|
}, |
||||
|
//显示课室下拉菜单 |
||||
|
filterTapClassroom() { |
||||
|
//显示下拉框 |
||||
|
this.$refs.ref_classroom.show() |
||||
|
this.show_classroom = true; |
||||
|
}, |
||||
|
|
||||
|
//打开课时详情页 |
||||
|
openViewCourseInfo(item){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/course/info' |
||||
|
}) |
||||
|
}, |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
|
||||
|
.main_box{ |
||||
|
background: #292929 ; |
||||
|
} |
||||
|
|
||||
|
//自定义导航栏 |
||||
|
.navbar_section{ |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
background: #29d3b4; |
||||
|
.title{ |
||||
|
padding: 20rpx 0; |
||||
|
font-size: 30rpx; |
||||
|
color: #315d55; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.main_section{ |
||||
|
min-height: 100vh; |
||||
|
background: #292929 100%; |
||||
|
padding: 0 24rpx; |
||||
|
padding-top: 32rpx; |
||||
|
padding-bottom: 150rpx; |
||||
|
font-size: 28rpx; |
||||
|
.section_1{ |
||||
|
color: #fff; |
||||
|
font-size: 24rpx; |
||||
|
.ul{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
gap: 56rpx; |
||||
|
.li{ |
||||
|
.title{ |
||||
|
color: #fff; |
||||
|
font-size: 24rpx; |
||||
|
} |
||||
|
.box{ |
||||
|
margin-top: 24rpx; |
||||
|
padding: 36rpx 32rpx 28rpx 44rpx; |
||||
|
width: 700rpx; |
||||
|
border-radius: 14rpx; |
||||
|
background-color: #fff; |
||||
|
color: #333333FF; |
||||
|
font-size: 26rpx; |
||||
|
.top{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: center; |
||||
|
.top_item{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
gap: 12rpx; |
||||
|
.num{ |
||||
|
font-size: 56rpx; |
||||
|
color: #29D3B4; |
||||
|
} |
||||
|
.explain{ |
||||
|
font-size: 24rpx; |
||||
|
color: #AAAAAA; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.bottom{ |
||||
|
margin-top: 34rpx; |
||||
|
font-size: 24rpx; |
||||
|
text{ |
||||
|
margin-left: 15rpx; |
||||
|
color: #29D3B4; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
</style> |
||||
@ -0,0 +1,53 @@ |
|||||
|
<!--设置页--> |
||||
|
<template> |
||||
|
<view class="assemble"> |
||||
|
<view style="height: 30rpx;"></view> |
||||
|
<view class="option" @click="update_pass()">修改密码</view> |
||||
|
<view class="option" @click="privacy_agreement(1)">用户协议</view> |
||||
|
<view class="option" @click="privacy_agreement(2)">隐私策略</view> |
||||
|
<view class="option">清空缓存</view> |
||||
|
|
||||
|
<view style="width:90%;margin: 60rpx auto;"> |
||||
|
<fui-button background="#29d3b4">退出账号</fui-button> |
||||
|
</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
export default { |
||||
|
data() { |
||||
|
return { |
||||
|
|
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
privacy_agreement(type){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/common/privacy_agreement?type='+type |
||||
|
}) |
||||
|
}, |
||||
|
update_pass(){ |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/coach/my/update_pass' |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
.assemble{ |
||||
|
width: 100%; |
||||
|
height: 100vh; |
||||
|
background: #333333; |
||||
|
} |
||||
|
.option{ |
||||
|
margin-bottom: 20rpx; |
||||
|
background: #404045; |
||||
|
width: 100%; |
||||
|
font-size: 28rpx; |
||||
|
color: #fff; |
||||
|
line-height: 56rpx; |
||||
|
padding: 20rpx 0 20rpx 100rpx; |
||||
|
} |
||||
|
</style> |
||||
@ -0,0 +1,107 @@ |
|||||
|
<!--修改密码--> |
||||
|
<template> |
||||
|
<view> |
||||
|
<view class="title"> |
||||
|
<view :class="{'green-text': tset_style === 1}">1.验证手机号码</view> |
||||
|
<view :class="{'green-text': tset_style === 2}">2.设置新密码</view> |
||||
|
</view> |
||||
|
<view :style="{'background-color':'#fff','width':'100%','height':'100vh' }"> |
||||
|
<view style="width: 95%;height: 30rpx;"></view> |
||||
|
<view v-if="tset_style == 1"> |
||||
|
<view class="describe"> |
||||
|
为保障您的账号安全,修改密码前请填写原密码 |
||||
|
</view> |
||||
|
<view style="width: 95%;margin:30rpx auto;"> |
||||
|
<fui-input borderTop placeholder="请输入原登录密码" v-model="user" @input="input" |
||||
|
backgroundColor="#f2f2f2"></fui-input> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view v-if="tset_style == 2"> |
||||
|
<view style="width: 95%;margin:30rpx auto;"> |
||||
|
<fui-input borderTop placeholder="请设置6-20位新的登录密码" v-model="user" @input="input" |
||||
|
backgroundColor="#f2f2f2"></fui-input> |
||||
|
</view> |
||||
|
<view style="width: 95%;margin: auto;"> |
||||
|
<fui-input borderTop :padding="['20rpx','32rpx']" v-model="code" placeholder="请再次输入新的登录密码" @input="input" |
||||
|
backgroundColor="#f2f2f2"> |
||||
|
</fui-input> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view style="width: 95%;margin:60rpx auto;"> |
||||
|
<fui-button background="#00be8c" radius="5rpx" @click="nextStep" v-if="tset_style == 1">下一步</fui-button> |
||||
|
<fui-button background="#00be8c" radius="5rpx" @click="submit" v-if="tset_style == 2">提交</fui-button> |
||||
|
<view style="width: 95%;margin:60rpx auto;"> |
||||
|
<fui-button background="#fff" radius="5rpx" @click="forgot" color="#999999" v-if="tset_style == 1">忘记原密码</fui-button> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
export default { |
||||
|
data() { |
||||
|
return { |
||||
|
code: '', |
||||
|
user: '', |
||||
|
tset_style: 1, |
||||
|
} |
||||
|
}, |
||||
|
onLoad() { |
||||
|
|
||||
|
}, |
||||
|
methods: { |
||||
|
sendCode() { |
||||
|
//延时为了效果展示 |
||||
|
setTimeout(() => { |
||||
|
//发送短信 |
||||
|
//... |
||||
|
//success方法:短信发送成功后将组件改为倒计时状态 |
||||
|
this.$refs.fui_cdv && this.$refs.fui_cdv.success() |
||||
|
}, 800) |
||||
|
}, |
||||
|
nextStep(){ |
||||
|
this.tset_style = 2 |
||||
|
}, |
||||
|
forgot() { |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/student/login/forgot' |
||||
|
}) |
||||
|
}, |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="less" scoped> |
||||
|
page { |
||||
|
font-weight: normal; |
||||
|
} |
||||
|
|
||||
|
.fui-section__title { |
||||
|
margin-left: 32rpx; |
||||
|
} |
||||
|
|
||||
|
.fui-left__icon { |
||||
|
padding-right: 24rpx; |
||||
|
} |
||||
|
|
||||
|
.title { |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
align-items: center; |
||||
|
height: 100rpx; |
||||
|
width: 100%; |
||||
|
background-color: #fff; |
||||
|
font-size: 26rpx; |
||||
|
border: 4rpx #f5f5f5 solid; |
||||
|
} |
||||
|
|
||||
|
.green-text{ |
||||
|
color: #36d6b9; |
||||
|
} |
||||
|
|
||||
|
.describe{ |
||||
|
color: #999999; |
||||
|
padding-left: 30rpx; |
||||
|
} |
||||
|
</style> |
||||
Loading…
Reference in new issue