Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
common-templete
Overview
Overview
Details
Activity
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
汤强勇
common-templete
Commits
a2e41067
Commit
a2e41067
authored
Nov 02, 2018
by
高淑倩
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add:devproxy
parent
4151981c
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
338 additions
and
107 deletions
+338
-107
index.js
config/index.js
+16
-1
package-lock.json
package-lock.json
+0
-0
bus.js
src/common/bus.js
+6
-0
index.vue
src/components/Pagination/index.vue
+4
-4
index.js
src/filters/index.js
+1
-1
main.js
src/main.js
+19
-4
StepInfo.vue
src/pages/addmarketing/components/StepInfo.vue
+109
-9
AddMessage.vue
src/pages/marketing-center/components/AddMessage.vue
+2
-4
MarketingPush.vue
src/pages/marketing-center/components/MarketingPush.vue
+7
-5
MarketingTab.vue
src/pages/marketing-center/components/MarketingTab.vue
+39
-1
MateriaList.vue
src/pages/marketing-center/components/MateriaList.vue
+28
-9
PushDetail.vue
src/pages/marketing-center/components/PushDetail.vue
+62
-25
TempList.vue
src/pages/marketing-center/components/TempList.vue
+45
-44
pushbtn.png
static/image/pushbtn.png
+0
-0
No files found.
config/index.js
View file @
a2e41067
...
@@ -9,7 +9,22 @@ module.exports = {
...
@@ -9,7 +9,22 @@ module.exports = {
// Paths
// Paths
assetsSubDirectory
:
'static'
,
assetsSubDirectory
:
'static'
,
assetsPublicPath
:
'/'
,
assetsPublicPath
:
'/'
,
proxyTable
:
{},
proxyTable
:
{
'/materials-list'
:
{
changeOrigin
:
true
,
// 是否跨域
target
:
'http://testcenter.bigaka.net/crm/back/wechat/msg-mass/materials-list'
,
pathRewrite
:
{
'^/materials-list'
:
'/'
,
},
},
'/getarticlesummary'
:
{
changeOrigin
:
true
,
// 是否跨域
target
:
'http://testcenter.bigaka.net/crm/back/wechat/msg-mass/getarticlesummary'
,
pathRewrite
:
{
'^/getarticlesummary'
:
'/'
,
},
},
},
// Various Dev Server settings
// Various Dev Server settings
host
:
'localhost'
,
// can be overwritten by process.env.HOST
host
:
'localhost'
,
// can be overwritten by process.env.HOST
...
...
package-lock.json
View file @
a2e41067
This diff is collapsed.
Click to expand it.
src/common/bus.js
0 → 100644
View file @
a2e41067
import
Vue
from
'vue'
// 使用 Event Bus
const
Bus
=
new
Vue
()
export
default
Bus
src/components/Pagination/index.vue
View file @
a2e41067
<
template
>
<
template
>
<div
class=
"marketing-total"
>
<div
class=
"block"
>
<span
class=
"demonstration"
>
显示总数
</span>
<el-pagination
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"currentPage"
layout=
"total, prev, pager, next, jumper"
:total=
"dataList.totalCount"
>
<el-pagination
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage1"
:page-size=
"100"
layout=
"total, prev, pager, next"
:total=
"1000"
>
</el-pagination>
</el-pagination>
</div>
</div>
</
template
>
</
template
>
...
@@ -9,9 +8,10 @@
...
@@ -9,9 +8,10 @@
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
currentPage
1
:
5
currentPage
:
1
}
}
},
},
props
:
[
'dataList'
],
methods
:
{
methods
:
{
handleSizeChange
(
val
)
{
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
)
console
.
log
(
`每页
${
val
}
条`
)
...
...
src/filters/index.js
View file @
a2e41067
import
moment
from
'moment'
import
moment
from
'moment'
export
function
fomatDate
(
value
,
format
)
{
export
function
fomatDate
(
value
,
format
)
{
return
moment
(
value
).
format
(
format
||
'YYYY-MM-DD
,
HH:mm:ss'
)
return
moment
(
value
).
format
(
format
||
'YYYY-MM-DD HH:mm:ss'
)
}
}
src/main.js
View file @
a2e41067
...
@@ -7,22 +7,37 @@ import ElementUI from 'element-ui'
...
@@ -7,22 +7,37 @@ import ElementUI from 'element-ui'
import
'./assets/styles/reset.css'
import
'./assets/styles/reset.css'
import
'./assets/styles/common.css'
import
'./assets/styles/common.css'
import
'element-ui/lib/theme-chalk/index.css'
import
'element-ui/lib/theme-chalk/index.css'
import
qs
from
'qs'
import
Axios
from
'axios'
import
Axios
from
'axios'
import
*
as
filters
from
'./filters'
import
*
as
filters
from
'./filters'
import
{
http
}
from
'./plugin'
import
{
http
}
from
'./plugin'
// 引入echarts
// 引入echarts
import
echarts
from
'echarts'
import
echarts
from
'echarts'
// Axios.defaults.baseURL = 'http://testcenter.bigaka.net/crm'
Axios
.
interceptors
.
request
.
use
(
config
=>
{
if
(
config
.
method
===
'post'
)
{
config
.
data
=
qs
.
stringify
(
config
.
data
)
config
.
headers
[
'Content-Type'
]
=
'application/x-www-form-urlencoded'
}
return
config
},
error
=>
{
return
Promise
.
reject
(
error
)
}
)
Vue
.
use
(
ElementUI
)
Vue
.
use
(
ElementUI
)
Vue
.
use
(
http
)
Vue
.
use
(
http
)
Object
.
keys
(
filters
).
forEach
(
key
=>
{
Vue
.
filter
(
key
,
filters
[
key
])
})
Vue
.
config
.
productionTip
=
false
Vue
.
config
.
productionTip
=
false
Vue
.
prototype
.
axios
=
Axios
Vue
.
prototype
.
axios
=
Axios
Vue
.
prototype
.
$echarts
=
echarts
Vue
.
prototype
.
$echarts
=
echarts
Object
.
keys
(
filters
).
forEach
(
key
=>
{
Vue
.
filter
(
key
,
filters
[
key
])
})
/* eslint-disable no-new */
/* eslint-disable no-new */
new
Vue
({
new
Vue
({
el
:
'#app'
,
el
:
'#app'
,
...
...
src/pages/addmarketing/components/StepInfo.vue
View file @
a2e41067
...
@@ -9,10 +9,34 @@
...
@@ -9,10 +9,34 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"选择推送素材"
class=
"step-choose"
>
<el-form-item
label=
"选择推送素材"
class=
"step-choose"
>
<span
class=
"gray"
><span
class=
"star-red"
>
*
</span>
推送素材需前往
<a
href=
"#"
>
微信公众平台
</a>
-管理-素材管理维护。
</span>
<span
class=
"gray"
><span
class=
"star-red"
>
*
</span>
推送素材需前往
<a
href=
"#"
>
微信公众平台
</a>
-管理-素材管理维护。
</span>
<el-upload
class=
"upload-demo"
drag
action=
"https://jsonplaceholder.typicode.com/posts/"
multiple
>
<div
class=
"add-material"
>
<i
class=
"el-icon-plus"
style=
"font-size:50px;margin-top:50px"
></i>
<el-button
type=
"text"
@
click=
"centerDialogVisible = true"
class=
"add-title"
>
<div
class=
"el-upload__text"
>
添加微信素材
</div>
<p><i
class=
"el-icon-plus add-plus"
></i></p>
</el-upload>
添加微信素材
</el-button>
</div>
<el-dialog
title=
"微信消息素材"
:visible
.
sync=
"centerDialogVisible"
width=
"80%"
center
class=
"add-subtitle title"
>
<el-row>
<el-col
:span=
"24"
>
<div
class=
"add-line"
></div>
</el-col>
</el-row>
<el-row
:gutter=
"20"
class=
"add-container"
>
<el-col
:span=
"8"
>
<div
class=
"add-content"
>
1
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"add-content"
>
2
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"add-content"
>
3
</div>
</el-col>
</el-row>
<!--
<el-upload
class=
"avatar-uploader"
action=
"https://jsonplaceholder.typicode.com/posts/"
:show-file-list=
"false"
:on-success=
"handleAvatarSuccess"
:before-upload=
"beforeAvatarUpload"
>
<img
v-if=
"imageUrl"
:src=
"imageUrl"
class=
"avatar"
>
<i
v-else
class=
"el-icon-plus avatar-uploader-icon"
></i>
</el-upload>
-->
</el-dialog>
</el-form-item>
</el-form-item>
<el-form-item
label=
"选择推送范围"
>
<el-form-item
label=
"选择推送范围"
>
<el-radio-group
v-model=
"form.resource"
>
<el-radio-group
v-model=
"form.resource"
>
...
@@ -55,6 +79,8 @@
...
@@ -55,6 +79,8 @@
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
// import Bus from '@/common/bus'
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
...
@@ -71,9 +97,20 @@ export default {
...
@@ -71,9 +97,20 @@ export default {
input
:
''
,
input
:
''
,
checked
:
true
,
checked
:
true
,
dialogImageUrl
:
''
,
dialogImageUrl
:
''
,
dialogVisible
:
false
dialogVisible
:
false
,
centerDialogVisible
:
false
,
imageUrl
:
''
}
}
},
},
created
()
{
this
.
getViewCount
()
// Bus.on('test1', msg => {
// console.log('msg', msg)
// })
},
mounted
()
{
// this.getAddMaterial()
},
methods
:
{
methods
:
{
onSubmit
()
{
onSubmit
()
{
console
.
log
(
'submit!'
)
console
.
log
(
'submit!'
)
...
@@ -84,6 +121,36 @@ export default {
...
@@ -84,6 +121,36 @@ export default {
handlePictureCardPreview
(
file
)
{
handlePictureCardPreview
(
file
)
{
this
.
dialogImageUrl
=
file
.
url
this
.
dialogImageUrl
=
file
.
url
this
.
dialogVisible
=
true
this
.
dialogVisible
=
true
},
getViewCount
()
{
this
.
axios
.
post
(
'http://rap2api.taobao.org/app/mock/115626/pre_view_count'
,
{
tagIds
:
'1'
,
id
:
1
,
parentId
:
1
,
type
:
2
})
.
then
(
res
=>
{
if
(
res
&&
res
.
data
&&
res
.
data
.
code
===
0
)
{
console
.
log
(
res
.
data
.
result
)
// this.dataList = res.data.result.result
}
})
},
handleAvatarSuccess
(
res
,
file
)
{
this
.
imageUrl
=
URL
.
createObjectURL
(
file
.
raw
)
},
beforeAvatarUpload
(
file
)
{
const
isJPG
=
file
.
type
===
'image/jpeg'
const
isLt2M
=
file
.
size
/
1024
/
1024
<
2
if
(
!
isJPG
)
{
this
.
$message
.
error
(
'上传头像图片只能是 JPG 格式!'
)
}
if
(
!
isLt2M
)
{
this
.
$message
.
error
(
'上传头像图片大小不能超过 2MB!'
)
}
return
isJPG
&&
isLt2M
}
}
}
}
}
}
...
@@ -96,10 +163,43 @@ export default {
...
@@ -96,10 +163,43 @@ export default {
width
50
%
width
50
%
.step-choose
.step-choose
margin-top
60px
margin-top
60px
>>>
.el-upload-dragger
.add-material
border
1px
solid
#d9d9d9
width
265px
width
260px
height
229px
height
220px
border
2px
solid
#e3e4e9
color
#e3e4e9
text-align
center
position
relative
.add-title
color
#a4a4a4
.add-plus
font-size
91px
font-weight
100
margin
18px
0
color
#e3e4e9
text-align
center
>>>
.el-dialog__header
padding
4px
20px
0px
>>>
.el-dialog--center
text-align
left
>>>
.el-dialog__body
padding
0
>>>
.el-dialog__title
line-height
24px
font-size
15px
color
#73879C
.add-container
margin
0
padding
0
20px
20px
20px
.add-content
background-color
pink
padding
0
6px
border
1px
solid
#ececec
position
relative
top
30px
margin-bottom
35px
.add-line
border-top
1px
solid
#e5e5e5
.form-tags
.form-tags
background-color
#eee
background-color
#eee
height
260px
height
260px
...
...
src/pages/marketing-center/components/AddMessage.vue
View file @
a2e41067
...
@@ -15,7 +15,6 @@
...
@@ -15,7 +15,6 @@
<span>
<span>
<img
src=
"./../../../assets/images/auth.png"
>
<img
src=
"./../../../assets/images/auth.png"
>
</span>
</span>
<!--
<span>
已授权
</span>
-->
</div>
</div>
</div>
</div>
<div
class=
"left-icon"
>
<div
class=
"left-icon"
>
...
@@ -35,7 +34,7 @@
...
@@ -35,7 +34,7 @@
</el-col>
</el-col>
<el-col
:span=
"10"
class=
"button-right"
>
<el-col
:span=
"10"
class=
"button-right"
>
<div
class=
"left-title button-right"
style=
"flex:1"
>
<div
class=
"left-title button-right"
style=
"flex:1"
>
<div
class=
"left-title-name"
>
<div
class=
"left-title-name
fl
"
>
<span>
<span>
<img
src=
"./../../../assets/images/message.png"
>
<img
src=
"./../../../assets/images/message.png"
>
</span>
</span>
...
@@ -43,11 +42,10 @@
...
@@ -43,11 +42,10 @@
<span
class=
"star-red"
>
*
</span>
<span
class=
"star-red"
>
*
</span>
<a
href=
"#"
class=
"gray"
>
点击新建群发
</a>
<a
href=
"#"
class=
"gray"
>
点击新建群发
</a>
</div>
</div>
<div
class=
"left-title-message"
>
<div
class=
"left-title-message
fr
"
>
<span>
<span>
<img
src=
"./../../../assets/images/unauth.png"
>
<img
src=
"./../../../assets/images/unauth.png"
>
</span>
</span>
<!--
<span>
未授权
</span>
-->
</div>
</div>
</div>
</div>
<div
class=
"right-marketing"
>
<div
class=
"right-marketing"
>
...
...
src/pages/marketing-center/components/MarketingPush.vue
View file @
a2e41067
...
@@ -2,17 +2,17 @@
...
@@ -2,17 +2,17 @@
<div>
<div>
<div
class=
"marketing-title"
>
<div
class=
"marketing-title"
>
<el-row
class=
"top-left"
>
<el-row
class=
"top-left"
>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<span
class=
"top-title"
>
营销推送
</span>
<span
class=
"top-title"
>
营销推送
</span>
<span
class=
"top-tips"
>
<span
class=
"top-tips"
>
<span
class=
"star-red"
>
*
</span>
<span
class=
"star-red"
>
*
</span>
支持
<a
href=
"#"
>
会员标签
</a>
支持
<a
href=
"#"
>
会员标签
</a>
体系下的精准消息推送
</span>
体系下的精准消息推送
</span>
</el-col>
</el-col>
<el-col
:span=
"1
0
"
class=
"top-right"
>
<el-col
:span=
"1
2
"
class=
"top-right"
>
<span><i
class=
"el-icon-question"
></i>
营销推送
</span>
<span><i
class=
"el-icon-question"
></i>
微信营销推送怎么玩
</span>
<span><i
class=
"el-icon-question"
></i>
营销推送
</span>
<span><i
class=
"el-icon-question"
></i>
微信软文如何精准营销
</span>
<span><i
class=
"el-icon-question"
></i>
营销推送
</span>
<span><i
class=
"el-icon-question"
></i>
短信营销怎么配置
</span>
</el-col>
</el-col>
</el-row>
</el-row>
<el-row></el-row>
<el-row></el-row>
...
@@ -90,6 +90,8 @@ export default {
...
@@ -90,6 +90,8 @@ export default {
font-size
14px
font-size
14px
color
#496D92
color
#496D92
text-align
left
text-align
left
i
margin-right
3px
.marketing-subtitle
.marketing-subtitle
height
130px
height
130px
.subtitle-img
.subtitle-img
...
...
src/pages/marketing-center/components/MarketingTab.vue
View file @
a2e41067
<
template
>
<
template
>
<el-tabs
v-model=
"tabActive"
type=
"card"
@
tab-click=
"handleClick"
>
<el-tabs
v-model=
"tabActive"
type=
"card"
@
tab-click=
"handleClick"
class=
"market-tabs"
>
<el-tab-pane
label=
"图文素材消息"
name=
"first"
>
<el-tab-pane
label=
"图文素材消息"
name=
"first"
>
<materia-list></materia-list>
<materia-list></materia-list>
<push-detail></push-detail>
<push-detail></push-detail>
...
@@ -32,10 +32,48 @@ export default {
...
@@ -32,10 +32,48 @@ export default {
ArticleDetails
,
ArticleDetails
,
TempList
TempList
},
},
created
()
{
// this.getData()
},
methods
:
{
methods
:
{
handleClick
(
tab
,
event
)
{
handleClick
(
tab
,
event
)
{
console
.
log
(
tab
,
event
)
console
.
log
(
tab
,
event
)
},
getData
()
{
this
.
axios
.
post
(
'http://rap2api.taobao.org/app/mock/115626/getarticlesummary'
,
{
mediaId
:
'1'
})
.
then
(
res
=>
{
console
.
log
(
'res'
,
res
)
})
}
}
}
}
}
}
</
script
>
</
script
>
<
style
lang=
"stylus"
scoped
>
.market-tabs
>>>
.el-tabs__nav
margin-left
36px
border
none
background-color
transparent
>>>
.el-tabs__item
color
rgb
(
115
,
135
,
156
)
border
1px
solid
#e4e7ed
margin-right
10px
background-color
#e4e7ed
border-radius
4px
>>>
.el-tabs__item
:hover
color
#000
>>>
.el-tabs__item.is-active
background
#fff
color
#000
border-right
5px
solid
#e4e7ed
border-bottom
1px
solid
#e4e7ed
>>>
.el-tabs__item
:first-child
border-left
2px
solid
#e4e7ed
>>>
.el-tabs__header
border
none
>>>
.el-tabs__nav
.el-tabs__item
margin-right
12px
</
style
>
src/pages/marketing-center/components/MateriaList.vue
View file @
a2e41067
<
template
>
<
template
>
<div
class=
"materialist clear"
>
<div
class=
"materialist clear"
>
<ul>
<ul>
<li
v-for=
"(item,index) in
datal
ist"
:key=
"index"
@
click=
"handleClick(index)"
>
<li
v-for=
"(item,index) in
imgL
ist"
:key=
"index"
@
click=
"handleClick(index)"
>
<img
:src=
"i
mg1
"
alt=
""
>
<img
:src=
"i
tem.thumb_url
"
alt=
""
>
</li>
</li>
</ul>
</ul>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
img1
from
'./../../../assets/images/img1.png
'
import
Bus
from
'@/common/bus
'
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
datalist
:
[],
datalist
:
[],
img
1
img
List
:
[]
}
}
},
},
created
()
{
created
()
{
...
@@ -23,11 +23,30 @@ export default {
...
@@ -23,11 +23,30 @@ export default {
},
},
methods
:
{
methods
:
{
getDataList
()
{
getDataList
()
{
this
.
axios
.
get
(
'http://rap2api.taobao.org/app/mock/115626/getMateriaList'
).
then
(
res
=>
{
// this.axios
if
(
res
&&
res
.
data
)
{
// .post('http://rap2api.taobao.org/app/mock/115626/materials-list', {
this
.
datalist
=
res
.
data
.
datalist
// pageNo: 1,
}
// pageSize: 10
})
// })
// .then(res => {
// if (res && res.data && res.data.code === 0) {
// res.data.result.result.forEach(item => {
// this.imgList = item.content.news_item
// Bus.$emit('test1', 1213)
// })
// }
// })
this
.
axios
.
post
(
'/materials-list'
,
{
pageNo
:
1
,
pageSize
:
20
})
.
then
(
res
=>
{
if
(
res
&&
res
.
data
)
{
console
.
log
(
'res'
,
res
)
// this.datalist = res.data.datalist
}
})
},
},
handleClick
(
index
)
{
handleClick
(
index
)
{
console
.
log
(
'li'
,
index
)
console
.
log
(
'li'
,
index
)
...
...
src/pages/marketing-center/components/PushDetail.vue
View file @
a2e41067
<
template
>
<
template
>
<div
class=
"detail-all clear"
>
<div
class=
"detail-all clear"
>
<el-row>
<el-row>
<el-col
:span=
"12"
v-for=
"(item, index) in
data
List"
:key=
"index"
>
<el-col
:span=
"12"
v-for=
"(item, index) in
push
List"
:key=
"index"
>
<div
class=
"detail-single"
>
<div
class=
"detail-single"
>
<div
class=
"detail-top"
>
<div
class=
"detail-top"
>
<span
class=
"top-name detail-title"
>
{{
item
.
nam
e
}}
</span>
<span
class=
"top-name detail-title"
>
{{
item
.
titl
e
}}
</span>
<div
class=
"top-right fr"
>
<div
class=
"top-right fr"
>
<span
class=
"top-time detail-title"
>
{{
item
.
time
}}
</span>
<span
class=
"top-time detail-title"
>
{{
item
.
pushTime
|
fomatDate
}}
</span>
<span
class=
"top-state"
>
{{
item
.
result
}}
</span>
<span
class=
"top-pushbtn"
>
<img
src=
"./../../../../static/image/pushbtn.png"
>
<span
class=
"top-state"
v-if=
"item.status === 0"
>
推送中
</span>
<span
class=
"top-state"
v-if=
"item.status === 1"
>
推送成功
</span>
<span
class=
"top-state"
v-if=
"item.status === -1"
>
推送失败
</span>
</span>
</div>
</div>
</div>
</div>
<div
class=
"detail-data"
>
<div
class=
"detail-data"
>
<span>
<span
v-if=
"item.status !== -1"
>
<span
class=
"detail-title"
>
推送人数:
</span>
{{
item
.
num
}}
<span>
<span
class=
"detail-title"
>
推送人数:
</span>
{{
item
.
pushCount
}}
</span>
<span
class=
"detail-title result-add"
>
推送成功:
</span>
{{
item
.
sentCount
}}
</span>
</span>
<span
class=
"detail-title result-add"
>
推送成功:
</span>
{{
item
.
suc
}}
<span
v-if=
"item.status !== -1 && item.status !==0 && item.status !==1"
class=
"detail-title"
>
失败原因:
{{
item
.
status
}}
</span>
<!--
<span
class=
"detail-title"
>
失败原因:
</span>
{{
item
.
suc
}}
-->
<el-button
class=
"fr"
slot=
"reference"
v-if=
"item.scope === 0"
>
全体推送
</el-button>
<!--
<span
class=
"detail-title fr"
>
{{
item
.
type
}}
</span>
-->
<el-popover
placement=
"right"
title=
"标签"
width=
"200"
trigger=
"click"
v-if=
"item.scope === 1"
>
<el-popover
placement=
"bottom"
title=
"标签"
width=
"200"
trigger=
"click"
>
<div>
<div>
<button>
1
</button>
<button
v-for=
"item in item.tagList"
:key=
"item"
class=
"detail-tagbtn"
>
{{
item
}}
</button>
<button>
1
</button>
<button>
1
</button>
</div>
</div>
<el-button
class=
"fr"
slot=
"reference"
>
{{
item
.
type
}}
</el-button>
<el-button
class=
"fr"
slot=
"reference"
>
精准推送
</el-button>
</el-popover>
</el-popover>
</div>
</div>
<div
class=
"detail-node"
>
<div
class=
"detail-node"
>
<span
class=
"detail-title"
>
创建推送节点:
</span>
{{
item
.
nod
e
}}
<span
class=
"detail-title"
>
创建推送节点:
</span>
{{
item
.
clerkNam
e
}}
</div>
</div>
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
<pagination></pagination>
<pagination
v-show=
"pushList.length > 6"
:dataList=
"dataList"
class=
"detail-pagination"
></pagination>
</div>
</div>
</
template
>
</
template
>
...
@@ -41,7 +46,8 @@ import Pagination from 'components/Pagination'
...
@@ -41,7 +46,8 @@ import Pagination from 'components/Pagination'
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
dataList
:
[]
dataList
:
[],
pushList
:
[]
}
}
},
},
components
:
{
components
:
{
...
@@ -52,11 +58,19 @@ export default {
...
@@ -52,11 +58,19 @@ export default {
},
},
methods
:
{
methods
:
{
GetPushDetail
()
{
GetPushDetail
()
{
this
.
axios
.
get
(
'http://rap2api.taobao.org/app/mock/115626/getPushDetails'
).
then
(
res
=>
{
this
.
axios
if
(
res
&&
res
.
data
)
{
.
post
(
'http://rap2api.taobao.org/app/mock/115626/list-data'
,
{
this
.
dataList
=
res
.
data
.
dataList
pageNo
:
1
,
}
pageSize
:
10
,
})
type
:
1
,
mediaId
:
2
})
.
then
(
res
=>
{
if
(
res
&&
res
.
data
&&
res
.
data
.
code
===
0
)
{
this
.
dataList
=
res
.
data
.
result
this
.
pushList
=
this
.
dataList
.
result
}
})
}
}
}
}
}
}
...
@@ -82,9 +96,16 @@ export default {
...
@@ -82,9 +96,16 @@ export default {
height
40px
height
40px
line-height
40px
line-height
40px
.top-right
.top-right
.top-state
.top-pushbtn
border
1px
solid
gray
position
relative
padding
5px
margin-left
20px
.top-state
padding
5px
position
absolute
top
-17px
right
3px
.detail-pagination
text-align
right
.detail-data
,
.detail-node
.detail-data
,
.detail-node
height
40px
height
40px
line-height
40px
line-height
40px
...
@@ -94,4 +115,20 @@ export default {
...
@@ -94,4 +115,20 @@ export default {
background
#fbfcfc
background
#fbfcfc
width
74px
width
74px
height
27px
height
27px
.detail-tagbtn
width
100px
height
25px
line-height
25px
display
inline-block
width
90px
overflow
hidden
border
1px
solid
transparent
border-radius
12px
background
#0096ff
text-align
center
color
#fff
padding
0px
3px
vertical-align
top
font-size
13px
margin-bottom
20px
</
style
>
</
style
>
src/pages/marketing-center/components/TempList.vue
View file @
a2e41067
...
@@ -43,20 +43,36 @@
...
@@ -43,20 +43,36 @@
</el-form>
</el-form>
<el-table
:data=
"dataList"
>
<el-table
:data=
"dataList"
>
<el-table-column
prop=
"id"
label=
"推送名称"
width=
"
14
0"
>
<el-table-column
prop=
"id"
label=
"推送名称"
width=
"
8
0"
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"push_state"
label=
"推送类型"
width=
"
12
0"
>
<el-table-column
prop=
"push_state"
label=
"推送类型"
width=
"
8
0"
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"推送时间"
>
<el-table-column
label=
"推送时间"
width=
"170"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
push_time
|
fomatDate
}}
{{
scope
.
row
.
push_time
|
fomatDate
}}
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"title"
label=
"推送范围"
>
<el-table-column
prop=
"title"
label=
"推送范围"
width=
"260"
>
<
template
slot-scope=
"scope"
>
<span
class=
"temp-tablespan"
>
{{
scope
.
row
.
title
}}
</span>
<span
class=
"temp-tablespan"
>
{{
scope
.
row
.
title
}}
</span>
<el-popover
placement=
"bottom"
title=
"标签"
width=
"200"
trigger=
"click"
>
<div>
<button>
1
</button>
<button>
1
</button>
<button>
1
</button>
</div>
<el-button
class=
"fr temp-tablesmore"
slot=
"reference"
>
更多
</el-button>
</el-popover>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"title"
label=
"推送人数"
>
<el-table-column
prop=
"title"
label=
"推送人数"
width=
"80"
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"title"
label=
"推送成功人数"
>
<el-table-column
prop=
"title"
label=
"推送成功人数"
width=
"110"
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"title"
label=
"创建消息节点"
>
<el-table-column
prop=
"title"
label=
"创建消息节点"
>
</el-table-column>
</el-table-column>
...
@@ -121,48 +137,33 @@ export default {
...
@@ -121,48 +137,33 @@ export default {
>>>
.el-input__inner
>>>
.el-input__inner
min-width
220px
min-width
220px
.temp-list
.temp-list
.el-button
:focus
,
.el-button
:hover
,
.el-button
:active
background-color
#f5f7fa
.temp-button
.temp-button
height
50px
height
50px
width
120px
width
120px
.temp-tablespan
display
inline-block
width
90px
overflow
hidden
border
1px
solid
transparent
border-radius
12px
background
#0096FF
text-align
center
color
#fff
padding
0px
3px
vertical-align
top
font-size
13px
line-height
28px
.temp-tablesmore
padding
0
border
none
color
#0379cb
font-size
13px
line-height
28px
&
::hover
color
#0379cb
.time-line
.time-line
margin-left
20px
margin-left
20px
margin-right
20px
margin-right
20px
</
style
>
</
style
>
{
"dataList": [
{
"name": "sdfsdf",
"template": "微信营销",
"time": "2018-10-18 17:20:47",
"type": "全体推送",
"state": "推送ing",
"num": "23",
"suc": "0",
"node": "测试组商户",
"result": "推送chenggong"
},
{
"name": "sdfsdf",
"template": "微信营销",
"time": "2018-10-18 17:20:47",
"type": "全体推送",
"state": "推送ing",
"num": "23",
"suc": "0",
"node": "测试组商户",
"result": "推送chenggong"
},
{
"name": "sdfsdf",
"template": "微信营销",
"time": "2018-10-18 17:20:47",
"type": "全体推送",
"state": "推送ing",
"num": "23",
"suc": "0",
"node": "测试组商户",
"result": "推送chenggong"
}
]
}
static/image/pushbtn.png
0 → 100644
View file @
a2e41067
815 Bytes
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