Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
罗超
confucius
Commits
394405a4
Commit
394405a4
authored
Jul 20, 2021
by
罗超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
43241cb2
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
225 additions
and
475 deletions
+225
-475
stopbill-form.vue
src/components/sale/stopbill-form.vue
+3
-3
classPlan.vue
src/pages/stuMan/classPlan.vue
+176
-471
teachTable.vue
src/pages/teacher/components/teachTable.vue
+46
-1
No files found.
src/components/sale/stopbill-form.vue
View file @
394405a4
...
...
@@ -197,11 +197,11 @@
<div
class=
"row backInfo_One"
>
<div
class=
"col-6"
>
<span
class=
"backInfo_Title"
>
总课时:
</span>
<span
class=
"backOtherInfo"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Total
PlanNum
}}
课时
</span>
<span
class=
"backOtherInfo"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Total
Hours
}}
课时
</span>
</div>
<div
class=
"col-6"
>
<span
class=
"backInfo_Title"
>
已学课时:
</span>
<span
class=
"backOtherInfo"
style=
"color:#2961FE;cursor:pointer;"
@
click=
"goStudentsClassSee(setingObj.DataObj.Order_Guest_ViewModel)"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Rank
s
}}
课时
</span>
<span
class=
"backOtherInfo"
style=
"color:#2961FE;cursor:pointer;"
@
click=
"goStudentsClassSee(setingObj.DataObj.Order_Guest_ViewModel)"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
CompleteHour
s
}}
课时
</span>
<!--
<span
class=
"backOtherInfo"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Ranks
}}
课时
</span>
-->
</div>
</div>
...
...
@@ -209,7 +209,7 @@
<div
class=
"col-6"
>
<span
class=
"backInfo_Title"
>
剩余课时:
</span>
<span
class=
"backOtherInfo"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Total
PlanNum
-
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Rank
s
}}
class=
"backOtherInfo"
>
{{
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
Total
Hours
-
setingObj
.
DataObj
.
Order_Guest_ViewModel
.
CompleteHour
s
}}
课时
</span>
</div>
</div>
...
...
src/pages/stuMan/classPlan.vue
View file @
394405a4
<
style
>
.OtherCourseNum
{
display
:
inline-block
;
width
:
25px
;
height
:
25px
;
text-align
:
center
;
line-height
:
25px
;
border
:
1px
solid
#2961FE
;
border-radius
:
50%
;
cursor
:
pointer
;
color
:
#2961FE
;
}
.OCourseTable
{
width
:
400px
;
text-align
:
center
;
}
.OCourseTable
tr
td
{
height
:
40px
;
}
.OCourseTable
tr
th
{
height
:
40px
;
background-color
:
rgb
(
238
,
238
,
239
);
}
</
style
>
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-search row items-center"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
<div
class=
"col-3"
>
<q-input
@
change=
"getClassList"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.ClassName"
label=
"班级名称"
@
clear=
"getClassList"
maxlength=
"20"
/>
</div>
<div
class=
"col-3"
>
<q-select
@
input=
"getClassList"
standout=
"bg-primary text-white"
option-value=
"Id"
option-label=
"Name"
v-model=
"msg.ClassStatus"
:options=
"classStatusList"
emit-value
map-options
label=
"班级状态"
/>
</div>
<div
class=
"col-3"
>
<q-input
@
change=
"getClassList"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.CourseName"
label=
"学习课程"
@
clear=
"getClassList"
maxlength=
"20"
/>
</div>
<div
class=
"col-3"
>
<q-select
@
input=
"getClassList"
standout=
"bg-primary text-white"
option-value=
"SId"
option-label=
"SName"
v-model=
"msg.School_Id"
:options=
"schoolList"
emit-value
map-options
label=
"关联校区"
/>
</div>
<div
class=
"page-body MainPlan"
>
<div
class=
"col row wrap q-col-gutter-md"
>
<div
class=
"col-2"
>
<el-select
v-model=
"msg.TeacherId"
style=
"width:100%;"
placeholder=
"教师团队"
size=
"small"
@
change=
"getPlanList()"
>
<el-option
v-for=
"item in TeacherList"
:key=
"item.TeacherName"
:label=
"item.TeacherName"
:value=
"item.TId"
>
</el-option>
</el-select>
</div>
<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"
:picker-options=
"picker"
>
</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"
:picker-options=
"pickerEnd"
>
</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"
/>
<q-btn
color=
"negative"
size=
"sm"
label=
"调课申请"
@
click=
"openForm"
></q-btn>
</div>
</div>
<div
class=
"page-content"
>
<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=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
班级信息
</div>
<q-space
/>
</
template
>
<
template
v-slot:body-cell-ClassName=
"props"
>
<q-td
auto-width
:props=
"props"
>
<div
style=
"display: flex;align-items: center;"
>
<q-avatar
size=
"md"
style=
"background:#d4dfff;color:#2961FE;font-weight:bold;"
v-if=
"props.row.ClassName"
>
{{
GetFirst
(
props
.
row
.
ClassName
)
}}
</q-avatar>
<div
>
<span
style=
"color:#2961FE;margin-left:10px;cursor:pointer;"
@
click=
"getClassInfo(props.row)"
title=
"点击查看详情"
>
{{
props
.
row
.
ClassName
}}
</span>
<div
style=
"margin-left: 10px;"
>
{{
props
.
row
.
ClassNo
}}
</div>
</div>
</div>
</q-td>
</
template
>
<
template
v-slot:body-cell-OtherCourseName=
"props"
>
<q-td
auto-width
:props=
"props"
>
<template
v-if=
"props.row.OtherCourseList"
>
<template
v-if=
"props.row.OtherCourseList.length==1"
>
{{
props
.
row
.
OtherCourseList
[
0
].
CourseName
}}
【
{{
props
.
row
.
OtherCourseList
[
0
].
ClassHours
}}
课时】
</
template
>
<
template
v-if=
"props.row.OtherCourseList.length>1"
>
{{
props
.
row
.
OtherCourseList
[
0
].
CourseName
}}
:
<span
class=
"OtherCourseNum"
>
{{
props
.
row
.
OtherCourseList
.
length
}}
<q-popup-proxy>
<q-banner>
<table
class=
"OCourseTable"
style=
"border-collapse:collapse;"
>
<tr>
<th>
课程名称
</th>
<th>
课时数
</th>
</tr>
<tr
v-for=
"(sItem,sIndex) in props.row.OtherCourseList"
style=
"border-bottom:1px dashed #d1d1d1;"
>
<td>
{{
sItem
.
CourseName
}}
</td>
<td>
{{
sItem
.
ClassHours
}}
</td>
</tr>
</table>
</q-banner>
</q-popup-proxy>
</span>
</
template
>
<
template
v-if=
"props.row.OtherCourseList.length==0"
>
无
</
template
>
</template>
</q-td>
</template>
<
template
v-slot:body-cell-TeacherName=
"props"
>
<q-td
auto-width
:props=
"props"
>
<span
style=
"color:#3FC4FF;"
>
{{
props
.
row
.
TeacherName
}}
</span>
</q-td>
</
template
>
<
template
v-slot:body-cell-CourseId=
"props"
>
<q-td
auto-width
:props=
"props"
>
<span
style=
"color:blue;cursor:pointer;"
@
click=
"goChapter(props.row.CouseId)"
>
详情
</span>
</q-td>
</
template
>
<
template
v-slot:body-cell-CompleteProgress=
"props"
>
<q-td
auto-width
:props=
"props"
>
{{
props
.
row
.
UsePlanNum
}}
/
{{
props
.
row
.
TotalPlanNum
}}
</q-td>
</
template
>
<!--班级状态-->
<
template
v-slot:body-cell-ClassStatusStr=
"props"
>
<q-td>
<span>
{{
props
.
row
.
ClassStatusStr
}}
</span>
<i
class=
"iconfont icon-edit"
@
click
.
stop=
"getClassItem(props.row)"
title=
"点击修改班级状态"
>
<q-popup-proxy>
<q-banner
v-if=
"isShowEdit"
>
<div
class=
"calenderDialog"
>
<div
style=
"margin:10px 0 15px 0;"
>
设置班级状态
</div>
<q-select
standout=
"bg-primary text-white"
option-value=
"Id"
option-label=
"Name"
v-model=
"statusMsg.ClassStatus"
:options=
"classStatusList"
emit-value
map-options
label=
"班级状态"
/>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
flat
color=
"grey-10"
@
click=
"isShowEdit=false"
style=
"font-weight:400 !important"
/>
<q-btn
label=
"确认"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
@
click=
"setClassStatus()"
/>
</q-card-actions>
</div>
</q-banner>
</q-popup-proxy>
</i>
</q-td>
</
template
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-td
:props=
"props"
>
<q-btn-dropdown
flat
size=
"xs"
color=
"dark"
label=
"更多"
style=
"margin-left:10px;"
>
<q-list>
<q-item
clickable
v-close-popup
@
click=
"gotoOrder(props.row)"
>
<q-item-section>
<q-item-label>
订单中心
</q-item-label>
</q-item-section>
</q-item>
<q-item
clickable
v-close-popup
@
click=
"goPayment(props.row)"
>
<q-item-section>
<q-item-label>
收支明细
</q-item-label>
</q-item-section>
</q-item>
<q-item
clickable
v-close-popup
@
click=
"showOtherCourse(props.row)"
style=
"display:none;"
>
<q-item-section>
<q-item-label>
关联其他课程
</q-item-label>
</q-item-section>
</q-item>
<q-item
clickable
v-close-popup
@
click=
"gomonthLessonCost(props.row)"
>
<q-item-section>
<q-item-label>
月度课耗
</q-item-label>
</q-item-section>
</q-item>
</q-list>
</q-btn-dropdown>
</q-td>
</
template
>
</q-table>
<class-form
v-if=
"isShowClassForm"
:save-obj=
"classObjOption"
@
close=
"closeClassSaveForm"
@
success=
"refreshPage"
>
</class-form>
<classinfo-form
v-if=
"isShowClassInfo"
:seting-obj=
"classObjOption"
:isShowEditBtn=
"1"
@
close=
"closeClassSaveForm"
@
success=
"refreshPage"
>
</classinfo-form>
<othercourseForm
v-if=
"IsShowOtherCourse"
:seting-obj=
"classObjOption"
@
close=
"closeClassSaveForm"
@
success=
"refreshPage"
>
</othercourseForm>
</div>
<classmateForm
:dataList=
"dataList"
v-if=
"commonType==1"
></classmateForm>
<change-class-form
v-if=
"persistent"
@
close=
"closeSaveForm"
@
success=
"refreshPage"
></change-class-form>
<teachTable
v-if=
"commonType==2"
:tableData=
"tableData"
:PageCount=
"PageCount"
:setMsg=
"tabMsg"
:showCZ=
"false"
@
getChange=
"getChange"
></teachTable>
</div>
</
template
>
<
script
>
import
{
queryClassStatus
List
,
saveClassStatus
,
//修改班级状态
}
from
'../../api/
course/class'
;
getTeacherDropDown
List
,
queryClassRoomList
}
from
'../../api/
school/index'
import
{
GetClassPageList
GetClassPlanStatistical
,
GetClassPlanStatisticalPage
}
from
'../../api/teacher/index'
;
//获取校区列表
import
{
getSchoolDropdown
,
deleteClass
}
from
'../../api/school/index'
;
import
classForm
from
'../../components/course/class-form'
;
import
classinfoForm
from
'../../components/course/classinfo-form'
;
import
othercourseForm
from
'../../components/course/othercourse-form'
;
import
classmateForm
from
'../../components/course/classmate-form'
;
import
teachTable
from
'../teacher/components/teachTable'
;
import
changeClassForm
from
'../../components/teacher/changeClassForm.vue'
export
default
{
meta
:
{
title
:
"
班级管理
"
title
:
"
我的课表
"
},
components
:
{
classForm
,
classinfoForm
,
othercourse
Form
class
mate
Form
,
teachTable
,
changeClass
Form
},
data
()
{
return
{
columns
:
[{
name
:
'ClassName'
,
label
:
'班级名称'
,
field
:
'ClassName'
,
align
:
'left'
},
{
name
:
'SchoolName'
,
label
:
'校区'
,
field
:
'SchoolName'
,
align
:
'left'
,
},
{
name
:
'CourseName'
,
label
:
'课程'
,
field
:
'CourseName'
,
align
:
'left'
},
{
name
:
'OtherCourseName'
,
label
:
'关联其他课程'
,
field
:
'OtherCourseName'
,
align
:
'left'
},
{
name
:
'CourseId'
,
label
:
'课程大纲'
,
field
:
'CourseId'
,
align
:
'left'
},
{
name
:
'TeacherName'
,
label
:
'带班老师'
,
field
:
'TeacherName'
,
align
:
'left'
},
{
name
:
'OpenTime'
,
label
:
'开班时间'
,
field
:
'OpenTime'
,
align
:
'left'
},
{
name
:
'FinishTimeStr'
,
label
:
'预计结束时间'
,
field
:
'FinishTimeStr'
,
align
:
'left'
},
{
name
:
'CompleteProgress'
,
label
:
'课程进度'
,
field
:
'CompleteProgress'
,
align
:
'left'
},
{
name
:
'ClassStatusStr'
,
label
:
'状态'
,
align
:
'left'
,
field
:
'ClassStatusStr'
},
{
name
:
'optioned'
,
label
:
'操作'
,
field
:
'CourseId'
}
],
data
:
[],
loading
:
false
,
persistent
:
false
,
TeacherList
:
[],
//教师团队
ClassRoomList
:
[],
//
StartTime
:
""
,
EndTime
:
''
,
TeacherId
:
0
,
ClassRoomId
:
0
,
dataList
:
{},
activeNames
:
[
1
],
msg
:
{
pageIndex
:
1
,
pageSize
:
12
,
StartTime
:
""
,
EndTime
:
''
,
TeacherId
:
0
,
ClassRoomId
:
0
,
ClassType
:
0
,
},
commonType
:
1
,
//1日历模式 2列表模式
typeName
:
'列表模式'
,
tabMsg
:
{
PageIndex
:
1
,
PageSize
:
12
,
rowsPerPage
:
12
,
ClassName
:
''
,
//班级名称
ClassStatus
:
0
,
//班级状态
TeacherName
:
''
,
//带班老师
Teacher_Id
:
0
,
CourseName
:
''
,
//学习课程
School_Id
:
-
1
,
//关联校区
StartTime
:
''
,
EndTime
:
''
,
TeacherId
:
0
,
ClassRoomId
:
0
,
ClassType
:
0
},
//班级状态
classStatusList
:
[],
//关联校区列表
schoolList
:
[],
pageCount
:
0
,
classObjOption
:
null
,
isShowEdit
:
false
,
statusMsg
:
{
ClassId
:
0
,
ClassStatus
:
0
tableData
:
[],
//表格数据
PageCount
:
0
,
picker
:{
disabledDate
:(
time
)
=>
{
let
endTime
=
this
.
msg
.
EndTime
if
(
endTime
){
return
Date
.
now
()
-
8.64e7
>
time
.
getTime
()
>=
new
Date
(
endTime
).
getTime
()
-
8.64e7
}
else
{
return
time
.
getTime
()
<
Date
.
now
()
-
8.64e7
}
}
},
isShowClassForm
:
false
,
//是否显示新增修改弹窗
isShowClassInfo
:
false
,
//是否显示课程信息
IsShowOtherCourse
:
false
,
//是否显示其他课程
}
pickerEnd
:{
disabledDate
:(
time
)
=>
{
let
startTime
=
this
.
msg
.
StartTime
if
(
startTime
){
return
time
.
getTime
()
<=
new
Date
(
startTime
).
getTime
()
-
8.64e7
}
else
{
return
time
.
getTime
()
<
Date
.
now
()
-
8.64e7
}
}
}
};
},
created
()
{
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
Class
Nam
e
)
{
this
.
msg
.
Class
Name
=
decodeURI
(
this
.
$route
.
query
.
ClassName
)
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
Class
Typ
e
)
{
this
.
msg
.
Class
Type
=
this
.
$route
.
query
.
ClassType
;
}
let
userInfo
=
this
.
getLocalStorage
();
this
.
msg
.
Teacher_Id
=
userInfo
.
AccountId
;
this
.
getClassStatus
();
this
.
getSchool
();
let
date
=
new
Date
();
let
today
=
date
.
getFullYear
()
+
'-'
+
(
date
.
getMonth
()
<
9
?
'0'
+
(
date
.
getMonth
()
+
1
):
date
.
getMonth
()
+
1
)
+
'-'
+
(
date
.
getDate
()
<
10
?
'0'
+
date
.
getDate
()
<
10
:
date
.
getDate
())
console
.
log
(
115
,
today
)
this
.
msg
.
StartTime
=
today
this
.
tabMsg
.
StartTime
=
today
// let userinfo = this.getLocalStorage();
// this.msg.TeacherId = userinfo.AccountId;
// this.tabMsg.TeacherId = userinfo.AccountId;
this
.
getClassRoomList
();
},
mounted
()
{
this
.
getClassList
();
this
.
GetTeacherList
();
this
.
getPlanList
();
},
methods
:
{
//删除班级
removeClass
(
item
,
status
)
{
let
delMsg
=
{
ClassId
:
item
.
ClassId
,
Status
:
status
};
var
message
=
"是否要删除该班级?"
;
if
(
status
==
0
)
{
message
=
"是否要恢复该班级?"
;
}
this
.
$q
.
dialog
({
title
:
'提示信息'
,
message
:
message
,
cancel
:
true
,
persistent
:
true
,
ok
:
"确定"
,
cancel
:
"取消"
,
}).
onOk
(()
=>
{
deleteClass
(
delMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'删除成功!'
,
position
:
'top'
})
this
.
getClassList
();
}
else
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
res
.
Message
,
position
:
'top'
})
}
})
}).
onCancel
(()
=>
{
});
},
//当前点击的班级
getClassItem
(
item
)
{
this
.
isShowEdit
=
true
;
var
Obj
=
JSON
.
parse
(
JSON
.
stringify
(
item
));
this
.
statusMsg
.
ClassStatus
=
Obj
.
ClassStatus
;
this
.
statusMsg
.
ClassId
=
Obj
.
ClassId
;
refreshPage
()
{
this
.
getPlanList
();
},
//更新班级状态
setClassStatus
()
{
saveClassStatus
(
this
.
statusMsg
).
then
(
res
=>
{
this
.
isShowEdit
=
false
;
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'设置成功!'
,
position
:
'top'
})
this
.
getClassList
();
}
else
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
res
.
Message
,
position
:
'top'
})
}
});
openForm
()
{
this
.
persistent
=
true
},
gotoOrder
(
item
)
{
var
tempStr
=
'/course/classorder?ClassId='
+
item
.
ClassId
+
'&isFromMyclass=1'
;
this
.
$router
.
push
({
path
:
tempStr
});
closeSaveForm
()
{
this
.
persistent
=
false
},
//跳转到收支明细
goPayment
(
item
)
{
this
.
$router
.
push
({
path
:
'/course/paymentDetail'
,
query
:
{
ClassId
:
item
.
ClassId
,
School_Id
:
item
.
School_Id
,
ClassName
:
encodeURI
(
item
.
ClassName
)
,
isFromMyClass
:
1
,
blank
:
'y'
// 获取校区教室导航列表
getPlanList
()
{
GetClassPlanStatistical
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
dataList
=
res
.
Data
;
}
}).
catch
(()
=>
{
})
},
//获取
校区列表
getSchool
()
{
get
SchoolDropdown
({}).
then
(
res
=>
{
//获取
教师下拉
GetTeacherList
()
{
get
TeacherDropDownList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
var
tempArray
=
res
.
Data
;
if
(
!
tempArray
)
{
tempArray
=
[];
this
.
TeacherList
=
res
.
Data
;
var
obj
=
{
TeacherName
:
'请选择'
,
TId
:
0
}
tempArray
.
unshift
({
SId
:
-
1
,
SName
:
"不限"
})
this
.
schoolList
=
tempArray
;
this
.
TeacherList
.
unshift
(
obj
);
}
})
},
//获取
班级状态列表
getClass
Status
()
{
queryClass
Status
List
({}).
then
(
res
=>
{
//获取
教室下拉
getClass
RoomList
()
{
queryClass
Room
List
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
classStatusList
=
res
.
Data
;
this
.
ClassRoomList
=
res
.
Data
;
var
obj
=
{
RoomName
:
'请选择'
,
RoomId
:
0
}
this
.
ClassRoomList
.
unshift
(
obj
);
}
}).
catch
(()
=>
{})
},
//翻页
changePage
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getClassList
()
},
//获取菜单分页列表
getClassList
()
{
this
.
loading
=
true
;
GetClassPageList
(
this
.
msg
).
then
(
res
=>
{
this
.
loading
=
false
;
this
.
data
=
res
.
Data
.
PageData
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
}).
catch
(()
=>
{
this
.
loading
=
false
})
},
//刷新页面
refreshPage
()
{
this
.
isShowClassForm
=
false
;
this
.
getClassList
();
},
//新增修改菜单
EditCourse
(
obj
)
{
if
(
obj
)
{
this
.
classObjOption
=
obj
exchangeType
()
{
if
(
this
.
commonType
==
1
)
{
this
.
commonType
=
2
this
.
typeName
=
'日历模式'
this
.
getTableList
()
}
else
{
this
.
classObjOption
=
null
this
.
commonType
=
1
;
this
.
typeName
=
'列表模式'
this
.
getPlanList
()
}
this
.
isShowClassForm
=
true
},
//关闭弹窗
closeClassSaveForm
()
{
//关闭新增修改弹窗
this
.
isShowClassForm
=
false
;
//关闭班级信息弹窗
this
.
isShowClassInfo
=
false
;
//关闭关联其他课程弹窗
this
.
IsShowOtherCourse
=
false
;
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
;
}
})
},
GetFirst
(
val
)
{
if
(
val
)
{
return
val
.
substr
(
0
,
1
);
}
getChange
(
val
)
{
this
.
tabMsg
.
PageIndex
=
val
;
this
.
getTableList
()
},
//获取进度条
getProgress
(
num
,
total
)
{
if
(
num
==
0
||
total
==
0
)
{
return
0
;
getTypeWay
()
{
if
(
this
.
commonType
==
2
)
{
this
.
getTableList
()
}
else
{
this
.
getPlanList
()
}
return
(
Math
.
round
(
num
/
total
*
100
)
/
100.00
);
},
//显示关联课程
showOtherCourse
(
item
)
{
this
.
IsShowOtherCourse
=
true
;
this
.
classObjOption
=
item
;
},
//点击班级名称
getClassInfo
(
obj
)
{
this
.
classObjOption
=
null
;
this
.
isShowClassInfo
=
false
;
this
.
classObjOption
=
obj
;
this
.
isShowClassInfo
=
true
;
},
gomonthLessonCost
(
row
){
let
ClassName
=
encodeURI
(
row
.
ClassName
)
this
.
OpenNewUrl
(
'teachMonthLessonCost'
,
{
ClassId
:
row
.
ClassId
,
ClassName
:
ClassName
,
});
},
//跳转到课程大纲
goChapter
(
CouseId
){
this
.
OpenNewUrl
(
'/course/chapter'
,
{
CourseId
:
CouseId
});
}
}
}
}
;
</
script
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
</
style
>
src/pages/teacher/components/teachTable.vue
View file @
394405a4
...
...
@@ -2,7 +2,7 @@
<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"
>
separator=
"none"
:data=
"tableData"
:columns=
"
showCZ?columns:columns2
"
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;"
>
...
...
@@ -48,6 +48,10 @@
PageCount
:
{
type
:
Number
,
default
:
null
},
showCZ
:{
//是否显示操作栏
Type
:
Boolean
,
default
:
true
}
},
meta
:
{
...
...
@@ -103,6 +107,47 @@
label
:
'操作'
,
field
:
'Id'
}
],
columns2
:
[{
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'
},
],
tabMsg
:
{
PageIndex
:
1
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment