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
a0334d16
Commit
a0334d16
authored
Jul 08, 2022
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
111
parent
3fb561df
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
982 additions
and
1242 deletions
+982
-1242
stuList.vue
src/pages/stuMan/stuList.vue
+982
-1242
No files found.
src/pages/stuMan/stuList.vue
View file @
a0334d16
<
style
>
<
style
>
li
{
li
{
list-style-type
:
none
;
list-style-type
:
none
;
}
}
.stuList
ul
{
.stuList
ul
{
padding
:
0px
;
padding
:
0px
;
}
}
.stuList
li
{
.stuList
li
{
background
:
rgba
(
221
,
222
,
224
,
0.2
);
background
:
rgba
(
221
,
222
,
224
,
0.2
);
border-radius
:
4px
;
border-radius
:
4px
;
margin-top
:
15px
;
margin-top
:
15px
;
}
}
.stuList
li
.dline
{
.stuList
li
.dline
{
display
:
table
;
display
:
table
;
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
}
}
.stuList
li
.d1
,
.stuList
li
.d1
,
.stuList
li
.d2
,
.stuList
li
.d2
,
.stuList
li
.d3
,
.stuList
li
.d3
,
.stuList
li
.d4
,
.stuList
li
.d4
,
.stuList
li
.d5
{
.stuList
li
.d5
{
width
:
18%
;
width
:
18%
;
padding
:
20px
20px
10px
;
padding
:
20px
20px
10px
;
}
}
.stuList
li
.d7
{
.stuList
li
.d7
{
flex
:
1
;
flex
:
1
;
width
:
1px
;
width
:
1px
;
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
center
;
justify-content
:
center
;
}
}
.stuList
li
.d1
.di-title
{
.stuList
li
.d1
.di-title
{
font-size
:
16px
;
font-size
:
16px
;
color
:
#111111
;
color
:
#111111
;
}
}
.stuList
li
.d1
.di-c
{
.stuList
li
.d1
.di-c
{
font-size
:
14px
;
font-size
:
14px
;
display
:
flex
;
display
:
flex
;
line-height
:
28px
;
line-height
:
28px
;
color
:
#111111
;
color
:
#111111
;
}
}
.stuList
li
.d6
{
.stuList
li
.d6
{
padding
:
10px
20px
;
padding
:
10px
20px
;
width
:
100%
;
width
:
100%
;
height
:
inherit
;
height
:
inherit
;
position
:
relative
;
position
:
relative
;
border-top
:
1px
solid
#dddee0
;
border-top
:
1px
solid
#dddee0
;
}
}
.stuList
li
.d6
.progress
{
.stuList
li
.d6
.progress
{
width
:
100%
;
width
:
100%
;
height
:
5px
;
height
:
5px
;
position
:
absolute
;
position
:
absolute
;
left
:
0
;
left
:
0
;
bottom
:
0
;
bottom
:
0
;
}
}
.stuList
li
.d2
div
{
.stuList
li
.d2
div
{
margin
:
2px
0
;
margin
:
2px
0
;
font-size
:
14px
;
font-size
:
14px
;
color
:
#111111
;
color
:
#111111
;
}
}
.stuList
li
.d2-n
{
.stuList
li
.d2-n
{
font-size
:
12px
;
font-size
:
12px
;
color
:
#999999
;
color
:
#999999
;
margin-right
:
20px
;
margin-right
:
20px
;
}
}
.stuList
li
.d3
.d3-s
{
.stuList
li
.d3
.d3-s
{
color
:
var
(
--q-color-negative
);
color
:
var
(
--q-color-negative
);
font-weight
:
bold
;
font-weight
:
bold
;
}
}
.stuList
li
.d3
div
{
.stuList
li
.d3
div
{
margin
:
2px
0
;
margin
:
2px
0
;
font-size
:
14px
;
font-size
:
14px
;
}
}
.stuList
li
.d4
div
{
.stuList
li
.d4
div
{
font-size
:
14px
;
font-size
:
14px
;
color
:
#111111
;
color
:
#111111
;
margin
:
2px
0
;
margin
:
2px
0
;
}
}
.stuList
li
.d5
div
{
.stuList
li
.d5
div
{
font-size
:
14px
;
font-size
:
14px
;
color
:
#111111
;
color
:
#111111
;
margin
:
2px
0
;
margin
:
2px
0
;
}
}
.stuList
.myCourseNName
{
.stuList
.myCourseNName
{
width
:
25px
;
width
:
25px
;
height
:
25px
;
height
:
25px
;
border-radius
:
50%
;
border-radius
:
50%
;
...
@@ -108,45 +108,45 @@ li {
...
@@ -108,45 +108,45 @@ li {
text-align
:
center
;
text-align
:
center
;
line-height
:
25px
;
line-height
:
25px
;
background-color
:
#004d40
;
background-color
:
#004d40
;
}
}
.stuList
.app-image
{
.stuList
.app-image
{
background-position
:
center
center
;
background-position
:
center
center
;
width
:
50px
;
width
:
50px
;
height
:
50px
;
height
:
50px
;
border-radius
:
0%
;
border-radius
:
0%
;
float
:
left
;
float
:
left
;
margin-right
:
8px
;
margin-right
:
8px
;
}
}
.Sysuser_Date
.el-input
{
.Sysuser_Date
.el-input
{
width
:
100%
;
width
:
100%
;
border
:
none
;
border
:
none
;
background-color
:
transparent
;
background-color
:
transparent
;
}
}
.Sysuser_Date
.el-input__inner
{
.Sysuser_Date
.el-input__inner
{
width
:
100%
;
width
:
100%
;
border
:
none
;
border
:
none
;
background-color
:
transparent
;
background-color
:
transparent
;
}
}
.Sysuser_Date
.el-range-editor
.el-range-input
{
.Sysuser_Date
.el-range-editor
.el-range-input
{
width
:
100%
;
width
:
100%
;
border
:
none
;
border
:
none
;
background-color
:
transparent
;
background-color
:
transparent
;
}
}
.el-picker-panel
{
.el-picker-panel
{
z-index
:
99999
!important
;
z-index
:
99999
!important
;
}
}
.syster_qDropdown
.q-btn__wrapper
{
.syster_qDropdown
.q-btn__wrapper
{
padding
:
0
3px
;
padding
:
0
3px
;
min-height
:
0
!important
;
min-height
:
0
!important
;
}
}
.editOrderDrawerTop
{
.editOrderDrawerTop
{
width
:
100%
;
width
:
100%
;
height
:
50px
;
height
:
50px
;
display
:
flex
;
display
:
flex
;
...
@@ -154,37 +154,32 @@ li {
...
@@ -154,37 +154,32 @@ li {
background-color
:
#f0f5fb
;
background-color
:
#f0f5fb
;
padding
:
5px
10px
;
padding
:
5px
10px
;
align-items
:
center
;
align-items
:
center
;
}
}
.stics
{
.stics
{
padding
:
10px
20px
;
padding
:
10px
20px
;
background
:
#dddee0
;
background
:
#dddee0
;
border-radius
:
4px
;
border-radius
:
4px
;
font-size
:
13px
;
font-size
:
13px
;
color
:
#000000
;
color
:
#000000
;
font-weight
:
bold
;
font-weight
:
bold
;
}
}
.stics
.stics-name
{
.stics
.stics-name
{
color
:
#2d2d2d
;
color
:
#2d2d2d
;
font-weight
:
600
;
font-weight
:
600
;
margin-right
:
10px
;
margin-right
:
10px
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
<div
:class=
"[
:class=
"[
{ 'page-body stuList': !isComponent },
{ 'page-body stuList': !isComponent },
{ 'full-height': isComponent }
{ 'full-height': isComponent }
]"
]">
>
<div
class=
"row q-mb-md"
v-if=
"source != 1 && !isComponent"
>
<div
class=
"row q-mb-md"
v-if=
"source != 1 && !isComponent"
>
<q-space></q-space>
<q-space></q-space>
<div
style=
"position: relative"
>
<div
style=
"position: relative"
>
<q-btn
<q-btn
color=
"accent"
label=
"高级查询"
@
click=
"IsShowQuery = true"
></q-btn>
color=
"accent"
label=
"高级查询"
@
click=
"IsShowQuery = true"
></q-btn>
<q-badge
floating
rounded
color=
"red"
>
{{
queryNum
}}
</q-badge>
<q-badge
floating
rounded
color=
"red"
>
{{
queryNum
}}
</q-badge>
</div>
</div>
</div>
</div>
...
@@ -194,37 +189,13 @@ li {
...
@@ -194,37 +189,13 @@ li {
<div
class=
"page-search row items-center flex"
v-if=
"!isComponent"
>
<div
class=
"page-search row items-center flex"
v-if=
"!isComponent"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
@
input=
"changeSchool"
dense
filled
v-model=
"msg.School_Id"
class=
"col-6"
option-label=
"SName"
@
input=
"changeSchool"
option-value=
"SId"
:options=
"SchoolList"
emit-value
map-options
label=
"校区"
/>
dense
filled
v-model=
"msg.School_Id"
class=
"col-6"
option-label=
"SName"
option-value=
"SId"
:options=
"SchoolList"
emit-value
map-options
label=
"校区"
/>
</div>
</div>
<div
class=
"col-3"
v-if=
"source != 1"
>
<div
class=
"col-3"
v-if=
"source != 1"
>
<q-select
<q-select
@
input=
"changeCourse"
dense
filled
v-model=
"msg.CourseId"
class=
"col-6"
option-label=
"CourseName"
@
input=
"changeCourse"
option-value=
"CourseId"
use-input
:options=
"CourseList"
@
filter=
"filterCourse"
emit-value
map-options
dense
label=
"课程"
clearable
>
filled
v-model=
"msg.CourseId"
class=
"col-6"
option-label=
"CourseName"
option-value=
"CourseId"
use-input
:options=
"CourseList"
@
filter=
"filterCourse"
emit-value
map-options
label=
"课程"
clearable
>
<template
v-slot:no-option
>
<template
v-slot:no-option
>
<q-item>
<q-item>
<q-item-section
class=
"text-grey"
>
<q-item-section
class=
"text-grey"
>
...
@@ -235,31 +206,16 @@ li {
...
@@ -235,31 +206,16 @@ li {
</q-select>
</q-select>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
@
input=
"resetSearch"
dense
filled
v-model=
"msg.ClassId"
class=
"col-6"
use-input
@
input=
"resetSearch"
@
filter=
"filterClass"
option-label=
"ClassName"
option-value=
"ClassId"
:options=
"classList"
emit-value
dense
map-options
label=
"班级"
clearable
>
filled
<
template
v-slot:option=
"{
v-model=
"msg.ClassId"
class=
"col-6"
use-input
@
filter=
"filterClass"
option-label=
"ClassName"
option-value=
"ClassId"
:options=
"classList"
emit-value
map-options
label=
"班级"
clearable
>
<
template
v-slot:option=
"{
itemProps,
itemProps,
itemEvents,
itemEvents,
opt,
opt,
selected,
selected,
toggleOption
toggleOption
}"
}"
>
>
<q-item
v-bind=
"itemProps"
v-on=
"itemEvents"
>
<q-item
v-bind=
"itemProps"
v-on=
"itemEvents"
>
<q-item-section>
<q-item-section>
<q-item-label
v-html=
"opt.ClassName"
></q-item-label>
<q-item-label
v-html=
"opt.ClassName"
></q-item-label>
...
@@ -279,33 +235,12 @@ li {
...
@@ -279,33 +235,12 @@ li {
</q-select>
</q-select>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-input
<q-input
@
keyup
.
enter
.
native=
"resetSearch"
clearable
dense
filled
v-model=
"msg.GuestName"
label=
"学员姓名"
@
keyup
.
enter
.
native=
"resetSearch"
@
clear=
"resetSearch"
maxlength=
"20"
/>
clearable
dense
filled
v-model=
"msg.GuestName"
label=
"学员姓名"
@
clear=
"resetSearch"
maxlength=
"20"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
@
input=
"resetSearch"
dense
filled
v-model=
"msg.GuestState"
class=
"col-6"
option-label=
"Name"
@
input=
"resetSearch"
option-value=
"Id"
use-input
:options=
"GuestStateList"
emit-value
map-options
label=
"学员状态"
clearable
>
dense
filled
v-model=
"msg.GuestState"
class=
"col-6"
option-label=
"Name"
option-value=
"Id"
use-input
:options=
"GuestStateList"
emit-value
map-options
label=
"学员状态"
clearable
>
<
template
v-slot:no-option
>
<
template
v-slot:no-option
>
<q-item>
<q-item>
<q-item-section
class=
"text-grey"
>
<q-item-section
class=
"text-grey"
>
...
@@ -316,37 +251,13 @@ li {
...
@@ -316,37 +251,13 @@ li {
</q-select>
</q-select>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
@
input=
"getShaixuanFrom()"
dense
filled
clearable
option-value=
"Id"
option-label=
"Name"
@
input=
"getShaixuanFrom()"
v-model=
"msg.CreateType"
:options=
"customFromList"
emit-value
map-options
label=
"客户来源"
/>
dense
filled
clearable
filled
option-value=
"Id"
option-label=
"Name"
v-model=
"msg.CreateType"
:options=
"customFromList"
emit-value
map-options
label=
"客户来源"
/>
</div>
</div>
<div
class=
"col-3"
v-if=
"msg.CreateType == 1"
>
<div
class=
"col-3"
v-if=
"msg.CreateType == 1"
>
<q-select
<q-select
filled
v-model=
"msg.StuChannelId"
@
input=
"resetSearch"
label=
"收客渠道"
:dense=
"false"
filled
:options=
"StuChannelList"
option-label=
"Name"
option-value=
"Id"
emit-value
map-options
use-input
clearable
v-model=
"msg.StuChannelId"
@
filter=
"filterStuChannel"
>
@
input=
"resetSearch"
label=
"收客渠道"
:dense=
"false"
:options=
"StuChannelList"
option-label=
"Name"
option-value=
"Id"
emit-value
map-options
use-input
clearable
@
filter=
"filterStuChannel"
>
<
template
v-slot:no-option
>
<
template
v-slot:no-option
>
<q-item>
<q-item>
<q-item-section
class=
"text-grey"
>
<q-item-section
class=
"text-grey"
>
...
@@ -357,21 +268,9 @@ li {
...
@@ -357,21 +268,9 @@ li {
</q-select>
</q-select>
</div>
</div>
<div
class=
"col-3"
v-if=
"msg.CreateType == 2"
>
<div
class=
"col-3"
v-if=
"msg.CreateType == 2"
>
<q-select
<q-select
filled
v-model=
"msg.StuSourceId"
:dense=
"false"
:options=
"customList"
use-input
label=
"关联同行"
filled
@
filter=
"filterFn"
option-label=
"CustomerName"
@
input=
"resetSearch"
clearable
option-value=
"CustomerId"
v-model=
"msg.StuSourceId"
emit-value
map-options
>
:dense=
"false"
:options=
"customList"
use-input
label=
"关联同行"
@
filter=
"filterFn"
option-label=
"CustomerName"
@
input=
"resetSearch"
clearable
option-value=
"CustomerId"
emit-value
map-options
>
<
template
v-slot:no-option
>
<
template
v-slot:no-option
>
<q-item>
<q-item>
<q-item-section
class=
"text-grey"
>
<q-item-section
class=
"text-grey"
>
...
@@ -382,38 +281,14 @@ li {
...
@@ -382,38 +281,14 @@ li {
</q-select>
</q-select>
</div>
</div>
<div
class=
"col-3"
v-if=
"msg.CreateType == 3"
>
<div
class=
"col-3"
v-if=
"msg.CreateType == 3"
>
<q-select
<q-select
filled
v-model=
"msg.StuSourceId"
:dense=
"false"
@
filter=
"filterEmployee"
label=
"介绍人"
use-input
filled
:options=
"myEmployeeList"
option-label=
"EmployeeName"
@
input=
"resetSearch"
clearable
option-value=
"Id"
v-model=
"msg.StuSourceId"
emit-value
map-options
/>
:dense=
"false"
@
filter=
"filterEmployee"
label=
"介绍人"
use-input
:options=
"myEmployeeList"
option-label=
"EmployeeName"
@
input=
"resetSearch"
clearable
option-value=
"Id"
emit-value
map-options
/>
</div>
</div>
<div
class=
"col-3"
v-if=
"msg.CreateType == 4"
>
<div
class=
"col-3"
v-if=
"msg.CreateType == 4"
>
<q-select
<q-select
filled
v-model=
"msg.StuSourceId"
:dense=
"false"
use-input
@
filter=
"filterStudent"
label=
"转介人"
filled
:options=
"MyTransListData"
option-label=
"StuName"
@
input=
"resetSearch"
clearable
option-value=
"StuId"
v-model=
"msg.StuSourceId"
emit-value
map-options
/>
:dense=
"false"
use-input
@
filter=
"filterStudent"
label=
"转介人"
:options=
"MyTransListData"
option-label=
"StuName"
@
input=
"resetSearch"
clearable
option-value=
"StuId"
emit-value
map-options
/>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -424,62 +299,37 @@ li {
...
@@ -424,62 +299,37 @@ li {
</div>
</div>
<div
class=
"col stics"
>
<div
class=
"col stics"
>
<span
class=
"stics-name"
>
退课学员数量
</span>
<span
class=
"stics-name"
>
退课学员数量
</span>
<span
style=
"color: #F72E52"
<span
style=
"color: #F72E52"
>
{{ staticObj.DropOutNum ? staticObj.DropOutNum : 0 }}人
</span>
>
{{ staticObj.DropOutNum ? staticObj.DropOutNum : 0 }}人
</span
>
</div>
</div>
<div
class=
"col stics"
>
<div
class=
"col stics"
>
<span
class=
"stics-name"
>
停课学员数量
</span>
<span
class=
"stics-name"
>
停课学员数量
</span>
<span
style=
"color:#2961FE;"
<span
style=
"color:#2961FE;"
>
{{ staticObj.StopClassesNum ? staticObj.StopClassesNum : 0 }}人
</span>
>
{{ staticObj.StopClassesNum ? staticObj.StopClassesNum : 0 }}人
</span
>
</div>
</div>
<div
class=
"col stics"
>
<div
class=
"col stics"
>
<span
class=
"stics-name"
>
毕业学员数量
</span>
<span
class=
"stics-name"
>
毕业学员数量
</span>
<span>
{{ staticObj.GraduateNum ? staticObj.GraduateNum : 0 }}人
</span>
<span>
{{ staticObj.GraduateNum ? staticObj.GraduateNum : 0 }}人
</span>
</div>
</div>
</div>
</div>
<div
<div
:class=
"[
:class=
"[
{ 'page-content': !isComponent },
{ 'page-content': !isComponent },
{ 'full-height': isComponent }
{ 'full-height': isComponent }
]"
]"
>
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-tow-column-table"
:class=
"[
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-tow-column-table"
:class=
"[
{ 'my-sticky-header-table full-height': isComponent },
{ 'my-sticky-header-table full-height': isComponent },
{ 'sticky-right-column-table': !isComponent }
{ 'sticky-right-column-table': !isComponent }
]"
]"
separator=
"none"
:data=
"data"
:columns=
"columns"
row-key=
"name"
:hide-bottom=
"isComponent"
>
separator=
"none"
:data=
"data"
:columns=
"columns"
row-key=
"name"
:hide-bottom=
"isComponent"
>
<
template
v-slot:top
>
<
template
v-slot:top
>
<!--
<div
class=
"col-2 q-table__title"
>
学员名单
</div>
-->
</
template
>
</
template
>
<
template
v-slot:body-cell-ContractNo=
"props"
>
<
template
v-slot:body-cell-ContractNo=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"seeContract(props.row)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"seeContract(props.row)"
>
{{
props
.
row
.
ContractNo
}}
{{
props
.
row
.
ContractNo
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-GuestName=
"props"
>
<
template
v-slot:body-cell-GuestName=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
class=
"text-blue cursor-pointer"
@
click=
"getStuRight(props.row)"
>
class=
"text-blue cursor-pointer"
@
click=
"getStuRight(props.row)"
>
{{
props
.
value
}}
{{
props
.
value
}}
</div>
</div>
</q-td>
</q-td>
...
@@ -488,99 +338,70 @@ li {
...
@@ -488,99 +338,70 @@ li {
<
template
v-slot:body-cell-StuSourceIdName=
"props"
>
<
template
v-slot:body-cell-StuSourceIdName=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div>
<div>
<span
v-if=
"props.row.CreateType == 2 && props.row.EnterpriseName"
<span
v-if=
"props.row.CreateType == 2 && props.row.EnterpriseName"
>
{{
props
.
row
.
EnterpriseName
}}
:
</span>
>
{{
props
.
row
.
EnterpriseName
}}
:
</span
>
{{
props
.
row
.
StuSourceIdName
}}
{{
props
.
row
.
StuSourceIdName
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-ClassName=
"props"
>
<
template
v-slot:body-cell-ClassName=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"seeClassDetail(props.row)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"seeClassDetail(props.row)"
>
{{
props
.
row
.
ClassName
}}
{{
props
.
row
.
ClassName
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-OrderId=
"props"
>
<
template
v-slot:body-cell-OrderId=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showOrderDetail(props.row, 1)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showOrderDetail(props.row, 1)"
>
{{
props
.
row
.
OrderId
}}
{{
props
.
row
.
OrderId
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-Income=
"props"
>
<
template
v-slot:body-cell-Income=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showOrderDetail(props.row, 4)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showOrderDetail(props.row, 4)"
>
{{
props
.
row
.
Income
}}
{{
props
.
row
.
Income
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-Refund=
"props"
>
<
template
v-slot:body-cell-Refund=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showOrderDetail(props.row, 4)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showOrderDetail(props.row, 4)"
>
{{
props
.
row
.
Refund
}}
{{
props
.
row
.
Refund
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-CompleteHours=
"props"
>
<
template
v-slot:body-cell-CompleteHours=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"seeStudentsClassUse(props.row)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"seeStudentsClassUse(props.row)"
>
{{
props
.
row
.
CompleteHours
}}
{{
props
.
row
.
CompleteHours
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-MakeUpHours=
"props"
>
<
template
v-slot:body-cell-MakeUpHours=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showList(props.row, 1)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showList(props.row, 1)"
>
{{
props
.
row
.
MakeUpHours
}}
{{
props
.
row
.
MakeUpHours
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-AbsenceNum=
"props"
>
<
template
v-slot:body-cell-AbsenceNum=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showList(props.row, 2)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showList(props.row, 2)"
>
{{
props
.
row
.
AbsenceNum
}}
{{
props
.
row
.
AbsenceNum
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-LeaveNum=
"props"
>
<
template
v-slot:body-cell-LeaveNum=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showList(props.row, 3)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showList(props.row, 3)"
>
{{
props
.
row
.
LeaveNum
}}
{{
props
.
row
.
LeaveNum
}}
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-EventlogNum=
"props"
>
<
template
v-slot:body-cell-EventlogNum=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
<div
style=
"color: #f00; cursor: pointer"
@
click=
"showEventLog(props.row)"
>
style=
"color: #f00; cursor: pointer"
@
click=
"showEventLog(props.row)"
>
{{
props
.
row
.
EventlogNum
}}
{{
props
.
row
.
EventlogNum
}}
</div>
</div>
</q-td>
</q-td>
...
@@ -594,38 +415,13 @@ li {
...
@@ -594,38 +415,13 @@ li {
<
template
v-slot:body-cell-optioned=
"props"
v-if=
"!isComponent"
>
<
template
v-slot:body-cell-optioned=
"props"
v-if=
"!isComponent"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div>
<div>
<q-btn
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"停课"
v-if=
"props.row.GuestState === 1"
flat
@
click=
"ShowStopLesson(props.row)"
/>
size=
"xs"
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"转班"
v-if=
"props.row.GuestState === 1"
color=
"accent"
@
click=
"transferClass(props.row, 1)"
/>
style=
"font-weight: 400"
<q-btn-dropdown
flat
size=
"xs"
color=
"dark"
label=
"更多"
style=
"margin-left: 10px"
>
label=
"停课"
v-if=
"props.row.GuestState === 1"
@
click=
"ShowStopLesson(props.row)"
/>
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"转班"
v-if=
"props.row.GuestState === 1"
@
click=
"transferClass(props.row, 1)"
/>
<q-btn-dropdown
flat
size=
"xs"
color=
"dark"
label=
"更多"
style=
"margin-left: 10px"
>
<q-list>
<q-list>
<q-item
<q-item
dense
clickable
v-close-popup
@
click=
"showAddEvent(props.row)"
>
dense
clickable
v-close-popup
@
click=
"showAddEvent(props.row)"
>
<q-item-section>
<q-item-section>
<q-item-label
overline
>
添加事件
</q-item-label>
<q-item-label
overline
>
添加事件
</q-item-label>
</q-item-section>
</q-item-section>
...
@@ -641,124 +437,71 @@ li {
...
@@ -641,124 +437,71 @@ li {
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-if=
"!isComponent"
v-slot:bottom
>
<
template
v-if=
"!isComponent"
v-slot:bottom
>
<q-pagination
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
class=
"full-width justify-end"
:input=
"true"
@
input=
"changePage"
/>
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
</
template
>
</q-table>
</q-table>
</div>
</div>
<!-- 高级查询 -->
<!-- 高级查询 -->
<MoreQuery
<MoreQuery
v-if=
"IsShowQuery"
:typeEnum=
"typeEnum"
:warnEnum=
"warnEnum"
:saveQuery=
"msg"
@
close=
"closeHandle"
v-if=
"IsShowQuery"
@
success=
"morequery"
>
:typeEnum=
"typeEnum"
:warnEnum=
"warnEnum"
:saveQuery=
"msg"
@
close=
"closeHandle"
@
success=
"morequery"
>
</MoreQuery>
</MoreQuery>
<!-- 停课申请 -->
<!-- 停课申请 -->
<StopLesson-form
<StopLesson-form
v-if=
"isShowStopLesson"
:setObj=
"stuObj"
@
success=
"resetSearch"
@
close=
"closeHandle"
/>
v-if=
"isShowStopLesson"
:setObj=
"stuObj"
@
success=
"resetSearch"
@
close=
"closeHandle"
/>
<!-- 转班申请 -->
<!-- 转班申请 -->
<transferclass-form
<transferclass-form
v-if=
"isShowTransferClass"
:save-obj=
"orderObj"
:ChangeType=
"ChangeType"
@
close=
"closeHandle"
v-if=
"isShowTransferClass"
@
success=
"resetSearch"
></transferclass-form>
:save-obj=
"orderObj"
:ChangeType=
"ChangeType"
@
close=
"closeHandle"
@
success=
"resetSearch"
></transferclass-form>
<!-- 添加事件 -->
<!-- 添加事件 -->
<AddEvent-form
<AddEvent-form
v-if=
"isShowAddEvent"
:setObj=
"eventObj"
@
success=
"resetSearch"
@
close=
"closeHandle"
/>
v-if=
"isShowAddEvent"
:setObj=
"eventObj"
@
success=
"resetSearch"
@
close=
"closeHandle"
/>
<!-- 班级详情 -->
<!-- 班级详情 -->
<classinfo-form
<classinfo-form
v-if=
"isShowClassInfo"
:seting-obj=
"eventObj"
@
close=
"closeHandle"
@
success=
"refreshPage"
/>
v-if=
"isShowClassInfo"
:seting-obj=
"eventObj"
@
close=
"closeHandle"
@
success=
"refreshPage"
/>
<!-- 订单详情 -->
<!-- 订单详情 -->
<myOrder-form
<myOrder-form
v-if=
"isShowmyorderForm"
:save-obj=
"eventObj"
@
close=
"closeHandle"
></myOrder-form>
v-if=
"isShowmyorderForm"
:save-obj=
"eventObj"
@
close=
"closeHandle"
></myOrder-form>
<!-- 可补课课时,缺勤次数,请假次数 -->
<!-- 可补课课时,缺勤次数,请假次数 -->
<list
<list
v-if=
"isShowList"
:type=
"showType"
:set-obj=
"eventObj"
@
close=
"closeHandle"
/>
v-if=
"isShowList"
:type=
"showType"
:set-obj=
"eventObj"
@
close=
"closeHandle"
/>
<!-- 事件记录 -->
<!-- 事件记录 -->
<eventLog
<eventLog
v-if=
"isShowEventLog"
:set-obj=
"eventObj"
@
modify=
"modifyEvent"
@
close=
"closeHandle"
/>
v-if=
"isShowEventLog"
<studentRight-form
v-if=
"isShowStuRight"
:isJudgeTrans=
"isJudgeTrans"
:BelongType=
"BelongType"
:save-obj=
"stuOption"
:set-obj=
"eventObj"
@
close=
"closeStuForm"
@
success=
"refreshStuList"
@
reload=
"refreshStuList"
>
@
modify=
"modifyEvent"
@
close=
"closeHandle"
/>
<studentRight-form
v-if=
"isShowStuRight"
:isJudgeTrans=
"isJudgeTrans"
:BelongType=
"BelongType"
:save-obj=
"stuOption"
@
close=
"closeStuForm"
@
success=
"refreshStuList"
@
reload=
"refreshStuList"
>
</studentRight-form>
</studentRight-form>
<!-- 跳课 -->
<!-- 跳课 -->
<JumpCourse
<JumpCourse
v-model=
"isShowChangeCourse"
:saveObj=
"ChangeCourseObj"
@
success=
"refreshPage"
></JumpCourse>
v-model=
"isShowChangeCourse"
:saveObj=
"ChangeCourseObj"
@
success=
"refreshPage"
></JumpCourse>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
import
{
getSchoolDropdown
,
getSchoolDropdown
,
getClassDropDownList
,
getClassDropDownList
,
getStudentDorpDownList
getStudentDorpDownList
}
from
"../../api/school/index"
;
}
from
"../../api/school/index"
;
import
{
queryCourseDropdownList
}
from
"../../api/course/index"
;
import
{
import
{
queryCourseDropdownList
}
from
"../../api/course/index"
;
import
{
getStuList
,
getStuList
,
getEarlyWarningEnum
,
getEarlyWarningEnum
,
getTypeEnum
getTypeEnum
}
from
"../../api/stuMan/index.js"
;
}
from
"../../api/stuMan/index.js"
;
import
{
import
{
queryGuestStateList
,
queryGuestStateList
,
CreateTypeList
,
CreateTypeList
,
GetStuChannelList
,
GetStuChannelList
,
GetCustomerList
GetCustomerList
}
from
"../../api/sale/sale.js"
;
}
from
"../../api/sale/sale.js"
;
import
MoreQuery
from
"../../components/stuMan/moreQuery.vue"
;
import
MoreQuery
from
"../../components/stuMan/moreQuery.vue"
;
import
StopLessonForm
from
"../../components/teacher/stopLessonForm"
;
import
StopLessonForm
from
"../../components/teacher/stopLessonForm"
;
import
transferclassForm
from
"../../components/sale/transferclass-form"
;
//转班信息
import
transferclassForm
from
"../../components/sale/transferclass-form"
;
//转班信息
import
AddEventForm
from
"../../components/stuMan/addEvent-form.vue"
;
//转班信息
import
AddEventForm
from
"../../components/stuMan/addEvent-form.vue"
;
//转班信息
import
classinfoForm
from
"../../components/course/classinfo-form"
;
//班级详情
import
classinfoForm
from
"../../components/course/classinfo-form"
;
//班级详情
import
myOrderForm
from
"../../components/sale/myOrder-form"
;
//订单详情
import
myOrderForm
from
"../../components/sale/myOrder-form"
;
//订单详情
import
list
from
"../../components/stuMan/makeUpHours.vue"
;
//可补课课时,缺勤次数,请假次数
import
list
from
"../../components/stuMan/makeUpHours.vue"
;
//可补课课时,缺勤次数,请假次数
import
eventLog
from
"../../components/stuMan/eventRecord.vue"
;
//事件记录
import
eventLog
from
"../../components/stuMan/eventRecord.vue"
;
//事件记录
import
studentRightForm
from
"../../components/school/student/studentRight-form"
;
import
studentRightForm
from
"../../components/school/student/studentRight-form"
;
import
JumpCourse
from
"../../components/stuMan/jumpCourse"
;
import
JumpCourse
from
"../../components/stuMan/jumpCourse"
;
import
{
queryEmployee
}
from
"../../api/users/user"
;
import
{
export
default
{
queryEmployee
}
from
"../../api/users/user"
;
export
default
{
props
:
{
props
:
{
isComponent
:
{
isComponent
:
{
type
:
Boolean
,
type
:
Boolean
,
...
@@ -792,7 +535,6 @@ export default {
...
@@ -792,7 +535,6 @@ export default {
studentRightForm
,
studentRightForm
,
JumpCourse
JumpCourse
},
},
data
()
{
data
()
{
return
{
return
{
IsShowQuery
:
false
,
IsShowQuery
:
false
,
...
@@ -820,8 +562,7 @@ export default {
...
@@ -820,8 +562,7 @@ export default {
StuSourceId
:
""
StuSourceId
:
""
},
},
pageCount
:
0
,
pageCount
:
0
,
columns
:
[
columns
:
[{
{
name
:
"Id"
,
name
:
"Id"
,
label
:
"编号"
,
label
:
"编号"
,
field
:
"Id"
,
field
:
"Id"
,
...
@@ -996,7 +737,6 @@ export default {
...
@@ -996,7 +737,6 @@ export default {
field
:
"EventlogNum"
,
field
:
"EventlogNum"
,
align
:
"left"
align
:
"left"
},
},
{
{
name
:
"GuestStateStr"
,
name
:
"GuestStateStr"
,
label
:
"状态"
,
label
:
"状态"
,
...
@@ -1089,7 +829,7 @@ export default {
...
@@ -1089,7 +829,7 @@ export default {
},
},
watch
:
{
watch
:
{
outData
:
{
outData
:
{
handler
:
function
(
val
)
{
handler
:
function
(
val
)
{
if
(
this
.
isComponent
)
{
if
(
this
.
isComponent
)
{
this
.
data
=
val
;
this
.
data
=
val
;
}
}
...
@@ -1097,7 +837,7 @@ export default {
...
@@ -1097,7 +837,7 @@ export default {
deep
:
true
deep
:
true
},
},
outLoading
:
{
outLoading
:
{
handler
:
function
(
val
)
{
handler
:
function
(
val
)
{
if
(
this
.
isComponent
)
{
if
(
this
.
isComponent
)
{
this
.
loading
=
val
;
this
.
loading
=
val
;
}
}
...
@@ -1270,7 +1010,7 @@ export default {
...
@@ -1270,7 +1010,7 @@ export default {
}
}
});
});
},
},
//
筛选课程
//
筛选课程
filterCourse
(
val
,
update
)
{
filterCourse
(
val
,
update
)
{
update
(()
=>
{
update
(()
=>
{
if
(
val
===
""
)
{
if
(
val
===
""
)
{
...
@@ -1527,8 +1267,8 @@ export default {
...
@@ -1527,8 +1267,8 @@ export default {
this
.
ChangeCourseObj
=
item
;
this
.
ChangeCourseObj
=
item
;
}
}
}
}
};
};
</
script
>
</
script
>
<
style
lang=
"sass"
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
@import
url('~assets/css/table.sass')
</
style
>
</
style
>
\ No newline at end of file
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