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
31f962d6
Commit
31f962d6
authored
Jul 28, 2021
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改
parent
c5ea0cad
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
670 additions
and
865 deletions
+670
-865
backclass-form.vue
src/components/sale/backclass-form.vue
+1
-1
continueclass-form.vue
src/components/sale/continueclass-form.vue
+1
-1
transferclass-form.vue
src/components/sale/transferclass-form.vue
+668
-863
No files found.
src/components/sale/backclass-form.vue
View file @
31f962d6
...
@@ -500,7 +500,7 @@ export default {
...
@@ -500,7 +500,7 @@ export default {
});
});
//调用父页面成功方法
//调用父页面成功方法
this
.
$emit
(
"success"
);
this
.
$emit
(
"success"
);
this
.
IsShowBackClassDialog
=
false
;
this
.
$emit
(
'close'
)
;
}
}
});
});
},
},
...
...
src/components/sale/continueclass-form.vue
View file @
31f962d6
...
@@ -440,7 +440,7 @@
...
@@ -440,7 +440,7 @@
})
})
//调用父页面成功方法
//调用父页面成功方法
this
.
$emit
(
'success'
);
this
.
$emit
(
'success'
);
this
.
IsShowContinueClassDialog
=
false
this
.
$emit
(
'close'
);
}
}
})
})
},
},
...
...
src/components/sale/transferclass-form.vue
View file @
31f962d6
<
style
>
<
style
>
.Title_remark
{
.Title_remark
{
font-size
:
12px
;
font-size
:
12px
;
color
:
#999999
;
color
:
#999999
;
margin-left
:
20px
;
margin-left
:
20px
;
}
}
.conTinuCheckdTable
{
width
:
100%
;
height
:
auto
;
text-align
:
left
;
margin-top
:
20px
;
font-size
:
12px
;
}
.conTinuCheckdTable
th
{
color
:
#888888
;
}
.enrollTotalSearchTable
{
width
:
100%
;
}
.backContius
{
color
:
#2961fe
;
cursor
:
pointer
;
}
.contiue_Top
{
width
:
100%
;
padding
:
10px
;
border-bottom
:
1px
solid
#d1d1d1
;
}
.continus_ClassChoice
{
padding
:
20px
;
max-height
:
460px
;
overflow
:
auto
;
}
.el-picker-panel
{
z-index
:
9999
!important
;
}
.Sysuser_Date
.el-range-editor
.el-range-input
{
background-color
:
transparent
;
}
.Sysuser_Date
.el-range-editor.el-input__inner
{
background-color
:
transparent
;
}
.conChoiceTeacherTable
{
width
:
100%
;
border
:
1px
solid
#d1d1d1
;
}
.continus_ClassChoice
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;
}
.continus_ClassChoice
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#c9c9c9
;
}
.continus_ClassChoice
::-webkit-scrollbar-track
{
box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#ededed
;
}
.contius_List
{
width
:
100%
;
height
:
130px
;
border
:
1px
solid
#d1d1d1
;
border-radius
:
5px
;
margin-bottom
:
15px
;
font-size
:
12px
;
box-shadow
:
5px
5px
5px
#d4d0d0
;
}
.continu_Div
{
display
:
inline-block
;
min-height
:
90px
;
border-right
:
1px
dashed
#d1d1d1
;
padding
:
10px
;
color
:
#000
;
}
.continu_Div
:last-child
{
border-right
:
0
;
}
.continu_Btm
{
width
:
100%
;
height
:
30px
;
padding
:
10px
;
border-top
:
1px
solid
#d1d1d1
;
}
._font_size12
{
font-size
:
12px
!important
;
}
._addUpload_box
{
display
:
block
;
margin-top
:
15px
;
}
._addUpload_box
img
{
width
:
100%
;
}
._addUpload_box
>
div
{
float
:
left
;
width
:
138px
;
height
:
92px
;
border
:
1px
dashed
rgba
(
210
,
210
,
210
,
1
);
border-radius
:
2px
;
cursor
:
pointer
;
margin-bottom
:
10px
;
padding
:
5px
;
margin-right
:
10px
;
position
:
relative
;
}
._addUpload_box
>
div
:hover
{
background-color
:
#f5f5f5
;
}
._addFile_name
{
padding-left
:
15px
;
max-width
:
450px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
._addUpload_box
.icon-guanbi1
{
font-size
:
12px
;
color
:
white
;
display
:
inline-block
;
margin-left
:
15px
;
position
:
absolute
;
right
:
-6px
;
top
:
-9px
;
background-color
:
#f56c6c
;
border-radius
:
50%
;
height
:
20px
;
width
:
20px
;
text-align
:
center
;
line-height
:
20px
;
}
._addUpload_box
.icon-guanbi1
:hover
{
font-size
:
12px
;
color
:
#c94052
;
}
._addUpload_box
.icon-excel
,
._addUpload_box
.icon-pdf
,
._addUpload_box
.icon-txt
,
._addUpload_box
.icon-wenjian
,
._addUpload_box
.icon-yasuobao
,
._addUpload_box
.icon-shipin
,
._addUpload_box
.icon-word
{
text-align
:
center
;
font-size
:
38px
;
color
:
green
;
line-height
:
75px
;
}
._addUpload_box
.icon-yasuobao
{
color
:
gray
;
}
._show_img_box
{
position
:
fixed
;
background
:
rgba
(
0
,
0
,
0
,
0.6
);
left
:
0
;
top
:
0
;
width
:
100vw
!important
;
height
:
100vh
;
z-index
:
999
;
text-align
:
center
;
}
._addUpload_tips
{
font-size
:
12px
;
color
:
#999999
;
}
._jump_page
{
cursor
:
pointer
;
text-decoration
:
underline
;
}
._jump_page
:hover
{
color
:
#c94052
;
}
.stop
.el-upload-dragger
{
font-size
:
28px
;
color
:
#8c939d
;
width
:
126px
;
height
:
80px
;
line-height
:
41px
;
text-align
:
center
;
}
.conTinuCheckdTable
{
width
:
100%
;
height
:
auto
;
text-align
:
left
;
margin-top
:
20px
;
font-size
:
12px
;
}
.conTinuCheckdTable
th
{
color
:
#888888
;
}
.enrollTotalSearchTable
{
width
:
100%
;
}
.backContius
{
color
:
#2961fe
;
cursor
:
pointer
;
}
.contiue_Top
{
width
:
100%
;
padding
:
10px
;
border-bottom
:
1px
solid
#d1d1d1
;
}
.continus_ClassChoice
{
padding
:
20px
;
max-height
:
460px
;
overflow
:
auto
;
}
.el-picker-panel
{
z-index
:
9999
!important
;
}
.Sysuser_Date
.el-range-editor
.el-range-input
{
background-color
:
transparent
;
}
.Sysuser_Date
.el-range-editor.el-input__inner
{
background-color
:
transparent
;
}
.conChoiceTeacherTable
{
width
:
100%
;
border
:
1px
solid
#d1d1d1
;
}
.continus_ClassChoice
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;
}
.continus_ClassChoice
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#c9c9c9
;
}
.continus_ClassChoice
::-webkit-scrollbar-track
{
box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#ededed
;
}
.contius_List
{
width
:
100%
;
height
:
130px
;
border
:
1px
solid
#d1d1d1
;
border-radius
:
5px
;
margin-bottom
:
15px
;
font-size
:
12px
;
box-shadow
:
5px
5px
5px
#d4d0d0
;
}
.continu_Div
{
display
:
inline-block
;
min-height
:
90px
;
border-right
:
1px
dashed
#d1d1d1
;
padding
:
10px
;
color
:
#000
;
}
.continu_Div
:last-child
{
border-right
:
0
;
}
.continu_Btm
{
width
:
100%
;
height
:
30px
;
padding
:
10px
;
border-top
:
1px
solid
#d1d1d1
;
}
._font_size12
{
font-size
:
12px
!important
;
}
._addUpload_box
{
display
:
block
;
margin-top
:
15px
;
}
._addUpload_box
img
{
width
:
100%
;
}
._addUpload_box
>
div
{
float
:
left
;
width
:
138px
;
height
:
92px
;
border
:
1px
dashed
rgba
(
210
,
210
,
210
,
1
);
border-radius
:
2px
;
cursor
:
pointer
;
margin-bottom
:
10px
;
padding
:
5px
;
margin-right
:
10px
;
position
:
relative
;
}
._addUpload_box
>
div
:hover
{
background-color
:
#f5f5f5
;
}
._addFile_name
{
padding-left
:
15px
;
max-width
:
450px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
._addUpload_box
.icon-guanbi1
{
font-size
:
12px
;
color
:
white
;
display
:
inline-block
;
margin-left
:
15px
;
position
:
absolute
;
right
:
-6px
;
top
:
-9px
;
background-color
:
#f56c6c
;
border-radius
:
50%
;
height
:
20px
;
width
:
20px
;
text-align
:
center
;
line-height
:
20px
;
}
._addUpload_box
.icon-guanbi1
:hover
{
font-size
:
12px
;
color
:
#c94052
;
}
._addUpload_box
.icon-excel
,
._addUpload_box
.icon-pdf
,
._addUpload_box
.icon-txt
,
._addUpload_box
.icon-wenjian
,
._addUpload_box
.icon-yasuobao
,
._addUpload_box
.icon-shipin
,
._addUpload_box
.icon-word
{
text-align
:
center
;
font-size
:
38px
;
color
:
green
;
line-height
:
75px
;
}
._addUpload_box
.icon-yasuobao
{
color
:
gray
;
}
._show_img_box
{
position
:
fixed
;
background
:
rgba
(
0
,
0
,
0
,
0.6
);
left
:
0
;
top
:
0
;
width
:
100vw
!important
;
height
:
100vh
;
z-index
:
999
;
text-align
:
center
;
}
._addUpload_tips
{
font-size
:
12px
;
color
:
#999999
;
}
._jump_page
{
cursor
:
pointer
;
text-decoration
:
underline
;
}
._jump_page
:hover
{
color
:
#c94052
;
}
.stop
.el-upload-dragger
{
font-size
:
28px
;
color
:
#8c939d
;
width
:
126px
;
height
:
80px
;
line-height
:
41px
;
text-align
:
center
;
}
</
style
>
</
style
>
<!--续课-->
<!--续课-->
<
template
>
<
template
>
<q-dialog
<q-dialog
v-model=
"IsShowContinueClassDialog"
content-class=
"bg-grey-1"
persistent
transition-show=
"scale"
v-model=
"IsShowContinueClassDialog"
transition-hide=
"scale"
>
content-class=
"bg-grey-1"
persistent
transition-show=
"scale"
transition-hide=
"scale"
>
<q-card
style=
"width: 850px; max-width: 900px"
class=
"stop"
>
<q-card
style=
"width: 850px; max-width: 900px"
class=
"stop"
>
<template
v-if=
"isShowTuike"
>
<template
v-if=
"isShowTuike"
>
<q-card-section>
<q-card-section>
<div
class=
"text-h6"
>
<div
class=
"text-h6"
>
{{
transMsg
.
ChangeType
==
1
?
"转班申请"
:
"分拆"
}}
{{
transMsg
.
ChangeType
==
1
?
"转班申请"
:
"分拆"
}}
<span
class=
"Title_remark"
<span
class=
"Title_remark"
>
注:找不到学员?请确认学员是否已退课或已续班
</span>
>
注:找不到学员?请确认学员是否已退课或已续班
</span
>
</div>
</div>
</q-card-section>
</q-card-section>
<div
style=
"margin: 20px; border-bottom: 1px solid #e2e2e2"
>
<div
style=
"margin: 20px; border-bottom: 1px solid #e2e2e2"
>
<div
<div
class=
"apply_List"
v-for=
"(item, index) in studentList"
v-if=
"item.IsShow"
>
class=
"apply_List"
v-for=
"(item, index) in studentList"
v-if=
"item.IsShow"
>
<span
style=
"width: 15%"
>
{{
item
.
GuestName
}}
</span>
<span
style=
"width: 15%"
>
{{
item
.
GuestName
}}
</span>
<span
style=
"width: 7%"
>
{{
item
.
SexStr
}}
</span>
<span
style=
"width: 7%"
>
{{
item
.
SexStr
}}
</span>
<span
style=
"width: 8%"
>
{{
item
.
Age
}}
</span>
<span
style=
"width: 8%"
>
{{
item
.
Age
}}
</span>
<span
style=
"width: 20%"
>
{{
item
.
Mobile
}}
</span>
<span
style=
"width: 20%"
>
{{
item
.
Mobile
}}
</span>
<span
style=
"width: 20%"
>
<span
style=
"width: 20%"
>
<template
v-if=
"item.ClassHours"
<template
v-if=
"item.ClassHours"
>
已学:
{{
item
.
ClassHours
}}
课时
</
template
>
>
已学:
{{
item
.
ClassHours
}}
课时
</
template
>
</span>
</span>
<span
style=
"width: 10%"
>
{{ item.GuestStateStr }}
</span>
<span
style=
"width: 10%"
>
{{ item.GuestStateStr }}
</span>
<span
style=
"width: 20%"
class=
"guest_Status"
>
<span
style=
"width: 20%"
class=
"guest_Status"
>
...
@@ -253,10 +245,7 @@
...
@@ -253,10 +245,7 @@
</
template
>
</
template
>
</span>
</span>
</div>
</div>
<table
<table
class=
"conTinuCheckdTable"
v-if=
"classItem.ClassId > 0 && studentList.length > 0 && isShowAdd"
>
class=
"conTinuCheckdTable"
v-if=
"classItem.ClassId > 0 && studentList.length > 0 && isShowAdd"
>
<tr>
<tr>
<th>
续费班级
</th>
<th>
续费班级
</th>
<th>
续费班级
</th>
<th>
续费班级
</th>
...
@@ -267,11 +256,7 @@
...
@@ -267,11 +256,7 @@
</tr>
</tr>
<tr>
<tr>
<td>
<td>
<span
<span
style=
"color: #2961fe; cursor: pointer"
@
click=
"getRenewClassList()"
>
+点击选择班级
</span>
style=
"color: #2961fe; cursor: pointer"
@
click=
"getRenewClassList()"
>
+点击选择班级
</span
>
</td>
</td>
<td>
{{ classItem.ClassName }}
</td>
<td>
{{ classItem.ClassName }}
</td>
<td>
¥{{ classItem.SellPrice }}
</td>
<td>
¥{{ classItem.SellPrice }}
</td>
...
@@ -280,15 +265,10 @@
...
@@ -280,15 +265,10 @@
<td>
{{ classItem.OpenTime }}
</td>
<td>
{{ classItem.OpenTime }}
</td>
</tr>
</tr>
</table>
</table>
<table
<table
class=
"conTinuCheckdTable"
v-else-if=
"studentList.length > 0 && isShowAdd"
>
class=
"conTinuCheckdTable"
v-else-if=
"studentList.length > 0 && isShowAdd"
>
<tr>
<tr>
<td>
<td>
<span
class=
"backContius"
@
click=
"getRenewClassList()"
<span
class=
"backContius"
@
click=
"getRenewClassList()"
>
+点击选择班级
</span>
>
+点击选择班级
</span
>
</td>
</td>
<td></td>
<td></td>
<td></td>
<td></td>
...
@@ -299,71 +279,31 @@
...
@@ -299,71 +279,31 @@
</table>
</table>
<div
class=
"row"
style=
"margin-top: 20px"
>
<div
class=
"row"
style=
"margin-top: 20px"
>
<
template
v-if=
"transMsg.ChangeType == 1"
>
<
template
v-if=
"transMsg.ChangeType == 1"
>
<q-input
<q-input
filled
v-model=
"transMsg.OutTime"
class=
"col-6 q-pr-lg"
mask=
"date"
label=
"转出日期"
>
filled
v-model=
"transMsg.OutTime"
class=
"col-6 q-pr-lg"
mask=
"date"
label=
"转出日期"
>
<template
v-slot:append
>
<template
v-slot:append
>
<q-icon
name=
"event"
class=
"cursor-pointer"
>
<q-icon
name=
"event"
class=
"cursor-pointer"
>
<q-popup-proxy
<q-popup-proxy
ref=
"qDateProxy1"
transition-show=
"scale"
transition-hide=
"scale"
>
ref=
"qDateProxy1"
<q-date
v-model=
"transMsg.OutTime"
:options=
"optionsFn2"
@
input=
"getOutTime"
/>
transition-show=
"scale"
transition-hide=
"scale"
>
<q-date
v-model=
"transMsg.OutTime"
:options=
"optionsFn2"
@
input=
"getOutTime"
/>
</q-popup-proxy>
</q-popup-proxy>
</q-icon>
</q-icon>
</
template
>
</
template
>
</q-input>
</q-input>
</template>
</template>
<q-input
<q-input
filled
v-model=
"transMsg.EffectiveDate"
class=
"col-6"
mask=
"date"
label=
"生效日期"
>
filled
v-model=
"transMsg.EffectiveDate"
class=
"col-6"
mask=
"date"
label=
"生效日期"
>
<
template
v-slot:append
>
<
template
v-slot:append
>
<q-icon
name=
"event"
class=
"cursor-pointer"
>
<q-icon
name=
"event"
class=
"cursor-pointer"
>
<q-popup-proxy
<q-popup-proxy
ref=
"qDateProxy2"
transition-show=
"scale"
transition-hide=
"scale"
>
ref=
"qDateProxy2"
<q-date
v-model=
"transMsg.EffectiveDate"
:options=
"optionsFn"
@
input=
"checkEffectDate()"
/>
transition-show=
"scale"
transition-hide=
"scale"
>
<q-date
v-model=
"transMsg.EffectiveDate"
:options=
"optionsFn"
@
input=
"checkEffectDate()"
/>
</q-popup-proxy>
</q-popup-proxy>
</q-icon>
</q-icon>
</
template
>
</
template
>
</q-input>
</q-input>
</div>
</div>
<q-input
<q-input
filled
stack-label
:dense=
"false"
v-model=
"transMsg.Remarks"
style=
"margin-top: 20px"
type=
"textarea"
filled
class=
"col-12"
:label=
"transMsg.ChangeType == 1 ? '转班原因' : '分拆原因'"
/>
stack-label
:dense=
"false"
v-model=
"transMsg.Remarks"
style=
"margin-top: 20px"
type=
"textarea"
class=
"col-12"
:label=
"transMsg.ChangeType == 1 ? '转班原因' : '分拆原因'"
/>
<div
class=
"row"
>
<div
class=
"row"
>
<div
class=
"col-12 q-mt-md text-grey-6"
>
<div
class=
"col-12 q-mt-md text-grey-6"
>
上传附件:
<span
上传附件:
<span
class=
"fj-tip"
style=
"font-size: 10px; color: #f00"
>
*单文件限制5M内
</span>
class=
"fj-tip"
style=
"font-size: 10px; color: #f00"
>
*单文件限制5M内
</span
>
</div>
</div>
<div>
<div>
<!-- <p>{{$t('fnc.scfujian')}}<span class="_addUpload_tips">{{$t('tips.wjdxbncgsz')}}</span></p> -->
<!-- <p>{{$t('fnc.scfujian')}}<span class="_addUpload_tips">{{$t('tips.wjdxbncgsz')}}</span></p> -->
...
@@ -371,20 +311,12 @@
...
@@ -371,20 +311,12 @@
<
template
v-for=
"(file, fIndex) in saveMsg"
>
<
template
v-for=
"(file, fIndex) in saveMsg"
>
<div
v-if=
"file.Type == 3"
>
<div
v-if=
"file.Type == 3"
>
<div
style=
"width: 100%; height: 100%; overflow: hidden"
>
<div
style=
"width: 100%; height: 100%; overflow: hidden"
>
<img
<img
:src=
"file.Url ? file.Url : file.Content"
@
click=
"showUpLoadFile(file)"
/>
:src=
"file.Url ? file.Url : file.Content"
@
click=
"showUpLoadFile(file)"
/>
</div>
</div>
<span
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
<div
v-if=
"file.Type == 1"
>
<div
v-if=
"file.Type == 1"
>
<div
<div
class=
"iconfont"
:class=
"
class=
"iconfont"
:class=
"
file.Content.substring(
file.Content.substring(
file.Content.lastIndexOf('.') + 1,
file.Content.lastIndexOf('.') + 1,
file.Content.length
file.Content.length
...
@@ -405,53 +337,24 @@
...
@@ -405,53 +337,24 @@
).toUpperCase() == 'DOC'
).toUpperCase() == 'DOC'
? 'icon-word'
? 'icon-word'
: 'icon-excel'
: 'icon-excel'
"
"
@
click=
"showUpLoadFile(file)"
></div>
@
click=
"showUpLoadFile(file)"
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
></div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
<div
v-if=
"file.Type == 2"
>
<div
v-if=
"file.Type == 2"
>
<div
<div
class=
"iconfont icon-wenjian"
@
click=
"showUpLoadFile(file)"
></div>
class=
"iconfont icon-wenjian"
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
@
click=
"showUpLoadFile(file)"
></div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
<div
v-if=
"file.Type == 4"
>
<div
v-if=
"file.Type == 4"
>
<div
<div
class=
"iconfont icon-yasuobao"
@
click=
"showUpLoadFile(file)"
></div>
class=
"iconfont icon-yasuobao"
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
@
click=
"showUpLoadFile(file)"
></div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
<div
v-if=
"file.Type == 5"
>
<div
v-if=
"file.Type == 5"
>
<div
<div
class=
"iconfont icon-shipin"
@
click=
"showUpLoadFile(file)"
></div>
class=
"iconfont icon-shipin"
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
@
click=
"showUpLoadFile(file)"
></div>
<span
class=
"iconfont icon-guanbi1"
@
click=
"deleteUploadFile(fIndex)"
></span>
</div>
</div>
</
template
>
</
template
>
<div
class=
"_pic_upload"
>
<div
class=
"_pic_upload"
>
<el-upload
<el-upload
drag
:http-request=
"uploadFileBtn"
:multiple=
"true"
:show-file-list=
"false"
action=
""
>
drag
:http-request=
"uploadFileBtn"
:multiple=
"true"
:show-file-list=
"false"
action=
""
>
<i
class=
"el-icon-plus avatar-uploader-icon"
></i>
<i
class=
"el-icon-plus avatar-uploader-icon"
></i>
<div
class=
"el-upload__text"
>
<div
class=
"el-upload__text"
>
{{ $t("active.ld_djscwj") }}
{{ $t("active.ld_djscwj") }}
...
@@ -464,107 +367,44 @@
...
@@ -464,107 +367,44 @@
<q-separator
/>
<q-separator
/>
</div>
</div>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
<q-btn
label=
"取消"
flat
color=
"grey-10"
style=
"font-weight: 400 !important"
@
click=
"closeContinueClassForm"
/>
label=
"取消"
<q-btn
:label=
"transMsg.ChangeType == 1 ? '确认转班' : '确认分拆'"
color=
"accent"
class=
"q-px-md"
flat
style=
"font-weight: 400 !important"
@
click=
"setRenewOrder"
/>
color=
"grey-10"
style=
"font-weight: 400 !important"
@
click=
"closeContinueClassForm"
/>
<q-btn
:label=
"transMsg.ChangeType == 1 ? '确认转班' : '确认分拆'"
color=
"accent"
class=
"q-px-md"
style=
"font-weight: 400 !important"
@
click=
"setRenewOrder"
/>
</q-card-actions>
</q-card-actions>
</template>
</template>
<
template
v-else
>
<
template
v-else
>
<div
class=
"contiue_Top"
>
<div
class=
"contiue_Top"
>
<span
class=
"backContius"
@
click=
"isShowTuike = true"
>
<span
class=
"backContius"
@
click=
"isShowTuike = true"
>
<i
<i
style=
"font-size: 18px; margin-left: 15px"
title=
"返回"
class=
"iconfont icon-fanhui"
></i></span>
style=
"font-size: 18px; margin-left: 15px"
title=
"返回"
class=
"iconfont icon-fanhui"
></i
></span>
<span
style=
"margin-left: 20px"
>
班级选择
</span>
<span
style=
"margin-left: 20px"
>
班级选择
</span>
</div>
</div>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
style=
"margin: 10px"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
style=
"margin: 10px"
>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
@
input=
"getRenewClassList"
filled
option-value=
"SId"
option-label=
"SName"
@
input=
"getRenewClassList"
v-model=
"classMsg.School_Id"
:options=
"schoolList"
emit-value
map-options
label=
"关联校区"
/>
filled
option-value=
"SId"
option-label=
"SName"
v-model=
"classMsg.School_Id"
:options=
"schoolList"
emit-value
map-options
label=
"关联校区"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
filled
stack-label
option-value=
"CTypeId"
option-label=
"CTypeName"
v-model=
"classMsg.ClassType"
filled
ref=
"CouseId"
:options=
"classTypeList"
label=
"班级类型"
:dense=
"false"
emit-value
map-options
/>
stack-label
option-value=
"CTypeId"
option-label=
"CTypeName"
v-model=
"classMsg.ClassType"
ref=
"CouseId"
:options=
"classTypeList"
label=
"班级类型"
:dense=
"false"
emit-value
map-options
/>
</div>
</div>
<div
class=
"col-5 Sysuser_Date"
>
<div
class=
"col-5 Sysuser_Date"
>
<q-field
filled
>
<q-field
filled
>
<template
v-slot:control
>
<template
v-slot:control
>
<el-date-picker
<el-date-picker
v-model=
"dateList"
@
change=
"getRenewClassList()"
value-format=
"yyyy-MM-dd"
v-model=
"dateList"
type=
"daterange"
style=
"border: none"
range-separator=
"至"
start-placeholder=
"开始时间"
@
change=
"getRenewClassList()"
end-placeholder=
"结束时间"
>
value-format=
"yyyy-MM-dd"
</el-date-picker>
type=
"daterange"
style=
"border: none"
range-separator=
"至"
start-placeholder=
"开始时间"
end-placeholder=
"结束时间"
>
</el-date-picker
>
</
template
>
</
template
>
</q-field>
</q-field>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-input
<q-input
@
change=
"getRenewClassList"
clearable
filled
v-model=
"classMsg.TeacherName"
label=
"带班老师"
@
change=
"getRenewClassList"
@
clear=
"getRenewClassList"
maxlength=
"20"
/>
clearable
filled
v-model=
"classMsg.TeacherName"
label=
"带班老师"
@
clear=
"getRenewClassList"
maxlength=
"20"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
<q-select
filled
stack-label
use-input
option-value=
"CourseId"
option-label=
"CourseName"
filled
v-model=
"classMsg.CouseId"
:options=
"ClassList"
label=
"学习课程"
:dense=
"false"
emit-value
map-options
stack-label
@
filter=
"filterFn"
@
input=
"getRenewClassList"
>
use-input
option-value=
"CourseId"
option-label=
"CourseName"
v-model=
"classMsg.CouseId"
:options=
"ClassList"
label=
"学习课程"
:dense=
"false"
emit-value
map-options
@
filter=
"filterFn"
@
input=
"getRenewClassList"
>
<
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"
>
...
@@ -595,32 +435,19 @@
...
@@ -595,32 +435,19 @@
<div
class=
"continu_Div"
style=
"width: 20%"
>
<div
class=
"continu_Div"
style=
"width: 20%"
>
<div>
价格
</div>
<div>
价格
</div>
<div
style=
"margin: 5px 0"
>
售价:{{ cItem.NewSellPrice }}
</div>
<div
style=
"margin: 5px 0"
>
售价:{{ cItem.NewSellPrice }}
</div>
<
template
<
template
v-if=
"
v-if=
"
cItem.ClassStepPriceList &&
cItem.ClassStepPriceList &&
cItem.ClassStepPriceList.length > 0
cItem.ClassStepPriceList.length > 0
"
"
>
>
更多优惠价格
更多优惠价格
<span
<span
class=
"iconfont icon-xiangxia"
style=
"color: #2961fe; font-size: 10px"
></span>
class=
"iconfont icon-xiangxia"
style=
"color: #2961fe; font-size: 10px"
></span>
<q-popup-proxy>
<q-popup-proxy>
<q-banner>
<q-banner>
<div
class=
"price-popup"
>
<div
class=
"price-popup"
>
<div
<div
class=
"price-popup-item"
v-for=
"(x, index2) in cItem.ClassStepPriceList"
:key=
"index2"
class=
"price-popup-item"
style=
"margin: 5px 0"
>
v-for=
"(x, index2) in cItem.ClassStepPriceList"
<span
style=
"color: #2d2d2d; font-weight: bold"
>
{{
x
.
PersionNum
}}
人报名
<span
:key=
"index2"
style=
"color: #2860fb; margin-left: 15px"
>
{{
x
.
PersionPrice
.
toFixed
(
2
)
}}
</span></span>
style=
"margin: 5px 0"
>
<span
style=
"color: #2d2d2d; font-weight: bold"
>
{{
x
.
PersionNum
}}
人报名
<span
style=
"color: #2860fb; margin-left: 15px"
>
{{
x
.
PersionPrice
.
toFixed
(
2
)
}}
</span
></span
>
</div>
</div>
</div>
</div>
</q-banner>
</q-banner>
...
@@ -634,44 +461,26 @@
...
@@ -634,44 +461,26 @@
</div>
</div>
<div>
<div>
已招收
已招收
<span
style=
"color: blue"
>
{{ cItem.OrderStudentCount }}
</span
<span
style=
"color: blue"
>
{{ cItem.OrderStudentCount }}
</span>
人
>
人
</div>
</div>
</div>
</div>
<div
class=
"continu_Div"
style=
"width: 15%"
>
<div
class=
"continu_Div"
style=
"width: 15%"
>
<q-btn
<q-btn
label=
"选择此班"
size=
"sm"
@
click=
"clickClassItem(cItem)"
color=
"accent q-px-md"
style=
"
label=
"选择此班"
size=
"sm"
@
click=
"clickClassItem(cItem)"
color=
"accent q-px-md"
style=
"
font-weight: 400 !important;
font-weight: 400 !important;
display: block;
display: block;
margin: 25px 0 0 10px;
margin: 25px 0 0 10px;
padding: 0;
padding: 0;
"
"
/>
/>
</div>
</div>
</div>
</div>
<div
class=
"continu_Btm"
>
OP备注 {{ cItem.InnerRemark }}
</div>
<div
class=
"continu_Btm"
>
OP备注 {{ cItem.InnerRemark }}
</div>
</div>
</div>
<q-pagination
<q-pagination
class=
"full-width justify-end"
v-model=
"classMsg.pageIndex"
color=
"primary"
class=
"full-width justify-end"
:max=
"classPageCount"
:input=
"true"
@
input=
"changePage"
/>
v-model=
"classMsg.pageIndex"
color=
"primary"
:max=
"classPageCount"
:input=
"true"
@
input=
"changePage"
/>
</div>
</div>
</template>
</template>
<div
<div
v-if=
"picIsShow"
class=
"_show_img_box"
@
click=
"(picIsShow = false), (picObj = [])"
>
v-if=
"picIsShow"
<div
style=
"
class=
"_show_img_box"
@
click=
"(picIsShow = false), (picObj = [])"
>
<div
style=
"
position: absolute;
position: absolute;
width: 800px;
width: 800px;
height: 600px;
height: 600px;
...
@@ -679,19 +488,9 @@
...
@@ -679,19 +488,9 @@
top: 50%;
top: 50%;
margin-left: -400px;
margin-left: -400px;
margin-top: -300px;
margin-top: -300px;
"
"
>
>
<el-carousel
:initial-index=
"initialIndex"
height=
"600px"
:interval=
"5000"
trigger=
"click"
>
<el-carousel
<el-carousel-item
style=
"height: 600px; overflow: auto"
v-for=
"(item, index) in picObj"
:key=
"index"
>
:initial-index=
"initialIndex"
height=
"600px"
:interval=
"5000"
trigger=
"click"
>
<el-carousel-item
style=
"height: 600px; overflow: auto"
v-for=
"(item, index) in picObj"
:key=
"index"
>
<img
:src=
"item"
style=
""
/>
<img
:src=
"item"
style=
""
/>
</el-carousel-item>
</el-carousel-item>
</el-carousel>
</el-carousel>
...
@@ -701,427 +500,433 @@
...
@@ -701,427 +500,433 @@
</q-dialog>
</q-dialog>
</template>
</template>
<
script
>
<
script
>
import
{
import
{
getSchoolDropdown
,
getSchoolDropdown
,
SetOrderChange
,
SetOrderChange
,
SetOrderSplit
,
SetOrderSplit
,
}
from
"../../api/school/index"
;
}
from
"../../api/school/index"
;
import
{
GetClassTypeList
}
from
"../../api/system/index"
;
import
{
import
{
queryCourseDropdownList
}
from
"../../api/course/index"
;
GetClassTypeList
import
{
}
from
"../../api/system/index"
;
getOrderGuestPageList
,
import
{
saveRenewOrder
,
queryCourseDropdownList
queryRenewClass
,
}
from
"../../api/course/index"
;
}
from
"../../api/sale/sale"
;
import
{
import
{
UploadSelfFile
}
from
"../../api/common/common"
;
getOrderGuestPageList
,
export
default
{
saveRenewOrder
,
name
:
"backclass-form"
,
queryRenewClass
,
props
:
{
}
from
"../../api/sale/sale"
;
saveObj
:
{
import
{
type
:
Object
,
UploadSelfFile
default
:
null
,
}
from
"../../api/common/common"
;
},
export
default
{
ChangeType
:
{
name
:
"backclass-form"
,
type
:
Number
,
props
:
{
default
:
null
,
saveObj
:
{
},
type
:
Object
,
},
default
:
null
,
data
()
{
return
{
IsShowContinueClassDialog
:
true
,
continueClassMsg
:
{
OrderId
:
0
,
ClassId
:
0
,
pageIndex
:
1
,
pageSize
:
1000
,
GuestState
:
1
,
},
},
SaleRemark
:
""
,
//申请理由
ChangeType
:
{
loading
:
false
,
type
:
Number
,
studentList
:
[],
//学员列表
default
:
null
,
chooseItem
:
{},
//当前选择项
classMsg
:
{
pageIndex
:
1
,
//当前页码
pageSize
:
5
,
//每页显示条数
rowsPerPage
:
5
,
School_Id
:
0
,
//校区
ClassType
:
0
,
//班级类型
StartTime
:
""
,
//开课开始时间
EndTime
:
""
,
//开课结束时间
TeacherName
:
""
,
//教师姓名
CouseId
:
0
,
//课程编号
ClassId
:
0
,
//原班级编号
},
},
transMsg
:
{
},
Id
:
0
,
data
()
{
SourceOrderId
:
0
,
//原订单编号
return
{
OrderGuestId
:
0
,
//学员编号
IsShowContinueClassDialog
:
true
,
ChangeType
:
1
,
//变更类型 1转班 2分拆
continueClassMsg
:
{
NewClassId
:
0
,
//新班级编号
OrderId
:
0
,
NewCourseId
:
0
,
//新课程编号
ClassId
:
0
,
EffectiveDate
:
""
,
//生效日期
pageIndex
:
1
,
OutTime
:
""
,
//转出本班时间
pageSize
:
1000
,
Remarks
:
""
,
//变更原因
GuestState
:
1
,
ReceiptFileList
:
[],
},
SaleRemark
:
""
,
//申请理由
loading
:
false
,
studentList
:
[],
//学员列表
chooseItem
:
{},
//当前选择项
classMsg
:
{
pageIndex
:
1
,
//当前页码
pageSize
:
5
,
//每页显示条数
rowsPerPage
:
5
,
School_Id
:
0
,
//校区
ClassType
:
0
,
//班级类型
StartTime
:
""
,
//开课开始时间
EndTime
:
""
,
//开课结束时间
TeacherName
:
""
,
//教师姓名
CouseId
:
0
,
//课程编号
ClassId
:
0
,
//原班级编号
},
transMsg
:
{
Id
:
0
,
SourceOrderId
:
0
,
//原订单编号
OrderGuestId
:
0
,
//学员编号
ChangeType
:
1
,
//变更类型 1转班 2分拆
NewClassId
:
0
,
//新班级编号
NewCourseId
:
0
,
//新课程编号
EffectiveDate
:
""
,
//生效日期
OutTime
:
""
,
//转出本班时间
Remarks
:
""
,
//变更原因
ReceiptFileList
:
[],
},
classPageCount
:
0
,
calssData
:
[],
classItem
:
{},
//当前点击的班级
isShowTuike
:
true
,
//显示退课信息
schoolList
:
[],
//校区列表
classTypeList
:
[],
//班级类型
dateList
:
[],
//日期
ClassList
:
[],
//学习课程
AllClassList
:
[],
isShowAdd
:
false
,
saveMsg
:
[],
picIsShow
:
false
,
picObj
:
[],
initialIndex
:
0
,
};
},
created
()
{
this
.
continueClassMsg
.
OrderId
=
this
.
saveObj
.
OrderId
;
this
.
continueClassMsg
.
ClassId
=
this
.
saveObj
.
ClassId
;
this
.
classMsg
.
ClassId
=
this
.
saveObj
.
ClassId
;
this
.
transMsg
.
ChangeType
=
this
.
ChangeType
;
this
.
getSchool
();
this
.
GetClassTypeList
();
this
.
CourseList
();
this
.
getStudentList
();
},
methods
:
{
optionsFn
(
date
)
{
if
(
this
.
transMsg
.
OutTime
==
""
)
{
var
myDate
=
new
Date
();
let
month
=
myDate
.
getMonth
()
+
1
;
if
(
month
<
10
)
{
month
=
"0"
+
month
;
}
var
toDay
=
myDate
.
getFullYear
()
+
"/"
+
month
+
"/"
+
myDate
.
getDate
();
return
date
>=
toDay
;
}
else
{
return
date
>=
this
.
transMsg
.
OutTime
;
}
},
},
classPageCount
:
0
,
optionsFn2
(
date
)
{
calssData
:
[],
classItem
:
{},
//当前点击的班级
isShowTuike
:
true
,
//显示退课信息
schoolList
:
[],
//校区列表
classTypeList
:
[],
//班级类型
dateList
:
[],
//日期
ClassList
:
[],
//学习课程
AllClassList
:
[],
isShowAdd
:
false
,
saveMsg
:
[],
picIsShow
:
false
,
picObj
:
[],
initialIndex
:
0
,
};
},
created
()
{
this
.
continueClassMsg
.
OrderId
=
this
.
saveObj
.
OrderId
;
this
.
continueClassMsg
.
ClassId
=
this
.
saveObj
.
ClassId
;
this
.
classMsg
.
ClassId
=
this
.
saveObj
.
ClassId
;
this
.
transMsg
.
ChangeType
=
this
.
ChangeType
;
this
.
getSchool
();
this
.
GetClassTypeList
();
this
.
CourseList
();
this
.
getStudentList
();
},
methods
:
{
optionsFn
(
date
)
{
if
(
this
.
transMsg
.
OutTime
==
""
)
{
var
myDate
=
new
Date
();
var
myDate
=
new
Date
();
let
month
=
myDate
.
getMonth
()
+
1
;
let
month
=
myDate
.
getMonth
()
+
1
;
if
(
month
<
10
)
{
if
(
month
<
10
)
{
month
=
"0"
+
month
;
month
=
"0"
+
month
;
}
}
var
toDay
=
myDate
.
getFullYear
()
+
"/"
+
month
+
"/"
+
myDate
.
getDate
();
var
toDay
=
myDate
.
getFullYear
()
+
"/"
+
month
+
"/"
+
myDate
.
getDate
();
return
date
>=
toDay
;
return
date
>
toDay
;
}
else
{
},
return
date
>=
this
.
transMsg
.
OutTime
;
//取消申请
}
cancelApply
()
{
},
this
.
chooseItem
=
{};
optionsFn2
(
date
)
{
this
.
classItem
=
{};
var
myDate
=
new
Date
();
this
.
transMsg
.
SourceOrderId
=
0
;
let
month
=
myDate
.
getMonth
()
+
1
;
this
.
transMsg
.
OrderGuestId
=
0
;
if
(
month
<
10
)
{
month
=
"0"
+
month
;
if
(
this
.
studentList
&&
this
.
studentList
.
length
>
0
)
{
}
this
.
studentList
.
forEach
((
item
)
=>
{
var
toDay
=
myDate
.
getFullYear
()
+
"/"
+
month
+
"/"
+
myDate
.
getDate
();
item
.
IsShow
=
true
;
return
date
>
toDay
;
});
},
//取消申请
cancelApply
()
{
this
.
chooseItem
=
{};
this
.
classItem
=
{};
this
.
transMsg
.
SourceOrderId
=
0
;
this
.
transMsg
.
OrderGuestId
=
0
;
if
(
this
.
studentList
&&
this
.
studentList
.
length
>
0
)
{
this
.
studentList
.
forEach
((
item
)
=>
{
item
.
IsShow
=
true
;
});
}
this
.
isShowAdd
=
false
;
},
//当前点击项
clickItem
(
item
)
{
if
(
this
.
studentList
&&
this
.
studentList
.
length
>
0
)
{
this
.
studentList
.
forEach
((
item
)
=>
{
item
.
IsShow
=
false
;
});
}
this
.
isShowAdd
=
true
;
item
.
IsShow
=
true
;
this
.
chooseItem
=
item
;
this
.
transMsg
.
SourceOrderId
=
item
.
OrderId
;
this
.
transMsg
.
OrderGuestId
=
item
.
Id
;
// this.getRenewClassList();
},
//关闭弹窗
closeContinueClassForm
()
{
this
.
IsShowContinueClassDialog
=
false
;
this
.
SaleRemark
=
""
;
this
.
continueClassMsg
.
OrderId
=
0
;
this
.
continueClassMsg
.
ClassId
=
0
;
this
.
chooseItem
=
{};
this
.
$emit
(
"close"
);
},
//获取订单学员列表
getStudentList
()
{
this
.
studentList
=
[];
getOrderGuestPageList
(
this
.
continueClassMsg
).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
studentList
=
res
.
Data
.
PageData
;
}
}
});
this
.
isShowAdd
=
false
;
},
},
//获取续课列表
//当前点击项
getRenewClassList
()
{
clickItem
(
item
)
{
this
.
isShowTuike
=
false
;
if
(
this
.
studentList
&&
this
.
studentList
.
length
>
0
)
{
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
)
{
this
.
studentList
.
forEach
((
item
)
=>
{
this
.
classMsg
.
StartTime
=
this
.
dateList
[
0
];
item
.
IsShow
=
false
;
this
.
classMsg
.
EndTime
=
this
.
dateList
[
1
];
});
}
else
{
this
.
classMsg
.
StartTime
=
""
;
this
.
classMsg
.
EndTime
=
""
;
}
queryRenewClass
(
this
.
classMsg
).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
classPageCount
=
res
.
Data
.
PageCount
;
this
.
calssData
=
res
.
Data
.
PageData
;
}
}
});
this
.
isShowAdd
=
true
;
},
item
.
IsShow
=
true
;
clickClassItem
(
cItem
)
{
this
.
chooseItem
=
item
;
this
.
classItem
=
cItem
;
this
.
isShowTuike
=
true
;
this
.
transMsg
.
SourceOrderId
=
item
.
OrderId
;
this
.
transMsg
.
NewClassId
=
cItem
.
ClassId
;
this
.
transMsg
.
OrderGuestId
=
item
.
Id
;
this
.
transMsg
.
NewCourseId
=
cItem
.
CouseId
;
},
// this.getRenewClassList();
//确认转班
},
setRenewOrder
()
{
//关闭弹窗
if
(
JSON
.
stringify
(
this
.
classItem
)
===
"{}"
)
{
closeContinueClassForm
()
{
this
.
$q
.
notify
({
this
.
IsShowContinueClassDialog
=
false
;
type
:
"negative"
,
this
.
SaleRemark
=
""
;
position
:
"top"
,
this
.
continueClassMsg
.
OrderId
=
0
;
message
:
`请选择要转的班级`
,
this
.
continueClassMsg
.
ClassId
=
0
;
this
.
chooseItem
=
{};
this
.
$emit
(
"close"
);
},
//获取订单学员列表
getStudentList
()
{
this
.
studentList
=
[];
getOrderGuestPageList
(
this
.
continueClassMsg
).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
studentList
=
res
.
Data
.
PageData
;
}
});
});
return
;
},
}
//获取续课列表
if
(
this
.
transMsg
.
OrderGuestId
==
0
)
{
getRenewClassList
()
{
this
.
$q
.
notify
({
this
.
isShowTuike
=
false
;
type
:
"negative"
,
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
)
{
position
:
"top"
,
this
.
classMsg
.
StartTime
=
this
.
dateList
[
0
];
message
:
`请选择要申请的学员`
,
this
.
classMsg
.
EndTime
=
this
.
dateList
[
1
];
}
else
{
this
.
classMsg
.
StartTime
=
""
;
this
.
classMsg
.
EndTime
=
""
;
}
queryRenewClass
(
this
.
classMsg
).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
classPageCount
=
res
.
Data
.
PageCount
;
this
.
calssData
=
res
.
Data
.
PageData
;
}
});
});
return
;
},
}
clickClassItem
(
cItem
)
{
if
(
this
.
transMsg
.
ChangeType
==
1
)
{
this
.
classItem
=
cItem
;
if
(
this
.
transMsg
.
OutTime
==
""
)
{
this
.
isShowTuike
=
true
;
this
.
transMsg
.
NewClassId
=
cItem
.
ClassId
;
this
.
transMsg
.
NewCourseId
=
cItem
.
CouseId
;
},
//确认转班
setRenewOrder
()
{
if
(
JSON
.
stringify
(
this
.
classItem
)
===
"{}"
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
"negative"
,
type
:
"negative"
,
position
:
"top"
,
position
:
"top"
,
message
:
`请选择
转出日期
`
,
message
:
`请选择
要转的班级
`
,
});
});
return
;
return
;
}
}
}
if
(
this
.
transMsg
.
OrderGuestId
==
0
)
{
if
(
this
.
transMsg
.
EffectiveDate
==
""
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
"negative"
,
type
:
"negative"
,
position
:
"top"
,
position
:
"top"
,
message
:
`请选择要申请的学员`
,
message
:
`请选择生效日期`
,
});
});
return
;
return
;
}
}
if
(
this
.
transMsg
.
ChangeType
==
1
)
{
if
(
this
.
transMsg
.
ReceiptFileList
.
length
===
0
)
{
if
(
this
.
transMsg
.
OutTime
==
""
)
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
message
:
`请上传附件`
,
});
return
;
}
if
(
this
.
transMsg
.
ChangeType
==
1
)
{
SetOrderChange
(
this
.
transMsg
).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
"iconfont icon-chenggong"
,
color
:
"accent"
,
timeout
:
2000
,
message
:
"保存成功!"
,
position
:
"top"
,
});
//调用父页面成功方法
this
.
$emit
(
"success"
);
this
.
IsShowContinueClassDialog
=
false
;
}
});
}
else
{
SetOrderSplit
(
this
.
transMsg
).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
icon
:
"iconfont icon-chenggong"
,
type
:
"negative"
,
color
:
"accent"
,
timeout
:
2000
,
message
:
"保存成功!"
,
position
:
"top"
,
position
:
"top"
,
message
:
`请选择转出日期`
,
});
});
//调用父页面成功方法
return
;
this
.
$emit
(
"success"
);
this
.
IsShowContinueClassDialog
=
false
;
}
}
});
}
},
//获取校区列表
getSchool
()
{
getSchoolDropdown
({}).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
var
tempArray
=
res
.
Data
;
if
(
!
tempArray
)
{
tempArray
=
[];
}
this
.
schoolList
=
tempArray
;
}
});
},
//获取班级类型下拉
GetClassTypeList
()
{
GetClassTypeList
({}).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
var
tempArray
=
res
.
Data
;
if
(
!
tempArray
)
{
tempArray
=
[];
}
tempArray
.
unshift
({
CTypeId
:
0
,
CTypeName
:
"不限"
,
});
this
.
classTypeList
=
tempArray
;
}
});
},
//筛选课程
filterFn
(
val
,
update
)
{
update
(()
=>
{
if
(
val
===
""
)
{
this
.
ClassList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
AllClassList
));
}
else
{
this
.
ClassList
=
this
.
AllClassList
.
filter
(
(
v
)
=>
v
.
CourseName
.
indexOf
(
val
)
>
-
1
);
}
}
});
if
(
this
.
transMsg
.
EffectiveDate
==
""
)
{
},
this
.
$q
.
notify
({
//获取课程
type
:
"negative"
,
CourseList
()
{
position
:
"top"
,
queryCourseDropdownList
({}).
then
((
res
)
=>
{
message
:
`请选择生效日期`
,
if
(
res
.
Code
==
1
)
{
this
.
ClassList
=
res
.
Data
;
this
.
AllClassList
=
res
.
Data
;
this
.
ClassList
.
unshift
({
CourseId
:
0
,
CourseName
:
"不限"
,
});
});
return
;
}
}
});
if
(
this
.
transMsg
.
ReceiptFileList
.
length
===
0
)
{
},
//翻页
changePage
(
val
)
{
this
.
classMsg
.
pageIndex
=
val
;
this
.
getRenewClassList
();
},
getOutTime
()
{
this
.
$refs
.
qDateProxy1
.
hide
();
this
.
transMsg
.
EffectiveDate
=
""
;
},
checkEffectDate
()
{
if
(
this
.
transMsg
.
ChangeType
==
1
)
{
if
(
this
.
transMsg
.
OutTime
==
""
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
"negative"
,
type
:
"negative"
,
position
:
"top"
,
position
:
"top"
,
message
:
`请
先选择转出日期
`
,
message
:
`请
上传附件
`
,
});
});
this
.
transMsg
.
EffectiveDate
=
""
;
return
;
}
}
}
if
(
this
.
transMsg
.
ChangeType
==
1
)
{
this
.
$refs
.
qDateProxy2
.
hide
();
SetOrderChange
(
this
.
transMsg
).
then
((
res
)
=>
{
},
if
(
res
.
Code
==
1
)
{
showUpLoadFile
(
i
)
{
this
.
$q
.
notify
({
// 预览上传文件
icon
:
"iconfont icon-chenggong"
,
if
(
i
.
Type
==
3
)
{
color
:
"accent"
,
this
.
picObj
.
push
(
i
.
Url
);
timeout
:
2000
,
// this.imgList.push(i.Url)
message
:
"保存成功!"
,
this
.
picIsShow
=
true
;
position
:
"top"
,
}
else
{
});
if
(
//调用父页面成功方法
i
.
Content
.
substring
(
this
.
$emit
(
"success"
);
i
.
Content
.
lastIndexOf
(
"."
)
+
1
,
this
.
$emit
(
"close"
);
i
.
Content
.
length
}
).
toUpperCase
()
==
"PDF"
||
});
i
.
Content
.
substring
(
i
.
Content
.
lastIndexOf
(
"."
)
+
1
,
i
.
Content
.
length
).
toUpperCase
()
==
"TXT"
)
{
this
.
previewPDF
(
i
.
Url
);
}
else
{
}
else
{
window
.
open
(
SetOrderSplit
(
this
.
transMsg
).
then
((
res
)
=>
{
"https://view.officeapps.live.com/op/view.aspx?src="
+
i
.
Url
if
(
res
.
Code
==
1
)
{
);
this
.
$q
.
notify
({
}
icon
:
"iconfont icon-chenggong"
,
}
color
:
"accent"
,
},
timeout
:
2000
,
deleteUploadFile
(
i
)
{
message
:
"保存成功!"
,
// 删除上传文件
position
:
"top"
,
this
.
saveMsg
.
splice
(
i
,
1
);
});
this
.
transMsg
.
ReceiptFileList
.
splice
(
i
,
1
);
//调用父页面成功方法
},
this
.
$emit
(
"success"
);
uploadFileBtn
(
file
)
{
this
.
$emit
(
"close"
);
//上传
}
if
(
file
.
file
.
size
>
1024
*
1024
*
5
)
{
});
this
.
$message
.
warning
(
"文件大小不能超过5M"
);
return
;
}
// 1 文档 2 数据 3 图片
let
typeArr
=
[
{
stringArr
:
"GIF|JPG|JPEG|PNG|BMP|WEBP"
,
type
:
3
,
},
{
stringArr
:
"DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF|TXT"
,
type
:
1
,
},
{
stringArr
:
"ZIP|RAR|7Z|TAR"
,
type
:
4
,
},
{
stringArr
:
"MP4|3GP|AVI|MOV|WMV|RMVB|MKV|M4V|FLV"
,
type
:
5
,
},
];
let
ft
=
file
.
file
.
name
.
substring
(
file
.
file
.
name
.
lastIndexOf
(
"."
)
+
1
,
file
.
file
.
name
.
length
)
.
toUpperCase
();
let
fileTypeNumber
=
2
;
typeArr
.
forEach
((
x
)
=>
{
if
(
x
.
stringArr
.
indexOf
(
ft
)
!=
"-1"
)
{
fileTypeNumber
=
x
.
type
;
}
}
});
},
let
newArr
=
[];
//获取校区列表
newArr
.
push
(
file
.
file
);
getSchool
()
{
this
.
$message
.
info
(
this
.
$t
(
"tips.shangchuanzhong"
));
getSchoolDropdown
({}).
then
((
res
)
=>
{
UploadSelfFile
(
if
(
res
.
Code
==
1
)
{
"Temporary"
,
var
tempArray
=
res
.
Data
;
file
.
file
,
if
(
!
tempArray
)
{
(
x
)
=>
{
tempArray
=
[];
if
(
x
.
Code
==
1
)
{
}
this
.
saveMsg
.
push
({
this
.
schoolList
=
tempArray
;
Content
:
x
.
FileUrl
,
}
ID
:
0
,
});
Type
:
fileTypeNumber
,
},
Url
:
x
.
FileUrl
,
//获取班级类型下拉
GetClassTypeList
()
{
GetClassTypeList
({}).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
var
tempArray
=
res
.
Data
;
if
(
!
tempArray
)
{
tempArray
=
[];
}
tempArray
.
unshift
({
CTypeId
:
0
,
CTypeName
:
"不限"
,
});
});
this
.
transMsg
.
ReceiptFileList
.
push
(
x
.
FileUrl
);
this
.
classTypeList
=
tempArray
;
this
.
$message
.
success
(
this
.
$t
(
"tips.scchenggong"
));
}
}
},
});
1
},
);
//筛选课程
filterFn
(
val
,
update
)
{
update
(()
=>
{
if
(
val
===
""
)
{
this
.
ClassList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
AllClassList
));
}
else
{
this
.
ClassList
=
this
.
AllClassList
.
filter
(
(
v
)
=>
v
.
CourseName
.
indexOf
(
val
)
>
-
1
);
}
});
},
//获取课程
CourseList
()
{
queryCourseDropdownList
({}).
then
((
res
)
=>
{
if
(
res
.
Code
==
1
)
{
this
.
ClassList
=
res
.
Data
;
this
.
AllClassList
=
res
.
Data
;
this
.
ClassList
.
unshift
({
CourseId
:
0
,
CourseName
:
"不限"
,
});
}
});
},
//翻页
changePage
(
val
)
{
this
.
classMsg
.
pageIndex
=
val
;
this
.
getRenewClassList
();
},
getOutTime
()
{
this
.
$refs
.
qDateProxy1
.
hide
();
this
.
transMsg
.
EffectiveDate
=
""
;
},
checkEffectDate
()
{
if
(
this
.
transMsg
.
ChangeType
==
1
)
{
if
(
this
.
transMsg
.
OutTime
==
""
)
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
message
:
`请先选择转出日期`
,
});
this
.
transMsg
.
EffectiveDate
=
""
;
}
}
this
.
$refs
.
qDateProxy2
.
hide
();
},
showUpLoadFile
(
i
)
{
// 预览上传文件
if
(
i
.
Type
==
3
)
{
this
.
picObj
.
push
(
i
.
Url
);
// this.imgList.push(i.Url)
this
.
picIsShow
=
true
;
}
else
{
if
(
i
.
Content
.
substring
(
i
.
Content
.
lastIndexOf
(
"."
)
+
1
,
i
.
Content
.
length
).
toUpperCase
()
==
"PDF"
||
i
.
Content
.
substring
(
i
.
Content
.
lastIndexOf
(
"."
)
+
1
,
i
.
Content
.
length
).
toUpperCase
()
==
"TXT"
)
{
this
.
previewPDF
(
i
.
Url
);
}
else
{
window
.
open
(
"https://view.officeapps.live.com/op/view.aspx?src="
+
i
.
Url
);
}
}
},
deleteUploadFile
(
i
)
{
// 删除上传文件
this
.
saveMsg
.
splice
(
i
,
1
);
this
.
transMsg
.
ReceiptFileList
.
splice
(
i
,
1
);
},
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
5
)
{
this
.
$message
.
warning
(
"文件大小不能超过5M"
);
return
;
}
// 1 文档 2 数据 3 图片
let
typeArr
=
[{
stringArr
:
"GIF|JPG|JPEG|PNG|BMP|WEBP"
,
type
:
3
,
},
{
stringArr
:
"DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF|TXT"
,
type
:
1
,
},
{
stringArr
:
"ZIP|RAR|7Z|TAR"
,
type
:
4
,
},
{
stringArr
:
"MP4|3GP|AVI|MOV|WMV|RMVB|MKV|M4V|FLV"
,
type
:
5
,
},
];
let
ft
=
file
.
file
.
name
.
substring
(
file
.
file
.
name
.
lastIndexOf
(
"."
)
+
1
,
file
.
file
.
name
.
length
)
.
toUpperCase
();
let
fileTypeNumber
=
2
;
typeArr
.
forEach
((
x
)
=>
{
if
(
x
.
stringArr
.
indexOf
(
ft
)
!=
"-1"
)
{
fileTypeNumber
=
x
.
type
;
}
});
let
newArr
=
[];
newArr
.
push
(
file
.
file
);
this
.
$message
.
info
(
this
.
$t
(
"tips.shangchuanzhong"
));
UploadSelfFile
(
"Temporary"
,
file
.
file
,
(
x
)
=>
{
if
(
x
.
Code
==
1
)
{
this
.
saveMsg
.
push
({
Content
:
x
.
FileUrl
,
ID
:
0
,
Type
:
fileTypeNumber
,
Url
:
x
.
FileUrl
,
});
this
.
transMsg
.
ReceiptFileList
.
push
(
x
.
FileUrl
);
this
.
$message
.
success
(
this
.
$t
(
"tips.scchenggong"
));
}
},
1
);
},
},
},
}
,
}
;
};
</
script
>
</
script
>
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