Commit 70cd1325 by tangjiale

更新价格修改需求

parent 46dfb092
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* @eMail: 932055106@qq.com * @eMail: 932055106@qq.com
* @Date: 2022-06-06 14:11:05 * @Date: 2022-06-06 14:11:05
* @LastEditors: tangjiale * @LastEditors: tangjiale
* @LastEditTime: 2022-06-23 09:46:10 * @LastEditTime: 2022-06-30 11:20:38
*/ */
const app = getApp() const app = getApp()
var API = require("../../utils/request.js"); var API = require("../../utils/request.js");
...@@ -50,7 +50,7 @@ Page({ ...@@ -50,7 +50,7 @@ Page({
queryRecomdList(){ queryRecomdList(){
let that = this let that = this
//type 1正课 2体验课 //type 1正课 2体验课
API.getData('/px/course/getMobileCourseList', {page:1,size:2,type:2}, function (res) { API.getData('/px/course/getMobileCourseList', {page:1,size:2,type:2}, function (res) {
if(res && res.data && res.data.length){ if(res && res.data && res.data.length){
res.data.forEach(item => { res.data.forEach(item => {
...@@ -67,7 +67,7 @@ Page({ ...@@ -67,7 +67,7 @@ Page({
API.getData('/px/course/getMobileCourseList', { API.getData('/px/course/getMobileCourseList', {
page:that.data.page, page:that.data.page,
size:10, size:10,
type:1, //课程类型(1:正课,2:体验课) type:1, //课程类型(1:正课,2:体验课)
}, (res) => { }, (res) => {
that.data.loading = true that.data.loading = true
if(res.data && res.data.length){ if(res.data && res.data.length){
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
<view class="content" style="margin-top:60rpx"> <view class="content" style="margin-top:60rpx">
<view class="content-head"> <view class="content-head">
<view class="content-title">最热门班课</view> <view class="content-title">热门正价课</view>
<view class="content-btn" data-type="1" bindtap="gotoList">查看更多</view> <view class="content-btn" data-type="1" bindtap="gotoList">查看更多</view>
</view> </view>
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* @eMail: 932055106@qq.com * @eMail: 932055106@qq.com
* @Date: 2022-06-06 16:44:43 * @Date: 2022-06-06 16:44:43
* @LastEditors: tangjiale * @LastEditors: tangjiale
* @LastEditTime: 2022-06-28 10:57:46 * @LastEditTime: 2022-07-01 10:14:48
*/ */
var app = getApp(); var app = getApp();
var API = require("../../utils/request.js"); var API = require("../../utils/request.js");
...@@ -41,10 +41,10 @@ Page({ ...@@ -41,10 +41,10 @@ Page({
title:'体验课订购',event:'order', title:'体验课订购',event:'order',
icon:'/images/course/dk-icon.png' icon:'/images/course/dk-icon.png'
},{ },{
title:'课报名',event:'enroll', title:'正价课报名',event:'enroll',
icon:'/images/course/bm-icon.png' icon:'/images/course/bm-icon.png'
},{ },{
title:'课记录',event:'sales', title:'课记录',event:'sales',
icon:'/images/course/sf-icon.png' icon:'/images/course/sf-icon.png'
},{ },{
title:'我的收藏',event:'collect', title:'我的收藏',event:'collect',
...@@ -137,12 +137,12 @@ Page({ ...@@ -137,12 +137,12 @@ Page({
url: '/subPages/course/attempt-list/attempt-list' url: '/subPages/course/attempt-list/attempt-list'
}) })
break break
case 'enroll': //课报名 case 'enroll': //正价课报名
wx.navigateTo({ wx.navigateTo({
url: '/subPages/course/join-list/join-list' url: '/subPages/course/join-list/join-list'
}) })
break break
case 'sales': //课记录 case 'sales': //课记录
wx.navigateTo({ wx.navigateTo({
url: '/subPages/course/sales-list/sales-list' url: '/subPages/course/sales-list/sales-list'
}) })
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* @eMail: 932055106@qq.com * @eMail: 932055106@qq.com
* @Date: 2022-06-06 14:15:22 * @Date: 2022-06-06 14:15:22
* @LastEditors: tangjiale * @LastEditors: tangjiale
* @LastEditTime: 2022-06-22 16:25:54 * @LastEditTime: 2022-07-01 10:14:24
*/ */
var API = require("../../utils/request"); var API = require("../../utils/request");
Page({ Page({
...@@ -19,7 +19,7 @@ Page({ ...@@ -19,7 +19,7 @@ Page({
areaList:[], //所属校区列表 areaList:[], //所属校区列表
popupShow:false, popupShow:false,
listActive:2, //1正课 2体验课 listActive:2, //1正课 2体验课
list:[], list:[],
page:0, page:0,
...@@ -33,7 +33,7 @@ Page({ ...@@ -33,7 +33,7 @@ Page({
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad: function (options) { onLoad: function (options) {
//1正课 2体验课 //1正课 2体验课
this.setData({listActive:2,page:0,list:[],loading:false,finish:false},()=>{ this.setData({listActive:2,page:0,list:[],loading:false,finish:false},()=>{
this.queryCourseList() this.queryCourseList()
}) })
...@@ -85,7 +85,7 @@ Page({ ...@@ -85,7 +85,7 @@ Page({
url: '/subPages/organ/course-list/course-list?courseType=2' url: '/subPages/organ/course-list/course-list?courseType=2'
}) })
break break
case 2: //课报名 case 2: //正价课报名
wx.navigateTo({ wx.navigateTo({
url: '/subPages/organ/course-list/course-list?courseType=1' url: '/subPages/organ/course-list/course-list?courseType=1'
}) })
...@@ -130,7 +130,7 @@ Page({ ...@@ -130,7 +130,7 @@ Page({
page:that.data.page, page:that.data.page,
schId:that.data.areaList[that.data.areaActive] && that.data.areaList[that.data.areaActive].value || '', schId:that.data.areaList[that.data.areaActive] && that.data.areaList[that.data.areaActive].value || '',
size:10, size:10,
type:that.data.listActive, //课程类型(1:正课,2:体验课) type:that.data.listActive, //课程类型(1:正课,2:体验课)
}, (res) => { }, (res) => {
if(res && res.data && res.data.length){ if(res && res.data && res.data.length){
res.data.forEach(item => { res.data.forEach(item => {
......
...@@ -19,11 +19,11 @@ ...@@ -19,11 +19,11 @@
</view> </view>
<view class="tabs-item" data-link="2" bindtap="goJump"> <view class="tabs-item" data-link="2" bindtap="goJump">
<image class="tabs-img" src="/images/organ/index-tab2.png"/> <image class="tabs-img" src="/images/organ/index-tab2.png"/>
<view class="tabs-text">课报名</view> <view class="tabs-text">正价课报名</view>
</view> </view>
<view class="tabs-item" data-link="3" bindtap="goJump"> <view class="tabs-item" data-link="3" bindtap="goJump">
<image class="tabs-img" src="/images/organ/index-tab3.png"/> <image class="tabs-img" src="/images/organ/index-tab3.png"/>
<view class="tabs-text">教练课</view> <view class="tabs-text">教练课</view>
</view> </view>
<view class="tabs-item" data-link="4" bindtap="goJump"> <view class="tabs-item" data-link="4" bindtap="goJump">
<image class="tabs-img" src="/images/organ/index-tab4.png"/> <image class="tabs-img" src="/images/organ/index-tab4.png"/>
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
<view class="count-value">{{courseNums.expNum || 0}}</view> <view class="count-value">{{courseNums.expNum || 0}}</view>
</view> </view>
<view class="count-item" data-link="2" bindtap="goJump"> <view class="count-item" data-link="2" bindtap="goJump">
<view class="count-title">课报名</view> <view class="count-title">正价课报名</view>
<view class="count-value">{{courseNums.normalNum || 0}}</view> <view class="count-value">{{courseNums.normalNum || 0}}</view>
</view> </view>
<view class="count-item" data-link="4" bindtap="goJump"> <view class="count-item" data-link="4" bindtap="goJump">
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
<view class="btm-tabs-bg"> <view class="btm-tabs-bg">
<view class="list-flex"> <view class="list-flex">
<view class="list-tabs {{listActive==2?'list-tabs-active':''}}" data-type="2" bindtap="changeList">体验课</view> <view class="list-tabs {{listActive==2?'list-tabs-active':''}}" data-type="2" bindtap="changeList">体验课</view>
<view class="list-tabs {{listActive==1?'list-tabs-active':''}}" data-type="1" bindtap="changeList">正式班课</view> <view class="list-tabs {{listActive==1?'list-tabs-active':''}}" data-type="1" bindtap="changeList">正课</view>
</view> </view>
</view> </view>
......
...@@ -30,6 +30,13 @@ ...@@ -30,6 +30,13 @@
"name": "", "name": "",
"pathName": "subPages/course/detail/detail", "pathName": "subPages/course/detail/detail",
"query": "id=17118", "query": "id=17118",
"launchMode": "default",
"scene": null
},
{
"name": "",
"pathName": "subPages/organ/course-list/course-list",
"query": "courseType=1",
"scene": null, "scene": null,
"launchMode": "default" "launchMode": "default"
} }
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<van-swipe-cell right-width="{{ 80 }}"> <van-swipe-cell right-width="{{ 80 }}">
<view class="course-ctn flex-c" bindtap="gotoDetail" data-id="{{item.id}}"> <view class="course-ctn flex-c" bindtap="gotoDetail" data-id="{{item.id}}">
<view class="course-img"> <view class="course-img">
<view class="course-type {{item.type==1?'gree-c':'yell-c'}}">{{item.type==1?'正式班课':'体验课'}}</view> <view class="course-type {{item.type==1?'gree-c':'yell-c'}}">{{item.type==1?'正课':'体验课'}}</view>
<image class="course-img" mode="aspectFill" src="{{item.poster}}" /> <image class="course-img" mode="aspectFill" src="{{item.poster}}" />
<view class="course-nums">{{item.type == 1 ? '已购'+ (item.peopleNum || 0) +'人' : (item.peopleNum || 0)+'已体验'}}</view> <view class="course-nums">{{item.type == 1 ? '已购'+ (item.peopleNum || 0) +'人' : (item.peopleNum || 0)+'已体验'}}</view>
</view> </view>
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
</view> </view>
<view class="line-item flex-s"> <view class="line-item flex-s">
<view class="flex-c"> <view class="flex-c">
<view class="line-item-title">适用校区</view> <view class="line-item-title">上课校区</view>
<picker bindchange="changeSchools" value="{{schoolActive}}" range="{{detail.schoolList}}" range-key="name"> <picker bindchange="changeSchools" value="{{schoolActive}}" range="{{detail.schoolList}}" range-key="name">
<view class="flex-c"> <view class="flex-c">
......
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
"usingComponents": { "usingComponents": {
"empty":"/components/empty/empty" "empty":"/components/empty/empty"
}, },
"navigationBarTitleText": "课报名", "navigationBarTitleText": "正价课报名",
"enablePullDownRefresh":true "enablePullDownRefresh":true
} }
\ No newline at end of file
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* @eMail: 932055106@qq.com * @eMail: 932055106@qq.com
* @Date: 2022-06-11 17:38:58 * @Date: 2022-06-11 17:38:58
* @LastEditors: tangjiale * @LastEditors: tangjiale
* @LastEditTime: 2022-06-22 14:38:29 * @LastEditTime: 2022-06-30 11:21:12
*/ */
var API = require("../../../utils/request.js"); var API = require("../../../utils/request.js");
Page({ Page({
...@@ -30,7 +30,7 @@ Page({ ...@@ -30,7 +30,7 @@ Page({
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow: function () { onShow: function () {
//1正课 2体验课 //1正课 2体验课
this.setData({type:this.options.type || 1,page:0,list:[],loading:false,finish:false},()=>{ this.setData({type:this.options.type || 1,page:0,list:[],loading:false,finish:false},()=>{
this.queryCourseList() this.queryCourseList()
wx.stopPullDownRefresh() wx.stopPullDownRefresh()
...@@ -55,7 +55,7 @@ Page({ ...@@ -55,7 +55,7 @@ Page({
API.getData('/px/course/getMobileCourseList', { API.getData('/px/course/getMobileCourseList', {
page:that.data.page, page:that.data.page,
size:10, size:10,
type:that.data.type, //课程类型(1:正课,2:体验课) type:that.data.type, //课程类型(1:正课,2:体验课)
}, (res) => { }, (res) => {
if(res && res.data && res.data.length){ if(res && res.data && res.data.length){
res.data.forEach(item => { res.data.forEach(item => {
......
<!-- 课程列表(体验课/课) --> <!-- 课程列表(体验课/正价课) -->
<view class="page-bg"> <view class="page-bg">
<view class="list" wx:if="{{list && list.length}}"> <view class="list" wx:if="{{list && list.length}}">
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
</view> </view>
</block> </block>
<!-- 课 --> <!-- 正价课 -->
<block wx:if="{{type == 1}}"> <block wx:if="{{type == 1}}">
<view class="waterfall-flex"> <view class="waterfall-flex">
<view class="flex-item"> <view class="flex-item">
......
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
"usingComponents": { "usingComponents": {
"empty":"/components/empty/empty" "empty":"/components/empty/empty"
}, },
"navigationBarTitleText": "课记录", "navigationBarTitleText": "课记录",
"enablePullDownRefresh":true "enablePullDownRefresh":true
} }
\ No newline at end of file
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<view class="flex-s"> <view class="flex-s">
<view class="course-time"><text class="blod-c">{{item.type==1?'报名时间':'订购时间'}}</text>:{{item.courseTime}}</view> <view class="course-time"><text class="blod-c">{{item.type==1?'报名时间':'订购时间'}}</text>:{{item.courseTime}}</view>
<!-- 0:待支付,1:已订购,2:待退款,3:已退款,4:已关闭) --> <!-- 0:待支付,1:已订购,2:待退款,3:已退款,4:已关闭) -->
<view class="course-state {{['','gree-c','yell-c'][item.type]}}">{{['','正式班课','体验课'][item.type]}}</view> <view class="course-state {{['','gree-c','yell-c'][item.type]}}">{{['','正课','体验课'][item.type]}}</view>
</view> </view>
<view class="course-ctn flex-c"> <view class="course-ctn flex-c">
......
...@@ -7,7 +7,8 @@ Page({ ...@@ -7,7 +7,8 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
courseType:'', //1正式课 2体验课 courseType:'', //1正价课 2体验课
buttonsList:[], //用户操作正价课按钮权限列表
areaActive:0, areaActive:0,
areaList:[], //所属校区列表 areaList:[], //所属校区列表
...@@ -27,7 +28,10 @@ Page({ ...@@ -27,7 +28,10 @@ Page({
loading:false, loading:false,
finish:false, finish:false,
orderCount:{} orderCount:{},
activeUser:{}, //修改价格选中对象
pricePopup:false,
}, },
/** /**
...@@ -42,16 +46,22 @@ Page({ ...@@ -42,16 +46,22 @@ Page({
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow: function () { onShow: function () {
//1正课 2体验课 //1正课 2体验课
let courseType = this.options.courseType || 1 let courseType = this.options.courseType || 1
let stateList = courseType == 1 ? [{name:'全部',value:''},{name:'待确认',value:0},{name:'已报名',value:1},{name:'待取消',value:2},{name:'已取消',value:3}] : [{name:'全部',value:''},{name:'待支付',value:0},{name:'已订购',value:1},{name:'待退款',value:2}, let stateList = courseType == 1 ? [{name:'全部',value:''},{name:'待确认',value:0},{name:'已报名',value:1},{name:'待取消',value:2},{name:'已取消',value:3}] : [{name:'全部',value:''},{name:'待支付',value:0},{name:'已订购',value:1},{name:'待退款',value:2},
{name:'已退款',value:3},{name:'已关闭',value:4}] {name:'已退款',value:3},{name:'已关闭',value:4}]
this.setData({courseType:courseType,stateList:stateList}) this.setData({courseType:courseType,stateList:stateList})
wx.setNavigationBarTitle({ wx.setNavigationBarTitle({
title: courseType== 1? '课报名' : '体验课订单' title: courseType== 1? '正价课报名' : '体验课订单'
}); });
//1正式课 2体验课
//正价课报名获取用户操作权限列表
if(courseType == 1){
this.getUserButtons()
}
//1正价课 2体验课
this.setData({page:0,list:[],loading:false,finish:false},()=>{ this.setData({page:0,list:[],loading:false,finish:false},()=>{
this.queryCourseList() this.queryCourseList()
this.getExpCourseCount() this.getExpCourseCount()
...@@ -127,7 +137,7 @@ Page({ ...@@ -127,7 +137,7 @@ Page({
let param = { let param = {
schId:this.data.areaList[this.data.areaActive] && this.data.areaList[this.data.areaActive].value || '' schId:this.data.areaList[this.data.areaActive] && this.data.areaList[this.data.areaActive].value || ''
} }
// 1:员工课 2:员工体验课 // 1:员工正价课 2:员工体验课
let url = this.data.courseType == 1 ? '/px/course/getNorCourseCount' : '/px/course/getExpCourseCount' let url = this.data.courseType == 1 ? '/px/course/getNorCourseCount' : '/px/course/getExpCourseCount'
API.getData(url,param, (res) => { API.getData(url,param, (res) => {
that.setData({orderCount:res.data}) that.setData({orderCount:res.data})
...@@ -196,7 +206,7 @@ Page({ ...@@ -196,7 +206,7 @@ Page({
duration: 2000 duration: 2000
}); });
setTimeout(() =>{ setTimeout(() =>{
//1正课 2体验课 //1正课 2体验课
that.setData({page:0,list:[],loading:false,finish:false},()=>{ that.setData({page:0,list:[],loading:false,finish:false},()=>{
that.queryCourseList() that.queryCourseList()
that.getExpCourseCount() that.getExpCourseCount()
...@@ -211,11 +221,24 @@ Page({ ...@@ -211,11 +221,24 @@ Page({
}) })
}, },
//bmStatus 1:确认报名,2:不同意取消报名,3:同意取消报名 //bmStatus 1:确认报名,2:不同意取消报名,3:同意取消报名
//buttonId 1:确认报名,2:同意取消报名,3:不同意取消报名 4修改价格
updateBmStatus(e){ updateBmStatus(e){
let that = this let that = this
let {data,event} = e.currentTarget.dataset let {data,event} = e.currentTarget.dataset
let url = this.data.courseType == 1 ? '/px/course/updateBmStatus' : '/px/course/doRefund' let url = this.data.courseType == 1 ? '/px/course/updateBmStatus' : '/px/course/doRefund'
let param = {} let param = {}
//修改价格弹窗
if(event == 4){
let {stuName='',age=1,courseName='',phone='',cost=0,bmId = ''} = data
this.setData({pricePopup:true,activeUser:{
stuName,age,phone,courseName,bmId,
cost:cost / 100,
_cost:cost / 100
}})
return
}
event = event==2?3:event==3?2:event
if(this.data.courseType == 1){ if(this.data.courseType == 1){
param = { param = {
bmId:data.bmId, bmId:data.bmId,
...@@ -240,7 +263,7 @@ Page({ ...@@ -240,7 +263,7 @@ Page({
duration: 2000 duration: 2000
}); });
setTimeout(() =>{ setTimeout(() =>{
//1正课 2体验课 //1正课 2体验课
that.setData({page:0,list:[],loading:false,finish:false},()=>{ that.setData({page:0,list:[],loading:false,finish:false},()=>{
that.queryCourseList() that.queryCourseList()
that.getExpCourseCount() that.getExpCourseCount()
...@@ -254,8 +277,52 @@ Page({ ...@@ -254,8 +277,52 @@ Page({
} }
}) })
}, },
payCourse(e){
getUserButtons(){
let that = this
API.getData('/px/user/getUserButtonList',{pageId:1}, (res) => {
that.setData({buttonsList:res.data || []})
})
},
closePricePopup(){
this.setData({activeUser:{},pricePopup:false})
},
inputText(e){
let {value} = e.detail
this.data.activeUser._cost = value
this.setData({
activeUser:this.data.activeUser
})
},
//正价课改价
emitPrice(){
let that = this
let data = this.data.activeUser
if(!data._cost){
wx.showToast({ title: '请输入修改金额', icon: 'none' });
return
}
let param = {
bmId:data.bmId,
cost:data._cost * 100
}
API.getData('/px/course/changeBmCost',param, (res) => {
if(res.code && res.code == 200){
wx.showToast({
title: '操作成功',
icon: 'success',
duration: 2000
});
setTimeout(() =>{
//1正价课 2体验课
that.setData({page:0,list:[],loading:false,finish:false,activeUser:{},pricePopup:false},()=>{
that.queryCourseList()
that.getExpCourseCount()
})
},1500)
}
})
}, },
/** /**
* 用户点击右上角分享 * 用户点击右上角分享
......
<!-- 机构职员 体验课/正课 列表 --> <!-- 机构职员 体验课/正课 列表 -->
<view class="page-bg"> <view class="page-bg">
<van-sticky z-index="99"> <van-sticky z-index="99">
...@@ -109,13 +109,35 @@ ...@@ -109,13 +109,35 @@
<view class="course-btm" wx:if="{{courseType == 1}}"> <view class="course-btm" wx:if="{{courseType == 1}}">
<!-- bmStatus (0:待确认报名,1:已确认报名,2:待取消报名,3:已取消报名) --> <!-- bmStatus (0:待确认报名,1:已确认报名,2:待取消报名,3:已取消报名) -->
<!-- <view class="cannal-btn" data-data="{{item}}" data-event='2' bindtap="doRefund">拒绝退款</view> --> <!-- buttonId (1:确认报名,2:同意取消,2:不同意取消,4:修改价格)-->
<view class="pay-btn" wx:if="{{item.bmStatus == 0}}" data-data="{{item}}" data-event='1' bindtap="updateBmStatus">确认报名</view> <view class="{{['','pay-btn','pay-btn','cannal-btn','pay-btn'][btn.buttonId]}}" wx:for-item="btn" wx:for="{{buttonsList}}"
<view class="cannal-btn" wx:if="{{item.bmStatus == 2}}" data-data="{{item}}" data-event='2' bindtap="updateBmStatus">不同意取消</view> wx:if="{{ (btn.buttonId == 1 && item.bmStatus == 0) || (btn.buttonId == 4 && (item.bmStatus == 0 || item.bmStatus == 1)) || (item.bmStatus == 2 && (btn.buttonId == 2 || btn.buttonId == 3))}}"
<view class="pay-btn" wx:if="{{item.bmStatus == 2}}" data-data="{{item}}" data-event='3' bindtap="updateBmStatus">同意取消</view> data-data="{{item}}" data-event="{{btn.buttonId}}" bindtap="updateBmStatus">{{btn.buttonName}}</view>
</view> </view>
</view> </view>
<t-popup type="center" show="{{pricePopup}}" closeOnClickOverlay="{{false}}">
<view class="p-popup">
<view class="p-title">报名价格修改</view>
<view class="buy-name">
{{activeUser.stuName}}<text class="age-c">{{activeUser.age || 1}}岁</text>{{activeUser.phone || ''}}
</view>
<view class="p-course">{{activeUser.courseName}}</view>
<view class="p-course-name">课程价格:
<text class="p-prices">¥{{activeUser.cost}}</text>
</view>
<view class="p-input-bg">
<view class="input-tip">修改金额</view>
<view class="p-input">
<input type="digit" value="{{activeUser._cost}}" data-type="weight" bindinput="inputText" placeholder="请输入价格" placeholder-class="placeholder-c"></input>
</view>
</view>
<view class="flex-s">
<view class="p-cannal" bindtap="closePricePopup">取消</view>
<view class="p-emit" bindtap="emitPrice">确认修改</view>
</view>
</view>
</t-popup>
</block> </block>
<block wx:if="{{!list.length && finish}}"> <block wx:if="{{!list.length && finish}}">
......
...@@ -325,4 +325,88 @@ ...@@ -325,4 +325,88 @@
border-radius: 32rpx; border-radius: 32rpx;
padding: 10rpx 30rpx; padding: 10rpx 30rpx;
margin-left: 20rpx; margin-left: 20rpx;
}
.p-popup{
width: 630rpx;
background-color: #fff;
border-radius: 24rpx;
padding: 30rpx 30rpx 40rpx 30rpx;
}
.p-title{
margin-bottom: 30rpx;
text-align: center;
font-size: 36rpx;
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold;
color: #353535;
}
.p-course{
margin-top: 20rpx;
font-size: 28rpx;
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold;
color: rgba(0, 0, 0, 0.9);
display: -webkit-box;
overflow: hidden;
text-overflow: ellipsis;
word-wrap: break-word;
white-space: normal !important;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.p-course-name{
margin-top: 22rpx;
font-size: 24rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: rgba(0, 0, 0, 0.5);
}
.p-prices{
font-size: 24rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: rgba(0, 0, 0, 0.9);
}
.p-input-bg{
display: flex;
align-items: center;
margin-top: 40rpx;
width: 100%;
}
.input-tip{
width: 140rpx;
flex: none;
}
.p-input{
width: calc(100% - 160rpx);
background: #F8F9FA;
border-radius: 16rpx;
padding: 24rpx;
margin-left: 20rpx;
}
.p-cannal{
padding: 22rpx 0rpx;
margin-top: 60rpx;
background-color: rgba(255,129,30,0.3);
box-shadow: 0px 6px 12px 2px rgba(0, 0, 0, 0.08);
border-radius: 50rpx;
text-align: center;
font-size: 34rpx;
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold;
color: #FF811E;
width: calc((100% - 18rpx) / 2);
}
.p-emit{
padding: 22rpx 0rpx;
margin-top: 60rpx;
background: #FF811E;
box-shadow: 0px 6px 12px 2px rgba(0, 0, 0, 0.08);
border-radius: 50rpx;
text-align: center;
font-size: 34rpx;
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold;
color: #FFFFFF;
width: calc((100% - 18rpx) / 2);
} }
\ No newline at end of file
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* @eMail: 932055106@qq.com * @eMail: 932055106@qq.com
* @Date: 2022-06-22 10:56:10 * @Date: 2022-06-22 10:56:10
* @LastEditors: tangjiale * @LastEditors: tangjiale
* @LastEditTime: 2022-06-22 15:46:50 * @LastEditTime: 2022-06-30 11:15:26
*/ */
...@@ -51,7 +51,7 @@ Page({ ...@@ -51,7 +51,7 @@ Page({
this.setData({list:this.data.list}) this.setData({list:this.data.list})
}, },
//提交课记录 //提交课记录
submitXkResult(){ submitXkResult(){
if(!this.data.active){ if(!this.data.active){
wx.showToast({title: '请选择课次',icon: 'none',}); wx.showToast({title: '请选择课次',icon: 'none',});
...@@ -82,7 +82,7 @@ Page({ ...@@ -82,7 +82,7 @@ Page({
API.request('/px/course/submitXkResult', { API.request('/px/course/submitXkResult', {
paramVoList:param paramVoList:param
},function(res){ },function(res){
wx.showToast({title: '课成功',icon: 'none',}); wx.showToast({title: '课成功',icon: 'none',});
setTimeout(() =>{ setTimeout(() =>{
that.onShow() that.onShow()
},1000) },1000)
......
{ {
"navigationBarTitleText": "课详情", "navigationBarTitleText": "课详情",
"usingComponents": { "usingComponents": {
} }
......
<!-- 按课程课详情 --> <!-- 按课程课详情 -->
<view class="page-bg" wx:if="{{detail}}"> <view class="page-bg" wx:if="{{detail}}">
<view class="course-card"> <view class="course-card">
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* @eMail: 932055106@qq.com * @eMail: 932055106@qq.com
* @Date: 2022-06-22 15:55:26 * @Date: 2022-06-22 15:55:26
* @LastEditors: tangjiale * @LastEditors: tangjiale
* @LastEditTime: 2022-06-22 17:15:13 * @LastEditTime: 2022-06-30 11:15:41
*/ */
var API = require("../../../utils/request"); var API = require("../../../utils/request");
Page({ Page({
...@@ -29,7 +29,7 @@ Page({ ...@@ -29,7 +29,7 @@ Page({
onShow: function () { onShow: function () {
let that = this let that = this
API.getData('/px/course/getXkCourseStuInfo', {stuId:this.options.stuId,schId:this.options.schId || ''},function(res){ API.getData('/px/course/getXkCourseStuInfo', {stuId:this.options.stuId,schId:this.options.schId || ''},function(res){
//累计 //累计
let totalHours = 0 let totalHours = 0
if(res.data && res.data.xkCourseStuVoList && res.data.xkCourseStuVoList.length){ if(res.data && res.data.xkCourseStuVoList && res.data.xkCourseStuVoList.length){
res.data.xkCourseStuVoList.forEach(v =>{ res.data.xkCourseStuVoList.forEach(v =>{
...@@ -59,7 +59,7 @@ Page({ ...@@ -59,7 +59,7 @@ Page({
this.setData({list:this.data.list}) this.setData({list:this.data.list})
}, },
//提交课记录 //提交课记录
submitXkResult(){ submitXkResult(){
let idx = this.data.list.findIndex(v => v._check) let idx = this.data.list.findIndex(v => v._check)
if(idx == -1){ if(idx == -1){
...@@ -83,7 +83,7 @@ Page({ ...@@ -83,7 +83,7 @@ Page({
API.request('/px/course/submitXkResult', { API.request('/px/course/submitXkResult', {
paramVoList:param paramVoList:param
},function(res){ },function(res){
wx.showToast({title: '课成功',icon: 'none',}); wx.showToast({title: '课成功',icon: 'none',});
setTimeout(() =>{ setTimeout(() =>{
that.onShow() that.onShow()
},1000) },1000)
......
{ {
"navigationBarTitleText": "课详情", "navigationBarTitleText": "课详情",
"usingComponents": {} "usingComponents": {}
} }
\ No newline at end of file
<!-- 按课程课详情 --> <!-- 按课程课详情 -->
<view class="page-bg" wx:if="{{detail}}"> <view class="page-bg" wx:if="{{detail}}">
...@@ -13,12 +13,12 @@ ...@@ -13,12 +13,12 @@
<view class="course-bg"> <view class="course-bg">
<view class="course-img"> <view class="course-img">
<image class="course-img" src="{{item.poster}}" mode="aspectFill" /> <image class="course-img" src="{{item.poster}}" mode="aspectFill" />
<view class="course-type {{item.type==2?'y-color':'b-color'}}">{{item.type==2?'体验课':'正式班课'}}</view> <view class="course-type {{item.type==2?'y-color':'b-color'}}">{{item.type==2?'体验课':'正课'}}</view>
</view> </view>
<view class="course-info"> <view class="course-info">
<view class="course-title">{{item.courseName}}</view> <view class="course-title">{{item.courseName}}</view>
<view class="course-hour">课时:{{item.classHour || 0}}</view> <view class="course-hour">课时:{{item.classHour || 0}}</view>
<view class="course-use">已课: {{item.usedHour || 0}}课时</view> <view class="course-use">已课: {{item.usedHour || 0}}课时</view>
</view> </view>
</view> </view>
......
...@@ -44,30 +44,29 @@ ...@@ -44,30 +44,29 @@
<view wx:for="{{list}}" data-data="{{item}}" bindtap="gotoDetails" wx:if="{{index%2 == 0}}"> <view wx:for="{{list}}" data-data="{{item}}" bindtap="gotoDetails" wx:if="{{index%2 == 0}}">
<view class="pubu-image"> <view class="pubu-image">
<image class="pubu-images" src="{{item.poster}}" mode="aspectFill" /> <image class="pubu-images" src="{{item.poster}}" mode="aspectFill" />
<view class="pubu-tag {{item.type == 1?'blue-c':'yellow-c'}}">{{item.type == 1?'正式课班':'体验课'}}</view> <view class="pubu-tag {{item.type == 1?'blue-c':'yellow-c'}}">{{item.type == 1?'正价课':'体验课'}}</view>
</view> </view>
<view class="pubu-title">{{item.courseName}} </view> <view class="pubu-title">{{item.courseName}} </view>
<view class="hour-nums"> <view class="hour-nums">
课时: {{item.classHour || 0}} 人数: {{item.peopleNum || 0}} 课时: {{item.classHour || 0}} 人数: {{item.peopleNum || 0}}
</view> </view>
<view class="user-hour">已课:{{item.usedHour || 0}}课时</view> <view class="user-hour">已课:{{item.usedHour || 0}}课时</view>
</view> </view>
</view> </view>
<view class="pubu-bg"> <view class="pubu-bg">
<view wx:for="{{list}}" data-data="{{item}}" bindtap="gotoDetails" wx:if="{{index%2 == 1}}"> <view wx:for="{{list}}" data-data="{{item}}" bindtap="gotoDetails" wx:if="{{index%2 == 1}}">
<view class="pubu-image"> <view class="pubu-image">
<image class="pubu-images" src="{{item.poster}}" mode="aspectFill" /> <image class="pubu-images" src="{{item.poster}}" mode="aspectFill" />
<view class="pubu-tag {{item.type == 1?'blue-c':'yellow-c'}}">{{item.type == 1?'正式课班':'体验课'}}</view> <view class="pubu-tag {{item.type == 1?'blue-c':'yellow-c'}}">{{item.type == 1?'正价课':'体验课'}}</view>
</view> </view>
<view class="pubu-title">{{item.courseName}} </view> <view class="pubu-title">{{item.courseName}} </view>
<view class="hour-nums"> <view class="hour-nums">
课时: {{item.classHour || 0}} 人数: {{item.peopleNum || 0}} 课时: {{item.classHour || 0}} 人数: {{item.peopleNum || 0}}
</view> </view>
<view class="user-hour">已课:{{item.usedHour || 0}}课时</view> <view class="user-hour">已课:{{item.usedHour || 0}}课时</view>
</view> </view>
</view> </view>
</view> </view>
</block> </block>
<!-- 按学生 --> <!-- 按学生 -->
......
...@@ -13,7 +13,7 @@ Page({ ...@@ -13,7 +13,7 @@ Page({
areaList:[], //所属校区列表 areaList:[], //所属校区列表
popupShow:false, popupShow:false,
listActive:2, //1正式班课 2体验订单 listActive:2, //1正课 2体验订单
list:[], list:[],
page:0, page:0,
...@@ -101,7 +101,7 @@ Page({ ...@@ -101,7 +101,7 @@ Page({
let param = { let param = {
page:that.data.page, page:that.data.page,
size:10, size:10,
type:this.data.listActive, //课程类型(1:正课,2:体验课) type:this.data.listActive, //课程类型(1:正课,2:体验课)
schId:this.data.areaList[this.data.areaActive] && this.data.areaList[this.data.areaActive].value || '', //学校id schId:this.data.areaList[this.data.areaActive] && this.data.areaList[this.data.areaActive].value || '', //学校id
} }
if(this.data.type == 0){ if(this.data.type == 0){
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<view class="btm-tabs-bg"> <view class="btm-tabs-bg">
<view class="list-flex"> <view class="list-flex">
<view class="list-tabs {{listActive==2?'list-tabs-active':''}}" data-type="2" bindtap="changeList">体验课</view> <view class="list-tabs {{listActive==2?'list-tabs-active':''}}" data-type="2" bindtap="changeList">体验课</view>
<view class="list-tabs {{listActive==1?'list-tabs-active':''}}" data-type="1" bindtap="changeList">正式班课</view> <view class="list-tabs {{listActive==1?'list-tabs-active':''}}" data-type="1" bindtap="changeList">正课</view>
</view> </view>
</view> </view>
...@@ -62,14 +62,14 @@ ...@@ -62,14 +62,14 @@
</view> </view>
<view class="text-item"> <view class="text-item">
<view class="course-type {{item.type==1?'banke-c':''}}">{{item.type == 1 ? '正课' : '体验课'}}</view> <view class="course-type {{item.type==1?'banke-c':''}}">{{item.type == 1 ? '正课' : '体验课'}}</view>
<view class="coachs" wx:if="{{item._coachs}}">授课教练:{{item._coachs}}</view> <view class="coachs" wx:if="{{item._coachs}}">授课教练:{{item._coachs}}</view>
<view class="teachers" wx:if="{{item._mangers}}">班主任:{{item._mangers}}</view> <view class="teachers" wx:if="{{item._mangers}}">班主任:{{item._mangers}}</view>
</view> </view>
<view class="course-time"> <view class="course-time">
<view class="time-item red-f-c">剩余课时:<text class="blod-c red-f-c">{{item.syKs || 0}}</text></view> <view class="time-item red-f-c">剩余课时:<text class="blod-c red-f-c">{{item.syKs || 0}}</text></view>
<view class="time-item">已课时:<text class="blod-c">{{item.yxKs || 0}}</text></view> <view class="time-item">已课时:<text class="blod-c">{{item.yxKs || 0}}</text></view>
<view class="time-item">总课时:<text class="blod-c">{{item.totalKs || 0}}</text></view> <view class="time-item">总课时:<text class="blod-c">{{item.totalKs || 0}}</text></view>
</view> </view>
</view> </view>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment