Commit 53cf405f authored by zhengke's avatar zhengke

新增教师

parent d6f2a37e
import request from '../../utils/request'
/**
* 获取课程分页列表
* @param {JSON参数} data
*/
export function GetClassPageList(data) {
return request({
url: '/TeacherClass/GetClassPageList',
method: 'post',
data
})
}
/**
* 获取课程分页列表
* @param {JSON参数} data
*/
export function GetClassMonthStatistics(data) {
return request({
url: '/TeacherClass/GetClassMonthStatistics',
method: 'post',
data
})
}
...@@ -90,13 +90,13 @@ ...@@ -90,13 +90,13 @@
<q-tab :ripple="false" name="fourth" label="班级日志" /> <q-tab :ripple="false" name="fourth" label="班级日志" />
</q-tabs> </q-tabs>
<div v-if="tabCheck=='first'" style="margin:0 15px;"> <div v-if="tabCheck=='first'" style="margin:0 15px;">
 <classstuForm :seting-obj="setingObj"></classstuForm>  <classstuForm :seting-obj="setingObj" :isShowMyBtn="isShowMyBtn"></classstuForm>
</div> </div>
<div v-if="tabCheck=='second'"> <div v-if="tabCheck=='second'">
 <lessForm :seting-obj="setingObj"></lessForm>  <lessForm :seting-obj="setingObj" :isShowMyBtn="isShowMyBtn"></lessForm>
</div> </div>
<div v-if="tabCheck=='third'"> <div v-if="tabCheck=='third'">
<recordForm :seting-obj="setingObj"></recordForm> <recordForm :seting-obj="setingObj" :isShowMyBtn="isShowMyBtn"></recordForm>
</div> </div>
<div v-if="tabCheck=='fourth'"> <div v-if="tabCheck=='fourth'">
<classlogForm :seting-obj="setingObj"></classlogForm> <classlogForm :seting-obj="setingObj"></classlogForm>
...@@ -122,6 +122,10 @@ ...@@ -122,6 +122,10 @@
setingObj: { setingObj: {
type: Object, type: Object,
default: null default: null
},
isShowEditBtn:{
type: Number,
default: null
} }
}, },
components: { components: {
...@@ -136,6 +140,7 @@ ...@@ -136,6 +140,7 @@
tabCheck: 'first', //默认选第一个 tabCheck: 'first', //默认选第一个
loading: false, loading: false,
classObj:{}, classObj:{},
isShowMyBtn:0
} }
}, },
created() { created() {
...@@ -151,6 +156,10 @@ ...@@ -151,6 +156,10 @@
}, },
mounted() { mounted() {
// this.queryClassInfo(); // this.queryClassInfo();
console.log(this.isShowEditBtn,'this.isShowEditBtn');
if(this.isShowEditBtn==1){
this.isShowMyBtn=1
}
}, },
methods: { methods: {
queryClassInfo() { queryClassInfo() {
......
<template> <template>
<div> <div>
<div style="text-align:right;"> <div style="text-align:right;">
<q-btn outline color="black" label="退课" @click="dropClass()" size="12px" style="margin-right:20px;"> <template v-if="isShowBtn">
<q-popup-proxy> <q-btn outline color="black" label="退课" @click="dropClass()" size="12px" style="margin-right:20px;">
<q-banner v-if="isShowDropPop"> <q-popup-proxy>
<div class="dropClassDialog"> <q-banner v-if="isShowDropPop">
<div style="margin:10px 0 15px 0;">退课</div> <div class="dropClassDialog">
</div> <div style="margin:10px 0 15px 0;">退课</div>
<q-input square filled v-model="dropMsg.DropOutRemark" borderless label="退课原因" ref="reason" type="textarea" </div>
counter :rules="[val => !!val || '请填写退课原因']" maxlength="200" /> <q-input square filled v-model="dropMsg.DropOutRemark" borderless label="退课原因" ref="reason" type="textarea"
<div class="drop_NameDown"> counter :rules="[val => !!val || '请填写退课原因']" maxlength="200" />
<q-chip v-for="(item,index) in selectedStudent" :key="index"> <div class="drop_NameDown">
<q-avatar rounded size="sm" v-if="item.UserIcon"> <q-chip v-for="(item,index) in selectedStudent" :key="index">
<img :src="item.UserIcon" /> <q-avatar rounded size="sm" v-if="item.UserIcon">
</q-avatar> <img :src="item.UserIcon" />
<q-avatar rounded size="sm" color="teal-10" text-color="white" v-if="!item.UserIcon"> </q-avatar>
{{item.GuestName[0]}}</q-avatar> <q-avatar rounded size="sm" color="teal-10" text-color="white" v-if="!item.UserIcon">
{{item.GuestName}} {{item.GuestName[0]}}</q-avatar>
</q-chip> {{item.GuestName}}
</div> </q-chip>
<q-card-actions align="right" class="bg-white"> </div>
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="isShowDropPop=false" /> <q-card-actions align="right" class="bg-white">
<q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveDrop()" /> <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="isShowDropPop=false" />
</q-card-actions> <q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveDrop()" />
</q-banner> </q-card-actions>
</q-popup-proxy> </q-banner>
</q-btn> </q-popup-proxy>
<q-btn color="primary" class="q-mr-md" size="12px" icon="add" label="邀请新学员" @click="ishowInvit=true"> </q-btn>
<q-popup-proxy> <q-btn color="primary" class="q-mr-md" size="12px" icon="add" label="邀请新学员" @click="ishowInvit=true">
<q-banner v-if="ishowInvit"> <q-popup-proxy>
<div class="dropClassDialog"> <q-banner v-if="ishowInvit">
<div style="margin:10px 0 15px 0;">邀请新学员</div> <div class="dropClassDialog">
</div> <div style="margin:10px 0 15px 0;">邀请新学员</div>
<div class="drop_NameDown"> </div>
<q-select filled stack-label use-input input-debounce="0" option-value="StuId" option-label="StuName" <div class="drop_NameDown">
v-model="checkedStudent" :options="InvitationList" label="选择学员" :dense="false" emit-value map-options <q-select filled stack-label use-input input-debounce="0" option-value="StuId" option-label="StuName"
@filter="filterFn"> v-model="checkedStudent" :options="InvitationList" label="选择学员" :dense="false" emit-value map-options
<template v-slot:no-option> @filter="filterFn">
<q-item> <template v-slot:no-option>
<q-item-section class="text-grey"> <q-item>
未找到相关数据 <q-item-section class="text-grey">
</q-item-section> 未找到相关数据
</q-item> </q-item-section>
</template> </q-item>
</q-select> </template>
</div> </q-select>
<q-card-actions align="right" class="bg-white" style="margin-top:20px;"> </div>
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="ishowInvit=false" /> <q-card-actions align="right" class="bg-white" style="margin-top:20px;">
<q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveStudent()" /> <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="ishowInvit=false" />
</q-card-actions> <q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveStudent()" />
</q-banner> </q-card-actions>
</q-popup-proxy> </q-banner>
</q-btn> </q-popup-proxy>
</q-btn>
</template>
</div> </div>
<q-table :loading="loading" no-data-label="暂无相关数据" style="margin-bottom:80px;" flat selection="multiple" <q-table :loading="loading" no-data-label="暂无相关数据" style="margin-bottom:80px;" flat selection="multiple"
:selected.sync="selectedStudent" class="sticky-column-table" separator="none" title="学员信息" :data="studentList" :selected.sync="selectedStudent" class="sticky-column-table" separator="none" title="学员信息" :data="studentList"
...@@ -104,6 +106,10 @@ ...@@ -104,6 +106,10 @@
setingObj: { setingObj: {
type: Object, type: Object,
default: null default: null
},
isShowMyBtn: {
type: Number,
default: null
} }
}, },
data() { data() {
...@@ -191,12 +197,16 @@ ...@@ -191,12 +197,16 @@
InvitationList: [], //学员下拉数据 InvitationList: [], //学员下拉数据
AllInvitationList: [], AllInvitationList: [],
checkedStudent: '', //选择学员 checkedStudent: '', //选择学员
isShowBtn:true
} }
}, },
created() { created() {
}, },
mounted() { mounted() {
if(this.isShowMyBtn==1){
this.isShowBtn=false;
}
this.getStudentData(); this.getStudentData();
this.getStudentList(); this.getStudentList();
}, },
......
...@@ -199,7 +199,7 @@ ...@@ -199,7 +199,7 @@
</el-radio-group> </el-radio-group>
</div> </div>
<div> <div>
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增日程" @click="addNew()"> <q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增日程" v-if="isShowBtn" @click="addNew()">
<q-popup-proxy> <q-popup-proxy>
<q-banner v-if="isShowMenu"> <q-banner v-if="isShowMenu">
<div class="calenderDialog"> <div class="calenderDialog">
...@@ -632,6 +632,10 @@ ...@@ -632,6 +632,10 @@
setingObj: { setingObj: {
type: Object, type: Object,
default: null default: null
},
isShowMyBtn: {
type: Number,
default: null
} }
}, },
name: "calendar", name: "calendar",
...@@ -761,12 +765,16 @@ ...@@ -761,12 +765,16 @@
align: 'center' align: 'center'
} }
], ],
isShowBtn:true
} }
}, },
created() { created() {
if (this.setingObj && this.setingObj.ClassId) { if (this.setingObj && this.setingObj.ClassId) {
this.addMsg.ClassId = this.setingObj.ClassId; this.addMsg.ClassId = this.setingObj.ClassId;
} }
if(this.isShowMyBtn==1){
this.isShowBtn=false;
}
}, },
mounted() { mounted() {
var d = new Date(); var d = new Date();
......
...@@ -101,7 +101,7 @@ ...@@ -101,7 +101,7 @@
<el-radio-button :label="2">时间轴模式</el-radio-button> <el-radio-button :label="2">时间轴模式</el-radio-button>
</el-radio-group> </el-radio-group>
</div> </div>
<div class="col-3"> <div class="col-3" v-if="isShowBtn">
<q-select filled stack-label option-value="TId" @input="changeRecord()" option-label="TeacherName" <q-select filled stack-label option-value="TId" @input="changeRecord()" option-label="TeacherName"
v-model="TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师" :dense="false" class="col-6" v-model="TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师" :dense="false" class="col-6"
emit-value map-options /> emit-value map-options />
...@@ -209,6 +209,10 @@ ...@@ -209,6 +209,10 @@
setingObj: { setingObj: {
type: Object, type: Object,
default: null default: null
},
isShowMyBtn: {
type: Number,
default: null
} }
}, },
components: { components: {
...@@ -260,6 +264,7 @@ ...@@ -260,6 +264,7 @@
} }
], ],
checkType: 1, //默认列表模式 checkType: 1, //默认列表模式
isShowBtn:true
} }
}, },
created() { created() {
...@@ -267,6 +272,10 @@ ...@@ -267,6 +272,10 @@
}, },
mounted() { mounted() {
this.TeacherId = this.setingObj.Teacher_Id; this.TeacherId = this.setingObj.Teacher_Id;
if(this.isShowMyBtn==1){
this.isShowBtn=false;
}
this.getRecord(); this.getRecord();
this.GetTeacherList(); this.GetTeacherList();
}, },
......
...@@ -195,7 +195,7 @@ ...@@ -195,7 +195,7 @@
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑" <q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="editOrder(item)" /> @click="editOrder(item)" />
</template> </template>
<q-btn-dropdown flat size="xs" color="dark" label="更多" style="margin-left:10px;"> <q-btn-dropdown flat size="xs" color="dark" v-if="AuthorityObj.isShowMore" label="更多" style="margin-left:10px;">
<q-list> <q-list>
<q-item clickable v-close-popup> <q-item clickable v-close-popup>
<q-item-section @click="gostudent(item)"> <q-item-section @click="gostudent(item)">
...@@ -767,7 +767,7 @@ ...@@ -767,7 +767,7 @@
<myOrder-form v-if="isShowmyorderForm" :save-obj="myorderObjOption" @close="closeMOSaveForm"></myOrder-form> <myOrder-form v-if="isShowmyorderForm" :save-obj="myorderObjOption" @close="closeMOSaveForm"></myOrder-form>
<!--班级详情--> <!--班级详情-->
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass" @success="refreshOrder"> <classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" :isShowEditBtn="isShowEditBtn" @close="closeClass" @success="refreshOrder">
</classinfo-form> </classinfo-form>
<!--退课申请--> <!--退课申请-->
...@@ -852,6 +852,10 @@ ...@@ -852,6 +852,10 @@
modityOrderType: { modityOrderType: {
type: Number, type: Number,
default: 0, //1-销售修改,2-OP修改,3-总经理修改 default: 0, //1-销售修改,2-OP修改,3-总经理修改
},
isShowEditBtn:{
type: Number,
default: null
} }
}, },
data() { data() {
...@@ -892,6 +896,7 @@ ...@@ -892,6 +896,7 @@
isShowRenewClass: false, //是否显示续课按钮 isShowRenewClass: false, //是否显示续课按钮
isShowContract: true, //是否显示合同 isShowContract: true, //是否显示合同
isShowEdit: true, //是否显示修改订单按钮 isShowEdit: true, //是否显示修改订单按钮
isShowMore: true //是否显示更多下拉按钮
}, },
isShowEduForm: false, //是否显示新增修改合同弹窗 isShowEduForm: false, //是否显示新增修改合同弹窗
...@@ -991,6 +996,9 @@ ...@@ -991,6 +996,9 @@
if (this.authObj.isShowEdit != null && !this.authObj.isShowEdit) { if (this.authObj.isShowEdit != null && !this.authObj.isShowEdit) {
this.AuthorityObj.isShowEdit = this.authObj.isShowEdit; this.AuthorityObj.isShowEdit = this.authObj.isShowEdit;
} }
if(this.authObj.isShowMore != null && !this.authObj.isShowMore){
this.AuthorityObj.isShowMore = this.authObj.isShowMore
}
} }
}, },
//关闭报价单 //关闭报价单
......
...@@ -308,7 +308,7 @@ ...@@ -308,7 +308,7 @@
ClassStatus: 0, //班级状态 ClassStatus: 0, //班级状态
TeacherName: '', //带班老师 TeacherName: '', //带班老师
CourseName: '', //学习课程 CourseName: '', //学习课程
School_Id: 0, //关联校区 School_Id: -1, //关联校区
}, },
//班级状态 //班级状态
classStatusList: [], classStatusList: [],
...@@ -438,7 +438,7 @@ ...@@ -438,7 +438,7 @@
tempArray = []; tempArray = [];
} }
tempArray.unshift({ tempArray.unshift({
SId: 0, SId: -1,
SName: "不限" SName: "不限"
}) })
this.schoolList = tempArray; this.schoolList = tempArray;
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
</div> </div>
</div> </div>
<div class="page-content"> <div class="page-content">
<orderlist :dataList="dataList" ref="orderL" :authObj="authObj" :modityOrderType="2" :cancelList="CancelList" <orderlist :dataList="dataList" ref="orderL" :authObj="authObj" :isShowEditBtn="isShowEditBtn" :modityOrderType="2" :cancelList="CancelList"
@success="refreshClassOrder"></orderlist> @success="refreshClassOrder"></orderlist>
</div> </div>
</div> </div>
...@@ -57,7 +57,10 @@ ...@@ -57,7 +57,10 @@
isShowManagerRemark: true, //显示总经理备注 isShowManagerRemark: true, //显示总经理备注
isShowCommissionEdit: true, //显示修改提成按钮 isShowCommissionEdit: true, //显示修改提成按钮
isShowRewardEdit: true, //显示修改额外提成按钮 isShowRewardEdit: true, //显示修改额外提成按钮
} isShowEdit: true, //显示修改按钮
isShowMore: true //显示更多下拉
},
isShowEditBtn:0
} }
}, },
created() { created() {
...@@ -65,6 +68,11 @@ ...@@ -65,6 +68,11 @@
this.ClassId = this.$route.query.ClassId this.ClassId = this.$route.query.ClassId
this.msg.ClassId = this.ClassId; this.msg.ClassId = this.ClassId;
} }
if(this.$route.query.isFromMyclass&&this.$route.query.isFromMyclass==1){
this.authObj.isShowEdit=false
this.authObj.isShowMore=false
this.isShowEditBtn=1
}
this.getList(); this.getList();
}, },
mounted() { mounted() {
......
...@@ -282,7 +282,7 @@ ...@@ -282,7 +282,7 @@
<div class="pay_InorOut"> <div class="pay_InorOut">
<div class="pay_TopTitle" style="display:flex;justify-content: space-between;align-items:center;"> <div class="pay_TopTitle" style="display:flex;justify-content: space-between;align-items:center;">
<div><span class="Pay_Line"></span>收入</div> <div><span class="Pay_Line"></span>收入</div>
<q-btn label="新增收款" color="accent q-px-md" size="sm" style="font-weight:400 !important;" <q-btn label="新增收款" v-if="isShowBtn" color="accent q-px-md" size="sm" style="font-weight:400 !important;"
@click="goShoukuan(1)" /> @click="goShoukuan(1)" />
</div> </div>
<div class="pay_TopTitle" style="margin:15px 0 15px 20px;font-size:12px;"> <div class="pay_TopTitle" style="margin:15px 0 15px 20px;font-size:12px;">
...@@ -390,7 +390,7 @@ ...@@ -390,7 +390,7 @@
<div class="pay_TopTitle" <div class="pay_TopTitle"
style="margin-top:30px;display:flex;justify-content: space-between;align-items:center;"> style="margin-top:30px;display:flex;justify-content: space-between;align-items:center;">
<div><span class="Pay_Line" style="background:#F72E52;"></span>支出</div> <div><span class="Pay_Line" style="background:#F72E52;"></span>支出</div>
<q-btn label="新增付款" color="accent q-px-md" size="sm" style="font-weight:400 !important;" <q-btn label="新增付款" v-if="isShowBtn" color="accent q-px-md" size="sm" style="font-weight:400 !important;"
@click="goShoukuan(2)" /> @click="goShoukuan(2)" />
</div> </div>
<div class="pay_TopTitle" style="margin:15px 0 15px 20px;font-size:12px;"> <div class="pay_TopTitle" style="margin:15px 0 15px 20px;font-size:12px;">
...@@ -467,6 +467,7 @@ ...@@ -467,6 +467,7 @@
School_Id: 0 School_Id: 0
}, },
ClassName:'', ClassName:'',
isShowBtn:true
} }
}, },
created() {}, created() {},
...@@ -480,6 +481,9 @@ ...@@ -480,6 +481,9 @@
if (this.$route.query && this.$route.query.ClassName) { if (this.$route.query && this.$route.query.ClassName) {
this.ClassName = this.$route.query.ClassName; this.ClassName = this.$route.query.ClassName;
} }
if(this.$route.query && this.$route.query.isFromMyClass){
this.isShowBtn = false
}
this.getData(); this.getData();
}, },
methods: { methods: {
......
This diff is collapsed.
This diff is collapsed.
...@@ -929,7 +929,16 @@ const routes = [{ ...@@ -929,7 +929,16 @@ const routes = [{
component: () => component: () =>
import("pages/classroom/courseInfo") import("pages/classroom/courseInfo")
}, },
{
path: "/teacher/myClass", //我的班级
component: () =>
import("pages/teacher/myClass")
},
{
path: "/teacher/teachMonthLessonCost", //月度课耗
component: () =>
import("pages/teacher/teachMonthLessonCost")
},
], ],
}, },
......
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