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
a2743b83
Commit
a2743b83
authored
Aug 26, 2021
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
44168af2
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
248 additions
and
65 deletions
+248
-65
course-form.vue
src/components/course/course-form.vue
+16
-5
myOrder-form.vue
src/components/sale/myOrder-form.vue
+95
-19
studentList.vue
src/pages/sale/studentList.vue
+125
-41
stuList.vue
src/pages/stuMan/stuList.vue
+12
-0
No files found.
src/components/course/course-form.vue
View file @
a2743b83
...
@@ -95,7 +95,8 @@
...
@@ -95,7 +95,8 @@
<div
class=
"row wrap"
>
<div
class=
"row wrap"
>
<div
class=
"col-6"
>
<div
class=
"col-6"
>
<q-select
filled
stack-label
option-value=
"Id"
option-label=
"Name"
v-model=
"objOption.CourseRate"
<q-select
filled
stack-label
option-value=
"Id"
option-label=
"Name"
v-model=
"objOption.CourseRate"
ref=
"CourseRate"
:options=
"courseLevelList"
label=
"课程等级"
class=
"col-6 q-pr-lg q-pb-lg"
emit-value
map-options
/>
ref=
"CourseRate"
:options=
"courseLevelList"
label=
"课程等级"
class=
"col-6 q-pr-lg q-pb-lg"
emit-value
map-options
/>
</div>
</div>
<div
class=
"col-6"
>
<div
class=
"col-6"
>
</div>
</div>
...
@@ -183,7 +184,7 @@
...
@@ -183,7 +184,7 @@
IsKCourse
:
0
,
//是否是K12课程(1-是)
IsKCourse
:
0
,
//是否是K12课程(1-是)
ClassHours
:
0
,
ClassHours
:
0
,
CategoryList
:
[],
CategoryList
:
[],
CourseRate
:
""
,
//课程等级
CourseRate
:
""
,
//课程等级
},
},
optionTitle
:
""
,
optionTitle
:
""
,
defaultArray
:
[],
defaultArray
:
[],
...
@@ -234,7 +235,17 @@
...
@@ -234,7 +235,17 @@
getCourseRateList
()
{
getCourseRateList
()
{
getCourseRate
({}).
then
(
res
=>
{
getCourseRate
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
this
.
courseLevelList
=
res
.
Data
;
var
tempData
=
res
.
Data
;
if
(
tempData
&&
tempData
.
length
>
0
)
{
tempData
.
forEach
(
item
=>
{
if
((
item
.
Id
>=
2
&&
item
.
Id
<=
6
)
||
item
.
Id
==
8
)
{
this
.
courseLevelList
.
push
({
Id
:
item
.
Id
,
Name
:
item
.
Name
.
replace
(
/课程/g
,
''
)
})
}
})
}
}
}
})
})
},
},
...
@@ -318,7 +329,7 @@
...
@@ -318,7 +329,7 @@
this
.
objOption
.
RenewSlPrice
=
res
.
Data
.
RenewSlPrice
;
this
.
objOption
.
RenewSlPrice
=
res
.
Data
.
RenewSlPrice
;
this
.
objOption
.
Saleplat
=
res
.
Data
.
Saleplat
;
this
.
objOption
.
Saleplat
=
res
.
Data
.
Saleplat
;
this
.
objOption
.
IsKCourse
=
res
.
Data
.
IsKCourse
;
this
.
objOption
.
IsKCourse
=
res
.
Data
.
IsKCourse
;
this
.
objOption
.
CourseRate
=
res
.
Data
.
CourseRate
;
this
.
objOption
.
CourseRate
=
res
.
Data
.
CourseRate
;
if
(
res
.
Data
.
StepPriceList
&&
res
.
Data
.
StepPriceList
.
length
>
0
)
{
if
(
res
.
Data
.
StepPriceList
&&
res
.
Data
.
StepPriceList
.
length
>
0
)
{
this
.
ladderPriceList
=
res
.
Data
.
StepPriceList
;
this
.
ladderPriceList
=
res
.
Data
.
StepPriceList
;
}
}
...
@@ -358,7 +369,7 @@
...
@@ -358,7 +369,7 @@
this
.
objOption
.
RenewSlPrice
=
0
;
this
.
objOption
.
RenewSlPrice
=
0
;
this
.
objOption
.
Saleplat
=
""
;
this
.
objOption
.
Saleplat
=
""
;
this
.
objOption
.
IsKCourse
=
0
;
this
.
objOption
.
IsKCourse
=
0
;
this
.
objOption
.
CourseRate
=
""
;
this
.
objOption
.
CourseRate
=
""
;
this
.
getCategorytree
();
this
.
getCategorytree
();
}
}
},
},
...
...
src/components/sale/myOrder-form.vue
View file @
a2743b83
...
@@ -98,8 +98,7 @@
...
@@ -98,8 +98,7 @@
</div>
</div>
<div
v-if=
"tab==2"
style=
"padding: 10px 20px"
>
<div
v-if=
"tab==2"
style=
"padding: 10px 20px"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-tow-column-table"
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-tow-column-table"
separator=
"none"
:data=
"data"
:columns=
"columns"
row-key=
"name"
>
separator=
"none"
:data=
"data"
:columns=
"guestColumns"
row-key=
"name"
>
<
template
v-slot:body-cell-Sex=
"props"
>
<
template
v-slot:body-cell-Sex=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<span>
{{
props
.
row
.
Sex
==
1
?
'男'
:
'女'
}}
</span>
<span>
{{
props
.
row
.
Sex
==
1
?
'男'
:
'女'
}}
</span>
...
@@ -114,6 +113,40 @@
...
@@ -114,6 +113,40 @@
{{
props
.
row
.
GuestName
}}
{{
props
.
row
.
GuestName
}}
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-BackClassList=
"props"
>
<q-td
:props=
"props"
class=
"row"
style=
"align-items: center"
>
<template
v-if=
"props.row.BackClassList&&props.row.BackClassList.length>0"
>
<div>
退课单据
</div><br
/>
<span
v-for=
"(item,index) in props.row.BackClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.StopClassList&&props.row.StopClassList.length>0"
>
<div>
停课单据
</div><br
/>
<span
v-for=
"(item,index) in props.row.StopClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.InvitationClassList&&props.row.InvitationClassList.length>0"
>
<div>
临沭上课邀请单据
</div><br
/>
<span
v-for=
"(item,index) in props.row.InvitationClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.OrderTransClassList&&props.row.OrderTransClassList.length>0"
>
<div>
订单转班单据
</div><br
/>
<span
v-for=
"(item,index) in props.row.OrderTransClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.OrderSplitClassList&&props.row.OrderSplitClassList.length>0"
>
<div>
订单分拆单据
</div><br
/>
<span
v-for=
"(item,index) in props.row.OrderSplitClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
</q-td>
</template>
<
template
v-slot:bottom
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.PageIndex"
color=
"primary"
:max=
"pageCount"
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.PageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
:input=
"true"
@
input=
"changePage"
/>
...
@@ -163,7 +196,8 @@
...
@@ -163,7 +196,8 @@
<div
style=
"width: 3px;height: 15px;background: #3FC4FF;margin-right: 10px"
></div>
收款单
<div
style=
"width: 3px;height: 15px;background: #3FC4FF;margin-right: 10px"
></div>
收款单
</div>
</div>
<q-table
:pagination=
"financiaMsg"
:loading=
"floading"
no-data-label=
"暂无相关数据"
flat
<q-table
:pagination=
"financiaMsg"
:loading=
"floading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-tow-column-table"
:hide-pagination=
"true"
:data=
"dataList"
:columns=
"columnsf"
row-key=
"name"
>
class=
"sticky-tow-column-table"
:hide-pagination=
"true"
:data=
"dataList"
:columns=
"receiptColumns"
row-key=
"name"
>
<
template
v-slot:body-cell-FrID=
"props"
>
<
template
v-slot:body-cell-FrID=
"props"
>
<q-td
:props=
"props"
@
click=
"goUrl('FinancialDocumentsDetail',props.row)"
>
<q-td
:props=
"props"
@
click=
"goUrl('FinancialDocumentsDetail',props.row)"
>
<span
style=
"font-size: 14px;color: #2961FE;font-weight: bold;cursor: pointer;"
>
{{
props
.
row
.
FrID
}}
</span>
<span
style=
"font-size: 14px;color: #2961FE;font-weight: bold;cursor: pointer;"
>
{{
props
.
row
.
FrID
}}
</span>
...
@@ -178,7 +212,7 @@
...
@@ -178,7 +212,7 @@
<
template
v-slot:body-cell-TradeWayList=
"props"
>
<
template
v-slot:body-cell-TradeWayList=
"props"
>
<q-td
:props=
"props"
class=
"row"
style=
"align-items: center;height: auto"
>
<q-td
:props=
"props"
class=
"row"
style=
"align-items: center;height: auto"
>
<div
v-if=
"props.row.TradeWayList&&props.row.TradeWayList.length>0"
class=
"my-table-details"
>
<div
v-if=
"props.row.TradeWayList&&props.row.TradeWayList.length>0"
class=
"my-table-details"
>
<div
v-for=
"(tw,twIn) in props.row.TradeWayList"
<div
v-for=
"(tw,twIn) in props.row.TradeWayList"
:key=
"twIn"
style=
"line-height: normal !important;padding: 5px 10px;background-color: #EEEEEE;border-radius: 4px;width:210px;display: flex;flex-direction: column;align-items: center"
>
style=
"line-height: normal !important;padding: 5px 10px;background-color: #EEEEEE;border-radius: 4px;width:210px;display: flex;flex-direction: column;align-items: center"
>
<p><span
style=
"font-weight: bold;color:#333333"
>
{{
tw
.
Alias
}}
</span><span
class=
"_bank_name"
<p><span
style=
"font-weight: bold;color:#333333"
>
{{
tw
.
Alias
}}
</span><span
class=
"_bank_name"
style=
"height:20px;;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;margin-letf:10px"
>
{{
props
.
row
.
TradeWayList
[
0
].
TypeName
}}
</span><span
style=
"height:20px;;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;margin-letf:10px"
>
{{
props
.
row
.
TradeWayList
[
0
].
TypeName
}}
</span><span
...
@@ -208,7 +242,7 @@
...
@@ -208,7 +242,7 @@
v-loading=
'LogLoading'
>
v-loading=
'LogLoading'
>
<li
<li
style=
"border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;"
style=
"border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;"
v-for=
"(log,l
i) in GetFinancLogList
"
>
v-for=
"(log,l
Index) in GetFinancLogList"
:key=
"lIndex
"
>
<span
<span
style=
"background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"
></span>
style=
"background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"
></span>
<p
class=
"row"
style=
"justify-content: space-between"
>
<span
<p
class=
"row"
style=
"justify-content: space-between"
>
<span
...
@@ -228,12 +262,13 @@
...
@@ -228,12 +262,13 @@
</
template
>
</
template
>
</q-table>
</q-table>
<!--
付款单-->
<!--付款单-->
<div
class=
"row "
style=
"align-items: center;margin: 20px 0;"
>
<div
class=
"row "
style=
"align-items: center;margin: 20px 0;"
>
<div
style=
"width: 3px;height: 15px;background: #3FC4FF;margin-right: 10px"
></div>
付款单
<div
style=
"width: 3px;height: 15px;background: #3FC4FF;margin-right: 10px"
></div>
付款单
</div>
</div>
<q-table
:pagination=
"financiaMsg"
style=
"padding-bottom:80px;"
:loading=
"floading"
no-data-label=
"暂无相关数据"
flat
<q-table
:pagination=
"financiaMsg"
style=
"padding-bottom:80px;"
:loading=
"floading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-tow-column-table"
:hide-pagination=
"true"
:data=
"dataListP"
:columns=
"columnsf"
row-key=
"name"
>
class=
"sticky-tow-column-table"
:hide-pagination=
"true"
:data=
"dataListP"
:columns=
"receiptColumns"
row-key=
"name"
>
<
template
v-slot:body-cell-FrID=
"props"
>
<
template
v-slot:body-cell-FrID=
"props"
>
<q-td
:props=
"props"
@
click=
"goUrl('FinancialDocumentsDetail',props.row)"
>
<q-td
:props=
"props"
@
click=
"goUrl('FinancialDocumentsDetail',props.row)"
>
<span
style=
"font-size: 14px;color: #2961FE;font-weight: bold;cursor: pointer;"
>
{{
props
.
row
.
FrID
}}
</span>
<span
style=
"font-size: 14px;color: #2961FE;font-weight: bold;cursor: pointer;"
>
{{
props
.
row
.
FrID
}}
</span>
...
@@ -248,7 +283,7 @@
...
@@ -248,7 +283,7 @@
<
template
v-slot:body-cell-TradeWayList=
"props"
>
<
template
v-slot:body-cell-TradeWayList=
"props"
>
<q-td
:props=
"props"
class=
"row"
style=
"align-items: center;height: auto"
>
<q-td
:props=
"props"
class=
"row"
style=
"align-items: center;height: auto"
>
<div
v-if=
"props.row.TradeWayList&&props.row.TradeWayList.length>0"
class=
"my-table-details"
>
<div
v-if=
"props.row.TradeWayList&&props.row.TradeWayList.length>0"
class=
"my-table-details"
>
<div
v-for=
"(tw,twIn) in props.row.TradeWayList"
<div
v-for=
"(tw,twIn) in props.row.TradeWayList"
:key=
"twIn"
style=
"line-height: normal !important;padding: 5px 10px;background-color: #EEEEEE;border-radius: 4px;width:210px;display: flex;flex-direction: column;align-items: center"
>
style=
"line-height: normal !important;padding: 5px 10px;background-color: #EEEEEE;border-radius: 4px;width:210px;display: flex;flex-direction: column;align-items: center"
>
<p><span
style=
"font-weight: bold;color:#333333"
>
{{
tw
.
Alias
}}
</span><span
class=
"_bank_name"
<p><span
style=
"font-weight: bold;color:#333333"
>
{{
tw
.
Alias
}}
</span><span
class=
"_bank_name"
style=
"height:20px;;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;margin-letf:10px"
>
{{
props
.
row
.
TradeWayList
[
0
].
TypeName
}}
</span><span
style=
"height:20px;;display: inline-block;background-color: #333333;color: white;padding: 2px 4px;border-radius: 4px;margin-left:10px;margin-letf:10px"
>
{{
props
.
row
.
TradeWayList
[
0
].
TypeName
}}
</span><span
...
@@ -278,7 +313,7 @@
...
@@ -278,7 +313,7 @@
v-loading=
'LogLoading'
>
v-loading=
'LogLoading'
>
<li
<li
style=
"border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;"
style=
"border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;"
v-for=
"(log,l
i) in GetFinancLogList
"
>
v-for=
"(log,l
Index) in GetFinancLogList"
:key=
"lIndex
"
>
<span
<span
style=
"background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"
></span>
style=
"background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;"
></span>
<p
class=
"row"
style=
"justify-content: space-between"
>
<span
<p
class=
"row"
style=
"justify-content: space-between"
>
<span
...
@@ -347,10 +382,9 @@
...
@@ -347,10 +382,9 @@
return
{
return
{
dialog
:
true
,
dialog
:
true
,
tab
:
'1'
,
tab
:
'1'
,
c
olumns
:
[{
guestC
olumns
:
[{
name
:
'GuestName'
,
name
:
'GuestName'
,
label
:
'名称'
,
label
:
'名称'
,
// field: 'GuestName',
align
:
'left'
align
:
'left'
},
},
{
{
...
@@ -358,12 +392,10 @@
...
@@ -358,12 +392,10 @@
field
:
'Profession'
,
field
:
'Profession'
,
label
:
'职业'
,
label
:
'职业'
,
align
:
'left'
,
align
:
'left'
,
},
},
{
{
name
:
'Sex'
,
name
:
'Sex'
,
label
:
'性别'
,
label
:
'性别'
,
align
:
'left'
align
:
'left'
},
},
{
{
...
@@ -378,6 +410,48 @@
...
@@ -378,6 +410,48 @@
field
:
'Mobile'
,
field
:
'Mobile'
,
align
:
'left'
align
:
'left'
},
},
{
name
:
'GuestStateStr'
,
label
:
'学员状态'
,
field
:
'GuestStateStr'
,
align
:
'left'
},
{
name
:
'TotalHours'
,
label
:
'总课时'
,
field
:
'TotalHours'
,
align
:
'left'
},
{
name
:
'ValidClassHours'
,
label
:
'有效课时'
,
field
:
'ValidClassHours'
,
align
:
'left'
},
{
name
:
'CompleteHours'
,
label
:
'已上课时'
,
field
:
'CompleteHours'
,
align
:
'left'
},
{
name
:
'SurplusHours'
,
label
:
'剩余课时'
,
field
:
'SurplusHours'
,
align
:
'left'
},
{
name
:
'MakeUpHours'
,
label
:
'可补课时'
,
field
:
'MakeUpHours'
,
align
:
'left'
},
{
name
:
'BackClassList'
,
label
:
'业务单据'
,
field
:
'BackClassList'
,
align
:
'left'
},
{
{
name
:
'Basics'
,
name
:
'Basics'
,
label
:
'日语基础'
,
label
:
'日语基础'
,
...
@@ -397,7 +471,7 @@
...
@@ -397,7 +471,7 @@
align
:
'left'
align
:
'left'
},
},
],
],
columnsf
:
[{
receiptColumns
:
[{
name
:
'FrID'
,
name
:
'FrID'
,
label
:
'单号'
,
label
:
'单号'
,
align
:
'left'
,
align
:
'left'
,
...
@@ -444,7 +518,6 @@
...
@@ -444,7 +518,6 @@
},
},
{
{
name
:
'zhaungt'
,
name
:
'zhaungt'
,
label
:
'当前状态'
,
label
:
'当前状态'
,
align
:
'left'
,
align
:
'left'
,
},
},
...
@@ -499,7 +572,6 @@
...
@@ -499,7 +572,6 @@
if
(
this
.
saveObj
.
tab
)
{
if
(
this
.
saveObj
.
tab
)
{
this
.
tab
=
(
this
.
saveObj
.
tab
).
toString
();
this
.
tab
=
(
this
.
saveObj
.
tab
).
toString
();
}
}
this
.
msg
.
OrderId
=
this
.
saveObj
.
OrderId
;
this
.
msg
.
OrderId
=
this
.
saveObj
.
OrderId
;
this
.
msg2
.
OrderId
=
this
.
saveObj
.
OrderId
;
this
.
msg2
.
OrderId
=
this
.
saveObj
.
OrderId
;
this
.
msg3
.
SourceId
=
this
.
saveObj
.
OrderId
;
this
.
msg3
.
SourceId
=
this
.
saveObj
.
OrderId
;
...
@@ -510,6 +582,12 @@
...
@@ -510,6 +582,12 @@
this
.
OrderLogList
()
this
.
OrderLogList
()
},
},
methods
:
{
methods
:
{
//跳转到教务单据
goEduReceiptInfo
(
Id
)
{
this
.
OpenNewUrl
(
"/user/billquery"
,
{
Id
:
Id
})
},
Financial_post_GetFinancLogList
:
function
(
id
)
{
// 获取单据日志
Financial_post_GetFinancLogList
:
function
(
id
)
{
// 获取单据日志
this
.
LogLoading
=
true
;
this
.
LogLoading
=
true
;
this
.
apipost
(
'Financial_post_GetFinancLogList'
,
{
this
.
apipost
(
'Financial_post_GetFinancLogList'
,
{
...
@@ -590,8 +668,6 @@
...
@@ -590,8 +668,6 @@
getClassOrderLogList
(
this
.
msg3
).
then
(
res
=>
{
getClassOrderLogList
(
this
.
msg3
).
then
(
res
=>
{
this
.
data3
=
res
.
Data
.
PageData
this
.
data3
=
res
.
Data
.
PageData
this
.
pageCount3
=
res
.
Data
.
PageCount
;
this
.
pageCount3
=
res
.
Data
.
PageCount
;
}).
catch
(()
=>
{
})
})
},
},
getfinanciaALLPageList
(
Type
,
TCID
,
OrderID
)
{
getfinanciaALLPageList
(
Type
,
TCID
,
OrderID
)
{
...
@@ -668,7 +744,7 @@
...
@@ -668,7 +744,7 @@
display
:
inline-block
;
display
:
inline-block
;
font-size
:
12px
;
font-size
:
12px
;
color
:
#999999
;
color
:
#999999
;
text-align
:
right
;
text-align
:
right
;
}
}
.classinfo_Dialog
.two-r
{
.classinfo_Dialog
.two-r
{
...
...
src/pages/sale/studentList.vue
View file @
a2743b83
...
@@ -8,8 +8,8 @@
...
@@ -8,8 +8,8 @@
width
:
100%
;
width
:
100%
;
}
}
._addUpload_stu
>
div
{
._addUpload_stu
>
div
{
display
:
inline-block
;
display
:
inline-block
;
width
:
138px
;
width
:
138px
;
height
:
92px
;
height
:
92px
;
border
:
1px
dashed
rgba
(
210
,
210
,
210
,
1
);
border
:
1px
dashed
rgba
(
210
,
210
,
210
,
1
);
...
@@ -20,9 +20,11 @@
...
@@ -20,9 +20,11 @@
margin-right
:
10px
;
margin-right
:
10px
;
position
:
relative
;
position
:
relative
;
}
}
._addUpload_stu
>
div
:hover
{
._addUpload_stu
>
div
:hover
{
background-color
:
#f5f5f5
;
background-color
:
#f5f5f5
;
}
}
.stuCard
.el-upload-dragger
{
.stuCard
.el-upload-dragger
{
font-size
:
28px
;
font-size
:
28px
;
color
:
#8c939d
;
color
:
#8c939d
;
...
@@ -31,24 +33,27 @@
...
@@ -31,24 +33,27 @@
line-height
:
41px
;
line-height
:
41px
;
text-align
:
center
;
text-align
:
center
;
}
}
._addUpload_stu
.icon-guanbi1
{
._addUpload_stu
.icon-guanbi1
{
font-size
:
12px
;
font-size
:
12px
;
color
:
white
;
color
:
white
;
display
:
inline-block
;
display
:
inline-block
;
margin-left
:
15px
;
margin-left
:
15px
;
position
:
absolute
;
position
:
absolute
;
right
:
-6px
;
right
:
-6px
;
top
:
-9px
;
top
:
-9px
;
background-color
:
#f56c6c
;
background-color
:
#f56c6c
;
border-radius
:
50%
;
border-radius
:
50%
;
height
:
20px
;
height
:
20px
;
width
:
20px
;
width
:
20px
;
text-align
:
center
;
text-align
:
center
;
line-height
:
20px
;
line-height
:
20px
;
}
}
.el-image-viewer__wrapper
{
z-index
:
9999
!important
;
.el-image-viewer__wrapper
{
z-index
:
9999
!important
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-body"
>
...
@@ -80,12 +85,46 @@
...
@@ -80,12 +85,46 @@
生效状态:
{{
props
.
row
.
EffectStatusStr
}}
<br
/>
生效状态:
{{
props
.
row
.
EffectStatusStr
}}
<br
/>
<template
v-if=
"props.row.UpOrderId&&props.row.UpOrderId>0"
>
<template
v-if=
"props.row.UpOrderId&&props.row.UpOrderId>0"
>
前置订单:
{{
props
.
row
.
UpOrderId
}}
<br
/>
前置订单:
{{
props
.
row
.
UpOrderId
}}
<br
/>
</
template
>
</
template
>
</q-tooltip>
</q-tooltip>
</div>
</div>
</span>
</span>
</q-td>
</q-td>
</template>
</template>
<
template
v-slot:body-cell-BackClassList=
"props"
>
<q-td
:props=
"props"
class=
"row"
style=
"align-items: center"
>
<template
v-if=
"props.row.BackClassList&&props.row.BackClassList.length>0"
>
<div>
退课单据
</div><br
/><br
/>
<span
v-for=
"(item,index) in props.row.BackClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.StopClassList&&props.row.StopClassList.length>0"
>
<div>
停课单据
</div><br
/><br
/>
<span
v-for=
"(item,index) in props.row.StopClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.InvitationClassList&&props.row.InvitationClassList.length>0"
>
<div>
临沭上课邀请单据
</div><br
/><br
/>
<span
v-for=
"(item,index) in props.row.InvitationClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.OrderTransClassList&&props.row.OrderTransClassList.length>0"
>
<div>
订单转班单据
</div><br
/><br
/>
<span
v-for=
"(item,index) in props.row.OrderTransClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
<
template
v-if=
"props.row.OrderSplitClassList&&props.row.OrderSplitClassList.length>0"
>
<div>
订单分拆单据
</div><br
/><br
/>
<span
v-for=
"(item,index) in props.row.OrderSplitClassList"
:key=
"index"
style=
"cursor:pointer;color:blue;text-decoration:underline;"
@
click=
"goEduReceiptInfo(item.Id)"
>
{{
item
.
Id
}}
</span>
</
template
>
</q-td>
</template>
<
template
v-slot:bottom
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
:input=
"true"
@
input=
"changePage"
/>
...
@@ -207,8 +246,8 @@
...
@@ -207,8 +246,8 @@
<div
class=
"row wrap"
style=
"margin:0 20px;"
>
<div
class=
"row wrap"
style=
"margin:0 20px;"
>
<q-input
clearable
filled
class=
"col-6 q-pb-lg q-pr-lg"
v-model=
"addMsg.GuestContractNo"
label=
"合同编号"
/>
<q-input
clearable
filled
class=
"col-6 q-pb-lg q-pr-lg"
v-model=
"addMsg.GuestContractNo"
label=
"合同编号"
/>
<q-select
class=
"col-6 q-pb-lg"
ref=
"ContractType"
@
input=
"resetContractArr"
standout=
"bg-primary text-white"
<q-select
class=
"col-6 q-pb-lg"
ref=
"ContractType"
@
input=
"resetContractArr"
standout=
"bg-primary text-white"
option-value=
"Id"
option-label=
"Name"
v-model=
"addMsg.ContractType"
:options=
"ContractTypeList"
emit-value
map-options
label=
"上传类型"
option-value=
"Id"
option-label=
"Name"
v-model=
"addMsg.ContractType"
:options=
"ContractTypeList"
emit-value
use-input
new-value-mode=
"add-unique"
/>
map-options
label=
"上传类型"
use-input
new-value-mode=
"add-unique"
/>
</div>
</div>
<div
class=
"row wrap"
style=
"margin:0 20px;"
>
<div
class=
"row wrap"
style=
"margin:0 20px;"
>
<div
class=
"col-12 text-grey-6"
>
<div
class=
"col-12 text-grey-6"
>
...
@@ -220,12 +259,14 @@
...
@@ -220,12 +259,14 @@
<
template
v-for=
"(file, fIndex) in addMsg.ContractUrl"
>
<
template
v-for=
"(file, fIndex) in addMsg.ContractUrl"
>
<div
v-if=
"addMsg.ContractType == 2"
>
<div
v-if=
"addMsg.ContractType == 2"
>
<div
style=
"width: 100%; height: 100%; overflow: hidden"
>
<div
style=
"width: 100%; height: 100%; overflow: hidden"
>
<el-image
style=
"width: 100%; height: 100%"
:src=
"file"
:preview-src-list=
"addMsg.ContractUrl"
></el-image>
<el-image
style=
"width: 100%; height: 100%"
:src=
"file"
:preview-src-list=
"addMsg.ContractUrl"
>
</el-image>
</div>
</div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
<div
v-if=
"addMsg.ContractType == 1"
style=
"float:left;"
>
<div
v-if=
"addMsg.ContractType == 1"
style=
"float:left;"
>
<div
class=
"iconfont icon-pdf"
style=
"font-size:38px;color:green;text-align:center;line-height:75px;"
@
click=
"showUpLoadFile(file)"
></div>
<div
class=
"iconfont icon-pdf"
style=
"font-size:38px;color:green;text-align:center;line-height:75px;"
@
click=
"showUpLoadFile(file)"
></div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
</
template
>
</
template
>
...
@@ -298,6 +339,12 @@
...
@@ -298,6 +339,12 @@
label
:
'课程名称'
,
label
:
'课程名称'
,
field
:
'CourseName'
,
field
:
'CourseName'
,
align
:
'left'
align
:
'left'
},
{
name
:
'GuestStateStr'
,
label
:
'学员状态'
,
field
:
'GuestStateStr'
,
align
:
'left'
},
},
{
{
name
:
'TotalHours'
,
name
:
'TotalHours'
,
...
@@ -305,6 +352,36 @@
...
@@ -305,6 +352,36 @@
field
:
'TotalHours'
,
field
:
'TotalHours'
,
align
:
'left'
align
:
'left'
},
},
{
name
:
'ValidClassHours'
,
label
:
'有效课时'
,
field
:
'ValidClassHours'
,
align
:
'left'
},
{
name
:
'CompleteHours'
,
label
:
'已上课时'
,
field
:
'CompleteHours'
,
align
:
'left'
},
{
name
:
'SurplusHours'
,
label
:
'剩余课时'
,
field
:
'SurplusHours'
,
align
:
'left'
},
{
name
:
'MakeUpHours'
,
label
:
'可补课时'
,
field
:
'MakeUpHours'
,
align
:
'left'
},
{
name
:
'BackClassList'
,
label
:
'业务单据'
,
field
:
'BackClassList'
,
align
:
'left'
},
{
{
name
:
'Mobile'
,
name
:
'Mobile'
,
label
:
'电话'
,
label
:
'电话'
,
...
@@ -426,12 +503,12 @@
...
@@ -426,12 +503,12 @@
],
//可见列
],
//可见列
initialIndex
:
0
,
initialIndex
:
0
,
ContractTypeList
:[{
ContractTypeList
:
[{
Name
:
'PDF'
,
Name
:
'PDF'
,
Id
:
1
Id
:
1
},{
},
{
Name
:
'图片'
,
Name
:
'图片'
,
Id
:
2
Id
:
2
}]
}]
}
}
},
},
...
@@ -454,7 +531,8 @@
...
@@ -454,7 +531,8 @@
}
}
if
(
this
.
msg
.
ClassId
>
0
)
{
if
(
this
.
msg
.
ClassId
>
0
)
{
this
.
visibleColumns
=
[
'GuestName'
,
'Profession'
,
'Sex'
,
'BirthDate'
,
'Mobile'
,
'Basics'
,
'GuestSourceName'
,
this
.
visibleColumns
=
[
'GuestName'
,
'Profession'
,
'Sex'
,
'BirthDate'
,
'Mobile'
,
'Basics'
,
'GuestSourceName'
,
'LearningGoalsName'
,
'Contact'
,
'ContactMobile'
,
'TotalHours'
,
'StartClassHours'
,
'CourseName'
,
'IsChaBan'
'LearningGoalsName'
,
'Contact'
,
'ContactMobile'
,
'TotalHours'
,
'ValidClassHours'
,
'CompleteHours'
,
'MakeUpHours'
,
'SurplusHours'
,
'StartClassHours'
,
'CourseName'
,
'IsChaBan'
,
'BackClassList'
,
'GuestStateStr'
];
];
}
}
if
(
this
.
msg
.
SourceId
>
0
)
{
if
(
this
.
msg
.
SourceId
>
0
)
{
...
@@ -473,7 +551,13 @@
...
@@ -473,7 +551,13 @@
this
.
getGuestPage
();
this
.
getGuestPage
();
},
},
methods
:
{
methods
:
{
resetContractArr
(){
//跳转到教务单据
goEduReceiptInfo
(
Id
)
{
this
.
OpenNewUrl
(
"/user/billquery"
,
{
Id
:
Id
})
},
resetContractArr
()
{
this
.
addMsg
.
ContractUrl
=
[];
this
.
addMsg
.
ContractUrl
=
[];
},
},
showUpLoadFile
(
file
)
{
showUpLoadFile
(
file
)
{
...
@@ -509,8 +593,8 @@
...
@@ -509,8 +593,8 @@
fileTypeNumber
=
x
.
type
;
fileTypeNumber
=
x
.
type
;
}
}
});
});
if
(
this
.
addMsg
.
ContractType
==
1
)
{
if
(
this
.
addMsg
.
ContractType
==
1
)
{
if
(
fileTypeNumber
!=
1
)
{
if
(
fileTypeNumber
!=
1
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
'negative'
,
type
:
'negative'
,
position
:
"top"
,
position
:
"top"
,
...
@@ -519,8 +603,8 @@
...
@@ -519,8 +603,8 @@
return
return
}
}
}
}
if
(
this
.
addMsg
.
ContractType
==
2
)
{
if
(
this
.
addMsg
.
ContractType
==
2
)
{
if
(
fileTypeNumber
!=
2
)
{
if
(
fileTypeNumber
!=
2
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
'negative'
,
type
:
'negative'
,
position
:
"top"
,
position
:
"top"
,
...
@@ -535,17 +619,17 @@
...
@@ -535,17 +619,17 @@
file
.
file
,
file
.
file
,
(
x
)
=>
{
(
x
)
=>
{
if
(
x
.
Code
==
1
)
{
if
(
x
.
Code
==
1
)
{
if
(
this
.
addMsg
.
ContractType
==
1
)
{
if
(
this
.
addMsg
.
ContractType
==
1
)
{
if
(
this
.
addMsg
.
ContractUrl
.
length
<
1
)
{
if
(
this
.
addMsg
.
ContractUrl
.
length
<
1
)
{
this
.
addMsg
.
ContractUrl
.
push
(
x
.
FileUrl
);
this
.
addMsg
.
ContractUrl
.
push
(
x
.
FileUrl
);
}
else
{
}
else
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
'negative'
,
type
:
'negative'
,
position
:
"top"
,
position
:
"top"
,
message
:
`只能上传一个PDF文件`
message
:
`只能上传一个PDF文件`
})
})
}
}
}
else
{
}
else
{
this
.
addMsg
.
ContractUrl
.
push
(
x
.
FileUrl
);
this
.
addMsg
.
ContractUrl
.
push
(
x
.
FileUrl
);
}
}
this
.
$message
.
success
(
this
.
$t
(
"tips.scchenggong"
));
this
.
$message
.
success
(
this
.
$t
(
"tips.scchenggong"
));
...
@@ -784,4 +868,4 @@
...
@@ -784,4 +868,4 @@
<
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
src/pages/stuMan/stuList.vue
View file @
a2743b83
...
@@ -535,6 +535,18 @@
...
@@ -535,6 +535,18 @@
field
:
"GuestStateStr"
,
field
:
"GuestStateStr"
,
align
:
"left"
,
align
:
"left"
,
},
},
{
name
:
"GraduationTime"
,
label
:
"毕业时间"
,
field
:
"GraduationTime"
,
align
:
"left"
,
},
{
name
:
"CourseRateName"
,
label
:
"毕业课程等级"
,
field
:
"CourseRateName"
,
align
:
"left"
,
},
{
{
name
:
"JoinTypeStr"
,
name
:
"JoinTypeStr"
,
label
:
"类型"
,
label
:
"类型"
,
...
...
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