parent
0187942f49
commit
c8664c2f01
@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
"usingComponents": {},
|
"usingComponents": {},
|
||||||
|
"navigationBarTitleText": "更多",
|
||||||
"enablePullDownRefresh": true
|
"enablePullDownRefresh": true
|
||||||
}
|
}
|
@ -0,0 +1,154 @@
|
|||||||
|
const AV = require("../../lib/av-live-query-weapp-min")
|
||||||
|
const Presence = require("../../model/presence")
|
||||||
|
const Class = require("../../model/class")
|
||||||
|
const { jsonify } = require('../../utils/leancloudutils');
|
||||||
|
// pages/classsetting/classsetting.js
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
class: null,
|
||||||
|
data: {
|
||||||
|
presences:[],
|
||||||
|
teacher_id: ""
|
||||||
|
},
|
||||||
|
del_class:function(event){
|
||||||
|
class_ = this.class;
|
||||||
|
wx.showModal({
|
||||||
|
title: '确认',
|
||||||
|
content: '删除课程会删除该课程相关的一切数据',
|
||||||
|
success: res=>{
|
||||||
|
if(res.confirm){
|
||||||
|
wx.showLoading({
|
||||||
|
title: '请稍候',
|
||||||
|
})
|
||||||
|
query_presence = new AV.Query("Presence");
|
||||||
|
query_presence.equalTo("class", class_);
|
||||||
|
query_presence.find().then(AV.Object.destroyAll);
|
||||||
|
query_file = new AV.Query("File_");
|
||||||
|
query_file.equalTo("class", class_);
|
||||||
|
query_file.find().then(files=>{
|
||||||
|
filelist = files.map(file=>file.get("fileid"));
|
||||||
|
wx.cloud.deleteFile({
|
||||||
|
fileList: filelist,
|
||||||
|
success: res => {
|
||||||
|
// handle success
|
||||||
|
console.log(res.fileList)
|
||||||
|
},
|
||||||
|
fail: console.error
|
||||||
|
})
|
||||||
|
AV.Object.destroyAll(files)});
|
||||||
|
class_.destroy().then(()=>{
|
||||||
|
wx.hideLoading();
|
||||||
|
wx.showToast({
|
||||||
|
title: '删除成功',
|
||||||
|
});
|
||||||
|
wx.navigateBack({
|
||||||
|
delta: 2
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
del_student:function(event){
|
||||||
|
presence_id = event.currentTarget.dataset.id;
|
||||||
|
pull_presences = this.pull_presences.bind(this);
|
||||||
|
wx.showModal({
|
||||||
|
title: '确认',
|
||||||
|
content: '是否将该学员从课程中移除?',
|
||||||
|
success: res => {
|
||||||
|
if (res.confirm) {
|
||||||
|
AV.Object.createWithoutData("Presence", presence_id).destroy().then(()=>{
|
||||||
|
pull_presences();
|
||||||
|
wx.showToast({
|
||||||
|
title: '移除成功',
|
||||||
|
})}, ()=>{
|
||||||
|
wx.showToast({
|
||||||
|
title: '移除失败',
|
||||||
|
icon:"none"
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
pull_presences:function(){
|
||||||
|
query = new AV.Query("Presence");
|
||||||
|
query.equalTo("class", this.class);
|
||||||
|
query.include("user");
|
||||||
|
query.find().then(this.set_presences);
|
||||||
|
},
|
||||||
|
|
||||||
|
set_presences:function(presences){
|
||||||
|
presences = presences.map(presence=>{
|
||||||
|
user = presence.get("user");
|
||||||
|
presence.set("student_username", user.get("username"));
|
||||||
|
presence.set("student_name", user.get("name"));
|
||||||
|
presence.set("student_id", user.get("objectId"))
|
||||||
|
return presence;
|
||||||
|
})
|
||||||
|
this.setData(jsonify({presences}));
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad: function (options) {
|
||||||
|
class_id = options.class_id;
|
||||||
|
teacher_id = options.teacher_id;
|
||||||
|
console.log(teacher_id);
|
||||||
|
this.class = AV.Object.createWithoutData("Class_", class_id);
|
||||||
|
this.setData({teacher_id: teacher_id});
|
||||||
|
this.pull_presences();
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady: function () {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow: function () {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide: function () {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload: function () {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh: function () {
|
||||||
|
this.pull_presences();
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom: function () {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage: function () {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"navigationBarTitleText": "课程设置",
|
||||||
|
"usingComponents": {},
|
||||||
|
"enablePullDownRefresh": true
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
<!--pages/classsetting/classsetting.wxml-->
|
||||||
|
<view class="container">
|
||||||
|
<view class="student-list">
|
||||||
|
<text>学员列表</text>
|
||||||
|
<block wx:for="{{presences}}" wx:for-item="presence" wx:key="objectId">
|
||||||
|
<view hidden="{{presence.student_id==teacher_id}}" class="student flex-wrap" data-id="{{presence.objectId}}" bindlongtap="del_student">
|
||||||
|
<text>{{presence.student_name}}</text>
|
||||||
|
<text class="hint">{{presence.student_username}}</text>
|
||||||
|
</view>
|
||||||
|
</block>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="footer">
|
||||||
|
<button type="primary" bindtap="del_class">删除该课程</button>
|
||||||
|
</view>
|
@ -0,0 +1,28 @@
|
|||||||
|
/* pages/classsetting/classsetting.wxss */
|
||||||
|
button{
|
||||||
|
margin: 2px 36px;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
.hint{
|
||||||
|
padding-left: 16px;
|
||||||
|
}
|
||||||
|
.student-list{
|
||||||
|
margin-bottom: 40px;
|
||||||
|
}
|
||||||
|
.student{
|
||||||
|
align-items: center;
|
||||||
|
background: white;
|
||||||
|
padding: 20rpx 16px;
|
||||||
|
border-bottom: 1rpx solid #EEE;
|
||||||
|
position: relative;
|
||||||
|
margin: 0 -12px;
|
||||||
|
}
|
||||||
|
.container{
|
||||||
|
margin-bottom: 40px;
|
||||||
|
}
|
||||||
|
.footer{
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
background: white;
|
||||||
|
width: 100%;
|
||||||
|
}
|
Loading…
Reference in new issue