提交
This commit is contained in:
@@ -106,10 +106,11 @@
|
||||
<el-form
|
||||
:model="member"
|
||||
ref="member"
|
||||
:rules="memberRules"
|
||||
label-width="100px"
|
||||
class="demo-ruleForm"
|
||||
>
|
||||
<el-form-item label="班长" prop="monitor">
|
||||
<el-form-item label="班长" prop="monitor" required>
|
||||
<!-- <el-input v-model="miniClassForm.member.monitor"></el-input> -->
|
||||
<el-select
|
||||
class="userSelect"
|
||||
@@ -131,7 +132,7 @@
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="副班长" prop="dmonitor">
|
||||
<el-form-item label="副班长" prop="dmonitor" required>
|
||||
<el-select
|
||||
class="userSelect"
|
||||
v-model="member.dmonitor"
|
||||
@@ -273,6 +274,13 @@ export default {
|
||||
title: [{ required: true, message: "必填项", trigger: "blur" }],
|
||||
number: [{ required: true, message: "请填入招收的学员人数", trigger: "blur" }],
|
||||
},
|
||||
memberRules:{
|
||||
monitor: [{ required: true, message: "必填项", trigger: "blur" }],
|
||||
dmonitor: [{ required: true, message: "必填项", trigger: "blur" }],
|
||||
learner: [{ required: true, message: "必填项", trigger: "blur" }],
|
||||
scorer: [{ required: true, message: "必填项", trigger: "blur" }],
|
||||
counter: [{ required: true, message: "必填项", trigger: "blur" }]
|
||||
},
|
||||
remoteMethodLoading: false,
|
||||
imageUrl: "",
|
||||
miniClassForm: {
|
||||
@@ -417,7 +425,15 @@ export default {
|
||||
},
|
||||
// 保存成员信息
|
||||
saveMember() {
|
||||
var url = ''
|
||||
this.$refs["member"].validate(valid => {
|
||||
if (valid) {
|
||||
// var _myist = []
|
||||
// var _Str = this.member.monitor+','+ this.member.dmonitor+','+this.member.learner
|
||||
// _myist = _Str.split(',')
|
||||
// _myist.push(...this.member.scorer)
|
||||
// _myist.push(...this.member.counter)
|
||||
// console.log('_Str',_myist,this.member.scorer,this.member.counter)
|
||||
var url = ''
|
||||
this.$http({
|
||||
url: this.$http.adornUrl("/common/class/setUserRole"),
|
||||
method: "post",
|
||||
@@ -438,7 +454,7 @@ export default {
|
||||
this.$message.error(data.msg);
|
||||
}
|
||||
})
|
||||
|
||||
}})
|
||||
},
|
||||
// 创建/编辑班级
|
||||
saveAdd() {
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<div class="mod-config">
|
||||
<el-form
|
||||
:inline="true"
|
||||
:model="dataForm"
|
||||
@keyup.enter.native="getDataList()"
|
||||
>
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.title" placeholder="请输入小班名称" clearable>
|
||||
<el-input
|
||||
v-model="dataForm.title"
|
||||
placeholder="请输入小班名称"
|
||||
clearable
|
||||
>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="小班状态">
|
||||
@@ -44,11 +48,11 @@
|
||||
type="primary"
|
||||
@click="showMiniClass()"
|
||||
>新开小班</el-button
|
||||
>
|
||||
>
|
||||
<!-- <el-button v-if="isAuth('book:user:delete')" type="danger" @click="deleteHandle()"
|
||||
:disabled="dataListSelections.length <= 0">批量删除</el-button> -->
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-form>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
@@ -62,22 +66,30 @@
|
||||
label="小班名称"
|
||||
>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column
|
||||
prop="createUser.tel"
|
||||
<el-table-column
|
||||
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="创建人"
|
||||
>
|
||||
</el-table-column> -->
|
||||
<template slot-scope="scope" v-if="scope.row.createUser">
|
||||
昵称:
|
||||
{{
|
||||
scope.row.createUser.nickname != "" && scope.row.createUser.nickname != null && scope.row.createUser.nickname != 'null'
|
||||
? scope.row.createUser.nickname
|
||||
: "匿名用户"
|
||||
}}<br />电话:{{ scope.row.createUser.tel }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="avatar"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="日期"
|
||||
>
|
||||
|
||||
<template slot-scope="scope">
|
||||
创建日期:{{scope.row.createTime}}<br/> 开班日期<br/>结班日期<br/>
|
||||
创建日期:{{ scope.row.createTime }}<br />
|
||||
开班日期<br />结班日期<br />
|
||||
<!-- <img
|
||||
v-if="scope.row.avatar && scope.row.avatar != ''"
|
||||
:src="scope.row.avatar"
|
||||
@@ -92,43 +104,39 @@
|
||||
height="50"
|
||||
class="tableImg"
|
||||
/> -->
|
||||
</template>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="state"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="小班状态"
|
||||
label="班级状态"
|
||||
>
|
||||
<template slot-scope="scope">{{scope.row.state | getStatus}}</template>
|
||||
<template slot-scope="scope">{{
|
||||
scope.row.state | getStatus
|
||||
}}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
fixed="right"
|
||||
header-align="center"
|
||||
align="center"
|
||||
width="150"
|
||||
width="200"
|
||||
label="操作"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click="showMiniClass(scope.row)"
|
||||
<el-button type="text" size="small" @click="showMiniClass(scope.row)"
|
||||
>修改</el-button
|
||||
>
|
||||
<!-- <el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click="setMember(scope.row)"
|
||||
>管理成员</el-button
|
||||
> -->
|
||||
<el-button type="text" size="small" @click="setStudent(scope.row)"
|
||||
>学员管理</el-button
|
||||
>
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click="deleteHandle(scope.row.id)"
|
||||
>删除</el-button
|
||||
>
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -147,8 +155,47 @@
|
||||
ref="miniClass"
|
||||
v-if="miniClassVisible"
|
||||
@handleClose="miniClassHandleClose"
|
||||
:miniClass="miniClass"
|
||||
:miniClass="miniClass"
|
||||
></mini-class>
|
||||
<!-- 学员管理 -->
|
||||
<el-dialog
|
||||
title="提示"
|
||||
:visible.sync="setStudentVisible"
|
||||
width="800px"
|
||||
:close="setStudentClose"
|
||||
>
|
||||
<div>
|
||||
<el-table :data="studentList">
|
||||
<el-table-column
|
||||
property="id"
|
||||
label="学员id"
|
||||
width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
property="nickname"
|
||||
label="学员名称"
|
||||
width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
property="vip"
|
||||
label="学员身份"
|
||||
width="200"
|
||||
></el-table-column>
|
||||
<el-table-column property="tel" label="手机号"></el-table-column>
|
||||
<el-table-column property="" label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="warning" @click="outClass(scope.row)"
|
||||
>踢出班级</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="setStudentClose">关 闭</el-button>
|
||||
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -157,41 +204,43 @@ import miniClass from "./miniClass.vue";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
setMemberVisible:false,
|
||||
setStudentVisible: false,
|
||||
setStudentVisible: false,
|
||||
studentList: [], // 学员列表
|
||||
dataForm: {
|
||||
title: "",
|
||||
type:'0',
|
||||
state:'0'
|
||||
},
|
||||
type: "0",
|
||||
state: "0"
|
||||
},
|
||||
// courseId: {},
|
||||
course: null,
|
||||
miniClass: undefined,
|
||||
// showMiniClass:false,
|
||||
options: [
|
||||
{
|
||||
value: '0',
|
||||
{
|
||||
value: "0",
|
||||
label: "普通小班"
|
||||
},
|
||||
{
|
||||
value: '1',
|
||||
value: "1",
|
||||
label: "联合班"
|
||||
},
|
||||
{
|
||||
value: '2',
|
||||
value: "2",
|
||||
label: "精英班"
|
||||
}
|
||||
],
|
||||
statusOptions : [
|
||||
statusOptions: [
|
||||
{
|
||||
value: '0',
|
||||
value: "0",
|
||||
label: "待开班"
|
||||
},
|
||||
{
|
||||
value: '1',
|
||||
value: "1",
|
||||
label: "已开班"
|
||||
},
|
||||
{
|
||||
value: '2',
|
||||
value: "2",
|
||||
label: "已结班"
|
||||
}
|
||||
],
|
||||
@@ -212,58 +261,129 @@ export default {
|
||||
};
|
||||
},
|
||||
filters: {
|
||||
getStatus: function (value) {
|
||||
var _str = '454545'
|
||||
switch (value) {
|
||||
case '0':
|
||||
_str = '待开班'
|
||||
break;
|
||||
case '1':
|
||||
_str = '已开班'
|
||||
break;
|
||||
case '2':
|
||||
_str = '已结班'
|
||||
break;
|
||||
getStatus: function(value) {
|
||||
var _str = "454545";
|
||||
switch (value) {
|
||||
case "0":
|
||||
_str = "待开班";
|
||||
break;
|
||||
case "1":
|
||||
_str = "已开班";
|
||||
break;
|
||||
case "2":
|
||||
_str = "已结班";
|
||||
break;
|
||||
}
|
||||
return _str;
|
||||
}
|
||||
return _str
|
||||
}
|
||||
},
|
||||
},
|
||||
components: {
|
||||
miniClass
|
||||
},
|
||||
created() {
|
||||
// this.courseId = this.$route.query.courseId;
|
||||
console.log("得到的课程id");
|
||||
console.log("得到的课程id");
|
||||
// this.getCourseInfo()
|
||||
this.getDataList();
|
||||
|
||||
},
|
||||
mounted(){
|
||||
},
|
||||
mounted() {
|
||||
console.log("得到的课程id");
|
||||
},
|
||||
methods: {
|
||||
setMemberClose(){
|
||||
|
||||
setStudentClose() {
|
||||
this.miniClass = {};
|
||||
this.setStudentVisible = false;
|
||||
this.studentList = [];
|
||||
},
|
||||
// 管理人员设置
|
||||
setMember(data){
|
||||
// 获取班级详情
|
||||
async getCLassInfo(id){
|
||||
return new Promise(async(resolve, reject) => {
|
||||
await this.$http({
|
||||
url: this.$http.adornUrl("/common/class/getClassInfo"),
|
||||
method: "post",
|
||||
data: this.$http.adornData({
|
||||
classId: id
|
||||
})
|
||||
})
|
||||
.then(data => {
|
||||
// console.log('得到了值')
|
||||
resolve(data);
|
||||
})
|
||||
.catch(e => {
|
||||
|
||||
reject(e)
|
||||
// this.$message.error("获取学员列表失败");
|
||||
});
|
||||
})
|
||||
},
|
||||
// 管理学员
|
||||
async setStudent(data) {
|
||||
this.miniClass = data;
|
||||
var _classId = data.id;
|
||||
var jieguo = await this.getCLassInfo(_classId)
|
||||
// console.log('jieguo',jieguo.data.code)
|
||||
if(jieguo.data.code == 0){
|
||||
this.studentList = jieguo.data.result.students;
|
||||
this.setStudentVisible = true;
|
||||
}else{
|
||||
this.$message.error("获取学员列表失败");
|
||||
}
|
||||
},
|
||||
// 踢出班级
|
||||
async outClass(row) {
|
||||
let that = this;
|
||||
this.$confirm(`确定将学员电话为:${row.tel}踢出班级?`, "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
})
|
||||
.then(() => {
|
||||
this.$http({
|
||||
// url: this.$http.adornUrl('/book/user/list'),
|
||||
url: this.$http.adornUrl("/common/class/quitClass"),
|
||||
method: "post",
|
||||
data: this.$http.adornData({
|
||||
classId: that.miniClass.id,
|
||||
userId: row.id
|
||||
})
|
||||
}).then(async ({ data }) => {
|
||||
if (data && data.code === 0) {
|
||||
this.$message({
|
||||
type: "success",
|
||||
message: "删除成功!"
|
||||
});
|
||||
var jieguo = await this.getCLassInfo(this.miniClass.id)
|
||||
console.log('jieguo',jieguo.data.code)
|
||||
if(jieguo.data.code == 0){
|
||||
this.studentList = jieguo.data.result.students;
|
||||
this.setStudentVisible = true;
|
||||
}else{
|
||||
this.$message.error("获取学员列表失败");
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '删除失败'
|
||||
});
|
||||
});
|
||||
},
|
||||
// 管理员小班管理
|
||||
showMiniClass(data) {
|
||||
// console.log('miniClass',data)
|
||||
if(data){
|
||||
this.miniClass = data
|
||||
}
|
||||
if (data) {
|
||||
this.miniClass = data;
|
||||
}
|
||||
this.miniClassVisible = true;
|
||||
|
||||
},
|
||||
// 关闭小班设置
|
||||
miniClassHandleClose() {
|
||||
this.miniClassVisible = false;
|
||||
this.miniClass = undefined
|
||||
this.getDataList()
|
||||
},
|
||||
this.miniClass = undefined;
|
||||
this.getDataList();
|
||||
},
|
||||
// 获取数据列表
|
||||
getDataList() {
|
||||
this.dataListLoading = true;
|
||||
@@ -309,42 +429,36 @@ export default {
|
||||
|
||||
// 删除
|
||||
deleteHandle(id) {
|
||||
var ids = id
|
||||
// ? [id]
|
||||
// : this.dataListSelections.map(item => {
|
||||
// return item.id;
|
||||
// });
|
||||
this.$confirm(
|
||||
`确定删除操作?`,
|
||||
"提示",
|
||||
{
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}
|
||||
).then(() => {
|
||||
var ids = id;
|
||||
this.$confirm(`确定删除操作?`, "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl("/common/class/delClass"),
|
||||
method: "post",
|
||||
data: this.$http.adornData({
|
||||
classId:ids
|
||||
classId: ids
|
||||
})
|
||||
}).then(({ data }) => {
|
||||
if (data && data.code === 0) {
|
||||
this.$message({
|
||||
message: "操作成功",
|
||||
type: "success",
|
||||
duration: 1500,
|
||||
onClose: () => {
|
||||
this.getDataList();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.$message.error(data.msg);
|
||||
}
|
||||
}).catch(e => {
|
||||
this.$message.error('删除失败');
|
||||
});
|
||||
})
|
||||
.then(({ data }) => {
|
||||
if (data && data.code === 0) {
|
||||
this.$message({
|
||||
message: "操作成功",
|
||||
type: "success",
|
||||
duration: 1500,
|
||||
onClose: () => {
|
||||
this.getDataList();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.$message.error(data.msg);
|
||||
}
|
||||
})
|
||||
.catch(e => {
|
||||
this.$message.error("删除失败");
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user