Commit 53be60ce authored by 罗超's avatar 罗超

Merge branch 'master' of http://gitlab.oytour.com/luochao/confucius into master

# Conflicts:
#	src/router/routes.js
parents eb633a6d 39e9549c
......@@ -12,7 +12,7 @@ export default {
<style>
@import url('~assets/css/font.css');
@import url('//at.alicdn.com/t/font_2077629_1f7iels6h8w.css');
@import url('//at.alicdn.com/t/font_2077629_cq0udyr5rpk.css');
.q-scrollarea__thumb{
z-index: 999999!important;
}
......@@ -25,7 +25,7 @@ body,
font-family: -apple-system,BlinkMacSystemFont,'pingfang',' Microsoft YaHei',"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
color: #3f4254;
}
.q-position-engine{
.q-position-engine {
z-index: 9999;
}
.remark-font{
......
......@@ -203,5 +203,16 @@ export function setSellCommissionSendEmployee(data) {
}
// 获取月度班级收支统计
export function getAllClassNowMonthStatistics(data) {
return request({
url: '/finance/GetAllClassNowMonthStatistics',
method: 'post',
data
});
}
......@@ -23,3 +23,29 @@ export function GetClassMonthStatistics(data) {
data
})
}
/**
* 获取我的课表分页列表
* @param {JSON参数} data
*/
export function GetClassPlanStatistical(data) {
return request({
url: '/TeacherClass/GetClassPlanStatistical',
method: 'post',
data
})
}
/**
* 获取我的课表列表数据
* @param {JSON参数} data
*/
export function GetClassPlanStatisticalPage(data) {
return request({
url: '/TeacherClass/GetClassPlanStatisticalPage',
method: 'post',
data
})
}
......@@ -10,7 +10,7 @@
height: 40px;
}
.MainPlan td {
.planClass-table td {
vertical-align: top;
padding: 5px;
width: 14%;
......@@ -126,7 +126,7 @@
</thead>
</table>
<div class="planTabDiv" ref="planTabDiv">
<table class="ClassPlanTable" ref="PlanTable" style="border-collapse:collapse;margin-top:0;">
<table class="ClassPlanTable planClass-table" ref="PlanTable" style="border-collapse:collapse;margin-top:0;">
<tbody>
<tr v-for="(item,index) in dataList.fridayList" :key="index">
<td>
......
......@@ -310,7 +310,7 @@
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props" style="width:130px;">
<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;display:none;" label="编辑"
@click="getInfo(props.row)">
<q-popup-proxy>
<q-banner v-if="isShowEdit">
......@@ -410,7 +410,7 @@
<div class="calendarTop">
<div>{{item.RoomName}}</div>
<div>
<i class="iconfont icon-edit Lessicon_Edit" @click.stop="getInfo(item)">
<i class="iconfont icon-edit Lessicon_Edit" style="display:none;" @click.stop="getInfo(item)">
<q-popup-proxy>
<q-banner v-if="isShowEdit">
<div class="calenderDialog">
......@@ -574,6 +574,7 @@
<el-select v-model="props.row.IsCheck" style="width:80px;" size="small" placeholder="小时">
<el-option label="出勤" :value="0"></el-option>
<el-option label="缺勤" :value="1"></el-option>
<el-option label="请假" :value="2"></el-option>
</el-select>
</q-td>
</template>
......
......@@ -46,13 +46,13 @@
</div>
</div>
<div class="page-content">
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-column-table"
separator="none" :data="data" :columns="columns" row-key="QuestionId" selection="multiple"
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-column-table sticky-right-column-table"
separator="none" :data="data" :columns="columns" row-key="QuestionId" :selection="editStatus?'multiple':'none'"
:selected.sync="selectedQuestion">
<template v-slot:top="props">
<div class="col-2 q-table__title">问题列表</div>
<q-space />
<div class="page-option">
<div class="page-option" v-if="editStatus">
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增题目" @click="EditQuestion(null)" />
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="批量设置" title="批量设置考级程度"
@click="isShowEdit=true">
......@@ -101,16 +101,18 @@
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
<q-btn v-if="editStatus" flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="EditQuestion(props.row)" />
<q-btn flat size="xs" icon="edit" color="negative" style="font-weight:400" label="删除"
<q-btn v-if="editStatus" flat size="xs" icon="edit" color="negative" style="font-weight:400" label="删除"
@click="setQuestionStatus(props.row)"></q-btn>
<q-btn flat size="xs" icon="iconfont icon-shangyi2" :class="{'QuestionisVisible':!props.row.isShowFirst}"
<q-btn v-if="editStatus" flat size="xs" icon="iconfont icon-shangyi2" :class="{'QuestionisVisible':!props.row.isShowFirst}"
color="accent" title="上移" style="font-weight:400;" label="" @click="getUpStatus(props.row,1)"></q-btn>
<q-btn flat size="xs" icon="iconfont icon-xiayi" :class="{'QuestionisVisible':!props.row.isShowLast}"
<q-btn v-if="editStatus" flat size="xs" icon="iconfont icon-xiayi" :class="{'QuestionisVisible':!props.row.isShowLast}"
color="accent" title="下移" style="font-weight:400;" label="" @click="getUpStatus(props.row,2)"></q-btn>
<q-btn flat size="xs" icon="iconfont icon-fuzhi" color="accent" style="font-weight:400;" label=""
<q-btn v-if="editStatus" flat size="xs" icon="iconfont icon-fuzhi" color="accent" style="font-weight:400;" label=""
@click="getCopyItem(props.row)"></q-btn>
<q-btn v-if="!editStatus" flat size="xs" color="primary" style="font-weight:400" label="查看"
@click="goDetail(props.row)"/>
</q-td>
</template>
</q-table>
......@@ -141,6 +143,10 @@
props: {
queryMsg: {
type: Object,
},
editStatus:{
type: Boolean,
default: true
}
},
meta: {
......@@ -503,7 +509,7 @@
},
//点击跳转
goDetail(item){
this.OpenNewUrl('questionInfo',{
this.OpenNewUrl('/course/questionInfo',{
'QuestionId':item.QuestionId
})
}
......
......@@ -51,7 +51,7 @@
<col width="7%" />
<col width="7%" />
<col width="7%" />
<col width="7%" />
<col width="7%" v-if="viewType==0"/>
<col>
</colgroup>
<tr>
......@@ -193,7 +193,7 @@
<span style="color: #02C499">{{item.OrderStateName}}</span>
</div>
</td>
<td style="border:none">
<td style="border:none" v-if="viewType==0">
<template v-if="isEditOrder||AuthorityObj.isShowEdit">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="editOrder(item)" />
......@@ -599,7 +599,7 @@
<span style="color: #02C499">{{item.OrderStateName}}</span>
</div>
</td>
<td style="border:none;" v-if="AuthorityObj.isShowEdit">
<td style="border:none;" v-if="AuthorityObj.isShowEdit && viewType==0">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400;display:none;" label="编辑"
@click="editOrder(item)" />
<q-btn-dropdown flat size="xs" color="dark" label="更多" style="margin-left:10px;display:none;">
......@@ -860,6 +860,10 @@
isShowEditBtn:{
type: Number,
default: null
},
viewType:{
type:Number,
default:0
}
},
data() {
......
......@@ -18,7 +18,7 @@
</thead>
</table>
<div class="planTabDiv" ref="planTabDiv">
<table class="ClassPlanTable" ref="PlanTable" style="border-collapse:collapse;margin-top:0;">
<table class="ClassPlanTable planClass-table" ref="PlanTable" style="border-collapse:collapse;margin-top:0;">
<tbody>
<tr v-for="(item,index) in tbodayData.fridayList" :key="index">
<td>
......@@ -116,7 +116,7 @@
height: 40px;
}
.MainPlan td {
.planClass-table td {
vertical-align: top;
padding: 5px;
width: 14%;
......
......@@ -118,10 +118,10 @@
border: 1px dashed #E2E2E2;
}
.lessonPreparation .cont .q-gutter-y-xs>*,
/* .lessonPreparation .cont .q-gutter-y-xs>*,
.q-gutter-xs>* {
margin: 0;
}
} */
.lessonPreparation .cont:hover .Less_Delete {
display: inline-block;
......
......@@ -238,9 +238,10 @@
});
},
gourlteacher2(path,row,item) {
let StudentName = encodeURI(row.StudentName)
this.OpenNewUrl('/financial/'+path, {
ClassId: this.ClassId,
StudentName:row.StudentName,
StudentName:StudentName,
datetype:'2',
StartMonth:item.Month,
EndMonth:item.Month,
......
......@@ -355,21 +355,7 @@
课后总结
</div>
</div>
<template v-if="(LessonPlanNum>0&&LessonPlanSummaryNum>0) || this.data.LessonPlanList[0].Summary!=''">
<div class="text14-o q-pa-md Pre-ComBg rounded-borders" style="margin-top:10px;background-color:rgb(251, 246, 240)">{{conclusion}}</div>
<div style="display:flex;flex-wrap: wrap;margin-top:20px;">
<div v-if="ImgList.length>0" v-for="(item,index) in ImgList">
<div class="pre-ImgDiv">
<el-image
style="height: 100%;height:100%"
:src="item"
fit="cover"
:preview-src-list="ImgList"></el-image>
</div>
</div>
</div>
</template>
<template v-else>
<template v-if="LessonPlanNum>0&&LessonPlanSummaryNum==0">
<q-input type="textarea" filled label="课后总结" v-model="conclusion" :rows="3" style="flex:1;margin-top:20px;" />
<div style="display:flex;flex-wrap: wrap;margin-top:20px;">
<div v-if="ImgList.length>0" v-for="(item,index) in ImgList">
......@@ -390,6 +376,20 @@
</el-upload>
</div>
</template>
<template v-else>
<div class="text14-o q-pa-md Pre-ComBg rounded-borders" style="margin-top:10px;background-color:rgb(251, 246, 240)">{{conclusion}}</div>
<div style="display:flex;flex-wrap: wrap;margin-top:20px;">
<div v-if="ImgList.length>0" v-for="(item,index) in ImgList">
<div class="pre-ImgDiv">
<el-image
style="height: 100%;height:100%"
:src="item"
fit="cover"
:preview-src-list="ImgList"></el-image>
</div>
</div>
</div>
</template>
</div>
<q-btn color="accent" size="sm" v-if="LessonPlanNum>0&&LessonPlanSummaryNum==0&&isShowBtn" class="margint-15" @click="saveOrderInfo()"
style="margin:20px 0 0 15px;width:97%;height:40px;" label="提交" />
......@@ -595,11 +595,10 @@
if (a > 0) {
this.isUpData = false;
}
console.log(this.data.LessonPlanList[0].ProjectPicList,'this.data.LessonPlanList[0].ProjectPicList');
if(this.data.LessonPlanList&&this.data.LessonPlanList.length>0){
this.conclusion = this.data.LessonPlanList[0].Summary;
this.ImgList = this.data.LessonPlanList[0].ProjectPicList;
this.isShowBtn=false
// this.isShowBtn=false
}
}
})
......@@ -667,6 +666,10 @@
position: 'top'
})
this.getList();
var tempStr = '/course/teacherLesson'
this.$router.push({
path: tempStr
});
}
})
},
......
<style>
.teacherLesson .TeacherTop {
display: flex;
min-width: 1200px;
/* min-width: 1200px; */
}
.teacherLesson .Teacher_Left {
......@@ -67,7 +67,7 @@
}
.teacherLesson .Cal_Content {
min-width: 880px;
/* min-width: 880px; */
width: 80%;
display: inline-block;
margin-left: 10px;
......@@ -328,6 +328,8 @@
<span v-if="item1.LessonPlanNum>0" @click="goyibeike(item1)" style="color:#2961FE;font-size:12px;margin-right:20px;cursor:pointer;">已备课</span>
<!-- <span class="beikeBtn" v-if="item1.LessonPlanNum>0" style="backgroundColor:#3FC4FF;margin-right:20px;"
@click="goyibeike(item1)">已备课</span> -->
<span class="beikeBtn" style="margin:0 20px 0 0" v-if="AccountType&&item1.LessonPlanNum>0" @click="goBeike(item1)">修改</span>
<span class="beikeBtn" v-if="AccountType&&item1.LessonPlanNum===0" @click="goBeike(item1)">备课</span>
<span style="color:#3FC4FF;font-size:12px;cursor:pointer" v-if="item1.LessonPlanSummaryNum>0&&item1.LessonPlanNum>0" @click="goyibeike(item1)">已反馈</span>
<span style="color:#FFA800;font-size:12px;" v-if="item1.LessonPlanSummaryNum==0&&item1.LessonPlanNum>0">未反馈</span>
......
This diff is collapsed.
......@@ -1425,7 +1425,7 @@
}
let userInfo = this.getLocalStorage();
if (this.$route.query.BranchId) {
this.msg.SchoolId = this.$route.query.BranchId != undefined ? this.$route.query.BranchId : '';
this.msg.SchoolId = this.$route.query.BranchId != undefined ? Number( this.$route.query.BranchId ): '';
} else {
if (userInfo.School_Id > 0) {
......
......@@ -105,13 +105,13 @@
<el-table-column prop="UserName" label="销售" > </el-table-column>
<el-table-column width='170' prop="ClassName" label="班级信息" >
<template slot-scope="scope">
<div>{{scope.row.ClassName}} {{scope.row.ClassTypeName}}<span style="color: #409EFF;" v-if='scope.row.IsContinueClass==1'>(续)</span></div>
<div><span style="cursor: pointer;text-decoration: underline;" @click="goUrlclass('/course/classManage',scope.row.ClassName)">{{scope.row.ClassName}}</span> {{scope.row.ClassTypeName}}<span style="color: #409EFF;" v-if='scope.row.IsContinueClass==1'>(续)</span></div>
<div>学生数量:{{scope.row.StudentCount}}</div>
</template>
</el-table-column>
<el-table-column prop="OrderId" label="订单号" >
<template slot-scope="scope">
<div style="cursor: pointer;" >{{scope.row.OrderId}} </div>
<div style="cursor: pointer;text-decoration: underline;" @click="goUrlorderList('/sale/orderStatistics',scope.row.OrderId)">{{scope.row.OrderId}} </div>
</template>
</el-table-column>
......@@ -394,7 +394,18 @@
tcexport(){//导出
var msg = JSON.parse(JSON.stringify(this.msg));
EduDownLoad("/SellCommission/GetSellCommissionStatisticsToExcel", msg, "提成统计.xls")
}
},
goUrlclass(path,Names){//班级
let Name = encodeURI(Names)
this.OpenNewUrl(path, {
ClassName: Name,
});
},
goUrlorderList(path,ID){//订单跳转
this.OpenNewUrl(path, {
OrderId: ID,
});
},
},
}
......
......@@ -60,14 +60,14 @@
</el-table-column>
<el-table-column width='170' prop="ClassName" label="班级信息">
<template slot-scope="scope">
<div>{{scope.row.ClassName}} {{scope.row.ClassTypeName}}<span style="color: #409EFF;"
<div><span style="cursor: pointer;text-decoration: underline;" @click="goUrlclass('/course/classManage',scope.row.ClassName)">{{scope.row.ClassName}}</span> {{scope.row.ClassTypeName}}<span style="color: #409EFF;"
v-if='scope.row.IsContinueClass==1'>(续)</span></div>
<div>学生数量:{{scope.row.StudentCount}}</div>
</template>
</el-table-column>
<el-table-column prop="OrderId" label="订单号">
<template slot-scope="scope">
<div style="cursor: pointer;">{{scope.row.OrderId}} </div>
<div style="cursor: pointer;text-decoration: underline;" @click="goUrlorderList('/sale/orderStatistics',scope.row.OrderId)">{{scope.row.OrderId}} </div>
</template>
</el-table-column>
......@@ -265,7 +265,18 @@
},
goreturn() {
this.$router.go(-1);
}
},
goUrlclass(path,Names){//班级
let Name = encodeURI(Names)
this.OpenNewUrl(path, {
ClassName: Name,
});
},
goUrlorderList(path,ID){//订单跳转
this.OpenNewUrl(path, {
OrderId: ID,
});
},
......
This diff is collapsed.
......@@ -243,7 +243,7 @@
this.msg.ClassId = Number(this.$route.query.ClassId)
}
if(this.$route.query && this.$route.query.StudentName){
this.msg.StudentName = this.$route.query.StudentName
this.msg.StudentName = decodeURI(this.$route.query.StudentName)
}
},
......
......@@ -73,7 +73,7 @@
<el-table-column prop="UserName" label="销售"> </el-table-column>
<el-table-column width='170' prop="ClassName" label="班级信息">
<template slot-scope="scope">
<div>{{scope.row.ClassName}} {{scope.row.ClassTypeName}}<span style="color: #409EFF;"
<div> <span style="cursor: pointer;text-decoration: underline;" @click="goUrlclass('/course/classManage',scope.row.ClassName)">{{scope.row.ClassName}}</span> {{scope.row.ClassTypeName}}<span style="color: #409EFF;"
v-if='scope.row.IsContinueClass==1'>(续)</span></div>
<div>学生数量:{{scope.row.StudentCount}}</div>
</template>
......@@ -242,7 +242,13 @@
},
goreturn() {
this.$router.go(-1);
}
},
goUrlclass(path,Names){//班级
let Name = encodeURI(Names)
this.OpenNewUrl(path, {
ClassName: Name,
});
},
},
}
</script>
......
<style>
.MainPlan .ClassPlanTable {
width: 100%;
color: #000;
}
.ClassPlanTable th,
.ClassPlanTable td {
border: 1px solid #d1d1d1;
height: 40px;
}
.teacher-Table td {
vertical-align: top;
padding: 5px;
width: 14%;
}
.MainPlan {
margin: 20px;
}
.MainPlan .plan_ClassDate {
height: 30px;
line-height: 30px;
font-size: 15px;
font-weight: bold;
}
.MainPlan .plantHead th {
border-bottom: 0;
}
.MainPlan .planTabDiv {
max-height: calc(100vh - 235px);
height: calc(100vh - 235px);
overflow-y: overlay;
/* margin-right: -3px; */
}
.planTabDiv::-webkit-scrollbar {
width: 3px;
height: 3px;
background-color: #F5F5F5;
}
/*!*定义滚动条轨道 内阴影+圆角*!*/
.planTabDiv::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
border-radius: 10px;
background-color: #F5F5F5;
}
/*!*定义滑块 内阴影+圆角*!*/
.planTabDiv::-webkit-scrollbar-thumb {
border-radius: 10px;
-webkit-box-shadow: -webkit-gradient(linear, 0 0, 0 100%, color-stop(.5, rgba(255, 255, 255, .2)), color-stop(.5, transparent), to(transparent));
background-color: #0ae;
}
.MainPlan .el-collapse-item__header {
font-size: 12px;
line-height: normal;
color: #000;
}
.MainPlan .plan_Inner {
font-size: 12px;
color: #000;
display: flex;
margin-top: 5px;
}
.MainPlan .plan_LeftTitle {
width: 60px;
text-align: right;
flex-shrink: 0
}
.MainPlan .plan_RightInner {
width: 100%;
}
.MainPlan .commonTimeStr {
display: inline-block;
color: #fff;
padding: 1px 3px;
border-radius: 5px;
}
.MainPlan .greenTime {
background-color: green;
}
.MainPlan .blueTime {
background-color: blue;
}
.MainPlan .orangeTime {
background-color: orange;
}
.MainPlan .plan_Tdiv {
text-overflow: ellipsis;
overflow: hidden;
word-break: break-all;
}
</style>
<template>
<div>
<table class="ClassPlanTable plantHead" style="border-collapse:collapse;width:100%;margin:15px 0 0 0;">
<thead>
<tr>
<th colspan="16">甲鹤校区教室使用情况</th>
</tr>
<tr>
<th>周一</th>
<th>周二</th>
<th>周三</th>
<th>周四</th>
<th>周五</th>
<th>周六</th>
<th>周日</th>
</tr>
</thead>
</table>
<div class="planTabDiv" ref="planTabDiv">
<table class="ClassPlanTable teacher-Table" ref="PlanTable" style="border-collapse:collapse;margin-top:0;">
<tbody>
<tr v-for="(item,index) in dataList.fridayList" :key="index">
<td>
<div class="plan_ClassDate">{{dataList.mondayList[index].ClassDate}}</div>
<mateitem v-if="dataList.mondayList&&dataList.mondayList[index].SubList"
:dayData="dataList.mondayList[index]"></mateitem>
</td>
<td>
<div class="plan_ClassDate">{{dataList.tuesdayList[index].ClassDate}}</div>
<mateitem v-if="dataList.tuesdayList&&dataList.tuesdayList[index].SubList"
:dayData="dataList.tuesdayList[index]"></mateitem>
</td>
<td>
<div class="plan_ClassDate">{{dataList.wednesdayList[index].ClassDate}}</div>
<mateitem v-if="dataList.wednesdayList&&dataList.wednesdayList[index].SubList"
:dayData="dataList.wednesdayList[index]"></mateitem>
</td>
<td>
<div class="plan_ClassDate">{{dataList.thursdayList[index].ClassDate}}</div>
<mateitem v-if="dataList.thursdayList&&dataList.thursdayList[index].SubList"
:dayData="dataList.thursdayList[index]"></mateitem>
</td>
<td>
<div class="plan_ClassDate">{{dataList.fridayList[index].ClassDate}}</div>
<mateitem v-if="dataList.fridayList&&dataList.fridayList[index].SubList"
:dayData="dataList.fridayList[index]"></mateitem>
</td>
<td>
<div class="plan_ClassDate">{{dataList.saturdayList[index].ClassDate}}</div>
<mateitem v-if="dataList.saturdayList&&dataList.saturdayList[index].SubList"
:dayData="dataList.saturdayList[index]"></mateitem>
</td>
<td>
<div class="plan_ClassDate">{{dataList.sundayList[index].ClassDate}}</div>
<mateitem v-if="dataList.sundayList&&dataList.sundayList[index].SubList"
:dayData="dataList.sundayList[index]"></mateitem>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</template>
<script>
import mateitem from '../components/mateitem';
export default {
props: {
dataList: {
type: Object,
default: null
},
},
components: {
mateitem,
},
data() {
return {
msg: {
StartTime: "",
EndTime: '',
TeacherId: 0,
ClassRoomId: 0
},
};
},
created() {
},
mounted() {},
methods: {
//获取进度条
getProgress(num, total) {
if (num == 0 || total == 0) {
return 0;
}
return (Math.round(num / total * 100) / 100.00);
}
}
};
</script>
<style>
</style>
<template>
<div>
<el-collapse v-if="dayData&&dayData.SubList&&dayData.SubList.length>0">
<el-collapse-item v-for="(subItem,subIndex) in dayData.SubList" :key="subIndex" :name="subIndex">
<template slot="title">
<div class="plan_Tdiv">
<span v-if="subItem.TimeStr==='早上'" class="commonTimeStr greenTime">{{subItem.TimeStr}}</span>
<span v-if="subItem.TimeStr==='下午'" class="commonTimeStr blueTime">{{subItem.TimeStr}}</span>
<span v-if="subItem.TimeStr==='晚上'" class="commonTimeStr orangeTime">{{subItem.TimeStr}}</span>
<span v-if="subItem.ClassType==2">试听课</span>
<span style="color:red;margin:0 5px;">{{subItem.TeacherName}}</span>
<span>[{{subItem.RoomName}}]</span>
</div>
</template>
<div @click="goUrl(subItem)" style="cursor:pointer;">
<div class="plan_Inner">
<div class="plan_LeftTitle">上课时间:</div>
<div class="plan_RightInner">{{subItem.StartTime}}-{{subItem.EndTime}}</div>
</div>
<div class="plan_Inner" v-if="subItem.ClassName">
<div class="plan_LeftTitle">班级:</div>
<div class="plan_RightInner">{{subItem.ClassName}}</div>
</div>
<div class="plan_Inner">
<div class="plan_LeftTitle">课程名称:</div>
<div class="plan_RightInner">{{subItem.CourseName}}</div>
</div>
<div class="plan_Inner" v-if="subItem.GuestList&&subItem.GuestList.length>0">
<div class="plan_LeftTitle">学生名称:</div>
<div class="plan_RightInner">
<span style="margin-right:10px;" v-for="tItem in subItem.GuestList">{{tItem.GuestName}}</span>
</div>
</div>
<div class="plan_Inner" style="align-items:center;" v-if="subItem.CompleteProgress>=0">
<div class="plan_LeftTitle">课程进度:</div>
<div class="plan_RightInner">
<el-progress :percentage="subItem.CompleteProgress"></el-progress>
</div>
</div>
</div>
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
export default {
props: {
dayData: {
type: Object,
default: null
}
},
components: {
},
data() {
return {
}
},
created() {},
mounted() {
},
methods: {
goUrl(item) {
if (item.ClassType === 1) {
this.$router.push({
path: "../../classroom/courseInfo",
query: {
id: item.Id
}
})
}
}
}
}
</script>
<template>
<div style="padding:20px 0">
<div class="page-content">
<q-table :pagination="setMsg" no-data-label="暂无相关数据" flat class="sticky-column-table sticky-right-column-table"
separator="none" :data="tableData" :columns="columns" row-key="name">
<template v-slot:body-cell-GuestList="props">
<q-td auto-width :props="props">
<span v-for="(item,index) in props.row.GuestList" style="margin-right:5px;">
{{item.GuestName}}
</span>
</q-td>
</template>
<template v-slot:body-cell-StartTime="props">
<q-td auto-width :props="props">
{{props.row.StartTime}}-{{props.row.EndTime}}
</q-td>
</template>
<template v-slot:body-cell-TotalPlanNum="props">
<q-td>
{{props.row.Ranks}}/{{props.row.TotalPlanNum}}
</q-td>
</template>
<template v-slot:body-cell-optioned="props">
<q-td>
<q-btn flat size="xs" icon="iconfont icon-view" v-if="props.row.ClassType==1" color="accent"
style="font-weight:400" label="课程回顾" @click="goCourseRecord(props.row)" />
</q-td>
</template>
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="PageIndex" color="primary" :max="PageCount"
:input="true" @input="changePage" />
</template>
</q-table>
</div>
</div>
</template>
<script>
export default {
props: {
setMsg: {
type: Object,
default: null
},
tableData: {
type: Array,
default: null
},
PageCount: {
type: Number,
default: null
}
},
meta: {
title: "我的课表"
},
components: {
},
data() {
return {
columns: [{
name: 'ClassDate',
label: '日期',
field: 'ClassDate',
align: 'left'
}, {
name: 'StartTime',
label: '上课时间',
field: 'StartTime',
align: 'left'
}, {
name: 'ClassName',
label: '班级',
field: 'ClassName',
align: 'left'
},
{
name: 'CourseName',
label: '课程名称',
field: 'CourseName',
align: 'left',
},
{
name: 'GuestList',
label: '学员名称',
field: 'GuestList',
align: 'left'
},
{
name: 'TeacherName',
label: '教师',
field: 'TeacherName',
align: 'left'
},
{
name: 'TotalPlanNum',
label: '课程进度',
field: 'TotalPlanNum',
align: 'left'
},
{
name: 'optioned',
label: '操作',
field: 'Id'
}
],
tabMsg: {
PageIndex: 1,
PageSize: 15,
rowsPerPage: 15,
StartTime: '',
EndTime: '',
TeacherId: 0,
ClassRoomId: 0,
ClassType: 0
},
PageIndex: 1
}
},
created() {
},
mounted() {
},
methods: {
//翻页
changePage(val) {
this.PageIndex = val;
this.$emit('getChange', this.PageIndex);
},
//跳转到课程回顾
goCourseRecord(item) {
this.$router.push({
path: "../../classroom/courseInfo",
query: {
id: item.Id
}
})
}
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
This diff is collapsed.
......@@ -238,9 +238,10 @@
});
},
gourlteacher2(path,row,item) {
let StudentName = encodeURI(row.StudentName)
this.OpenNewUrl('/financial/'+path, {
ClassId: this.ClassId,
StudentName:row.StudentName,
StudentName:StudentName,
datetype:'2',
StartMonth:item.Month,
EndMonth:item.Month,
......
<template>
<div class="page-body MainPlan">
<div class="col row wrap q-col-gutter-md">
<div class="col-2">
<el-select v-model="msg.ClassRoomId" style="width:100%;" placeholder="教室" size="small" @change="getTypeWay()">
<el-option v-for="item in ClassRoomList" :key="item.RoomName" :label="item.RoomName" :value="item.RoomId">
</el-option>
</el-select>
</div>
<div class="col-2">
<el-date-picker v-model="msg.StartTime" type="date" value-format="yyyy-MM-dd" placeholder="开始日期" size="small"
style="width:100%;" @change="getTypeWay()" clear-icon="iconfont icon-guanbi">
</el-date-picker>
</div>
<div class="col-2">
<el-date-picker v-model="msg.EndTime" type="date" value-format="yyyy-MM-dd" placeholder="结束日期" size="small"
style="width:100%;" @change="getTypeWay()" clear-icon="iconfont icon-guanbi">
</el-date-picker>
</div>
<div class="col-2">
<el-select v-model="msg.ClassType" style="width:100%;" placeholder="类型" size="small" @change="getTypeWay()">
<el-option :key="0" label="全部" :value="0">
</el-option>
<el-option :key="1" label="正常" :value="1">
</el-option>
<el-option :key="2" label="试听课" :value="2">
</el-option>
</el-select>
</div>
<div class="col-2">
<q-btn color="accent" size="sm" class="q-mr-md" style="margin-top:2px;" @click="exchangeType" :label="typeName" />
</div>
</div>
<classmateForm :dataList="dataList" v-if="commonType==1"></classmateForm>
<teachTable v-if="commonType==2" :tableData="tableData" :PageCount="PageCount" :setMsg="tabMsg" @getChange="getChange"></teachTable>
</div>
</template>
<script>
import {
getTeacherDropDownList,
queryClassRoomList
} from '../../api/school/index'
import {
GetClassPlanStatistical,
GetClassPlanStatisticalPage
} from '../../api/teacher/index';
import classmateForm from '../teacher/components/classmate-form';
import teachTable from '../teacher/components/teachTable';
export default {
meta: {
title: "上课计划"
},
components: {
classmateForm,
teachTable
},
data() {
return {
ClassRoomList: [], //
StartTime: "",
EndTime: '',
TeacherId: 0,
ClassRoomId: 0,
dataList: {},
activeNames: [1],
msg: {
StartTime: "",
EndTime: '',
TeacherId: 0,
ClassRoomId: 0,
ClassType: 0,
},
commonType:1, //1日历模式 2列表模式
typeName:'列表模式',
tabMsg:{
PageIndex:1,
PageSize:12,
rowsPerPage: 12,
StartTime:'',
EndTime:'',
TeacherId:0,
ClassRoomId:0,
ClassType:0
},
tableData:[], //表格数据
PageCount:0
};
},
created() {
if (this.$route.query && this.$route.query.ClassType) {
this.msg.ClassType = this.$route.query.ClassType;
}
let userinfo = this.getLocalStorage();
this.msg.TeacherId = userinfo.AccountId;
this.tabMsg.TeacherId = userinfo.AccountId;
this.getClassRoomList();
},
mounted() {
this.getPlanList();
},
methods: {
// 获取校区教室导航列表
getPlanList() {
GetClassPlanStatistical(this.msg).then(res => {
if (res.Code == 1) {
this.dataList = res.Data;
}
}).catch(() => {
})
},
//获取教室下拉
getClassRoomList() {
queryClassRoomList({}).then(res => {
if (res.Code == 1) {
this.ClassRoomList = res.Data;
var obj = {
RoomName: '请选择',
RoomId: 0
}
this.ClassRoomList.unshift(obj);
}
})
},
exchangeType(){
if(this.commonType==1){
this.commonType=2
this.typeName='日历模式'
this.getTableList()
}else{
this.commonType=1;
this.typeName='列表模式'
this.getPlanList()
}
},
getTableList(){
this.tabMsg.StartTime = this.msg.StartTime;
this.tabMsg.EndTime = this.msg.EndTime;
this.tabMsg.ClassRoomId = this.msg.ClassRoomId;
this.tabMsg.ClassType = this.msg.ClassType;
GetClassPlanStatisticalPage(this.tabMsg).then(res => {
if (res.Code == 1) {
this.tableData = res.Data.PageData;
this.PageCount = res.Data.PageCount;
}
})
},
getChange(val) {
this.tabMsg.PageIndex = val;
this.getTableList()
},
getTypeWay(){
if(this.commonType==2){
this.getTableList()
}else{
this.getPlanList()
}
}
}
};
</script>
<template>
<div>
<questionlist-form :queryMsg="qMsg" :editStatus="false"></questionlist-form>
</div>
</template>
<script>
import questionlistForm from '../../components/question/questionlist-form';
export default {
meta: {
title: "题库查询"
},
components: {
questionlistForm
},
data() {
return {
qMsg: {
BankId: 0,
CourseId: 0
}
}
},
created() {
if (this.$route.query && this.$route.query.CourseId) {
this.qMsg.CourseId = this.$route.query.CourseId
}
if (this.$route.query && this.$route.query.BankId) {
this.qMsg.BankId = this.$route.query.BankId
}
},
mounted() {},
methods: {}
}
</script>
......@@ -537,6 +537,11 @@ const routes = [{
component: () =>
import("pages/financial/financalDocument/BasicDocuments.vue")
},
{
path: "/financial/reportform/RecPayQueryTeam", //财务报表 月度班级收支统计
component: () =>
import("pages/financial/reportform/RecPayQueryTeam.vue")
},
{
path: "/administration/document", //行政公告
component: () =>
......@@ -939,6 +944,16 @@ const routes = [{
component: () =>
import("pages/teacher/myClass")
},
{
path: "/teacher/testdatabase", //题库查询
component: () =>
import("pages/teacher/testdatabase")
},
{
path: "/teacher/relation-order", //题库查询
component: () =>
import("pages/teacher/relationOrder")
},
{
path: "/teacher/teachMonthLessonCost", //月度课耗
component: () =>
......@@ -968,7 +983,11 @@ const routes = [{
path: "/teacher/studentManager", //学员管理
component: () =>
import("pages/teacher/studentManager")
},
}, {
path: "/teacher/teacherSchedule",
component: () =>
import("pages/teacher/teacherSchedule")
}
],
},
......
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