Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
A
admin-base
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
new-sing
admin-base
Commits
1a8add53
Commit
1a8add53
authored
Oct 12, 2018
by
wangwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
后台看课情况
parent
fa6496f6
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
47 additions
and
13 deletions
+47
-13
index.js
config/index.js
+2
-2
index.html
dev/index.html
+1
-1
5.0784f1f07b4fa27fcd36.js
dev/static/js/5.0784f1f07b4fa27fcd36.js
+1
-0
5.3620b1c764c9330a538f.js
dev/static/js/5.3620b1c764c9330a538f.js
+0
-1
app.9cd47435d66e7833e4fa.js
dev/static/js/app.9cd47435d66e7833e4fa.js
+1
-0
app.a1c941364d90ca11e4f7.js
dev/static/js/app.a1c941364d90ca11e4f7.js
+0
-1
manifest.dafc75b6dd2eb1958bd0.js
dev/static/js/manifest.dafc75b6dd2eb1958bd0.js
+1
-0
index.html
dist/index.html
+1
-1
app.c0ccfe4f9ac370bfc34d293c1aa36530.css
dist/static/css/app.c0ccfe4f9ac370bfc34d293c1aa36530.css
+1
-1
17.5b6dad580b9206038816.js
dist/static/js/17.5b6dad580b9206038816.js
+1
-1
6.5d7e6cbb44bc57b09d10.js
dist/static/js/6.5d7e6cbb44bc57b09d10.js
+1
-0
6.fc48035e877aa3a9412a.js
dist/static/js/6.fc48035e877aa3a9412a.js
+0
-1
app.9f92cfe99a9e477c7436.js
dist/static/js/app.9f92cfe99a9e477c7436.js
+1
-0
app.db77a8c2894f9648f27b.js
dist/static/js/app.db77a8c2894f9648f27b.js
+0
-1
manifest.0703230a961ac91d905d.js
dist/static/js/manifest.0703230a961ac91d905d.js
+1
-1
userList.vue
src/components/class/userList.vue
+35
-2
No files found.
config/index.js
View file @
1a8add53
...
...
@@ -12,8 +12,8 @@ module.exports = {
//本地代理设置
proxyTable
:
{
'/api'
:
{
//
target: 'http://local.base-api.sing.com', // 接口的域名
target
:
'https://wechat-test.changchangenglish.com/'
,
target
:
'http://local.base-api.sing.com'
,
// 接口的域名
//
target: 'https://wechat-test.changchangenglish.com/',
changeOrigin
:
true
,
// 如果接口跨域,需要进行这个参数配置
}
},
...
...
dev/index.html
View file @
1a8add53
<!DOCTYPE html>
<html><head><meta
charset=
utf-8
><meta
name=
viewport
content=
"width=device-width,initial-scale=1"
><meta
name=
referrer
content=
never
><link
rel=
stylesheet
href=
https://at.alicdn.com/t/font_746649_7dsnjecwkpg.css
><title>
唱唱启蒙-后台
</title><link
href=
/static/css/app.47522eb6a68d6d41ad23b5eb163afbdd.css
rel=
stylesheet
></head><body><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.da
764d5242593fab54f2.js
></script><script
type=
text/javascript
src=
/static/js/vendor.4a52c6513a395e5eac06.js
></script><script
type=
text/javascript
src=
/static/js/app.a1c941364d90ca11e4f7
.js
></script></body><script>
let
el
=
document
.
getElementsByTagName
(
"script"
);
<!DOCTYPE html>
<html><head><meta
charset=
utf-8
><meta
name=
viewport
content=
"width=device-width,initial-scale=1"
><meta
name=
referrer
content=
never
><link
rel=
stylesheet
href=
https://at.alicdn.com/t/font_746649_7dsnjecwkpg.css
><title>
唱唱启蒙-后台
</title><link
href=
/static/css/app.47522eb6a68d6d41ad23b5eb163afbdd.css
rel=
stylesheet
></head><body><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.da
fc75b6dd2eb1958bd0.js
></script><script
type=
text/javascript
src=
/static/js/vendor.4a52c6513a395e5eac06.js
></script><script
type=
text/javascript
src=
/static/js/app.9cd47435d66e7833e4fa
.js
></script></body><script>
let
el
=
document
.
getElementsByTagName
(
"script"
);
el
.
onerror
=
function
(
a
,
b
,
c
){
console
.
log
(
'error:'
,
a
,
b
,
c
);
};
...
...
dev/static/js/5.0784f1f07b4fa27fcd36.js
0 → 100644
View file @
1a8add53
webpackJsonp
([
5
],{
"1/HN"
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
"
\n
.demo-table-expand {
\n
font-size: 0;
\n
}
\n
.demo-table-expand label {
\n
width: 90px;
\n
color: #99a9bf;
\n
}
\n
.demo-table-expand .el-form-item {
\n
margin-right: 0;
\n
margin-bottom: 0;
\n
width: 50%;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/components/class/index.vue"
],
names
:[],
mappings
:
";AACA;EACE,aAAa;CACd;AACD;EACE,YAAY;EACZ,eAAe;CAChB;AACD;EACE,gBAAgB;EAChB,iBAAiB;EACjB,WAAW;CACZ"
,
file
:
"index.vue"
,
sourcesContent
:[
"
\n
.demo-table-expand {
\n
font-size: 0;
\n
}
\n
.demo-table-expand label {
\n
width: 90px;
\n
color: #99a9bf;
\n
}
\n
.demo-table-expand .el-form-item {
\n
margin-right: 0;
\n
margin-bottom: 0;
\n
width: 50%;
\n
}
\n
"
],
sourceRoot
:
""
}])},
BenM
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
"
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
"
,
""
,{
version
:
3
,
sources
:[],
names
:[],
mappings
:
""
,
file
:
"dialog.vue"
,
sourceRoot
:
""
}])},
JP4Q
:
function
(
t
,
e
,
n
){
var
i
=
n
(
"BenM"
);
"string"
==
typeof
i
&&
(
i
=
[[
t
.
i
,
i
,
""
]]),
i
.
locals
&&
(
t
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"486a2a46"
,
i
,
!
1
,{})},
NzM9
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
"
\n
.class[data-v-426dc2ae] {
\n
padding: 20px 0;
\n
}
\n
.intro .el-form-item[data-v-426dc2ae] {
\n
margin-bottom: 0;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/components/class/index.vue"
],
names
:[],
mappings
:
";AACA;EACE,gBAAgB;CACjB;AACD;EACE,iBAAiB;CAClB"
,
file
:
"index.vue"
,
sourcesContent
:[
"
\n
.class[data-v-426dc2ae] {
\n
padding: 20px 0;
\n
}
\n
.intro .el-form-item[data-v-426dc2ae] {
\n
margin-bottom: 0;
\n
}
\n
"
],
sourceRoot
:
""
}])},
OX9A
:
function
(
t
,
e
,
n
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
i
=
n
(
"CCn6"
),
s
=
{
props
:[
"dialogObj"
],
data
:
function
(){
return
{
form
:{
teacher_id
:
""
,
max_join_num
:
""
},
teacherList
:[],
exitTeacherList
:[],
goodsList
:[],
periods
:{}}},
methods
:{
findDifferentArray
:
function
(
t
,
e
){
var
n
=
[];
return
t
.
forEach
(
function
(
t
){
-
1
===
e
.
findIndex
(
function
(
e
){
return
e
.
teacher_id
==
t
.
id
})
&&
n
.
push
(
t
)}),
n
},
getTeacher
:
function
(){
var
t
=
this
;
this
.
exitTeacherList
=
this
.
dialogObj
.
teacherList
.
length
>
0
?
this
.
dialogObj
.
teacherList
:[],
Object
(
i
.
_29
)().
then
(
function
(
e
){
if
(
t
.
exitTeacherList
.
length
>
0
){
if
(
t
.
teacherList
=
t
.
findDifferentArray
(
e
.
list
,
t
.
exitTeacherList
),
t
.
form
.
teacher_id
&&-
1
===
t
.
teacherList
.
findIndex
(
function
(
e
){
return
e
.
id
==
t
.
form
.
teacher_id
})){
var
n
=
e
.
list
.
find
(
function
(
e
){
return
e
.
id
==
t
.
form
.
teacher_id
});
t
.
teacherList
.
push
(
n
)}}
else
t
.
teacherList
=
e
.
list
})},
getTeacherByPeriods
:
function
(){
var
t
=
this
;
Object
(
i
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
e
){
t
.
exitTeacherList
=
e
,
Object
(
i
.
_29
)().
then
(
function
(
e
){
t
.
exitTeacherList
.
length
>
0
?
t
.
teacherList
=
t
.
findDifferentArray
(
e
.
list
,
t
.
exitTeacherList
):
t
.
teacherList
=
e
.
list
})})},
initPage
:
function
(){
var
t
=
this
;
switch
(
this
.
periods
=
this
.
dialogObj
.
periods
,
this
.
dialogObj
.
type
){
case
0
:
this
.
dialogObj
.
periodsId
||
this
.
getPeriodList
(),
this
.
form
=
{
teacher_id
:
""
,
max_join_num
:
""
},
this
.
getTeacher
();
break
;
case
1
:
Object
(
i
.
_4
)(
this
.
dialogObj
.
id
).
then
(
function
(
e
){
t
.
form
=
{
teacher_id
:
parseInt
(
e
.
teacher_id
),
max_join_num
:
e
.
max_join_num
},
t
.
getTeacher
()})}},
getPeriodList
:
function
(){
var
t
=
this
;
Object
(
i
.
_13
)().
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
children
=
[]}),
t
.
goodsList
=
e
.
list
,
t
.
periods
||
Object
(
i
.
_19
)({
goods_id
:
t
.
goodsList
[
0
].
id
}).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
t
.
goodsList
[
0
].
children
=
e
.
list
,
t
.
periods
=
e
.
list
[
0
]})})},
onSave
:
function
(){
var
t
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
var
e
=
this
.
dialogObj
.
periodsId
?
this
.
dialogObj
.
periodsId
:
this
.
periods
.
id
;
Object
(
i
.
f
)(
e
,
this
.
form
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
t
.
$emit
(
"reflash"
,
t
.
periods
),
t
.
dialogObj
.
show
=!
1
});
break
;
case
1
:
Object
(
i
.
M
)(
this
.
dialogObj
.
id
,
this
.
form
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
t
.
$emit
(
"reflash"
,
t
.
periods
),
t
.
dialogObj
.
show
=!
1
})}},
handleItemChange
:
function
(
t
){
var
e
=
this
;
Object
(
i
.
_19
)({
goods_id
:
t
[
0
]}).
then
(
function
(
n
){
n
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
e
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]}).
children
=
n
.
list
})},
changePeriods
:
function
(
t
){
if
(
t
.
length
>
1
){
var
e
=
this
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]});
this
.
periods
=
e
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
[
1
]}),
this
.
getTeacherByPeriods
()}}},
watch
:{
dialogObj
:
function
(
t
){
this
.
initPage
()}}},
o
=
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
n
=
t
.
_self
.
_c
||
e
;
return
n
(
"el-dialog"
,{
attrs
:{
title
:
t
.
dialogObj
.
title
,
visible
:
t
.
dialogObj
.
show
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
dialogObj
,
"show"
,
e
)}}},[
n
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
form
,
"label-width"
:
"120px"
}},[
this
.
dialogObj
.
periodsId
?
t
.
_e
():
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
n
(
"el-cascader"
,{
attrs
:{
options
:
t
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
t
.
handleItemChange
,
change
:
t
.
changePeriods
}})],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
n
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
t
.
form
.
teacher_id
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"teacher_id"
,
e
)},
expression
:
"form.teacher_id"
}},
t
.
_l
(
t
.
teacherList
,
function
(
t
,
e
){
return
n
(
"el-option"
,{
key
:
e
,
attrs
:{
label
:
t
.
name
,
value
:
t
.
id
}})}))],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"最大学员"
}},[
n
(
"el-input-number"
,{
model
:{
value
:
t
.
form
.
max_join_num
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"max_join_num"
,
e
)},
expression
:
"form.max_join_num"
}})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogObj
.
show
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
onSave
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
)};
o
.
_withStripped
=!
0
;
var
a
=
{
render
:
o
,
staticRenderFns
:[]},
r
=
a
;
var
l
=!
1
;
var
c
=
n
(
"VU/8"
)(
s
,
r
,
!
1
,
function
(
t
){
l
||
n
(
"JP4Q"
)},
"data-v-e25797c8"
,
null
);
c
.
options
.
__file
=
"src
\\
components
\\
class
\\
dialog.vue"
;
var
d
=
c
.
exports
,
u
=
n
(
"kmJW"
),
_
=
n
(
"+TkF"
),
f
=
{
name
:
"userList"
,
props
:[
"userObj"
],
data
:
function
(){
return
{
userTable
:[],
addId
:
""
,
lookDetail
:{
show
:
!
1
,
loading
:
!
1
,
list
:[]},
addShow
:
!
1
,
userList
:[],
nowPage
:
1
,
limit
:
5
,
total
:
0
,
searchFrom
:{
userId
:
""
,
nickName
:
""
,
mobile
:
""
},
multipleSelection
:[]}},
components
:{
page
:
u
.
a
},
filters
:{
isOrNot
:
function
(
t
){
return
_
.
h
[
t
]},
percent
:
function
(
t
){
return
(
100
*
t
).
toFixed
(
2
)
+
"%"
}},
methods
:{
userLook
:
function
(
t
){
var
e
=
this
;
this
.
lookDetail
.
show
=!
0
,
this
.
lookDetail
.
loading
=!
0
,
Object
(
i
.
_47
)(
t
.
periods_id
,
t
.
id
).
then
(
function
(
t
){
e
.
lookDetail
.
list
=
t
.
list
,
e
.
lookDetail
.
loading
=!
1
})},
initPage
:
function
(){
var
t
=
this
;
Object
(
i
.
_7
)(
this
.
userObj
.
classId
).
then
(
function
(
e
){
t
.
userTable
=
e
.
list
})},
changeUser
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将修改成员看课权限?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
i
.
p
)(
t
.
id
,{
is_view_course
:
0
===
t
.
is_view_course
?
1
:
0
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
initPage
()})})},
onDel
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该成员?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
i
.
x
)(
t
.
id
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
e
.
initPage
()})})},
onAdd
:
function
(){
var
t
=
this
;
0
!==
this
.
multipleSelection
.
length
?
1
===
this
.
multipleSelection
.
length
?(
this
.
addId
=
this
.
multipleSelection
[
0
].
user_id
,
this
.
addId
&&
Object
(
i
.
g
)(
this
.
userObj
.
classId
,
this
.
addId
,{
is_buy
:
0
}).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
t
.
addShow
=!
1
,
t
.
initPage
()})):
this
.
$message
({
type
:
"error"
,
message
:
"只能选择一个用户!"
}):
this
.
$message
({
type
:
"error"
,
message
:
"请选择用户!"
})},
onAddUser
:
function
(){
this
.
addShow
=!
0
,
this
.
getUser
()},
getUser
:
function
(){
var
t
=
this
,
e
=
{
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
searchFrom
.
userId
&&
(
e
.
user_id
=
this
.
searchFrom
.
userId
),
this
.
searchFrom
.
nickName
&&
(
e
.
nickname
=
this
.
searchFrom
.
nickName
),
this
.
searchFrom
.
mobile
&&
(
e
.
mobile
=
this
.
searchFrom
.
mobile
),
Object
(
i
.
_31
)(
e
).
then
(
function
(
e
){
t
.
userList
=
e
.
list
,
t
.
total
=
e
.
total
})},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getUser
()},
handleSelectionChange
:
function
(
t
){
this
.
multipleSelection
=
t
},
editComment
:
function
(
t
,
e
){
var
n
=
this
;
this
.
$prompt
(
""
,
"编辑备注"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
inputValue
:
e
}).
then
(
function
(
e
){
var
s
=
e
.
value
;
Object
(
i
.
k
)(
t
,{
desc
:
s
}).
then
(
function
(
t
){
n
.
$message
({
type
:
"success"
,
message
:
"编辑备注成功"
}),
n
.
initPage
()})})}},
watch
:{
userObj
:
function
(){
this
.
initPage
()}}},
h
=
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
n
=
t
.
_self
.
_c
||
e
;
return
n
(
"el-dialog"
,{
attrs
:{
title
:
t
.
userObj
.
title
,
visible
:
t
.
userObj
.
show
,
modal
:
!
1
,
fullscreen
:
!
0
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
userObj
,
"show"
,
e
)}}},[
n
(
"div"
,[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
t
.
onAddUser
}},[
t
.
_v
(
"+添加用户"
)])],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
userTable
}},[
n
(
"el-table-column"
,{
attrs
:{
label
:
"用户"
,
className
:
"f-c"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
e
.
row
.
avatar
}}),
t
.
_v
(
" "
+
t
.
_s
(
e
.
row
.
nickname
)
+
"(ID:"
+
t
.
_s
(
e
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"是否购买"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
0
===
e
.
row
.
is_buy
?
"否"
:
"是"
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"看课权限"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"isOrNot"
)(
e
.
row
.
is_view_course
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"desc"
,
label
:
"备注"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"最后登录时间"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
last_login_at
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
watch_course_rate
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"课包查看次数"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
watch_course_num
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"学习时长(分)"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
Math
.
round
(
e
.
row
.
watch_course_time
/
60
*
100
)
/
100
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
work_rate
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
clock_rate
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"续费情况"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"isOrNot"
)(
e
.
row
.
is_continue_buy
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-table-column"
,{
attrs
:{
label
:
"操作"
,
width
:
"300"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
t
.
editComment
(
e
.
row
.
id
,
e
.
row
.
desc
)}}},[
t
.
_v
(
"编辑备注"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
t
.
changeUser
(
e
.
row
)}}},[
t
.
_v
(
"看课权限"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
t
.
userLook
(
e
.
row
)}}},[
t
.
_v
(
"看课情况"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
&&!
t
.
$store
.
state
.
readonly
?
n
(
"el-button"
,{
attrs
:{
type
:
"danger"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
t
.
onDel
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]):
t
.
_e
()]}}])})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
t
.
addShow
},
on
:{
"update:visible"
:
function
(
e
){
t
.
addShow
=
e
}}},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
}},[
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"ID"
}},[
n
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
userId
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"userId"
,
e
)},
expression
:
"searchFrom.userId"
}})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"昵称"
}},[
n
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
nickName
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"nickName"
,
e
)},
expression
:
"searchFrom.nickName"
}})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"电话"
}},[
n
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
mobile
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"mobile"
,
e
)},
expression
:
"searchFrom.mobile"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
,
offset
:
16
}},[
n
(
"el-form-item"
,[
n
(
"el-button"
,{
staticStyle
:{
float
:
"right"
},
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
t
.
getUser
}},[
t
.
_v
(
"搜索"
)])],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
userList
},
on
:{
"selection-change"
:
t
.
handleSelectionChange
}},[
n
(
"el-table-column"
,{
attrs
:{
type
:
"selection"
,
width
:
"55"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
className
:
"f-c"
,
label
:
"用户"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
e
.
row
.
avatar
}}),
t
.
_v
(
t
.
_s
(
e
.
row
.
nickname
)
+
"(ID:"
+
t
.
_s
(
e
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"mobile"
,
label
:
"手机号"
}})],
1
),
t
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
}}),
t
.
_v
(
" "
),
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
addShow
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
onAdd
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
t
.
lookDetail
.
show
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
lookDetail
,
"show"
,
e
)}}},[
n
(
"el-table"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
t
.
lookDetail
.
loading
,
expression
:
"lookDetail.loading"
}],
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
lookDetail
.
list
}},[
n
(
"el-table-column"
,{
attrs
:{
prop
:
"start_at"
,
label
:
"日期"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"爸妈看一看"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
watch_list
&&
e
.
row
.
watch_list
.
length
>
0
&&
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
n
(
"span"
,[
t
.
_v
(
"
\n
学习时长:"
+
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
}).
stay_time
)
+
"
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
t
.
_e
():
n
(
"span"
,[
t
.
_v
(
"
\n
暂未上课
\n
"
)])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"宝贝玩一玩"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
watch_list
&&
e
.
row
.
watch_list
.
length
>
0
&&
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
n
(
"span"
,[
t
.
_v
(
"
\n
学习时长:"
+
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
2
===
t
.
page_id
}).
stay_time
)
+
"
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
t
.
_e
():
n
(
"span"
,[
t
.
_v
(
"
\n
暂未上课
\n
"
)])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"爸妈秀宝贝"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
watch_list
&&
e
.
row
.
watch_list
.
length
>
0
&&
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
n
(
"span"
,[
t
.
_v
(
"
\n
学习记录:"
),
n
(
"div"
,{
domProps
:{
innerHTML
:
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
0
===
t
.
page_id
}).
learn_report
)}}),
t
.
_v
(
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
3
===
t
.
page_id
}).
stay_time
)
+
"
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
t
.
_e
():
n
(
"span"
,[
t
.
_v
(
"
\n
暂未上课
\n
"
)])]}}])})],
1
)],
1
)],
1
)};
h
.
_withStripped
=!
0
;
var
m
=
{
render
:
h
,
staticRenderFns
:[]},
p
=
m
;
var
b
=!
1
;
var
v
=
n
(
"VU/8"
)(
f
,
p
,
!
1
,
function
(
t
){
b
||
n
(
"nZHh"
)},
null
,
null
);
v
.
options
.
__file
=
"src
\\
components
\\
class
\\
userList.vue"
;
var
g
=
{
data
:
function
(){
return
{
nowPage
:
1
,
total
:
0
,
limit
:
10
,
periodsId
:
null
,
goodsList
:[],
teacher_id
:
""
,
classList
:[],
title
:
""
,
countObj
:
""
,
teacherList
:[],
userObj
:{
classId
:
""
,
title
:
""
,
show
:
!
1
},
dialogObj
:{
show
:
!
1
,
title
:
"添加班级"
,
periodsId
:
""
,
type
:
0
,
id
:
0
},
selectedGoods
:[]}},
components
:{
UserList
:
v
.
exports
,
classDialog
:
d
,
page
:
u
.
a
},
filters
:{
classTypeFilter
:
function
(
t
){
var
e
=
parseInt
(
t
);
return
1
===
e
?
"带班班级"
:
2
===
e
?
"观摩班级"
:
""
},
percent
:
function
(
t
){
return
(
100
*
t
).
toFixed
(
2
)
+
"%"
}},
mounted
:
function
(){
this
.
initPage
()},
methods
:{
changeRow
:
function
(
t
,
e
){
e
.
indexOf
(
t
)
>-
1
&&
Object
(
i
.
_6
)(
t
.
periods_id
,
t
.
id
).
then
(
function
(
e
){
t
.
arrive_course_rate
=
e
.
arrive_course_rate
,
t
.
watch_course_rate
=
e
.
watch_course_rate
,
t
.
over_course_rate
=
e
.
over_course_rate
,
t
.
work_rate
=
e
.
work_rate
,
t
.
over_work_rate
=
e
.
over_work_rate
,
t
.
clock_rate
=
e
.
clock_rate
,
t
.
over_clock_rate
=
e
.
over_clock_rate
,
t
.
transform_rate
=
e
.
transform_rate
})},
initQuery
:
function
(){
var
t
=
this
,
e
=
this
.
$route
.
query
;
e
&&
e
.
goods_id
&&
e
.
periods_id
&&
(
this
.
selectedGoods
=
[
parseInt
(
e
.
goods_id
),
parseInt
(
e
.
periods_id
)],
Object
(
i
.
_19
)({
goods_id
:
this
.
selectedGoods
[
0
]}).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
t
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
0
]}).
children
=
e
.
list
;
var
n
=
t
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
0
]});
t
.
periods
=
n
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
1
]}),
t
.
teacher_id
=
""
,
t
.
getClassList
()}))},
initPage
:
function
(){
var
t
=
this
;
Object
(
i
.
_13
)().
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
children
=
[]}),
t
.
goodsList
=
e
.
list
,
t
.
initQuery
()})},
showUser
:
function
(
t
){
this
.
userObj
=
{
classId
:
t
.
id
,
show
:
!
0
,
title
:
t
.
teacher_name
+
"班级用户列表"
}},
getTeacher
:
function
(){
var
t
=
this
;
this
.
periods
&&
Object
(
i
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
e
){
t
.
teacherList
=
e
})},
changePeriods
:
function
(
t
){
if
(
t
.
length
>
1
){
var
e
=
this
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]});
this
.
periods
=
e
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
[
1
]}),
this
.
teacher_id
=
""
,
this
.
getTeacher
()}},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getClassList
()},
onReflash
:
function
(
t
){
this
.
periods
=
t
,
this
.
selectedGoods
=
[
t
.
goods_id
,
t
.
id
],
this
.
getClassList
()},
getClassList
:
function
(){
var
t
=
this
;
if
(
this
.
periods
){
this
.
getTeacher
();
var
e
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
teacher_id
&&
(
e
.
teacher_id
=
this
.
teacher_id
),
Object
(
i
.
_5
)(
this
.
periods
.
id
,
e
).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
arrive_course_rate
=
0
,
t
.
watch_course_rate
=
0
,
t
.
over_course_rate
=
0
,
t
.
work_rate
=
0
,
t
.
over_work_rate
=
0
,
t
.
clock_rate
=
0
,
t
.
over_clock_rate
=
0
,
t
.
transform_rate
=
0
}),
t
.
title
=
e
.
periods
,
t
.
countObj
=
e
.
count
?
e
.
count
:
""
,
t
.
classList
=
e
.
list
,
t
.
total
=
e
.
total
})}},
handleItemChange
:
function
(
t
){
var
e
=
this
;
Object
(
i
.
_19
)({
goods_id
:
t
[
0
]}).
then
(
function
(
n
){
n
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
e
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]}).
children
=
n
.
list
})},
delClass
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该班级?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
i
.
w
)(
t
.
id
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
e
.
getClassList
()})})},
onAdd
:
function
(){
console
.
log
(
"onAdd"
,
this
.
periods
),
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"添加班级"
,
type
:
0
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)},
editClass
:
function
(
t
){
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"编辑班级"
,
type
:
1
,
id
:
t
.
id
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)}}},
w
=
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
n
=
t
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
staticClass
:
"class"
},[
n
(
"div"
,{
staticClass
:
"form-block"
},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
n
(
"el-cascader"
,{
attrs
:{
options
:
t
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
t
.
handleItemChange
,
change
:
t
.
changePeriods
},
model
:{
value
:
t
.
selectedGoods
,
callback
:
function
(
e
){
t
.
selectedGoods
=
e
},
expression
:
"selectedGoods"
}})],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
n
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
,
clearable
:
""
},
model
:{
value
:
t
.
teacher_id
,
callback
:
function
(
e
){
t
.
teacher_id
=
e
},
expression
:
"teacher_id"
}},
t
.
_l
(
t
.
teacherList
,
function
(
t
,
e
){
return
n
(
"el-option"
,{
key
:
e
,
attrs
:{
label
:
t
.
teacher_name
,
value
:
t
.
teacher_id
}})}))],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
""
}},[
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
getClassList
}},[
t
.
_v
(
"
\n
搜索
\n
"
)])],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
t
.
onAdd
}},[
t
.
_v
(
"+添加班级"
)])],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
t
.
classList
&&
t
.
classList
.
length
>
0
?
n
(
"div"
,{
staticClass
:
"intro"
},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"100px"
}},[
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数名称"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
title
))])],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"可看课包数"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
watch_num
))])],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"已看课包数"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
has_watch_num
))])],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"开始时间"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
start_at
))])],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"老师数量"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_teacher_num
))])],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"预计学员总数"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_max_join_num
))])],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"学员总数"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_join_num
))])],
1
),
t
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"结束时间"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
over_at
))])],
1
)],
1
)],
1
)],
1
):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
classList
&&
0
!==
t
.
classList
.
length
?
t
.
_e
():
n
(
"div"
,[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"300px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"暂无期数信息,请先选择期数"
}})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"div"
,[
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
classList
},
on
:{
"expand-change"
:
t
.
changeRow
}},[
n
(
"el-table-column"
,{
attrs
:{
type
:
"expand"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:[
e
.
row
]}},[
n
(
"el-table-column"
,{
attrs
:{
label
:
"到课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
arrive_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
watch_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"完课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
work_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"全勤作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_work_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
clock_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"全勤打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_clock_rate
)))])]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"转化率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
transform_rate
)))])]}}])})],
1
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"teacher_name"
,
label
:
"班主任"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"班级类型"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"classTypeFilter"
)(
e
.
row
.
type
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"max_join_num"
,
label
:
"最大人数"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"join_num"
,
label
:
"现有人数"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
width
:
"250"
,
label
:
"操作"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"primary"
},
on
:{
click
:
function
(
n
){
t
.
showUser
(
e
.
row
)}}},[
t
.
_v
(
"班级成员"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"warning"
},
on
:{
click
:
function
(
n
){
t
.
editClass
(
e
.
row
)}}},[
t
.
_v
(
"编辑"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
&&!
t
.
$store
.
state
.
readonly
?
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"danger"
},
on
:{
click
:
function
(
n
){
t
.
delClass
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]):
t
.
_e
()]}}])})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
nowPage
:
t
.
nowPage
,
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
}}),
t
.
_v
(
" "
),
n
(
"class-dialog"
,{
attrs
:{
dialogObj
:
t
.
dialogObj
},
on
:{
reflash
:
t
.
onReflash
}}),
t
.
_v
(
" "
),
n
(
"user-list"
,{
attrs
:{
userObj
:
t
.
userObj
},
on
:{
reflash
:
t
.
getClassList
}})],
1
)};
w
.
_withStripped
=!
0
;
var
y
=
{
render
:
w
,
staticRenderFns
:[]},
k
=
y
;
var
x
=!
1
;
var
j
=
n
(
"VU/8"
)(
g
,
k
,
!
1
,
function
(
t
){
x
||
(
n
(
"rKW7"
),
n
(
"a1h3"
))},
"data-v-426dc2ae"
,
null
);
j
.
options
.
__file
=
"src
\\
components
\\
class
\\
index.vue"
;
e
.
default
=
j
.
exports
},
a1h3
:
function
(
t
,
e
,
n
){
var
i
=
n
(
"1/HN"
);
"string"
==
typeof
i
&&
(
i
=
[[
t
.
i
,
i
,
""
]]),
i
.
locals
&&
(
t
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"171dfdde"
,
i
,
!
1
,{})},
nZHh
:
function
(
t
,
e
,
n
){
var
i
=
n
(
"tnil"
);
"string"
==
typeof
i
&&
(
i
=
[[
t
.
i
,
i
,
""
]]),
i
.
locals
&&
(
t
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"21b1deb2"
,
i
,
!
1
,{})},
rKW7
:
function
(
t
,
e
,
n
){
var
i
=
n
(
"NzM9"
);
"string"
==
typeof
i
&&
(
i
=
[[
t
.
i
,
i
,
""
]]),
i
.
locals
&&
(
t
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"94e58b82"
,
i
,
!
1
,{})},
tnil
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
"
\n
.f-c > div{
\n
display: -webkit-box;
\n
display: -ms-flexbox;
\n
display: flex;
\n
-webkit-box-orient: horizontal;
\n
-webkit-box-direction: normal;
\n
-ms-flex-flow: row nowrap;
\n
flex-flow: row nowrap;
\n
-webkit-box-pack: start;
\n
-ms-flex-pack: start;
\n
justify-content: flex-start;
\n
-webkit-box-align: center;
\n
-ms-flex-align: center;
\n
align-items: center;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/components/class/userList.vue"
],
names
:[],
mappings
:
";AACA;EACE,qBAAqB;EACrB,qBAAqB;EACrB,cAAc;EACd,+BAA+B;EAC/B,8BAA8B;MAC1B,0BAA0B;UACtB,sBAAsB;EAC9B,wBAAwB;MACpB,qBAAqB;UACjB,4BAA4B;EACpC,0BAA0B;MACtB,uBAAuB;UACnB,oBAAoB;CAC7B"
,
file
:
"userList.vue"
,
sourcesContent
:[
"
\n
.f-c > div{
\n
display: -webkit-box;
\n
display: -ms-flexbox;
\n
display: flex;
\n
-webkit-box-orient: horizontal;
\n
-webkit-box-direction: normal;
\n
-ms-flex-flow: row nowrap;
\n
flex-flow: row nowrap;
\n
-webkit-box-pack: start;
\n
-ms-flex-pack: start;
\n
justify-content: flex-start;
\n
-webkit-box-align: center;
\n
-ms-flex-align: center;
\n
align-items: center;
\n
}
\n
"
],
sourceRoot
:
""
}])}});
\ No newline at end of file
dev/static/js/5.3620b1c764c9330a538f.js
deleted
100644 → 0
View file @
fa6496f6
webpackJsonp
([
5
],{
"1/HN"
:
function
(
e
,
t
,
n
){(
e
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
e
.
i
,
"
\n
.demo-table-expand {
\n
font-size: 0;
\n
}
\n
.demo-table-expand label {
\n
width: 90px;
\n
color: #99a9bf;
\n
}
\n
.demo-table-expand .el-form-item {
\n
margin-right: 0;
\n
margin-bottom: 0;
\n
width: 50%;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/components/class/index.vue"
],
names
:[],
mappings
:
";AACA;EACE,aAAa;CACd;AACD;EACE,YAAY;EACZ,eAAe;CAChB;AACD;EACE,gBAAgB;EAChB,iBAAiB;EACjB,WAAW;CACZ"
,
file
:
"index.vue"
,
sourcesContent
:[
"
\n
.demo-table-expand {
\n
font-size: 0;
\n
}
\n
.demo-table-expand label {
\n
width: 90px;
\n
color: #99a9bf;
\n
}
\n
.demo-table-expand .el-form-item {
\n
margin-right: 0;
\n
margin-bottom: 0;
\n
width: 50%;
\n
}
\n
"
],
sourceRoot
:
""
}])},
BenM
:
function
(
e
,
t
,
n
){(
e
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
e
.
i
,
"
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
"
,
""
,{
version
:
3
,
sources
:[],
names
:[],
mappings
:
""
,
file
:
"dialog.vue"
,
sourceRoot
:
""
}])},
JP4Q
:
function
(
e
,
t
,
n
){
var
i
=
n
(
"BenM"
);
"string"
==
typeof
i
&&
(
i
=
[[
e
.
i
,
i
,
""
]]),
i
.
locals
&&
(
e
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"486a2a46"
,
i
,
!
1
,{})},
NzM9
:
function
(
e
,
t
,
n
){(
e
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
e
.
i
,
"
\n
.class[data-v-426dc2ae] {
\n
padding: 20px 0;
\n
}
\n
.intro .el-form-item[data-v-426dc2ae] {
\n
margin-bottom: 0;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/components/class/index.vue"
],
names
:[],
mappings
:
";AACA;EACE,gBAAgB;CACjB;AACD;EACE,iBAAiB;CAClB"
,
file
:
"index.vue"
,
sourcesContent
:[
"
\n
.class[data-v-426dc2ae] {
\n
padding: 20px 0;
\n
}
\n
.intro .el-form-item[data-v-426dc2ae] {
\n
margin-bottom: 0;
\n
}
\n
"
],
sourceRoot
:
""
}])},
OX9A
:
function
(
e
,
t
,
n
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
i
=
n
(
"CCn6"
),
s
=
{
props
:[
"dialogObj"
],
data
:
function
(){
return
{
form
:{
teacher_id
:
""
,
max_join_num
:
""
},
teacherList
:[],
exitTeacherList
:[],
goodsList
:[],
periods
:{}}},
methods
:{
findDifferentArray
:
function
(
e
,
t
){
var
n
=
[];
return
e
.
forEach
(
function
(
e
){
-
1
===
t
.
findIndex
(
function
(
t
){
return
t
.
teacher_id
==
e
.
id
})
&&
n
.
push
(
e
)}),
n
},
getTeacher
:
function
(){
var
e
=
this
;
this
.
exitTeacherList
=
this
.
dialogObj
.
teacherList
.
length
>
0
?
this
.
dialogObj
.
teacherList
:[],
Object
(
i
.
_29
)().
then
(
function
(
t
){
if
(
e
.
exitTeacherList
.
length
>
0
){
if
(
e
.
teacherList
=
e
.
findDifferentArray
(
t
.
list
,
e
.
exitTeacherList
),
e
.
form
.
teacher_id
&&-
1
===
e
.
teacherList
.
findIndex
(
function
(
t
){
return
t
.
id
==
e
.
form
.
teacher_id
})){
var
n
=
t
.
list
.
find
(
function
(
t
){
return
t
.
id
==
e
.
form
.
teacher_id
});
e
.
teacherList
.
push
(
n
)}}
else
e
.
teacherList
=
t
.
list
})},
getTeacherByPeriods
:
function
(){
var
e
=
this
;
Object
(
i
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
t
){
e
.
exitTeacherList
=
t
,
Object
(
i
.
_29
)().
then
(
function
(
t
){
e
.
exitTeacherList
.
length
>
0
?
e
.
teacherList
=
e
.
findDifferentArray
(
t
.
list
,
e
.
exitTeacherList
):
e
.
teacherList
=
t
.
list
})})},
initPage
:
function
(){
var
e
=
this
;
switch
(
this
.
periods
=
this
.
dialogObj
.
periods
,
this
.
dialogObj
.
type
){
case
0
:
this
.
dialogObj
.
periodsId
||
this
.
getPeriodList
(),
this
.
form
=
{
teacher_id
:
""
,
max_join_num
:
""
},
this
.
getTeacher
();
break
;
case
1
:
Object
(
i
.
_4
)(
this
.
dialogObj
.
id
).
then
(
function
(
t
){
e
.
form
=
{
teacher_id
:
parseInt
(
t
.
teacher_id
),
max_join_num
:
t
.
max_join_num
},
e
.
getTeacher
()})}},
getPeriodList
:
function
(){
var
e
=
this
;
Object
(
i
.
_13
)().
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
e
.
children
=
[]}),
e
.
goodsList
=
t
.
list
,
e
.
periods
||
Object
(
i
.
_19
)({
goods_id
:
e
.
goodsList
[
0
].
id
}).
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
e
.
name
=
e
.
title
}),
e
.
goodsList
[
0
].
children
=
t
.
list
,
e
.
periods
=
t
.
list
[
0
]})})},
onSave
:
function
(){
var
e
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
var
t
=
this
.
dialogObj
.
periodsId
?
this
.
dialogObj
.
periodsId
:
this
.
periods
.
id
;
Object
(
i
.
f
)(
t
,
this
.
form
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
e
.
$emit
(
"reflash"
,
e
.
periods
),
e
.
dialogObj
.
show
=!
1
});
break
;
case
1
:
Object
(
i
.
M
)(
this
.
dialogObj
.
id
,
this
.
form
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
$emit
(
"reflash"
,
e
.
periods
),
e
.
dialogObj
.
show
=!
1
})}},
handleItemChange
:
function
(
e
){
var
t
=
this
;
Object
(
i
.
_19
)({
goods_id
:
e
[
0
]}).
then
(
function
(
n
){
n
.
list
.
forEach
(
function
(
e
){
e
.
name
=
e
.
title
}),
t
.
goodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
[
0
]}).
children
=
n
.
list
})},
changePeriods
:
function
(
e
){
if
(
e
.
length
>
1
){
var
t
=
this
.
goodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
[
0
]});
this
.
periods
=
t
.
children
.
find
(
function
(
t
){
return
t
.
id
===
e
[
1
]}),
this
.
getTeacherByPeriods
()}}},
watch
:{
dialogObj
:
function
(
e
){
this
.
initPage
()}}},
o
=
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"el-dialog"
,{
attrs
:{
title
:
e
.
dialogObj
.
title
,
visible
:
e
.
dialogObj
.
show
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
dialogObj
,
"show"
,
t
)}}},[
n
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
e
.
form
,
"label-width"
:
"120px"
}},[
this
.
dialogObj
.
periodsId
?
e
.
_e
():
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
n
(
"el-cascader"
,{
attrs
:{
options
:
e
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
e
.
handleItemChange
,
change
:
e
.
changePeriods
}})],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
n
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
form
.
teacher_id
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"teacher_id"
,
t
)},
expression
:
"form.teacher_id"
}},
e
.
_l
(
e
.
teacherList
,
function
(
e
,
t
){
return
n
(
"el-option"
,{
key
:
t
,
attrs
:{
label
:
e
.
name
,
value
:
e
.
id
}})}))],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"最大学员"
}},[
n
(
"el-input-number"
,{
model
:{
value
:
e
.
form
.
max_join_num
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"max_join_num"
,
t
)},
expression
:
"form.max_join_num"
}})],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
dialogObj
.
show
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
e
.
onSave
}},[
e
.
_v
(
"确 定"
)])],
1
)],
1
)};
o
.
_withStripped
=!
0
;
var
a
=
{
render
:
o
,
staticRenderFns
:[]},
r
=
a
;
var
l
=!
1
;
var
c
=
n
(
"VU/8"
)(
s
,
r
,
!
1
,
function
(
e
){
l
||
n
(
"JP4Q"
)},
"data-v-e25797c8"
,
null
);
c
.
options
.
__file
=
"src
\\
components
\\
class
\\
dialog.vue"
;
var
d
=
c
.
exports
,
u
=
n
(
"kmJW"
),
h
=
n
(
"+TkF"
),
f
=
{
name
:
"userList"
,
props
:[
"userObj"
],
data
:
function
(){
return
{
userTable
:[],
addId
:
""
,
lookDetail
:{
show
:
!
1
,
loading
:
!
1
,
list
:[]},
addShow
:
!
1
,
userList
:[],
nowPage
:
1
,
limit
:
5
,
total
:
0
,
searchFrom
:{
userId
:
""
,
nickName
:
""
,
mobile
:
""
},
multipleSelection
:[]}},
components
:{
page
:
u
.
a
},
filters
:{
isOrNot
:
function
(
e
){
return
h
.
h
[
e
]},
percent
:
function
(
e
){
return
(
100
*
e
).
toFixed
(
2
)
+
"%"
}},
methods
:{
userLook
:
function
(
e
){
var
t
=
this
;
this
.
lookDetail
.
show
=!
0
,
this
.
lookDetail
.
loading
=!
0
,
Object
(
i
.
_47
)(
e
.
periods_id
,
e
.
id
).
then
(
function
(
e
){
t
.
lookDetail
.
list
=
e
.
list
,
t
.
lookDetail
.
loading
=!
1
})},
initPage
:
function
(){
var
e
=
this
;
Object
(
i
.
_7
)(
this
.
userObj
.
classId
).
then
(
function
(
t
){
e
.
userTable
=
t
.
list
})},
changeUser
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将修改成员看课权限?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
i
.
p
)(
e
.
id
,{
is_view_course
:
0
===
e
.
is_view_course
?
1
:
0
}).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
t
.
initPage
()})})},
onDel
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将删除该成员?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
i
.
x
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
t
.
initPage
()})})},
onAdd
:
function
(){
var
e
=
this
;
0
!==
this
.
multipleSelection
.
length
?
1
===
this
.
multipleSelection
.
length
?(
this
.
addId
=
this
.
multipleSelection
[
0
].
user_id
,
this
.
addId
&&
Object
(
i
.
g
)(
this
.
userObj
.
classId
,
this
.
addId
,{
is_buy
:
0
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
e
.
addShow
=!
1
,
e
.
initPage
()})):
this
.
$message
({
type
:
"error"
,
message
:
"只能选择一个用户!"
}):
this
.
$message
({
type
:
"error"
,
message
:
"请选择用户!"
})},
onAddUser
:
function
(){
this
.
addShow
=!
0
,
this
.
getUser
()},
getUser
:
function
(){
var
e
=
this
,
t
=
{
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
searchFrom
.
userId
&&
(
t
.
user_id
=
this
.
searchFrom
.
userId
),
this
.
searchFrom
.
nickName
&&
(
t
.
nickname
=
this
.
searchFrom
.
nickName
),
this
.
searchFrom
.
mobile
&&
(
t
.
mobile
=
this
.
searchFrom
.
mobile
),
Object
(
i
.
_31
)(
t
).
then
(
function
(
t
){
e
.
userList
=
t
.
list
,
e
.
total
=
t
.
total
})},
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
getUser
()},
handleSelectionChange
:
function
(
e
){
this
.
multipleSelection
=
e
},
editComment
:
function
(
e
,
t
){
var
n
=
this
;
this
.
$prompt
(
""
,
"编辑备注"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
inputValue
:
t
}).
then
(
function
(
t
){
var
s
=
t
.
value
;
Object
(
i
.
k
)(
e
,{
desc
:
s
}).
then
(
function
(
e
){
n
.
$message
({
type
:
"success"
,
message
:
"编辑备注成功"
}),
n
.
initPage
()})})}},
watch
:{
userObj
:
function
(){
this
.
initPage
()}}},
_
=
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"el-dialog"
,{
attrs
:{
title
:
e
.
userObj
.
title
,
visible
:
e
.
userObj
.
show
,
modal
:
!
1
,
fullscreen
:
!
0
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
userObj
,
"show"
,
t
)}}},[
n
(
"div"
,[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
e
.
onAddUser
}},[
e
.
_v
(
"+添加用户"
)])],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
userTable
}},[
n
(
"el-table-column"
,{
attrs
:{
label
:
"用户"
,
className
:
"f-c"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
t
.
row
.
avatar
}}),
e
.
_v
(
" "
+
e
.
_s
(
t
.
row
.
nickname
)
+
"(ID:"
+
e
.
_s
(
t
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"是否购买"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
0
===
t
.
row
.
is_buy
?
"否"
:
"是"
)
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"看课权限"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"isOrNot"
)(
t
.
row
.
is_view_course
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"desc"
,
label
:
"备注"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"最后登录时间"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
last_login_at
)
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
watch_course_rate
)
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"课包查看次数"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
watch_course_num
)
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"学习时长(分)"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
Math
.
round
(
t
.
row
.
watch_course_time
/
60
*
100
)
/
100
)
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
work_rate
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
clock_rate
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"续费情况"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"isOrNot"
)(
t
.
row
.
is_continue_buy
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-table-column"
,{
attrs
:{
label
:
"操作"
,
width
:
"300"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
e
.
editComment
(
t
.
row
.
id
,
t
.
row
.
desc
)}}},[
e
.
_v
(
"编辑备注"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
e
.
changeUser
(
t
.
row
)}}},[
e
.
_v
(
"看课权限"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
e
.
userLook
(
t
.
row
)}}},[
e
.
_v
(
"看课情况"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
deletePermission
&&!
e
.
$store
.
state
.
readonly
?
n
(
"el-button"
,{
attrs
:{
type
:
"danger"
,
size
:
"mini"
},
on
:{
click
:
function
(
n
){
e
.
onDel
(
t
.
row
)}}},[
e
.
_v
(
"删除"
)]):
e
.
_e
()]}}])})],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
e
.
addShow
},
on
:{
"update:visible"
:
function
(
t
){
e
.
addShow
=
t
}}},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
}},[
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"ID"
}},[
n
(
"el-input"
,{
model
:{
value
:
e
.
searchFrom
.
userId
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"userId"
,
t
)},
expression
:
"searchFrom.userId"
}})],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"昵称"
}},[
n
(
"el-input"
,{
model
:{
value
:
e
.
searchFrom
.
nickName
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"nickName"
,
t
)},
expression
:
"searchFrom.nickName"
}})],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"电话"
}},[
n
(
"el-input"
,{
model
:{
value
:
e
.
searchFrom
.
mobile
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"mobile"
,
t
)},
expression
:
"searchFrom.mobile"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
,
offset
:
16
}},[
n
(
"el-form-item"
,[
n
(
"el-button"
,{
staticStyle
:{
float
:
"right"
},
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
getUser
}},[
e
.
_v
(
"搜索"
)])],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
userList
},
on
:{
"selection-change"
:
e
.
handleSelectionChange
}},[
n
(
"el-table-column"
,{
attrs
:{
type
:
"selection"
,
width
:
"55"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
className
:
"f-c"
,
label
:
"用户"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
t
.
row
.
avatar
}}),
e
.
_v
(
e
.
_s
(
t
.
row
.
nickname
)
+
"(ID:"
+
e
.
_s
(
t
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"mobile"
,
label
:
"手机号"
}})],
1
),
e
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
total
:
e
.
total
,
limit
:
e
.
limit
},
on
:{
pageChange
:
e
.
onPageChange
}}),
e
.
_v
(
" "
),
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
addShow
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
e
.
onAdd
}},[
e
.
_v
(
"确 定"
)])],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
e
.
lookDetail
.
show
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
lookDetail
,
"show"
,
t
)}}},[
n
(
"el-table"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
e
.
lookDetail
.
loading
,
expression
:
"lookDetail.loading"
}],
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
lookDetail
.
list
}},[
n
(
"el-table-column"
,{
attrs
:{
prop
:
"periods_id"
,
label
:
"期数"
}})],
1
)],
1
)],
1
)};
_
.
_withStripped
=!
0
;
var
m
=
{
render
:
_
,
staticRenderFns
:[]},
p
=
m
;
var
b
=!
1
;
var
v
=
n
(
"VU/8"
)(
f
,
p
,
!
1
,
function
(
e
){
b
||
n
(
"nZHh"
)},
null
,
null
);
v
.
options
.
__file
=
"src
\\
components
\\
class
\\
userList.vue"
;
var
g
=
{
data
:
function
(){
return
{
nowPage
:
1
,
total
:
0
,
limit
:
10
,
periodsId
:
null
,
goodsList
:[],
teacher_id
:
""
,
classList
:[],
title
:
""
,
countObj
:
""
,
teacherList
:[],
userObj
:{
classId
:
""
,
title
:
""
,
show
:
!
1
},
dialogObj
:{
show
:
!
1
,
title
:
"添加班级"
,
periodsId
:
""
,
type
:
0
,
id
:
0
},
selectedGoods
:[]}},
components
:{
UserList
:
v
.
exports
,
classDialog
:
d
,
page
:
u
.
a
},
filters
:{
classTypeFilter
:
function
(
e
){
var
t
=
parseInt
(
e
);
return
1
===
t
?
"带班班级"
:
2
===
t
?
"观摩班级"
:
""
},
percent
:
function
(
e
){
return
(
100
*
e
).
toFixed
(
2
)
+
"%"
}},
mounted
:
function
(){
this
.
initPage
()},
methods
:{
changeRow
:
function
(
e
,
t
){
t
.
indexOf
(
e
)
>-
1
&&
Object
(
i
.
_6
)(
e
.
periods_id
,
e
.
id
).
then
(
function
(
t
){
e
.
arrive_course_rate
=
t
.
arrive_course_rate
,
e
.
watch_course_rate
=
t
.
watch_course_rate
,
e
.
over_course_rate
=
t
.
over_course_rate
,
e
.
work_rate
=
t
.
work_rate
,
e
.
over_work_rate
=
t
.
over_work_rate
,
e
.
clock_rate
=
t
.
clock_rate
,
e
.
over_clock_rate
=
t
.
over_clock_rate
,
e
.
transform_rate
=
t
.
transform_rate
})},
initQuery
:
function
(){
var
e
=
this
,
t
=
this
.
$route
.
query
;
t
&&
t
.
goods_id
&&
t
.
periods_id
&&
(
this
.
selectedGoods
=
[
parseInt
(
t
.
goods_id
),
parseInt
(
t
.
periods_id
)],
Object
(
i
.
_19
)({
goods_id
:
this
.
selectedGoods
[
0
]}).
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
e
.
name
=
e
.
title
}),
e
.
goodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
.
selectedGoods
[
0
]}).
children
=
t
.
list
;
var
n
=
e
.
goodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
.
selectedGoods
[
0
]});
e
.
periods
=
n
.
children
.
find
(
function
(
t
){
return
t
.
id
===
e
.
selectedGoods
[
1
]}),
e
.
teacher_id
=
""
,
e
.
getClassList
()}))},
initPage
:
function
(){
var
e
=
this
;
Object
(
i
.
_13
)().
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
e
.
children
=
[]}),
e
.
goodsList
=
t
.
list
,
e
.
initQuery
()})},
showUser
:
function
(
e
){
this
.
userObj
=
{
classId
:
e
.
id
,
show
:
!
0
,
title
:
e
.
teacher_name
+
"班级用户列表"
}},
getTeacher
:
function
(){
var
e
=
this
;
this
.
periods
&&
Object
(
i
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
t
){
e
.
teacherList
=
t
})},
changePeriods
:
function
(
e
){
if
(
e
.
length
>
1
){
var
t
=
this
.
goodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
[
0
]});
this
.
periods
=
t
.
children
.
find
(
function
(
t
){
return
t
.
id
===
e
[
1
]}),
this
.
teacher_id
=
""
,
this
.
getTeacher
()}},
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
getClassList
()},
onReflash
:
function
(
e
){
this
.
periods
=
e
,
this
.
selectedGoods
=
[
e
.
goods_id
,
e
.
id
],
this
.
getClassList
()},
getClassList
:
function
(){
var
e
=
this
;
if
(
this
.
periods
){
this
.
getTeacher
();
var
t
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
teacher_id
&&
(
t
.
teacher_id
=
this
.
teacher_id
),
Object
(
i
.
_5
)(
this
.
periods
.
id
,
t
).
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
e
.
arrive_course_rate
=
0
,
e
.
watch_course_rate
=
0
,
e
.
over_course_rate
=
0
,
e
.
work_rate
=
0
,
e
.
over_work_rate
=
0
,
e
.
clock_rate
=
0
,
e
.
over_clock_rate
=
0
,
e
.
transform_rate
=
0
}),
e
.
title
=
t
.
periods
,
e
.
countObj
=
t
.
count
?
t
.
count
:
""
,
e
.
classList
=
t
.
list
,
e
.
total
=
t
.
total
})}},
handleItemChange
:
function
(
e
){
var
t
=
this
;
Object
(
i
.
_19
)({
goods_id
:
e
[
0
]}).
then
(
function
(
n
){
n
.
list
.
forEach
(
function
(
e
){
e
.
name
=
e
.
title
}),
t
.
goodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
[
0
]}).
children
=
n
.
list
})},
delClass
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将删除该班级?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
i
.
w
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
t
.
getClassList
()})})},
onAdd
:
function
(){
console
.
log
(
"onAdd"
,
this
.
periods
),
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"添加班级"
,
type
:
0
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)},
editClass
:
function
(
e
){
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"编辑班级"
,
type
:
1
,
id
:
e
.
id
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)}}},
w
=
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"div"
,{
staticClass
:
"class"
},[
n
(
"div"
,{
staticClass
:
"form-block"
},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
n
(
"el-cascader"
,{
attrs
:{
options
:
e
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
e
.
handleItemChange
,
change
:
e
.
changePeriods
},
model
:{
value
:
e
.
selectedGoods
,
callback
:
function
(
t
){
e
.
selectedGoods
=
t
},
expression
:
"selectedGoods"
}})],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
n
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
,
clearable
:
""
},
model
:{
value
:
e
.
teacher_id
,
callback
:
function
(
t
){
e
.
teacher_id
=
t
},
expression
:
"teacher_id"
}},
e
.
_l
(
e
.
teacherList
,
function
(
e
,
t
){
return
n
(
"el-option"
,{
key
:
t
,
attrs
:{
label
:
e
.
teacher_name
,
value
:
e
.
teacher_id
}})}))],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
""
}},[
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
e
.
getClassList
}},[
e
.
_v
(
"
\n
搜索
\n
"
)])],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
e
.
onAdd
}},[
e
.
_v
(
"+添加班级"
)])],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
e
.
classList
&&
e
.
classList
.
length
>
0
?
n
(
"div"
,{
staticClass
:
"intro"
},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"100px"
}},[
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数名称"
}},[
e
.
_v
(
e
.
_s
(
e
.
title
.
title
))])],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"可看课包数"
}},[
e
.
_v
(
e
.
_s
(
e
.
title
.
watch_num
))])],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"已看课包数"
}},[
e
.
_v
(
e
.
_s
(
e
.
title
.
has_watch_num
))])],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"开始时间"
}},[
e
.
_v
(
e
.
_s
(
e
.
title
.
start_at
))])],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"老师数量"
}},[
e
.
_v
(
e
.
_s
(
e
.
countObj
.
count_teacher_num
))])],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"预计学员总数"
}},[
e
.
_v
(
e
.
_s
(
e
.
countObj
.
count_max_join_num
))])],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"学员总数"
}},[
e
.
_v
(
e
.
_s
(
e
.
countObj
.
count_join_num
))])],
1
),
e
.
_v
(
" "
),
n
(
"el-col"
,{
attrs
:{
span
:
6
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"结束时间"
}},[
e
.
_v
(
e
.
_s
(
e
.
title
.
over_at
))])],
1
)],
1
)],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
e
.
classList
&&
0
!==
e
.
classList
.
length
?
e
.
_e
():
n
(
"div"
,[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"300px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"暂无期数信息,请先选择期数"
}})],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"div"
,[
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
classList
},
on
:{
"expand-change"
:
e
.
changeRow
}},[
n
(
"el-table-column"
,{
attrs
:{
type
:
"expand"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:[
t
.
row
]}},[
n
(
"el-table-column"
,{
attrs
:{
label
:
"到课率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
arrive_course_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
watch_course_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"完课率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
over_course_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
work_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"全勤作业率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
over_work_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
clock_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"全勤打卡率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
over_clock_rate
)))])]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"转化率"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"span"
,[
e
.
_v
(
e
.
_s
(
e
.
_f
(
"percent"
)(
t
.
row
.
transform_rate
)))])]}}])})],
1
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"teacher_name"
,
label
:
"班主任"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"班级类型"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"classTypeFilter"
)(
t
.
row
.
type
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"max_join_num"
,
label
:
"最大人数"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"join_num"
,
label
:
"现有人数"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
width
:
"250"
,
label
:
"操作"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"primary"
},
on
:{
click
:
function
(
n
){
e
.
showUser
(
t
.
row
)}}},[
e
.
_v
(
"班级成员"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"warning"
},
on
:{
click
:
function
(
n
){
e
.
editClass
(
t
.
row
)}}},[
e
.
_v
(
"编辑"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
deletePermission
&&!
e
.
$store
.
state
.
readonly
?
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"danger"
},
on
:{
click
:
function
(
n
){
e
.
delClass
(
t
.
row
)}}},[
e
.
_v
(
"删除"
)]):
e
.
_e
()]}}])})],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
nowPage
:
e
.
nowPage
,
total
:
e
.
total
,
limit
:
e
.
limit
},
on
:{
pageChange
:
e
.
onPageChange
}}),
e
.
_v
(
" "
),
n
(
"class-dialog"
,{
attrs
:{
dialogObj
:
e
.
dialogObj
},
on
:{
reflash
:
e
.
onReflash
}}),
e
.
_v
(
" "
),
n
(
"user-list"
,{
attrs
:{
userObj
:
e
.
userObj
},
on
:{
reflash
:
e
.
getClassList
}})],
1
)};
w
.
_withStripped
=!
0
;
var
y
=
{
render
:
w
,
staticRenderFns
:[]},
k
=
y
;
var
x
=!
1
;
var
j
=
n
(
"VU/8"
)(
g
,
k
,
!
1
,
function
(
e
){
x
||
(
n
(
"rKW7"
),
n
(
"a1h3"
))},
"data-v-426dc2ae"
,
null
);
j
.
options
.
__file
=
"src
\\
components
\\
class
\\
index.vue"
;
t
.
default
=
j
.
exports
},
a1h3
:
function
(
e
,
t
,
n
){
var
i
=
n
(
"1/HN"
);
"string"
==
typeof
i
&&
(
i
=
[[
e
.
i
,
i
,
""
]]),
i
.
locals
&&
(
e
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"171dfdde"
,
i
,
!
1
,{})},
nZHh
:
function
(
e
,
t
,
n
){
var
i
=
n
(
"tnil"
);
"string"
==
typeof
i
&&
(
i
=
[[
e
.
i
,
i
,
""
]]),
i
.
locals
&&
(
e
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"21b1deb2"
,
i
,
!
1
,{})},
rKW7
:
function
(
e
,
t
,
n
){
var
i
=
n
(
"NzM9"
);
"string"
==
typeof
i
&&
(
i
=
[[
e
.
i
,
i
,
""
]]),
i
.
locals
&&
(
e
.
exports
=
i
.
locals
);
n
(
"rjj0"
)(
"94e58b82"
,
i
,
!
1
,{})},
tnil
:
function
(
e
,
t
,
n
){(
e
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
e
.
i
,
"
\n
.f-c > div{
\n
display: -webkit-box;
\n
display: -ms-flexbox;
\n
display: flex;
\n
-webkit-box-orient: horizontal;
\n
-webkit-box-direction: normal;
\n
-ms-flex-flow: row nowrap;
\n
flex-flow: row nowrap;
\n
-webkit-box-pack: start;
\n
-ms-flex-pack: start;
\n
justify-content: flex-start;
\n
-webkit-box-align: center;
\n
-ms-flex-align: center;
\n
align-items: center;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/components/class/userList.vue"
],
names
:[],
mappings
:
";AACA;EACE,qBAAqB;EACrB,qBAAqB;EACrB,cAAc;EACd,+BAA+B;EAC/B,8BAA8B;MAC1B,0BAA0B;UACtB,sBAAsB;EAC9B,wBAAwB;MACpB,qBAAqB;UACjB,4BAA4B;EACpC,0BAA0B;MACtB,uBAAuB;UACnB,oBAAoB;CAC7B"
,
file
:
"userList.vue"
,
sourcesContent
:[
"
\n
.f-c > div{
\n
display: -webkit-box;
\n
display: -ms-flexbox;
\n
display: flex;
\n
-webkit-box-orient: horizontal;
\n
-webkit-box-direction: normal;
\n
-ms-flex-flow: row nowrap;
\n
flex-flow: row nowrap;
\n
-webkit-box-pack: start;
\n
-ms-flex-pack: start;
\n
justify-content: flex-start;
\n
-webkit-box-align: center;
\n
-ms-flex-align: center;
\n
align-items: center;
\n
}
\n
"
],
sourceRoot
:
""
}])}});
\ No newline at end of file
dev/static/js/app.9cd47435d66e7833e4fa.js
0 → 100644
View file @
1a8add53
webpackJsonp
([
32
],{
Cwy8
:
function
(
e
,
n
,
t
){
var
o
=
t
(
"LgZj"
);
"string"
==
typeof
o
&&
(
o
=
[[
e
.
i
,
o
,
""
]]),
o
.
locals
&&
(
e
.
exports
=
o
.
locals
);
t
(
"rjj0"
)(
"bf21a3b6"
,
o
,
!
1
,{})},
IcnI
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"NYxO"
),
r
=
t
(
"zSLJ"
),
i
=
{
setToken
:
function
(
e
,
n
){
e
.
token
=
n
,
r
.
a
.
set
(
"cc_token"
,
n
)},
setUserName
:
function
(
e
,
n
){
e
.
userName
=
n
,
r
.
a
.
set
(
"cc_user_name"
,
n
)},
setPermission
:
function
(
e
,
n
){
e
.
progressList
=
n
,
localStorage
.
setItem
(
"permission"
,
JSON
.
stringify
(
n
))},
setMenu
:
function
(
e
,
n
){
e
.
menuList
=
n
},
readonly
:
function
(
e
,
n
){
e
.
readonly
=
n
},
deletePermission
:
function
(
e
,
n
){
e
.
deletePermission
=
n
},
mainCanShow
:
function
(
e
){
e
.
mainLoad
=!
1
},
mainUnShow
:
function
(
e
){
e
.
mainLoad
=!
0
},
changeParentRouter
:
function
(
e
,
n
){
e
.
menuList
.
find
(
function
(
e
){
return
e
.
name
===
n
.
name
}).
routerName
=
n
.
to
.
name
},
progress
:
function
(
e
,
n
){
switch
(
n
.
type
){
case
"new"
:
e
.
progressList
.
push
({
num
:
0
,
id
:
n
.
id
});
break
;
case
"change"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
}).
num
=
n
.
num
;
break
;
case
"delete"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
})}}},
u
=
{
setToken
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setToken"
,
n
)},
setUserName
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setUserName"
,
n
)},
setProgress
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"progress"
,
n
)},
setPermission
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setPermission"
,
n
)},
setMenu
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setMenu"
,
n
)},
readonly
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"readonly"
,
n
)},
deletePermission
:
function
(
e
,
n
){
var
t
=
e
.
commit
;
console
.
log
(
n
),
t
(
"deletePermission"
,
n
)}};
o
.
default
.
use
(
a
.
a
);
n
.
a
=
new
a
.
a
.
Store
({
state
:{
show
:
!
1
,
userName
:
""
,
token
:
""
,
orderRefund
:
!
1
,
permission
:
!
1
,
readonly
:
!
0
,
deletePermission
:
!
1
,
mainLoad
:
!
0
,
menuList
:[],
menuType
:
!
1
,
nowTab
:
"first"
,
progressList
:[],
openedTab
:[{
value
:
"首页"
,
routerName
:
"first"
,
name
:
"first"
,
delNo
:
!
0
,
path
:
"/index"
}]},
mutations
:
i
,
actions
:
u
})},
LgZj
:
function
(
e
,
n
,
t
){(
e
.
exports
=
t
(
"FZ+f"
)(
!
0
)).
push
([
e
.
i
,
"
\n
#app {
\
r
\n
height: 100%;
\n
}
\n
html,body{
\
r
\n
height: 100%;
\
r
\n
margin: 0;
\
r
\n
padding: 0;
\n
}
\
r
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/App.vue"
],
names
:[],
mappings
:
";AACA;EACE,aAAa;CACd;AACD;IACI,aAAa;IACb,UAAU;IACV,WAAW;CACd"
,
file
:
"App.vue"
,
sourcesContent
:[
"
\n
#app {
\
r
\n
height: 100%;
\n
}
\n
html,body{
\
r
\n
height: 100%;
\
r
\n
margin: 0;
\
r
\n
padding: 0;
\n
}
\
r
\n
"
],
sourceRoot
:
""
}])},
NHnr
:
function
(
e
,
n
,
t
){
"use strict"
;
Object
.
defineProperty
(
n
,
"__esModule"
,{
value
:
!
0
});
var
o
=
t
(
"7+uW"
),
a
=
[{
name
:
""
,
value
:
"教研管理"
,
icon
:
"icon-material"
,
list
:[{
value
:
"教材列表"
,
routerName
:
"resources"
,
path
:
"/resources"
,
cover
:
"1-1"
,
router
:{
path
:
"/resources"
,
name
:
"resources"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
1
)]).
then
(
function
(){
var
n
=
[
t
(
"z5EG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"商品课程"
,
icon
:
"icon-shangpin1"
,
list
:[{
value
:
"课程列表"
,
routerName
:
"lesson"
,
path
:
"/lesson"
,
cover
:
"2-1"
,
router
:{
path
:
"/lesson"
,
name
:
"lesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
6
)]).
then
(
function
(){
var
n
=
[
t
(
"AbSL"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"商品列表"
,
routerName
:
"shop"
,
path
:
"/shop"
,
cover
:
"4-1"
,
router
:{
path
:
"/shop"
,
name
:
"shop"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
22
)]).
then
(
function
(){
var
n
=
[
t
(
"1djJ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"期数管理"
,
icon
:
"icon-kecheng"
,
list
:[{
value
:
"期数列表"
,
routerName
:
"periods"
,
path
:
"/periods"
,
cover
:
"2-2"
,
router
:{
path
:
"/periods"
,
name
:
"periods"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
9
)]).
then
(
function
(){
var
n
=
[
t
(
"ayGs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"班级列表"
,
routerName
:
"class"
,
path
:
"/class"
,
cover
:
"2-3"
,
router
:{
path
:
"/class"
,
name
:
"class"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
5
)]).
then
(
function
(){
var
n
=
[
t
(
"OX9A"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"不上课日期"
,
routerName
:
"noLesson"
,
path
:
"/noLesson"
,
cover
:
"2-4"
,
router
:{
path
:
"/noLesson"
,
name
:
"noLesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
17
)]).
then
(
function
(){
var
n
=
[
t
(
"sg/1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"人员管理"
,
icon
:
"icon-laoshi"
,
list
:[{
value
:
"教师列表"
,
routerName
:
"teacher"
,
path
:
"/teacher"
,
cover
:
"3-1"
,
router
:{
path
:
"/teacher"
,
name
:
"teacher"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
12
)]).
then
(
function
(){
var
n
=
[
t
(
"Y0Vi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"用户列表"
,
routerName
:
"user"
,
path
:
"/user"
,
cover
:
"3-2"
,
router
:{
path
:
"/user"
,
name
:
"user"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
7
)]).
then
(
function
(){
var
n
=
[
t
(
"jFLA"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"订单管理"
,
icon
:
"icon-dingdan"
,
list
:[{
value
:
"订单列表"
,
routerName
:
"order"
,
path
:
"/order"
,
cover
:
"5-1"
,
router
:{
path
:
"/order"
,
name
:
"order"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
2
)]).
then
(
function
(){
var
n
=
[
t
(
"2qmY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"退款列表"
,
routerName
:
"refund"
,
path
:
"/refund"
,
cover
:
"5-2"
,
router
:{
path
:
"/refund"
,
name
:
"refund"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
21
)]).
then
(
function
(){
var
n
=
[
t
(
"89rD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"提现列表"
,
routerName
:
"putForward"
,
path
:
"/putForward"
,
cover
:
"5-3"
,
router
:{
path
:
"/putForward"
,
name
:
"putForward"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
27
)]).
then
(
function
(){
var
n
=
[
t
(
"F5pf"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"发货管理"
,
routerName
:
"consignment"
,
path
:
"/consignment"
,
cover
:
"5-4"
,
router
:{
path
:
"/consignment"
,
name
:
"consignment"
,
component
:
function
(
e
){
return
t
.
e
(
29
).
then
(
function
(){
var
n
=
[
t
(
"usUK"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"实物管理"
,
icon
:
"icon-shu"
,
list
:[{
value
:
"单品列表"
,
routerName
:
"single"
,
path
:
"/single"
,
cover
:
"6-1"
,
router
:{
path
:
"/single"
,
name
:
"single"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
11
)]).
then
(
function
(){
var
n
=
[
t
(
"B31M"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"盒子列表"
,
routerName
:
"box"
,
path
:
"/box"
,
cover
:
"6-2"
,
router
:{
path
:
"/box"
,
name
:
"box"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
8
)]).
then
(
function
(){
var
n
=
[
t
(
"+vCD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"公众号"
,
icon
:
"icon-ai-weixin"
,
list
:[{
value
:
"自动回复"
,
routerName
:
"focusReply"
,
path
:
"/focusReply"
,
cover
:
"7-1"
,
router
:{
path
:
"/focusReply"
,
name
:
"focusReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
10
)]).
then
(
function
(){
var
n
=
[
t
(
"CK6D"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"关键词回复"
,
routerName
:
"autoReply"
,
path
:
"/autoReply"
,
cover
:
"7-2"
,
router
:{
path
:
"/autoReply"
,
name
:
"autoReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
20
)]).
then
(
function
(){
var
n
=
[
t
(
"65NY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"公众号菜单"
,
routerName
:
"weChat"
,
path
:
"/weChat"
,
cover
:
"7-3"
,
router
:{
path
:
"/weChat"
,
name
:
"weChat"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
16
)]).
then
(
function
(){
var
n
=
[
t
(
"q5av"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"素材管理"
,
routerName
:
"weChatResource"
,
path
:
"/weChatResource"
,
cover
:
"7-4"
,
router
:{
path
:
"/weChatResource"
,
name
:
"weChatResource"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
18
)]).
then
(
function
(){
var
n
=
[
t
(
"Xhqp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"Banner管理"
,
routerName
:
"banner"
,
path
:
"/banner"
,
cover
:
"7-5"
,
router
:{
path
:
"/banner"
,
name
:
"banner"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
14
)]).
then
(
function
(){
var
n
=
[
t
(
"CGL6"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"系统管理"
,
icon
:
"icon-shezhi"
,
list
:[{
value
:
"账号管理"
,
routerName
:
"admin"
,
path
:
"/admin"
,
cover
:
"8-1"
,
router
:{
path
:
"/admin"
,
name
:
"admin"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
25
)]).
then
(
function
(){
var
n
=
[
t
(
"+jTk"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"角色管理"
,
routerName
:
"role"
,
path
:
"/role"
,
cover
:
"8-2"
,
router
:{
path
:
"/role"
,
name
:
"role"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
26
)]).
then
(
function
(){
var
n
=
[
t
(
"Vt1u"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"菜单管理"
,
routerName
:
"menu"
,
path
:
"/menu"
,
cover
:
"8-3"
,
router
:{
path
:
"/menu"
,
name
:
"menu"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
24
)]).
then
(
function
(){
var
n
=
[
t
(
"aTXs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"系统配置"
,
routerName
:
"sysConfig"
,
path
:
"/sysConfig"
,
cover
:
"8-4"
,
router
:{
path
:
"/sysConfig"
,
name
:
"sysConfig"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
19
)]).
then
(
function
(){
var
n
=
[
t
(
"gaNG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"操作日志"
,
routerName
:
"adminLog"
,
path
:
"/adminLog"
,
cover
:
"8-5"
,
router
:{
path
:
"/adminLog"
,
name
:
"adminLog"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
30
)]).
then
(
function
(){
var
n
=
[
t
(
"WZgi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]}],
r
=
{
name
:
"App"
,
data
:
function
(){
return
{}},
mounted
:
function
(){
var
e
=
this
;
if
(
window
.
location
.
href
.
indexOf
(
"login"
)
<
0
){
var
n
=
this
.
$store
.
state
.
progressList
,
t
=
[];
this
.
$router
.
options
.
routes
[
0
].
children
=
[];
var
o
=
n
.
find
(
function
(
e
){
return
"5-1"
===
e
.
cover
});
o
&&
o
.
refund
&&
(
this
.
$store
.
state
.
orderRefund
=!
0
),
a
.
forEach
(
function
(
o
){
var
a
=!
1
,
r
=
[];
o
.
list
.
forEach
(
function
(
t
){
var
o
=
n
.
find
(
function
(
e
){
return
e
.
cover
===
t
.
cover
});
o
&&
(
t
.
router
.
meta
=
{},
t
.
router
.
meta
.
readonly
=
o
.
readonly
,
t
.
router
.
meta
.
delete
=!!
o
.
delete
,
r
.
push
(
t
),
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
t
.
router
),
a
=!
0
)}),
a
&&
(
o
.
list
=
r
,
t
.
push
(
o
))}),
this
.
$router
.
addRoutes
([
this
.
$router
.
options
.
routes
[
0
]]),
this
.
$store
.
dispatch
(
"setMenu"
,
t
)}}},
i
=
function
(){
var
e
=
this
.
$createElement
,
n
=
this
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
attrs
:{
id
:
"app"
}},[
n
(
"router-view"
)],
1
)};
i
.
_withStripped
=!
0
;
var
u
=
{
render
:
i
,
staticRenderFns
:[]},
c
=
u
;
var
s
=!
1
;
var
l
=
t
(
"VU/8"
)(
r
,
c
,
!
1
,
function
(
e
){
s
||
t
(
"Cwy8"
)},
null
,
null
);
l
.
options
.
__file
=
"src
\\
App.vue"
;
var
p
=
l
.
exports
,
h
=
t
(
"YaEn"
),
m
=
t
(
"zL8q"
),
d
=
t
.
n
(
m
),
f
=
(
t
(
"tvR6"
),
t
(
"IcnI"
));
o
.
default
.
use
(
d
.
a
),
o
.
default
.
config
.
productionTip
=!
1
,
new
o
.
default
({
el
:
"#app"
,
store
:
f
.
a
,
router
:
h
.
a
,
components
:{
App
:
p
},
template
:
"<App/>"
})},
YaEn
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"IcnI"
),
r
=
t
(
"/ocq"
),
i
=
t
(
"zSLJ"
);
o
.
default
.
use
(
r
.
a
);
var
u
=
new
r
.
a
({
routes
:[{
path
:
"/"
,
name
:
"index"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
3
)]).
then
(
function
(){
var
n
=
[
t
(
"jHcp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
redirect
:{
name
:
"first"
},
children
:[{
path
:
""
,
name
:
"first"
,
component
:
function
(
e
){
return
t
.
e
(
4
).
then
(
function
(){
var
n
=
[
t
(
"sJm1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/userDetail/:id"
,
name
:
"userDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
13
)]).
then
(
function
(){
var
n
=
[
t
(
"9PRC"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/teacher/:id"
,
name
:
"teacherDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
15
)]).
then
(
function
(){
var
n
=
[
t
(
"hFUZ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}]},{
path
:
"/login"
,
name
:
"login"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
23
)]).
then
(
function
(){
var
n
=
[
t
(
"0HId"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}},{
path
:
"/upload"
,
name
:
"upload"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
28
)]).
then
(
function
(){
var
n
=
[
t
(
"iPJD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}}]});
u
.
beforeEach
(
function
(
e
,
n
,
t
){
if
(
a
.
a
.
commit
(
"mainCanShow"
),
i
.
a
.
get
(
"cc_token"
)
&&
(
a
.
a
.
dispatch
(
"setToken"
,
i
.
a
.
get
(
"cc_token"
)),
a
.
a
.
dispatch
(
"setPermission"
,
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
))),
null
!==
i
.
a
.
get
(
"cc_user_name"
)
&&
a
.
a
.
dispatch
(
"setUserName"
,
i
.
a
.
get
(
"cc_user_name"
))),
a
.
a
.
state
.
nowTab
=
e
.
name
,
e
.
matched
.
length
>
1
&&
"first"
!==
e
.
name
){
for
(
var
o
=
void
0
,
r
=
0
;
r
<
a
.
a
.
state
.
menuList
.
length
;
r
++
)
for
(
var
u
=
a
.
a
.
state
.
menuList
[
r
],
c
=
0
;
c
<
u
.
list
.
length
;
c
++
){
var
s
=
u
.
list
[
c
];
s
.
path
===
e
.
path
&&
(
o
=
s
)}
a
.
a
.
state
.
openedTab
.
indexOf
(
o
)
<
0
&&
a
.
a
.
state
.
openedTab
.
push
(
o
)}
if
(
e
.
meta
.
readonly
?
a
.
a
.
dispatch
(
"readonly"
,
!
0
):
a
.
a
.
dispatch
(
"readonly"
,
!
1
),
"userDetail"
===
e
.
name
){
var
l
=
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
)).
find
(
function
(
e
){
return
"3-2"
===
e
.
cover
}).
readonly
;
a
.
a
.
dispatch
(
"readonly"
,
l
)}
e
.
meta
.
delete
?
a
.
a
.
dispatch
(
"deletePermission"
,
!
0
):
a
.
a
.
dispatch
(
"deletePermission"
,
!
1
),
e
.
matched
.
some
(
function
(
e
){
return
!
0
!==
e
.
meta
.
skip_auth
})
&&!
a
.
a
.
state
.
token
?
t
({
path
:
"/login"
}):
t
()}),
u
.
onError
(
function
(
e
){
var
n
=
e
.
message
.
match
(
/Loading chunk
(\d)
+ failed/g
),
t
=
u
.
history
.
pending
.
fullPath
;
n
&&
u
.
replace
(
t
)}),
n
.
a
=
u
},
tvR6
:
function
(
e
,
n
){},
zSLJ
:
function
(
e
,
n
,
t
){
"use strict"
;
n
.
a
=
{
set
:
function
(
e
,
n
,
t
){
var
o
=
new
Date
;
o
.
setTime
(
o
.
getTime
()
+
864
e5
*
t
),
window
.
document
.
cookie
=
e
+
"="
+
n
+
";path=/;expires="
+
o
.
toGMTString
()},
get
:
function
(
e
){
var
n
=
window
.
document
.
cookie
.
match
(
"(^|;) ?"
+
e
+
"=([^;]*)(;|$)"
);
return
n
?
n
[
2
]:
null
},
delete
:
function
(
e
){
this
.
set
(
e
,
""
,
-
1
)}}}},[
"NHnr"
]);
\ No newline at end of file
dev/static/js/app.a1c941364d90ca11e4f7.js
deleted
100644 → 0
View file @
fa6496f6
webpackJsonp
([
32
],{
Cwy8
:
function
(
e
,
n
,
t
){
var
o
=
t
(
"LgZj"
);
"string"
==
typeof
o
&&
(
o
=
[[
e
.
i
,
o
,
""
]]),
o
.
locals
&&
(
e
.
exports
=
o
.
locals
);
t
(
"rjj0"
)(
"bf21a3b6"
,
o
,
!
1
,{})},
IcnI
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"NYxO"
),
r
=
t
(
"zSLJ"
),
i
=
{
setToken
:
function
(
e
,
n
){
e
.
token
=
n
,
r
.
a
.
set
(
"cc_token"
,
n
)},
setUserName
:
function
(
e
,
n
){
e
.
userName
=
n
,
r
.
a
.
set
(
"cc_user_name"
,
n
)},
setPermission
:
function
(
e
,
n
){
e
.
progressList
=
n
,
localStorage
.
setItem
(
"permission"
,
JSON
.
stringify
(
n
))},
setMenu
:
function
(
e
,
n
){
e
.
menuList
=
n
},
readonly
:
function
(
e
,
n
){
e
.
readonly
=
n
},
deletePermission
:
function
(
e
,
n
){
e
.
deletePermission
=
n
},
mainCanShow
:
function
(
e
){
e
.
mainLoad
=!
1
},
mainUnShow
:
function
(
e
){
e
.
mainLoad
=!
0
},
changeParentRouter
:
function
(
e
,
n
){
e
.
menuList
.
find
(
function
(
e
){
return
e
.
name
===
n
.
name
}).
routerName
=
n
.
to
.
name
},
progress
:
function
(
e
,
n
){
switch
(
n
.
type
){
case
"new"
:
e
.
progressList
.
push
({
num
:
0
,
id
:
n
.
id
});
break
;
case
"change"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
}).
num
=
n
.
num
;
break
;
case
"delete"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
})}}},
u
=
{
setToken
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setToken"
,
n
)},
setUserName
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setUserName"
,
n
)},
setProgress
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"progress"
,
n
)},
setPermission
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setPermission"
,
n
)},
setMenu
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setMenu"
,
n
)},
readonly
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"readonly"
,
n
)},
deletePermission
:
function
(
e
,
n
){
var
t
=
e
.
commit
;
console
.
log
(
n
),
t
(
"deletePermission"
,
n
)}};
o
.
default
.
use
(
a
.
a
);
n
.
a
=
new
a
.
a
.
Store
({
state
:{
show
:
!
1
,
userName
:
""
,
token
:
""
,
orderRefund
:
!
1
,
permission
:
!
1
,
readonly
:
!
0
,
deletePermission
:
!
1
,
mainLoad
:
!
0
,
menuList
:[],
menuType
:
!
1
,
nowTab
:
"first"
,
progressList
:[],
openedTab
:[{
value
:
"首页"
,
routerName
:
"first"
,
name
:
"first"
,
delNo
:
!
0
,
path
:
"/index"
}]},
mutations
:
i
,
actions
:
u
})},
LgZj
:
function
(
e
,
n
,
t
){(
e
.
exports
=
t
(
"FZ+f"
)(
!
0
)).
push
([
e
.
i
,
"
\n
#app {
\n
height: 100%;
\n
}
\n
html,body{
\n
height: 100%;
\n
margin: 0;
\n
padding: 0;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"D:/myproject/changchang-admin-new/src/App.vue"
],
names
:[],
mappings
:
";AACA;EACE,aAAa;CACd;AACD;IACI,aAAa;IACb,UAAU;IACV,WAAW;CACd"
,
file
:
"App.vue"
,
sourcesContent
:[
"
\n
#app {
\n
height: 100%;
\n
}
\n
html,body{
\n
height: 100%;
\n
margin: 0;
\n
padding: 0;
\n
}
\n
"
],
sourceRoot
:
""
}])},
NHnr
:
function
(
e
,
n
,
t
){
"use strict"
;
Object
.
defineProperty
(
n
,
"__esModule"
,{
value
:
!
0
});
var
o
=
t
(
"7+uW"
),
a
=
[{
name
:
""
,
value
:
"教研管理"
,
icon
:
"icon-material"
,
list
:[{
value
:
"教材列表"
,
routerName
:
"resources"
,
path
:
"/resources"
,
cover
:
"1-1"
,
router
:{
path
:
"/resources"
,
name
:
"resources"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
1
)]).
then
(
function
(){
var
n
=
[
t
(
"z5EG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"商品课程"
,
icon
:
"icon-shangpin1"
,
list
:[{
value
:
"课程列表"
,
routerName
:
"lesson"
,
path
:
"/lesson"
,
cover
:
"2-1"
,
router
:{
path
:
"/lesson"
,
name
:
"lesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
6
)]).
then
(
function
(){
var
n
=
[
t
(
"AbSL"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"商品列表"
,
routerName
:
"shop"
,
path
:
"/shop"
,
cover
:
"4-1"
,
router
:{
path
:
"/shop"
,
name
:
"shop"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
22
)]).
then
(
function
(){
var
n
=
[
t
(
"1djJ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"期数管理"
,
icon
:
"icon-kecheng"
,
list
:[{
value
:
"期数列表"
,
routerName
:
"periods"
,
path
:
"/periods"
,
cover
:
"2-2"
,
router
:{
path
:
"/periods"
,
name
:
"periods"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
9
)]).
then
(
function
(){
var
n
=
[
t
(
"ayGs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"班级列表"
,
routerName
:
"class"
,
path
:
"/class"
,
cover
:
"2-3"
,
router
:{
path
:
"/class"
,
name
:
"class"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
5
)]).
then
(
function
(){
var
n
=
[
t
(
"OX9A"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"不上课日期"
,
routerName
:
"noLesson"
,
path
:
"/noLesson"
,
cover
:
"2-4"
,
router
:{
path
:
"/noLesson"
,
name
:
"noLesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
17
)]).
then
(
function
(){
var
n
=
[
t
(
"sg/1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"人员管理"
,
icon
:
"icon-laoshi"
,
list
:[{
value
:
"教师列表"
,
routerName
:
"teacher"
,
path
:
"/teacher"
,
cover
:
"3-1"
,
router
:{
path
:
"/teacher"
,
name
:
"teacher"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
12
)]).
then
(
function
(){
var
n
=
[
t
(
"Y0Vi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"用户列表"
,
routerName
:
"user"
,
path
:
"/user"
,
cover
:
"3-2"
,
router
:{
path
:
"/user"
,
name
:
"user"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
7
)]).
then
(
function
(){
var
n
=
[
t
(
"jFLA"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"订单管理"
,
icon
:
"icon-dingdan"
,
list
:[{
value
:
"订单列表"
,
routerName
:
"order"
,
path
:
"/order"
,
cover
:
"5-1"
,
router
:{
path
:
"/order"
,
name
:
"order"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
2
)]).
then
(
function
(){
var
n
=
[
t
(
"2qmY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"退款列表"
,
routerName
:
"refund"
,
path
:
"/refund"
,
cover
:
"5-2"
,
router
:{
path
:
"/refund"
,
name
:
"refund"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
21
)]).
then
(
function
(){
var
n
=
[
t
(
"89rD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"提现列表"
,
routerName
:
"putForward"
,
path
:
"/putForward"
,
cover
:
"5-3"
,
router
:{
path
:
"/putForward"
,
name
:
"putForward"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
27
)]).
then
(
function
(){
var
n
=
[
t
(
"F5pf"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"发货管理"
,
routerName
:
"consignment"
,
path
:
"/consignment"
,
cover
:
"5-4"
,
router
:{
path
:
"/consignment"
,
name
:
"consignment"
,
component
:
function
(
e
){
return
t
.
e
(
29
).
then
(
function
(){
var
n
=
[
t
(
"usUK"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"实物管理"
,
icon
:
"icon-shu"
,
list
:[{
value
:
"单品列表"
,
routerName
:
"single"
,
path
:
"/single"
,
cover
:
"6-1"
,
router
:{
path
:
"/single"
,
name
:
"single"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
11
)]).
then
(
function
(){
var
n
=
[
t
(
"B31M"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"盒子列表"
,
routerName
:
"box"
,
path
:
"/box"
,
cover
:
"6-2"
,
router
:{
path
:
"/box"
,
name
:
"box"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
8
)]).
then
(
function
(){
var
n
=
[
t
(
"+vCD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"公众号"
,
icon
:
"icon-ai-weixin"
,
list
:[{
value
:
"自动回复"
,
routerName
:
"focusReply"
,
path
:
"/focusReply"
,
cover
:
"7-1"
,
router
:{
path
:
"/focusReply"
,
name
:
"focusReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
10
)]).
then
(
function
(){
var
n
=
[
t
(
"CK6D"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"关键词回复"
,
routerName
:
"autoReply"
,
path
:
"/autoReply"
,
cover
:
"7-2"
,
router
:{
path
:
"/autoReply"
,
name
:
"autoReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
20
)]).
then
(
function
(){
var
n
=
[
t
(
"65NY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"公众号菜单"
,
routerName
:
"weChat"
,
path
:
"/weChat"
,
cover
:
"7-3"
,
router
:{
path
:
"/weChat"
,
name
:
"weChat"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
16
)]).
then
(
function
(){
var
n
=
[
t
(
"q5av"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"素材管理"
,
routerName
:
"weChatResource"
,
path
:
"/weChatResource"
,
cover
:
"7-4"
,
router
:{
path
:
"/weChatResource"
,
name
:
"weChatResource"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
18
)]).
then
(
function
(){
var
n
=
[
t
(
"Xhqp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"Banner管理"
,
routerName
:
"banner"
,
path
:
"/banner"
,
cover
:
"7-5"
,
router
:{
path
:
"/banner"
,
name
:
"banner"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
14
)]).
then
(
function
(){
var
n
=
[
t
(
"CGL6"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"系统管理"
,
icon
:
"icon-shezhi"
,
list
:[{
value
:
"账号管理"
,
routerName
:
"admin"
,
path
:
"/admin"
,
cover
:
"8-1"
,
router
:{
path
:
"/admin"
,
name
:
"admin"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
25
)]).
then
(
function
(){
var
n
=
[
t
(
"+jTk"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"角色管理"
,
routerName
:
"role"
,
path
:
"/role"
,
cover
:
"8-2"
,
router
:{
path
:
"/role"
,
name
:
"role"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
26
)]).
then
(
function
(){
var
n
=
[
t
(
"Vt1u"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"菜单管理"
,
routerName
:
"menu"
,
path
:
"/menu"
,
cover
:
"8-3"
,
router
:{
path
:
"/menu"
,
name
:
"menu"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
24
)]).
then
(
function
(){
var
n
=
[
t
(
"aTXs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"系统配置"
,
routerName
:
"sysConfig"
,
path
:
"/sysConfig"
,
cover
:
"8-4"
,
router
:{
path
:
"/sysConfig"
,
name
:
"sysConfig"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
19
)]).
then
(
function
(){
var
n
=
[
t
(
"gaNG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"操作日志"
,
routerName
:
"adminLog"
,
path
:
"/adminLog"
,
cover
:
"8-5"
,
router
:{
path
:
"/adminLog"
,
name
:
"adminLog"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
30
)]).
then
(
function
(){
var
n
=
[
t
(
"WZgi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]}],
r
=
{
name
:
"App"
,
data
:
function
(){
return
{}},
mounted
:
function
(){
var
e
=
this
;
if
(
window
.
location
.
href
.
indexOf
(
"login"
)
<
0
){
var
n
=
this
.
$store
.
state
.
progressList
,
t
=
[];
this
.
$router
.
options
.
routes
[
0
].
children
=
[];
var
o
=
n
.
find
(
function
(
e
){
return
"5-1"
===
e
.
cover
});
o
&&
o
.
refund
&&
(
this
.
$store
.
state
.
orderRefund
=!
0
),
a
.
forEach
(
function
(
o
){
var
a
=!
1
,
r
=
[];
o
.
list
.
forEach
(
function
(
t
){
var
o
=
n
.
find
(
function
(
e
){
return
e
.
cover
===
t
.
cover
});
o
&&
(
t
.
router
.
meta
=
{},
t
.
router
.
meta
.
readonly
=
o
.
readonly
,
t
.
router
.
meta
.
delete
=!!
o
.
delete
,
r
.
push
(
t
),
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
t
.
router
),
a
=!
0
)}),
a
&&
(
o
.
list
=
r
,
t
.
push
(
o
))}),
this
.
$router
.
addRoutes
([
this
.
$router
.
options
.
routes
[
0
]]),
this
.
$store
.
dispatch
(
"setMenu"
,
t
)}}},
i
=
function
(){
var
e
=
this
.
$createElement
,
n
=
this
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
attrs
:{
id
:
"app"
}},[
n
(
"router-view"
)],
1
)};
i
.
_withStripped
=!
0
;
var
u
=
{
render
:
i
,
staticRenderFns
:[]},
c
=
u
;
var
s
=!
1
;
var
l
=
t
(
"VU/8"
)(
r
,
c
,
!
1
,
function
(
e
){
s
||
t
(
"Cwy8"
)},
null
,
null
);
l
.
options
.
__file
=
"src
\\
App.vue"
;
var
p
=
l
.
exports
,
h
=
t
(
"YaEn"
),
m
=
t
(
"zL8q"
),
d
=
t
.
n
(
m
),
f
=
(
t
(
"tvR6"
),
t
(
"IcnI"
));
o
.
default
.
use
(
d
.
a
),
o
.
default
.
config
.
productionTip
=!
1
,
new
o
.
default
({
el
:
"#app"
,
store
:
f
.
a
,
router
:
h
.
a
,
components
:{
App
:
p
},
template
:
"<App/>"
})},
YaEn
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"IcnI"
),
r
=
t
(
"/ocq"
),
i
=
t
(
"zSLJ"
);
o
.
default
.
use
(
r
.
a
);
var
u
=
new
r
.
a
({
routes
:[{
path
:
"/"
,
name
:
"index"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
3
)]).
then
(
function
(){
var
n
=
[
t
(
"jHcp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
redirect
:{
name
:
"first"
},
children
:[{
path
:
""
,
name
:
"first"
,
component
:
function
(
e
){
return
t
.
e
(
4
).
then
(
function
(){
var
n
=
[
t
(
"sJm1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/userDetail/:id"
,
name
:
"userDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
13
)]).
then
(
function
(){
var
n
=
[
t
(
"9PRC"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/teacher/:id"
,
name
:
"teacherDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
15
)]).
then
(
function
(){
var
n
=
[
t
(
"hFUZ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}]},{
path
:
"/login"
,
name
:
"login"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
23
)]).
then
(
function
(){
var
n
=
[
t
(
"0HId"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}},{
path
:
"/upload"
,
name
:
"upload"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
28
)]).
then
(
function
(){
var
n
=
[
t
(
"iPJD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}}]});
u
.
beforeEach
(
function
(
e
,
n
,
t
){
if
(
a
.
a
.
commit
(
"mainCanShow"
),
i
.
a
.
get
(
"cc_token"
)
&&
(
a
.
a
.
dispatch
(
"setToken"
,
i
.
a
.
get
(
"cc_token"
)),
a
.
a
.
dispatch
(
"setPermission"
,
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
))),
null
!==
i
.
a
.
get
(
"cc_user_name"
)
&&
a
.
a
.
dispatch
(
"setUserName"
,
i
.
a
.
get
(
"cc_user_name"
))),
a
.
a
.
state
.
nowTab
=
e
.
name
,
e
.
matched
.
length
>
1
&&
"first"
!==
e
.
name
){
for
(
var
o
=
void
0
,
r
=
0
;
r
<
a
.
a
.
state
.
menuList
.
length
;
r
++
)
for
(
var
u
=
a
.
a
.
state
.
menuList
[
r
],
c
=
0
;
c
<
u
.
list
.
length
;
c
++
){
var
s
=
u
.
list
[
c
];
s
.
path
===
e
.
path
&&
(
o
=
s
)}
a
.
a
.
state
.
openedTab
.
indexOf
(
o
)
<
0
&&
a
.
a
.
state
.
openedTab
.
push
(
o
)}
if
(
e
.
meta
.
readonly
?
a
.
a
.
dispatch
(
"readonly"
,
!
0
):
a
.
a
.
dispatch
(
"readonly"
,
!
1
),
"userDetail"
===
e
.
name
){
var
l
=
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
)).
find
(
function
(
e
){
return
"3-2"
===
e
.
cover
}).
readonly
;
a
.
a
.
dispatch
(
"readonly"
,
l
)}
e
.
meta
.
delete
?
a
.
a
.
dispatch
(
"deletePermission"
,
!
0
):
a
.
a
.
dispatch
(
"deletePermission"
,
!
1
),
e
.
matched
.
some
(
function
(
e
){
return
!
0
!==
e
.
meta
.
skip_auth
})
&&!
a
.
a
.
state
.
token
?
t
({
path
:
"/login"
}):
t
()}),
u
.
onError
(
function
(
e
){
var
n
=
e
.
message
.
match
(
/Loading chunk
(\d)
+ failed/g
),
t
=
u
.
history
.
pending
.
fullPath
;
n
&&
u
.
replace
(
t
)}),
n
.
a
=
u
},
tvR6
:
function
(
e
,
n
){},
zSLJ
:
function
(
e
,
n
,
t
){
"use strict"
;
n
.
a
=
{
set
:
function
(
e
,
n
,
t
){
var
o
=
new
Date
;
o
.
setTime
(
o
.
getTime
()
+
864
e5
*
t
),
window
.
document
.
cookie
=
e
+
"="
+
n
+
";path=/;expires="
+
o
.
toGMTString
()},
get
:
function
(
e
){
var
n
=
window
.
document
.
cookie
.
match
(
"(^|;) ?"
+
e
+
"=([^;]*)(;|$)"
);
return
n
?
n
[
2
]:
null
},
delete
:
function
(
e
){
this
.
set
(
e
,
""
,
-
1
)}}}},[
"NHnr"
]);
\ No newline at end of file
dev/static/js/manifest.da
764d5242593fab54f2
.js
→
dev/static/js/manifest.da
fc75b6dd2eb1958bd0
.js
View file @
1a8add53
!
function
(
e
){
var
a
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
c
,
t
,
f
){
for
(
var
o
,
d
,
b
,
i
=
0
,
u
=
[];
i
<
c
.
length
;
i
++
)
d
=
c
[
i
],
n
[
d
]
&&
u
.
push
(
n
[
d
][
0
]),
n
[
d
]
=
0
;
for
(
o
in
t
)
Object
.
prototype
.
hasOwnProperty
.
call
(
t
,
o
)
&&
(
e
[
o
]
=
t
[
o
]);
for
(
a
&&
a
(
c
,
t
,
f
);
u
.
length
;)
u
.
shift
()();
if
(
f
)
for
(
i
=
0
;
i
<
f
.
length
;
i
++
)
b
=
r
(
r
.
s
=
f
[
i
]);
return
b
};
var
c
=
{},
n
=
{
33
:
0
};
function
r
(
a
){
if
(
c
[
a
])
return
c
[
a
].
exports
;
var
n
=
c
[
a
]
=
{
i
:
a
,
l
:
!
1
,
exports
:{}};
return
e
[
a
].
call
(
n
.
exports
,
n
,
n
.
exports
,
r
),
n
.
l
=!
0
,
n
.
exports
}
r
.
e
=
function
(
e
){
var
a
=
n
[
e
];
if
(
0
===
a
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
a
)
return
a
[
2
];
var
c
=
new
Promise
(
function
(
c
,
r
){
a
=
n
[
e
]
=
[
c
,
r
]});
a
[
2
]
=
c
;
var
t
=
document
.
getElementsByTagName
(
"head"
)[
0
],
f
=
document
.
createElement
(
"script"
);
f
.
type
=
"text/javascript"
,
f
.
charset
=
"utf-8"
,
f
.
async
=!
0
,
f
.
timeout
=
12
e4
,
r
.
nc
&&
f
.
setAttribute
(
"nonce"
,
r
.
nc
),
f
.
src
=
r
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"5ca042217d5b9cb7d920"
,
1
:
"1871934ca7b3a77934e5"
,
2
:
"3faf640d37e133ae20de"
,
3
:
"9894ce6b3759fc4267f2"
,
4
:
"ca9711fc473f2d5d51fd"
,
5
:
"3620b1c764c9330a538f"
,
6
:
"5513adfbecc524f15956"
,
7
:
"08132a3517d8ac06a670"
,
8
:
"ba6880baff2639ad9544"
,
9
:
"6185b5dc1cbab93cdbf3"
,
10
:
"8cb9adcd5aa0f85d8839"
,
11
:
"1c8ca50a73415bf27def"
,
12
:
"f6490be245f90afabc6f"
,
13
:
"d3d020f7ae5dcb8756fd"
,
14
:
"4881aaeec5577c553970"
,
15
:
"e2f1692c4d5ce3f12106"
,
16
:
"129c4f08663c78115241"
,
17
:
"f8aba2b0c2853b11ea80"
,
18
:
"890473049161348fce72"
,
19
:
"3d106dc8f8d7aad659f5"
,
20
:
"32d4eeaf129a9e03e625"
,
21
:
"74a439bf1a0461033dab"
,
22
:
"34ce9d13a07b04c5028e"
,
23
:
"b89d8a468eee89413544"
,
24
:
"67013d6ba2ad456617d8"
,
25
:
"98e6c04d12b219478813"
,
26
:
"6cd43dcb6c7f4ffc4921"
,
27
:
"75fff564b6e3c5032daf"
,
28
:
"51ae89493bf8e2545b84"
,
29
:
"2ab4a390bf4296cec1a1"
,
30
:
"a4cab5f9b5d37773496c"
}[
e
]
+
".js"
;
var
o
=
setTimeout
(
d
,
12
e4
);
function
d
(){
f
.
onerror
=
f
.
onload
=
null
,
clearTimeout
(
o
);
var
a
=
n
[
e
];
0
!==
a
&&
(
a
&&
a
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
n
[
e
]
=
void
0
)}
return
f
.
onerror
=
f
.
onload
=
d
,
t
.
appendChild
(
f
),
c
},
r
.
m
=
e
,
r
.
c
=
c
,
r
.
d
=
function
(
e
,
a
,
c
){
r
.
o
(
e
,
a
)
||
Object
.
defineProperty
(
e
,
a
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
c
})},
r
.
n
=
function
(
e
){
var
a
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
r
.
d
(
a
,
"a"
,
a
),
a
},
r
.
o
=
function
(
e
,
a
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
a
)},
r
.
p
=
"/"
,
r
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
!
function
(
e
){
var
a
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
c
,
r
,
t
){
for
(
var
o
,
d
,
b
,
i
=
0
,
u
=
[];
i
<
c
.
length
;
i
++
)
d
=
c
[
i
],
f
[
d
]
&&
u
.
push
(
f
[
d
][
0
]),
f
[
d
]
=
0
;
for
(
o
in
r
)
Object
.
prototype
.
hasOwnProperty
.
call
(
r
,
o
)
&&
(
e
[
o
]
=
r
[
o
]);
for
(
a
&&
a
(
c
,
r
,
t
);
u
.
length
;)
u
.
shift
()();
if
(
t
)
for
(
i
=
0
;
i
<
t
.
length
;
i
++
)
b
=
n
(
n
.
s
=
t
[
i
]);
return
b
};
var
c
=
{},
f
=
{
33
:
0
};
function
n
(
a
){
if
(
c
[
a
])
return
c
[
a
].
exports
;
var
f
=
c
[
a
]
=
{
i
:
a
,
l
:
!
1
,
exports
:{}};
return
e
[
a
].
call
(
f
.
exports
,
f
,
f
.
exports
,
n
),
f
.
l
=!
0
,
f
.
exports
}
n
.
e
=
function
(
e
){
var
a
=
f
[
e
];
if
(
0
===
a
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
a
)
return
a
[
2
];
var
c
=
new
Promise
(
function
(
c
,
n
){
a
=
f
[
e
]
=
[
c
,
n
]});
a
[
2
]
=
c
;
var
r
=
document
.
getElementsByTagName
(
"head"
)[
0
],
t
=
document
.
createElement
(
"script"
);
t
.
type
=
"text/javascript"
,
t
.
charset
=
"utf-8"
,
t
.
async
=!
0
,
t
.
timeout
=
12
e4
,
n
.
nc
&&
t
.
setAttribute
(
"nonce"
,
n
.
nc
),
t
.
src
=
n
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"5ca042217d5b9cb7d920"
,
1
:
"1871934ca7b3a77934e5"
,
2
:
"3faf640d37e133ae20de"
,
3
:
"9894ce6b3759fc4267f2"
,
4
:
"ca9711fc473f2d5d51fd"
,
5
:
"0784f1f07b4fa27fcd36"
,
6
:
"5513adfbecc524f15956"
,
7
:
"08132a3517d8ac06a670"
,
8
:
"ba6880baff2639ad9544"
,
9
:
"6185b5dc1cbab93cdbf3"
,
10
:
"8cb9adcd5aa0f85d8839"
,
11
:
"1c8ca50a73415bf27def"
,
12
:
"f6490be245f90afabc6f"
,
13
:
"d3d020f7ae5dcb8756fd"
,
14
:
"4881aaeec5577c553970"
,
15
:
"e2f1692c4d5ce3f12106"
,
16
:
"129c4f08663c78115241"
,
17
:
"f8aba2b0c2853b11ea80"
,
18
:
"890473049161348fce72"
,
19
:
"3d106dc8f8d7aad659f5"
,
20
:
"32d4eeaf129a9e03e625"
,
21
:
"74a439bf1a0461033dab"
,
22
:
"34ce9d13a07b04c5028e"
,
23
:
"b89d8a468eee89413544"
,
24
:
"67013d6ba2ad456617d8"
,
25
:
"98e6c04d12b219478813"
,
26
:
"6cd43dcb6c7f4ffc4921"
,
27
:
"75fff564b6e3c5032daf"
,
28
:
"51ae89493bf8e2545b84"
,
29
:
"2ab4a390bf4296cec1a1"
,
30
:
"a4cab5f9b5d37773496c"
}[
e
]
+
".js"
;
var
o
=
setTimeout
(
d
,
12
e4
);
function
d
(){
t
.
onerror
=
t
.
onload
=
null
,
clearTimeout
(
o
);
var
a
=
f
[
e
];
0
!==
a
&&
(
a
&&
a
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
f
[
e
]
=
void
0
)}
return
t
.
onerror
=
t
.
onload
=
d
,
r
.
appendChild
(
t
),
c
},
n
.
m
=
e
,
n
.
c
=
c
,
n
.
d
=
function
(
e
,
a
,
c
){
n
.
o
(
e
,
a
)
||
Object
.
defineProperty
(
e
,
a
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
c
})},
n
.
n
=
function
(
e
){
var
a
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
n
.
d
(
a
,
"a"
,
a
),
a
},
n
.
o
=
function
(
e
,
a
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
a
)},
n
.
p
=
"/"
,
n
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
dist/index.html
View file @
1a8add53
<!DOCTYPE html>
<html><head><meta
charset=
utf-8
><meta
name=
viewport
content=
"width=device-width,initial-scale=1"
><meta
name=
referrer
content=
never
><link
rel=
stylesheet
href=
https://at.alicdn.com/t/font_746649_7dsnjecwkpg.css
><title>
唱唱启蒙-后台
</title><link
href=
/static/css/app.
67ef6856c0d5455a5f9ece34f65b2e13.css
rel=
stylesheet
></head><body><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.5df765c7b45b5d3d51a3.js
></script><script
type=
text/javascript
src=
/static/js/vendor.870830d4f06345c43c87.js
></script><script
type=
text/javascript
src=
/static/js/app.db77a8c2894f9648f27b
.js
></script></body><script>
let
el
=
document
.
getElementsByTagName
(
"script"
);
<!DOCTYPE html>
<html><head><meta
charset=
utf-8
><meta
name=
viewport
content=
"width=device-width,initial-scale=1"
><meta
name=
referrer
content=
never
><link
rel=
stylesheet
href=
https://at.alicdn.com/t/font_746649_7dsnjecwkpg.css
><title>
唱唱启蒙-后台
</title><link
href=
/static/css/app.
c0ccfe4f9ac370bfc34d293c1aa36530.css
rel=
stylesheet
></head><body><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.0703230a961ac91d905d.js
></script><script
type=
text/javascript
src=
/static/js/vendor.870830d4f06345c43c87.js
></script><script
type=
text/javascript
src=
/static/js/app.9f92cfe99a9e477c7436
.js
></script></body><script>
let
el
=
document
.
getElementsByTagName
(
"script"
);
el
.
onerror
=
function
(
a
,
b
,
c
){
console
.
log
(
'error:'
,
a
,
b
,
c
);
};
...
...
dist/static/css/app.
67ef6856c0d5455a5f9ece34f65b2e13
.css
→
dist/static/css/app.
c0ccfe4f9ac370bfc34d293c1aa36530
.css
View file @
1a8add53
This source diff could not be displayed because it is too large. You can
view the blob
instead.
dist/static/js/17.
91f33c4dc4659c49f638
.js
→
dist/static/js/17.
5b6dad580b9206038816
.js
View file @
1a8add53
webpackJsonp
([
17
],{
"1djJ"
:
function
(
e
,
t
,
s
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
o
=
s
(
"CCn6"
),
i
=
s
(
"+TkF"
),
l
=
s
(
"kmJW"
),
a
=
{
name
:
"dialogObj"
,
props
:[
"dialogObj"
],
data
:
function
(){
return
{
loading
:
!
0
,
form
:{
name
:
""
,
goods_type
:
1
,
goods_desc
:{
desc
:
""
,
img
:[]},
course_id
:
""
,
course_type
:
0
,
watch_num
:
""
,
duration_num
:
0
,
original_price
:
""
,
current_price
:
""
,
is_real
:
0
,
is_auth_user
:
0
,
share_desc
:{
title
:
""
,
content
:
""
,
img
:[]},
desc
:{
detail
:
""
,
qa
:
""
,
customer_service
:[]}},
lessonList
:[]}},
methods
:{
sub
:
function
(){
var
e
=
this
,
t
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
form
)
+
""
);
switch
(
t
.
original_price
=
(
100
*
t
.
original_price
).
toFixed
(
0
),
t
.
current_price
=
(
100
*
t
.
current_price
).
toFixed
(
0
),
t
.
goods_desc
=
JSON
.
stringify
(
t
.
goods_desc
),
t
.
desc
=
JSON
.
stringify
(
t
.
desc
),
t
.
share_desc
=
JSON
.
stringify
(
t
.
share_desc
),
this
.
dialogObj
.
type
){
case
1
:
Object
(
o
.
O
)(
this
.
dialogObj
.
id
,
t
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
$emit
(
"reflash"
),
e
.
dialogObj
.
show
=!
1
});
break
;
case
0
:
Object
(
o
.
i
)(
t
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"新增成功!"
}),
e
.
$emit
(
"reflash"
),
e
.
dialogObj
.
show
=!
1
})}},
uploadFileMain
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
goods_desc
.
img
?
t
.
form
.
goods_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
goods_desc
.
img
=
[],
t
.
form
.
goods_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
uploadFileMainShare
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
share_desc
.
img
?
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
share_desc
.
img
=
[],
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
uploadFileMainService
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
desc
.
customer_service
?
t
.
form
.
desc
.
customer_service
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
desc
.
customer_service
=
[],
t
.
form
.
desc
.
customer_service
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
uploadFileShare
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
share_desc
.
img
?
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
share_desc
.
img
=
[],
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
initDialog
:
function
(){
var
e
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
this
.
loading
=!
1
,
this
.
form
=
{
name
:
""
,
goods_type
:
1
,
goods_desc
:{
desc
:
""
,
img
:[]},
course_id
:
""
,
course_type
:
0
,
watch_num
:
""
,
duration_num
:
0
,
original_price
:
""
,
current_price
:
""
,
is_real
:
0
,
is_auth_user
:
0
,
share_desc
:{
title
:
""
,
content
:
""
,
img
:[]},
desc
:{
detail
:
""
,
qa
:
""
,
customer_service
:[]}},
this
.
getLessonList
();
break
;
case
1
:
case
2
:
Object
(
o
.
_12
)(
this
.
dialogObj
.
id
).
then
(
function
(
t
){
e
.
loading
=!
1
,
e
.
form
=
{
name
:
t
.
name
,
goods_type
:
t
.
goods_type
,
goods_desc
:
JSON
.
parse
(
t
.
goods_desc
),
course_id
:
t
.
course_id
,
course_type
:
t
.
course_type
,
watch_num
:
t
.
watch_num
,
duration_num
:
t
.
duration_num
,
original_price
:
t
.
original_price
/
100
,
current_price
:
t
.
current_price
/
100
,
is_real
:
t
.
is_real
,
is_auth_user
:
t
.
is_auth_user
,
share_desc
:
JSON
.
parse
(
t
.
share_desc
),
desc
:
JSON
.
parse
(
t
.
desc
),
invite_earnings
:
t
.
invite_earnings
,
is_auth_teacher
:
t
.
is_auth_teacher
},
e
.
getLessonList
()});
break
;
case
3
:
this
.
title
=
"编辑"
,
this
.
show
=
this
.
dialogObj
.
show
,
this
.
id
=
this
.
dialogObj
.
id
,
this
.
type
=
2
}},
changeLessonType
:
function
(){
this
.
getLessonList
()},
getLessonList
:
function
(){
var
e
=
this
;
Object
(
o
.
_14
)({
type
:
this
.
form
.
course_type
}).
then
(
function
(
t
){
e
.
lessonList
=
t
.
list
})}},
watch
:{
dialogObj
:{
handler
:
function
(){
this
.
loading
=!
0
,
this
.
initDialog
()},
deep
:
!
0
},
show
:
function
(
e
){
this
.
$emit
(
"changeShow"
,
e
)}}},
n
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
attrs
:{
title
:
e
.
dialogObj
.
title
,
center
:
""
,
"append-to-body"
:
""
,
visible
:
e
.
dialogObj
.
show
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
dialogObj
,
"show"
,
t
)}}},[
s
(
"div"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
e
.
loading
,
expression
:
"loading"
}]},[
s
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
e
.
form
,
"label-width"
:
"100px"
,
disabled
:
2
===
e
.
dialogObj
.
type
}},[
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品名称"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"name"
,
t
)},
expression
:
"form.name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品描述"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
goods_desc
.
desc
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
goods_desc
,
"desc"
,
t
)},
expression
:
"form.goods_desc.desc"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"课程类型"
}},[
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
on
:{
change
:
function
(
t
){
e
.
changeLessonType
()}},
model
:{
value
:
e
.
form
.
course_type
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"course_type"
,
t
)},
expression
:
"form.course_type"
}},[
s
(
"el-option"
,{
attrs
:{
label
:
"日课"
,
value
:
1
}}),
e
.
_v
(
" "
),
s
(
"el-option"
,{
attrs
:{
label
:
"月课"
,
value
:
0
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"课程"
}},[
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
form
.
course_id
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"course_id"
,
t
)},
expression
:
"form.course_id"
}},
e
.
_l
(
e
.
lessonList
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
id
,
attrs
:{
label
:
e
.
title
,
value
:
e
.
id
}})}))],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"观看时长(节)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"课时数"
},
model
:{
value
:
e
.
form
.
watch_num
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"watch_num"
,
t
)},
expression
:
"form.watch_num"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"续看时长(天)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"看课天数"
},
model
:{
value
:
e
.
form
.
duration_num
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"duration_num"
,
t
)},
expression
:
"form.duration_num"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"主图(750*600)"
}},[
s
(
"el-upload"
,{
staticClass
:
"upload-demo"
,
attrs
:{
"list-type"
:
"picture-card"
,
action
:
"/api/public/upload"
,
"http-request"
:
e
.
uploadFileMain
,
"file-list"
:
e
.
form
.
goods_desc
.
img
}},[
s
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"客服(200*200)"
}},[
s
(
"el-upload"
,{
staticClass
:
"upload-demo"
,
class
:
e
.
form
.
desc
.
customer_service
&&
e
.
form
.
desc
.
customer_service
.
length
>
0
?
"uploadService"
:
""
,
attrs
:{
"list-type"
:
"picture-card"
,
action
:
"/api/public/upload"
,
limit
:
1
,
"http-request"
:
e
.
uploadFileMainService
,
"file-list"
:
e
.
form
.
desc
.
customer_service
}},[
s
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品类型"
}},[
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
form
.
goods_type
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"goods_type"
,
t
)},
expression
:
"form.goods_type"
}},[
s
(
"el-option"
,{
attrs
:{
label
:
"普通商品"
,
value
:
1
}}),
e
.
_v
(
" "
),
s
(
"el-option"
,{
attrs
:{
label
:
"团购商品"
,
value
:
2
}})],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
1
===
e
.
form
.
goods_type
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"推荐奖金(元)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"推荐奖金"
},
model
:{
value
:
e
.
form
.
invite_earnings
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"invite_earnings"
,
t
)},
expression
:
"form.invite_earnings"
}})],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"是否配置实物"
}},[
s
(
"el-switch"
,{
attrs
:{
"active-value"
:
1
,
"inactive-value"
:
0
},
model
:{
value
:
e
.
form
.
is_real
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"is_real"
,
t
)},
expression
:
"form.is_real"
}}),
e
.
_v
(
" "
),
s
(
"span"
,{
staticStyle
:{
"font-size"
:
"12px"
}},[
e
.
_v
(
"打开后提示用户填写具体住址"
)])],
1
),
e
.
_v
(
" "
),
1
===
e
.
form
.
goods_type
?
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"是否允许用户推广"
,
"label-width"
:
"200"
}},[
s
(
"el-switch"
,{
attrs
:{
"active-value"
:
1
,
"inactive-value"
:
0
},
model
:{
value
:
e
.
form
.
is_auth_user
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"is_auth_user"
,
t
)},
expression
:
"form.is_auth_user"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"是否允许老师推广"
,
"label-width"
:
"200"
}},[
s
(
"el-switch"
,{
attrs
:{
"active-value"
:
1
,
"inactive-value"
:
0
},
model
:{
value
:
e
.
form
.
is_auth_teacher
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"is_auth_teacher"
,
t
)},
expression
:
"form.is_auth_teacher"
}})],
1
)],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
1
===
e
.
form
.
goods_type
?
"原价(元)"
:
"单买价格(元)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"原价"
},
model
:{
value
:
e
.
form
.
original_price
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"original_price"
,
t
)},
expression
:
"form.original_price"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
1
===
e
.
form
.
goods_type
?
"现价(元)"
:
"拼团价格(元)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"现价"
},
model
:{
value
:
e
.
form
.
current_price
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"current_price"
,
t
)},
expression
:
"form.current_price"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
2
===
e
.
form
.
goods_type
?
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"成团人数(人)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"成团人数"
},
model
:{
value
:
e
.
form
.
desc
.
group_number
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"group_number"
,
t
)},
expression
:
"form.desc.group_number"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"团购失效时间(小时)"
,
"label-width"
:
"136"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"团购失效时间"
},
model
:{
value
:
e
.
form
.
desc
.
group_continue
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"group_continue"
,
t
)},
expression
:
"form.desc.group_continue"
}})],
1
)],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"分享标题"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
share_desc
.
title
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
share_desc
,
"title"
,
t
)},
expression
:
"form.share_desc.title"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"分享内容"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
share_desc
.
content
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
share_desc
,
"content"
,
t
)},
expression
:
"form.share_desc.content"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"分享主图(300*300)"
}},[
s
(
"el-upload"
,{
attrs
:{
"list-type"
:
"picture-card"
,
action
:
"/api/public/upload"
,
limit
:
1
,
"file-list"
:
e
.
form
.
share_desc
.
img
,
"http-request"
:
e
.
uploadFileMainShare
}},[
s
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
24
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品详情"
}},[
s
(
"el-input"
,{
attrs
:{
type
:
"textarea"
,
rows
:
25
},
model
:{
value
:
e
.
form
.
desc
.
detail
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"detail"
,
t
)},
expression
:
"form.desc.detail"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
24
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"购买须知"
}},[
s
(
"el-input"
,{
attrs
:{
type
:
"textarea"
,
rows
:
25
},
model
:{
value
:
e
.
form
.
desc
.
qa
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"qa"
,
t
)},
expression
:
"form.desc.qa"
}})],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
2
!==
e
.
dialogObj
.
type
?
s
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
dialogObj
.
show
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
e
.
sub
}},[
e
.
_v
(
"确 定"
)])],
1
):
e
.
_e
()],
1
)])},
staticRenderFns
:[]};
var
r
=
s
(
"VU/8"
)(
a
,
n
,
!
1
,
function
(
e
){
s
(
"doOp"
)},
"data-v-e0a1e4e0"
,
null
).
exports
,
c
=
{
name
:
"index"
,
data
:
function
(){
return
{
searchFrom
:{
name
:
""
},
userList
:[],
total
:
0
,
nowPage
:
1
,
limit
:
10
,
chooseDialog
:{
show
:
!
1
,
title
:
""
,
id
:
""
,
form
:{
value
:
""
,
list
:[]},
type
:
0
},
dialogObj
:{
type
:
0
,
show
:
!
1
,
title
:
""
,
id
:
""
}}},
components
:{
page
:
l
.
a
,
dialogCom
:
r
},
filters
:{
isOrNot
:
function
(
e
){
return
i
.
h
[
e
]},
goodsType
:
function
(
e
){
return
i
.
e
[
e
]},
lessonType
:
function
(
e
){
return
i
.
i
[
e
]},
goodsStatus
:
function
(
e
){
return
i
.
d
[
e
]}},
mounted
:
function
(){
this
.
getUser
()},
methods
:{
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
getUser
()},
copyShop
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将复制该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
r
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"复制成功!"
})}),
t
.
getUser
()})},
copyUrl
:
function
(
e
){
var
t
=
"https://wechat.changchangenglish.com/#/buyDetail?shopId="
+
e
,
s
=
document
.
createElement
(
"input"
);
s
.
value
=
t
,
document
.
body
.
appendChild
(
s
),
s
.
select
(),
document
.
execCommand
(
"Copy"
),
this
.
$message
({
message
:
"已成功复制到剪切板"
,
type
:
"success"
}),
s
.
remove
()},
dialogSub
:
function
(){
var
e
=
this
;
switch
(
this
.
chooseDialog
.
type
){
case
0
:
Object
(
o
.
o
)(
this
.
chooseDialog
.
id
,
this
.
chooseDialog
.
form
.
value
).
then
(
function
(
t
){
e
.
$message
({
message
:
"绑定成功"
,
type
:
"success"
}),
e
.
chooseDialog
.
show
=!
1
}),
this
.
getUser
();
break
;
case
1
:
var
t
=
{
conflict_goods_ids
:
this
.
chooseDialog
.
form
.
list
.
toString
()};
Object
(
o
.
q
)(
this
.
chooseDialog
.
id
,
t
).
then
(
function
(
t
){
e
.
$message
({
message
:
"设置成功"
,
type
:
"success"
}),
e
.
chooseDialog
.
show
=!
1
,
e
.
getUser
()})}},
getUser
:
function
(){
var
e
=
this
,
t
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
searchFrom
.
name
&&
(
t
.
name
=
this
.
searchFrom
.
name
),
Object
(
o
.
_13
)(
t
).
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
""
===
e
.
conflict_goods_ids
?
e
.
conflict_goods_ids
=
[]:
e
.
conflict_goods_ids
=
e
.
conflict_goods_ids
.
split
(
","
)}),
console
.
log
(
t
.
list
),
e
.
userList
=
t
.
list
,
e
.
total
=
t
.
total
})},
edit
:
function
(
e
){
this
.
dialogObj
=
{
type
:
1
,
title
:
"编辑商品"
,
show
:
!
0
,
id
:
e
.
id
}},
add
:
function
(){
this
.
dialogObj
=
{
type
:
0
,
title
:
"添加商品"
,
show
:
!
0
}},
detail
:
function
(
e
){
this
.
dialogObj
.
id
=
e
.
id
,
this
.
dialogObj
.
type
=
2
,
this
.
dialogObj
.
title
=
"查看商品"
,
this
.
dialogObj
.
show
=!
0
},
onDel
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将删除该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
F
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})}),
t
.
getUser
()})},
onUp
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将上架该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
_42
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"操作成功!"
}),
t
.
getUser
()})})},
onDown
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将下架该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
H
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"操作成功!"
}),
t
.
getUser
()})})},
changeShow
:
function
(
e
){
this
.
dialogObj
.
show
=
e
},
bindOther
:
function
(
e
){
this
.
chooseDialog
=
{
show
:
!
0
,
title
:
"绑定商品"
,
id
:
e
.
id
,
form
:{
value
:
""
,
list
:[]},
type
:
0
}},
conflict
:
function
(
e
){
this
.
chooseDialog
=
{
show
:
!
0
,
title
:
"冲突商品"
,
id
:
e
.
id
,
form
:{
value
:
""
,
list
:
e
.
conflict_goods_ids
},
type
:
1
}}}},
u
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"div"
,{
staticClass
:
"user"
},[
s
(
"el-form"
,{
ref
:
"searchFrom"
,
attrs
:{
model
:
e
.
searchFrom
,
"label-width"
:
"80px"
}},[
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
4
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品名称"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
searchFrom
.
name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"name"
,
t
)},
expression
:
"searchFrom.name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
4
}},[
s
(
"el-form-item"
,[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
getUser
}},[
e
.
_v
(
"搜索"
)])],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
4
,
offset
:
12
}},[
s
(
"el-form-item"
,[
e
.
$store
.
state
.
readonly
?
e
.
_e
():
s
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
e
.
add
}},[
e
.
_v
(
"添加商品"
)])],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
userList
}},[
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"router-link"
,{
attrs
:{
to
:{
name
:
"periods"
,
query
:{
goods_id
:
t
.
row
.
id
}}}},[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
name
)
+
"
\n
"
)])]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"商品类型"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"goodsType"
)(
t
.
row
.
goods_type
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"商品原价/直购价"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
original_price
/
100
)
+
"元
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"商品现价/团购价"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
current_price
/
100
)
+
"元
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"course_title"
,
label
:
"课程名称"
}}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"课程类别"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"lessonType"
)(
t
.
row
.
course_type
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"是否有实物"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"isOrNot"
)(
t
.
row
.
is_real
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"状态"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"goodsStatus"
)(
t
.
row
.
status
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
width
:
"60"
,
label
:
"操作"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-popover"
,{
attrs
:{
placement
:
"top"
,
width
:
"600"
}},[
s
(
"div"
,{
staticStyle
:{
"text-align"
:
"center"
}},[
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
s
){
e
.
detail
(
t
.
row
)}}},[
e
.
_v
(
"
\n
查看详情
\n
"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
s
){
e
.
copyUrl
(
t
.
row
.
id
)}}},[
e
.
_v
(
"
\n
复制链接
\n
"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():[
2
===
t
.
row
.
status
||
0
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
s
){
e
.
onUp
(
t
.
row
)}}},[
e
.
_v
(
"
\n
上架
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
1
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
s
){
e
.
onDown
(
t
.
row
)}}},[
e
.
_v
(
"
\n
下架
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
0
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
s
){
e
.
edit
(
t
.
row
)}}},[
e
.
_v
(
"
\n
编辑
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"success"
},
on
:{
click
:
function
(
s
){
e
.
copyShop
(
t
.
row
)}}},[
e
.
_v
(
"
\n
复制商品
\n
"
)]),
e
.
_v
(
" "
),
2
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
s
){
e
.
bindOther
(
t
.
row
)}}},[
e
.
_v
(
"
\n
绑定商品
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
s
){
e
.
conflict
(
t
.
row
)}}},[
e
.
_v
(
"
\n
冲突商品
\n
"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
deletePermission
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
s
){
e
.
onDel
(
t
.
row
)}}},[
e
.
_v
(
"
\n
删除
\n
"
)]):
e
.
_e
()]],
2
),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
slot
:
"reference"
,
size
:
"mini"
,
type
:
"text"
},
slot
:
"reference"
},[
e
.
_v
(
"操作"
)])],
1
)]}}])})],
1
),
e
.
_v
(
" "
),
s
(
"page"
,{
attrs
:{
total
:
e
.
total
,
limit
:
e
.
limit
},
on
:{
pageChange
:
e
.
onPageChange
}}),
e
.
_v
(
" "
),
s
(
"dialog-com"
,{
attrs
:{
dialogObj
:
e
.
dialogObj
},
on
:{
changeShow
:
e
.
changeShow
,
reflash
:
e
.
getUser
}}),
e
.
_v
(
" "
),
s
(
"el-dialog"
,{
attrs
:{
title
:
e
.
chooseDialog
.
title
,
visible
:
e
.
chooseDialog
.
show
,
width
:
"30%"
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
chooseDialog
,
"show"
,
t
)}}},[
s
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
"label-width"
:
"80px"
}},[
0
===
e
.
chooseDialog
.
type
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"绑定商品"
}},[
s
(
"el-select"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
chooseDialog
.
form
.
value
,
callback
:
function
(
t
){
e
.
$set
(
e
.
chooseDialog
.
form
,
"value"
,
t
)},
expression
:
"chooseDialog.form.value"
}},
e
.
_l
(
e
.
userList
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
id
,
attrs
:{
label
:
e
.
name
,
value
:
e
.
id
}})}))],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
1
===
e
.
chooseDialog
.
type
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"冲突商品"
}},[
s
(
"el-select"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
placeholder
:
"请选择"
,
multiple
:
""
},
model
:{
value
:
e
.
chooseDialog
.
form
.
list
,
callback
:
function
(
t
){
e
.
$set
(
e
.
chooseDialog
.
form
,
"list"
,
t
)},
expression
:
"chooseDialog.form.list"
}},
e
.
_l
(
e
.
userList
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
id
,
attrs
:{
label
:
e
.
name
,
value
:
e
.
id
.
toString
()}})}))],
1
):
e
.
_e
()],
1
),
e
.
_v
(
" "
),
s
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
chooseDialog
.
show
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
dialogSub
()}}},[
e
.
_v
(
"确 定"
)])],
1
)],
1
)],
1
)},
staticRenderFns
:[]};
var
d
=
s
(
"VU/8"
)(
c
,
u
,
!
1
,
function
(
e
){
s
(
"4Txz"
)},
"data-v-ee841042"
,
null
);
t
.
default
=
d
.
exports
},
"4Txz"
:
function
(
e
,
t
){},
doOp
:
function
(
e
,
t
){}});
\ No newline at end of file
webpackJsonp
([
17
],{
"1djJ"
:
function
(
e
,
t
,
s
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
o
=
s
(
"CCn6"
),
i
=
s
(
"+TkF"
),
l
=
s
(
"kmJW"
),
a
=
{
name
:
"dialogObj"
,
props
:[
"dialogObj"
],
data
:
function
(){
return
{
loading
:
!
0
,
form
:{
name
:
""
,
goods_type
:
1
,
goods_desc
:{
desc
:
""
,
img
:[]},
course_id
:
""
,
course_type
:
0
,
watch_num
:
""
,
duration_num
:
0
,
original_price
:
""
,
current_price
:
""
,
is_real
:
0
,
is_auth_user
:
0
,
share_desc
:{
title
:
""
,
content
:
""
,
img
:[]},
desc
:{
detail
:
""
,
qa
:
""
,
customer_service
:[]}},
lessonList
:[]}},
methods
:{
sub
:
function
(){
var
e
=
this
,
t
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
form
)
+
""
);
switch
(
t
.
original_price
=
(
100
*
t
.
original_price
).
toFixed
(
0
),
t
.
current_price
=
(
100
*
t
.
current_price
).
toFixed
(
0
),
t
.
goods_desc
=
JSON
.
stringify
(
t
.
goods_desc
),
t
.
desc
=
JSON
.
stringify
(
t
.
desc
),
t
.
share_desc
=
JSON
.
stringify
(
t
.
share_desc
),
this
.
dialogObj
.
type
){
case
1
:
Object
(
o
.
O
)(
this
.
dialogObj
.
id
,
t
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
$emit
(
"reflash"
),
e
.
dialogObj
.
show
=!
1
});
break
;
case
0
:
Object
(
o
.
i
)(
t
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"新增成功!"
}),
e
.
$emit
(
"reflash"
),
e
.
dialogObj
.
show
=!
1
})}},
uploadFileMain
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
goods_desc
.
img
?
t
.
form
.
goods_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
goods_desc
.
img
=
[],
t
.
form
.
goods_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
uploadFileMainShare
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
share_desc
.
img
?
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
share_desc
.
img
=
[],
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
uploadFileMainService
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
desc
.
customer_service
?
t
.
form
.
desc
.
customer_service
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
desc
.
customer_service
=
[],
t
.
form
.
desc
.
customer_service
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
uploadFileShare
:
function
(
e
){
var
t
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
o
.
_46
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
form
.
share_desc
.
img
?
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
}:(
t
.
form
.
share_desc
.
img
=
[],
t
.
form
.
share_desc
.
img
[
0
]
=
{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
,
title
:
""
,
lable
:
""
})})},
initDialog
:
function
(){
var
e
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
this
.
loading
=!
1
,
this
.
form
=
{
name
:
""
,
goods_type
:
1
,
goods_desc
:{
desc
:
""
,
img
:[]},
course_id
:
""
,
course_type
:
0
,
watch_num
:
""
,
duration_num
:
0
,
original_price
:
""
,
current_price
:
""
,
is_real
:
0
,
is_auth_user
:
0
,
share_desc
:{
title
:
""
,
content
:
""
,
img
:[]},
desc
:{
detail
:
""
,
qa
:
""
,
customer_service
:[]}},
this
.
getLessonList
();
break
;
case
1
:
case
2
:
Object
(
o
.
_12
)(
this
.
dialogObj
.
id
).
then
(
function
(
t
){
e
.
loading
=!
1
,
e
.
form
=
{
name
:
t
.
name
,
goods_type
:
t
.
goods_type
,
goods_desc
:
JSON
.
parse
(
t
.
goods_desc
),
course_id
:
t
.
course_id
,
course_type
:
t
.
course_type
,
watch_num
:
t
.
watch_num
,
duration_num
:
t
.
duration_num
,
original_price
:
t
.
original_price
/
100
,
current_price
:
t
.
current_price
/
100
,
is_real
:
t
.
is_real
,
is_auth_user
:
t
.
is_auth_user
,
share_desc
:
JSON
.
parse
(
t
.
share_desc
),
desc
:
JSON
.
parse
(
t
.
desc
),
invite_earnings
:
t
.
invite_earnings
,
is_auth_teacher
:
t
.
is_auth_teacher
},
e
.
getLessonList
()});
break
;
case
3
:
this
.
title
=
"编辑"
,
this
.
show
=
this
.
dialogObj
.
show
,
this
.
id
=
this
.
dialogObj
.
id
,
this
.
type
=
2
}},
changeLessonType
:
function
(){
this
.
getLessonList
()},
getLessonList
:
function
(){
var
e
=
this
;
Object
(
o
.
_14
)({
type
:
this
.
form
.
course_type
}).
then
(
function
(
t
){
e
.
lessonList
=
t
.
list
})}},
watch
:{
dialogObj
:{
handler
:
function
(){
this
.
loading
=!
0
,
this
.
initDialog
()},
deep
:
!
0
},
show
:
function
(
e
){
this
.
$emit
(
"changeShow"
,
e
)}}},
n
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"el-dialog"
,{
attrs
:{
title
:
e
.
dialogObj
.
title
,
center
:
""
,
"append-to-body"
:
""
,
visible
:
e
.
dialogObj
.
show
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
dialogObj
,
"show"
,
t
)}}},[
s
(
"div"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
e
.
loading
,
expression
:
"loading"
}]},[
s
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
e
.
form
,
"label-width"
:
"100px"
,
disabled
:
2
===
e
.
dialogObj
.
type
}},[
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品名称"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"name"
,
t
)},
expression
:
"form.name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品描述"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
goods_desc
.
desc
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
goods_desc
,
"desc"
,
t
)},
expression
:
"form.goods_desc.desc"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"课程类型"
}},[
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
on
:{
change
:
function
(
t
){
e
.
changeLessonType
()}},
model
:{
value
:
e
.
form
.
course_type
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"course_type"
,
t
)},
expression
:
"form.course_type"
}},[
s
(
"el-option"
,{
attrs
:{
label
:
"日课"
,
value
:
1
}}),
e
.
_v
(
" "
),
s
(
"el-option"
,{
attrs
:{
label
:
"月课"
,
value
:
0
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"课程"
}},[
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
form
.
course_id
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"course_id"
,
t
)},
expression
:
"form.course_id"
}},
e
.
_l
(
e
.
lessonList
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
id
,
attrs
:{
label
:
e
.
title
,
value
:
e
.
id
}})}))],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"观看时长(节)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"课时数"
},
model
:{
value
:
e
.
form
.
watch_num
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"watch_num"
,
t
)},
expression
:
"form.watch_num"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"续看时长(天)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"看课天数"
},
model
:{
value
:
e
.
form
.
duration_num
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"duration_num"
,
t
)},
expression
:
"form.duration_num"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"主图(750*600)"
}},[
s
(
"el-upload"
,{
staticClass
:
"upload-demo"
,
attrs
:{
"list-type"
:
"picture-card"
,
action
:
"/api/public/upload"
,
"http-request"
:
e
.
uploadFileMain
,
"file-list"
:
e
.
form
.
goods_desc
.
img
}},[
s
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"客服(200*200)"
}},[
s
(
"el-upload"
,{
staticClass
:
"upload-demo"
,
class
:
e
.
form
.
desc
.
customer_service
&&
e
.
form
.
desc
.
customer_service
.
length
>
0
?
"uploadService"
:
""
,
attrs
:{
"list-type"
:
"picture-card"
,
action
:
"/api/public/upload"
,
limit
:
1
,
"http-request"
:
e
.
uploadFileMainService
,
"file-list"
:
e
.
form
.
desc
.
customer_service
}},[
s
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品类型"
}},[
s
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
form
.
goods_type
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"goods_type"
,
t
)},
expression
:
"form.goods_type"
}},[
s
(
"el-option"
,{
attrs
:{
label
:
"普通商品"
,
value
:
1
}}),
e
.
_v
(
" "
),
s
(
"el-option"
,{
attrs
:{
label
:
"团购商品"
,
value
:
2
}})],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
1
===
e
.
form
.
goods_type
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"推荐奖金(元)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"推荐奖金"
},
model
:{
value
:
e
.
form
.
invite_earnings
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"invite_earnings"
,
t
)},
expression
:
"form.invite_earnings"
}})],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"是否配置实物"
}},[
s
(
"el-switch"
,{
attrs
:{
"active-value"
:
1
,
"inactive-value"
:
0
},
model
:{
value
:
e
.
form
.
is_real
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"is_real"
,
t
)},
expression
:
"form.is_real"
}}),
e
.
_v
(
" "
),
s
(
"span"
,{
staticStyle
:{
"font-size"
:
"12px"
}},[
e
.
_v
(
"打开后提示用户填写具体住址"
)])],
1
),
e
.
_v
(
" "
),
1
===
e
.
form
.
goods_type
?
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"是否允许用户推广"
,
"label-width"
:
"200"
}},[
s
(
"el-switch"
,{
attrs
:{
"active-value"
:
1
,
"inactive-value"
:
0
},
model
:{
value
:
e
.
form
.
is_auth_user
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"is_auth_user"
,
t
)},
expression
:
"form.is_auth_user"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"是否允许老师推广"
,
"label-width"
:
"200"
}},[
s
(
"el-switch"
,{
attrs
:{
"active-value"
:
1
,
"inactive-value"
:
0
},
model
:{
value
:
e
.
form
.
is_auth_teacher
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"is_auth_teacher"
,
t
)},
expression
:
"form.is_auth_teacher"
}})],
1
)],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
1
===
e
.
form
.
goods_type
?
"原价(元)"
:
"单买价格(元)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"原价"
},
model
:{
value
:
e
.
form
.
original_price
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"original_price"
,
t
)},
expression
:
"form.original_price"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
1
===
e
.
form
.
goods_type
?
"现价(元)"
:
"拼团价格(元)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"现价"
},
model
:{
value
:
e
.
form
.
current_price
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"current_price"
,
t
)},
expression
:
"form.current_price"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
2
===
e
.
form
.
goods_type
?
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"成团人数(人)"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"成团人数"
},
model
:{
value
:
e
.
form
.
desc
.
group_number
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"group_number"
,
t
)},
expression
:
"form.desc.group_number"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"团购失效时间(小时)"
,
"label-width"
:
"136"
}},[
s
(
"el-input-number"
,{
attrs
:{
label
:
"团购失效时间"
},
model
:{
value
:
e
.
form
.
desc
.
group_continue
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"group_continue"
,
t
)},
expression
:
"form.desc.group_continue"
}})],
1
)],
1
)],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"分享标题"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
share_desc
.
title
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
share_desc
,
"title"
,
t
)},
expression
:
"form.share_desc.title"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
12
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"分享内容"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
form
.
share_desc
.
content
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
share_desc
,
"content"
,
t
)},
expression
:
"form.share_desc.content"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-form-item"
,{
attrs
:{
label
:
"分享主图(300*300)"
}},[
s
(
"el-upload"
,{
attrs
:{
"list-type"
:
"picture-card"
,
action
:
"/api/public/upload"
,
limit
:
1
,
"file-list"
:
e
.
form
.
share_desc
.
img
,
"http-request"
:
e
.
uploadFileMainShare
}},[
s
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
24
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品详情"
}},[
s
(
"el-input"
,{
attrs
:{
type
:
"textarea"
,
rows
:
25
},
model
:{
value
:
e
.
form
.
desc
.
detail
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"detail"
,
t
)},
expression
:
"form.desc.detail"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
24
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"购买须知"
}},[
s
(
"el-input"
,{
attrs
:{
type
:
"textarea"
,
rows
:
25
},
model
:{
value
:
e
.
form
.
desc
.
qa
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
.
desc
,
"qa"
,
t
)},
expression
:
"form.desc.qa"
}})],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
2
!==
e
.
dialogObj
.
type
?
s
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
dialogObj
.
show
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
e
.
sub
}},[
e
.
_v
(
"确 定"
)])],
1
):
e
.
_e
()],
1
)])},
staticRenderFns
:[]};
var
r
=
s
(
"VU/8"
)(
a
,
n
,
!
1
,
function
(
e
){
s
(
"doOp"
)},
"data-v-e0a1e4e0"
,
null
).
exports
,
c
=
{
name
:
"index"
,
data
:
function
(){
return
{
searchFrom
:{
name
:
""
},
userList
:[],
total
:
0
,
nowPage
:
1
,
limit
:
10
,
chooseDialog
:{
show
:
!
1
,
title
:
""
,
id
:
""
,
form
:{
value
:
""
,
list
:[]},
type
:
0
},
dialogObj
:{
type
:
0
,
show
:
!
1
,
title
:
""
,
id
:
""
}}},
components
:{
page
:
l
.
a
,
dialogCom
:
r
},
filters
:{
isOrNot
:
function
(
e
){
return
i
.
h
[
e
]},
goodsType
:
function
(
e
){
return
i
.
e
[
e
]},
lessonType
:
function
(
e
){
return
i
.
i
[
e
]},
goodsStatus
:
function
(
e
){
return
i
.
d
[
e
]}},
mounted
:
function
(){
this
.
getUser
()},
methods
:{
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
getUser
()},
copyShop
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将复制该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
r
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"复制成功!"
})}),
t
.
getUser
()})},
copyUrl
:
function
(
e
){
var
t
=
"https://wechat.changchangenglish.com/#/buyDetail?shopId="
+
e
,
s
=
document
.
createElement
(
"input"
);
s
.
value
=
t
,
document
.
body
.
appendChild
(
s
),
s
.
select
(),
document
.
execCommand
(
"Copy"
),
this
.
$message
({
message
:
"已成功复制到剪切板"
,
type
:
"success"
}),
s
.
remove
()},
dialogSub
:
function
(){
var
e
=
this
;
switch
(
this
.
chooseDialog
.
type
){
case
0
:
Object
(
o
.
o
)(
this
.
chooseDialog
.
id
,
this
.
chooseDialog
.
form
.
value
).
then
(
function
(
t
){
e
.
$message
({
message
:
"绑定成功"
,
type
:
"success"
}),
e
.
chooseDialog
.
show
=!
1
}),
this
.
getUser
();
break
;
case
1
:
var
t
=
{
conflict_goods_ids
:
this
.
chooseDialog
.
form
.
list
.
toString
()};
Object
(
o
.
q
)(
this
.
chooseDialog
.
id
,
t
).
then
(
function
(
t
){
e
.
$message
({
message
:
"设置成功"
,
type
:
"success"
}),
e
.
chooseDialog
.
show
=!
1
,
e
.
getUser
()})}},
getUser
:
function
(){
var
e
=
this
,
t
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
searchFrom
.
name
&&
(
t
.
name
=
this
.
searchFrom
.
name
),
Object
(
o
.
_13
)(
t
).
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
""
===
e
.
conflict_goods_ids
?
e
.
conflict_goods_ids
=
[]:
e
.
conflict_goods_ids
=
e
.
conflict_goods_ids
.
split
(
","
)}),
console
.
log
(
t
.
list
),
e
.
userList
=
t
.
list
,
e
.
total
=
t
.
total
})},
edit
:
function
(
e
){
this
.
dialogObj
=
{
type
:
1
,
title
:
"编辑商品"
,
show
:
!
0
,
id
:
e
.
id
}},
add
:
function
(){
this
.
dialogObj
=
{
type
:
0
,
title
:
"添加商品"
,
show
:
!
0
}},
detail
:
function
(
e
){
this
.
dialogObj
.
id
=
e
.
id
,
this
.
dialogObj
.
type
=
2
,
this
.
dialogObj
.
title
=
"查看商品"
,
this
.
dialogObj
.
show
=!
0
},
onDel
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将删除该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
F
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})}),
t
.
getUser
()})},
onUp
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将上架该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
_42
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"操作成功!"
}),
t
.
getUser
()})})},
onDown
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将下架该商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
H
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"操作成功!"
}),
t
.
getUser
()})})},
changeShow
:
function
(
e
){
this
.
dialogObj
.
show
=
e
},
bindOther
:
function
(
e
){
this
.
chooseDialog
=
{
show
:
!
0
,
title
:
"绑定商品"
,
id
:
e
.
id
,
form
:{
value
:
""
,
list
:[]},
type
:
0
}},
conflict
:
function
(
e
){
this
.
chooseDialog
=
{
show
:
!
0
,
title
:
"冲突商品"
,
id
:
e
.
id
,
form
:{
value
:
""
,
list
:
e
.
conflict_goods_ids
},
type
:
1
}}}},
u
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
s
=
e
.
_self
.
_c
||
t
;
return
s
(
"div"
,{
staticClass
:
"user"
},[
s
(
"el-form"
,{
ref
:
"searchFrom"
,
attrs
:{
model
:
e
.
searchFrom
,
"label-width"
:
"80px"
}},[
s
(
"el-row"
,[
s
(
"el-col"
,{
attrs
:{
span
:
4
}},[
s
(
"el-form-item"
,{
attrs
:{
label
:
"商品名称"
}},[
s
(
"el-input"
,{
model
:{
value
:
e
.
searchFrom
.
name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"name"
,
t
)},
expression
:
"searchFrom.name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
4
}},[
s
(
"el-form-item"
,[
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
getUser
}},[
e
.
_v
(
"搜索"
)])],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-col"
,{
attrs
:{
span
:
4
,
offset
:
12
}},[
s
(
"el-form-item"
,[
e
.
$store
.
state
.
readonly
?
e
.
_e
():
s
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
e
.
add
}},[
e
.
_v
(
"添加商品"
)])],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
s
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
userList
}},[
s
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"router-link"
,{
attrs
:{
to
:{
name
:
"periods"
,
query
:{
goods_id
:
t
.
row
.
id
}}}},[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
name
)
+
"
\n
"
)])]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"商品类型"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"goodsType"
)(
t
.
row
.
goods_type
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"商品原价/直购价"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
original_price
/
100
)
+
"元
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"商品现价/团购价"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
current_price
/
100
)
+
"元
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
prop
:
"course_title"
,
label
:
"课程名称"
}}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"课程类别"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"lessonType"
)(
t
.
row
.
course_type
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"是否有实物"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"isOrNot"
)(
t
.
row
.
is_real
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
label
:
"状态"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
e
.
_v
(
"
\n
"
+
e
.
_s
(
e
.
_f
(
"goodsStatus"
)(
t
.
row
.
status
))
+
"
\n
"
)]}}])}),
e
.
_v
(
" "
),
s
(
"el-table-column"
,{
attrs
:{
width
:
"60"
,
label
:
"操作"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
s
(
"el-popover"
,{
attrs
:{
placement
:
"top"
,
width
:
"600"
}},[
s
(
"div"
,{
staticStyle
:{
"text-align"
:
"center"
}},[
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
s
){
e
.
detail
(
t
.
row
)}}},[
e
.
_v
(
"
\n
查看详情
\n
"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
s
){
e
.
copyUrl
(
t
.
row
.
id
)}}},[
e
.
_v
(
"
\n
复制链接
\n
"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():[
2
===
t
.
row
.
status
||
0
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
s
){
e
.
onUp
(
t
.
row
)}}},[
e
.
_v
(
"
\n
上架
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
1
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
s
){
e
.
onDown
(
t
.
row
)}}},[
e
.
_v
(
"
\n
下架
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
0
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
s
){
e
.
edit
(
t
.
row
)}}},[
e
.
_v
(
"
\n
编辑
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"success"
},
on
:{
click
:
function
(
s
){
e
.
copyShop
(
t
.
row
)}}},[
e
.
_v
(
"
\n
复制商品
\n
"
)]),
e
.
_v
(
" "
),
2
===
t
.
row
.
status
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
s
){
e
.
bindOther
(
t
.
row
)}}},[
e
.
_v
(
"
\n
绑定商品
\n
"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
s
){
e
.
conflict
(
t
.
row
)}}},[
e
.
_v
(
"
\n
冲突商品
\n
"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
deletePermission
?
s
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
s
){
e
.
onDel
(
t
.
row
)}}},[
e
.
_v
(
"
\n
删除
\n
"
)]):
e
.
_e
()]],
2
),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
slot
:
"reference"
,
size
:
"mini"
,
type
:
"text"
},
slot
:
"reference"
},[
e
.
_v
(
"操作"
)])],
1
)]}}])})],
1
),
e
.
_v
(
" "
),
s
(
"page"
,{
attrs
:{
total
:
e
.
total
,
limit
:
e
.
limit
},
on
:{
pageChange
:
e
.
onPageChange
}}),
e
.
_v
(
" "
),
s
(
"dialog-com"
,{
attrs
:{
dialogObj
:
e
.
dialogObj
},
on
:{
changeShow
:
e
.
changeShow
,
reflash
:
e
.
getUser
}}),
e
.
_v
(
" "
),
s
(
"el-dialog"
,{
attrs
:{
title
:
e
.
chooseDialog
.
title
,
visible
:
e
.
chooseDialog
.
show
,
width
:
"30%"
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
chooseDialog
,
"show"
,
t
)}}},[
s
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
"label-width"
:
"80px"
}},[
0
===
e
.
chooseDialog
.
type
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"绑定商品"
}},[
s
(
"el-select"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
chooseDialog
.
form
.
value
,
callback
:
function
(
t
){
e
.
$set
(
e
.
chooseDialog
.
form
,
"value"
,
t
)},
expression
:
"chooseDialog.form.value"
}},
e
.
_l
(
e
.
userList
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
id
,
attrs
:{
label
:
e
.
name
,
value
:
e
.
id
}})}))],
1
):
e
.
_e
(),
e
.
_v
(
" "
),
1
===
e
.
chooseDialog
.
type
?
s
(
"el-form-item"
,{
attrs
:{
label
:
"冲突商品"
}},[
s
(
"el-select"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
placeholder
:
"请选择"
,
multiple
:
""
},
model
:{
value
:
e
.
chooseDialog
.
form
.
list
,
callback
:
function
(
t
){
e
.
$set
(
e
.
chooseDialog
.
form
,
"list"
,
t
)},
expression
:
"chooseDialog.form.list"
}},
e
.
_l
(
e
.
userList
,
function
(
e
){
return
s
(
"el-option"
,{
key
:
e
.
id
,
attrs
:{
label
:
e
.
name
,
value
:
e
.
id
.
toString
()}})}))],
1
):
e
.
_e
()],
1
),
e
.
_v
(
" "
),
s
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
s
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
chooseDialog
.
show
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
s
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
dialogSub
()}}},[
e
.
_v
(
"确 定"
)])],
1
)],
1
)],
1
)},
staticRenderFns
:[]};
var
d
=
s
(
"VU/8"
)(
c
,
u
,
!
1
,
function
(
e
){
s
(
"4HOg"
)},
"data-v-b809468e"
,
null
);
t
.
default
=
d
.
exports
},
"4HOg"
:
function
(
e
,
t
){},
doOp
:
function
(
e
,
t
){}});
\ No newline at end of file
dist/static/js/6.5d7e6cbb44bc57b09d10.js
0 → 100644
View file @
1a8add53
webpackJsonp
([
6
],{
"+Xdu"
:
function
(
t
,
e
){},
OX9A
:
function
(
t
,
e
,
i
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
s
=
i
(
"CCn6"
),
n
=
{
props
:[
"dialogObj"
],
data
:
function
(){
return
{
form
:{
teacher_id
:
""
,
max_join_num
:
""
},
teacherList
:[],
exitTeacherList
:[],
goodsList
:[],
periods
:{}}},
methods
:{
findDifferentArray
:
function
(
t
,
e
){
var
i
=
[];
return
t
.
forEach
(
function
(
t
){
-
1
===
e
.
findIndex
(
function
(
e
){
return
e
.
teacher_id
==
t
.
id
})
&&
i
.
push
(
t
)}),
i
},
getTeacher
:
function
(){
var
t
=
this
;
this
.
exitTeacherList
=
this
.
dialogObj
.
teacherList
.
length
>
0
?
this
.
dialogObj
.
teacherList
:[],
Object
(
s
.
_29
)().
then
(
function
(
e
){
if
(
t
.
exitTeacherList
.
length
>
0
){
if
(
t
.
teacherList
=
t
.
findDifferentArray
(
e
.
list
,
t
.
exitTeacherList
),
t
.
form
.
teacher_id
&&-
1
===
t
.
teacherList
.
findIndex
(
function
(
e
){
return
e
.
id
==
t
.
form
.
teacher_id
})){
var
i
=
e
.
list
.
find
(
function
(
e
){
return
e
.
id
==
t
.
form
.
teacher_id
});
t
.
teacherList
.
push
(
i
)}}
else
t
.
teacherList
=
e
.
list
})},
getTeacherByPeriods
:
function
(){
var
t
=
this
;
Object
(
s
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
e
){
t
.
exitTeacherList
=
e
,
Object
(
s
.
_29
)().
then
(
function
(
e
){
t
.
exitTeacherList
.
length
>
0
?
t
.
teacherList
=
t
.
findDifferentArray
(
e
.
list
,
t
.
exitTeacherList
):
t
.
teacherList
=
e
.
list
})})},
initPage
:
function
(){
var
t
=
this
;
switch
(
this
.
periods
=
this
.
dialogObj
.
periods
,
this
.
dialogObj
.
type
){
case
0
:
this
.
dialogObj
.
periodsId
||
this
.
getPeriodList
(),
this
.
form
=
{
teacher_id
:
""
,
max_join_num
:
""
},
this
.
getTeacher
();
break
;
case
1
:
Object
(
s
.
_4
)(
this
.
dialogObj
.
id
).
then
(
function
(
e
){
t
.
form
=
{
teacher_id
:
parseInt
(
e
.
teacher_id
),
max_join_num
:
e
.
max_join_num
},
t
.
getTeacher
()})}},
getPeriodList
:
function
(){
var
t
=
this
;
Object
(
s
.
_13
)().
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
children
=
[]}),
t
.
goodsList
=
e
.
list
,
t
.
periods
||
Object
(
s
.
_19
)({
goods_id
:
t
.
goodsList
[
0
].
id
}).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
t
.
goodsList
[
0
].
children
=
e
.
list
,
t
.
periods
=
e
.
list
[
0
]})})},
onSave
:
function
(){
var
t
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
var
e
=
this
.
dialogObj
.
periodsId
?
this
.
dialogObj
.
periodsId
:
this
.
periods
.
id
;
Object
(
s
.
f
)(
e
,
this
.
form
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
t
.
$emit
(
"reflash"
,
t
.
periods
),
t
.
dialogObj
.
show
=!
1
});
break
;
case
1
:
Object
(
s
.
M
)(
this
.
dialogObj
.
id
,
this
.
form
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
t
.
$emit
(
"reflash"
,
t
.
periods
),
t
.
dialogObj
.
show
=!
1
})}},
handleItemChange
:
function
(
t
){
var
e
=
this
;
Object
(
s
.
_19
)({
goods_id
:
t
[
0
]}).
then
(
function
(
i
){
i
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
e
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]}).
children
=
i
.
list
})},
changePeriods
:
function
(
t
){
if
(
t
.
length
>
1
){
var
e
=
this
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]});
this
.
periods
=
e
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
[
1
]}),
this
.
getTeacherByPeriods
()}}},
watch
:{
dialogObj
:
function
(
t
){
this
.
initPage
()}}},
o
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"el-dialog"
,{
attrs
:{
title
:
t
.
dialogObj
.
title
,
visible
:
t
.
dialogObj
.
show
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
dialogObj
,
"show"
,
e
)}}},[
i
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
form
,
"label-width"
:
"120px"
}},[
this
.
dialogObj
.
periodsId
?
t
.
_e
():
i
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
i
(
"el-cascader"
,{
attrs
:{
options
:
t
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
t
.
handleItemChange
,
change
:
t
.
changePeriods
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
i
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
t
.
form
.
teacher_id
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"teacher_id"
,
e
)},
expression
:
"form.teacher_id"
}},
t
.
_l
(
t
.
teacherList
,
function
(
t
,
e
){
return
i
(
"el-option"
,{
key
:
e
,
attrs
:{
label
:
t
.
name
,
value
:
t
.
id
}})}))],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"最大学员"
}},[
i
(
"el-input-number"
,{
model
:{
value
:
t
.
form
.
max_join_num
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"max_join_num"
,
e
)},
expression
:
"form.max_join_num"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
i
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogObj
.
show
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
onSave
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
)},
staticRenderFns
:[]};
var
a
=
i
(
"VU/8"
)(
n
,
o
,
!
1
,
function
(
t
){
i
(
"pe1i"
)},
"data-v-46142434"
,
null
).
exports
,
r
=
i
(
"kmJW"
),
l
=
i
(
"+TkF"
),
c
=
{
name
:
"userList"
,
props
:[
"userObj"
],
data
:
function
(){
return
{
userTable
:[],
addId
:
""
,
lookDetail
:{
show
:
!
1
,
loading
:
!
1
,
list
:[]},
addShow
:
!
1
,
userList
:[],
nowPage
:
1
,
limit
:
5
,
total
:
0
,
searchFrom
:{
userId
:
""
,
nickName
:
""
,
mobile
:
""
},
multipleSelection
:[]}},
components
:{
page
:
r
.
a
},
filters
:{
isOrNot
:
function
(
t
){
return
l
.
h
[
t
]},
percent
:
function
(
t
){
return
(
100
*
t
).
toFixed
(
2
)
+
"%"
}},
methods
:{
userLook
:
function
(
t
){
var
e
=
this
;
this
.
lookDetail
.
show
=!
0
,
this
.
lookDetail
.
loading
=!
0
,
Object
(
s
.
_47
)(
t
.
periods_id
,
t
.
id
).
then
(
function
(
t
){
e
.
lookDetail
.
list
=
t
.
list
,
e
.
lookDetail
.
loading
=!
1
})},
initPage
:
function
(){
var
t
=
this
;
Object
(
s
.
_7
)(
this
.
userObj
.
classId
).
then
(
function
(
e
){
t
.
userTable
=
e
.
list
})},
changeUser
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将修改成员看课权限?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
p
)(
t
.
id
,{
is_view_course
:
0
===
t
.
is_view_course
?
1
:
0
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
initPage
()})})},
onDel
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该成员?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
x
)(
t
.
id
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
e
.
initPage
()})})},
onAdd
:
function
(){
var
t
=
this
;
0
!==
this
.
multipleSelection
.
length
?
1
===
this
.
multipleSelection
.
length
?(
this
.
addId
=
this
.
multipleSelection
[
0
].
user_id
,
this
.
addId
&&
Object
(
s
.
g
)(
this
.
userObj
.
classId
,
this
.
addId
,{
is_buy
:
0
}).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
t
.
addShow
=!
1
,
t
.
initPage
()})):
this
.
$message
({
type
:
"error"
,
message
:
"只能选择一个用户!"
}):
this
.
$message
({
type
:
"error"
,
message
:
"请选择用户!"
})},
onAddUser
:
function
(){
this
.
addShow
=!
0
,
this
.
getUser
()},
getUser
:
function
(){
var
t
=
this
,
e
=
{
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
searchFrom
.
userId
&&
(
e
.
user_id
=
this
.
searchFrom
.
userId
),
this
.
searchFrom
.
nickName
&&
(
e
.
nickname
=
this
.
searchFrom
.
nickName
),
this
.
searchFrom
.
mobile
&&
(
e
.
mobile
=
this
.
searchFrom
.
mobile
),
Object
(
s
.
_31
)(
e
).
then
(
function
(
e
){
t
.
userList
=
e
.
list
,
t
.
total
=
e
.
total
})},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getUser
()},
handleSelectionChange
:
function
(
t
){
this
.
multipleSelection
=
t
},
editComment
:
function
(
t
,
e
){
var
i
=
this
;
this
.
$prompt
(
""
,
"编辑备注"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
inputValue
:
e
}).
then
(
function
(
e
){
var
n
=
e
.
value
;
Object
(
s
.
k
)(
t
,{
desc
:
n
}).
then
(
function
(
t
){
i
.
$message
({
type
:
"success"
,
message
:
"编辑备注成功"
}),
i
.
initPage
()})})}},
watch
:{
userObj
:
function
(){
this
.
initPage
()}}},
u
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"el-dialog"
,{
attrs
:{
title
:
t
.
userObj
.
title
,
visible
:
t
.
userObj
.
show
,
modal
:
!
1
,
fullscreen
:
!
0
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
userObj
,
"show"
,
e
)}}},[
i
(
"div"
,[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
i
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
t
.
onAddUser
}},[
t
.
_v
(
"+添加用户"
)])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
userTable
}},[
i
(
"el-table-column"
,{
attrs
:{
label
:
"用户"
,
className
:
"f-c"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
e
.
row
.
avatar
}}),
t
.
_v
(
" "
+
t
.
_s
(
e
.
row
.
nickname
)
+
"(ID:"
+
t
.
_s
(
e
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"是否购买"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
0
===
e
.
row
.
is_buy
?
"否"
:
"是"
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"看课权限"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"isOrNot"
)(
e
.
row
.
is_view_course
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"desc"
,
label
:
"备注"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"最后登录时间"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
last_login_at
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
watch_course_rate
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"课包查看次数"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
watch_course_num
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"学习时长(分)"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
Math
.
round
(
e
.
row
.
watch_course_time
/
60
*
100
)
/
100
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
work_rate
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
clock_rate
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"续费情况"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"isOrNot"
)(
e
.
row
.
is_continue_buy
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-table-column"
,{
attrs
:{
label
:
"操作"
,
width
:
"300"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
editComment
(
e
.
row
.
id
,
e
.
row
.
desc
)}}},[
t
.
_v
(
"编辑备注"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
changeUser
(
e
.
row
)}}},[
t
.
_v
(
"看课权限"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
userLook
(
e
.
row
)}}},[
t
.
_v
(
"看课情况"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
&&!
t
.
$store
.
state
.
readonly
?
i
(
"el-button"
,{
attrs
:{
type
:
"danger"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
onDel
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]):
t
.
_e
()]}}])})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
t
.
addShow
},
on
:{
"update:visible"
:
function
(
e
){
t
.
addShow
=
e
}}},[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
}},[
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"ID"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
userId
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"userId"
,
e
)},
expression
:
"searchFrom.userId"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"昵称"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
nickName
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"nickName"
,
e
)},
expression
:
"searchFrom.nickName"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"电话"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
mobile
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"mobile"
,
e
)},
expression
:
"searchFrom.mobile"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
8
,
offset
:
16
}},[
i
(
"el-form-item"
,[
i
(
"el-button"
,{
staticStyle
:{
float
:
"right"
},
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
t
.
getUser
}},[
t
.
_v
(
"搜索"
)])],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
userList
},
on
:{
"selection-change"
:
t
.
handleSelectionChange
}},[
i
(
"el-table-column"
,{
attrs
:{
type
:
"selection"
,
width
:
"55"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
className
:
"f-c"
,
label
:
"用户"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
e
.
row
.
avatar
}}),
t
.
_v
(
t
.
_s
(
e
.
row
.
nickname
)
+
"(ID:"
+
t
.
_s
(
e
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"mobile"
,
label
:
"手机号"
}})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
}}),
t
.
_v
(
" "
),
i
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
i
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
addShow
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
onAdd
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
t
.
lookDetail
.
show
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
lookDetail
,
"show"
,
e
)}}},[
i
(
"el-table"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
t
.
lookDetail
.
loading
,
expression
:
"lookDetail.loading"
}],
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
lookDetail
.
list
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"start_at"
,
label
:
"日期"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"爸妈看一看"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
watch_list
&&
e
.
row
.
watch_list
.
length
>
0
&&
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
i
(
"span"
,[
t
.
_v
(
"
\n
学习时长:"
+
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
}).
stay_time
)
+
"
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
t
.
_e
():
i
(
"span"
,[
t
.
_v
(
"
\n
暂未上课
\n
"
)])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"宝贝玩一玩"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
watch_list
&&
e
.
row
.
watch_list
.
length
>
0
&&
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
i
(
"span"
,[
t
.
_v
(
"
\n
学习时长:"
+
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
2
===
t
.
page_id
}).
stay_time
)
+
"
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
t
.
_e
():
i
(
"span"
,[
t
.
_v
(
"
\n
暂未上课
\n
"
)])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"爸妈秀宝贝"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
watch_list
&&
e
.
row
.
watch_list
.
length
>
0
&&
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
i
(
"span"
,[
t
.
_v
(
"
\n
学习记录:"
),
i
(
"div"
,{
domProps
:{
innerHTML
:
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
0
===
t
.
page_id
}).
learn_report
)}}),
t
.
_v
(
t
.
_s
(
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
3
===
t
.
page_id
}).
stay_time
)
+
"
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
row
.
watch_list
.
find
(
function
(
t
){
return
1
===
t
.
page_id
})?
t
.
_e
():
i
(
"span"
,[
t
.
_v
(
"
\n
暂未上课
\n
"
)])]}}])})],
1
)],
1
)],
1
)},
staticRenderFns
:[]};
var
d
=
{
data
:
function
(){
return
{
nowPage
:
1
,
total
:
0
,
limit
:
10
,
periodsId
:
null
,
goodsList
:[],
teacher_id
:
""
,
classList
:[],
title
:
""
,
countObj
:
""
,
teacherList
:[],
userObj
:{
classId
:
""
,
title
:
""
,
show
:
!
1
},
dialogObj
:{
show
:
!
1
,
title
:
"添加班级"
,
periodsId
:
""
,
type
:
0
,
id
:
0
},
selectedGoods
:[]}},
components
:{
UserList
:
i
(
"VU/8"
)(
c
,
u
,
!
1
,
function
(
t
){
i
(
"zrzO"
)},
null
,
null
).
exports
,
classDialog
:
a
,
page
:
r
.
a
},
filters
:{
classTypeFilter
:
function
(
t
){
var
e
=
parseInt
(
t
);
return
1
===
e
?
"带班班级"
:
2
===
e
?
"观摩班级"
:
""
},
percent
:
function
(
t
){
return
(
100
*
t
).
toFixed
(
2
)
+
"%"
}},
mounted
:
function
(){
this
.
initPage
()},
methods
:{
changeRow
:
function
(
t
,
e
){
e
.
indexOf
(
t
)
>-
1
&&
Object
(
s
.
_6
)(
t
.
periods_id
,
t
.
id
).
then
(
function
(
e
){
t
.
arrive_course_rate
=
e
.
arrive_course_rate
,
t
.
watch_course_rate
=
e
.
watch_course_rate
,
t
.
over_course_rate
=
e
.
over_course_rate
,
t
.
work_rate
=
e
.
work_rate
,
t
.
over_work_rate
=
e
.
over_work_rate
,
t
.
clock_rate
=
e
.
clock_rate
,
t
.
over_clock_rate
=
e
.
over_clock_rate
,
t
.
transform_rate
=
e
.
transform_rate
})},
initQuery
:
function
(){
var
t
=
this
,
e
=
this
.
$route
.
query
;
e
&&
e
.
goods_id
&&
e
.
periods_id
&&
(
this
.
selectedGoods
=
[
parseInt
(
e
.
goods_id
),
parseInt
(
e
.
periods_id
)],
Object
(
s
.
_19
)({
goods_id
:
this
.
selectedGoods
[
0
]}).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
t
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
0
]}).
children
=
e
.
list
;
var
i
=
t
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
0
]});
t
.
periods
=
i
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
1
]}),
t
.
teacher_id
=
""
,
t
.
getClassList
()}))},
initPage
:
function
(){
var
t
=
this
;
Object
(
s
.
_13
)().
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
children
=
[]}),
t
.
goodsList
=
e
.
list
,
t
.
initQuery
()})},
showUser
:
function
(
t
){
this
.
userObj
=
{
classId
:
t
.
id
,
show
:
!
0
,
title
:
t
.
teacher_name
+
"班级用户列表"
}},
getTeacher
:
function
(){
var
t
=
this
;
this
.
periods
&&
Object
(
s
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
e
){
t
.
teacherList
=
e
})},
changePeriods
:
function
(
t
){
if
(
t
.
length
>
1
){
var
e
=
this
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]});
this
.
periods
=
e
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
[
1
]}),
this
.
teacher_id
=
""
,
this
.
getTeacher
()}},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getClassList
()},
onReflash
:
function
(
t
){
this
.
periods
=
t
,
this
.
selectedGoods
=
[
t
.
goods_id
,
t
.
id
],
this
.
getClassList
()},
getClassList
:
function
(){
var
t
=
this
;
if
(
this
.
periods
){
this
.
getTeacher
();
var
e
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
teacher_id
&&
(
e
.
teacher_id
=
this
.
teacher_id
),
Object
(
s
.
_5
)(
this
.
periods
.
id
,
e
).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
arrive_course_rate
=
0
,
t
.
watch_course_rate
=
0
,
t
.
over_course_rate
=
0
,
t
.
work_rate
=
0
,
t
.
over_work_rate
=
0
,
t
.
clock_rate
=
0
,
t
.
over_clock_rate
=
0
,
t
.
transform_rate
=
0
}),
t
.
title
=
e
.
periods
,
t
.
countObj
=
e
.
count
?
e
.
count
:
""
,
t
.
classList
=
e
.
list
,
t
.
total
=
e
.
total
})}},
handleItemChange
:
function
(
t
){
var
e
=
this
;
Object
(
s
.
_19
)({
goods_id
:
t
[
0
]}).
then
(
function
(
i
){
i
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
e
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]}).
children
=
i
.
list
})},
delClass
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该班级?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
w
)(
t
.
id
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
e
.
getClassList
()})})},
onAdd
:
function
(){
console
.
log
(
"onAdd"
,
this
.
periods
),
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"添加班级"
,
type
:
0
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)},
editClass
:
function
(
t
){
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"编辑班级"
,
type
:
1
,
id
:
t
.
id
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)}}},
_
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"div"
,{
staticClass
:
"class"
},[
i
(
"div"
,{
staticClass
:
"form-block"
},[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
i
(
"el-cascader"
,{
attrs
:{
options
:
t
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
t
.
handleItemChange
,
change
:
t
.
changePeriods
},
model
:{
value
:
t
.
selectedGoods
,
callback
:
function
(
e
){
t
.
selectedGoods
=
e
},
expression
:
"selectedGoods"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
i
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
,
clearable
:
""
},
model
:{
value
:
t
.
teacher_id
,
callback
:
function
(
e
){
t
.
teacher_id
=
e
},
expression
:
"teacher_id"
}},
t
.
_l
(
t
.
teacherList
,
function
(
t
,
e
){
return
i
(
"el-option"
,{
key
:
e
,
attrs
:{
label
:
t
.
teacher_name
,
value
:
t
.
teacher_id
}})}))],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
""
}},[
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
getClassList
}},[
t
.
_v
(
"
\n
搜索
\n
"
)])],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
t
.
onAdd
}},[
t
.
_v
(
"+添加班级"
)])],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
t
.
classList
&&
t
.
classList
.
length
>
0
?
i
(
"div"
,{
staticClass
:
"intro"
},[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"100px"
}},[
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"期数名称"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
title
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"可看课包数"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
watch_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"已看课包数"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
has_watch_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"开始时间"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
start_at
))])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"老师数量"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_teacher_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"预计学员总数"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_max_join_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"学员总数"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_join_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"结束时间"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
over_at
))])],
1
)],
1
)],
1
)],
1
):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
classList
&&
0
!==
t
.
classList
.
length
?
t
.
_e
():
i
(
"div"
,[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"300px"
,
inline
:
""
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"暂无期数信息,请先选择期数"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
classList
},
on
:{
"expand-change"
:
t
.
changeRow
}},[
i
(
"el-table-column"
,{
attrs
:{
type
:
"expand"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:[
e
.
row
]}},[
i
(
"el-table-column"
,{
attrs
:{
label
:
"到课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
arrive_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
watch_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"完课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
work_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"全勤作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_work_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
clock_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"全勤打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_clock_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"转化率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
transform_rate
)))])]}}])})],
1
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"teacher_name"
,
label
:
"班主任"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"班级类型"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"classTypeFilter"
)(
e
.
row
.
type
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"max_join_num"
,
label
:
"最大人数"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"join_num"
,
label
:
"现有人数"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
width
:
"250"
,
label
:
"操作"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"primary"
},
on
:{
click
:
function
(
i
){
t
.
showUser
(
e
.
row
)}}},[
t
.
_v
(
"班级成员"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"warning"
},
on
:{
click
:
function
(
i
){
t
.
editClass
(
e
.
row
)}}},[
t
.
_v
(
"编辑"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
&&!
t
.
$store
.
state
.
readonly
?
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"danger"
},
on
:{
click
:
function
(
i
){
t
.
delClass
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]):
t
.
_e
()]}}])})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
nowPage
:
t
.
nowPage
,
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
}}),
t
.
_v
(
" "
),
i
(
"class-dialog"
,{
attrs
:{
dialogObj
:
t
.
dialogObj
},
on
:{
reflash
:
t
.
onReflash
}}),
t
.
_v
(
" "
),
i
(
"user-list"
,{
attrs
:{
userObj
:
t
.
userObj
},
on
:{
reflash
:
t
.
getClassList
}})],
1
)},
staticRenderFns
:[]};
var
h
=
i
(
"VU/8"
)(
d
,
_
,
!
1
,
function
(
t
){
i
(
"Xcol"
),
i
(
"+Xdu"
)},
"data-v-2b54d131"
,
null
);
e
.
default
=
h
.
exports
},
Xcol
:
function
(
t
,
e
){},
pe1i
:
function
(
t
,
e
){},
zrzO
:
function
(
t
,
e
){}});
\ No newline at end of file
dist/static/js/6.fc48035e877aa3a9412a.js
deleted
100644 → 0
View file @
fa6496f6
webpackJsonp
([
6
],{
"+Xdu"
:
function
(
t
,
e
){},
EwXp
:
function
(
t
,
e
){},
OX9A
:
function
(
t
,
e
,
i
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
s
=
i
(
"CCn6"
),
o
=
{
props
:[
"dialogObj"
],
data
:
function
(){
return
{
form
:{
teacher_id
:
""
,
max_join_num
:
""
},
teacherList
:[],
exitTeacherList
:[],
goodsList
:[],
periods
:{}}},
methods
:{
findDifferentArray
:
function
(
t
,
e
){
var
i
=
[];
return
t
.
forEach
(
function
(
t
){
-
1
===
e
.
findIndex
(
function
(
e
){
return
e
.
teacher_id
==
t
.
id
})
&&
i
.
push
(
t
)}),
i
},
getTeacher
:
function
(){
var
t
=
this
;
this
.
exitTeacherList
=
this
.
dialogObj
.
teacherList
.
length
>
0
?
this
.
dialogObj
.
teacherList
:[],
Object
(
s
.
_29
)().
then
(
function
(
e
){
if
(
t
.
exitTeacherList
.
length
>
0
){
if
(
t
.
teacherList
=
t
.
findDifferentArray
(
e
.
list
,
t
.
exitTeacherList
),
t
.
form
.
teacher_id
&&-
1
===
t
.
teacherList
.
findIndex
(
function
(
e
){
return
e
.
id
==
t
.
form
.
teacher_id
})){
var
i
=
e
.
list
.
find
(
function
(
e
){
return
e
.
id
==
t
.
form
.
teacher_id
});
t
.
teacherList
.
push
(
i
)}}
else
t
.
teacherList
=
e
.
list
})},
getTeacherByPeriods
:
function
(){
var
t
=
this
;
Object
(
s
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
e
){
t
.
exitTeacherList
=
e
,
Object
(
s
.
_29
)().
then
(
function
(
e
){
t
.
exitTeacherList
.
length
>
0
?
t
.
teacherList
=
t
.
findDifferentArray
(
e
.
list
,
t
.
exitTeacherList
):
t
.
teacherList
=
e
.
list
})})},
initPage
:
function
(){
var
t
=
this
;
switch
(
this
.
periods
=
this
.
dialogObj
.
periods
,
this
.
dialogObj
.
type
){
case
0
:
this
.
dialogObj
.
periodsId
||
this
.
getPeriodList
(),
this
.
form
=
{
teacher_id
:
""
,
max_join_num
:
""
},
this
.
getTeacher
();
break
;
case
1
:
Object
(
s
.
_4
)(
this
.
dialogObj
.
id
).
then
(
function
(
e
){
t
.
form
=
{
teacher_id
:
parseInt
(
e
.
teacher_id
),
max_join_num
:
e
.
max_join_num
},
t
.
getTeacher
()})}},
getPeriodList
:
function
(){
var
t
=
this
;
Object
(
s
.
_13
)().
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
children
=
[]}),
t
.
goodsList
=
e
.
list
,
t
.
periods
||
Object
(
s
.
_19
)({
goods_id
:
t
.
goodsList
[
0
].
id
}).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
t
.
goodsList
[
0
].
children
=
e
.
list
,
t
.
periods
=
e
.
list
[
0
]})})},
onSave
:
function
(){
var
t
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
var
e
=
this
.
dialogObj
.
periodsId
?
this
.
dialogObj
.
periodsId
:
this
.
periods
.
id
;
Object
(
s
.
f
)(
e
,
this
.
form
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
t
.
$emit
(
"reflash"
,
t
.
periods
),
t
.
dialogObj
.
show
=!
1
});
break
;
case
1
:
Object
(
s
.
M
)(
this
.
dialogObj
.
id
,
this
.
form
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
t
.
$emit
(
"reflash"
,
t
.
periods
),
t
.
dialogObj
.
show
=!
1
})}},
handleItemChange
:
function
(
t
){
var
e
=
this
;
Object
(
s
.
_19
)({
goods_id
:
t
[
0
]}).
then
(
function
(
i
){
i
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
e
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]}).
children
=
i
.
list
})},
changePeriods
:
function
(
t
){
if
(
t
.
length
>
1
){
var
e
=
this
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]});
this
.
periods
=
e
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
[
1
]}),
this
.
getTeacherByPeriods
()}}},
watch
:{
dialogObj
:
function
(
t
){
this
.
initPage
()}}},
n
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"el-dialog"
,{
attrs
:{
title
:
t
.
dialogObj
.
title
,
visible
:
t
.
dialogObj
.
show
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
dialogObj
,
"show"
,
e
)}}},[
i
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
form
,
"label-width"
:
"120px"
}},[
this
.
dialogObj
.
periodsId
?
t
.
_e
():
i
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
i
(
"el-cascader"
,{
attrs
:{
options
:
t
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
t
.
handleItemChange
,
change
:
t
.
changePeriods
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
i
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
t
.
form
.
teacher_id
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"teacher_id"
,
e
)},
expression
:
"form.teacher_id"
}},
t
.
_l
(
t
.
teacherList
,
function
(
t
,
e
){
return
i
(
"el-option"
,{
key
:
e
,
attrs
:{
label
:
t
.
name
,
value
:
t
.
id
}})}))],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"最大学员"
}},[
i
(
"el-input-number"
,{
model
:{
value
:
t
.
form
.
max_join_num
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"max_join_num"
,
e
)},
expression
:
"form.max_join_num"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
i
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogObj
.
show
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
onSave
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
)},
staticRenderFns
:[]};
var
a
=
i
(
"VU/8"
)(
o
,
n
,
!
1
,
function
(
t
){
i
(
"pe1i"
)},
"data-v-46142434"
,
null
).
exports
,
r
=
i
(
"kmJW"
),
l
=
i
(
"+TkF"
),
c
=
{
name
:
"userList"
,
props
:[
"userObj"
],
data
:
function
(){
return
{
userTable
:[],
addId
:
""
,
lookDetail
:{
show
:
!
1
,
loading
:
!
1
,
list
:[]},
addShow
:
!
1
,
userList
:[],
nowPage
:
1
,
limit
:
5
,
total
:
0
,
searchFrom
:{
userId
:
""
,
nickName
:
""
,
mobile
:
""
},
multipleSelection
:[]}},
components
:{
page
:
r
.
a
},
filters
:{
isOrNot
:
function
(
t
){
return
l
.
h
[
t
]},
percent
:
function
(
t
){
return
(
100
*
t
).
toFixed
(
2
)
+
"%"
}},
methods
:{
userLook
:
function
(
t
){
var
e
=
this
;
this
.
lookDetail
.
show
=!
0
,
this
.
lookDetail
.
loading
=!
0
,
Object
(
s
.
_47
)(
t
.
periods_id
,
t
.
id
).
then
(
function
(
t
){
e
.
lookDetail
.
list
=
t
.
list
,
e
.
lookDetail
.
loading
=!
1
})},
initPage
:
function
(){
var
t
=
this
;
Object
(
s
.
_7
)(
this
.
userObj
.
classId
).
then
(
function
(
e
){
t
.
userTable
=
e
.
list
})},
changeUser
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将修改成员看课权限?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
p
)(
t
.
id
,{
is_view_course
:
0
===
t
.
is_view_course
?
1
:
0
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
initPage
()})})},
onDel
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该成员?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
x
)(
t
.
id
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
e
.
initPage
()})})},
onAdd
:
function
(){
var
t
=
this
;
0
!==
this
.
multipleSelection
.
length
?
1
===
this
.
multipleSelection
.
length
?(
this
.
addId
=
this
.
multipleSelection
[
0
].
user_id
,
this
.
addId
&&
Object
(
s
.
g
)(
this
.
userObj
.
classId
,
this
.
addId
,{
is_buy
:
0
}).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"添加成功!"
}),
t
.
addShow
=!
1
,
t
.
initPage
()})):
this
.
$message
({
type
:
"error"
,
message
:
"只能选择一个用户!"
}):
this
.
$message
({
type
:
"error"
,
message
:
"请选择用户!"
})},
onAddUser
:
function
(){
this
.
addShow
=!
0
,
this
.
getUser
()},
getUser
:
function
(){
var
t
=
this
,
e
=
{
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
searchFrom
.
userId
&&
(
e
.
user_id
=
this
.
searchFrom
.
userId
),
this
.
searchFrom
.
nickName
&&
(
e
.
nickname
=
this
.
searchFrom
.
nickName
),
this
.
searchFrom
.
mobile
&&
(
e
.
mobile
=
this
.
searchFrom
.
mobile
),
Object
(
s
.
_31
)(
e
).
then
(
function
(
e
){
t
.
userList
=
e
.
list
,
t
.
total
=
e
.
total
})},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getUser
()},
handleSelectionChange
:
function
(
t
){
this
.
multipleSelection
=
t
},
editComment
:
function
(
t
,
e
){
var
i
=
this
;
this
.
$prompt
(
""
,
"编辑备注"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
inputValue
:
e
}).
then
(
function
(
e
){
var
o
=
e
.
value
;
Object
(
s
.
k
)(
t
,{
desc
:
o
}).
then
(
function
(
t
){
i
.
$message
({
type
:
"success"
,
message
:
"编辑备注成功"
}),
i
.
initPage
()})})}},
watch
:{
userObj
:
function
(){
this
.
initPage
()}}},
d
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"el-dialog"
,{
attrs
:{
title
:
t
.
userObj
.
title
,
visible
:
t
.
userObj
.
show
,
modal
:
!
1
,
fullscreen
:
!
0
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
userObj
,
"show"
,
e
)}}},[
i
(
"div"
,[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
i
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
t
.
onAddUser
}},[
t
.
_v
(
"+添加用户"
)])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
userTable
}},[
i
(
"el-table-column"
,{
attrs
:{
label
:
"用户"
,
className
:
"f-c"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
e
.
row
.
avatar
}}),
t
.
_v
(
" "
+
t
.
_s
(
e
.
row
.
nickname
)
+
"(ID:"
+
t
.
_s
(
e
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"是否购买"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
0
===
e
.
row
.
is_buy
?
"否"
:
"是"
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"看课权限"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"isOrNot"
)(
e
.
row
.
is_view_course
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"desc"
,
label
:
"备注"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"最后登录时间"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
last_login_at
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
watch_course_rate
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"课包查看次数"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
watch_course_num
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"学习时长(分)"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
Math
.
round
(
e
.
row
.
watch_course_time
/
60
*
100
)
/
100
)
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
work_rate
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
clock_rate
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"续费情况"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"isOrNot"
)(
e
.
row
.
is_continue_buy
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-table-column"
,{
attrs
:{
label
:
"操作"
,
width
:
"300"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
editComment
(
e
.
row
.
id
,
e
.
row
.
desc
)}}},[
t
.
_v
(
"编辑备注"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
changeUser
(
e
.
row
)}}},[
t
.
_v
(
"看课权限"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
userLook
(
e
.
row
)}}},[
t
.
_v
(
"看课情况"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
&&!
t
.
$store
.
state
.
readonly
?
i
(
"el-button"
,{
attrs
:{
type
:
"danger"
,
size
:
"mini"
},
on
:{
click
:
function
(
i
){
t
.
onDel
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]):
t
.
_e
()]}}])})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
t
.
addShow
},
on
:{
"update:visible"
:
function
(
e
){
t
.
addShow
=
e
}}},[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
}},[
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"ID"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
userId
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"userId"
,
e
)},
expression
:
"searchFrom.userId"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"昵称"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
nickName
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"nickName"
,
e
)},
expression
:
"searchFrom.nickName"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"电话"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
searchFrom
.
mobile
,
callback
:
function
(
e
){
t
.
$set
(
t
.
searchFrom
,
"mobile"
,
e
)},
expression
:
"searchFrom.mobile"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
8
,
offset
:
16
}},[
i
(
"el-form-item"
,[
i
(
"el-button"
,{
staticStyle
:{
float
:
"right"
},
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
t
.
getUser
}},[
t
.
_v
(
"搜索"
)])],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-table"
,{
ref
:
"multipleTable"
,
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
userList
},
on
:{
"selection-change"
:
t
.
handleSelectionChange
}},[
i
(
"el-table-column"
,{
attrs
:{
type
:
"selection"
,
width
:
"55"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
className
:
"f-c"
,
label
:
"用户"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"img"
,{
staticStyle
:{
"margin-right"
:
"5px"
,
width
:
"50px"
,
height
:
"50px"
,
"border-radius"
:
"50px"
},
attrs
:{
src
:
e
.
row
.
avatar
}}),
t
.
_v
(
t
.
_s
(
e
.
row
.
nickname
)
+
"(ID:"
+
t
.
_s
(
e
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"mobile"
,
label
:
"手机号"
}})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
}}),
t
.
_v
(
" "
),
i
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
i
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
addShow
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
onAdd
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-dialog"
,{
attrs
:{
modal
:
!
1
,
visible
:
t
.
lookDetail
.
show
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
lookDetail
,
"show"
,
e
)}}},[
i
(
"el-table"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
t
.
lookDetail
.
loading
,
expression
:
"lookDetail.loading"
}],
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
lookDetail
.
list
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"periods_id"
,
label
:
"期数"
}})],
1
)],
1
)],
1
)},
staticRenderFns
:[]};
var
u
=
{
data
:
function
(){
return
{
nowPage
:
1
,
total
:
0
,
limit
:
10
,
periodsId
:
null
,
goodsList
:[],
teacher_id
:
""
,
classList
:[],
title
:
""
,
countObj
:
""
,
teacherList
:[],
userObj
:{
classId
:
""
,
title
:
""
,
show
:
!
1
},
dialogObj
:{
show
:
!
1
,
title
:
"添加班级"
,
periodsId
:
""
,
type
:
0
,
id
:
0
},
selectedGoods
:[]}},
components
:{
UserList
:
i
(
"VU/8"
)(
c
,
d
,
!
1
,
function
(
t
){
i
(
"EwXp"
)},
null
,
null
).
exports
,
classDialog
:
a
,
page
:
r
.
a
},
filters
:{
classTypeFilter
:
function
(
t
){
var
e
=
parseInt
(
t
);
return
1
===
e
?
"带班班级"
:
2
===
e
?
"观摩班级"
:
""
},
percent
:
function
(
t
){
return
(
100
*
t
).
toFixed
(
2
)
+
"%"
}},
mounted
:
function
(){
this
.
initPage
()},
methods
:{
changeRow
:
function
(
t
,
e
){
e
.
indexOf
(
t
)
>-
1
&&
Object
(
s
.
_6
)(
t
.
periods_id
,
t
.
id
).
then
(
function
(
e
){
t
.
arrive_course_rate
=
e
.
arrive_course_rate
,
t
.
watch_course_rate
=
e
.
watch_course_rate
,
t
.
over_course_rate
=
e
.
over_course_rate
,
t
.
work_rate
=
e
.
work_rate
,
t
.
over_work_rate
=
e
.
over_work_rate
,
t
.
clock_rate
=
e
.
clock_rate
,
t
.
over_clock_rate
=
e
.
over_clock_rate
,
t
.
transform_rate
=
e
.
transform_rate
})},
initQuery
:
function
(){
var
t
=
this
,
e
=
this
.
$route
.
query
;
e
&&
e
.
goods_id
&&
e
.
periods_id
&&
(
this
.
selectedGoods
=
[
parseInt
(
e
.
goods_id
),
parseInt
(
e
.
periods_id
)],
Object
(
s
.
_19
)({
goods_id
:
this
.
selectedGoods
[
0
]}).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
t
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
0
]}).
children
=
e
.
list
;
var
i
=
t
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
0
]});
t
.
periods
=
i
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
.
selectedGoods
[
1
]}),
t
.
teacher_id
=
""
,
t
.
getClassList
()}))},
initPage
:
function
(){
var
t
=
this
;
Object
(
s
.
_13
)().
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
children
=
[]}),
t
.
goodsList
=
e
.
list
,
t
.
initQuery
()})},
showUser
:
function
(
t
){
this
.
userObj
=
{
classId
:
t
.
id
,
show
:
!
0
,
title
:
t
.
teacher_name
+
"班级用户列表"
}},
getTeacher
:
function
(){
var
t
=
this
;
this
.
periods
&&
Object
(
s
.
_21
)(
this
.
periods
.
id
).
then
(
function
(
e
){
t
.
teacherList
=
e
})},
changePeriods
:
function
(
t
){
if
(
t
.
length
>
1
){
var
e
=
this
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]});
this
.
periods
=
e
.
children
.
find
(
function
(
e
){
return
e
.
id
===
t
[
1
]}),
this
.
teacher_id
=
""
,
this
.
getTeacher
()}},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getClassList
()},
onReflash
:
function
(
t
){
this
.
periods
=
t
,
this
.
selectedGoods
=
[
t
.
goods_id
,
t
.
id
],
this
.
getClassList
()},
getClassList
:
function
(){
var
t
=
this
;
if
(
this
.
periods
){
this
.
getTeacher
();
var
e
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
teacher_id
&&
(
e
.
teacher_id
=
this
.
teacher_id
),
Object
(
s
.
_5
)(
this
.
periods
.
id
,
e
).
then
(
function
(
e
){
e
.
list
.
forEach
(
function
(
t
){
t
.
arrive_course_rate
=
0
,
t
.
watch_course_rate
=
0
,
t
.
over_course_rate
=
0
,
t
.
work_rate
=
0
,
t
.
over_work_rate
=
0
,
t
.
clock_rate
=
0
,
t
.
over_clock_rate
=
0
,
t
.
transform_rate
=
0
}),
t
.
title
=
e
.
periods
,
t
.
countObj
=
e
.
count
?
e
.
count
:
""
,
t
.
classList
=
e
.
list
,
t
.
total
=
e
.
total
})}},
handleItemChange
:
function
(
t
){
var
e
=
this
;
Object
(
s
.
_19
)({
goods_id
:
t
[
0
]}).
then
(
function
(
i
){
i
.
list
.
forEach
(
function
(
t
){
t
.
name
=
t
.
title
}),
e
.
goodsList
.
find
(
function
(
e
){
return
e
.
id
===
t
[
0
]}).
children
=
i
.
list
})},
delClass
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该班级?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
w
)(
t
.
id
).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
e
.
getClassList
()})})},
onAdd
:
function
(){
console
.
log
(
"onAdd"
,
this
.
periods
),
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"添加班级"
,
type
:
0
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)},
editClass
:
function
(
t
){
this
.
dialogObj
=
{
show
:
!
0
,
title
:
"编辑班级"
,
type
:
1
,
id
:
t
.
id
,
teacherList
:
this
.
teacherList
?
this
.
teacherList
:[]},
this
.
periods
&&
(
this
.
dialogObj
.
periods
=
this
.
periods
,
this
.
dialogObj
.
periodsId
=
this
.
periods
.
id
)}}},
h
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"div"
,{
staticClass
:
"class"
},[
i
(
"div"
,{
staticClass
:
"form-block"
},[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"期数"
}},[
i
(
"el-cascader"
,{
attrs
:{
options
:
t
.
goodsList
,
props
:{
value
:
"id"
,
label
:
"name"
}},
on
:{
"active-item-change"
:
t
.
handleItemChange
,
change
:
t
.
changePeriods
},
model
:{
value
:
t
.
selectedGoods
,
callback
:
function
(
e
){
t
.
selectedGoods
=
e
},
expression
:
"selectedGoods"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"老师"
}},[
i
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
,
clearable
:
""
},
model
:{
value
:
t
.
teacher_id
,
callback
:
function
(
e
){
t
.
teacher_id
=
e
},
expression
:
"teacher_id"
}},
t
.
_l
(
t
.
teacherList
,
function
(
t
,
e
){
return
i
(
"el-option"
,{
key
:
e
,
attrs
:{
label
:
t
.
teacher_name
,
value
:
t
.
teacher_id
}})}))],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
""
}},[
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
getClassList
}},[
t
.
_v
(
"
\n
搜索
\n
"
)])],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
staticStyle
:{
float
:
"right"
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"success"
},
on
:{
click
:
t
.
onAdd
}},[
t
.
_v
(
"+添加班级"
)])],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
t
.
classList
&&
t
.
classList
.
length
>
0
?
i
(
"div"
,{
staticClass
:
"intro"
},[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"100px"
}},[
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"期数名称"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
title
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"可看课包数"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
watch_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"已看课包数"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
has_watch_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"开始时间"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
start_at
))])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"老师数量"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_teacher_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"预计学员总数"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_max_join_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"学员总数"
}},[
t
.
_v
(
t
.
_s
(
t
.
countObj
.
count_join_num
))])],
1
),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
6
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"结束时间"
}},[
t
.
_v
(
t
.
_s
(
t
.
title
.
over_at
))])],
1
)],
1
)],
1
)],
1
):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
classList
&&
0
!==
t
.
classList
.
length
?
t
.
_e
():
i
(
"div"
,[
i
(
"el-form"
,{
attrs
:{
"label-width"
:
"300px"
,
inline
:
""
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"暂无期数信息,请先选择期数"
}})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
classList
},
on
:{
"expand-change"
:
t
.
changeRow
}},[
i
(
"el-table-column"
,{
attrs
:{
type
:
"expand"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:[
e
.
row
]}},[
i
(
"el-table-column"
,{
attrs
:{
label
:
"到课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
arrive_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"看课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
watch_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"完课率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_course_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
work_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"全勤作业率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_work_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
clock_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"全勤打卡率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
over_clock_rate
)))])]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"转化率"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"span"
,[
t
.
_v
(
t
.
_s
(
t
.
_f
(
"percent"
)(
e
.
row
.
transform_rate
)))])]}}])})],
1
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"teacher_name"
,
label
:
"班主任"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"班级类型"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"classTypeFilter"
)(
e
.
row
.
type
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"max_join_num"
,
label
:
"最大人数"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"join_num"
,
label
:
"现有人数"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
width
:
"250"
,
label
:
"操作"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"primary"
},
on
:{
click
:
function
(
i
){
t
.
showUser
(
e
.
row
)}}},[
t
.
_v
(
"班级成员"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"warning"
},
on
:{
click
:
function
(
i
){
t
.
editClass
(
e
.
row
)}}},[
t
.
_v
(
"编辑"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
&&!
t
.
$store
.
state
.
readonly
?
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
type
:
"danger"
},
on
:{
click
:
function
(
i
){
t
.
delClass
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]):
t
.
_e
()]}}])})],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
nowPage
:
t
.
nowPage
,
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
}}),
t
.
_v
(
" "
),
i
(
"class-dialog"
,{
attrs
:{
dialogObj
:
t
.
dialogObj
},
on
:{
reflash
:
t
.
onReflash
}}),
t
.
_v
(
" "
),
i
(
"user-list"
,{
attrs
:{
userObj
:
t
.
userObj
},
on
:{
reflash
:
t
.
getClassList
}})],
1
)},
staticRenderFns
:[]};
var
_
=
i
(
"VU/8"
)(
u
,
h
,
!
1
,
function
(
t
){
i
(
"Xcol"
),
i
(
"+Xdu"
)},
"data-v-2b54d131"
,
null
);
e
.
default
=
_
.
exports
},
Xcol
:
function
(
t
,
e
){},
pe1i
:
function
(
t
,
e
){}});
\ No newline at end of file
dist/static/js/app.9f92cfe99a9e477c7436.js
0 → 100644
View file @
1a8add53
webpackJsonp
([
32
],{
IcnI
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"NYxO"
),
r
=
t
(
"zSLJ"
),
i
=
{
setToken
:
function
(
e
,
n
){
e
.
token
=
n
,
r
.
a
.
set
(
"cc_token"
,
n
)},
setUserName
:
function
(
e
,
n
){
e
.
userName
=
n
,
r
.
a
.
set
(
"cc_user_name"
,
n
)},
setPermission
:
function
(
e
,
n
){
e
.
progressList
=
n
,
localStorage
.
setItem
(
"permission"
,
JSON
.
stringify
(
n
))},
setMenu
:
function
(
e
,
n
){
e
.
menuList
=
n
},
readonly
:
function
(
e
,
n
){
e
.
readonly
=
n
},
deletePermission
:
function
(
e
,
n
){
e
.
deletePermission
=
n
},
mainCanShow
:
function
(
e
){
e
.
mainLoad
=!
1
},
mainUnShow
:
function
(
e
){
e
.
mainLoad
=!
0
},
changeParentRouter
:
function
(
e
,
n
){
e
.
menuList
.
find
(
function
(
e
){
return
e
.
name
===
n
.
name
}).
routerName
=
n
.
to
.
name
},
progress
:
function
(
e
,
n
){
switch
(
n
.
type
){
case
"new"
:
e
.
progressList
.
push
({
num
:
0
,
id
:
n
.
id
});
break
;
case
"change"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
}).
num
=
n
.
num
;
break
;
case
"delete"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
})}}},
u
=
{
setToken
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setToken"
,
n
)},
setUserName
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setUserName"
,
n
)},
setProgress
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"progress"
,
n
)},
setPermission
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setPermission"
,
n
)},
setMenu
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setMenu"
,
n
)},
readonly
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"readonly"
,
n
)},
deletePermission
:
function
(
e
,
n
){
var
t
=
e
.
commit
;
console
.
log
(
n
),
t
(
"deletePermission"
,
n
)}};
o
.
default
.
use
(
a
.
a
);
n
.
a
=
new
a
.
a
.
Store
({
state
:{
show
:
!
1
,
userName
:
""
,
token
:
""
,
orderRefund
:
!
1
,
permission
:
!
1
,
readonly
:
!
0
,
deletePermission
:
!
1
,
mainLoad
:
!
0
,
menuList
:[],
menuType
:
!
1
,
nowTab
:
"first"
,
progressList
:[],
openedTab
:[{
value
:
"首页"
,
routerName
:
"first"
,
name
:
"first"
,
delNo
:
!
0
,
path
:
"/index"
}]},
mutations
:
i
,
actions
:
u
})},
NHnr
:
function
(
e
,
n
,
t
){
"use strict"
;
Object
.
defineProperty
(
n
,
"__esModule"
,{
value
:
!
0
});
var
o
=
t
(
"7+uW"
),
a
=
[{
name
:
""
,
value
:
"教研管理"
,
icon
:
"icon-material"
,
list
:[{
value
:
"教材列表"
,
routerName
:
"resources"
,
path
:
"/resources"
,
cover
:
"1-1"
,
router
:{
path
:
"/resources"
,
name
:
"resources"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
1
)]).
then
(
function
(){
var
n
=
[
t
(
"z5EG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"商品课程"
,
icon
:
"icon-shangpin1"
,
list
:[{
value
:
"课程列表"
,
routerName
:
"lesson"
,
path
:
"/lesson"
,
cover
:
"2-1"
,
router
:{
path
:
"/lesson"
,
name
:
"lesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
4
)]).
then
(
function
(){
var
n
=
[
t
(
"AbSL"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"商品列表"
,
routerName
:
"shop"
,
path
:
"/shop"
,
cover
:
"4-1"
,
router
:{
path
:
"/shop"
,
name
:
"shop"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
17
)]).
then
(
function
(){
var
n
=
[
t
(
"1djJ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"期数管理"
,
icon
:
"icon-kecheng"
,
list
:[{
value
:
"期数列表"
,
routerName
:
"periods"
,
path
:
"/periods"
,
cover
:
"2-2"
,
router
:{
path
:
"/periods"
,
name
:
"periods"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
9
)]).
then
(
function
(){
var
n
=
[
t
(
"ayGs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"班级列表"
,
routerName
:
"class"
,
path
:
"/class"
,
cover
:
"2-3"
,
router
:{
path
:
"/class"
,
name
:
"class"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
6
)]).
then
(
function
(){
var
n
=
[
t
(
"OX9A"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"不上课日期"
,
routerName
:
"noLesson"
,
path
:
"/noLesson"
,
cover
:
"2-4"
,
router
:{
path
:
"/noLesson"
,
name
:
"noLesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
21
)]).
then
(
function
(){
var
n
=
[
t
(
"sg/1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"人员管理"
,
icon
:
"icon-laoshi"
,
list
:[{
value
:
"教师列表"
,
routerName
:
"teacher"
,
path
:
"/teacher"
,
cover
:
"3-1"
,
router
:{
path
:
"/teacher"
,
name
:
"teacher"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
13
)]).
then
(
function
(){
var
n
=
[
t
(
"Y0Vi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"用户列表"
,
routerName
:
"user"
,
path
:
"/user"
,
cover
:
"3-2"
,
router
:{
path
:
"/user"
,
name
:
"user"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
7
)]).
then
(
function
(){
var
n
=
[
t
(
"jFLA"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"订单管理"
,
icon
:
"icon-dingdan"
,
list
:[{
value
:
"订单列表"
,
routerName
:
"order"
,
path
:
"/order"
,
cover
:
"5-1"
,
router
:{
path
:
"/order"
,
name
:
"order"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
2
)]).
then
(
function
(){
var
n
=
[
t
(
"2qmY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"退款列表"
,
routerName
:
"refund"
,
path
:
"/refund"
,
cover
:
"5-2"
,
router
:{
path
:
"/refund"
,
name
:
"refund"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
16
)]).
then
(
function
(){
var
n
=
[
t
(
"89rD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"提现列表"
,
routerName
:
"putForward"
,
path
:
"/putForward"
,
cover
:
"5-3"
,
router
:{
path
:
"/putForward"
,
name
:
"putForward"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
24
)]).
then
(
function
(){
var
n
=
[
t
(
"F5pf"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"发货管理"
,
routerName
:
"consignment"
,
path
:
"/consignment"
,
cover
:
"5-4"
,
router
:{
path
:
"/consignment"
,
name
:
"consignment"
,
component
:
function
(
e
){
return
t
.
e
(
28
).
then
(
function
(){
var
n
=
[
t
(
"usUK"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"实物管理"
,
icon
:
"icon-shu"
,
list
:[{
value
:
"单品列表"
,
routerName
:
"single"
,
path
:
"/single"
,
cover
:
"6-1"
,
router
:{
path
:
"/single"
,
name
:
"single"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
14
)]).
then
(
function
(){
var
n
=
[
t
(
"B31M"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"盒子列表"
,
routerName
:
"box"
,
path
:
"/box"
,
cover
:
"6-2"
,
router
:{
path
:
"/box"
,
name
:
"box"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
8
)]).
then
(
function
(){
var
n
=
[
t
(
"+vCD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"公众号"
,
icon
:
"icon-ai-weixin"
,
list
:[{
value
:
"自动回复"
,
routerName
:
"focusReply"
,
path
:
"/focusReply"
,
cover
:
"7-1"
,
router
:{
path
:
"/focusReply"
,
name
:
"focusReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
10
)]).
then
(
function
(){
var
n
=
[
t
(
"CK6D"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"关键词回复"
,
routerName
:
"autoReply"
,
path
:
"/autoReply"
,
cover
:
"7-2"
,
router
:{
path
:
"/autoReply"
,
name
:
"autoReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
19
)]).
then
(
function
(){
var
n
=
[
t
(
"65NY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"公众号菜单"
,
routerName
:
"weChat"
,
path
:
"/weChat"
,
cover
:
"7-3"
,
router
:{
path
:
"/weChat"
,
name
:
"weChat"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
11
)]).
then
(
function
(){
var
n
=
[
t
(
"q5av"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"素材管理"
,
routerName
:
"weChatResource"
,
path
:
"/weChatResource"
,
cover
:
"7-4"
,
router
:{
path
:
"/weChatResource"
,
name
:
"weChatResource"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
20
)]).
then
(
function
(){
var
n
=
[
t
(
"Xhqp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"Banner管理"
,
routerName
:
"banner"
,
path
:
"/banner"
,
cover
:
"7-5"
,
router
:{
path
:
"/banner"
,
name
:
"banner"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
15
)]).
then
(
function
(){
var
n
=
[
t
(
"CGL6"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"系统管理"
,
icon
:
"icon-shezhi"
,
list
:[{
value
:
"账号管理"
,
routerName
:
"admin"
,
path
:
"/admin"
,
cover
:
"8-1"
,
router
:{
path
:
"/admin"
,
name
:
"admin"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
29
)]).
then
(
function
(){
var
n
=
[
t
(
"+jTk"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"角色管理"
,
routerName
:
"role"
,
path
:
"/role"
,
cover
:
"8-2"
,
router
:{
path
:
"/role"
,
name
:
"role"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
30
)]).
then
(
function
(){
var
n
=
[
t
(
"Vt1u"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"菜单管理"
,
routerName
:
"menu"
,
path
:
"/menu"
,
cover
:
"8-3"
,
router
:{
path
:
"/menu"
,
name
:
"menu"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
26
)]).
then
(
function
(){
var
n
=
[
t
(
"aTXs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"系统配置"
,
routerName
:
"sysConfig"
,
path
:
"/sysConfig"
,
cover
:
"8-4"
,
router
:{
path
:
"/sysConfig"
,
name
:
"sysConfig"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
23
)]).
then
(
function
(){
var
n
=
[
t
(
"gaNG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"操作日志"
,
routerName
:
"adminLog"
,
path
:
"/adminLog"
,
cover
:
"8-5"
,
router
:{
path
:
"/adminLog"
,
name
:
"adminLog"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
25
)]).
then
(
function
(){
var
n
=
[
t
(
"WZgi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]}],
r
=
{
name
:
"App"
,
data
:
function
(){
return
{}},
mounted
:
function
(){
var
e
=
this
;
if
(
window
.
location
.
href
.
indexOf
(
"login"
)
<
0
){
var
n
=
this
.
$store
.
state
.
progressList
,
t
=
[];
this
.
$router
.
options
.
routes
[
0
].
children
=
[];
var
o
=
n
.
find
(
function
(
e
){
return
"5-1"
===
e
.
cover
});
o
&&
o
.
refund
&&
(
this
.
$store
.
state
.
orderRefund
=!
0
),
a
.
forEach
(
function
(
o
){
var
a
=!
1
,
r
=
[];
o
.
list
.
forEach
(
function
(
t
){
var
o
=
n
.
find
(
function
(
e
){
return
e
.
cover
===
t
.
cover
});
o
&&
(
t
.
router
.
meta
=
{},
t
.
router
.
meta
.
readonly
=
o
.
readonly
,
t
.
router
.
meta
.
delete
=!!
o
.
delete
,
r
.
push
(
t
),
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
t
.
router
),
a
=!
0
)}),
a
&&
(
o
.
list
=
r
,
t
.
push
(
o
))}),
this
.
$router
.
addRoutes
([
this
.
$router
.
options
.
routes
[
0
]]),
this
.
$store
.
dispatch
(
"setMenu"
,
t
)}}},
i
=
{
render
:
function
(){
var
e
=
this
.
$createElement
,
n
=
this
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
attrs
:{
id
:
"app"
}},[
n
(
"router-view"
)],
1
)},
staticRenderFns
:[]};
var
u
=
t
(
"VU/8"
)(
r
,
i
,
!
1
,
function
(
e
){
t
(
"vuE2"
)},
null
,
null
).
exports
,
c
=
t
(
"YaEn"
),
s
=
t
(
"zL8q"
),
l
=
t
.
n
(
s
),
p
=
(
t
(
"tvR6"
),
t
(
"IcnI"
));
o
.
default
.
use
(
l
.
a
),
o
.
default
.
config
.
productionTip
=!
1
,
new
o
.
default
({
el
:
"#app"
,
store
:
p
.
a
,
router
:
c
.
a
,
components
:{
App
:
u
},
template
:
"<App/>"
})},
YaEn
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"IcnI"
),
r
=
t
(
"/ocq"
),
i
=
t
(
"zSLJ"
);
o
.
default
.
use
(
r
.
a
);
var
u
=
new
r
.
a
({
routes
:[{
path
:
"/"
,
name
:
"index"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
5
)]).
then
(
function
(){
var
n
=
[
t
(
"jHcp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
redirect
:{
name
:
"first"
},
children
:[{
path
:
""
,
name
:
"first"
,
component
:
function
(
e
){
return
t
.
e
(
3
).
then
(
function
(){
var
n
=
[
t
(
"sJm1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/userDetail/:id"
,
name
:
"userDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
12
)]).
then
(
function
(){
var
n
=
[
t
(
"9PRC"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/teacher/:id"
,
name
:
"teacherDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
22
)]).
then
(
function
(){
var
n
=
[
t
(
"hFUZ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}]},{
path
:
"/login"
,
name
:
"login"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
18
)]).
then
(
function
(){
var
n
=
[
t
(
"0HId"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}},{
path
:
"/upload"
,
name
:
"upload"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
27
)]).
then
(
function
(){
var
n
=
[
t
(
"iPJD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}}]});
u
.
beforeEach
(
function
(
e
,
n
,
t
){
if
(
a
.
a
.
commit
(
"mainCanShow"
),
i
.
a
.
get
(
"cc_token"
)
&&
(
a
.
a
.
dispatch
(
"setToken"
,
i
.
a
.
get
(
"cc_token"
)),
a
.
a
.
dispatch
(
"setPermission"
,
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
))),
null
!==
i
.
a
.
get
(
"cc_user_name"
)
&&
a
.
a
.
dispatch
(
"setUserName"
,
i
.
a
.
get
(
"cc_user_name"
))),
a
.
a
.
state
.
nowTab
=
e
.
name
,
e
.
matched
.
length
>
1
&&
"first"
!==
e
.
name
){
for
(
var
o
=
void
0
,
r
=
0
;
r
<
a
.
a
.
state
.
menuList
.
length
;
r
++
)
for
(
var
u
=
a
.
a
.
state
.
menuList
[
r
],
c
=
0
;
c
<
u
.
list
.
length
;
c
++
){
var
s
=
u
.
list
[
c
];
s
.
path
===
e
.
path
&&
(
o
=
s
)}
a
.
a
.
state
.
openedTab
.
indexOf
(
o
)
<
0
&&
a
.
a
.
state
.
openedTab
.
push
(
o
)}
if
(
e
.
meta
.
readonly
?
a
.
a
.
dispatch
(
"readonly"
,
!
0
):
a
.
a
.
dispatch
(
"readonly"
,
!
1
),
"userDetail"
===
e
.
name
){
var
l
=
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
)).
find
(
function
(
e
){
return
"3-2"
===
e
.
cover
}).
readonly
;
a
.
a
.
dispatch
(
"readonly"
,
l
)}
e
.
meta
.
delete
?
a
.
a
.
dispatch
(
"deletePermission"
,
!
0
):
a
.
a
.
dispatch
(
"deletePermission"
,
!
1
),
e
.
matched
.
some
(
function
(
e
){
return
!
0
!==
e
.
meta
.
skip_auth
})
&&!
a
.
a
.
state
.
token
?
t
({
path
:
"/login"
}):
t
()}),
u
.
onError
(
function
(
e
){
var
n
=
e
.
message
.
match
(
/Loading chunk
(\d)
+ failed/g
),
t
=
u
.
history
.
pending
.
fullPath
;
n
&&
u
.
replace
(
t
)}),
n
.
a
=
u
},
tvR6
:
function
(
e
,
n
){},
vuE2
:
function
(
e
,
n
){},
zSLJ
:
function
(
e
,
n
,
t
){
"use strict"
;
n
.
a
=
{
set
:
function
(
e
,
n
,
t
){
var
o
=
new
Date
;
o
.
setTime
(
o
.
getTime
()
+
864
e5
*
t
),
window
.
document
.
cookie
=
e
+
"="
+
n
+
";path=/;expires="
+
o
.
toGMTString
()},
get
:
function
(
e
){
var
n
=
window
.
document
.
cookie
.
match
(
"(^|;) ?"
+
e
+
"=([^;]*)(;|$)"
);
return
n
?
n
[
2
]:
null
},
delete
:
function
(
e
){
this
.
set
(
e
,
""
,
-
1
)}}}},[
"NHnr"
]);
\ No newline at end of file
dist/static/js/app.db77a8c2894f9648f27b.js
deleted
100644 → 0
View file @
fa6496f6
webpackJsonp
([
32
],{
FLAZ
:
function
(
e
,
n
){},
IcnI
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"NYxO"
),
r
=
t
(
"zSLJ"
),
i
=
{
setToken
:
function
(
e
,
n
){
e
.
token
=
n
,
r
.
a
.
set
(
"cc_token"
,
n
)},
setUserName
:
function
(
e
,
n
){
e
.
userName
=
n
,
r
.
a
.
set
(
"cc_user_name"
,
n
)},
setPermission
:
function
(
e
,
n
){
e
.
progressList
=
n
,
localStorage
.
setItem
(
"permission"
,
JSON
.
stringify
(
n
))},
setMenu
:
function
(
e
,
n
){
e
.
menuList
=
n
},
readonly
:
function
(
e
,
n
){
e
.
readonly
=
n
},
deletePermission
:
function
(
e
,
n
){
e
.
deletePermission
=
n
},
mainCanShow
:
function
(
e
){
e
.
mainLoad
=!
1
},
mainUnShow
:
function
(
e
){
e
.
mainLoad
=!
0
},
changeParentRouter
:
function
(
e
,
n
){
e
.
menuList
.
find
(
function
(
e
){
return
e
.
name
===
n
.
name
}).
routerName
=
n
.
to
.
name
},
progress
:
function
(
e
,
n
){
switch
(
n
.
type
){
case
"new"
:
e
.
progressList
.
push
({
num
:
0
,
id
:
n
.
id
});
break
;
case
"change"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
}).
num
=
n
.
num
;
break
;
case
"delete"
:
e
.
progressList
.
find
(
function
(
e
){
return
e
.
id
===
n
.
id
})}}},
u
=
{
setToken
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setToken"
,
n
)},
setUserName
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setUserName"
,
n
)},
setProgress
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"progress"
,
n
)},
setPermission
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setPermission"
,
n
)},
setMenu
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"setMenu"
,
n
)},
readonly
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"readonly"
,
n
)},
deletePermission
:
function
(
e
,
n
){
var
t
=
e
.
commit
;
console
.
log
(
n
),
t
(
"deletePermission"
,
n
)}};
o
.
default
.
use
(
a
.
a
);
n
.
a
=
new
a
.
a
.
Store
({
state
:{
show
:
!
1
,
userName
:
""
,
token
:
""
,
orderRefund
:
!
1
,
permission
:
!
1
,
readonly
:
!
0
,
deletePermission
:
!
1
,
mainLoad
:
!
0
,
menuList
:[],
menuType
:
!
1
,
nowTab
:
"first"
,
progressList
:[],
openedTab
:[{
value
:
"首页"
,
routerName
:
"first"
,
name
:
"first"
,
delNo
:
!
0
,
path
:
"/index"
}]},
mutations
:
i
,
actions
:
u
})},
NHnr
:
function
(
e
,
n
,
t
){
"use strict"
;
Object
.
defineProperty
(
n
,
"__esModule"
,{
value
:
!
0
});
var
o
=
t
(
"7+uW"
),
a
=
[{
name
:
""
,
value
:
"教研管理"
,
icon
:
"icon-material"
,
list
:[{
value
:
"教材列表"
,
routerName
:
"resources"
,
path
:
"/resources"
,
cover
:
"1-1"
,
router
:{
path
:
"/resources"
,
name
:
"resources"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
1
)]).
then
(
function
(){
var
n
=
[
t
(
"z5EG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"商品课程"
,
icon
:
"icon-shangpin1"
,
list
:[{
value
:
"课程列表"
,
routerName
:
"lesson"
,
path
:
"/lesson"
,
cover
:
"2-1"
,
router
:{
path
:
"/lesson"
,
name
:
"lesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
4
)]).
then
(
function
(){
var
n
=
[
t
(
"AbSL"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"商品列表"
,
routerName
:
"shop"
,
path
:
"/shop"
,
cover
:
"4-1"
,
router
:{
path
:
"/shop"
,
name
:
"shop"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
17
)]).
then
(
function
(){
var
n
=
[
t
(
"1djJ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"期数管理"
,
icon
:
"icon-kecheng"
,
list
:[{
value
:
"期数列表"
,
routerName
:
"periods"
,
path
:
"/periods"
,
cover
:
"2-2"
,
router
:{
path
:
"/periods"
,
name
:
"periods"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
9
)]).
then
(
function
(){
var
n
=
[
t
(
"ayGs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"班级列表"
,
routerName
:
"class"
,
path
:
"/class"
,
cover
:
"2-3"
,
router
:{
path
:
"/class"
,
name
:
"class"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
6
)]).
then
(
function
(){
var
n
=
[
t
(
"OX9A"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"不上课日期"
,
routerName
:
"noLesson"
,
path
:
"/noLesson"
,
cover
:
"2-4"
,
router
:{
path
:
"/noLesson"
,
name
:
"noLesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
21
)]).
then
(
function
(){
var
n
=
[
t
(
"sg/1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"人员管理"
,
icon
:
"icon-laoshi"
,
list
:[{
value
:
"教师列表"
,
routerName
:
"teacher"
,
path
:
"/teacher"
,
cover
:
"3-1"
,
router
:{
path
:
"/teacher"
,
name
:
"teacher"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
13
)]).
then
(
function
(){
var
n
=
[
t
(
"Y0Vi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"用户列表"
,
routerName
:
"user"
,
path
:
"/user"
,
cover
:
"3-2"
,
router
:{
path
:
"/user"
,
name
:
"user"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
7
)]).
then
(
function
(){
var
n
=
[
t
(
"jFLA"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"订单管理"
,
icon
:
"icon-dingdan"
,
list
:[{
value
:
"订单列表"
,
routerName
:
"order"
,
path
:
"/order"
,
cover
:
"5-1"
,
router
:{
path
:
"/order"
,
name
:
"order"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
2
)]).
then
(
function
(){
var
n
=
[
t
(
"2qmY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"退款列表"
,
routerName
:
"refund"
,
path
:
"/refund"
,
cover
:
"5-2"
,
router
:{
path
:
"/refund"
,
name
:
"refund"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
16
)]).
then
(
function
(){
var
n
=
[
t
(
"89rD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"提现列表"
,
routerName
:
"putForward"
,
path
:
"/putForward"
,
cover
:
"5-3"
,
router
:{
path
:
"/putForward"
,
name
:
"putForward"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
24
)]).
then
(
function
(){
var
n
=
[
t
(
"F5pf"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"发货管理"
,
routerName
:
"consignment"
,
path
:
"/consignment"
,
cover
:
"5-4"
,
router
:{
path
:
"/consignment"
,
name
:
"consignment"
,
component
:
function
(
e
){
return
t
.
e
(
28
).
then
(
function
(){
var
n
=
[
t
(
"usUK"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"实物管理"
,
icon
:
"icon-shu"
,
list
:[{
value
:
"单品列表"
,
routerName
:
"single"
,
path
:
"/single"
,
cover
:
"6-1"
,
router
:{
path
:
"/single"
,
name
:
"single"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
14
)]).
then
(
function
(){
var
n
=
[
t
(
"B31M"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"盒子列表"
,
routerName
:
"box"
,
path
:
"/box"
,
cover
:
"6-2"
,
router
:{
path
:
"/box"
,
name
:
"box"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
8
)]).
then
(
function
(){
var
n
=
[
t
(
"+vCD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"公众号"
,
icon
:
"icon-ai-weixin"
,
list
:[{
value
:
"自动回复"
,
routerName
:
"focusReply"
,
path
:
"/focusReply"
,
cover
:
"7-1"
,
router
:{
path
:
"/focusReply"
,
name
:
"focusReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
10
)]).
then
(
function
(){
var
n
=
[
t
(
"CK6D"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"关键词回复"
,
routerName
:
"autoReply"
,
path
:
"/autoReply"
,
cover
:
"7-2"
,
router
:{
path
:
"/autoReply"
,
name
:
"autoReply"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
19
)]).
then
(
function
(){
var
n
=
[
t
(
"65NY"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"公众号菜单"
,
routerName
:
"weChat"
,
path
:
"/weChat"
,
cover
:
"7-3"
,
router
:{
path
:
"/weChat"
,
name
:
"weChat"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
11
)]).
then
(
function
(){
var
n
=
[
t
(
"q5av"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"素材管理"
,
routerName
:
"weChatResource"
,
path
:
"/weChatResource"
,
cover
:
"7-4"
,
router
:{
path
:
"/weChatResource"
,
name
:
"weChatResource"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
20
)]).
then
(
function
(){
var
n
=
[
t
(
"Xhqp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"Banner管理"
,
routerName
:
"banner"
,
path
:
"/banner"
,
cover
:
"7-5"
,
router
:{
path
:
"/banner"
,
name
:
"banner"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
15
)]).
then
(
function
(){
var
n
=
[
t
(
"CGL6"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"系统管理"
,
icon
:
"icon-shezhi"
,
list
:[{
value
:
"账号管理"
,
routerName
:
"admin"
,
path
:
"/admin"
,
cover
:
"8-1"
,
router
:{
path
:
"/admin"
,
name
:
"admin"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
29
)]).
then
(
function
(){
var
n
=
[
t
(
"+jTk"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"角色管理"
,
routerName
:
"role"
,
path
:
"/role"
,
cover
:
"8-2"
,
router
:{
path
:
"/role"
,
name
:
"role"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
30
)]).
then
(
function
(){
var
n
=
[
t
(
"Vt1u"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"菜单管理"
,
routerName
:
"menu"
,
path
:
"/menu"
,
cover
:
"8-3"
,
router
:{
path
:
"/menu"
,
name
:
"menu"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
26
)]).
then
(
function
(){
var
n
=
[
t
(
"aTXs"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"系统配置"
,
routerName
:
"sysConfig"
,
path
:
"/sysConfig"
,
cover
:
"8-4"
,
router
:{
path
:
"/sysConfig"
,
name
:
"sysConfig"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
23
)]).
then
(
function
(){
var
n
=
[
t
(
"gaNG"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"操作日志"
,
routerName
:
"adminLog"
,
path
:
"/adminLog"
,
cover
:
"8-5"
,
router
:{
path
:
"/adminLog"
,
name
:
"adminLog"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
25
)]).
then
(
function
(){
var
n
=
[
t
(
"WZgi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]}],
r
=
{
name
:
"App"
,
data
:
function
(){
return
{}},
mounted
:
function
(){
var
e
=
this
;
if
(
window
.
location
.
href
.
indexOf
(
"login"
)
<
0
){
var
n
=
this
.
$store
.
state
.
progressList
,
t
=
[];
this
.
$router
.
options
.
routes
[
0
].
children
=
[];
var
o
=
n
.
find
(
function
(
e
){
return
"5-1"
===
e
.
cover
});
o
&&
o
.
refund
&&
(
this
.
$store
.
state
.
orderRefund
=!
0
),
a
.
forEach
(
function
(
o
){
var
a
=!
1
,
r
=
[];
o
.
list
.
forEach
(
function
(
t
){
var
o
=
n
.
find
(
function
(
e
){
return
e
.
cover
===
t
.
cover
});
o
&&
(
t
.
router
.
meta
=
{},
t
.
router
.
meta
.
readonly
=
o
.
readonly
,
t
.
router
.
meta
.
delete
=!!
o
.
delete
,
r
.
push
(
t
),
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
t
.
router
),
a
=!
0
)}),
a
&&
(
o
.
list
=
r
,
t
.
push
(
o
))}),
this
.
$router
.
addRoutes
([
this
.
$router
.
options
.
routes
[
0
]]),
this
.
$store
.
dispatch
(
"setMenu"
,
t
)}}},
i
=
{
render
:
function
(){
var
e
=
this
.
$createElement
,
n
=
this
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
attrs
:{
id
:
"app"
}},[
n
(
"router-view"
)],
1
)},
staticRenderFns
:[]};
var
u
=
t
(
"VU/8"
)(
r
,
i
,
!
1
,
function
(
e
){
t
(
"FLAZ"
)},
null
,
null
).
exports
,
c
=
t
(
"YaEn"
),
s
=
t
(
"zL8q"
),
l
=
t
.
n
(
s
),
p
=
(
t
(
"tvR6"
),
t
(
"IcnI"
));
o
.
default
.
use
(
l
.
a
),
o
.
default
.
config
.
productionTip
=!
1
,
new
o
.
default
({
el
:
"#app"
,
store
:
p
.
a
,
router
:
c
.
a
,
components
:{
App
:
u
},
template
:
"<App/>"
})},
YaEn
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"7+uW"
),
a
=
t
(
"IcnI"
),
r
=
t
(
"/ocq"
),
i
=
t
(
"zSLJ"
);
o
.
default
.
use
(
r
.
a
);
var
u
=
new
r
.
a
({
routes
:[{
path
:
"/"
,
name
:
"index"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
5
)]).
then
(
function
(){
var
n
=
[
t
(
"jHcp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
redirect
:{
name
:
"first"
},
children
:[{
path
:
""
,
name
:
"first"
,
component
:
function
(
e
){
return
t
.
e
(
3
).
then
(
function
(){
var
n
=
[
t
(
"sJm1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/userDetail/:id"
,
name
:
"userDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
12
)]).
then
(
function
(){
var
n
=
[
t
(
"9PRC"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},{
path
:
"/teacher/:id"
,
name
:
"teacherDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
22
)]).
then
(
function
(){
var
n
=
[
t
(
"hFUZ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}]},{
path
:
"/login"
,
name
:
"login"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
18
)]).
then
(
function
(){
var
n
=
[
t
(
"0HId"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}},{
path
:
"/upload"
,
name
:
"upload"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
27
)]).
then
(
function
(){
var
n
=
[
t
(
"iPJD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}}]});
u
.
beforeEach
(
function
(
e
,
n
,
t
){
if
(
a
.
a
.
commit
(
"mainCanShow"
),
i
.
a
.
get
(
"cc_token"
)
&&
(
a
.
a
.
dispatch
(
"setToken"
,
i
.
a
.
get
(
"cc_token"
)),
a
.
a
.
dispatch
(
"setPermission"
,
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
))),
null
!==
i
.
a
.
get
(
"cc_user_name"
)
&&
a
.
a
.
dispatch
(
"setUserName"
,
i
.
a
.
get
(
"cc_user_name"
))),
a
.
a
.
state
.
nowTab
=
e
.
name
,
e
.
matched
.
length
>
1
&&
"first"
!==
e
.
name
){
for
(
var
o
=
void
0
,
r
=
0
;
r
<
a
.
a
.
state
.
menuList
.
length
;
r
++
)
for
(
var
u
=
a
.
a
.
state
.
menuList
[
r
],
c
=
0
;
c
<
u
.
list
.
length
;
c
++
){
var
s
=
u
.
list
[
c
];
s
.
path
===
e
.
path
&&
(
o
=
s
)}
a
.
a
.
state
.
openedTab
.
indexOf
(
o
)
<
0
&&
a
.
a
.
state
.
openedTab
.
push
(
o
)}
if
(
e
.
meta
.
readonly
?
a
.
a
.
dispatch
(
"readonly"
,
!
0
):
a
.
a
.
dispatch
(
"readonly"
,
!
1
),
"userDetail"
===
e
.
name
){
var
l
=
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
)).
find
(
function
(
e
){
return
"3-2"
===
e
.
cover
}).
readonly
;
a
.
a
.
dispatch
(
"readonly"
,
l
)}
e
.
meta
.
delete
?
a
.
a
.
dispatch
(
"deletePermission"
,
!
0
):
a
.
a
.
dispatch
(
"deletePermission"
,
!
1
),
e
.
matched
.
some
(
function
(
e
){
return
!
0
!==
e
.
meta
.
skip_auth
})
&&!
a
.
a
.
state
.
token
?
t
({
path
:
"/login"
}):
t
()}),
u
.
onError
(
function
(
e
){
var
n
=
e
.
message
.
match
(
/Loading chunk
(\d)
+ failed/g
),
t
=
u
.
history
.
pending
.
fullPath
;
n
&&
u
.
replace
(
t
)}),
n
.
a
=
u
},
tvR6
:
function
(
e
,
n
){},
zSLJ
:
function
(
e
,
n
,
t
){
"use strict"
;
n
.
a
=
{
set
:
function
(
e
,
n
,
t
){
var
o
=
new
Date
;
o
.
setTime
(
o
.
getTime
()
+
864
e5
*
t
),
window
.
document
.
cookie
=
e
+
"="
+
n
+
";path=/;expires="
+
o
.
toGMTString
()},
get
:
function
(
e
){
var
n
=
window
.
document
.
cookie
.
match
(
"(^|;) ?"
+
e
+
"=([^;]*)(;|$)"
);
return
n
?
n
[
2
]:
null
},
delete
:
function
(
e
){
this
.
set
(
e
,
""
,
-
1
)}}}},[
"NHnr"
]);
\ No newline at end of file
dist/static/js/manifest.
5df765c7b45b5d3d51a3
.js
→
dist/static/js/manifest.
0703230a961ac91d905d
.js
View file @
1a8add53
!
function
(
e
){
var
c
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
a
,
t
,
f
){
for
(
var
o
,
d
,
b
,
i
=
0
,
u
=
[];
i
<
a
.
length
;
i
++
)
d
=
a
[
i
],
n
[
d
]
&&
u
.
push
(
n
[
d
][
0
]),
n
[
d
]
=
0
;
for
(
o
in
t
)
Object
.
prototype
.
hasOwnProperty
.
call
(
t
,
o
)
&&
(
e
[
o
]
=
t
[
o
]);
for
(
c
&&
c
(
a
,
t
,
f
);
u
.
length
;)
u
.
shift
()();
if
(
f
)
for
(
i
=
0
;
i
<
f
.
length
;
i
++
)
b
=
r
(
r
.
s
=
f
[
i
]);
return
b
};
var
a
=
{},
n
=
{
33
:
0
};
function
r
(
c
){
if
(
a
[
c
])
return
a
[
c
].
exports
;
var
n
=
a
[
c
]
=
{
i
:
c
,
l
:
!
1
,
exports
:{}};
return
e
[
c
].
call
(
n
.
exports
,
n
,
n
.
exports
,
r
),
n
.
l
=!
0
,
n
.
exports
}
r
.
e
=
function
(
e
){
var
c
=
n
[
e
];
if
(
0
===
c
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
c
)
return
c
[
2
];
var
a
=
new
Promise
(
function
(
a
,
r
){
c
=
n
[
e
]
=
[
a
,
r
]});
c
[
2
]
=
a
;
var
t
=
document
.
getElementsByTagName
(
"head"
)[
0
],
f
=
document
.
createElement
(
"script"
);
f
.
type
=
"text/javascript"
,
f
.
charset
=
"utf-8"
,
f
.
async
=!
0
,
f
.
timeout
=
12
e4
,
r
.
nc
&&
f
.
setAttribute
(
"nonce"
,
r
.
nc
),
f
.
src
=
r
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"cf244d18b861e5614994"
,
1
:
"7f60a51e0286fa5795f8"
,
2
:
"2ef3d4467d5f1bc88ccd"
,
3
:
"58df26638cb030357eb5"
,
4
:
"84776f9abf4585293d82"
,
5
:
"01cef1d5549a84d2065f"
,
6
:
"fc48035e877aa3a9412a"
,
7
:
"f563844019b7ad0e133d"
,
8
:
"5eefa2aec9125cd5dd6d"
,
9
:
"8b0611015c947ecfb6ab"
,
10
:
"fca006e7a215fb8576b0"
,
11
:
"b5ac022443301aa10897"
,
12
:
"b118c7d9c78ba18a7394"
,
13
:
"493713928437a56fc01d"
,
14
:
"652885868c5e7158e198"
,
15
:
"64b9621aef03d2a46cec"
,
16
:
"f61af6550198186460cf"
,
17
:
"91f33c4dc4659c49f638"
,
18
:
"c0a5a22b3a0157e18e49"
,
19
:
"e8d7d16dbab2a862bea8"
,
20
:
"e1bbcd7cbe8028f912ea"
,
21
:
"5bf9b10d972e3224edd9"
,
22
:
"df70e293d4175d7a7ec5"
,
23
:
"3bc2d95c4d5c0824310a"
,
24
:
"276d08562a325a7f4b50"
,
25
:
"4cc25ab8c7d5dd7c6614"
,
26
:
"b736ed973503fb223ff9"
,
27
:
"f1f6ab0ef0d8e9b26f89"
,
28
:
"e469d5671f79a4684dc7"
,
29
:
"0c7d527ac1c50fe269cd"
,
30
:
"566af776e4fdb415bf93"
}[
e
]
+
".js"
;
var
o
=
setTimeout
(
d
,
12
e4
);
function
d
(){
f
.
onerror
=
f
.
onload
=
null
,
clearTimeout
(
o
);
var
c
=
n
[
e
];
0
!==
c
&&
(
c
&&
c
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
n
[
e
]
=
void
0
)}
return
f
.
onerror
=
f
.
onload
=
d
,
t
.
appendChild
(
f
),
a
},
r
.
m
=
e
,
r
.
c
=
a
,
r
.
d
=
function
(
e
,
c
,
a
){
r
.
o
(
e
,
c
)
||
Object
.
defineProperty
(
e
,
c
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
a
})},
r
.
n
=
function
(
e
){
var
c
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
r
.
d
(
c
,
"a"
,
c
),
c
},
r
.
o
=
function
(
e
,
c
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
c
)},
r
.
p
=
"/"
,
r
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
!
function
(
e
){
var
c
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
a
,
t
,
f
){
for
(
var
d
,
o
,
b
,
i
=
0
,
u
=
[];
i
<
a
.
length
;
i
++
)
o
=
a
[
i
],
n
[
o
]
&&
u
.
push
(
n
[
o
][
0
]),
n
[
o
]
=
0
;
for
(
d
in
t
)
Object
.
prototype
.
hasOwnProperty
.
call
(
t
,
d
)
&&
(
e
[
d
]
=
t
[
d
]);
for
(
c
&&
c
(
a
,
t
,
f
);
u
.
length
;)
u
.
shift
()();
if
(
f
)
for
(
i
=
0
;
i
<
f
.
length
;
i
++
)
b
=
r
(
r
.
s
=
f
[
i
]);
return
b
};
var
a
=
{},
n
=
{
33
:
0
};
function
r
(
c
){
if
(
a
[
c
])
return
a
[
c
].
exports
;
var
n
=
a
[
c
]
=
{
i
:
c
,
l
:
!
1
,
exports
:{}};
return
e
[
c
].
call
(
n
.
exports
,
n
,
n
.
exports
,
r
),
n
.
l
=!
0
,
n
.
exports
}
r
.
e
=
function
(
e
){
var
c
=
n
[
e
];
if
(
0
===
c
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
c
)
return
c
[
2
];
var
a
=
new
Promise
(
function
(
a
,
r
){
c
=
n
[
e
]
=
[
a
,
r
]});
c
[
2
]
=
a
;
var
t
=
document
.
getElementsByTagName
(
"head"
)[
0
],
f
=
document
.
createElement
(
"script"
);
f
.
type
=
"text/javascript"
,
f
.
charset
=
"utf-8"
,
f
.
async
=!
0
,
f
.
timeout
=
12
e4
,
r
.
nc
&&
f
.
setAttribute
(
"nonce"
,
r
.
nc
),
f
.
src
=
r
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"cf244d18b861e5614994"
,
1
:
"7f60a51e0286fa5795f8"
,
2
:
"2ef3d4467d5f1bc88ccd"
,
3
:
"58df26638cb030357eb5"
,
4
:
"84776f9abf4585293d82"
,
5
:
"01cef1d5549a84d2065f"
,
6
:
"5d7e6cbb44bc57b09d10"
,
7
:
"f563844019b7ad0e133d"
,
8
:
"5eefa2aec9125cd5dd6d"
,
9
:
"8b0611015c947ecfb6ab"
,
10
:
"fca006e7a215fb8576b0"
,
11
:
"b5ac022443301aa10897"
,
12
:
"b118c7d9c78ba18a7394"
,
13
:
"493713928437a56fc01d"
,
14
:
"652885868c5e7158e198"
,
15
:
"64b9621aef03d2a46cec"
,
16
:
"f61af6550198186460cf"
,
17
:
"5b6dad580b9206038816"
,
18
:
"c0a5a22b3a0157e18e49"
,
19
:
"e8d7d16dbab2a862bea8"
,
20
:
"e1bbcd7cbe8028f912ea"
,
21
:
"5bf9b10d972e3224edd9"
,
22
:
"df70e293d4175d7a7ec5"
,
23
:
"3bc2d95c4d5c0824310a"
,
24
:
"276d08562a325a7f4b50"
,
25
:
"4cc25ab8c7d5dd7c6614"
,
26
:
"b736ed973503fb223ff9"
,
27
:
"f1f6ab0ef0d8e9b26f89"
,
28
:
"e469d5671f79a4684dc7"
,
29
:
"0c7d527ac1c50fe269cd"
,
30
:
"566af776e4fdb415bf93"
}[
e
]
+
".js"
;
var
d
=
setTimeout
(
o
,
12
e4
);
function
o
(){
f
.
onerror
=
f
.
onload
=
null
,
clearTimeout
(
d
);
var
c
=
n
[
e
];
0
!==
c
&&
(
c
&&
c
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
n
[
e
]
=
void
0
)}
return
f
.
onerror
=
f
.
onload
=
o
,
t
.
appendChild
(
f
),
a
},
r
.
m
=
e
,
r
.
c
=
a
,
r
.
d
=
function
(
e
,
c
,
a
){
r
.
o
(
e
,
c
)
||
Object
.
defineProperty
(
e
,
c
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
a
})},
r
.
n
=
function
(
e
){
var
c
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
r
.
d
(
c
,
"a"
,
c
),
c
},
r
.
o
=
function
(
e
,
c
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
c
)},
r
.
p
=
"/"
,
r
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
src/components/class/userList.vue
View file @
1a8add53
...
...
@@ -146,8 +146,41 @@
:data=
"lookDetail.list"
style=
"width: 100%"
>
<el-table-column
prop=
"periods_id"
label=
"期数"
>
prop=
"start_at"
label=
"日期"
>
</el-table-column>
<el-table-column
label=
"爸妈看一看"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.watch_list && scope.row.watch_list.length > 0 && scope.row.watch_list.find(i=>
{return i.page_id === 1})">
学习时长:
{{
scope
.
row
.
watch_list
.
find
(
i
=>
{
return
i
.
page_id
===
1
}
).
stay_time
}}
<
/span
>
<
span
v
-
if
=
"!scope.row.watch_list.find(i=>{return i.page_id === 1
}
)"
>
暂未上课
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"宝贝玩一玩"
>
<
template
slot
-
scope
=
"scope"
>
<
span
v
-
if
=
"scope.row.watch_list && scope.row.watch_list.length > 0 && scope.row.watch_list.find(i=>{return i.page_id === 1
}
)"
>
学习时长:
{{
scope
.
row
.
watch_list
.
find
(
i
=>
{
return
i
.
page_id
===
2
}
).
stay_time
}}
<
/span
>
<
span
v
-
if
=
"!scope.row.watch_list.find(i=>{return i.page_id === 1
}
)"
>
暂未上课
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"爸妈秀宝贝"
>
<
template
slot
-
scope
=
"scope"
>
<
span
v
-
if
=
"scope.row.watch_list && scope.row.watch_list.length > 0 && scope.row.watch_list.find(i=>{return i.page_id === 1
}
)"
>
学习记录:
<
div
v
-
html
=
"scope.row.watch_list.find(i=>{return i.page_id === 0
}
).learn_report"
><
/div>{{scope.row.watch_list.find
(
i=>{return i.page_id === 3
}
)
.stay_time
}}
<
/span
>
<
span
v
-
if
=
"!scope.row.watch_list.find(i=>{return i.page_id === 1
}
)"
>
暂未上课
<
/span
>
<
/template
>
<
/el-table-column
>
<
/el-table
>
<
/el-dialog
>
...
...
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