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
0dc84ce0
Commit
0dc84ce0
authored
Jun 04, 2019
by
chenyishuai@singsingenglish.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
64
parent
3c22ae18
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
99 additions
and
3 deletions
+99
-3
index.html
dev/index.html
+1
-1
19.5bfe53a2c34b0e42df5e.js
dev/static/js/19.5bfe53a2c34b0e42df5e.js
+1
-0
manifest.427143089ec87ec57ebe.js
dev/static/js/manifest.427143089ec87ec57ebe.js
+1
-0
index.html
dist/index.html
+1
-1
app.23e61f02e090be6630116d57a1eb88da.css
dist/static/css/app.23e61f02e090be6630116d57a1eb88da.css
+1
-0
19.7640a1eb3d11c5a2476a.js
dist/static/js/19.7640a1eb3d11c5a2476a.js
+1
-0
20.b8a041ddbb63084e4df4.js
dist/static/js/20.b8a041ddbb63084e4df4.js
+1
-0
21.ee639989eb7378bbb2ec.js
dist/static/js/21.ee639989eb7378bbb2ec.js
+1
-0
22.f42077985dfd681d430b.js
dist/static/js/22.f42077985dfd681d430b.js
+1
-0
23.0318833dc04e8a123f85.js
dist/static/js/23.0318833dc04e8a123f85.js
+1
-0
24.94a4fbe53937490711f2.js
dist/static/js/24.94a4fbe53937490711f2.js
+1
-0
app.893b249b6eab7a5d6cef.js
dist/static/js/app.893b249b6eab7a5d6cef.js
+1
-0
manifest.3defc7637adf4a84c626.js
dist/static/js/manifest.3defc7637adf4a84c626.js
+1
-0
editorDetail.vue
src/components/talkingSkill/editorDetail.vue
+86
-1
No files found.
dev/index.html
View file @
0dc84ce0
<!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_x1rivf5f5.css
><link
rel=
stylesheet
href=
https://lib.baomitu.com/element-ui/2.7.2/theme-chalk/index.css
><title>
唱唱启蒙-后台
</title></head><body><script
src=
https://cdn.bootcss.com/vue/2.5.17/vue.min.js
></script><script
src=
https://unpkg.com/vuex@3.0.1
></script><script
src=
https://cdn.bootcss.com/axios/0.18.0/axios.min.js
></script><script
src=
https://lib.baomitu.com/element-ui/2.7.2/index.js
></script><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.
a04a71fd11d6ac363500
.js
></script><script
type=
text/javascript
src=
/static/js/vendor.9adcd3a16b6f554dbe34.js
></script><script
type=
text/javascript
src=
/static/js/app.50de059b60b2a8151817.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_x1rivf5f5.css
><link
rel=
stylesheet
href=
https://lib.baomitu.com/element-ui/2.7.2/theme-chalk/index.css
><title>
唱唱启蒙-后台
</title></head><body><script
src=
https://cdn.bootcss.com/vue/2.5.17/vue.min.js
></script><script
src=
https://unpkg.com/vuex@3.0.1
></script><script
src=
https://cdn.bootcss.com/axios/0.18.0/axios.min.js
></script><script
src=
https://lib.baomitu.com/element-ui/2.7.2/index.js
></script><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.
427143089ec87ec57ebe
.js
></script><script
type=
text/javascript
src=
/static/js/vendor.9adcd3a16b6f554dbe34.js
></script><script
type=
text/javascript
src=
/static/js/app.50de059b60b2a8151817.js
></script></body><script>
let
el
=
document
.
getElementsByTagName
(
"script"
);
el
.
onerror
=
function
(
a
,
b
,
c
){
el
.
onerror
=
function
(
a
,
b
,
c
){
console
.
log
(
'error:'
,
a
,
b
,
c
);
console
.
log
(
'error:'
,
a
,
b
,
c
);
};
};
...
...
dev/static/js/19.5bfe53a2c34b0e42df5e.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
19
],{
"/rTH"
:
function
(
t
,
e
,
n
){
var
o
=
n
(
"KM5R"
);
"string"
==
typeof
o
&&
(
o
=
[[
t
.
i
,
o
,
""
]]),
o
.
locals
&&
(
t
.
exports
=
o
.
locals
);
n
(
"rjj0"
)(
"769bec0a"
,
o
,
!
1
,{})},
"71za"
:
function
(
t
,
e
,
n
){
var
o
=
n
(
"ZOdw"
);
"string"
==
typeof
o
&&
(
o
=
[[
t
.
i
,
o
,
""
]]),
o
.
locals
&&
(
t
.
exports
=
o
.
locals
);
n
(
"rjj0"
)(
"6ee4fe88"
,
o
,
!
1
,{})},
CUAv
:
function
(
t
,
e
,
n
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
o
,
i
=
n
(
"CCn6"
),
a
=
n
(
"kmJW"
),
s
=
n
(
"5eDb"
),
l
=
n
.
n
(
s
),
r
=
(
n
(
"o5MN"
),
n
(
"q47d"
));
n
(
"NBEC"
),
n
(
"gBhd"
),
n
(
"Q/P+"
),
n
(
"f85y"
),
n
(
"q/hF"
),
n
(
"yXOt"
),
n
(
"c/6r"
),
n
(
"Rv7z"
),
n
(
"S0tB"
),
n
(
"UWKq"
),
n
(
"gvu3"
),
n
(
"XUqK"
);
function
d
(
t
,
e
,
n
){
return
e
in
t
?
Object
.
defineProperty
(
t
,
e
,{
value
:
n
,
enumerable
:
!
0
,
configurable
:
!
0
,
writable
:
!
0
}):
t
[
e
]
=
n
,
t
}
var
c
=
{
name
:
"tinymce"
,
props
:[
"lookData"
],
data
:
function
(){
return
{
radio
:[],
imageType
:
!
1
,
form
:{
imgList
:[],
big
:
!
1
,
weight
:
""
,
center
:
!
0
},
show
:
""
,
dialogVisible
:
!
1
,
init
:{
toolbar
:
"bold italic underline strikethrough | fontselect | fontsizeselect | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | outdent indent blockquote | undo redo | link unlink image code | "
,
language_url
:
"/static/tinymce/zh_CN.js"
,
language
:
"zh_CN"
,
skin_url
:
"/static/tinymce/skins/lightgray"
,
height
:
500
,
plugins
:
"preview textpattern colorpicker lists code colorpicker fullpage textcolor wordcount contextmenu media"
,
branding
:
!
1
},
dialogVisibleMp3
:
!
1
}},
activated
:
function
(){
this
.
show
=!
0
},
deactivated
:
function
(){},
mounted
:
function
(){},
methods
:(
o
=
{
beforeAvatarUploadAudio
:
function
(
t
){
var
e
=
"audio/mp3"
===
t
.
type
;
return
e
||
this
.
$message
.
error
(
"上传音频只能选择MP3格式!"
),
e
},
uploadFileMp3
:
function
(
t
){
var
e
=
this
;
Object
(
i
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
e
.
radio
=
[{
name
:
t
.
name
,
url
:
t
.
url
}]})},
removeFile
:
function
(){},
removeFileMp3
:
function
(){},
handleExceed
:
function
(){},
audioInter
:
function
(){
if
(
this
.
radio
.
length
<
1
)
return
this
.
$message
({
type
:
"error"
,
message
:
"请选择音频"
}),
!
1
;
var
t
=
'<p style="text-align: center"><img class="mce-object mce-object-audio" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" width="280" height="55" data-mce-p-controls="controls" data-mce-html="%0A%3Csource%20src%3D%22https%3A//cdn.singsingenglish.com/'
+
this
.
radio
[
0
].
url
+
'%22%20type%3D%22audio/mpeg%22%20/%3E" data-mce-object="audio"></p>'
;
l
.
a
.
activeEditor
.
insertContent
(
t
),
this
.
dialogVisibleMp3
=!
1
},
showDialogMP3
:
function
(){
this
.
dialogVisibleMp3
=!
0
,
this
.
radio
=
[]},
beforeAvatarUploadImg
:
function
(
t
){
var
e
=
"image/jpeg"
===
t
.
type
||
"image/png"
===
t
.
type
;
return
e
||
this
.
$message
.
error
(
"上传头像图片只能是 JPG 或 PNG 格式!"
),
e
},
imgInter
:
function
(){
if
(
this
.
form
.
imgList
.
length
<
1
)
return
this
.
$message
({
type
:
"error"
,
message
:
"请选择图片"
}),
!
1
;
var
t
=
""
;
this
.
form
.
big
?
t
+=
"width:100%;"
:
t
+=
"width:70%"
,
this
.
form
.
center
&&
(
t
=
"display:block;margin:auto"
);
var
e
=
'<img src="'
+
this
.
form
.
imgList
[
0
].
url
+
'" style="'
+
t
+
'"/>'
;
l
.
a
.
activeEditor
.
insertContent
(
e
),
this
.
dialogVisible
=!
1
},
uploadFile
:
function
(
t
){
var
e
=
this
;
Object
(
i
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
e
.
form
.
imgList
=
[{
name
:
t
.
name
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
}]})},
showDialog
:
function
(){
this
.
dialogVisible
=!
0
,
this
.
form
=
{
imgList
:[],
big
:
!
1
,
weight
:
""
,
center
:
!
0
}},
insertContent
:
function
(
t
){
if
(
t
){
var
e
=
null
;
if
(
document
.
selection
)(
e
=
document
.
selection
).
createRange
().
pasteHTML
(
t
);
else
if
((
e
=
document
.
getElementById
(
"tinymce_ifr"
).
contentWindow
.
getSelection
()).
rangeCount
>
0
){
var
n
=
e
.
getRangeAt
(
0
);
n
.
deleteContents
();
var
o
=
document
.
createElement
(
"div"
);
o
.
innerHTML
=
t
;
var
i
=
document
.
createDocumentFragment
(),
a
=
o
.
firstChild
,
s
=
i
.
appendChild
(
a
);
n
.
insertNode
(
i
);
var
l
=
n
.
cloneRange
();
l
.
setStartAfter
(
s
),
l
.
collapse
(
!
0
),
e
.
removeAllRanges
(),
e
.
addRange
(
l
)}}}},
d
(
o
,
"removeFile"
,
function
(){}),
d
(
o
,
"handleExceed"
,
function
(){}),
o
),
created
:
function
(){
l
.
a
.
init
({})},
components
:{
Editor
:
r
.
a
}},
p
=
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
n
=
t
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
staticClass
:
"tinymce"
},[
n
(
"editor"
,{
attrs
:{
id
:
"tinymce"
,
init
:
t
.
init
},
model
:{
value
:
t
.
lookData
.
content
,
callback
:
function
(
e
){
t
.
$set
(
t
.
lookData
,
"content"
,
e
)},
expression
:
"lookData.content"
}}),
t
.
_v
(
" "
),
n
(
"div"
,[
n
(
"div"
,{
staticClass
:
"imgInter"
,
on
:{
click
:
function
(
e
){
t
.
showDialog
()}}},[
t
.
_v
(
"插入图片"
)]),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"MP3Inter"
,
on
:{
click
:
function
(
e
){
t
.
showDialogMP3
()}}},[
t
.
_v
(
"插入音频"
)])]),
t
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
title
:
"插入图片"
,
visible
:
t
.
dialogVisible
,
"modal-append-to-body"
:
!
1
,
"close-on-click-modal"
:
!
1
,
center
:
""
,
"append-to-body"
:
!
0
,
width
:
"550px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
dialogVisible
=
e
}}},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"80px"
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"图片"
}},[
n
(
"el-upload"
,{
attrs
:{
action
:
"/api/public/upload"
,
"http-request"
:
t
.
uploadFile
,
"on-remove"
:
t
.
removeFile
,
"before-upload"
:
t
.
beforeAvatarUploadImg
,
drag
:
""
,
"on-exceed"
:
t
.
handleExceed
,
multiple
:
""
,
limit
:
1
,
"file-list"
:
t
.
form
.
imgList
}},[
n
(
"i"
,{
staticClass
:
"el-icon-upload"
}),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"el-upload__text"
},[
t
.
_v
(
"将文件拖到此处,或"
),
n
(
"em"
,[
t
.
_v
(
"点击上传"
)])]),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"el-upload__tip"
,
attrs
:{
slot
:
"tip"
},
slot
:
"tip"
},[
t
.
_v
(
"只能上传png或jpg文件"
)])])],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"铺满"
}},[
n
(
"el-switch"
,{
model
:{
value
:
t
.
form
.
big
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"big"
,
e
)},
expression
:
"form.big"
}})],
1
),
t
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"居中"
}},[
n
(
"el-switch"
,{
model
:{
value
:
t
.
form
.
center
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"center"
,
e
)},
expression
:
"form.center"
}})],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogVisible
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
imgInter
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
title
:
"插入音频"
,
visible
:
t
.
dialogVisibleMp3
,
"modal-append-to-body"
:
!
1
,
"close-on-click-modal"
:
!
1
,
center
:
""
,
"append-to-body"
:
!
0
,
width
:
"550px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
dialogVisibleMp3
=
e
}}},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"80px"
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"音频"
}},[
n
(
"el-upload"
,{
attrs
:{
action
:
"/api/public/upload"
,
"http-request"
:
t
.
uploadFileMp3
,
"before-upload"
:
t
.
beforeAvatarUploadAudio
,
"on-remove"
:
t
.
removeFileMp3
,
drag
:
""
,
"on-exceed"
:
t
.
handleExceed
,
multiple
:
""
,
limit
:
1
,
"file-list"
:
t
.
radio
}},[
n
(
"i"
,{
staticClass
:
"el-icon-upload"
}),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"el-upload__text"
},[
t
.
_v
(
"将文件拖到此处,或"
),
n
(
"em"
,[
t
.
_v
(
"点击上传"
)])]),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"el-upload__tip"
,
attrs
:{
slot
:
"tip"
},
slot
:
"tip"
},[
t
.
_v
(
"只能上传MP3文件,且不超过10MB"
)])])],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogVisibleMp3
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
audioInter
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
)],
1
)};
p
.
_withStripped
=!
0
;
var
A
=
{
render
:
p
,
staticRenderFns
:[]},
u
=
A
;
var
m
=!
1
;
var
g
=
n
(
"VU/8"
)(
c
,
u
,
!
1
,
function
(
t
){
m
||
n
(
"71za"
)},
"data-v-63cdde42"
,
null
);
g
.
options
.
__file
=
"src
\\
components
\\
talkingSkill
\\
editorDetail.vue"
;
var
h
=
{
name
:
"index"
,
data
:
function
(){
return
{
total
:
0
,
nowPage
:
1
,
limit
:
10
,
contentTotal
:
0
,
contentNowPage
:
1
,
contentLimit
:
10
,
activeName
:
"keywords_reply"
,
modularList
:[],
modularContent
:[],
selectModular
:[],
questionListParams
:{
type
:
"1"
,
pid
:
""
},
postModularParams
:{
type
:
"1"
,
title
:
""
,
pid
:
""
,
keywords
:
""
,
content
:
""
},
postModularDialog
:
!
1
,
modularTitle
:
"新建模块"
,
postModularContentDialog
:
!
1
,
modularContentTitle
:
"新建话术内容"
,
typeArr
:[{
value
:
"1"
,
label
:
"话术类型"
},{
value
:
"2"
,
label
:
"流程类型"
}],
modularId
:
""
,
contentType
:
""
}},
components
:{
editorDetail
:
g
.
exports
,
page
:
a
.
a
},
mounted
:
function
(){
this
.
getList
()},
filters
:{
type
:
function
(
t
){
return
"text"
===
t
?
"文本"
:
"voice"
===
t
?
"语音"
:
"video"
===
t
?
"视频"
:
"image"
===
t
?
"图片"
:
"news"
===
t
?
"图文"
:
"link"
===
t
?
"链接"
:
"news-item"
===
t
?
"图文链接"
:
t
}},
methods
:{
upcontent
:
function
(
t
,
e
){
var
n
=
this
;
if
(
console
.
log
(
t
,
e
),
0
!=
e
){
var
o
=
{
question_up_id
:
this
.
modularContent
[
e
].
id
,
question_down_id
:
this
.
modularContent
[
e
-
1
].
id
};
Object
(
i
.
_117
)(
o
).
then
(
function
(
t
){
n
.
handleChange
(
n
.
modularId
)})}},
downcontent
:
function
(
t
,
e
){
var
n
=
this
;
if
(
e
<=
this
.
modularContent
.
length
-
1
){
var
o
=
{
question_up_id
:
this
.
modularContent
[
e
+
1
].
id
,
question_down_id
:
this
.
modularContent
[
e
].
id
};
Object
(
i
.
_117
)(
o
).
then
(
function
(
t
){
n
.
handleChange
(
n
.
modularId
)})}},
upIndex
:
function
(
t
,
e
){
var
n
=
this
;
if
(
0
!=
e
){
var
o
=
{
question_up_id
:
this
.
modularList
[
e
].
id
,
question_down_id
:
this
.
modularList
[
e
-
1
].
id
};
Object
(
i
.
_117
)(
o
).
then
(
function
(
t
){
n
.
getList
()})}},
downIndex
:
function
(
t
,
e
){
var
n
=
this
;
if
(
e
<=
this
.
modularList
.
length
-
1
){
var
o
=
{
question_up_id
:
this
.
modularList
[
e
+
1
].
id
,
question_down_id
:
this
.
modularList
[
e
].
id
};
Object
(
i
.
_117
)(
o
).
then
(
function
(
t
){
n
.
getList
()})}},
delIndex
:
function
(
t
){
var
e
=
this
;
console
.
log
(
t
),
this
.
$confirm
(
"此操作将删除该记录?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
console
.
log
(
t
),
Object
(
i
.
V
)(
t
.
id
).
then
(
function
(
t
){
e
.
getList
(),
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})})})},
handleChange
:
function
(){
var
t
=
this
;
this
.
modularContent
=
[];
var
e
=
{
type
:
this
.
questionListParams
.
type
,
page
:
this
.
contentNowPage
,
limit
:
this
.
contentLimit
};
this
.
modularId
&&
(
e
.
pid
=
this
.
modularId
),
this
.
postModularParams
.
pid
=
this
.
modularId
,
Object
(
i
.
_67
)(
e
.
type
,
e
).
then
(
function
(
e
){
t
.
modularContent
=
e
.
list
,
console
.
log
(
e
),
t
.
contentTotal
=
e
.
total
})},
postModularContentInit
:
function
(){
this
.
contentType
=
"new"
,
this
.
postModularParams
.
title
=
""
,
this
.
postModularParams
.
keywords
=
""
,
this
.
postModularParams
.
content
=
""
,
this
.
postModularParams
.
type
=
this
.
questionListParams
.
type
,
this
.
postModularContentDialog
=!
0
},
postModularContentFn
:
function
(){
var
t
=
this
;
console
.
log
(
this
.
postModularParams
);
var
e
=
{};
if
(
"new"
==
this
.
contentType
){
if
(
this
.
modularContentTitle
=
"新建话术内容"
,
!
this
.
postModularParams
.
type
)
return
void
this
.
$message
({
message
:
"请选择类型!"
});
if
(
!
this
.
postModularParams
.
title
)
return
void
this
.
$message
({
message
:
"请输入标题!"
});
if
(
!
this
.
postModularParams
.
pid
)
return
void
this
.
$message
({
message
:
"请选择模块!"
});
if
(
!
this
.
postModularParams
.
keywords
)
return
void
this
.
$message
({
message
:
"请输入关键词!"
});
if
(
!
this
.
postModularParams
.
content
)
return
void
this
.
$message
({
message
:
"请填写内容!"
});
e
=
Object
.
assign
({},
this
.
postModularParams
),
Object
(
i
.
_105
)(
e
).
then
(
function
(
e
){
console
.
log
(
e
),
t
.
getList
(),
t
.
$message
({
type
:
"success"
,
message
:
"提交成功!"
});
var
n
=
{
type
:
t
.
questionListParams
.
type
,
pid
:
t
.
postModularParams
.
pid
};
Object
(
i
.
_67
)(
n
.
type
,
n
).
then
(
function
(
e
){
t
.
modularContent
=
e
.
list
,
console
.
log
(
e
)}),
t
.
postModularContentDialog
=!
1
})}
else
this
.
modularContentTitle
=
"编辑话术内容"
,
e
=
Object
.
assign
({},
this
.
postModularParams
),
console
.
log
(
e
),
Object
(
i
.
_138
)(
e
.
id
,
e
).
then
(
function
(
e
){
console
.
log
(
e
),
t
.
$message
({
type
:
"success"
,
message
:
"更新成功!"
}),
t
.
postModularContentDialog
=!
1
})},
editContent
:
function
(
t
){
var
e
=
this
;
this
.
contentType
=
"edit"
;
Object
(
i
.
_66
)(
t
.
id
).
then
(
function
(
t
){
e
.
postModularParams
=
Object
.
assign
({},
t
),
console
.
log
(
e
.
postModularParams
),
e
.
postModularContentDialog
=!
0
})},
editContentFn
:
function
(){},
editModular
:
function
(
t
){
this
.
postModularDialog
=!
0
,
this
.
modularTitle
=
"编辑模块"
,
this
.
postModularParams
=
Object
.
assign
({},
t
)},
postModularInit
:
function
(){
this
.
postModularDialog
=!
0
,
this
.
modularTitle
=
"新建模块"
,
this
.
postModularParams
.
title
=
""
},
postModularFn
:
function
(){
var
t
=
this
,
e
=
{};
if
(
"新建模块"
==
this
.
modularTitle
){
if
(
!
this
.
postModularParams
.
type
)
return
void
this
.
$message
({
message
:
"请选择类型!"
});
if
(
!
this
.
postModularParams
.
title
)
return
void
this
.
$message
({
message
:
"请填写标题!"
});
e
.
type
=
this
.
postModularParams
.
type
,
e
.
title
=
this
.
postModularParams
.
title
,
console
.
log
(
e
),
Object
(
i
.
_105
)(
e
).
then
(
function
(
e
){
console
.
log
(
e
),
t
.
getList
(),
t
.
$message
({
type
:
"success"
,
message
:
"提交成功!"
}),
t
.
postModularDialog
=!
1
})}
else
this
.
postModularParams
.
pid
=
""
,
e
.
type
=
this
.
postModularParams
.
type
,
e
.
title
=
this
.
postModularParams
.
title
,
e
.
id
=
this
.
postModularParams
.
id
,
console
.
log
(
e
),
Object
(
i
.
_138
)(
e
.
id
,
e
).
then
(
function
(
e
){
t
.
getList
(),
t
.
$message
({
type
:
"success"
,
message
:
"更新成功!"
}),
t
.
postModularDialog
=!
1
})},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getList
()},
onSizeChange
:
function
(
t
){
this
.
nowPage
=
1
,
this
.
limit
=
t
,
this
.
getList
()},
onPageChangeC
:
function
(
t
){
this
.
contentNowPage
=
t
,
this
.
handleChange
()},
onSizeChangeC
:
function
(
t
){
this
.
contentNowPage
=
1
,
this
.
contentLimit
=
t
,
this
.
handleChange
()},
getList
:
function
(){
var
t
=
this
,
e
=
{
type
:
this
.
questionListParams
.
type
,
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
questionListParams
.
pid
&&
(
e
.
pid
=
this
.
questionListParams
.
pid
),
Object
(
i
.
_67
)(
e
.
type
,
e
).
then
(
function
(
e
){
t
.
modularList
=
e
.
list
,
console
.
log
(
t
.
modularList
),
t
.
total
=
e
.
total
})},
delContent
:
function
(
t
){
var
e
=
this
;
console
.
log
(
t
),
this
.
$confirm
(
"此操作将删除该记录?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
console
.
log
(
t
),
Object
(
i
.
V
)(
t
.
id
).
then
(
function
(
t
){
var
n
=
{
type
:
e
.
questionListParams
.
type
};
n
.
pid
=
e
.
postModularParams
.
pid
,
Object
(
i
.
_67
)(
n
.
type
,
n
).
then
(
function
(
t
){
e
.
modularContent
=
t
.
list
,
console
.
log
(
t
)}),
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})})})},
handleClick
:
function
(
t
){
this
.
questionListParams
.
type
=
t
.
name
,
this
.
postModularParams
.
type
=
t
.
name
,
this
.
getList
()},
typeChange
:
function
(){
var
t
=
this
,
e
=
{
type
:
this
.
postModularParams
.
type
};
Object
(
i
.
_67
)(
e
.
type
,
e
).
then
(
function
(
e
){
t
.
selectModular
=
e
.
list
})}}},
b
=
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
n
=
t
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
staticClass
:
"cssbox"
},[
n
(
"el-tabs"
,{
attrs
:{
type
:
"card"
},
on
:{
"tab-click"
:
t
.
handleClick
},
model
:{
value
:
t
.
questionListParams
.
type
,
callback
:
function
(
e
){
t
.
$set
(
t
.
questionListParams
,
"type"
,
e
)},
expression
:
"questionListParams.type"
}},[
n
(
"el-tab-pane"
,{
attrs
:{
label
:
"话术"
,
name
:
"1"
}}),
t
.
_v
(
" "
),
n
(
"el-tab-pane"
,{
attrs
:{
label
:
"流程"
,
name
:
"2"
}})],
1
),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"btnBox"
},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
postModularInit
}},[
t
.
_v
(
"新建模块"
)])],
1
),
t
.
_v
(
" "
),
n
(
"el-collapse"
,{
attrs
:{
accordion
:
""
},
on
:{
change
:
t
.
handleChange
},
model
:{
value
:
t
.
modularId
,
callback
:
function
(
e
){
t
.
modularId
=
e
},
expression
:
"modularId"
}},
t
.
_l
(
t
.
modularList
,
function
(
e
,
o
){
return
n
(
"el-collapse-item"
,{
key
:
o
,
attrs
:{
name
:
e
.
id
}},[
n
(
"template"
,{
slot
:
"title"
},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
title
)
+
"
\n
"
),
n
(
"div"
,{
staticClass
:
"btn-block list2-btn"
},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
staticStyle
:{
"margin-left"
:
"20px"
},
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
n
){
t
.
editModular
(
e
)}}},[
t
.
_v
(
"编辑"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
n
){
t
.
delIndex
(
e
)}}},[
t
.
_v
(
"删除"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
n
){
t
.
upIndex
(
e
,
o
)}}},[
t
.
_v
(
"上移"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
n
){
t
.
downIndex
(
e
,
o
)}}},[
t
.
_v
(
"下移"
)])],
1
)]),
t
.
_v
(
" "
),
n
(
"div"
,{
staticClass
:
"btnBox"
},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
postModularContentInit
}},[
t
.
_v
(
"新建模块内容"
)])],
1
),
t
.
_v
(
" "
),
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
modularContent
}},[
n
(
"el-table-column"
,{
attrs
:{
prop
:
"title"
,
label
:
"标题"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"keywords"
,
label
:
"关键字"
}}),
t
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"创建时间"
,
prop
:
"created_at"
}}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-table-column"
,{
attrs
:{
width
:
"330"
,
label
:
"操作"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
n
){
t
.
editContent
(
e
.
row
)}}},[
t
.
_v
(
"编辑查看"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
n
){
t
.
delContent
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
n
){
t
.
upcontent
(
e
.
row
,
e
.
$index
)}}},[
t
.
_v
(
"上移"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
n
){
t
.
downcontent
(
e
.
row
,
e
.
$index
)}}},[
t
.
_v
(
"下移"
)])]}}])})],
1
),
t
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
total
:
t
.
contentTotal
,
limit
:
t
.
contentLimit
},
on
:{
pageChange
:
t
.
onPageChangeC
,
sizeChange
:
t
.
onSizeChangeC
}})],
2
)})),
t
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
}}),
t
.
_v
(
" "
),
n
(
"el-dialog"
,{
attrs
:{
title
:
t
.
modularTitle
,
center
:
""
,
visible
:
t
.
postModularDialog
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
postModularDialog
=
e
}}},[
n
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
postModularParams
}},[
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"标题"
,
"label-width"
:
"80px"
,
required
:
""
}},[
n
(
"el-input"
,{
model
:{
value
:
t
.
postModularParams
.
title
,
callback
:
function
(
e
){
t
.
$set
(
t
.
postModularParams
,
"title"
,
e
)},
expression
:
"postModularParams.title"
}})],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
1
!==
t
.
type
?
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
postModularDialog
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
postModularFn
}},[
t
.
_v
(
"确 定"
)])],
1
):
t
.
_e
()],
1
),
t
.
_v
(
" "
),
n
(
"el-dialog"
,{
ref
:
"ruleForm"
,
attrs
:{
title
:
t
.
modularContentTitle
,
center
:
""
,
visible
:
t
.
postModularContentDialog
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
postModularContentDialog
=
e
}}},[
n
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
postModularParams
}},[
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"标题"
,
"label-width"
:
"80px"
,
required
:
""
}},[
n
(
"el-input"
,{
model
:{
value
:
t
.
postModularParams
.
title
,
callback
:
function
(
e
){
t
.
$set
(
t
.
postModularParams
,
"title"
,
e
)},
expression
:
"postModularParams.title"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
8
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"关键词"
,
"label-width"
:
"80px"
,
required
:
""
}},[
n
(
"el-input"
,{
model
:{
value
:
t
.
postModularParams
.
keywords
,
callback
:
function
(
e
){
t
.
$set
(
t
.
postModularParams
,
"keywords"
,
e
)},
expression
:
"postModularParams.keywords"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
n
(
"el-row"
,[
n
(
"el-col"
,{
attrs
:{
span
:
24
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"商品详情"
,
"label-width"
:
"80px"
,
required
:
""
}},[
n
(
"editor-detail"
,{
attrs
:{
lookData
:
t
.
postModularParams
}})],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
1
!==
t
.
type
?
n
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
n
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
postModularContentDialog
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
e
){
t
.
postModularContentFn
(
"ruleForm"
)}}},[
t
.
_v
(
"确 定"
)])],
1
):
t
.
_e
()],
1
)],
1
)};
b
.
_withStripped
=!
0
;
var
C
=
{
render
:
b
,
staticRenderFns
:[]},
f
=
C
;
var
v
=!
1
;
var
x
=
n
(
"VU/8"
)(
h
,
f
,
!
1
,
function
(
t
){
v
||
(
n
(
"/rTH"
),
n
(
"qjib"
))},
"data-v-5f4db161"
,
null
);
x
.
options
.
__file
=
"src
\\
components
\\
talkingSkill
\\
index.vue"
;
e
.
default
=
x
.
exports
},
KM5R
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
'
\
n.search-btn-block {
\
n margin-left: 20px;
\
n}
\
n.search-form {
\
n background: white;
\
n padding: 10px;
\
n margin: 10px 0;
\
n}
\
n.new-block {
\
n margin: 10px;
\
n text-align: right;
\
n}
\
n.fl-r {
\
n float: right;
\
n}
\
n.text-c {
\
n text-align: center;
\
n}
\
n.text-b {
\
n font-weight: bold;
\
n}
\
n.color-b {
\
n color: #6ba8e6;
\
n}
\
n.text-r {
\
n text-align: right;
\
n}
\
n.main-block {
\
n margin: 5px;
\
n background: white;
\
n padding: 5px;
\
n}
\
nhtml {
\
n font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "
\\
5FAE
\\
8F6F
\\
96C5
\\
9ED1", Arial, sans-serif;
\
n}
\
n.clear-both:after {
\
n content:
\'\'
;
\
n display: block;
\
n clear: both;
\
n}
\
n::-webkit-scrollbar-track-piece {
\
n border-radius: 10px;
\
n}
\
n::-webkit-scrollbar {
\
n width: 5px;
\
n height: 5px;
\
n}
\
n::-webkit-scrollbar-thumb {
\
n background-color: #999;
\
n border-radius: 10px;
\
n height: 10px;
\
n min-height: 10px;
\
n}
\
n.cssbox .el-container {
\
n height: 100%;
\
n}
\
n.cssbox .el-container .el-aside {
\
n overflow: auto;
\
n}
\
n.cssbox .el-container .btn-block {
\
n margin-left: 10px;
\
n -webkit-transition: all 1s;
\
n transition: all 1s;
\
n display: inline-block;
\
n}
\
n.cssbox .el-container .btn-block i {
\
n color: #aaaaaa;
\
n font-size: 14px;
\
n}
\
n.cssbox .el-container .btn-block i:hover {
\
n color: #3a8ee6;
\
n}
\
n.cssbox .el-container .list3:hover .list3-btn {
\
n display: inline-block;
\
n}
\
n.cssbox .el-collapse-item .el-collapse-item__wrap {
\
n border: 2px solid #40aaff;
\
n}
\
n.cssbox .iconfont {
\
n color: #aaaaaa;
\
n font-size: 14px;
\
n}
\
n.cssbox .iconfont:hover {
\
n color: #3a8ee6;
\
n}
\
n'
,
""
,{
version
:
3
,
sources
:[
"C:/Users/Administrator/Desktop/后台/admin/src/components/talkingSkill/index.vue"
],
names
:[],
mappings
:
";AACA;EACE,kBAAkB;CACnB;AACD;EACE,kBAAkB;EAClB,cAAc;EACd,eAAe;CAChB;AACD;EACE,aAAa;EACb,kBAAkB;CACnB;AACD;EACE,aAAa;CACd;AACD;EACE,mBAAmB;CACpB;AACD;EACE,kBAAkB;CACnB;AACD;EACE,eAAe;CAChB;AACD;EACE,kBAAkB;CACnB;AACD;EACE,YAAY;EACZ,kBAAkB;EAClB,aAAa;CACd;AACD;EACE,0IAA0H;CAC3H;AACD;EACE,YAAY;EACZ,eAAe;EACf,YAAY;CACb;AACD;EACE,oBAAoB;CACrB;AACD;EACE,WAAW;EACX,YAAY;CACb;AACD;EACE,uBAAuB;EACvB,oBAAoB;EACpB,aAAa;EACb,iBAAiB;CAClB;AACD;EACE,aAAa;CACd;AACD;EACE,eAAe;CAChB;AACD;EACE,kBAAkB;EAClB,2BAA2B;EAC3B,mBAAmB;EACnB,sBAAsB;CACvB;AACD;EACE,eAAe;EACf,gBAAgB;CACjB;AACD;EACE,eAAe;CAChB;AACD;EACE,sBAAsB;CACvB;AACD;EACE,0BAA0B;CAC3B;AACD;EACE,eAAe;EACf,gBAAgB;CACjB;AACD;EACE,eAAe;CAChB"
,
file
:
"index.vue"
,
sourcesContent
:[
'
\
n.search-btn-block {
\
n margin-left: 20px;
\
n}
\
n.search-form {
\
n background: white;
\
n padding: 10px;
\
n margin: 10px 0;
\
n}
\
n.new-block {
\
n margin: 10px;
\
n text-align: right;
\
n}
\
n.fl-r {
\
n float: right;
\
n}
\
n.text-c {
\
n text-align: center;
\
n}
\
n.text-b {
\
n font-weight: bold;
\
n}
\
n.color-b {
\
n color: #6ba8e6;
\
n}
\
n.text-r {
\
n text-align: right;
\
n}
\
n.main-block {
\
n margin: 5px;
\
n background: white;
\
n padding: 5px;
\
n}
\
nhtml {
\
n font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
\
n}
\
n.clear-both:after {
\
n content:
\'\'
;
\
n display: block;
\
n clear: both;
\
n}
\
n::-webkit-scrollbar-track-piece {
\
n border-radius: 10px;
\
n}
\
n::-webkit-scrollbar {
\
n width: 5px;
\
n height: 5px;
\
n}
\
n::-webkit-scrollbar-thumb {
\
n background-color: #999;
\
n border-radius: 10px;
\
n height: 10px;
\
n min-height: 10px;
\
n}
\
n.cssbox .el-container {
\
n height: 100%;
\
n}
\
n.cssbox .el-container .el-aside {
\
n overflow: auto;
\
n}
\
n.cssbox .el-container .btn-block {
\
n margin-left: 10px;
\
n -webkit-transition: all 1s;
\
n transition: all 1s;
\
n display: inline-block;
\
n}
\
n.cssbox .el-container .btn-block i {
\
n color: #aaaaaa;
\
n font-size: 14px;
\
n}
\
n.cssbox .el-container .btn-block i:hover {
\
n color: #3a8ee6;
\
n}
\
n.cssbox .el-container .list3:hover .list3-btn {
\
n display: inline-block;
\
n}
\
n.cssbox .el-collapse-item .el-collapse-item__wrap {
\
n border: 2px solid #40aaff;
\
n}
\
n.cssbox .iconfont {
\
n color: #aaaaaa;
\
n font-size: 14px;
\
n}
\
n.cssbox .iconfont:hover {
\
n color: #3a8ee6;
\
n}
\
n'
],
sourceRoot
:
""
}])},
ZOdw
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
'
\
n.search-btn-block[data-v-63cdde42] {
\
n margin-left: 20px;
\
n}
\
n.search-form[data-v-63cdde42] {
\
n background: white;
\
n padding: 10px;
\
n margin: 10px 0;
\
n}
\
n.new-block[data-v-63cdde42] {
\
n margin: 10px;
\
n text-align: right;
\
n}
\
n.fl-r[data-v-63cdde42] {
\
n float: right;
\
n}
\
n.text-c[data-v-63cdde42] {
\
n text-align: center;
\
n}
\
n.text-b[data-v-63cdde42] {
\
n font-weight: bold;
\
n}
\
n.color-b[data-v-63cdde42] {
\
n color: #6ba8e6;
\
n}
\
n.text-r[data-v-63cdde42] {
\
n text-align: right;
\
n}
\
n.main-block[data-v-63cdde42] {
\
n margin: 5px;
\
n background: white;
\
n padding: 5px;
\
n}
\
nhtml[data-v-63cdde42] {
\
n font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "
\\
5FAE
\\
8F6F
\\
96C5
\\
9ED1", Arial, sans-serif;
\
n}
\
n.clear-both[data-v-63cdde42]:after {
\
n content:
\'\'
;
\
n display: block;
\
n clear: both;
\
n}
\
n[data-v-63cdde42]::-webkit-scrollbar-track-piece {
\
n border-radius: 10px;
\
n}
\
n[data-v-63cdde42]::-webkit-scrollbar {
\
n width: 5px;
\
n height: 5px;
\
n}
\
n[data-v-63cdde42]::-webkit-scrollbar-thumb {
\
n background-color: #999;
\
n border-radius: 10px;
\
n height: 10px;
\
n min-height: 10px;
\
n}
\
n.tinymce[data-v-63cdde42] {
\
n position: relative;
\
n}
\
n.tinymce[data-v-63cdde42]:after {
\
n content:
\'\'
;
\
n display: block;
\
n clear: both;
\
n}
\
n.tinymce .imgInter[data-v-63cdde42] {
\
n position: absolute;
\
n display: inline-block;
\
n text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
\
n top: 3px;
\
n left: 330px;
\
n -webkit-box-shadow: none;
\
n box-shadow: none;
\
n -webkit-filter: none;
\
n filter: none;
\
n padding: 4px 6px;
\
n border: 1px solid transparent;
\
n line-height: 1.4;
\
n margin: 0 5px;
\
n}
\
n.tinymce .imgInter[data-v-63cdde42]:hover {
\
n border-color: #e2e4e7;
\
n cursor: pointer;
\
n}
\
n.MP3Inter[data-v-63cdde42] {
\
n position: absolute;
\
n display: inline-block;
\
n text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
\
n top: 3px;
\
n left: 400px;
\
n -webkit-box-shadow: none;
\
n box-shadow: none;
\
n -webkit-filter: none;
\
n filter: none;
\
n padding: 4px 6px;
\
n line-height: 1.4;
\
n margin: 0 5px;
\
n border: 1px solid transparent;
\
n}
\
n.MP3Inter[data-v-63cdde42]:hover {
\
n border-color: #e2e4e7;
\
n cursor: pointer;
\
n}
\
n'
,
""
,{
version
:
3
,
sources
:[
"C:/Users/Administrator/Desktop/后台/admin/src/components/talkingSkill/editorDetail.vue"
],
names
:[],
mappings
:
";AACA;EACE,kBAAkB;CACnB;AACD;EACE,kBAAkB;EAClB,cAAc;EACd,eAAe;CAChB;AACD;EACE,aAAa;EACb,kBAAkB;CACnB;AACD;EACE,aAAa;CACd;AACD;EACE,mBAAmB;CACpB;AACD;EACE,kBAAkB;CACnB;AACD;EACE,eAAe;CAChB;AACD;EACE,kBAAkB;CACnB;AACD;EACE,YAAY;EACZ,kBAAkB;EAClB,aAAa;CACd;AACD;EACE,0IAA0H;CAC3H;AACD;EACE,YAAY;EACZ,eAAe;EACf,YAAY;CACb;AACD;EACE,oBAAoB;CACrB;AACD;EACE,WAAW;EACX,YAAY;CACb;AACD;EACE,uBAAuB;EACvB,oBAAoB;EACpB,aAAa;EACb,iBAAiB;CAClB;AACD;EACE,mBAAmB;CACpB;AACD;EACE,YAAY;EACZ,eAAe;EACf,YAAY;CACb;AACD;EACE,mBAAmB;EACnB,sBAAsB;EACtB,iDAAiD;EACjD,SAAS;EACT,YAAY;EACZ,yBAAyB;UACjB,iBAAiB;EACzB,qBAAqB;UACb,aAAa;EACrB,iBAAiB;EACjB,8BAA8B;EAC9B,iBAAiB;EACjB,cAAc;CACf;AACD;EACE,sBAAsB;EACtB,gBAAgB;CACjB;AACD;EACE,mBAAmB;EACnB,sBAAsB;EACtB,iDAAiD;EACjD,SAAS;EACT,YAAY;EACZ,yBAAyB;UACjB,iBAAiB;EACzB,qBAAqB;UACb,aAAa;EACrB,iBAAiB;EACjB,iBAAiB;EACjB,cAAc;EACd,8BAA8B;CAC/B;AACD;EACE,sBAAsB;EACtB,gBAAgB;CACjB"
,
file
:
"editorDetail.vue"
,
sourcesContent
:[
'
\
n.search-btn-block[data-v-63cdde42] {
\
n margin-left: 20px;
\
n}
\
n.search-form[data-v-63cdde42] {
\
n background: white;
\
n padding: 10px;
\
n margin: 10px 0;
\
n}
\
n.new-block[data-v-63cdde42] {
\
n margin: 10px;
\
n text-align: right;
\
n}
\
n.fl-r[data-v-63cdde42] {
\
n float: right;
\
n}
\
n.text-c[data-v-63cdde42] {
\
n text-align: center;
\
n}
\
n.text-b[data-v-63cdde42] {
\
n font-weight: bold;
\
n}
\
n.color-b[data-v-63cdde42] {
\
n color: #6ba8e6;
\
n}
\
n.text-r[data-v-63cdde42] {
\
n text-align: right;
\
n}
\
n.main-block[data-v-63cdde42] {
\
n margin: 5px;
\
n background: white;
\
n padding: 5px;
\
n}
\
nhtml[data-v-63cdde42] {
\
n font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
\
n}
\
n.clear-both[data-v-63cdde42]:after {
\
n content:
\'\'
;
\
n display: block;
\
n clear: both;
\
n}
\
n[data-v-63cdde42]::-webkit-scrollbar-track-piece {
\
n border-radius: 10px;
\
n}
\
n[data-v-63cdde42]::-webkit-scrollbar {
\
n width: 5px;
\
n height: 5px;
\
n}
\
n[data-v-63cdde42]::-webkit-scrollbar-thumb {
\
n background-color: #999;
\
n border-radius: 10px;
\
n height: 10px;
\
n min-height: 10px;
\
n}
\
n.tinymce[data-v-63cdde42] {
\
n position: relative;
\
n}
\
n.tinymce[data-v-63cdde42]:after {
\
n content:
\'\'
;
\
n display: block;
\
n clear: both;
\
n}
\
n.tinymce .imgInter[data-v-63cdde42] {
\
n position: absolute;
\
n display: inline-block;
\
n text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
\
n top: 3px;
\
n left: 330px;
\
n -webkit-box-shadow: none;
\
n box-shadow: none;
\
n -webkit-filter: none;
\
n filter: none;
\
n padding: 4px 6px;
\
n border: 1px solid transparent;
\
n line-height: 1.4;
\
n margin: 0 5px;
\
n}
\
n.tinymce .imgInter[data-v-63cdde42]:hover {
\
n border-color: #e2e4e7;
\
n cursor: pointer;
\
n}
\
n.MP3Inter[data-v-63cdde42] {
\
n position: absolute;
\
n display: inline-block;
\
n text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
\
n top: 3px;
\
n left: 400px;
\
n -webkit-box-shadow: none;
\
n box-shadow: none;
\
n -webkit-filter: none;
\
n filter: none;
\
n padding: 4px 6px;
\
n line-height: 1.4;
\
n margin: 0 5px;
\
n border: 1px solid transparent;
\
n}
\
n.MP3Inter[data-v-63cdde42]:hover {
\
n border-color: #e2e4e7;
\
n cursor: pointer;
\
n}
\
n'
],
sourceRoot
:
""
}])},
kiMe
:
function
(
t
,
e
,
n
){(
t
.
exports
=
n
(
"FZ+f"
)(
!
0
)).
push
([
t
.
i
,
"
\n
.cssbox[data-v-5f4db161] {
\n
padding-top: 40px;
\n
}
\n
.btnBox .el-button[data-v-5f4db161] {
\n
margin: 10px 30px;
\n
}
\n
"
,
""
,{
version
:
3
,
sources
:[
"C:/Users/Administrator/Desktop/后台/admin/src/components/talkingSkill/index.vue"
],
names
:[],
mappings
:
";AACA;EACE,kBAAkB;CACnB;AACD;EACE,kBAAkB;CACnB"
,
file
:
"index.vue"
,
sourcesContent
:[
"
\n
.cssbox[data-v-5f4db161] {
\n
padding-top: 40px;
\n
}
\n
.btnBox .el-button[data-v-5f4db161] {
\n
margin: 10px 30px;
\n
}
\n
"
],
sourceRoot
:
""
}])},
qjib
:
function
(
t
,
e
,
n
){
var
o
=
n
(
"kiMe"
);
"string"
==
typeof
o
&&
(
o
=
[[
t
.
i
,
o
,
""
]]),
o
.
locals
&&
(
t
.
exports
=
o
.
locals
);
n
(
"rjj0"
)(
"1ecf5c36"
,
o
,
!
1
,{})}});
\ No newline at end of file
dev/static/js/manifest.427143089ec87ec57ebe.js
0 → 100644
View file @
0dc84ce0
!
function
(
e
){
var
c
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
a
,
n
,
r
){
for
(
var
t
,
o
,
b
,
i
=
0
,
u
=
[];
i
<
a
.
length
;
i
++
)
o
=
a
[
i
],
f
[
o
]
&&
u
.
push
(
f
[
o
][
0
]),
f
[
o
]
=
0
;
for
(
t
in
n
)
Object
.
prototype
.
hasOwnProperty
.
call
(
n
,
t
)
&&
(
e
[
t
]
=
n
[
t
]);
for
(
c
&&
c
(
a
,
n
,
r
);
u
.
length
;)
u
.
shift
()();
if
(
r
)
for
(
i
=
0
;
i
<
r
.
length
;
i
++
)
b
=
d
(
d
.
s
=
r
[
i
]);
return
b
};
var
a
=
{},
f
=
{
57
:
0
};
function
d
(
c
){
if
(
a
[
c
])
return
a
[
c
].
exports
;
var
f
=
a
[
c
]
=
{
i
:
c
,
l
:
!
1
,
exports
:{}};
return
e
[
c
].
call
(
f
.
exports
,
f
,
f
.
exports
,
d
),
f
.
l
=!
0
,
f
.
exports
}
d
.
e
=
function
(
e
){
var
c
=
f
[
e
];
if
(
0
===
c
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
c
)
return
c
[
2
];
var
a
=
new
Promise
(
function
(
a
,
d
){
c
=
f
[
e
]
=
[
a
,
d
]});
c
[
2
]
=
a
;
var
n
=
document
.
getElementsByTagName
(
"head"
)[
0
],
r
=
document
.
createElement
(
"script"
);
r
.
type
=
"text/javascript"
,
r
.
charset
=
"utf-8"
,
r
.
async
=!
0
,
r
.
timeout
=
12
e4
,
d
.
nc
&&
r
.
setAttribute
(
"nonce"
,
d
.
nc
),
r
.
src
=
d
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"1b3cbe22dc1c7f85ee1a"
,
1
:
"42ca963ed3f9ccffbcaf"
,
2
:
"d57fd5d0dd32142aee13"
,
3
:
"48139628afb5420e61e1"
,
4
:
"9889ef0934620946c7f2"
,
5
:
"ddf87c2a8070390808f3"
,
6
:
"8da027196fd747c4085f"
,
7
:
"891d30ba67d29c14d349"
,
8
:
"fd937547b139e642e927"
,
9
:
"90bb075b664abb0937b9"
,
10
:
"ce17e967326e32df4fa8"
,
11
:
"fa1ae48fc85947228c23"
,
12
:
"707f9c66d148d9a4a41f"
,
13
:
"5a7bf83451fdcf9b9422"
,
14
:
"842be9403a20d2f57c26"
,
15
:
"ecb1b622859eccceea44"
,
16
:
"97a930124018d0320fb5"
,
17
:
"e16895acee34f20572aa"
,
18
:
"0b543b8fd02adc966926"
,
19
:
"5bfe53a2c34b0e42df5e"
,
20
:
"8818d68a3639b5838073"
,
21
:
"306519a16f1cd253f3f2"
,
22
:
"e095fa5771201a1602ae"
,
23
:
"c59c4770cad365f61fbd"
,
24
:
"538917968f334cd168f6"
,
25
:
"0be50108ba599422d1f5"
,
26
:
"1c8e66a4103e22c467b1"
,
27
:
"ac52a426a1eaaada96b5"
,
28
:
"d12931c23a0278f2fa52"
,
29
:
"ce73c9c0ec83d3ac9c88"
,
30
:
"3283c587f580c3272923"
,
31
:
"64c41a9e4d21d464fec8"
,
32
:
"5cde0360b6d18a8cb678"
,
33
:
"14dda860b851a12e1968"
,
34
:
"209e5c673bfeb77d614b"
,
35
:
"e4ec7f81399725cb45d8"
,
36
:
"fbf6ce13419b872ae8ce"
,
37
:
"7e2b057689fe68bceac6"
,
38
:
"2dccc542cb2fb73e72c2"
,
39
:
"12457f8caaa1fb444f28"
,
40
:
"d78445e26afd15d37136"
,
41
:
"c3267e78cebbfe86e376"
,
42
:
"640490614207147b4776"
,
43
:
"56ab8a753be1d6dc8169"
,
44
:
"904778098a5d5d413dcd"
,
45
:
"de83b2137d94222bec14"
,
46
:
"4fbaa89d5023760442e8"
,
47
:
"3c50ec604f7424eaa03a"
,
48
:
"7a66f7039e5817359614"
,
49
:
"dfa8a9f6c903909c4d00"
,
50
:
"d6dac402aaad144be474"
,
51
:
"97f2d550175f72d604de"
,
52
:
"46846752c0625f3f0c03"
,
53
:
"c93ae88af733e837ec5e"
,
54
:
"e2c00e550c1dd0c79e0f"
}[
e
]
+
".js"
;
var
t
=
setTimeout
(
o
,
12
e4
);
function
o
(){
r
.
onerror
=
r
.
onload
=
null
,
clearTimeout
(
t
);
var
c
=
f
[
e
];
0
!==
c
&&
(
c
&&
c
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
f
[
e
]
=
void
0
)}
return
r
.
onerror
=
r
.
onload
=
o
,
n
.
appendChild
(
r
),
a
},
d
.
m
=
e
,
d
.
c
=
a
,
d
.
d
=
function
(
e
,
c
,
a
){
d
.
o
(
e
,
c
)
||
Object
.
defineProperty
(
e
,
c
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
a
})},
d
.
n
=
function
(
e
){
var
c
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
d
.
d
(
c
,
"a"
,
c
),
c
},
d
.
o
=
function
(
e
,
c
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
c
)},
d
.
p
=
"/"
,
d
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
dist/index.html
View file @
0dc84ce0
<!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_x1rivf5f5.css
><link
rel=
stylesheet
href=
https://lib.baomitu.com/element-ui/2.7.2/theme-chalk/index.css
><title>
唱唱启蒙-后台
</title><link
href=
/static/css/app.
e7392a773eab3c73dd4f4349d285183e.css
rel=
stylesheet
></head><body><script
src=
https://cdn.bootcss.com/vue/2.5.17/vue.min.js
></script><script
src=
https://unpkg.com/vuex@3.0.1
></script><script
src=
https://cdn.bootcss.com/axios/0.18.0/axios.min.js
></script><script
src=
https://lib.baomitu.com/element-ui/2.7.2/index.js
></script><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.c1e82e1a416bda2f065a.js
></script><script
type=
text/javascript
src=
/static/js/vendor.063223a865183c95a037.js
></script><script
type=
text/javascript
src=
/static/js/app.e4ad40cfc790d0ac74d8
.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_x1rivf5f5.css
><link
rel=
stylesheet
href=
https://lib.baomitu.com/element-ui/2.7.2/theme-chalk/index.css
><title>
唱唱启蒙-后台
</title><link
href=
/static/css/app.
23e61f02e090be6630116d57a1eb88da.css
rel=
stylesheet
></head><body><script
src=
https://cdn.bootcss.com/vue/2.5.17/vue.min.js
></script><script
src=
https://unpkg.com/vuex@3.0.1
></script><script
src=
https://cdn.bootcss.com/axios/0.18.0/axios.min.js
></script><script
src=
https://lib.baomitu.com/element-ui/2.7.2/index.js
></script><div
id=
app
></div><script
type=
text/javascript
src=
/static/js/manifest.3defc7637adf4a84c626.js
></script><script
type=
text/javascript
src=
/static/js/vendor.063223a865183c95a037.js
></script><script
type=
text/javascript
src=
/static/js/app.893b249b6eab7a5d6cef
.js
></script></body><script>
let
el
=
document
.
getElementsByTagName
(
"script"
);
el
.
onerror
=
function
(
a
,
b
,
c
){
el
.
onerror
=
function
(
a
,
b
,
c
){
console
.
log
(
'error:'
,
a
,
b
,
c
);
console
.
log
(
'error:'
,
a
,
b
,
c
);
};
};
...
...
dist/static/css/app.23e61f02e090be6630116d57a1eb88da.css
0 → 100644
View file @
0dc84ce0
This source diff could not be displayed because it is too large. You can
view the blob
instead.
dist/static/js/19.7640a1eb3d11c5a2476a.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
19
],{
Bsk5
:
function
(
t
,
e
){},
CK6D
:
function
(
t
,
e
,
i
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
s
=
i
(
"CCn6"
),
a
=
i
(
"kmJW"
),
n
=
i
(
"C+jy"
),
o
=
{
name
:
"focusReplyDialog"
,
props
:[
"dialogObj"
],
data
:
function
(){
return
{
show
:
!
1
,
loading
:
!
1
,
showEmotion
:
!
1
,
total
:
0
,
nowPage
:
1
,
limit
:
3
,
id
:
null
,
list
:[],
index
:
-
1
,
form
:{
key
:
""
,
value
:
""
,
desc
:
""
},
content
:
""
,
imageContent
:
""
,
newsContent
:
""
,
videoContent
:
""
,
voiceContent
:
""
,
type
:
"news"
,
mediaList
:[],
mediaListMock
:[],
showMedia
:
!
1
,
pickerOptions1
:{
disabledDate
:
function
(
t
){
return
!
(
t
.
getTime
()
>
Date
.
now
())}},
newsItemForm
:{
type
:
"news-item"
,
title
:
""
,
description
:
""
,
thumb_url
:
""
,
url
:
""
},
newsItemImageList
:[],
rules
:{
value
:[{
required
:
!
0
,
message
:
"请输入规则名称"
,
trigger
:
"change"
}],
desc
:[{
required
:
!
0
,
message
:
"请输入回复内容"
,
trigger
:
"change"
}],
qr
:[{
required
:
!
0
,
message
:
"请输入二维码"
,
trigger
:
"change"
}],
title
:[{
required
:
!
0
,
message
:
"请输入图文标题"
,
trigger
:
"change"
}],
description
:[{
required
:
!
0
,
message
:
"请输入图文描述"
,
trigger
:
"change"
}],
url
:[{
required
:
!
0
,
message
:
"请输入图文链接"
,
trigger
:
"change"
}]},
imageList
:[],
uploadShow
:
!
0
,
newsItemUploadShow
:
!
0
}},
components
:{
page
:
a
.
a
,
page2
:
a
.
a
,
page3
:
a
.
a
,
page4
:
a
.
a
,
emotion
:
n
.
a
},
mounted
:
function
(){
this
.
initDialog
()},
filters
:{},
methods
:{
addTeacherName
:
function
(){
this
.
content
+=
"{my_teacher_name}"
},
addTeacherAlias
:
function
(){
this
.
content
+=
"{my_teacher_alias}"
},
handleEmotion
:
function
(
t
){
this
.
content
+=
t
},
onChangeType
:
function
(
t
){
this
.
type
=
t
,
this
.
mediaList
=
[],
this
.
showMedia
=!
1
,
this
.
nowPage
=
1
},
initDialog
:
function
(){
if
(
this
.
dialogObj
.
id
&&
(
this
.
id
=
this
.
dialogObj
.
id
),
this
.
form
.
key
=
this
.
dialogObj
.
key
,
this
.
form
.
value
=
this
.
dialogObj
.
value
,
this
.
index
=
this
.
dialogObj
.
index
,
this
.
list
=
this
.
dialogObj
.
list
||
[],
-
1
===
this
.
index
)
"mini_auto_reply"
===
this
.
dialogObj
.
key
?
this
.
type
=
"text"
:(
this
.
type
=
"news"
,
this
.
newsContent
=
""
);
else
if
(
this
.
type
=
this
.
list
[
this
.
index
].
type
,
"text"
===
this
.
type
)
this
.
content
=
this
.
list
[
this
.
index
].
content
;
else
{
var
t
=
{
type
:
this
.
type
};
this
.
list
[
this
.
index
].
content
&&
(
t
.
content
=
this
.
list
[
this
.
index
].
content
),
this
.
list
[
this
.
index
].
media_id
&&
(
t
.
media_id
=
this
.
list
[
this
.
index
].
media_id
),
this
.
list
[
this
.
index
].
variable
&&
(
t
.
variable
=
this
.
list
[
this
.
index
].
variable
),
"image"
===
this
.
type
?(
this
.
imageContent
=
t
,
"mini_auto_reply"
===
this
.
dialogObj
.
key
&&
(
this
.
imageList
=
[{
name
:
"mini-image"
,
url
:
t
.
content
}],
this
.
uploadShow
=!
1
)):
"news"
===
this
.
type
?
this
.
newsContent
=
t
:
"news-item"
===
this
.
type
||
"link"
===
this
.
type
?(
this
.
newsItemForm
.
description
=
this
.
list
[
this
.
index
].
description
,
this
.
newsItemForm
.
thumb_url
=
this
.
list
[
this
.
index
].
thumb_url
,
this
.
newsItemForm
.
title
=
this
.
list
[
this
.
index
].
title
,
this
.
newsItemForm
.
url
=
this
.
list
[
this
.
index
].
url
,
this
.
newsItemImageList
=
[{
name
:
this
.
list
[
this
.
index
].
thumb_url
,
url
:
this
.
list
[
this
.
index
].
thumb_url
}],
this
.
newsItemUploadShow
=!
1
):
"voice"
===
this
.
type
?
this
.
voiceContent
=
t
:
"video"
===
this
.
type
&&
(
this
.
videoContent
=
t
)}},
close
:
function
(){
this
.
$emit
(
"changeShow"
,
!
1
)},
save
:
function
(){
var
t
=
this
,
e
=
this
.
form
,
i
=
this
.
list
||
[];
if
(
"text"
===
this
.
type
){
if
(
!
this
.
content
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请输入文本内容"
});
var
a
=
{
type
:
this
.
type
,
content
:
this
.
content
};
this
.
index
>-
1
?
i
[
this
.
index
]
=
a
:
i
.
push
(
a
)}
else
if
(
"image"
===
this
.
type
){
if
(
!
this
.
imageContent
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择图片"
});
this
.
index
>-
1
?
i
[
this
.
index
]
=
this
.
imageContent
:
i
.
push
(
this
.
imageContent
)}
else
if
(
"news"
===
this
.
type
){
if
(
!
this
.
newsContent
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择图文"
});
this
.
index
>-
1
?
i
[
this
.
index
]
=
this
.
newsContent
:
i
.
push
(
this
.
newsContent
)}
else
if
(
"video"
===
this
.
type
){
if
(
!
this
.
videoContent
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择视频"
});
this
.
index
>-
1
?
i
[
this
.
index
]
=
this
.
videoContent
:
i
.
push
(
this
.
videoContent
)}
else
if
(
"voice"
===
this
.
type
){
if
(
!
this
.
voiceContent
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择语音"
});
this
.
index
>-
1
?
i
[
this
.
index
]
=
this
.
voiceContent
:
i
.
push
(
this
.
voiceContent
)}
else
if
(
"news-item"
===
this
.
type
||
"link"
===
this
.
type
){
if
(
this
.
newsItemForm
.
type
=
this
.
type
,
!
this
.
newsItemForm
.
thumb_url
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请上传图文图片"
});
this
.
index
>-
1
?
i
[
this
.
index
]
=
this
.
newsItemForm
:
i
.
push
(
this
.
newsItemForm
)}
e
.
desc
=
JSON
.
stringify
(
i
),
this
.
id
?
Object
(
s
.
_129
)(
this
.
id
,
e
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
t
.
$emit
(
"reflash"
),
t
.
$emit
(
"changeShow"
,
!
1
),
t
.
show
=!
1
}):
Object
(
s
.
_108
)(
e
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"保存成功!"
}),
t
.
$emit
(
"reflash"
),
t
.
$emit
(
"changeShow"
,
!
1
)})},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getMediaList
(
this
.
type
)},
onSizeChange
:
function
(
t
){
this
.
nowPage
=
1
,
this
.
limit
=
t
,
this
.
getMediaList
(
this
.
type
)},
getMediaList
:
function
(
t
){
var
e
=
this
,
i
=
{
type
:
t
,
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
loading
=!
0
,
Object
(
s
.
_52
)(
i
).
then
(
function
(
i
){
e
.
loading
=!
1
,
e
.
type
=
t
,
e
.
total
=
i
.
total_count
,
0
===
i
.
item
.
length
?(
e
.
$message
({
showClose
:
!
0
,
message
:
"暂无数据"
}),
e
.
showMedia
=!
1
):(
e
.
showMedia
=!
0
,
e
.
mediaList
=
i
.
item
)}).
catch
(
function
(){
e
.
loading
=!
1
,
e
.
showMedia
=!
1
})},
onChooseMedia
:
function
(
t
){
"news"
===
this
.
type
?
this
.
addContent
(
this
.
type
,
t
.
content
,
t
.
media_id
):
"video"
===
this
.
type
?
this
.
addContent
(
this
.
type
,
t
.
info
,
t
.
media_id
):
"voice"
===
this
.
type
?
this
.
addContent
(
this
.
type
,
t
,
t
.
media_id
):
this
.
addContent
(
this
.
type
,
t
.
url
,
t
.
media_id
),
this
.
showMedia
=!
1
},
addTeacherQrcode
:
function
(){
this
.
imageContent
=
{
type
:
"image"
,
variable
:
"my_teacher"
}},
addContent
:
function
(
t
,
e
,
i
){
var
s
=
{};
e
&&
(
s
=
{
type
:
t
,
content
:
e
}),
i
&&
(
s
.
media_id
=
i
),
"news"
===
t
?
this
.
newsContent
=
s
:
"video"
===
t
?
this
.
videoContent
=
s
:
"voice"
===
t
?
this
.
voiceContent
=
s
:
this
.
imageContent
=
s
},
handleNewsItemAvatarSuccess
:
function
(
t
){
this
.
newsItemImageList
=
[{
name
:
t
.
data
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
data
.
url
}]},
beforeAvatarUpload
:
function
(){
this
.
uploadShow
=!
1
},
handleAvatarSuccess
:
function
(
t
){
this
.
imageList
=
[{
name
:
t
.
data
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
data
.
url
}]},
beforeNewsItemAvatarUpload
:
function
(){
this
.
newsItemUploadShow
=!
1
},
uploadNewsItemFile
:
function
(
t
){
var
e
=
this
;
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
t
.
file
.
uid
}),
Object
(
s
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
e
.
newsItemImageList
=
[{
name
:
t
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
}],
e
.
loading
=!
1
,
e
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
e
.
newsItemForm
.
thumb_url
=
"https://cdn.singsingenglish.com/"
+
t
.
url
}).
catch
(
function
(){
e
.
loading
=!
1
})},
uploadFile
:
function
(
t
){
var
e
=
this
;
this
.
loading
=!
0
,
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
t
.
file
.
uid
}),
this
.
fileUid
=
t
.
file
.
uid
,
Object
(
s
.
_142
)({
file
:
t
.
file
,
type
:
"mini"
}).
then
(
function
(
i
){
e
.
uploadFileToQiniu
(
t
,
i
),
e
.
loading
=!
1
}).
catch
(
function
(){
e
.
loading
=!
1
})},
uploadFileToQiniu
:
function
(
t
,
e
){
var
i
=
this
;
this
.
loading
=!
0
,
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
t
.
file
.
uid
}),
Object
(
s
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
i
.
imageList
=
[{
name
:
t
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
}],
i
.
loading
=!
1
,
i
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
i
.
imageContent
=
{
type
:
"image"
,
content
:
"https://cdn.singsingenglish.com/"
+
t
.
url
,
media_id
:
e
.
media_id
}}).
catch
(
function
(){
i
.
loading
=!
1
})},
handleRemove
:
function
(){
this
.
uploadShow
=!
0
},
handleNewsItemRemove
:
function
(){
this
.
newsItemUploadShow
=!
0
}}},
l
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"el-dialog"
,{
attrs
:{
title
:
"自动回复"
,
center
:
""
,
visible
:
t
.
dialogObj
.
show
,
width
:
"900px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
$set
(
t
.
dialogObj
,
"show"
,
e
)}}},[
i
(
"div"
,{
staticClass
:
"focus-reply"
},[
i
(
"div"
,{
staticClass
:
"content"
},[
i
(
"div"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
t
.
loading
,
expression
:
"loading"
}],
staticClass
:
"inner"
},[
i
(
"ul"
,{
staticClass
:
"weui-desktop-msg-sender__tabs"
},[
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_appmsg"
,
class
:
"news"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"news"
)}}},[
t
.
_v
(
"图文"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_appmsg"
,
class
:
"news-item"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"news-item"
)}}},[
t
.
_v
(
"图文链接"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_appmsg"
,
class
:
"link"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"link"
)}}},[
t
.
_v
(
"链接"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_text"
,
class
:
"text"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"text"
)}}},[
t
.
_v
(
"文字"
)]),
t
.
_v
(
" "
),
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_img"
,
class
:
"image"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"image"
)}}},[
t
.
_v
(
"图片"
)]),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_audio"
,
class
:
"voice"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"voice"
)}}},[
t
.
_v
(
"语音"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"li"
,{
staticClass
:
"weui-desktop-msg-sender__tab weui-desktop-msg-sender__tab_video"
,
class
:
"video"
===
t
.
type
?
"weui-desktop-msg-sender__tab_selected"
:
""
,
on
:{
click
:
function
(
e
){
t
.
onChangeType
(
"video"
)}}},[
t
.
_v
(
"视频"
)]):
t
.
_e
()]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"inner-bottom"
},[
"image"
===
t
.
type
?
i
(
"div"
,{
staticClass
:
"img-action"
},[
t
.
imageContent
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?[
t
.
imageContent
.
variable
?
i
(
"div"
,{
staticClass
:
"my-teacher"
},[
t
.
_v
(
"我的老师二维码"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
imageContent
.
content
?
i
(
"img"
,{
staticStyle
:{
"max-width"
:
"80%"
},
attrs
:{
src
:
t
.
imageContent
.
content
}}):
t
.
_e
()]:
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
!
t
.
showMedia
&&
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"div"
,{
staticClass
:
"img-create-access"
},[
i
(
"a"
,{
staticClass
:
"img-create-access__link"
,
attrs
:{
href
:
"javascript:;"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
"image"
)}}},[
t
.
_v
(
"从素材库中选择"
)])]):
t
.
_e
(),
t
.
_v
(
" "
),
!
t
.
showMedia
&&
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"div"
,{
staticClass
:
"img-create-access"
},[
i
(
"a"
,{
staticClass
:
"img-create-access__link"
,
attrs
:{
href
:
"javascript:;"
},
on
:{
click
:
t
.
addTeacherQrcode
}},[
t
.
_v
(
"添加老师二维码"
)])]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
===
t
.
dialogObj
.
key
?
i
(
"el-upload"
,{
class
:{
disabled
:
!
t
.
uploadShow
},
attrs
:{
action
:
"/api/public/upload/zone"
,
"http-request"
:
t
.
uploadFile
,
"before-upload"
:
t
.
beforeAvatarUpload
,
"list-type"
:
"picture-card"
,
"file-list"
:
t
.
imageList
,
"on-success"
:
t
.
handleAvatarSuccess
,
"on-remove"
:
t
.
handleRemove
,
limit
:
1
}},[
i
(
"i"
,{
staticClass
:
"el-icon-plus"
})]):
t
.
_e
()],
1
),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
i
(
"a"
,{
attrs
:{
href
:
t
.
row
.
url
,
target
:
"_blank"
}},[
i
(
"img"
,{
staticStyle
:{
width
:
"60px"
},
attrs
:{
src
:
t
.
row
.
url
}})])]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()],
2
):
t
.
_e
(),
t
.
_v
(
" "
),
"news"
===
t
.
type
?
i
(
"div"
,{
staticClass
:
"img-action"
},[
t
.
newsContent
&&
t
.
newsContent
.
content
?[
i
(
"div"
,{
staticClass
:
"news-media"
},
t
.
_l
(
t
.
newsContent
.
content
.
news_item
,
function
(
e
,
s
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
t
.
newsContent
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
e
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
e
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
newsContent
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
s
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
e
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
e
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
e
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])}))]:
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
t
.
showMedia
?
t
.
_e
():
i
(
"div"
,{
staticClass
:
"img-create-access"
},[
i
(
"a"
,{
staticClass
:
"img-create-access__link"
,
attrs
:{
href
:
"javascript:;"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
t
.
type
)}}},[
t
.
_v
(
"从素材库中选择"
)])])]),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"图文"
,
className
:
"news-media"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
t
.
_l
(
e
.
row
.
content
.
news_item
,
function
(
s
,
a
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
e
.
row
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
s
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
e
.
row
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
a
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
s
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])})}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page2"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()],
2
):
t
.
_e
(),
t
.
_v
(
" "
),
"video"
===
t
.
type
?
i
(
"div"
,{
staticClass
:
"img-action"
,
staticStyle
:{
"text-align"
:
"left"
}},[
t
.
videoContent
&&
t
.
videoContent
.
content
?[
t
.
videoContent
.
content
&&
t
.
videoContent
.
content
.
down_url
?
i
(
"a"
,{
attrs
:{
href
:
t
.
videoContent
.
content
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
videoContent
.
content
.
title
)
+
"
\n
"
)]):
t
.
_e
()]:
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
t
.
showMedia
?
t
.
_e
():
i
(
"div"
,{
staticClass
:
"img-create-access"
},[
i
(
"a"
,{
staticClass
:
"img-create-access__link"
,
attrs
:{
href
:
"javascript:;"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
t
.
type
)}}},[
t
.
_v
(
"从素材库中选择"
)])])]),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
info
&&
e
.
row
.
info
.
down_url
?
i
(
"a"
,{
attrs
:{
href
:
e
.
row
.
info
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
info
.
title
)
+
"
\n
"
)]):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page3"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()],
2
):
t
.
_e
(),
t
.
_v
(
" "
),
"voice"
===
t
.
type
?
i
(
"div"
,{
staticClass
:
"img-action"
,
staticStyle
:{
"text-align"
:
"left"
}},[
t
.
voiceContent
?[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
voiceContent
.
content
.
name
)
+
"
\n
"
)]:
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
t
.
showMedia
?
t
.
_e
():
i
(
"div"
,{
staticClass
:
"img-create-access"
},[
i
(
"a"
,{
staticClass
:
"img-create-access__link"
,
attrs
:{
href
:
"javascript:;"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
t
.
type
)}}},[
t
.
_v
(
"从素材库中选择"
)])])]),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
info
&&
e
.
row
.
info
.
down_url
?
i
(
"a"
,{
attrs
:{
href
:
e
.
row
.
info
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
info
.
title
)
+
"
\n
"
)]):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page4"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()],
2
):
"text"
===
t
.
type
?
i
(
"div"
,{
staticClass
:
"inner-emotion_editor"
},[
i
(
"div"
,{
staticClass
:
"inner-edit_area"
},[
i
(
"el-input"
,{
attrs
:{
type
:
"textarea"
,
autosize
:{
minRows
:
4
,
maxRows
:
8
},
placeholder
:
"请输入内容"
},
model
:{
value
:
t
.
content
,
callback
:
function
(
e
){
t
.
content
=
e
},
expression
:
"content"
}})],
1
),
t
.
_v
(
" "
),
i
(
"div"
,{
staticStyle
:{
float
:
"right"
}},[
i
(
"el-popover"
,{
attrs
:{
placement
:
"bottom-end"
,
width
:
"400"
,
offset
:
10
,
trigger
:
"hover"
},
model
:{
value
:
t
.
showEmotion
,
callback
:
function
(
e
){
t
.
showEmotion
=
e
},
expression
:
"showEmotion"
}},[
i
(
"div"
,[
i
(
"emotion"
,{
attrs
:{
height
:
200
},
on
:{
emotion
:
t
.
handleEmotion
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
slot
:
"reference"
,
type
:
"text"
},
on
:{
click
:
function
(
e
){
t
.
showEmotion
=!
t
.
showEmotion
}},
slot
:
"reference"
},[
i
(
"span"
,{
staticClass
:
"icon_emotion emotion_switch"
})])],
1
),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"el-button"
,{
attrs
:{
type
:
"warning"
,
plain
:
""
},
on
:{
click
:
t
.
addTeacherName
}},[
t
.
_v
(
"添加老师名字"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
dialogObj
&&
"mini_auto_reply"
!==
t
.
dialogObj
.
key
?
i
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
addTeacherAlias
}},[
t
.
_v
(
"添加老师别名"
)]):
t
.
_e
()],
1
)]):
"news-item"
===
t
.
type
||
"link"
===
t
.
type
?
i
(
"div"
,{
staticClass
:
"inner-emotion_editor"
},[
i
(
"el-form"
,{
ref
:
"ruleForm"
,
staticClass
:
"demo-ruleForm"
,
attrs
:{
model
:
t
.
newsItemForm
,
rules
:
t
.
rules
,
"label-width"
:
"100px"
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"图文标题"
,
prop
:
"title"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
newsItemForm
.
title
,
callback
:
function
(
e
){
t
.
$set
(
t
.
newsItemForm
,
"title"
,
e
)},
expression
:
"newsItemForm.title"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"图文描述"
,
prop
:
"description"
}},[
i
(
"el-input"
,{
attrs
:{
type
:
"textarea"
},
model
:{
value
:
t
.
newsItemForm
.
description
,
callback
:
function
(
e
){
t
.
$set
(
t
.
newsItemForm
,
"description"
,
e
)},
expression
:
"newsItemForm.description"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"图文图片"
}},[
i
(
"el-upload"
,{
class
:{
disabled
:
!
t
.
newsItemUploadShow
},
attrs
:{
action
:
"/api/public/upload/zone"
,
"http-request"
:
t
.
uploadNewsItemFile
,
"before-upload"
:
t
.
beforeNewsItemAvatarUpload
,
"list-type"
:
"picture-card"
,
"file-list"
:
t
.
newsItemImageList
,
"on-success"
:
t
.
handleNewsItemAvatarSuccess
,
"on-remove"
:
t
.
handleNewsItemRemove
,
limit
:
1
}},[
i
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"图文链接"
,
prop
:
"url"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
newsItemForm
.
url
,
callback
:
function
(
e
){
t
.
$set
(
t
.
newsItemForm
,
"url"
,
e
)},
expression
:
"newsItemForm.url"
}})],
1
)],
1
)],
1
):
t
.
_e
()]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"tool_bar"
},[
i
(
"el-button"
,{
on
:{
click
:
t
.
close
}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
staticClass
:
"weui-desktop-btn weui-desktop-btn_primary"
,
on
:{
click
:
t
.
save
}},[
t
.
_v
(
"保存"
)])],
1
)])])])])},
staticRenderFns
:[]};
var
r
=
i
(
"VU/8"
)(
o
,
l
,
!
1
,
function
(
t
){
i
(
"TXEy"
),
i
(
"Bsk5"
)},
"data-v-71a637a1"
,
null
).
exports
,
c
=
{
name
:
"focusReply"
,
data
:
function
(){
return
{
loading
:
!
1
,
total
:
0
,
nowPage
:
1
,
limit
:
10
,
activeName
:
"focus_reply_new"
,
id
:
null
,
list
:[],
form
:{
key
:
"focus_reply_new"
,
value
:
"focus_reply_new"
,
desc
:
""
},
content
:
""
,
imageContent
:
""
,
type
:
"text"
,
mediaList
:[],
showMedia
:
!
1
,
rules
:{
value
:[{
required
:
!
0
,
message
:
"请输入规则名称"
,
trigger
:
"change"
}],
desc
:[{
required
:
!
0
,
message
:
"请输入回复内容"
,
trigger
:
"change"
}],
qr
:[{
required
:
!
0
,
message
:
"请输入二维码"
,
trigger
:
"change"
}]},
dialogObj
:{
show
:
!
1
,
id
:
""
,
index
:
-
1
,
list
:[]}}},
components
:{
page
:
a
.
a
,
dialogCom
:
r
},
mounted
:
function
(){
this
.
getList
()},
filters
:{
typeFilter
:
function
(
t
){
return
t
?
"text"
===
t
?
"文字"
:
"image"
===
t
?
"图片"
:
"news"
===
t
?
"图文"
:
"video"
===
t
?
"视频"
:
"voice"
===
t
?
"语音"
:
"news-item"
===
t
?
"图文链接"
:
"link"
===
t
?
"链接"
:
val
:
""
},
contentFilter
:
function
(
t
){
return
"text"
===
t
.
type
?
t
.
content
:
"image"
===
t
.
type
?
"<img src='"
+
t
.
content
+
"'>"
:
void
0
}},
methods
:{
emotion
:
function
(
t
){
var
e
=
t
.
replace
(
/
\/
/gi
,
""
);
return
'<img src="https://res.wx.qq.com/mpres/htmledition/images/icon/emotion/'
+
[
"微笑"
,
"撇嘴"
,
"色"
,
"发呆"
,
"得意"
,
"流泪"
,
"害羞"
,
"闭嘴"
,
"睡"
,
"大哭"
,
"尴尬"
,
"发怒"
,
"调皮"
,
"呲牙"
,
"惊讶"
,
"难过"
,
"酷"
,
"冷汗"
,
"抓狂"
,
"吐"
,
"偷笑"
,
"可爱"
,
"白眼"
,
"傲慢"
,
"饥饿"
,
"困"
,
"惊恐"
,
"流汗"
,
"憨笑"
,
"大兵"
,
"奋斗"
,
"咒骂"
,
"疑问"
,
"嘘"
,
"晕"
,
"折磨"
,
"衰"
,
"骷髅"
,
"敲打"
,
"再见"
,
"擦汗"
,
"抠鼻"
,
"鼓掌"
,
"糗大了"
,
"坏笑"
,
"左哼哼"
,
"右哼哼"
,
"哈欠"
,
"鄙视"
,
"委屈"
,
"快哭了"
,
"阴险"
,
"亲亲"
,
"吓"
,
"可怜"
,
"菜刀"
,
"西瓜"
,
"啤酒"
,
"篮球"
,
"乒乓"
,
"咖啡"
,
"饭"
,
"猪头"
,
"玫瑰"
,
"凋谢"
,
"示爱"
,
"爱心"
,
"心碎"
,
"蛋糕"
,
"闪电"
,
"炸弹"
,
"刀"
,
"足球"
,
"瓢虫"
,
"便便"
,
"月亮"
,
"太阳"
,
"礼物"
,
"拥抱"
,
"强"
,
"弱"
,
"握手"
,
"胜利"
,
"抱拳"
,
"勾引"
,
"拳头"
,
"差劲"
,
"爱你"
,
"NO"
,
"OK"
,
"爱情"
,
"飞吻"
,
"跳跳"
,
"发抖"
,
"怄火"
,
"转圈"
,
"磕头"
,
"回头"
,
"跳绳"
,
"挥手"
,
"激动"
,
"街舞"
,
"献吻"
,
"左太极"
,
"右太极"
].
indexOf
(
e
)
+
'.gif" align="middle">'
},
handleClick
:
function
(
t
){
this
.
form
=
{
key
:
t
.
name
,
value
:
t
.
name
,
desc
:
""
},
this
.
nowPage
=
1
,
this
.
getList
(),
this
.
id
=
""
},
save
:
function
(){
var
t
=
this
,
e
=
this
.
form
,
i
=
[];
if
(
"text"
===
this
.
type
){
if
(
!
this
.
content
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请输入文本内容"
});
i
[
0
]
=
{
type
:
this
.
type
,
content
:
this
.
content
}}
else
if
(
"image"
===
this
.
type
){
if
(
!
this
.
imageContent
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择图片"
});
i
[
0
]
=
this
.
imageContent
}
e
.
desc
=
JSON
.
stringify
(
i
),
this
.
id
?
Object
(
s
.
_129
)(
this
.
id
,
e
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
})}):
Object
(
s
.
_108
)(
e
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"保存成功!"
})})},
onChooseMedia
:
function
(
t
){
this
.
addContent
(
this
.
type
,
t
.
url
,
t
.
media_id
),
this
.
showMedia
=!
1
},
addContent
:
function
(
t
,
e
,
i
){
var
s
=
{};
e
&&
(
s
=
{
type
:
t
,
content
:
e
}),
i
&&
(
s
.
media_id
=
i
),
this
.
imageContent
=
s
},
getList
:
function
(){
var
t
=
this
;
Object
(
s
.
_38
)({
key
:
this
.
form
.
key
}).
then
(
function
(
e
){
if
(
e
.
list
.
length
>
0
){
t
.
id
=
e
.
list
[
0
].
id
;
var
i
=
JSON
.
parse
(
e
.
list
[
0
].
desc
);
t
.
list
=
i
||
[]}
else
t
.
list
=
[]})},
add
:
function
(){
this
.
dialogObj
=
{
show
:
!
0
,
id
:
this
.
id
?
this
.
id
:
null
,
index
:
-
1
,
list
:
this
.
list
,
key
:
this
.
form
.
key
,
value
:
this
.
form
.
value
}},
editRow
:
function
(
t
,
e
){
this
.
dialogObj
=
{
show
:
!
0
,
id
:
this
.
id
,
index
:
t
,
list
:
this
.
list
,
key
:
this
.
form
.
key
,
value
:
this
.
form
.
value
}},
deleteRow
:
function
(
t
,
e
){
var
i
=
this
;
this
.
$confirm
(
"此操作将删除该文件, 是否继续?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
var
a
=
e
;
a
.
splice
(
t
,
1
);
var
n
=
{
key
:
i
.
form
.
key
,
value
:
i
.
form
.
value
};
n
.
desc
=
JSON
.
stringify
(
a
),
Object
(
s
.
_129
)(
i
.
id
,
n
).
then
(
function
(
t
){
i
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
}),
i
.
getList
()})}).
catch
(
function
(){
i
.
$message
({
type
:
"success"
,
message
:
"已取消删除!"
})})},
moveRow
:
function
(
t
,
e
){
var
i
=
this
,
a
=
this
.
list
[
t
],
n
=
this
.
list
[
e
];
this
.
list
[
t
]
=
n
,
this
.
list
[
e
]
=
a
;
var
o
=
this
.
list
,
l
=
{
key
:
this
.
form
.
key
,
value
:
this
.
form
.
value
};
l
.
desc
=
JSON
.
stringify
(
o
),
Object
(
s
.
_129
)(
this
.
id
,
l
).
then
(
function
(
t
){
i
.
$message
({
type
:
"success"
,
message
:
"保存成功!"
}),
i
.
getList
()})},
changeShow
:
function
(
t
){
this
.
dialogObj
.
show
=
t
}}},
d
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"div"
,{
staticClass
:
"focus-reply"
},[
i
(
"div"
,{
staticClass
:
"clear-both top"
},[
i
(
"span"
,{
staticClass
:
"title"
},[
t
.
_v
(
"自动回复"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
staticStyle
:{
float
:
"right"
},
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
add
}},[
t
.
_v
(
"添加回复"
)])],
1
),
t
.
_v
(
" "
),
i
(
"el-tabs"
,{
attrs
:{
type
:
"card"
},
on
:{
"tab-click"
:
t
.
handleClick
},
model
:{
value
:
t
.
activeName
,
callback
:
function
(
e
){
t
.
activeName
=
e
},
expression
:
"activeName"
}},[
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"新用户关注"
,
name
:
"focus_reply_new"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"无课用户关注"
,
name
:
"focus_reply_no_course"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"有课用户关注"
,
name
:
"focus_reply_course"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"有订单无课用户关注"
,
name
:
"order_no_course_reply"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"自动回复"
,
name
:
"auto_reply"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"30-60分钟无课用户自动回复"
,
name
:
"half_hour_no_course_reply"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"小程序自动回复"
,
name
:
"mini_auto_reply"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
list
,
"max-height"
:
"800"
}},[
i
(
"el-table-column"
,{
attrs
:{
fixed
:
""
,
label
:
"类型"
,
width
:
"150"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
_f
(
"typeFilter"
)(
e
.
row
.
type
))
+
"
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"内容"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
"text"
===
e
.
row
.
type
?
i
(
"div"
,{
domProps
:{
innerHTML
:
t
.
_s
(
e
.
row
.
content
.
replace
(
/
\/[\u
4E00-
\u
9FA5
]{1,3}
/gi
,
t
.
emotion
))}}):
"image"
===
e
.
row
.
type
&&
e
.
row
.
content
?
i
(
"a"
,{
attrs
:{
href
:
e
.
row
.
content
,
target
:
"_blank"
}},[
i
(
"img"
,{
staticClass
:
"shotcut"
,
attrs
:{
src
:
e
.
row
.
content
}})]):
"image"
===
e
.
row
.
type
&&
e
.
row
.
variable
?
i
(
"div"
,[
t
.
_v
(
"
\n
老师二维码
\n
"
)]):
"video"
===
e
.
row
.
type
?
i
(
"div"
,[
i
(
"a"
,{
attrs
:{
href
:
e
.
row
.
content
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
t
.
_s
(
e
.
row
.
content
.
title
))])]):
"voice"
===
e
.
row
.
type
?
i
(
"div"
,[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
content
.
name
)
+
"
\n
"
)]):
"news"
===
e
.
row
.
type
?
i
(
"div"
,[
i
(
"div"
,{
staticClass
:
"news-media"
},
t
.
_l
(
e
.
row
.
content
.
news_item
,
function
(
s
,
a
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
e
.
row
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
s
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
e
.
row
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
a
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
s
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])}))]):
"news-item"
===
e
.
row
.
type
?
i
(
"div"
,[
i
(
"div"
,{
staticClass
:
"news-media"
},[
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
i
(
"a"
,{
staticStyle
:{
"text-decoration"
:
"none"
},
attrs
:{
href
:
e
.
row
.
url
,
target
:
"_blank"
}},[
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
src
:
e
.
row
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
e
.
row
.
title
))]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
e
.
row
.
description
))])])])])])]):
"link"
===
e
.
row
.
type
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
,
width
:
"150px"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},[
i
(
"a"
,{
staticStyle
:{
position
:
"relative"
,
color
:
"#333"
,
"text-decoration"
:
"none"
},
attrs
:{
href
:
e
.
row
.
url
,
target
:
"_blank"
}},[
i
(
"div"
,{
staticClass
:
"ellip"
,
staticStyle
:{
margin
:
"3px"
,
"line-height"
:
"2"
}},[
t
.
_v
(
t
.
_s
(
e
.
row
.
title
))]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"f-bt"
,
staticStyle
:{
position
:
"relative"
,
"margin-left"
:
"3px"
}},[
i
(
"div"
,{
staticStyle
:{
color
:
"#666"
,
width
:
"63%"
,
"word-break"
:
"break-all"
,
"word-wrap"
:
"break-word"
,
"line-height"
:
"1"
}},[
t
.
_v
(
t
.
_s
(
e
.
row
.
description
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"35%"
,
height
:
"auto"
},
attrs
:{
src
:
e
.
row
.
thumb_url
}})])])])],
1
):
t
.
_e
()]}}])}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-table-column"
,{
attrs
:{
fixed
:
"right"
,
label
:
"操作"
,
width
:
"240"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-button"
,{
attrs
:{
type
:
"button"
,
size
:
"small"
},
nativeOn
:{
click
:
function
(
i
){
i
.
preventDefault
(),
t
.
editRow
(
e
.
$index
,
t
.
list
)}}},[
t
.
_v
(
"
\n
编辑
\n
"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
?
i
(
"el-button"
,{
attrs
:{
type
:
"button"
,
size
:
"small"
},
nativeOn
:{
click
:
function
(
i
){
i
.
preventDefault
(),
t
.
deleteRow
(
e
.
$index
,
t
.
list
)}}},[
t
.
_v
(
"
\n
移除
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
0
!==
e
.
$index
?
i
(
"el-button"
,{
attrs
:{
type
:
"button"
,
size
:
"small"
},
nativeOn
:{
click
:
function
(
i
){
i
.
preventDefault
(),
t
.
moveRow
(
e
.
$index
-
1
,
e
.
$index
)}}},[
t
.
_v
(
"
\n
上移
\n
"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
$index
!==
t
.
list
.
length
-
1
?
i
(
"el-button"
,{
attrs
:{
type
:
"button"
,
size
:
"small"
},
nativeOn
:{
click
:
function
(
i
){
i
.
preventDefault
(),
t
.
moveRow
(
e
.
$index
,
e
.
$index
+
1
)}}},[
t
.
_v
(
"
\n
下移
\n
"
)]):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
t
.
dialogObj
.
show
?
i
(
"dialog-com"
,{
attrs
:{
dialogObj
:
t
.
dialogObj
},
on
:{
changeShow
:
t
.
changeShow
,
reflash
:
t
.
getList
}}):
t
.
_e
()],
1
)},
staticRenderFns
:[]};
var
h
=
i
(
"VU/8"
)(
c
,
d
,
!
1
,
function
(
t
){
i
(
"jhf6"
)},
"data-v-92102bfe"
,
null
);
e
.
default
=
h
.
exports
},
TXEy
:
function
(
t
,
e
){},
jhf6
:
function
(
t
,
e
){}});
\ No newline at end of file
dist/static/js/20.b8a041ddbb63084e4df4.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
20
],{
"65NY"
:
function
(
t
,
e
,
i
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
s
=
i
(
"CCn6"
),
n
=
i
(
"kmJW"
),
a
=
i
(
"C+jy"
),
o
=
{
name
:
"dialogObj"
,
props
:[
"dialogObj"
],
data
:
function
(){
return
{
editIndex
:
-
1
,
title
:
""
,
show
:
!
1
,
showEmotion
:
!
1
,
id
:
""
,
loading
:
!
0
,
showType
:
!
1
,
showTextContent
:
!
1
,
total
:
0
,
nowPage
:
1
,
limit
:
5
,
type
:
"text"
,
form
:{
key
:
"keywords_reply"
,
value
:
""
,
desc
:
""
},
teacher_id
:
""
,
start_at
:
""
,
textContent
:
""
,
mediaList
:[],
showMedia
:
!
1
,
teacherList
:[],
content
:
""
,
imageContent
:{
url
:
""
,
media_id
:
""
},
linkContent
:{
title
:
""
,
description
:
""
,
url
:
""
,
thumb_url
:
""
},
voiceContent
:
""
,
videoContent
:
""
,
newsContent
:
""
,
pickerOptions1
:{
disabledDate
:
function
(
t
){
return
!
(
t
.
getTime
()
>
Date
.
now
())}},
rules
:{
value
:[{
required
:
!
0
,
message
:
"请输入规则名称"
,
trigger
:
"change"
}],
desc
:[{
required
:
!
0
,
message
:
"请输入回复内容"
,
trigger
:
"change"
}],
qr
:[{
required
:
!
0
,
message
:
"请输入二维码"
,
trigger
:
"change"
}]},
imageList
:[],
imageLinkList
:[],
uploadShow
:
!
0
,
uploadLinkShow
:
!
0
}},
components
:{
page
:
n
.
a
,
emotion
:
a
.
a
},
methods
:{
getTeacher
:
function
(){
var
t
=
this
;
Object
(
s
.
_81
)({
page
:
1
,
limit
:
1
e3
}).
then
(
function
(
e
){
t
.
teacherList
=
e
.
list
})},
save
:
function
(){
var
t
=
this
,
e
=
{
key
:
this
.
form
.
key
,
value
:
this
.
form
.
value
,
desc
:
this
.
form
.
desc
};
this
.
dialogObj
.
id
?
this
.
$refs
.
form
.
validate
(
function
(
i
){
i
&&
Object
(
s
.
_129
)(
t
.
id
,
e
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
t
.
$emit
(
"reflash"
),
t
.
show
=!
1
})}):
this
.
$refs
.
form
.
validate
(
function
(
i
){
i
&&
Object
(
s
.
_108
)(
e
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"新增成功!"
}),
t
.
$emit
(
"reflash"
),
t
.
show
=!
1
})})},
addContent
:
function
(
t
,
e
,
i
,
s
){
var
n
=
this
.
form
,
a
=
n
.
desc
?
JSON
.
parse
(
n
.
desc
):[],
o
=
{
type
:
t
};
console
.
log
(
e
),
e
&&
(
o
.
content
=
e
),
i
&&
(
o
.
media_id
=
i
),
s
&&
(
o
.
variable
=
s
),
this
.
editIndex
>-
1
?
a
.
splice
(
this
.
editIndex
,
1
,
o
):
a
.
push
(
o
),
n
.
desc
=
JSON
.
stringify
(
a
),
this
.
form
=
n
,
this
.
showType
=!
1
},
addLinkContent
:
function
(
t
,
e
,
i
,
s
,
n
){
var
a
=
this
.
form
,
o
=
a
.
desc
?
JSON
.
parse
(
a
.
desc
):[],
l
=
{
type
:
t
,
title
:
e
,
description
:
i
,
url
:
s
,
thumb_url
:
n
};
this
.
editIndex
>-
1
?
o
.
splice
(
this
.
editIndex
,
1
,
l
):
o
.
push
(
l
),
a
.
desc
=
JSON
.
stringify
(
o
),
this
.
form
=
a
,
this
.
showType
=!
1
},
initDialog
:
function
(){
this
.
show
=
this
.
dialogObj
.
show
,
this
.
dialogObj
.
id
&&
(
this
.
id
=
this
.
dialogObj
.
id
),
this
.
form
.
value
=
this
.
dialogObj
.
value
,
this
.
form
.
desc
=
this
.
dialogObj
.
desc
,
this
.
dialogObj
.
key
&&
(
this
.
form
.
key
=
this
.
dialogObj
.
key
),
this
.
loading
=!
1
,
this
.
showType
=!
1
},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getMediaList
(
this
.
type
)},
onSizeChange
:
function
(
t
){
this
.
nowPage
=
1
,
this
.
limit
=
t
,
this
.
getMediaList
(
this
.
type
)},
onChangeTab
:
function
(
t
){
this
.
type
=
t
},
onAddContent
:
function
(){
this
.
editIndex
=-
1
,
this
.
title
=
"添加回复"
,
this
.
content
=
""
,
this
.
voiceContent
=
""
,
this
.
videoContent
=
""
,
this
.
type
=
"text"
,
this
.
imageContent
=
{
url
:
""
,
media_id
:
""
,
variable
:
""
},
this
.
linkContent
=
{
title
:
""
,
description
:
""
,
url
:
""
,
thumb_url
:
""
},
this
.
imageList
=
[],
this
.
imageLinkList
=
[],
this
.
teacher_id
=
""
,
this
.
start_at
=
""
,
this
.
showType
=!
0
,
this
.
uploadShow
=!
0
,
this
.
uploadLinkShow
=!
0
},
onEditText
:
function
(
t
,
e
){
this
.
title
=
"编辑回复"
,
this
.
type
=
t
.
type
,
this
.
editIndex
=
e
,
"text"
===
this
.
type
?
this
.
content
=
t
.
content
:
"link"
===
this
.
type
||
"news-item"
===
this
.
type
?(
this
.
linkContent
=
{
url
:
t
.
url
,
title
:
t
.
title
,
description
:
t
.
description
,
thumb_url
:
t
.
thumb_url
},
this
.
imageLinkList
=
[{
name
:
"mini"
,
url
:
t
.
thumb_url
}],
this
.
uploadLinkShow
=!
1
):(
t
.
content
&&
(
this
.
imageContent
=
{
url
:
t
.
content
,
media_id
:
t
.
media_id
}),
t
.
variable
&&
(
this
.
imageContent
=
{
variable
:
t
.
variable
}),
"image"
===
this
.
type
&&
"mini_keywords_reply"
===
this
.
form
.
key
&&
(
this
.
imageList
=
[{
name
:
"mini"
,
url
:
t
.
content
}],
this
.
uploadShow
=!
1
)),
this
.
showType
=!
0
},
close
:
function
(){
this
.
content
=
""
,
this
.
imageContent
=
{
url
:
""
,
media_id
:
""
},
this
.
teacher_id
=
""
,
this
.
start_at
=
""
,
this
.
linkContent
=
{
url
:
""
,
title
:
""
,
description
:
""
,
thumb_url
:
""
},
this
.
showType
=!
1
},
confirm
:
function
(){
if
(
"text"
===
this
.
type
)
this
.
content
?
this
.
addContent
(
"text"
,
this
.
content
,
""
,
""
):
this
.
$message
({
showClose
:
!
0
,
message
:
"请输入文本内容"
});
else
if
(
"image"
===
this
.
type
)
if
(
this
.
imageContent
.
url
||
this
.
imageContent
.
variable
){
var
t
=
this
.
imageContent
.
variable
?
this
.
imageContent
.
variable
:
""
,
e
=
this
.
imageContent
.
url
?
this
.
imageContent
.
url
:
""
,
i
=
this
.
imageContent
.
media_id
?
this
.
imageContent
.
media_id
:
""
;
this
.
addContent
(
this
.
type
,
e
,
i
,
t
)}
else
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择图片"
});
else
if
(
"link"
===
this
.
type
||
"news-item"
===
this
.
type
){
if
(
!
this
.
linkContent
.
title
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请输入标题"
});
if
(
!
this
.
linkContent
.
description
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请输入描述"
});
if
(
!
this
.
linkContent
.
url
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请输入跳转链接"
});
if
(
!
this
.
linkContent
.
thumb_url
)
return
void
this
.
$message
({
showClose
:
!
0
,
message
:
"请上传缩略图"
});
this
.
addLinkContent
(
this
.
type
,
this
.
linkContent
.
title
,
this
.
linkContent
.
description
,
this
.
linkContent
.
url
,
this
.
linkContent
.
thumb_url
)}
else
if
(
"news"
===
this
.
type
)
if
(
this
.
newsContent
){
var
s
=
this
.
newsContent
.
content
?
this
.
newsContent
.
content
:
""
,
n
=
this
.
newsContent
.
media_id
?
this
.
newsContent
.
media_id
:
""
;
this
.
addContent
(
this
.
type
,
s
,
n
,
""
)}
else
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择图文"
});
else
if
(
"video"
===
this
.
type
)
if
(
this
.
videoContent
){
var
a
=
this
.
videoContent
.
info
?
this
.
videoContent
.
info
:
""
,
o
=
this
.
videoContent
.
media_id
?
this
.
videoContent
.
media_id
:
""
;
this
.
addContent
(
this
.
type
,
a
,
o
,
""
)}
else
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择视频"
});
else
if
(
"voice"
===
this
.
type
)
if
(
this
.
voiceContent
){
var
l
=
this
.
voiceContent
?
this
.
voiceContent
:
""
,
r
=
this
.
voiceContent
.
media_id
?
this
.
voiceContent
.
media_id
:
""
;
this
.
addContent
(
this
.
type
,
l
,
r
,
""
)}
else
this
.
$message
({
showClose
:
!
0
,
message
:
"请选择音频"
})},
getMediaList
:
function
(
t
){
var
e
=
this
,
i
=
{
type
:
t
,
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
loading
=!
0
,
this
.
showMedia
=!
0
,
Object
(
s
.
_52
)(
i
).
then
(
function
(
i
){
e
.
loading
=!
1
,
e
.
type
=
t
,
e
.
mediaList
=
i
.
item
,
e
.
total
=
i
.
total_count
,
0
===
e
.
total
&&
e
.
$message
({
showClose
:
!
0
,
message
:
"暂无数据"
})}).
catch
(
function
(){
e
.
loading
=!
1
})},
editContent
:
function
(){
var
t
=
this
;
this
.
$prompt
(
"请输入文本"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
}).
then
(
function
(
e
){
var
i
=
e
.
value
;
t
.
addContent
(
"text"
,
i
,
""
,
""
)})},
onDelText
:
function
(
t
,
e
){
var
i
=
this
,
s
=
this
.
form
;
this
.
$confirm
(
"此操作将删除该文件, 是否继续?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
var
t
=
JSON
.
parse
(
s
.
desc
);
t
.
splice
(
e
,
1
),
s
.
desc
=
JSON
.
stringify
(
t
),
i
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})}).
catch
(
function
(){
i
.
$message
({
type
:
"info"
,
message
:
"已取消删除"
})}),
this
.
form
=
s
},
onChooseMedia
:
function
(
t
){
"image"
===
this
.
type
?
this
.
imageContent
=
t
:
"video"
===
this
.
type
?
this
.
videoContent
=
t
:
"voice"
===
this
.
type
?
this
.
voiceContent
=
t
:
"news"
===
this
.
type
&&
(
this
.
newsContent
=
t
),
this
.
showMedia
=!
1
},
addTeacherQrcode
:
function
(){
this
.
showMedia
=!
1
,
this
.
imageContent
=
{
variable
:
"my_teacher"
}},
handleEmotion
:
function
(
t
){
this
.
content
+=
t
},
addTeacherName
:
function
(){
this
.
content
+=
"{my_teacher_name}"
},
addTeacherAlias
:
function
(){
this
.
content
+=
"{my_teacher_alias}"
},
handleAvatarSuccess
:
function
(
t
){
"link"
===
this
.
type
||
"news-item"
===
this
.
type
?
this
.
imageLinkList
=
[{
name
:
t
.
data
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
data
.
url
}]:
this
.
imageList
=
[{
name
:
t
.
data
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
data
.
url
}]},
beforeAvatarUpload
:
function
(){
"link"
===
this
.
type
||
"news-item"
===
this
.
type
?
this
.
uploadLinkShow
=!
1
:
this
.
uploadShow
=!
1
},
uploadFile
:
function
(
t
){
var
e
=
this
;
this
.
loading
=!
0
,
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
t
.
file
.
uid
}),
"link"
===
this
.
type
||
"news-item"
===
this
.
type
?
Object
(
s
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
e
.
imageLinkList
=
[{
name
:
t
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
}],
e
.
loading
=!
1
,
e
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
e
.
linkContent
.
thumb_url
=
"https://cdn.singsingenglish.com/"
+
t
.
url
}).
catch
(
function
(){
e
.
loading
=!
1
}):
Object
(
s
.
_142
)({
file
:
t
.
file
,
type
:
"mini"
}).
then
(
function
(
i
){
e
.
uploadFileToQiniu
(
t
,
i
),
e
.
loading
=!
1
}).
catch
(
function
(){
e
.
loading
=!
1
})},
uploadFileToQiniu
:
function
(
t
,
e
){
var
i
=
this
;
this
.
loading
=!
0
,
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
t
.
file
.
uid
}),
Object
(
s
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
i
.
imageList
=
[{
name
:
t
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
}],
i
.
loading
=!
1
,
i
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
i
.
imageContent
=
{
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
,
media_id
:
e
.
media_id
,
name
:
t
.
url
}}).
catch
(
function
(){
i
.
loading
=!
1
})},
handleRemove
:
function
(){
"link"
===
this
.
type
||
"news-item"
===
this
.
type
?
this
.
uploadLinkShow
=!
0
:
this
.
uploadShow
=!
0
}},
watch
:{
dialogObj
:{
handler
:
function
(){
this
.
loading
=!
0
,
this
.
initDialog
(),
this
.
getTeacher
()},
deep
:
!
0
},
show
:
function
(
t
){
this
.
$emit
(
"changeShow"
,
t
)}}},
l
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
t
.
show
?
i
(
"div"
,[
i
(
"el-dialog"
,{
attrs
:{
title
:
"自动回复"
,
center
:
""
,
"append-to-body"
:
""
,
visible
:
t
.
show
,
width
:
"50%"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
show
=
e
}}},[
i
(
"div"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
t
.
loading
,
expression
:
"loading"
}]},[
i
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
form
,
rules
:
t
.
rules
}},[
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
4
}},[
i
(
"label"
,[
t
.
_v
(
"关键词"
)])]),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
8
}},[
i
(
"el-form-item"
,{
attrs
:{
prop
:
"value"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
form
.
value
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"value"
,
e
)},
expression
:
"form.value"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-row"
,[
i
(
"el-col"
,{
attrs
:{
span
:
4
}},[
i
(
"label"
,[
t
.
_v
(
"回复内容"
)])]),
t
.
_v
(
" "
),
i
(
"el-col"
,{
attrs
:{
span
:
20
}},[
t
.
form
.
desc
?
t
.
_l
(
JSON
.
parse
(
t
.
form
.
desc
),
function
(
e
,
s
){
return
i
(
"div"
,{
staticClass
:
"msg-item"
},[
"text"
===
e
.
type
?
i
(
"span"
,{
staticClass
:
"msg-text"
},[
t
.
_v
(
t
.
_s
(
e
.
content
))]):
t
.
_e
(),
t
.
_v
(
" "
),
"voice"
===
e
.
type
?
i
(
"span"
,{
staticClass
:
"msg-text"
},[
i
(
"br"
),
t
.
_v
(
t
.
_s
(
e
.
content
.
name
))]):
"image"
===
e
.
type
&&
e
.
content
?
i
(
"img"
,{
attrs
:{
src
:
e
.
content
}}):
"image"
===
e
.
type
&&
e
.
variable
?
i
(
"span"
,{
staticClass
:
"msg-text"
},[
t
.
_v
(
"我的老师二维码"
)]):
"video"
===
e
.
type
?
i
(
"a"
,{
attrs
:{
href
:
e
.
content
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
t
.
_s
(
e
.
content
.
title
))]):
"news"
===
e
.
type
&&
e
.
content
&&
e
.
content
.
news_item
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},
t
.
_l
(
e
.
content
.
news_item
,
function
(
s
,
n
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
e
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
s
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
e
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
n
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
s
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])}))],
1
):
"link"
===
e
.
type
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},[
i
(
"a"
,{
staticStyle
:{
position
:
"relative"
,
color
:
"#333"
,
"text-decoration"
:
"none"
},
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
i
(
"div"
,{
staticClass
:
"ellip"
,
staticStyle
:{
margin
:
"3px"
,
"line-height"
:
"2"
}},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"f-bt"
,
staticStyle
:{
position
:
"relative"
}},[
i
(
"div"
,{
staticStyle
:{
color
:
"#666"
,
"margin-left"
:
"3px"
,
"word-wrap"
:
"break-word"
,
"word-break"
:
"break-all"
,
width
:
"60%"
}},[
t
.
_v
(
t
.
_s
(
e
.
description
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"35%"
,
height
:
"auto"
},
attrs
:{
src
:
e
.
thumb_url
}})])])])],
1
):
"news-item"
===
e
.
type
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},[
i
(
"a"
,{
staticStyle
:{
position
:
"relative"
,
color
:
"#333"
,
"text-decoration"
:
"none"
},
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
height
:
"auto"
},
attrs
:{
src
:
e
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"ellip"
,
staticStyle
:{
margin
:
"0"
,
"line-height"
:
"2"
}},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticStyle
:{
color
:
"#666"
,
"margin-left"
:
"0"
,
"word-wrap"
:
"break-word"
,
"word-break"
:
"break-all"
}},[
t
.
_v
(
t
.
_s
(
e
.
description
))])])])],
1
):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"i"
,{
staticClass
:
"el-icon-edit"
,
on
:{
click
:
function
(
i
){
t
.
onEditText
(
e
,
s
)}}}),
t
.
_v
(
" "
),
i
(
"i"
,{
staticClass
:
"el-icon-delete"
,
on
:{
click
:
function
(
i
){
t
.
onDelText
(
e
,
s
)}}})])}):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"msg_sender_wrp"
,
staticStyle
:{
width
:
"100%"
}},[
i
(
"div"
,[
i
(
"i"
,{
staticClass
:
"el-icon-circle-plus-outline"
,
on
:{
click
:
t
.
onAddContent
}})]),
t
.
_v
(
" "
),
i
(
"el-dialog"
,{
attrs
:{
width
:
"50%"
,
title
:
t
.
title
,
visible
:
t
.
showType
,
"close-on-click-modal"
:
!
1
,
"close-on-press-escape"
:
!
1
,
"show-close"
:
!
1
,
"append-to-body"
:
""
},
on
:{
"update:visible"
:
function
(
e
){
t
.
showType
=
e
}}},[
i
(
"div"
,[
t
.
showType
?
i
(
"el-tabs"
,{
attrs
:{
type
:
"card"
},
model
:{
value
:
t
.
type
,
callback
:
function
(
e
){
t
.
type
=
e
},
expression
:
"type"
}},[
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"文字"
,
name
:
"text"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"图片"
,
name
:
"image"
}}),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"图文消息"
,
name
:
"news"
}}):
t
.
_e
(),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"图文链接"
,
name
:
"news-item"
}}):
t
.
_e
(),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"语音"
,
name
:
"voice"
}}):
t
.
_e
(),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"视频"
,
name
:
"video"
}}):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"链接"
,
name
:
"link"
}})],
1
):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
showType
?
i
(
"div"
,{
staticClass
:
"more-info clear-both"
},[
"text"
===
t
.
type
?[
i
(
"el-input"
,{
attrs
:{
type
:
"textarea"
,
autosize
:{
minRows
:
4
,
maxRows
:
8
},
placeholder
:
"请输入内容"
},
model
:{
value
:
t
.
content
,
callback
:
function
(
e
){
t
.
content
=
e
},
expression
:
"content"
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticStyle
:{
float
:
"left"
}},[
i
(
"el-popover"
,{
attrs
:{
placement
:
"bottom-end"
,
width
:
"400"
,
offset
:
10
,
trigger
:
"hover"
},
model
:{
value
:
t
.
showEmotion
,
callback
:
function
(
e
){
t
.
showEmotion
=
e
},
expression
:
"showEmotion"
}},[
i
(
"div"
,[
i
(
"emotion"
,{
attrs
:{
height
:
200
},
on
:{
emotion
:
t
.
handleEmotion
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
slot
:
"reference"
,
type
:
"text"
},
on
:{
click
:
function
(
e
){
t
.
showEmotion
=!
t
.
showEmotion
}},
slot
:
"reference"
},[
i
(
"span"
,{
staticClass
:
"icon_emotion emotion_switch"
})])],
1
),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"el-button"
,{
staticStyle
:{
"margin-top"
:
"10px"
},
attrs
:{
type
:
"warning"
,
plain
:
""
},
on
:{
click
:
t
.
addTeacherName
}},[
t
.
_v
(
"添加老师名字"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"el-button"
,{
staticStyle
:{
"margin-top"
:
"10px"
},
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
addTeacherAlias
}},[
t
.
_v
(
"添加老师别名"
)]):
t
.
_e
()],
1
)]:
t
.
_e
(),
t
.
_v
(
" "
),
"image"
===
t
.
type
?[
t
.
imageContent
.
url
&&
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"div"
,{
staticClass
:
"img"
},[
i
(
"img"
,{
attrs
:{
src
:
t
.
imageContent
.
url
}}),
t
.
_v
(
" "
),
i
(
"i"
,{
staticClass
:
"el-icon-delete"
,
on
:{
click
:
function
(
e
){
t
.
imageContent
=
{
url
:
""
,
media_id
:
""
}}}})]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
imageContent
.
variable
&&
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"div"
,{
staticClass
:
"img my-teacher"
},[
i
(
"div"
,[
t
.
_v
(
"老师二维码"
)]),
t
.
_v
(
" "
),
i
(
"i"
,{
staticClass
:
"el-icon-delete"
,
on
:{
click
:
function
(
e
){
t
.
imageContent
=
{
url
:
""
,
media_id
:
""
,
variable
:
""
}}}})]):
t
.
_e
(),
t
.
_v
(
" "
),
"mini_keywords_reply"
!==
t
.
form
.
key
?
i
(
"div"
,{
staticClass
:
"display-b"
},[
i
(
"div"
,{
staticClass
:
"choose_item"
,
staticStyle
:{
color
:
"#888"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
"image"
)}}},[
t
.
_v
(
"+从素材库中选择"
)]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"choose_item"
,
staticStyle
:{
color
:
"#888"
},
on
:{
click
:
t
.
addTeacherQrcode
}},[
t
.
_v
(
"+添加老师二维码"
)])]):
t
.
_e
(),
t
.
_v
(
" "
),
"mini_keywords_reply"
===
t
.
form
.
key
?
i
(
"el-upload"
,{
class
:{
disabled
:
!
t
.
uploadShow
},
attrs
:{
action
:
"/api/public/upload/zone"
,
"http-request"
:
t
.
uploadFile
,
"before-upload"
:
t
.
beforeAvatarUpload
,
"list-type"
:
"picture-card"
,
"file-list"
:
t
.
imageList
,
"on-success"
:
t
.
handleAvatarSuccess
,
"on-remove"
:
t
.
handleRemove
,
limit
:
1
}},[
i
(
"i"
,{
staticClass
:
"el-icon-plus"
})]):
t
.
_e
(),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"media_id"
,
label
:
"mediaId"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
i
(
"a"
,{
attrs
:{
href
:
t
.
row
.
url
}},[
i
(
"img"
,{
staticStyle
:{
width
:
"60px"
},
attrs
:{
src
:
t
.
row
.
url
}})])]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()]:
t
.
_e
(),
t
.
_v
(
" "
),
"video"
===
t
.
type
?[
t
.
videoContent
&&
t
.
videoContent
.
info
&&
t
.
videoContent
.
info
.
down_url
?
i
(
"div"
,[
i
(
"a"
,{
attrs
:{
href
:
t
.
videoContent
.
info
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
t
.
_s
(
t
.
videoContent
.
info
.
title
))]),
t
.
_v
(
" "
),
i
(
"i"
,{
staticClass
:
"el-icon-delete"
,
on
:{
click
:
function
(
e
){
t
.
videoContent
=
""
}}})]):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
i
(
"div"
,{
staticClass
:
"choose_item"
,
staticStyle
:{
color
:
"#888"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
"video"
)}}},[
t
.
_v
(
"+从素材库中选择"
)])]),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"media_id"
,
label
:
"mediaId"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
info
&&
e
.
row
.
info
.
down_url
?
i
(
"a"
,{
attrs
:{
href
:
e
.
row
.
info
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
info
.
title
)
+
"
\n
"
)]):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()]:
t
.
_e
(),
t
.
_v
(
" "
),
"voice"
===
t
.
type
?[
t
.
voiceContent
?
i
(
"div"
,[
t
.
_v
(
"
\n
"
+
t
.
_s
(
t
.
voiceContent
.
name
)
+
"
\n
"
),
i
(
"i"
,{
staticClass
:
"el-icon-delete"
,
on
:{
click
:
function
(
e
){
t
.
voiceContent
=
""
}}})]):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
i
(
"div"
,{
staticClass
:
"choose_item"
,
staticStyle
:{
color
:
"#888"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
"voice"
)}}},[
t
.
_v
(
"+从素材库中选择"
)])]),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"media_id"
,
label
:
"mediaId"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
info
&&
e
.
row
.
info
.
down_url
?
i
(
"a"
,{
attrs
:{
href
:
e
.
row
.
info
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
info
.
title
)
+
"
\n
"
)]):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()]:
t
.
_e
(),
t
.
_v
(
" "
),
"news"
===
t
.
type
?[
t
.
newsContent
&&
t
.
newsContent
.
content
&&
t
.
newsContent
.
content
.
news_item
?
i
(
"div"
,[
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},
t
.
_l
(
t
.
newsContent
.
content
.
news_item
,
function
(
e
,
s
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
t
.
newsContent
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
e
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
e
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
newsContent
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
s
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
e
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
e
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
e
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])}))],
1
),
t
.
_v
(
" "
),
i
(
"i"
,{
staticClass
:
"el-icon-delete"
,
staticStyle
:{
display
:
"inline-block"
},
on
:{
click
:
function
(
e
){
t
.
newsContent
=
""
}}})]):
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"display-b"
},[
i
(
"div"
,{
staticClass
:
"choose_item"
,
staticStyle
:{
color
:
"#888"
},
on
:{
click
:
function
(
e
){
t
.
getMediaList
(
"news"
)}}},[
t
.
_v
(
"+从素材库中选择"
)])]),
t
.
_v
(
" "
),
t
.
showMedia
&&
t
.
mediaList
.
length
>
0
?
i
(
"div"
,[
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
mediaList
},
on
:{
"row-click"
:
t
.
onChooseMedia
}},[
i
(
"el-table-column"
,{
attrs
:{
prop
:
"media_id"
,
label
:
"mediaId"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"URL"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
e
.
row
.
content
&&
e
.
row
.
content
.
news_item
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
,
width
:
"200px"
}},
t
.
_l
(
e
.
row
.
content
.
news_item
,
function
(
s
,
n
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
e
.
row
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
s
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
e
.
row
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
n
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
s
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])})):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
},
model
:{
value
:
t
.
nowPage
,
callback
:
function
(
e
){
t
.
nowPage
=
e
},
expression
:
"nowPage"
}})],
1
):
t
.
_e
()]:
t
.
_e
(),
t
.
_v
(
" "
),
"link"
===
t
.
type
||
"news-item"
===
t
.
type
?[
i
(
"el-form-item"
,{
attrs
:{
label
:
"标题"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
linkContent
.
title
,
callback
:
function
(
e
){
t
.
$set
(
t
.
linkContent
,
"title"
,
e
)},
expression
:
"linkContent.title"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"描述"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
linkContent
.
description
,
callback
:
function
(
e
){
t
.
$set
(
t
.
linkContent
,
"description"
,
e
)},
expression
:
"linkContent.description"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"跳转链接"
}},[
i
(
"el-input"
,{
model
:{
value
:
t
.
linkContent
.
url
,
callback
:
function
(
e
){
t
.
$set
(
t
.
linkContent
,
"url"
,
e
)},
expression
:
"linkContent.url"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-form-item"
,{
attrs
:{
label
:
"缩略图"
}},[
i
(
"el-upload"
,{
class
:{
disabled
:
!
t
.
uploadLinkShow
},
attrs
:{
action
:
"/api/public/upload/zone"
,
"http-request"
:
t
.
uploadFile
,
"before-upload"
:
t
.
beforeAvatarUpload
,
"list-type"
:
"picture-card"
,
"file-list"
:
t
.
imageLinkList
,
"on-success"
:
t
.
handleAvatarSuccess
,
"on-remove"
:
t
.
handleRemove
,
limit
:
1
}},[
i
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
)]:
t
.
_e
(),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"tool_bar"
},[
i
(
"el-button"
,{
on
:{
click
:
t
.
close
}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
staticClass
:
"weui-desktop-btn weui-desktop-btn_primary el-button--primary"
,
on
:{
click
:
t
.
confirm
}},[
t
.
_v
(
"确定"
)])],
1
)],
2
):
t
.
_e
()],
1
)])],
1
)],
2
)],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
i
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
show
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
i
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
save
}},[
t
.
_v
(
"保 存"
)])],
1
)],
1
)])],
1
):
t
.
_e
()},
staticRenderFns
:[]};
var
r
=
{
name
:
"autoReply"
,
data
:
function
(){
return
{
total
:
0
,
nowPage
:
1
,
limit
:
10
,
dialogObj
:{
value
:
""
,
desc
:
""
,
show
:
!
1
,
id
:
""
},
activeName
:
"keywords_reply"
,
list
:[]}},
components
:{
dialogCom
:
i
(
"VU/8"
)(
o
,
l
,
!
1
,
function
(
t
){
i
(
"g7Je"
),
i
(
"yhv9"
)},
"data-v-7156fb53"
,
null
).
exports
,
page
:
n
.
a
},
mounted
:
function
(){
this
.
getList
()},
filters
:{
type
:
function
(
t
){
return
"text"
===
t
?
"文本"
:
"voice"
===
t
?
"语音"
:
"video"
===
t
?
"视频"
:
"image"
===
t
?
"图片"
:
"news"
===
t
?
"图文"
:
"link"
===
t
?
"链接"
:
"news-item"
===
t
?
"图文链接"
:
t
}},
methods
:{
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getList
()},
onSizeChange
:
function
(
t
){
this
.
nowPage
=
1
,
this
.
limit
=
t
,
this
.
getList
()},
emotion
:
function
(
t
){
var
e
=
t
.
replace
(
/
\/
/gi
,
""
);
return
'<img src="https://res.wx.qq.com/mpres/htmledition/images/icon/emotion/'
+
[
"微笑"
,
"撇嘴"
,
"色"
,
"发呆"
,
"得意"
,
"流泪"
,
"害羞"
,
"闭嘴"
,
"睡"
,
"大哭"
,
"尴尬"
,
"发怒"
,
"调皮"
,
"呲牙"
,
"惊讶"
,
"难过"
,
"酷"
,
"冷汗"
,
"抓狂"
,
"吐"
,
"偷笑"
,
"可爱"
,
"白眼"
,
"傲慢"
,
"饥饿"
,
"困"
,
"惊恐"
,
"流汗"
,
"憨笑"
,
"大兵"
,
"奋斗"
,
"咒骂"
,
"疑问"
,
"嘘"
,
"晕"
,
"折磨"
,
"衰"
,
"骷髅"
,
"敲打"
,
"再见"
,
"擦汗"
,
"抠鼻"
,
"鼓掌"
,
"糗大了"
,
"坏笑"
,
"左哼哼"
,
"右哼哼"
,
"哈欠"
,
"鄙视"
,
"委屈"
,
"快哭了"
,
"阴险"
,
"亲亲"
,
"吓"
,
"可怜"
,
"菜刀"
,
"西瓜"
,
"啤酒"
,
"篮球"
,
"乒乓"
,
"咖啡"
,
"饭"
,
"猪头"
,
"玫瑰"
,
"凋谢"
,
"示爱"
,
"爱心"
,
"心碎"
,
"蛋糕"
,
"闪电"
,
"炸弹"
,
"刀"
,
"足球"
,
"瓢虫"
,
"便便"
,
"月亮"
,
"太阳"
,
"礼物"
,
"拥抱"
,
"强"
,
"弱"
,
"握手"
,
"胜利"
,
"抱拳"
,
"勾引"
,
"拳头"
,
"差劲"
,
"爱你"
,
"NO"
,
"OK"
,
"爱情"
,
"飞吻"
,
"跳跳"
,
"发抖"
,
"怄火"
,
"转圈"
,
"磕头"
,
"回头"
,
"跳绳"
,
"挥手"
,
"激动"
,
"街舞"
,
"献吻"
,
"左太极"
,
"右太极"
].
indexOf
(
e
)
+
'.gif" align="middle">'
},
changeShow
:
function
(
t
){
this
.
dialogObj
.
show
=
t
},
getList
:
function
(){
var
t
=
this
,
e
=
{
key
:
this
.
activeName
,
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
Object
(
s
.
_38
)(
e
).
then
(
function
(
e
){
for
(
var
i
=
0
;
i
<
e
.
list
.
length
;
i
++
)
e
.
list
[
i
].
desc
&&
(
e
.
list
[
i
].
desc
=
JSON
.
parse
(
e
.
list
[
i
].
desc
));
t
.
list
=
e
.
list
,
t
.
total
=
e
.
total
})},
add
:
function
(){
this
.
dialogObj
.
id
=
""
,
this
.
dialogObj
.
value
=
""
,
this
.
dialogObj
.
desc
=
""
,
this
.
dialogObj
.
key
=
this
.
activeName
,
this
.
dialogObj
.
show
=!
0
},
edit
:
function
(
t
){
var
e
=
this
;
Object
(
s
.
_37
)(
t
.
id
).
then
(
function
(
t
){
e
.
dialogObj
.
id
=
t
.
id
,
e
.
dialogObj
.
value
=
t
.
value
,
e
.
dialogObj
.
desc
=
t
.
desc
,
e
.
dialogObj
.
key
=
e
.
activeName
,
e
.
dialogObj
.
show
=!
0
})},
del
:
function
(
t
){
var
e
=
this
;
this
.
$confirm
(
"此操作将删除该记录?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
s
.
S
)(
t
.
id
).
then
(
function
(
t
){
e
.
getList
(),
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})})})},
handleClick
:
function
(
t
){
this
.
activeName
=
t
.
name
,
this
.
getList
()}}},
c
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
i
=
t
.
_self
.
_c
||
e
;
return
i
(
"div"
,[
i
(
"el-row"
,{
staticClass
:
"add-btn"
,
attrs
:{
type
:
"flex"
,
justify
:
"end"
}},[
i
(
"el-col"
,{
staticStyle
:{
"text-align"
:
"right"
},
attrs
:{
span
:
6
}},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
add
}},[
t
.
_v
(
"添加回复"
)])],
1
)],
1
),
t
.
_v
(
" "
),
i
(
"el-tabs"
,{
attrs
:{
type
:
"card"
},
on
:{
"tab-click"
:
t
.
handleClick
},
model
:{
value
:
t
.
activeName
,
callback
:
function
(
e
){
t
.
activeName
=
e
},
expression
:
"activeName"
}},[
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"公众号关键词回复"
,
name
:
"keywords_reply"
}}),
t
.
_v
(
" "
),
i
(
"el-tab-pane"
,{
attrs
:{
label
:
"小程序关键词回复"
,
name
:
"mini_keywords_reply"
}})],
1
),
t
.
_v
(
" "
),
i
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
list
}},[
i
(
"el-table-column"
,{
attrs
:{
type
:
"expand"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-form"
,{
staticClass
:
"demo-table-expand"
,
attrs
:{
"label-position"
:
"top"
}},[
i
(
"el-form-item"
,{
attrs
:{
label
:
"回复内容"
}},
t
.
_l
(
e
.
row
.
desc
,
function
(
e
,
s
){
return
i
(
"div"
,[
i
(
"span"
,{
staticStyle
:{
width
:
"120px"
,
display
:
"inline-block"
,
"text-align"
:
"right"
,
margin
:
"10px 0"
}},[
t
.
_v
(
"
\n
回复"
+
t
.
_s
(
s
+
1
)
+
"("
+
t
.
_s
(
t
.
_f
(
"type"
)(
e
.
type
))
+
"):
\n
"
)]),
t
.
_v
(
" "
),
e
.
content
&&
"text"
===
e
.
type
?
i
(
"span"
,[
i
(
"span"
,{
domProps
:{
innerHTML
:
t
.
_s
(
e
.
content
.
replace
(
/
\/[\u
4E00-
\u
9FA5
]{1,3}
/gi
,
t
.
emotion
))}})]):
t
.
_e
(),
t
.
_v
(
" "
),
e
.
content
&&
"image"
===
e
.
type
?
i
(
"span"
,[
i
(
"img"
,{
staticClass
:
"img"
,
staticStyle
:{
"vertical-align"
:
"text-top"
},
attrs
:{
src
:
e
.
content
}})]):
t
.
_e
(),
t
.
_v
(
" "
),
"image"
===
e
.
type
&&
e
.
variable
?
i
(
"span"
,[
t
.
_v
(
"
\n
老师二维码"
)]):
t
.
_e
(),
t
.
_v
(
" "
),
"video"
===
e
.
type
?
i
(
"a"
,{
attrs
:{
href
:
e
.
content
.
down_url
,
target
:
"_blank"
}},[
t
.
_v
(
t
.
_s
(
e
.
content
.
title
))]):
t
.
_e
(),
t
.
_v
(
" "
),
"news"
===
e
.
type
&&
e
.
content
&&
e
.
content
.
news_item
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
,
width
:
"200px"
,
"vertical-align"
:
"text-top"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},
t
.
_l
(
e
.
content
.
news_item
,
function
(
s
,
n
){
return
i
(
"div"
,{
staticStyle
:{
position
:
"relative"
}},[
1
===
e
.
content
.
news_item
.
length
?
i
(
"div"
,{
staticClass
:
"single-cover"
},[
i
(
"div"
,{
staticClass
:
"title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"digest"
},[
t
.
_v
(
t
.
_s
(
s
.
digest
))]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
e
.
content
.
news_item
.
length
>
1
?
i
(
"div"
,{
staticClass
:
"clear-both bottomCover"
,
staticStyle
:{
position
:
"relative"
}},[
0
===
n
?
i
(
"div"
,{
staticClass
:
"muti-cover"
},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
"margin-top"
:
"20px"
},
attrs
:{
src
:
s
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"bottom-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))])]):
i
(
"div"
,{
staticClass
:
"next-cover clear-both"
},[
i
(
"span"
,{
staticClass
:
"next-title"
},[
t
.
_v
(
t
.
_s
(
s
.
title
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticClass
:
"next-img"
,
attrs
:{
src
:
s
.
thumb_url
}})]),
t
.
_v
(
" "
),
i
(
"a"
,{
staticClass
:
"preview"
,
attrs
:{
href
:
s
.
url
,
target
:
"_blank"
}},[
t
.
_v
(
"
\n
预览文章
\n
"
)])]):
t
.
_e
()])}))],
1
):
t
.
_e
(),
t
.
_v
(
" "
),
"link"
===
e
.
type
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
display
:
"inline-block"
,
width
:
"200px"
,
"vertical-align"
:
"text-top"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},[
i
(
"a"
,{
staticStyle
:{
position
:
"relative"
,
color
:
"#333"
,
"text-decoration"
:
"none"
},
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
i
(
"div"
,{
staticClass
:
"ellip"
,
staticStyle
:{
margin
:
"3px"
,
"line-height"
:
"2"
}},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"f-bt"
,
staticStyle
:{
position
:
"relative"
,
"margin-left"
:
"3px"
}},[
i
(
"div"
,{
staticStyle
:{
color
:
"#666"
,
width
:
"63%"
,
"word-break"
:
"break-all"
,
"word-wrap"
:
"break-word"
,
"line-height"
:
"1"
}},[
t
.
_v
(
t
.
_s
(
e
.
description
))]),
t
.
_v
(
" "
),
i
(
"img"
,{
staticStyle
:{
width
:
"35%"
,
height
:
"auto"
},
attrs
:{
src
:
e
.
thumb_url
}})])])])],
1
):
"news-item"
===
e
.
type
?
i
(
"div"
,{
staticClass
:
"news-media"
,
staticStyle
:{
width
:
"200px"
,
display
:
"inline-block"
,
"vertical-align"
:
"text-top"
}},[
i
(
"el-card"
,{
attrs
:{
"body-style"
:{
padding
:
"0px"
}}},[
i
(
"a"
,{
staticStyle
:{
position
:
"relative"
,
color
:
"#333"
,
"text-decoration"
:
"none"
},
attrs
:{
href
:
e
.
url
,
target
:
"_blank"
}},[
i
(
"img"
,{
staticStyle
:{
width
:
"100%"
,
height
:
"auto"
},
attrs
:{
src
:
e
.
thumb_url
}}),
t
.
_v
(
" "
),
i
(
"div"
,{
staticClass
:
"ellip"
,
staticStyle
:{
margin
:
"3px"
,
"line-height"
:
"2"
}},[
t
.
_v
(
t
.
_s
(
e
.
title
))]),
t
.
_v
(
" "
),
i
(
"div"
,{
staticStyle
:{
color
:
"#666"
,
width
:
"63%"
,
"word-break"
:
"break-all"
,
"word-wrap"
:
"break-word"
,
"line-height"
:
"1"
}},[
t
.
_v
(
t
.
_s
(
e
.
description
))])])])],
1
):
t
.
_e
()])}))],
1
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"ID"
,
prop
:
"id"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"关键词"
,
prop
:
"value"
}}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
label
:
"回复内容"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
row
.
desc
.
length
)
+
" 条回复
\n
"
)]}}])}),
t
.
_v
(
" "
),
i
(
"el-table-column"
,{
attrs
:{
prop
:
"created_at"
,
label
:
"创建时间"
}}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
i
(
"el-table-column"
,{
attrs
:{
width
:
"250"
,
label
:
"操作"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
i
){
t
.
edit
(
e
.
row
)}}},[
t
.
_v
(
"
\n
编辑
\n
"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
deletePermission
?
i
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
i
){
t
.
del
(
e
.
row
)}}},[
t
.
_v
(
"
\n
删除
\n
"
)]):
t
.
_e
()]}}])})],
1
),
t
.
_v
(
" "
),
i
(
"dialog-com"
,{
attrs
:{
dialogObj
:
t
.
dialogObj
},
on
:{
changeShow
:
t
.
changeShow
,
reflash
:
t
.
getList
}}),
t
.
_v
(
" "
),
i
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
}})],
1
)},
staticRenderFns
:[]};
var
d
=
i
(
"VU/8"
)(
r
,
c
,
!
1
,
function
(
t
){
i
(
"H24+"
)},
"data-v-77a00676"
,
null
);
e
.
default
=
d
.
exports
},
"H24+"
:
function
(
t
,
e
){},
g7Je
:
function
(
t
,
e
){},
yhv9
:
function
(
t
,
e
){}});
\ No newline at end of file
dist/static/js/21.ee639989eb7378bbb2ec.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
21
],{
B31M
:
function
(
e
,
t
,
a
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
n
=
a
(
"CCn6"
),
i
=
a
(
"kmJW"
),
o
=
{
name
:
"dialogObj"
,
props
:[
"dialogObj"
],
data
:
function
(){
return
{
show
:
!
1
,
id
:
""
,
loading
:
!
0
,
uploadShow
:
!
0
,
type
:
0
,
title
:
""
,
form
:{
name
:
""
,
num
:
0
,
cover
:
""
},
imageList
:[],
rules
:{},
inputVisible
:
!
1
,
inputValue
:
""
,
teacherDetail
:{}}},
methods
:{
handleClose
:
function
(
e
){
this
.
form
.
category_name
.
splice
(
this
.
form
.
category_name
.
indexOf
(
e
),
1
)},
showInput
:
function
(){
var
e
=
this
;
this
.
inputVisible
=!
0
,
this
.
$nextTick
(
function
(
t
){
e
.
$refs
.
saveTagInput
.
$refs
.
input
.
focus
()})},
handleInputConfirm
:
function
(){
var
e
=
this
.
inputValue
;
e
&&
this
.
form
.
category_name
.
push
(
e
),
this
.
inputVisible
=!
1
,
this
.
inputValue
=
""
},
sub
:
function
(){
var
e
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
this
.
$refs
.
form
.
validate
(
function
(
t
){
if
(
t
){
e
.
imageList
.
length
>
0
&&
(
e
.
form
.
cover
=
e
.
imageList
[
0
].
name
);
var
a
=
e
.
form
;
a
.
category_name
=
a
.
category_name
.
join
(
","
),
Object
(
n
.
o
)(
a
).
then
(
function
(){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
$emit
(
"reflash"
),
e
.
show
=!
1
})}});
break
;
case
1
:
this
.
$refs
.
form
.
validate
(
function
(
t
){
if
(
t
){
e
.
imageList
.
length
>
0
&&
(
e
.
form
.
cover
=
e
.
imageList
[
0
].
name
);
var
a
=
e
.
form
;
a
.
category_name
=
a
.
category_name
.
join
(
","
),
Object
(
n
.
_12
)(
e
.
id
,
a
).
then
(
function
(){
e
.
$message
({
type
:
"success"
,
message
:
"修改成功!"
}),
e
.
$emit
(
"reflash"
),
e
.
show
=!
1
})}})}},
handleAvatarSuccess
:
function
(
e
){
this
.
imageList
=
[{
name
:
e
.
data
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
data
.
url
}]},
beforeAvatarUpload
:
function
(){
this
.
uploadShow
=!
1
},
uploadFile
:
function
(
e
){
var
t
=
this
;
this
.
loading
=!
0
,
this
.
$store
.
dispatch
(
"setProgress"
,{
type
:
"new"
,
id
:
e
.
file
.
uid
}),
this
.
fileUid
=
e
.
file
.
uid
,
Object
(
n
.
_142
)({
file
:
e
.
file
,
type
:
"local"
}).
then
(
function
(
e
){
t
.
imageList
=
[{
name
:
e
.
url
,
url
:
"https://cdn.singsingenglish.com/"
+
e
.
url
}],
t
.
loading
=!
1
,
t
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
})}).
catch
(
function
(){
t
.
loading
=!
1
})},
handleRemove
:
function
(){
this
.
uploadShow
=!
0
},
initDialog
:
function
(){
var
e
=
this
;
switch
(
this
.
dialogObj
.
type
){
case
0
:
this
.
title
=
"新增单品"
,
this
.
show
=
this
.
dialogObj
.
show
,
this
.
type
=
0
,
this
.
imageList
=
[],
this
.
form
=
{
name
:
""
,
num
:
0
,
cover
:
""
,
category_name
:[]},
this
.
uploadShow
=!
0
,
this
.
loading
=!
1
;
break
;
case
1
:
this
.
title
=
"编辑"
,
this
.
show
=
this
.
dialogObj
.
show
,
this
.
id
=
this
.
dialogObj
.
id
,
this
.
type
=
1
,
Object
(
n
.
_72
)(
this
.
dialogObj
.
id
).
then
(
function
(
t
){
e
.
loading
=!
1
,
e
.
form
=
{
name
:
t
.
name
,
num
:
t
.
num
,
cover
:
t
.
cover
,
category_name
:
t
.
category_name
?
t
.
category_name
.
split
(
","
):[]},
e
.
form
.
cover
&&
""
!==
e
.
form
.
cover
?(
e
.
imageList
=
[{
name
:
t
.
cover
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
cover
}],
e
.
uploadShow
=!
1
):(
e
.
imageList
=
[],
e
.
uploadShow
=!
0
)})}}},
watch
:{
dialogObj
:{
handler
:
function
(){
this
.
loading
=!
0
,
this
.
initDialog
()},
deep
:
!
0
},
show
:
function
(
e
){
this
.
$emit
(
"changeShow"
,
e
)}}},
s
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
a
=
e
.
_self
.
_c
||
t
;
return
a
(
"el-dialog"
,{
attrs
:{
title
:
e
.
title
,
center
:
""
,
"append-to-body"
:
""
,
visible
:
e
.
show
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
t
){
e
.
show
=
t
}}},[
a
(
"div"
,{
directives
:[{
name
:
"loading"
,
rawName
:
"v-loading"
,
value
:
e
.
loading
,
expression
:
"loading"
}]},[
a
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
e
.
form
}},[
a
(
"el-row"
,[
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"label"
,[
e
.
_v
(
"单品名称"
)])]),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
8
}},[
a
(
"el-form-item"
,[
a
(
"el-input"
,{
attrs
:{
placeholder
:
"规则:主题名+单品名"
},
model
:{
value
:
e
.
form
.
name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"name"
,
t
)},
expression
:
"form.name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"label"
,[
e
.
_v
(
"库存数量"
)])]),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
8
}},[
a
(
"el-form-item"
,[
a
(
"el-input-number"
,{
model
:{
value
:
e
.
form
.
num
,
callback
:
function
(
t
){
e
.
$set
(
e
.
form
,
"num"
,
t
)},
expression
:
"form.num"
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-row"
,[
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"label"
,[
e
.
_v
(
"标签"
)])]),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
20
}},[
a
(
"el-form-item"
,[
e
.
_l
(
e
.
form
.
category_name
,
function
(
t
,
n
){
return
a
(
"el-tag"
,{
key
:
n
,
attrs
:{
closable
:
""
,
"disable-transitions"
:
!
1
},
on
:{
close
:
function
(
a
){
e
.
handleClose
(
t
)}}},[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
)
+
"
\n
"
)])}),
e
.
_v
(
" "
),
e
.
inputVisible
?
a
(
"el-input"
,{
ref
:
"saveTagInput"
,
staticClass
:
"input-new-tag"
,
attrs
:{
size
:
"small"
},
on
:{
blur
:
e
.
handleInputConfirm
},
nativeOn
:{
keyup
:
function
(
t
){
return
"button"
in
t
||!
e
.
_k
(
t
.
keyCode
,
"enter"
,
13
,
t
.
key
,
"Enter"
)?
e
.
handleInputConfirm
(
t
):
null
}},
model
:{
value
:
e
.
inputValue
,
callback
:
function
(
t
){
e
.
inputValue
=
t
},
expression
:
"inputValue"
}}):
a
(
"el-button"
,{
staticClass
:
"button-new-tag"
,
attrs
:{
size
:
"small"
},
on
:{
click
:
e
.
showInput
}},[
e
.
_v
(
"+ 新增"
)])],
2
)],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-row"
,[
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"label"
,[
e
.
_v
(
"封面图片"
)])]),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
20
}},[
a
(
"div"
,{
staticClass
:
"upload-block"
},[
a
(
"el-upload"
,{
class
:{
disabled
:
!
e
.
uploadShow
},
attrs
:{
action
:
"/api/public/upload/zone"
,
"http-request"
:
e
.
uploadFile
,
"before-upload"
:
e
.
beforeAvatarUpload
,
"list-type"
:
"picture-card"
,
"file-list"
:
e
.
imageList
,
"on-success"
:
e
.
handleAvatarSuccess
,
"on-remove"
:
e
.
handleRemove
}},[
a
(
"i"
,{
staticClass
:
"el-icon-plus"
})])],
1
)])],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
a
(
"el-button"
,{
on
:{
click
:
function
(
t
){
e
.
show
=!
1
}}},[
e
.
_v
(
"取 消"
)]),
e
.
_v
(
" "
),
a
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
e
.
sub
}},[
e
.
_v
(
"确 定"
)])],
1
)],
1
)])},
staticRenderFns
:[]};
var
l
=
a
(
"VU/8"
)(
o
,
s
,
!
1
,
function
(
e
){
a
(
"EQY0"
),
a
(
"vgm/"
)},
"data-v-6feb975c"
,
null
).
exports
,
r
=
{
name
:
"index"
,
components
:{
page
:
i
.
a
,
dialogCom
:
l
},
data
:
function
(){
return
{
total
:
0
,
nowPage
:
1
,
limit
:
10
,
searchFrom
:{
name
:
""
},
tableData
:[],
dialogObj
:{
type
:
0
,
show
:
!
1
,
id
:
""
}}},
created
:
function
(){
this
.
initPage
()},
methods
:{
initPage
:
function
(){
var
e
=
this
,
t
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
searchFrom
.
name
&&
(
t
.
name
=
this
.
searchFrom
.
name
),
this
.
searchFrom
.
category_name
&&
(
t
.
category_name
=
this
.
searchFrom
.
category_name
),
Object
(
n
.
_73
)(
t
).
then
(
function
(
t
){
e
.
tableData
=
t
.
list
,
e
.
total
=
t
.
total
})},
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
initPage
()},
onSizeChange
:
function
(
e
){
this
.
nowPage
=
1
,
this
.
limit
=
e
,
this
.
initPage
()},
changeShow
:
function
(){},
delthat
:
function
(
e
){
var
t
=
this
;
this
.
$confirm
(
"此操作将删除该单品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
n
.
P
)(
e
.
id
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})}),
t
.
initPage
()})},
onAdd
:
function
(){
this
.
dialogObj
=
{
type
:
0
,
show
:
!
0
}},
edit
:
function
(
e
){
this
.
dialogObj
=
{
type
:
1
,
show
:
!
0
,
id
:
e
.
id
}}}},
c
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
a
=
e
.
_self
.
_c
||
t
;
return
a
(
"div"
,{
staticClass
:
"single"
},[
a
(
"el-form"
,{
ref
:
"searchFrom"
,
attrs
:{
model
:
e
.
searchFrom
,
"label-width"
:
"80px"
}},[
a
(
"el-row"
,[
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"el-form-item"
,{
attrs
:{
label
:
"分类名称"
}},[
a
(
"el-input"
,{
attrs
:{
placeholder
:
"名称"
,
size
:
"small"
},
model
:{
value
:
e
.
searchFrom
.
category_name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"category_name"
,
t
)},
expression
:
"searchFrom.category_name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"el-form-item"
,{
attrs
:{
label
:
"单品名称"
}},[
a
(
"el-input"
,{
attrs
:{
placeholder
:
"名称"
,
size
:
"small"
},
model
:{
value
:
e
.
searchFrom
.
name
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"name"
,
t
)},
expression
:
"searchFrom.name"
}})],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
4
}},[
a
(
"el-form-item"
,[
a
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
,
size
:
"small"
},
on
:{
click
:
e
.
initPage
}},[
e
.
_v
(
"
\n
搜索
\n
"
)])],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-col"
,{
attrs
:{
span
:
4
,
offset
:
8
}},[
a
(
"el-form-item"
,[
e
.
$store
.
state
.
readonly
?
e
.
_e
():
a
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
,
size
:
"small"
},
on
:{
click
:
e
.
onAdd
}},[
e
.
_v
(
"
\n
添加单品
\n
"
)])],
1
)],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
tableData
,
"default-sort"
:{
prop
:
"num"
,
order
:
"descending"
}}},[
a
(
"el-table-column"
,{
attrs
:{
prop
:
"id"
,
label
:
"id"
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"name"
,
label
:
"名称"
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"category_name"
,
label
:
"分类"
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"num"
,
sortable
:
""
,
label
:
"库存"
}}),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
a
(
"el-table-column"
,{
attrs
:{
width
:
"200"
,
label
:
"操作"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
a
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
a
){
e
.
edit
(
t
.
row
)}}},[
e
.
_v
(
"
\n
编辑
\n
"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
deletePermission
?
a
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
a
){
e
.
delthat
(
t
.
row
)}}},[
e
.
_v
(
"
\n
删除
\n
"
)]):
e
.
_e
()]}}])})],
1
),
e
.
_v
(
" "
),
a
(
"page"
,{
attrs
:{
total
:
e
.
total
,
limit
:
e
.
limit
},
on
:{
pageChange
:
e
.
onPageChange
,
sizeChange
:
e
.
onSizeChange
}}),
e
.
_v
(
" "
),
a
(
"dialog-com"
,{
attrs
:{
dialogObj
:
e
.
dialogObj
},
on
:{
changeShow
:
e
.
changeShow
,
reflash
:
e
.
initPage
}})],
1
)},
staticRenderFns
:[]};
var
m
=
a
(
"VU/8"
)(
r
,
c
,
!
1
,
function
(
e
){
a
(
"JTBX"
)},
"data-v-d3a26312"
,
null
);
t
.
default
=
m
.
exports
},
EQY0
:
function
(
e
,
t
){},
JTBX
:
function
(
e
,
t
){},
"vgm/"
:
function
(
e
,
t
){}});
\ No newline at end of file
dist/static/js/22.f42077985dfd681d430b.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
22
],{
"0gIA"
:
function
(
e
,
t
){},
CPD8
:
function
(
e
,
t
){},
Fmgy
:
function
(
e
,
t
,
a
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
l
=
a
(
"CCn6"
),
o
=
{
props
:[
"dialogObj"
],
data
:
function
(){
return
{
nowPage
:
1
,
total
:
0
,
limit
:
10
,
classList
:[]}},
components
:{
page
:
a
(
"kmJW"
).
a
},
methods
:{
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
classListOption
()},
onSizeChange
:
function
(
e
){
this
.
limit
=
e
,
this
.
nowPage
=
1
,
this
.
classListOption
()},
classListOption
:
function
(){
var
e
=
this
;
void
0
==
this
.
dialogObj
.
timeValue
[
0
]
&&
(
this
.
dialogObj
.
timeValue
[
0
]
=
""
),
void
0
==
this
.
dialogObj
.
timeValue
[
1
]
&&
(
this
.
dialogObj
.
timeValue
[
1
]
=
""
);
var
t
=
{
page
:
this
.
nowPage
,
limit
:
this
.
limit
,
start_at
:
this
.
dialogObj
.
timeValue
[
0
],
end_at
:
this
.
dialogObj
.
timeValue
[
1
]};
Object
(
l
.
_78
)(
t
,
this
.
dialogObj
.
teacher_id
).
then
(
function
(
t
){
e
.
classList
=
t
.
list
,
e
.
total
=
t
.
total
})}},
watch
:{
"dialogObj.show"
:
function
(
e
){
e
&&
this
.
classListOption
()}}},
r
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
a
=
e
.
_self
.
_c
||
t
;
return
a
(
"el-dialog"
,{
attrs
:{
title
:
e
.
dialogObj
.
title
,
visible
:
e
.
dialogObj
.
show
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
dialogObj
,
"show"
,
t
)}}},[
a
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
classList
}},[
a
(
"el-table-column"
,{
attrs
:{
label
:
"购买人"
,
className
:
"f-c"
,
width
:
"150"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
a
(
"img"
,{
staticClass
:
"avatar"
,
attrs
:{
src
:
t
.
row
.
avatar
}}),
e
.
_v
(
" "
+
e
.
_s
(
t
.
row
.
nickname
)),
a
(
"br"
),
e
.
_v
(
"(ID:"
+
e
.
_s
(
t
.
row
.
user_id
)
+
")
\n
"
)]}}])}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"out_trade_no"
,
label
:
"交易订单号"
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"goods_name"
,
label
:
"商品名字"
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"money"
,
label
:
"金额(元)"
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"pay_at"
,
label
:
"支付时间"
}})],
1
),
e
.
_v
(
" "
),
a
(
"page"
,{
attrs
:{
nowPage
:
e
.
nowPage
,
total
:
e
.
total
,
limit
:
e
.
limit
},
on
:{
pageChange
:
e
.
onPageChange
,
sizeChange
:
e
.
onSizeChange
}})],
1
)},
staticRenderFns
:[]};
var
s
=
{
name
:
"index"
,
data
:
function
(){
var
e
=
this
;
return
{
activeName
:
"first"
,
firstList
:[],
secondList
:[],
searchFirstFrom
:{
dateValue
:[]},
today
:{
text
:
"今天"
,
onClick
:
function
(){
e
.
searchFirstFrom
.
dateValue
=
[
e
.
formatTime
(
new
Date
),
e
.
formatTime
(
new
Date
)],
e
.
searchSecondFrom
.
dateValue
=
[
e
.
formatTime
(
new
Date
),
e
.
formatTime
(
new
Date
)]}},
yesterday
:{
text
:
"昨天"
,
onClick
:
function
(){
var
t
=
e
.
formatTime
(
new
Date
((
new
Date
).
getTime
()
-
864
e5
));
e
.
searchFirstFrom
.
dateValue
=
[
t
,
t
],
e
.
searchSecondFrom
.
dateValue
=
[
t
,
t
]}},
last7Day
:{
text
:
"过去7天"
,
onClick
:
function
(){
var
t
=
e
.
formatTime
(
new
Date
((
new
Date
).
getTime
()
-
6048
e5
));
e
.
searchFirstFrom
.
dateValue
=
[
t
,
e
.
formatTime
(
new
Date
)],
e
.
searchSecondFrom
.
dateValue
=
[
t
,
e
.
formatTime
(
new
Date
)]}},
last30Day
:{
text
:
"过去30天"
,
onClick
:
function
(){
var
t
=
e
.
formatTime
(
new
Date
((
new
Date
).
getTime
()
-
2592
e6
));
e
.
searchFirstFrom
.
dateValue
=
[
t
,
e
.
formatTime
(
new
Date
)],
e
.
searchSecondFrom
.
dateValue
=
[
t
,
e
.
formatTime
(
new
Date
)]}},
searchSecondFrom
:{
dateValue
:[]},
dialogObj
:{
show
:
!
1
,
title
:
"售卖课程"
,
teacher_id
:
""
,
timeValue
:[]}}},
components
:{
classDialog
:
a
(
"VU/8"
)(
o
,
r
,
!
1
,
function
(
e
){
a
(
"jAlk"
),
a
(
"0gIA"
)},
"data-v-43828d16"
,
null
).
exports
},
mounted
:
function
(){
this
.
defaultTime
(),
this
.
searchFirstPage
()},
methods
:{
sortMoney
:
function
(
e
,
t
){
return
Number
(
e
.
total_money
)
-
Number
(
t
.
total_money
)},
handleClick
:
function
(
e
){
"first"
===
e
.
name
?
this
.
searchFirstPage
():
this
.
searchSecondPage
()},
searchFirstPage
:
function
(){
var
e
=
this
,
t
=
{};
this
.
searchFirstFrom
.
dateValue
&&
(
t
=
{
start_at
:
this
.
searchFirstFrom
.
dateValue
[
0
],
end_at
:
this
.
searchFirstFrom
.
dateValue
[
1
]}),
Object
(
l
.
_82
)(
t
).
then
(
function
(
t
){
e
.
firstList
=
t
})},
searchSecondPage
:
function
(){
var
e
=
this
,
t
=
{};
this
.
searchSecondFrom
.
dateValue
&&
(
t
=
{
start_at
:
this
.
searchSecondFrom
.
dateValue
[
0
],
end_at
:
this
.
searchSecondFrom
.
dateValue
[
1
]}),
Object
(
l
.
_79
)(
t
).
then
(
function
(
t
){
e
.
secondList
=
t
})},
formatTime
:
function
(
e
){
var
t
=
e
.
getFullYear
(),
a
=
e
.
getMonth
()
+
1
;
a
<
10
&&
(
a
=
"0"
+
a
);
var
l
=
e
.
getDate
();
return
l
<
10
&&
(
l
=
"0"
+
l
),
t
+
"-"
+
a
+
"-"
+
l
},
defaultTime
:
function
(){
var
e
=
new
Date
,
t
=
e
.
getFullYear
(),
a
=
e
.
getMonth
()
+
1
;
a
<
10
&&
(
a
=
"0"
+
a
);
var
l
=
e
.
getDate
();
l
<
10
&&
(
l
=
"0"
+
l
);
var
o
=
t
+
"-"
+
a
+
"-01"
,
r
=
t
+
"-"
+
a
+
"-"
+
l
;
this
.
searchFirstFrom
.
dateValue
=
[
o
,
r
],
this
.
searchSecondFrom
.
dateValue
=
[
o
,
r
]},
nameClick
:
function
(
e
,
t
){
this
.
dialogObj
.
teacher_id
=
e
.
tid
,
this
.
dialogObj
.
timeValue
=
void
0
!=
t
?
t
:[
e
.
cur_date
,
e
.
cur_date
],
this
.
dialogObj
.
show
=!
0
}}},
n
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
a
=
e
.
_self
.
_c
||
t
;
return
a
(
"div"
,[
a
(
"h2"
,{
staticClass
:
"title"
},[
e
.
_v
(
"班主任业绩排行"
)]),
e
.
_v
(
" "
),
a
(
"el-tabs"
,{
attrs
:{
type
:
"card"
},
on
:{
"tab-click"
:
e
.
handleClick
},
model
:{
value
:
e
.
activeName
,
callback
:
function
(
t
){
e
.
activeName
=
t
},
expression
:
"activeName"
}},[
a
(
"el-tab-pane"
,{
attrs
:{
label
:
"业绩总排行"
,
name
:
"first"
}},[
a
(
"el-form"
,{
ref
:
"searchFirstFrom"
,
attrs
:{
inline
:
""
,
model
:
e
.
searchFirstFrom
,
"label-width"
:
"100px"
}},[
a
(
"el-form-item"
,{
attrs
:{
label
:
"起止日期"
}},[
a
(
"el-date-picker"
,{
attrs
:{
"unlink-panels"
:
""
,
type
:
"daterange"
,
"picker-options"
:{
shortcuts
:[
e
.
today
,
e
.
yesterday
,
e
.
last7Day
,
e
.
last30Day
]},
"value-format"
:
"yyyy-MM-dd"
,
"range-separator"
:
"至"
,
"start-placeholder"
:
"开始日期"
,
"end-placeholder"
:
"结束日期"
},
on
:{
change
:
e
.
searchFirstPage
},
model
:{
value
:
e
.
searchFirstFrom
.
dateValue
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFirstFrom
,
"dateValue"
,
t
)},
expression
:
"searchFirstFrom.dateValue"
}})],
1
),
e
.
_v
(
" "
),
a
(
"el-form-item"
,{
attrs
:{
label
:
""
}},[
a
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
searchFirstPage
()}}},[
e
.
_v
(
"
\n
搜索
\n
"
)])],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
firstList
}},[
a
(
"el-table-column"
,{
attrs
:{
label
:
"班主任姓名"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
a
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
a
){
e
.
nameClick
(
t
.
row
,
e
.
searchFirstFrom
.
dateValue
)}}},[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
teacher_name
)
+
"
\n
"
)])]}}])}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"total_money"
,
label
:
"销售额"
,
"sort-method"
:
e
.
sortMoney
,
sortable
:
!
0
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"three_month"
,
label
:
"季课"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"one_year"
,
label
:
"年课"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"two_year"
,
label
:
"2年课"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"one_to_two"
,
label
:
"续课"
,
sortable
:
""
}})],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-tab-pane"
,{
attrs
:{
label
:
"业绩按天排行"
,
name
:
"second"
}},[
a
(
"el-form"
,{
ref
:
"searchSecondFrom"
,
attrs
:{
inline
:
""
,
model
:
e
.
searchSecondFrom
,
"label-width"
:
"100px"
}},[
a
(
"el-form-item"
,{
attrs
:{
label
:
"起止日期"
}},[
a
(
"el-date-picker"
,{
attrs
:{
"unlink-panels"
:
""
,
type
:
"daterange"
,
"value-format"
:
"yyyy-MM-dd"
,
"picker-options"
:{
shortcuts
:[
e
.
today
,
e
.
yesterday
,
e
.
last7Day
,
e
.
last30Day
]},
"range-separator"
:
"至"
,
shortcuts
:[],
"start-placeholder"
:
"开始日期"
,
"end-placeholder"
:
"结束日期"
},
on
:{
change
:
e
.
searchSecondPage
},
model
:{
value
:
e
.
searchSecondFrom
.
dateValue
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchSecondFrom
,
"dateValue"
,
t
)},
expression
:
"searchSecondFrom.dateValue"
}})],
1
),
e
.
_v
(
" "
),
a
(
"el-form-item"
,{
attrs
:{
label
:
""
}},[
a
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
t
){
e
.
searchSecondPage
()}}},[
e
.
_v
(
"
\n
搜索
\n
"
)])],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
secondList
}},[
a
(
"el-table-column"
,{
attrs
:{
prop
:
"cur_date"
,
label
:
"时间"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
label
:
"班主任姓名"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
a
(
"el-button"
,{
attrs
:{
type
:
"text"
},
on
:{
click
:
function
(
a
){
e
.
nameClick
(
t
.
row
)}}},[
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
teacher_name
)
+
"
\n
"
)])]}}])}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"total_money"
,
label
:
"销售额"
,
"sort-method"
:
e
.
sortMoney
,
sortable
:
!
0
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"three_month"
,
label
:
"季课"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"one_year"
,
label
:
"年课"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
a
(
"el-table-column"
,{
attrs
:{
prop
:
"two_year"
,
label
:
"2年课"
,
sortable
:
""
}})],
1
)],
1
)],
1
),
e
.
_v
(
" "
),
a
(
"class-dialog"
,{
attrs
:{
dialogObj
:
e
.
dialogObj
}})],
1
)},
staticRenderFns
:[]};
var
i
=
a
(
"VU/8"
)(
s
,
n
,
!
1
,
function
(
e
){
a
(
"CPD8"
)},
"data-v-8de891cc"
,
null
);
t
.
default
=
i
.
exports
},
jAlk
:
function
(
e
,
t
){}});
\ No newline at end of file
dist/static/js/23.0318833dc04e8a123f85.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
23
],{
E6Zo
:
function
(
e
,
t
,
n
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
o
=
n
(
"CCn6"
),
s
=
n
(
"+TkF"
),
a
=
{
name
:
"entrance"
,
props
:[
"entranceObj"
],
data
:
function
(){
return
{
goodsList
:[],
periodsList
:[],
goods_id
:
null
,
activeName
:
"first"
,
searchFrom
:{
key
:
"goods_receive_course"
,
desc
:
"商品"
,
value
:
""
},
searchFrom2
:{
key
:
"periods_receive_course"
,
desc
:
"期数"
,
value
:
""
},
selectedGoods
:[],
link1
:
"https://w.url.cn/s/A45jJYk"
,
link2
:
"https://w.url.cn/s/AJi1QsS"
}},
mounted
:
function
(){},
filters
:{
filterGoods
:
function
(
e
){
return
"["
+
s
.
h
[
e
.
goods_type
]
+
"]["
+
e
.
current_price
/
100
+
"元]"
+
e
.
name
}},
methods
:{
initPage
:
function
(){
var
e
=
this
;
Object
(
o
.
_38
)({
key
:
this
.
searchFrom
.
key
}).
then
(
function
(
t
){
t
.
list
&&
t
.
list
.
length
>
0
?
e
.
searchFrom
.
value
=
t
.
list
[
0
].
value
:
e
.
searchFrom
.
value
=
""
}),
Object
(
o
.
_38
)({
key
:
this
.
searchFrom2
.
key
}).
then
(
function
(
t
){
t
.
list
&&
t
.
list
.
length
>
0
||
(
e
.
searchFrom2
.
value
=
""
),
e
.
searchFrom2
.
value
=
""
})},
getGoodsList
:
function
(){
var
e
=
this
;
Object
(
o
.
_45
)({
limit
:
200
,
page
:
1
}).
then
(
function
(
t
){
e
.
goodsList
=
t
.
list
})},
getUser
:
function
(
e
){
var
t
=
this
;
""
!=
e
.
value
?
this
.
$confirm
(
"此操作将设置系统指定配置为商品?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
var
n
=
{
value
:
e
.
value
,
desc
:
e
.
desc
,
key
:
e
.
key
};
Object
(
o
.
_106
)(
n
).
then
(
function
(
e
){
t
.
$message
({
type
:
"success"
,
message
:
"设置成功!"
})})}):
this
.
$message
({
type
:
"error"
,
message
:
"请设置选择项!"
})},
changePeriods
:
function
(
e
){
e
.
length
>
1
&&
(
this
.
searchFrom2
.
value
=
String
(
e
[
1
]))},
handleItemChange
:
function
(
e
){
var
t
=
this
;
Object
(
o
.
_59
)({
goods_id
:
e
[
0
]}).
then
(
function
(
n
){
n
.
list
.
forEach
(
function
(
e
){
e
.
name
=
e
.
title
}),
t
.
periodsList
.
find
(
function
(
t
){
return
t
.
id
===
e
[
0
]}).
children
=
n
.
list
})},
getPeriodsList
:
function
(){
var
e
=
this
;
Object
(
o
.
_45
)({
page
:
1
,
limit
:
100
,
goods_type
:
"1,2"
}).
then
(
function
(
t
){
t
.
list
.
forEach
(
function
(
e
){
e
.
name
=
"["
+
s
.
h
[
e
.
goods_type
]
+
"]["
+
e
.
current_price
/
100
+
"元]"
+
e
.
name
,
e
.
children
=
[]}),
e
.
periodsList
=
t
.
list
})},
copyUrl
:
function
(
e
){
var
t
=
e
,
n
=
document
.
createElement
(
"input"
);
n
.
value
=
t
,
document
.
body
.
appendChild
(
n
),
n
.
select
(),
console
.
log
(
n
.
value
),
document
.
execCommand
(
"Copy"
),
this
.
$message
({
message
:
"已成功复制到剪切板"
,
type
:
"success"
}),
n
.
remove
()}},
watch
:{
"entranceObj.show"
:
function
(
e
){
e
&&
(
this
.
initPage
(),
this
.
getGoodsList
(),
this
.
getPeriodsList
())}}},
i
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"el-dialog"
,{
attrs
:{
title
:
e
.
entranceObj
.
title
,
visible
:
e
.
entranceObj
.
show
,
center
:
""
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
t
){
e
.
$set
(
e
.
entranceObj
,
"show"
,
t
)}}},[
n
(
"el-tabs"
,{
staticStyle
:{
"line-height"
:
"1"
},
attrs
:{
type
:
"card"
},
model
:{
value
:
e
.
activeName
,
callback
:
function
(
t
){
e
.
activeName
=
t
},
expression
:
"activeName"
}},[
n
(
"el-tab-pane"
,{
attrs
:{
label
:
"商品名称"
,
name
:
"first"
}},[
n
(
"el-form"
,{
ref
:
"searchFrom"
,
attrs
:{
model
:
e
.
searchFrom
,
"label-width"
:
"90px"
,
inline
:
""
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"商品名称"
}},[
n
(
"el-select"
,{
attrs
:{
placeholder
:
"请选择"
},
model
:{
value
:
e
.
searchFrom
.
value
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"value"
,
t
)},
expression
:
"searchFrom.value"
}},
e
.
_l
(
e
.
goodsList
,
function
(
t
,
o
){
return
n
(
"el-option"
,{
key
:
o
,
attrs
:{
label
:
e
.
_f
(
"filterGoods"
)(
t
),
value
:
String
(
t
.
id
)}})}))],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,[
n
(
"div"
,{
staticClass
:
"search-btn-block"
},[
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
function
(
t
){
e
.
getUser
(
e
.
searchFrom
)}}},[
e
.
_v
(
"确定"
)]),
e
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
function
(
t
){
e
.
copyUrl
(
e
.
link1
)}}},[
e
.
_v
(
"复制链接"
)])],
1
)])],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-tab-pane"
,{
attrs
:{
label
:
"期数名称"
,
name
:
"second"
}},[
n
(
"el-form"
,{
attrs
:{
"label-width"
:
"90px"
,
inline
:
""
,
model
:
e
.
searchFrom2
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"期数名称"
}},[
n
(
"el-cascader"
,{
attrs
:{
options
:
e
.
periodsList
,
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"
,[
n
(
"div"
,{
staticClass
:
"search-btn-block"
},[
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
function
(
t
){
e
.
getUser
(
e
.
searchFrom2
)}}},[
e
.
_v
(
"确定"
)]),
e
.
_v
(
" "
),
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
function
(
t
){
e
.
copyUrl
(
e
.
link2
)}}},[
e
.
_v
(
"复制链接"
)])],
1
)])],
1
)],
1
)],
1
)],
1
)},
staticRenderFns
:[]};
var
r
=
{
name
:
"notBuyClass"
,
data
:
function
(){
return
{
nowPage
:
1
,
total
:
0
,
limit
:
10
,
configList
:[],
entranceObj
:{
title
:
"无需登录入口"
,
show
:
!
1
},
searchFrom
:{
user_id
:
""
,
goods_id
:
""
,
mobile
:
""
},
goodList
:[]}},
components
:{
entrance
:
n
(
"VU/8"
)(
a
,
i
,
!
1
,
function
(
e
){
n
(
"qN7I"
)},
"data-v-7d1872ea"
,
null
).
exports
,
page
:
n
(
"kmJW"
).
a
},
filters
:{
filterGoods
:
function
(
e
){
return
"["
+
s
.
h
[
e
.
goods_type
]
+
"]["
+
e
.
current_price
/
100
+
"元]"
+
e
.
name
}},
mounted
:
function
(){
this
.
getList
(),
this
.
getGoodsOption
()},
methods
:{
onPageChange
:
function
(
e
){
this
.
nowPage
=
e
,
this
.
getList
()},
onSizeChange
:
function
(
e
){
this
.
nowPage
=
1
,
this
.
limit
=
e
,
this
.
getList
()},
getList
:
function
(){
var
e
=
this
,
t
=
{
limit
:
this
.
limit
,
page
:
this
.
nowPage
};
this
.
searchFrom
.
user_id
&&
(
t
.
user_id
=
this
.
searchFrom
.
user_id
),
this
.
searchFrom
.
goods_id
&&
(
t
.
goods_id
=
this
.
searchFrom
.
goods_id
),
this
.
searchFrom
.
nickname
&&
(
t
.
nickname
=
this
.
searchFrom
.
nickname
),
this
.
searchFrom
.
mobile
&&
(
t
.
mobile
=
this
.
searchFrom
.
mobile
),
Object
(
o
.
_32
)(
t
).
then
(
function
(
t
){
e
.
total
=
t
.
total
,
e
.
configList
=
t
.
list
})},
getGoodsOption
:
function
(){
var
e
=
this
;
Object
(
o
.
_45
)({
page
:
1
,
limit
:
100
}).
then
(
function
(
t
){
e
.
goodList
=
t
.
list
})},
editComment
:
function
(
e
,
t
){
var
n
=
this
;
this
.
$prompt
(
""
,
"编辑备注"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
inputType
:
"textarea"
,
inputValue
:
t
||
""
}).
then
(
function
(
t
){
var
s
=
t
.
value
;
n
.
$confirm
(
"确定保存?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
Object
(
o
.
_131
)({
desc
:
s
},
e
).
then
(
function
(
e
){
n
.
$message
({
type
:
"success"
,
message
:
"编辑备注成功"
}),
n
.
getList
()})})})},
exportTable
:
function
(){
var
e
=
{};
this
.
searchFrom
.
user_id
&&
(
e
.
user_id
=
this
.
searchFrom
.
user_id
),
this
.
searchFrom
.
goods_id
&&
(
e
.
goods_id
=
this
.
searchFrom
.
goods_id
),
this
.
searchFrom
.
mobile
&&
(
e
.
mobile
=
this
.
searchFrom
.
mobile
),
this
.
searchFrom
.
nickname
&&
(
e
.
nickname
=
this
.
searchFrom
.
nickname
),
Object
(
o
.
_18
)(
"/api/admin/user/receive/course/log/export"
,
e
)}}},
l
=
{
render
:
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"div"
,{
staticClass
:
"not_buy"
},[
n
(
"el-form"
,{
ref
:
"searchFrom"
,
attrs
:{
model
:
e
.
searchFrom
,
"label-width"
:
"80px"
,
inline
:
""
,
size
:
"small"
}},[
n
(
"el-form-item"
,{
attrs
:{
label
:
"用户ID"
}},[
n
(
"el-input"
,{
staticStyle
:{
width
:
"80px"
},
on
:{
change
:
e
.
getList
},
model
:{
value
:
e
.
searchFrom
.
user_id
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"user_id"
,
t
)},
expression
:
"searchFrom.user_id"
}})],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"用户昵称"
}},[
n
(
"el-input"
,{
staticStyle
:{
width
:
"120px"
},
on
:{
change
:
e
.
getList
},
model
:{
value
:
e
.
searchFrom
.
nickname
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"nickname"
,
t
)},
expression
:
"searchFrom.nickname"
}})],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"手机号"
}},[
n
(
"el-input"
,{
on
:{
change
:
e
.
getList
},
model
:{
value
:
e
.
searchFrom
.
mobile
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"mobile"
,
t
)},
expression
:
"searchFrom.mobile"
}})],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,{
attrs
:{
label
:
"商品名称"
}},[
n
(
"el-select"
,{
attrs
:{
filterable
:
""
,
placeholder
:
"请选择"
,
clearable
:
""
},
on
:{
change
:
e
.
getList
},
model
:{
value
:
e
.
searchFrom
.
goods_id
,
callback
:
function
(
t
){
e
.
$set
(
e
.
searchFrom
,
"goods_id"
,
t
)},
expression
:
"searchFrom.goods_id"
}},
e
.
_l
(
e
.
goodList
,
function
(
t
,
o
){
return
n
(
"el-option"
,{
key
:
o
,
attrs
:{
label
:
e
.
_f
(
"filterGoods"
)(
t
),
value
:
t
.
id
}})}))],
1
),
e
.
_v
(
" "
),
n
(
"el-form-item"
,[
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
getList
}},[
e
.
_v
(
"搜索"
)]),
e
.
_v
(
" "
),
e
.
$store
.
state
.
export
?
n
(
"el-button"
,{
attrs
:{
type
:
"primary"
,
plain
:
""
},
on
:{
click
:
e
.
exportTable
}},[
e
.
_v
(
"导出"
)]):
e
.
_e
(),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-button"
,{
attrs
:{
plain
:
""
,
type
:
"success"
},
on
:{
click
:
function
(
t
){
e
.
entranceObj
.
show
=!
0
}}},[
e
.
_v
(
"无需登录入口"
)])],
1
)],
1
),
e
.
_v
(
" "
),
n
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
e
.
configList
,
size
:
"small"
}},[
n
(
"el-table-column"
,{
attrs
:{
label
:
"用户ID"
,
sortable
:
""
,
prop
:
"scope.row.user_id"
,
className
:
"userInfo"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"img"
,{
staticClass
:
"avatar"
,
attrs
:{
src
:
t
.
row
.
avatar
}}),
e
.
_v
(
"
\n
"
+
e
.
_s
(
t
.
row
.
nickname
)
+
"(ID:"
+
e
.
_s
(
t
.
row
.
user_id
)
+
")
\n\n
"
)]}}])}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"class_name"
,
label
:
"班级名称"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"期数标题"
,
prop
:
"periods_name"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"商品名称"
,
prop
:
"goods_name"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"手机号"
,
prop
:
"mobile"
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
prop
:
"created_at"
,
label
:
"创建时间"
,
sortable
:
""
}}),
e
.
_v
(
" "
),
n
(
"el-table-column"
,{
attrs
:{
label
:
"备注"
,
prop
:
"desc"
}}),
e
.
_v
(
" "
),
e
.
$store
.
state
.
readonly
?
e
.
_e
():
n
(
"el-table-column"
,{
attrs
:{
label
:
"操作"
,
width
:
"220"
},
scopedSlots
:
e
.
_u
([{
key
:
"default"
,
fn
:
function
(
t
){
return
[
n
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"primary"
},
on
:{
click
:
function
(
n
){
e
.
editComment
(
t
.
row
.
id
,
t
.
row
.
desc
)}}},[
e
.
_v
(
"编辑备注"
)])]}}])})],
1
),
e
.
_v
(
" "
),
n
(
"page"
,{
attrs
:{
nowPage
:
e
.
nowPage
,
total
:
e
.
total
},
on
:{
pageChange
:
e
.
onPageChange
,
sizeChange
:
e
.
onSizeChange
}}),
e
.
_v
(
" "
),
n
(
"entrance"
,{
attrs
:{
entranceObj
:
e
.
entranceObj
}})],
1
)},
staticRenderFns
:[]};
var
c
=
n
(
"VU/8"
)(
r
,
l
,
!
1
,
function
(
e
){
n
(
"jO+6"
),
n
(
"HAQw"
)},
"data-v-3eda6f2b"
,
null
);
t
.
default
=
c
.
exports
},
HAQw
:
function
(
e
,
t
){},
"jO+6"
:
function
(
e
,
t
){},
qN7I
:
function
(
e
,
t
){}});
\ No newline at end of file
dist/static/js/24.94a4fbe53937490711f2.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
24
],{
CUAv
:
function
(
t
,
e
,
o
){
"use strict"
;
Object
.
defineProperty
(
e
,
"__esModule"
,{
value
:
!
0
});
var
i
,
a
=
o
(
"CCn6"
),
n
=
o
(
"kmJW"
),
s
=
o
(
"5eDb"
),
l
=
o
.
n
(
s
),
r
=
(
o
(
"o5MN"
),
o
(
"q47d"
));
o
(
"NBEC"
),
o
(
"gBhd"
),
o
(
"Q/P+"
),
o
(
"f85y"
),
o
(
"q/hF"
),
o
(
"yXOt"
),
o
(
"c/6r"
),
o
(
"Rv7z"
),
o
(
"S0tB"
),
o
(
"UWKq"
),
o
(
"gvu3"
),
o
(
"XUqK"
);
function
d
(
t
,
e
,
o
){
return
e
in
t
?
Object
.
defineProperty
(
t
,
e
,{
value
:
o
,
enumerable
:
!
0
,
configurable
:
!
0
,
writable
:
!
0
}):
t
[
e
]
=
o
,
t
}
var
c
=
{
name
:
"tinymce"
,
props
:[
"lookData"
],
data
:
function
(){
return
{
radio
:[],
imageType
:
!
1
,
form
:{
imgList
:[],
big
:
!
1
,
weight
:
""
,
center
:
!
0
},
show
:
""
,
dialogVisible
:
!
1
,
init
:{
toolbar
:
"bold italic underline strikethrough | fontselect | fontsizeselect | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | outdent indent blockquote | undo redo | link unlink image code | "
,
language_url
:
"/static/tinymce/zh_CN.js"
,
language
:
"zh_CN"
,
skin_url
:
"/static/tinymce/skins/lightgray"
,
height
:
500
,
plugins
:
"preview textpattern colorpicker lists code colorpicker fullpage textcolor wordcount contextmenu media"
,
branding
:
!
1
},
dialogVisibleMp3
:
!
1
}},
activated
:
function
(){
this
.
show
=!
0
},
deactivated
:
function
(){},
mounted
:
function
(){},
methods
:(
i
=
{
beforeAvatarUploadAudio
:
function
(
t
){
var
e
=
"audio/mp3"
===
t
.
type
;
return
e
||
this
.
$message
.
error
(
"上传音频只能选择MP3格式!"
),
e
},
uploadFileMp3
:
function
(
t
){
var
e
=
this
;
Object
(
a
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
e
.
radio
=
[{
name
:
t
.
name
,
url
:
t
.
url
}]})},
removeFile
:
function
(){},
removeFileMp3
:
function
(){},
handleExceed
:
function
(){},
audioInter
:
function
(){
if
(
this
.
radio
.
length
<
1
)
return
this
.
$message
({
type
:
"error"
,
message
:
"请选择音频"
}),
!
1
;
var
t
=
'<p style="text-align: center"><img class="mce-object mce-object-audio" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" width="280" height="55" data-mce-p-controls="controls" data-mce-html="%0A%3Csource%20src%3D%22https%3A//cdn.singsingenglish.com/'
+
this
.
radio
[
0
].
url
+
'%22%20type%3D%22audio/mpeg%22%20/%3E" data-mce-object="audio"></p>'
;
l
.
a
.
activeEditor
.
insertContent
(
t
),
this
.
dialogVisibleMp3
=!
1
},
showDialogMP3
:
function
(){
this
.
dialogVisibleMp3
=!
0
,
this
.
radio
=
[]},
beforeAvatarUploadImg
:
function
(
t
){
var
e
=
"image/jpeg"
===
t
.
type
||
"image/png"
===
t
.
type
;
return
e
||
this
.
$message
.
error
(
"上传头像图片只能是 JPG 或 PNG 格式!"
),
e
},
imgInter
:
function
(){
if
(
this
.
form
.
imgList
.
length
<
1
)
return
this
.
$message
({
type
:
"error"
,
message
:
"请选择图片"
}),
!
1
;
var
t
=
""
;
this
.
form
.
big
?
t
+=
"width:100%;"
:
t
+=
"width:70%"
,
this
.
form
.
center
&&
(
t
=
"display:block;margin:auto"
);
var
e
=
'<img src="'
+
this
.
form
.
imgList
[
0
].
url
+
'" style="'
+
t
+
'"/>'
;
l
.
a
.
activeEditor
.
insertContent
(
e
),
this
.
dialogVisible
=!
1
},
uploadFile
:
function
(
t
){
var
e
=
this
;
Object
(
a
.
_142
)({
file
:
t
.
file
,
type
:
"local"
}).
then
(
function
(
t
){
e
.
$message
({
type
:
"success"
,
message
:
"上传成功!"
}),
e
.
form
.
imgList
=
[{
name
:
t
.
name
,
url
:
"https://cdn.singsingenglish.com/"
+
t
.
url
}]})},
showDialog
:
function
(){
this
.
dialogVisible
=!
0
,
this
.
form
=
{
imgList
:[],
big
:
!
1
,
weight
:
""
,
center
:
!
0
}},
insertContent
:
function
(
t
){
if
(
t
){
var
e
=
null
;
if
(
document
.
selection
)(
e
=
document
.
selection
).
createRange
().
pasteHTML
(
t
);
else
if
((
e
=
document
.
getElementById
(
"tinymce_ifr"
).
contentWindow
.
getSelection
()).
rangeCount
>
0
){
var
o
=
e
.
getRangeAt
(
0
);
o
.
deleteContents
();
var
i
=
document
.
createElement
(
"div"
);
i
.
innerHTML
=
t
;
var
a
=
document
.
createDocumentFragment
(),
n
=
i
.
firstChild
,
s
=
a
.
appendChild
(
n
);
o
.
insertNode
(
a
);
var
l
=
o
.
cloneRange
();
l
.
setStartAfter
(
s
),
l
.
collapse
(
!
0
),
e
.
removeAllRanges
(),
e
.
addRange
(
l
)}}}},
d
(
i
,
"removeFile"
,
function
(){}),
d
(
i
,
"handleExceed"
,
function
(){}),
i
),
created
:
function
(){
l
.
a
.
init
({})},
components
:{
Editor
:
r
.
a
}},
u
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
o
=
t
.
_self
.
_c
||
e
;
return
o
(
"div"
,{
staticClass
:
"tinymce"
},[
o
(
"editor"
,{
attrs
:{
id
:
"tinymce"
,
init
:
t
.
init
},
model
:{
value
:
t
.
lookData
.
content
,
callback
:
function
(
e
){
t
.
$set
(
t
.
lookData
,
"content"
,
e
)},
expression
:
"lookData.content"
}}),
t
.
_v
(
" "
),
o
(
"div"
,[
o
(
"div"
,{
staticClass
:
"imgInter"
,
on
:{
click
:
function
(
e
){
t
.
showDialog
()}}},[
t
.
_v
(
"插入图片"
)]),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"MP3Inter"
,
on
:{
click
:
function
(
e
){
t
.
showDialogMP3
()}}},[
t
.
_v
(
"插入音频"
)])]),
t
.
_v
(
" "
),
o
(
"el-dialog"
,{
attrs
:{
title
:
"插入图片"
,
visible
:
t
.
dialogVisible
,
"modal-append-to-body"
:
!
1
,
"close-on-click-modal"
:
!
1
,
center
:
""
,
"append-to-body"
:
!
0
,
width
:
"550px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
dialogVisible
=
e
}}},[
o
(
"el-form"
,{
attrs
:{
"label-width"
:
"80px"
}},[
o
(
"el-form-item"
,{
attrs
:{
label
:
"图片"
}},[
o
(
"el-upload"
,{
attrs
:{
action
:
"/api/public/upload"
,
"http-request"
:
t
.
uploadFile
,
"on-remove"
:
t
.
removeFile
,
"before-upload"
:
t
.
beforeAvatarUploadImg
,
drag
:
""
,
"on-exceed"
:
t
.
handleExceed
,
multiple
:
""
,
limit
:
1
,
"file-list"
:
t
.
form
.
imgList
}},[
o
(
"i"
,{
staticClass
:
"el-icon-upload"
}),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"el-upload__text"
},[
t
.
_v
(
"将文件拖到此处,或"
),
o
(
"em"
,[
t
.
_v
(
"点击上传"
)])]),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"el-upload__tip"
,
attrs
:{
slot
:
"tip"
},
slot
:
"tip"
},[
t
.
_v
(
"只能上传png或jpg文件"
)])])],
1
),
t
.
_v
(
" "
),
o
(
"el-form-item"
,{
attrs
:{
label
:
"铺满"
}},[
o
(
"el-switch"
,{
model
:{
value
:
t
.
form
.
big
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"big"
,
e
)},
expression
:
"form.big"
}})],
1
),
t
.
_v
(
" "
),
o
(
"el-form-item"
,{
attrs
:{
label
:
"居中"
}},[
o
(
"el-switch"
,{
model
:{
value
:
t
.
form
.
center
,
callback
:
function
(
e
){
t
.
$set
(
t
.
form
,
"center"
,
e
)},
expression
:
"form.center"
}})],
1
)],
1
),
t
.
_v
(
" "
),
o
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
o
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogVisible
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
o
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
imgInter
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
),
t
.
_v
(
" "
),
o
(
"el-dialog"
,{
attrs
:{
title
:
"插入音频"
,
visible
:
t
.
dialogVisibleMp3
,
"modal-append-to-body"
:
!
1
,
"close-on-click-modal"
:
!
1
,
center
:
""
,
"append-to-body"
:
!
0
,
width
:
"550px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
dialogVisibleMp3
=
e
}}},[
o
(
"el-form"
,{
attrs
:{
"label-width"
:
"80px"
}},[
o
(
"el-form-item"
,{
attrs
:{
label
:
"音频"
}},[
o
(
"el-upload"
,{
attrs
:{
action
:
"/api/public/upload"
,
"http-request"
:
t
.
uploadFileMp3
,
"before-upload"
:
t
.
beforeAvatarUploadAudio
,
"on-remove"
:
t
.
removeFileMp3
,
drag
:
""
,
"on-exceed"
:
t
.
handleExceed
,
multiple
:
""
,
limit
:
1
,
"file-list"
:
t
.
radio
}},[
o
(
"i"
,{
staticClass
:
"el-icon-upload"
}),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"el-upload__text"
},[
t
.
_v
(
"将文件拖到此处,或"
),
o
(
"em"
,[
t
.
_v
(
"点击上传"
)])]),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"el-upload__tip"
,
attrs
:{
slot
:
"tip"
},
slot
:
"tip"
},[
t
.
_v
(
"只能上传MP3文件,且不超过10MB"
)])])],
1
)],
1
),
t
.
_v
(
" "
),
o
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
o
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
dialogVisibleMp3
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
o
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
audioInter
}},[
t
.
_v
(
"确 定"
)])],
1
)],
1
)],
1
)},
staticRenderFns
:[]};
var
p
=
{
name
:
"index"
,
data
:
function
(){
return
{
total
:
0
,
nowPage
:
1
,
limit
:
10
,
contentTotal
:
0
,
contentNowPage
:
1
,
contentLimit
:
10
,
activeName
:
"keywords_reply"
,
modularList
:[],
modularContent
:[],
selectModular
:[],
questionListParams
:{
type
:
"1"
,
pid
:
""
},
postModularParams
:{
type
:
"1"
,
title
:
""
,
pid
:
""
,
keywords
:
""
,
content
:
""
},
postModularDialog
:
!
1
,
modularTitle
:
"新建模块"
,
postModularContentDialog
:
!
1
,
modularContentTitle
:
"新建话术内容"
,
typeArr
:[{
value
:
"1"
,
label
:
"话术类型"
},{
value
:
"2"
,
label
:
"流程类型"
}],
modularId
:
""
,
contentType
:
""
}},
components
:{
editorDetail
:
o
(
"VU/8"
)(
c
,
u
,
!
1
,
function
(
t
){
o
(
"Q1xo"
)},
"data-v-36033905"
,
null
).
exports
,
page
:
n
.
a
},
mounted
:
function
(){
this
.
getList
()},
filters
:{
type
:
function
(
t
){
return
"text"
===
t
?
"文本"
:
"voice"
===
t
?
"语音"
:
"video"
===
t
?
"视频"
:
"image"
===
t
?
"图片"
:
"news"
===
t
?
"图文"
:
"link"
===
t
?
"链接"
:
"news-item"
===
t
?
"图文链接"
:
t
}},
methods
:{
upcontent
:
function
(
t
,
e
){
var
o
=
this
;
if
(
console
.
log
(
t
,
e
),
0
!=
e
){
var
i
=
{
question_up_id
:
this
.
modularContent
[
e
].
id
,
question_down_id
:
this
.
modularContent
[
e
-
1
].
id
};
Object
(
a
.
_117
)(
i
).
then
(
function
(
t
){
o
.
handleChange
(
o
.
modularId
)})}},
downcontent
:
function
(
t
,
e
){
var
o
=
this
;
if
(
e
<=
this
.
modularContent
.
length
-
1
){
var
i
=
{
question_up_id
:
this
.
modularContent
[
e
+
1
].
id
,
question_down_id
:
this
.
modularContent
[
e
].
id
};
Object
(
a
.
_117
)(
i
).
then
(
function
(
t
){
o
.
handleChange
(
o
.
modularId
)})}},
upIndex
:
function
(
t
,
e
){
var
o
=
this
;
if
(
0
!=
e
){
var
i
=
{
question_up_id
:
this
.
modularList
[
e
].
id
,
question_down_id
:
this
.
modularList
[
e
-
1
].
id
};
Object
(
a
.
_117
)(
i
).
then
(
function
(
t
){
o
.
getList
()})}},
downIndex
:
function
(
t
,
e
){
var
o
=
this
;
if
(
e
<=
this
.
modularList
.
length
-
1
){
var
i
=
{
question_up_id
:
this
.
modularList
[
e
+
1
].
id
,
question_down_id
:
this
.
modularList
[
e
].
id
};
Object
(
a
.
_117
)(
i
).
then
(
function
(
t
){
o
.
getList
()})}},
delIndex
:
function
(
t
){
var
e
=
this
;
console
.
log
(
t
),
this
.
$confirm
(
"此操作将删除该记录?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
console
.
log
(
t
),
Object
(
a
.
V
)(
t
.
id
).
then
(
function
(
t
){
e
.
getList
(),
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})})})},
handleChange
:
function
(){
var
t
=
this
;
this
.
modularContent
=
[];
var
e
=
{
type
:
this
.
questionListParams
.
type
,
page
:
this
.
contentNowPage
,
limit
:
this
.
contentLimit
};
this
.
modularId
&&
(
e
.
pid
=
this
.
modularId
),
this
.
postModularParams
.
pid
=
this
.
modularId
,
Object
(
a
.
_67
)(
e
.
type
,
e
).
then
(
function
(
e
){
t
.
modularContent
=
e
.
list
,
console
.
log
(
e
),
t
.
contentTotal
=
e
.
total
})},
postModularContentInit
:
function
(){
this
.
contentType
=
"new"
,
this
.
postModularParams
.
title
=
""
,
this
.
postModularParams
.
keywords
=
""
,
this
.
postModularParams
.
content
=
""
,
this
.
postModularParams
.
type
=
this
.
questionListParams
.
type
,
this
.
postModularContentDialog
=!
0
},
postModularContentFn
:
function
(){
var
t
=
this
;
console
.
log
(
this
.
postModularParams
);
var
e
=
{};
if
(
"new"
==
this
.
contentType
){
if
(
this
.
modularContentTitle
=
"新建话术内容"
,
!
this
.
postModularParams
.
type
)
return
void
this
.
$message
({
message
:
"请选择类型!"
});
if
(
!
this
.
postModularParams
.
title
)
return
void
this
.
$message
({
message
:
"请输入标题!"
});
if
(
!
this
.
postModularParams
.
pid
)
return
void
this
.
$message
({
message
:
"请选择模块!"
});
if
(
!
this
.
postModularParams
.
keywords
)
return
void
this
.
$message
({
message
:
"请输入关键词!"
});
if
(
!
this
.
postModularParams
.
content
)
return
void
this
.
$message
({
message
:
"请填写内容!"
});
e
=
Object
.
assign
({},
this
.
postModularParams
),
Object
(
a
.
_105
)(
e
).
then
(
function
(
e
){
console
.
log
(
e
),
t
.
getList
(),
t
.
$message
({
type
:
"success"
,
message
:
"提交成功!"
});
var
o
=
{
type
:
t
.
questionListParams
.
type
,
pid
:
t
.
postModularParams
.
pid
};
Object
(
a
.
_67
)(
o
.
type
,
o
).
then
(
function
(
e
){
t
.
modularContent
=
e
.
list
,
console
.
log
(
e
)}),
t
.
postModularContentDialog
=!
1
})}
else
this
.
modularContentTitle
=
"编辑话术内容"
,
e
=
Object
.
assign
({},
this
.
postModularParams
),
console
.
log
(
e
),
Object
(
a
.
_138
)(
e
.
id
,
e
).
then
(
function
(
e
){
console
.
log
(
e
),
t
.
$message
({
type
:
"success"
,
message
:
"更新成功!"
}),
t
.
postModularContentDialog
=!
1
})},
editContent
:
function
(
t
){
var
e
=
this
;
this
.
contentType
=
"edit"
;
Object
(
a
.
_66
)(
t
.
id
).
then
(
function
(
t
){
e
.
postModularParams
=
Object
.
assign
({},
t
),
console
.
log
(
e
.
postModularParams
),
e
.
postModularContentDialog
=!
0
})},
editContentFn
:
function
(){},
editModular
:
function
(
t
){
this
.
postModularDialog
=!
0
,
this
.
modularTitle
=
"编辑模块"
,
this
.
postModularParams
=
Object
.
assign
({},
t
)},
postModularInit
:
function
(){
this
.
postModularDialog
=!
0
,
this
.
modularTitle
=
"新建模块"
,
this
.
postModularParams
.
title
=
""
},
postModularFn
:
function
(){
var
t
=
this
,
e
=
{};
if
(
"新建模块"
==
this
.
modularTitle
){
if
(
!
this
.
postModularParams
.
type
)
return
void
this
.
$message
({
message
:
"请选择类型!"
});
if
(
!
this
.
postModularParams
.
title
)
return
void
this
.
$message
({
message
:
"请填写标题!"
});
e
.
type
=
this
.
postModularParams
.
type
,
e
.
title
=
this
.
postModularParams
.
title
,
console
.
log
(
e
),
Object
(
a
.
_105
)(
e
).
then
(
function
(
e
){
console
.
log
(
e
),
t
.
getList
(),
t
.
$message
({
type
:
"success"
,
message
:
"提交成功!"
}),
t
.
postModularDialog
=!
1
})}
else
this
.
postModularParams
.
pid
=
""
,
e
.
type
=
this
.
postModularParams
.
type
,
e
.
title
=
this
.
postModularParams
.
title
,
e
.
id
=
this
.
postModularParams
.
id
,
console
.
log
(
e
),
Object
(
a
.
_138
)(
e
.
id
,
e
).
then
(
function
(
e
){
t
.
getList
(),
t
.
$message
({
type
:
"success"
,
message
:
"更新成功!"
}),
t
.
postModularDialog
=!
1
})},
onPageChange
:
function
(
t
){
this
.
nowPage
=
t
,
this
.
getList
()},
onSizeChange
:
function
(
t
){
this
.
nowPage
=
1
,
this
.
limit
=
t
,
this
.
getList
()},
onPageChangeC
:
function
(
t
){
this
.
contentNowPage
=
t
,
this
.
handleChange
()},
onSizeChangeC
:
function
(
t
){
this
.
contentNowPage
=
1
,
this
.
contentLimit
=
t
,
this
.
handleChange
()},
getList
:
function
(){
var
t
=
this
,
e
=
{
type
:
this
.
questionListParams
.
type
,
page
:
this
.
nowPage
,
limit
:
this
.
limit
};
this
.
questionListParams
.
pid
&&
(
e
.
pid
=
this
.
questionListParams
.
pid
),
Object
(
a
.
_67
)(
e
.
type
,
e
).
then
(
function
(
e
){
t
.
modularList
=
e
.
list
,
console
.
log
(
t
.
modularList
),
t
.
total
=
e
.
total
})},
delContent
:
function
(
t
){
var
e
=
this
;
console
.
log
(
t
),
this
.
$confirm
(
"此操作将删除该记录?"
,
"提示"
,{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
(){
console
.
log
(
t
),
Object
(
a
.
V
)(
t
.
id
).
then
(
function
(
t
){
var
o
=
{
type
:
e
.
questionListParams
.
type
};
o
.
pid
=
e
.
postModularParams
.
pid
,
Object
(
a
.
_67
)(
o
.
type
,
o
).
then
(
function
(
t
){
e
.
modularContent
=
t
.
list
,
console
.
log
(
t
)}),
e
.
$message
({
type
:
"success"
,
message
:
"删除成功!"
})})})},
handleClick
:
function
(
t
){
this
.
questionListParams
.
type
=
t
.
name
,
this
.
postModularParams
.
type
=
t
.
name
,
this
.
getList
()},
typeChange
:
function
(){
var
t
=
this
,
e
=
{
type
:
this
.
postModularParams
.
type
};
Object
(
a
.
_67
)(
e
.
type
,
e
).
then
(
function
(
e
){
t
.
selectModular
=
e
.
list
})}}},
m
=
{
render
:
function
(){
var
t
=
this
,
e
=
t
.
$createElement
,
o
=
t
.
_self
.
_c
||
e
;
return
o
(
"div"
,{
staticClass
:
"cssbox"
},[
o
(
"el-tabs"
,{
attrs
:{
type
:
"card"
},
on
:{
"tab-click"
:
t
.
handleClick
},
model
:{
value
:
t
.
questionListParams
.
type
,
callback
:
function
(
e
){
t
.
$set
(
t
.
questionListParams
,
"type"
,
e
)},
expression
:
"questionListParams.type"
}},[
o
(
"el-tab-pane"
,{
attrs
:{
label
:
"话术"
,
name
:
"1"
}}),
t
.
_v
(
" "
),
o
(
"el-tab-pane"
,{
attrs
:{
label
:
"流程"
,
name
:
"2"
}})],
1
),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"btnBox"
},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
postModularInit
}},[
t
.
_v
(
"新建模块"
)])],
1
),
t
.
_v
(
" "
),
o
(
"el-collapse"
,{
attrs
:{
accordion
:
""
},
on
:{
change
:
t
.
handleChange
},
model
:{
value
:
t
.
modularId
,
callback
:
function
(
e
){
t
.
modularId
=
e
},
expression
:
"modularId"
}},
t
.
_l
(
t
.
modularList
,
function
(
e
,
i
){
return
o
(
"el-collapse-item"
,{
key
:
i
,
attrs
:{
name
:
e
.
id
}},[
o
(
"template"
,{
slot
:
"title"
},[
t
.
_v
(
"
\n
"
+
t
.
_s
(
e
.
title
)
+
"
\n
"
),
o
(
"div"
,{
staticClass
:
"btn-block list2-btn"
},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
staticStyle
:{
"margin-left"
:
"20px"
},
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
o
){
t
.
editModular
(
e
)}}},[
t
.
_v
(
"编辑"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
o
){
t
.
delIndex
(
e
)}}},[
t
.
_v
(
"删除"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
o
){
t
.
upIndex
(
e
,
i
)}}},[
t
.
_v
(
"上移"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
o
){
t
.
downIndex
(
e
,
i
)}}},[
t
.
_v
(
"下移"
)])],
1
)]),
t
.
_v
(
" "
),
o
(
"div"
,{
staticClass
:
"btnBox"
},[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
type
:
"success"
,
plain
:
""
},
on
:{
click
:
t
.
postModularContentInit
}},[
t
.
_v
(
"新建模块内容"
)])],
1
),
t
.
_v
(
" "
),
o
(
"el-table"
,{
staticStyle
:{
width
:
"100%"
},
attrs
:{
data
:
t
.
modularContent
}},[
o
(
"el-table-column"
,{
attrs
:{
prop
:
"title"
,
label
:
"标题"
}}),
t
.
_v
(
" "
),
o
(
"el-table-column"
,{
attrs
:{
prop
:
"keywords"
,
label
:
"关键字"
}}),
t
.
_v
(
" "
),
o
(
"el-table-column"
,{
attrs
:{
label
:
"创建时间"
,
prop
:
"created_at"
}}),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-table-column"
,{
attrs
:{
width
:
"330"
,
label
:
"操作"
},
scopedSlots
:
t
.
_u
([{
key
:
"default"
,
fn
:
function
(
e
){
return
[
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"warning"
},
on
:{
click
:
function
(
o
){
t
.
editContent
(
e
.
row
)}}},[
t
.
_v
(
"编辑查看"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
,
type
:
"danger"
},
on
:{
click
:
function
(
o
){
t
.
delContent
(
e
.
row
)}}},[
t
.
_v
(
"删除"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
o
){
t
.
upcontent
(
e
.
row
,
e
.
$index
)}}},[
t
.
_v
(
"上移"
)]),
t
.
_v
(
" "
),
t
.
$store
.
state
.
readonly
?
t
.
_e
():
o
(
"el-button"
,{
attrs
:{
size
:
"mini"
,
plain
:
""
},
on
:{
click
:
function
(
o
){
t
.
downcontent
(
e
.
row
,
e
.
$index
)}}},[
t
.
_v
(
"下移"
)])]}}])})],
1
),
t
.
_v
(
" "
),
o
(
"page"
,{
attrs
:{
total
:
t
.
contentTotal
,
limit
:
t
.
contentLimit
},
on
:{
pageChange
:
t
.
onPageChangeC
,
sizeChange
:
t
.
onSizeChangeC
}})],
2
)})),
t
.
_v
(
" "
),
o
(
"page"
,{
attrs
:{
total
:
t
.
total
,
limit
:
t
.
limit
},
on
:{
pageChange
:
t
.
onPageChange
,
sizeChange
:
t
.
onSizeChange
}}),
t
.
_v
(
" "
),
o
(
"el-dialog"
,{
attrs
:{
title
:
t
.
modularTitle
,
center
:
""
,
visible
:
t
.
postModularDialog
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
postModularDialog
=
e
}}},[
o
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
postModularParams
}},[
o
(
"el-row"
,[
o
(
"el-col"
,{
attrs
:{
span
:
8
}},[
o
(
"el-form-item"
,{
attrs
:{
label
:
"标题"
,
"label-width"
:
"80px"
,
required
:
""
}},[
o
(
"el-input"
,{
model
:{
value
:
t
.
postModularParams
.
title
,
callback
:
function
(
e
){
t
.
$set
(
t
.
postModularParams
,
"title"
,
e
)},
expression
:
"postModularParams.title"
}})],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
1
!==
t
.
type
?
o
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
o
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
postModularDialog
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
o
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
t
.
postModularFn
}},[
t
.
_v
(
"确 定"
)])],
1
):
t
.
_e
()],
1
),
t
.
_v
(
" "
),
o
(
"el-dialog"
,{
ref
:
"ruleForm"
,
attrs
:{
title
:
t
.
modularContentTitle
,
center
:
""
,
visible
:
t
.
postModularContentDialog
,
width
:
"800px"
},
on
:{
"update:visible"
:
function
(
e
){
t
.
postModularContentDialog
=
e
}}},[
o
(
"el-form"
,{
ref
:
"form"
,
attrs
:{
model
:
t
.
postModularParams
}},[
o
(
"el-row"
,[
o
(
"el-col"
,{
attrs
:{
span
:
8
}},[
o
(
"el-form-item"
,{
attrs
:{
label
:
"标题"
,
"label-width"
:
"80px"
,
required
:
""
}},[
o
(
"el-input"
,{
model
:{
value
:
t
.
postModularParams
.
title
,
callback
:
function
(
e
){
t
.
$set
(
t
.
postModularParams
,
"title"
,
e
)},
expression
:
"postModularParams.title"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
o
(
"el-row"
,[
o
(
"el-col"
,{
attrs
:{
span
:
8
}},[
o
(
"el-form-item"
,{
attrs
:{
label
:
"关键词"
,
"label-width"
:
"80px"
,
required
:
""
}},[
o
(
"el-input"
,{
model
:{
value
:
t
.
postModularParams
.
keywords
,
callback
:
function
(
e
){
t
.
$set
(
t
.
postModularParams
,
"keywords"
,
e
)},
expression
:
"postModularParams.keywords"
}})],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
o
(
"el-row"
,[
o
(
"el-col"
,{
attrs
:{
span
:
24
}},[
o
(
"el-form-item"
,{
attrs
:{
label
:
"商品详情"
,
"label-width"
:
"80px"
,
required
:
""
}},[
o
(
"editor-detail"
,{
attrs
:{
lookData
:
t
.
postModularParams
}})],
1
)],
1
)],
1
)],
1
),
t
.
_v
(
" "
),
1
!==
t
.
type
?
o
(
"span"
,{
staticClass
:
"dialog-footer"
,
attrs
:{
slot
:
"footer"
},
slot
:
"footer"
},[
o
(
"el-button"
,{
on
:{
click
:
function
(
e
){
t
.
postModularContentDialog
=!
1
}}},[
t
.
_v
(
"取 消"
)]),
t
.
_v
(
" "
),
o
(
"el-button"
,{
attrs
:{
type
:
"primary"
},
on
:{
click
:
function
(
e
){
t
.
postModularContentFn
(
"ruleForm"
)}}},[
t
.
_v
(
"确 定"
)])],
1
):
t
.
_e
()],
1
)],
1
)},
staticRenderFns
:[]};
var
g
=
o
(
"VU/8"
)(
p
,
m
,
!
1
,
function
(
t
){
o
(
"Cpxi"
),
o
(
"G99E"
)},
"data-v-e2fedbb6"
,
null
);
e
.
default
=
g
.
exports
},
Cpxi
:
function
(
t
,
e
){},
G99E
:
function
(
t
,
e
){},
Q1xo
:
function
(
t
,
e
){}});
\ No newline at end of file
dist/static/js/app.893b249b6eab7a5d6cef.js
0 → 100644
View file @
0dc84ce0
webpackJsonp
([
56
],{
IcnI
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"NYxO"
),
a
=
t
(
"lRwf"
),
r
=
t
.
n
(
a
),
i
=
t
(
"zSLJ"
),
u
=
{
setToken
:
function
(
e
,
n
){
e
.
token
=
n
,
i
.
a
.
set
(
"cc_token"
,
n
)},
setUserName
:
function
(
e
,
n
){
e
.
userName
=
n
,
i
.
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
},
distribution
:
function
(
e
,
n
){
e
.
distribution
=
n
},
classManage
:
function
(
e
,
n
){
e
.
classManage
=
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
})}}};
r
.
a
.
use
(
o
.
a
);
n
.
a
=
new
o
.
a
.
Store
({
state
:{
show
:
!
1
,
userName
:
""
,
token
:
""
,
export
:
!
1
,
orderRefund
:
!
1
,
permission
:
!
1
,
readonly
:
!
0
,
deletePermission
:
!
1
,
distribution
:
!
1
,
classManage
:
!
1
,
mainLoad
:
!
0
,
menuList
:[],
menuType
:
!
1
,
nowTab
:
"first"
,
progressList
:[],
openedTab
:[{
value
:
"首页"
,
routerName
:
"first"
,
name
:
"first"
,
delNo
:
!
0
,
path
:
"/index"
}]},
mutations
:
u
,
actions
:{
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
){(
0
,
e
.
commit
)(
"deletePermission"
,
n
)},
distribution
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"distribution"
,
n
)},
classManage
:
function
(
e
,
n
){(
0
,
e
.
commit
)(
"classManage"
,
n
)}}})},
NHnr
:
function
(
e
,
n
,
t
){
"use strict"
;
Object
.
defineProperty
(
n
,
"__esModule"
,{
value
:
!
0
});
var
o
=
[{
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
(
9
)]).
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
(
14
)]).
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
(
25
)]).
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
(
15
)]).
then
(
function
(){
var
n
=
[
t
(
"OX9A"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"市场招生统计"
,
routerName
:
"marketStatistics"
,
path
:
"/marketStatistics"
,
cover
:
"2-5"
,
router
:{
path
:
"/marketStatistics"
,
name
:
"marketStatistics"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
51
)]).
then
(
function
(){
var
n
=
[
t
(
"SKyX"
)];
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
(
32
)]).
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
(
2
)]).
then
(
function
(){
var
n
=
[
t
(
"Y0Vi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"月课订单列表"
,
routerName
:
"monthOrder"
,
path
:
"/monthOrder"
,
cover
:
"5-10"
,
router
:{
path
:
"/monthOrder"
,
name
:
"monthOrder"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
5
)]).
then
(
function
(){
var
n
=
[
t
(
"xdzM"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"月课订单统计"
,
routerName
:
"monthOrderCount"
,
path
:
"/monthOrderCount"
,
cover
:
"5-12"
,
router
:{
path
:
"/monthOrderCount"
,
name
:
"monthOrderCount"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
41
)]).
then
(
function
(){
var
n
=
[
t
(
"v/LD"
)];
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
(
36
)]).
then
(
function
(){
var
n
=
[
t
(
"89rD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"业绩排行"
,
routerName
:
"achievement"
,
path
:
"/achievement"
,
cover
:
"5-7"
,
router
:{
path
:
"/achievement"
,
name
:
"achievement"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
22
)]).
then
(
function
(){
var
n
=
[
t
(
"Fmgy"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"话术列表"
,
routerName
:
"talkingSkill"
,
path
:
"/talkingSkill"
,
cover
:
"11-6"
,
router
:{
path
:
"/talkingSkill"
,
name
:
"talkingSkill"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
24
)]).
then
(
function
(){
var
n
=
[
t
(
"CUAv"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"用户管理"
,
icon
:
"icon-laoshi"
,
list
:[{
value
:
"用户列表"
,
routerName
:
"user"
,
path
:
"/user"
,
cover
:
"3-2"
,
router
:{
path
:
"/user"
,
name
:
"user"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
4
)]).
then
(
function
(){
var
n
=
[
t
(
"jFLA"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"老系统用户列表"
,
routerName
:
"oldUser"
,
path
:
"/oldUser"
,
cover
:
"3-3"
,
router
:{
path
:
"/oldUser"
,
name
:
"oldUser"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
35
)]).
then
(
function
(){
var
n
=
[
t
(
"K2yr"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"用户积分列表"
,
routerName
:
"integral"
,
path
:
"/integral"
,
cover
:
"3-4"
,
router
:{
path
:
"/integral"
,
name
:
"integral"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
13
)]).
then
(
function
(){
var
n
=
[
t
(
"NDyu"
)];
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
(
8
)]).
then
(
function
(){
var
n
=
[
t
(
"2qmY"
)];
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
(
37
)]).
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
(
47
).
then
(
function
(){
var
n
=
[
t
(
"usUK"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"订单统计"
,
routerName
:
"orderCount"
,
path
:
"/orderCount"
,
cover
:
"5-5"
,
router
:{
path
:
"/orderCount"
,
name
:
"orderCount"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
53
)]).
then
(
function
(){
var
n
=
[
t
(
"s7i+"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"日课订单统计"
,
routerName
:
"dayOrderCount"
,
path
:
"/dayOrderCount"
,
cover
:
"5-11"
,
router
:{
path
:
"/dayOrderCount"
,
name
:
"dayOrderCount"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
42
)]).
then
(
function
(){
var
n
=
[
t
(
"mjLz"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"优惠券列表"
,
routerName
:
"coupon"
,
path
:
"/coupon"
,
cover
:
"5-6"
,
router
:{
path
:
"/coupon"
,
name
:
"coupon"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
31
)]).
then
(
function
(){
var
n
=
[
t
(
"WvRy"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"扫码入课列表"
,
routerName
:
"notBuyClass"
,
path
:
"/notBuyClass"
,
cover
:
"5-8"
,
router
:{
path
:
"/notBuyClass"
,
name
:
"notBuyClass"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
23
)]).
then
(
function
(){
var
n
=
[
t
(
"E6Zo"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"外部订单列表"
,
routerName
:
"yunji"
,
path
:
"/yunji"
,
cover
:
"5-9"
,
router
:{
path
:
"/yunji"
,
name
:
"yunji"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
16
)]).
then
(
function
(){
var
n
=
[
t
(
"69L+"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"兑换码管理"
,
routerName
:
"exchange"
,
path
:
"/exchange"
,
cover
:
"5-13"
,
router
:{
path
:
"/exchange"
,
name
:
"exchange"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
12
)]).
then
(
function
(){
var
n
=
[
t
(
"CvLZ"
)];
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
(
21
)]).
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
(
18
)]).
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
(
19
)]).
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
(
26
)]).
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
(
27
)]).
then
(
function
(){
var
n
=
[
t
(
"Xhqp"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"二维码管理"
,
routerName
:
"qrcode"
,
path
:
"/qrcode"
,
cover
:
"7-6"
,
router
:{
path
:
"/qrcode"
,
name
:
"qrcode"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
17
)]).
then
(
function
(){
var
n
=
[
t
(
"lNiQ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"群发助手"
,
routerName
:
"groupSend"
,
path
:
"/groupSend"
,
cover
:
"7-7"
,
router
:{
path
:
"/groupSend"
,
name
:
"groupSend"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
10
)]).
then
(
function
(){
var
n
=
[
t
(
"oerw"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"关注取关统计"
,
routerName
:
"watchCount"
,
path
:
"/watchCount"
,
cover
:
"7-8"
,
router
:{
path
:
"/watchCount"
,
name
:
"watchCount"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
49
)]).
then
(
function
(){
var
n
=
[
t
(
"Dq6T"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"微信统计"
,
routerName
:
"weChatStatistics"
,
path
:
"/weChatStatistics"
,
cover
:
"7-10"
,
router
:{
path
:
"/weChatStatistics"
,
name
:
"weChatStatistics"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
52
)]).
then
(
function
(){
var
n
=
[
t
(
"5t3x"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"测试"
,
routerName
:
"test"
,
path
:
"/test"
,
cover
:
"7-11"
,
router
:{
path
:
"/test"
,
name
:
"test"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
29
)]).
then
(
function
(){
var
n
=
[
t
(
"9ZSL"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]},{
name
:
""
,
value
:
"系统管理"
,
icon
:
"icon-xitongquanxian"
,
list
:[{
value
:
"首页管理"
,
routerName
:
"banner"
,
path
:
"/banner"
,
cover
:
"7-5"
,
router
:{
path
:
"/banner"
,
name
:
"banner"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
33
)]).
then
(
function
(){
var
n
=
[
t
(
"CGL6"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"外部投放管理"
,
routerName
:
"externalLaunch"
,
path
:
"/externalLaunch"
,
cover
:
"7-9"
,
router
:{
path
:
"/externalLaunch"
,
name
:
"externalLaunch"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
45
)]).
then
(
function
(){
var
n
=
[
t
(
"NrkQ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"来源码管理"
,
routerName
:
"sourceManage"
,
path
:
"/sourceManage"
,
cover
:
"10-1"
,
router
:{
path
:
"/sourceManage"
,
name
:
"sourceManage"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
34
)]).
then
(
function
(){
var
n
=
[
t
(
"/ubI"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"短信发送记录"
,
routerName
:
"smsRecord"
,
path
:
"/smsRecord"
,
cover
:
"10-2"
,
router
:{
path
:
"/smsRecord"
,
name
:
"smsRecord"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
28
)]).
then
(
function
(){
var
n
=
[
t
(
"qjS+"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}},{
value
:
"系统配置"
,
routerName
:
"config"
,
path
:
"/config"
,
cover
:
"10-3"
,
router
:{
path
:
"/config"
,
name
:
"config"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
43
)]).
then
(
function
(){
var
n
=
[
t
(
"TPCG"
)];
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
(
40
)]).
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
(
38
)]).
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
(
54
)]).
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
(
30
)]).
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
(
39
)]).
then
(
function
(){
var
n
=
[
t
(
"WZgi"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}}]}],
a
=
{
name
:
"App"
,
data
:
function
(){
return
{}},
mounted
:
function
(){
var
e
=
this
;
if
(
window
.
location
.
href
.
indexOf
(
"login"
)
<
0
){
var
n
=
this
.
$store
.
state
.
progressList
;
console
.
log
(
this
.
$store
.
state
);
var
a
=
[];
this
.
$router
.
options
.
routes
[
0
].
children
=
[];
var
r
=
{
path
:
"/userDetail/:id"
,
name
:
"userDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
11
)]).
then
(
function
(){
var
n
=
[
t
(
"9PRC"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}},
i
=
{
path
:
"/teacher/:id"
,
name
:
"teacherDetail"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
6
)]).
then
(
function
(){
var
n
=
[
t
(
"hFUZ"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}};
o
.
forEach
(
function
(
t
){
var
o
=!
1
,
u
=
[];
t
.
list
.
forEach
(
function
(
t
){
var
a
=
n
.
find
(
function
(
e
){
return
e
.
cover
===
t
.
cover
});
a
&&
(
t
.
router
.
meta
=
{},
t
.
router
.
meta
.
readonly
=!!
a
.
readonly
,
t
.
router
.
meta
.
delete
=!!
a
.
delete
,
t
.
router
.
meta
.
export
=!!
a
.
export
,
t
.
router
.
meta
.
refund
=!!
a
.
refund
,
t
.
router
.
meta
.
distribution
=!!
a
.
distribution
,
u
.
push
(
t
),
"3-1"
===
a
.
cover
&&
(
i
.
meta
=
{},
i
.
meta
.
readonly
=
a
.
readonly
,
i
.
meta
.
delete
=!!
a
.
delete
,
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
i
)),
"3-2"
===
a
.
cover
&&
(
r
.
meta
=
{},
r
.
meta
.
readonly
=
a
.
readonly
,
r
.
meta
.
delete
=!!
a
.
delete
,
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
r
)),
e
.
$router
.
options
.
routes
[
0
].
children
.
push
(
t
.
router
),
o
=!
0
)}),
o
&&
(
t
.
list
=
u
,
a
.
push
(
t
))}),
this
.
$router
.
addRoutes
([
this
.
$router
.
options
.
routes
[
0
]]),
this
.
$store
.
dispatch
(
"setMenu"
,
a
)}}},
r
=
{
render
:
function
(){
var
e
=
this
.
$createElement
,
n
=
this
.
_self
.
_c
||
e
;
return
n
(
"div"
,{
attrs
:{
id
:
"app"
}},[
n
(
"router-view"
)],
1
)},
staticRenderFns
:[]};
var
i
=
t
(
"VU/8"
)(
a
,
r
,
!
1
,
function
(
e
){
t
(
"R3Es"
)},
null
,
null
).
exports
,
u
=
t
(
"lRwf"
),
c
=
t
.
n
(
u
),
l
=
t
(
"YaEn"
),
s
=
t
(
"IcnI"
),
h
=
t
(
"zL8q"
),
p
=
t
.
n
(
h
);
c
.
a
.
use
(
p
.
a
),
c
.
a
.
config
.
productionTip
=!
1
,
new
c
.
a
({
el
:
"#app"
,
store
:
s
.
a
,
router
:
l
.
a
,
components
:{
App
:
i
},
template
:
"<App/>"
})},
OMN4
:
function
(
e
,
n
){
e
.
exports
=
axios
},
R3Es
:
function
(
e
,
n
){},
YaEn
:
function
(
e
,
n
,
t
){
"use strict"
;
var
o
=
t
(
"IcnI"
),
a
=
t
(
"/ocq"
),
r
=
t
(
"zSLJ"
),
i
=
new
a
.
a
({
routes
:[{
path
:
"/"
,
name
:
"index"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
7
)]).
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
(
44
).
then
(
function
(){
var
n
=
[
t
(
"sJm1"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)}}]},{
path
:
"/login"
,
name
:
"login"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
50
)]).
then
(
function
(){
var
n
=
[
t
(
"0HId"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}},{
path
:
"/outManager"
,
name
:
"outManager"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
48
)]).
then
(
function
(){
var
n
=
[
t
(
"hLMI"
)];
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
(
46
)]).
then
(
function
(){
var
n
=
[
t
(
"iPJD"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}},{
path
:
"/newLesson"
,
name
:
"newLesson"
,
component
:
function
(
e
){
return
Promise
.
all
([
t
.
e
(
0
),
t
.
e
(
3
)]).
then
(
function
(){
var
n
=
[
t
(
"4t0V"
)];
e
.
apply
(
null
,
n
)}.
bind
(
this
)).
catch
(
t
.
oe
)},
meta
:{
skip_auth
:
!
0
}}]});
i
.
beforeEach
(
function
(
e
,
n
,
t
){
if
(
o
.
a
.
commit
(
"mainCanShow"
),
r
.
a
.
get
(
"cc_token"
)
&&
(
o
.
a
.
dispatch
(
"setToken"
,
r
.
a
.
get
(
"cc_token"
)),
o
.
a
.
dispatch
(
"setPermission"
,
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
))),
null
!==
r
.
a
.
get
(
"cc_user_name"
)
&&
o
.
a
.
dispatch
(
"setUserName"
,
r
.
a
.
get
(
"cc_user_name"
))),
o
.
a
.
state
.
nowTab
=
e
.
name
,
e
.
matched
.
length
>
1
&&
"first"
!==
e
.
name
){
for
(
var
a
=
void
0
,
i
=
0
;
i
<
o
.
a
.
state
.
menuList
.
length
;
i
++
)
for
(
var
u
=
o
.
a
.
state
.
menuList
[
i
],
c
=
0
;
c
<
u
.
list
.
length
;
c
++
){
var
l
=
u
.
list
[
c
];
l
.
path
===
e
.
path
&&
(
a
=
l
)}
o
.
a
.
state
.
openedTab
.
indexOf
(
a
)
<
0
&&
o
.
a
.
state
.
openedTab
.
push
(
a
)}
if
(
e
.
meta
.
readonly
?
o
.
a
.
dispatch
(
"readonly"
,
!
0
):
o
.
a
.
dispatch
(
"readonly"
,
!
1
),
o
.
a
.
state
.
orderRefund
=
e
.
meta
.
refund
,
o
.
a
.
state
.
export
=
e
.
meta
.
export
,
o
.
a
.
state
.
distribution
=
e
.
meta
.
distribution
,
o
.
a
.
state
.
classManage
=
e
.
meta
.
classManage
,
"userDetail"
===
e
.
name
){
var
s
=
JSON
.
parse
(
localStorage
.
getItem
(
"permission"
)).
find
(
function
(
e
){
return
"3-2"
===
e
.
cover
}).
readonly
;
o
.
a
.
dispatch
(
"readonly"
,
s
)}
e
.
meta
.
delete
?
o
.
a
.
dispatch
(
"deletePermission"
,
!
0
):
o
.
a
.
dispatch
(
"deletePermission"
,
!
1
),
e
.
matched
.
some
(
function
(
e
){
return
!
0
!==
e
.
meta
.
skip_auth
})
&&!
o
.
a
.
state
.
token
?
t
({
path
:
"/login"
}):
t
()}),
i
.
onError
(
function
(
e
){
var
n
=
e
.
message
.
match
(
/Loading chunk
(\d)
+ failed/g
),
t
=
i
.
history
.
pending
.
fullPath
;
n
&&
i
.
replace
(
t
)}),
n
.
a
=
i
},
lRwf
:
function
(
e
,
n
){
e
.
exports
=
Vue
},
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.3defc7637adf4a84c626.js
0 → 100644
View file @
0dc84ce0
!
function
(
e
){
var
c
=
window
.
webpackJsonp
;
window
.
webpackJsonp
=
function
(
a
,
n
,
r
){
for
(
var
t
,
b
,
o
,
i
=
0
,
u
=
[];
i
<
a
.
length
;
i
++
)
b
=
a
[
i
],
f
[
b
]
&&
u
.
push
(
f
[
b
][
0
]),
f
[
b
]
=
0
;
for
(
t
in
n
)
Object
.
prototype
.
hasOwnProperty
.
call
(
n
,
t
)
&&
(
e
[
t
]
=
n
[
t
]);
for
(
c
&&
c
(
a
,
n
,
r
);
u
.
length
;)
u
.
shift
()();
if
(
r
)
for
(
i
=
0
;
i
<
r
.
length
;
i
++
)
o
=
d
(
d
.
s
=
r
[
i
]);
return
o
};
var
a
=
{},
f
=
{
57
:
0
};
function
d
(
c
){
if
(
a
[
c
])
return
a
[
c
].
exports
;
var
f
=
a
[
c
]
=
{
i
:
c
,
l
:
!
1
,
exports
:{}};
return
e
[
c
].
call
(
f
.
exports
,
f
,
f
.
exports
,
d
),
f
.
l
=!
0
,
f
.
exports
}
d
.
e
=
function
(
e
){
var
c
=
f
[
e
];
if
(
0
===
c
)
return
new
Promise
(
function
(
e
){
e
()});
if
(
c
)
return
c
[
2
];
var
a
=
new
Promise
(
function
(
a
,
d
){
c
=
f
[
e
]
=
[
a
,
d
]});
c
[
2
]
=
a
;
var
n
=
document
.
getElementsByTagName
(
"head"
)[
0
],
r
=
document
.
createElement
(
"script"
);
r
.
type
=
"text/javascript"
,
r
.
charset
=
"utf-8"
,
r
.
async
=!
0
,
r
.
timeout
=
12
e4
,
d
.
nc
&&
r
.
setAttribute
(
"nonce"
,
d
.
nc
),
r
.
src
=
d
.
p
+
"static/js/"
+
e
+
"."
+
{
0
:
"22b9f9c8513cdca7c567"
,
1
:
"22c602926be7542a45aa"
,
2
:
"e72e4da577db66bfbfd3"
,
3
:
"1f9b133570251dd263a2"
,
4
:
"e4e737da94e19d605a39"
,
5
:
"cd28b355b094fd550585"
,
6
:
"9fb017aa9d2c936cb0dc"
,
7
:
"670a2c225289a798e09d"
,
8
:
"f67a885e69d4c25de8f9"
,
9
:
"749d9ca86798fddf280a"
,
10
:
"e817d2e3f07b44f52be1"
,
11
:
"2c9906287f4799e88131"
,
12
:
"e8a572b602d2218bd627"
,
13
:
"c90b3e6e860acdb95b65"
,
14
:
"1c0da6a3989dd58d5b09"
,
15
:
"232ad975a45cfb6e0b3f"
,
16
:
"fcf61047a95f5a8d16c0"
,
17
:
"6630d708ab3411593a3d"
,
18
:
"318ab907a57f3e8f01ed"
,
19
:
"7640a1eb3d11c5a2476a"
,
20
:
"b8a041ddbb63084e4df4"
,
21
:
"ee639989eb7378bbb2ec"
,
22
:
"f42077985dfd681d430b"
,
23
:
"0318833dc04e8a123f85"
,
24
:
"94a4fbe53937490711f2"
,
25
:
"d2db47ca2115ed3a2d7e"
,
26
:
"9b8dc290408bfac6369c"
,
27
:
"34d58530873e2caad410"
,
28
:
"924369670d723e44631a"
,
29
:
"cfc2c1cf2eaa1abdac35"
,
30
:
"8d4e2c41f64f660bfcf7"
,
31
:
"8ebff2c5e9300cce2ffa"
,
32
:
"fc6c4c512ac8b422d9d6"
,
33
:
"853bf90d5cf944afcbed"
,
34
:
"124613def50df4cf0400"
,
35
:
"0c38d97217385c855996"
,
36
:
"015a38e99f62e716ae0c"
,
37
:
"2291e1de70f2f3a5c363"
,
38
:
"6ba8b2e562c0115e1aff"
,
39
:
"666d08a33ff965694c0e"
,
40
:
"a428538efa12f8fbc786"
,
41
:
"08851c05b08dd579490c"
,
42
:
"0074ffe883cf99155337"
,
43
:
"a3e1f748c70de7d6d432"
,
44
:
"072e5d5c95e513a0fdc9"
,
45
:
"5e5fb5b6ce676aa278af"
,
46
:
"b78d2ec494bd6a7191d9"
,
47
:
"9cf806e0d226649b8d50"
,
48
:
"75ca63d4cf62f96cb645"
,
49
:
"7a4714d3196130bef53d"
,
50
:
"c0a5ba36281da5b8f035"
,
51
:
"3559593e690495539a69"
,
52
:
"824219557966e3856e64"
,
53
:
"c3bd96687c68c5af5822"
,
54
:
"fb83f6722cb93a34524e"
}[
e
]
+
".js"
;
var
t
=
setTimeout
(
b
,
12
e4
);
function
b
(){
r
.
onerror
=
r
.
onload
=
null
,
clearTimeout
(
t
);
var
c
=
f
[
e
];
0
!==
c
&&
(
c
&&
c
[
1
](
new
Error
(
"Loading chunk "
+
e
+
" failed."
)),
f
[
e
]
=
void
0
)}
return
r
.
onerror
=
r
.
onload
=
b
,
n
.
appendChild
(
r
),
a
},
d
.
m
=
e
,
d
.
c
=
a
,
d
.
d
=
function
(
e
,
c
,
a
){
d
.
o
(
e
,
c
)
||
Object
.
defineProperty
(
e
,
c
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
a
})},
d
.
n
=
function
(
e
){
var
c
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
d
.
d
(
c
,
"a"
,
c
),
c
},
d
.
o
=
function
(
e
,
c
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
c
)},
d
.
p
=
"/"
,
d
.
oe
=
function
(
e
){
throw
console
.
error
(
e
),
e
}}([]);
\ No newline at end of file
src/components/talkingSkill/editorDetail.vue
View file @
0dc84ce0
...
@@ -4,6 +4,7 @@
...
@@ -4,6 +4,7 @@
v-model=
'lookData.content'
:init=
'init'
></editor>
v-model=
'lookData.content'
:init=
'init'
></editor>
<div>
<div>
<div
class=
"imgInter"
@
click=
"showDialog()"
>
插入图片
</div>
<div
class=
"imgInter"
@
click=
"showDialog()"
>
插入图片
</div>
<div
class=
"MP3Inter"
@
click=
"showDialogMP3()"
>
插入音频
</div>
</div>
</div>
<el-dialog
<el-dialog
title=
"插入图片"
title=
"插入图片"
...
@@ -46,6 +47,37 @@
...
@@ -46,6 +47,37 @@
<el-button
type=
"primary"
@
click=
"imgInter"
>
确 定
</el-button>
<el-button
type=
"primary"
@
click=
"imgInter"
>
确 定
</el-button>
</span>
</span>
</el-dialog>
</el-dialog>
<el-dialog
title=
"插入音频"
:visible
.
sync=
"dialogVisibleMp3"
:modal-append-to-body=
"false"
:close-on-click-modal=
"false"
center
:append-to-body=
"true"
width=
"550px"
>
<el-form
label-width=
"80px"
>
<el-form-item
label=
"音频"
>
<el-upload
action=
"/api/public/upload"
:http-request=
"uploadFileMp3"
:before-upload=
"beforeAvatarUploadAudio"
:on-remove=
"removeFileMp3"
drag
:on-exceed=
"handleExceed"
multiple
:limit=
"1"
:file-list=
"radio"
>
<i
class=
"el-icon-upload"
></i>
<div
class=
"el-upload__text"
>
将文件拖到此处,或
<em>
点击上传
</em></div>
<div
class=
"el-upload__tip"
slot=
"tip"
>
只能上传MP3文件,且不超过10MB
</div>
</el-upload>
</el-form-item>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"dialogVisibleMp3 = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"audioInter"
>
确 定
</el-button>
</span>
</el-dialog>
</div>
</div>
</
template
>
</
template
>
...
@@ -94,7 +126,8 @@
...
@@ -94,7 +126,8 @@
height
:
500
,
height
:
500
,
plugins
:
'preview textpattern colorpicker lists code colorpicker fullpage textcolor wordcount contextmenu media'
,
plugins
:
'preview textpattern colorpicker lists code colorpicker fullpage textcolor wordcount contextmenu media'
,
branding
:
false
,
branding
:
false
,
}
},
dialogVisibleMp3
:
false
}
}
},
},
activated
(){
activated
(){
...
@@ -106,6 +139,41 @@
...
@@ -106,6 +139,41 @@
},
},
methods
:{
methods
:{
beforeAvatarUploadAudio
(
file
){
const
isJPG
=
(
file
.
type
===
'audio/mp3'
);
if
(
!
isJPG
)
{
this
.
$message
.
error
(
'上传音频只能选择MP3格式!'
);
}
return
isJPG
;
},
uploadFileMp3
(
a
){
uploadFileApi
({
file
:
a
.
file
,
type
:
'local'
}).
then
(
res
=>
{
this
.
$message
({
type
:
'success'
,
message
:
'上传成功!'
});
this
.
radio
=
[{
name
:
res
.
name
,
url
:
res
.
url
}];
})
},
removeFile
(){},
removeFileMp3
(){},
handleExceed
(){},
audioInter
(){
if
(
this
.
radio
.
length
<
1
){
this
.
$message
({
type
:
'error'
,
message
:
'请选择音频'
});
return
false
}
let
str
=
`<p style="text-align: center"><img class="mce-object mce-object-audio" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" width="280" height="55" data-mce-p-controls="controls" data-mce-html="%0A%3Csource%20src%3D%22https%3A//cdn.singsingenglish.com/
${
this
.
radio
[
0
].
url
}
%22%20type%3D%22audio/mpeg%22%20/%3E" data-mce-object="audio"></p>`
;
tinymce
.
activeEditor
.
insertContent
(
str
);
this
.
dialogVisibleMp3
=
false
},
showDialogMP3
(){
this
.
dialogVisibleMp3
=
true
;
this
.
radio
=
[]
},
beforeAvatarUploadImg
(
file
){
beforeAvatarUploadImg
(
file
){
const
isJPG
=
(
file
.
type
===
'image/jpeg'
||
file
.
type
===
'image/png'
);
const
isJPG
=
(
file
.
type
===
'image/jpeg'
||
file
.
type
===
'image/png'
);
if
(
!
isJPG
)
{
if
(
!
isJPG
)
{
...
@@ -213,6 +281,23 @@
...
@@ -213,6 +281,23 @@
}
}
}
}
}
}
.MP3Inter{
position: absolute;
display: inline-block;
text-shadow: 0 1px 1px rgba(255,255,255,0.75);
top: 3px;
left: 400px;
box-shadow: none;
filter: none;
padding: 4px 6px;
line-height: 1.4;
margin: 0 5px;
border: 1px solid transparent;
&:hover{
border-color: #e2e4e7;
cursor: pointer;
}
}
</
style
>
</
style
>
...
...
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