Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
e730d6d8
Commit
e730d6d8
authored
Nov 28, 2019
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增消息推送管理
parent
bf3fd401
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
342 additions
and
0 deletions
+342
-0
pushManagement.vue
src/components/activity/pushManagement.vue
+334
-0
config.js
src/router/config.js
+8
-0
No files found.
src/components/activity/pushManagement.vue
0 → 100644
View file @
e730d6d8
<
style
>
</
style
>
<
template
>
<div
class=
"flexOne pushManagement"
>
<div
class=
"query-box"
>
<ul
class
>
<li>
<span>
<em>
{{
$t
(
'salesModule.keyWords'
)
}}
</em>
</span>
<el-input
v-model=
"msg.SendTitle"
:placeholder=
"$t('pub.pleaseImport')"
></el-input>
</li>
<li>
<input
type=
"button"
@
click=
"getList"
class=
"hollowFixedBtn"
:value=
"$t('pub.searchBtn')"
>
<input
type=
"button"
@
click=
"outerVisible = true,dialogTitle='新增推送', addMsg.reqType = 'add',resetInfo()"
class=
"normalBtn"
:value=
"$t('pub.addBtn')"
>
</li>
</ul>
</div>
<div
class=
"clearfix"
></div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th>
序号
</th>
<th>
主题
</th>
<th>
内容
</th>
<th>
推送方式
</th>
<th>
创建日期
</th>
<th>
操作
</th>
</tr>
<tr
v-for=
"(item, index) in dataList"
>
<td>
{{
index
}}
</td>
<td>
{{
item
.
SendTitle
}}
</td>
<td>
{{
item
.
SendContent
}}
</td>
<td>
{{
item
.
SendProgramTypeStr
}}
</td>
<td>
{{
item
.
CreateDate
.
replace
(
'T'
,
' '
)
}}
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"禁用"
placement=
"top"
>
<el-button
type=
"danger"
icon=
"iconfont icon-jinyong"
circle
@
click=
"deleteItem(item.ID)"
></el-button>
</el-tooltip>
</td>
</tr>
</table>
<div
class=
"noDataNotice"
v-if=
"dataList.length
<1
"
>
<i
class=
"iconfont icon-kong"
></i>
<p>
{{
$t
(
"active.ld_noData"
)
}}
</p>
</div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
v-if=
"dataList.length>0"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
></el-pagination>
<el-dialog
custom-class=
"w400"
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
:before-close=
"closeChangeMachie"
>
<el-form
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"100px"
>
<el-form-item
label=
"主题"
prop=
"SendTitle"
>
<el-input
type=
"text"
v-model=
"addMsg.SendTitle"
class=
"w217"
></el-input>
</el-form-item>
<el-form-item
label=
"内容"
prop=
"SendContent"
>
<el-input
type=
"textarea"
v-model=
"addMsg.SendContent"
class=
"w217"
></el-input>
</el-form-item>
<el-form-item
label=
"推送方式"
>
<el-select
filterable
v-model=
"addMsg.SendProgramType"
>
<el-option
label=
"不限"
:value=
"0"
:key=
"0"
></el-option>
<el-option
v-for=
"item in modeList"
:label=
"item.name"
:value=
"item.id"
:key=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"App链接"
v-if=
"addMsg.SendProgramType == 0 || addMsg.SendProgramType == 2"
>
<el-input
type=
"text"
v-model=
"addMsg.AppUrl"
class=
"w217"
></el-input>
</el-form-item>
<el-form-item
label=
"小程序链接"
v-if=
"addMsg.SendProgramType == 0 || addMsg.SendProgramType == 1"
>
<el-input
type=
"text"
v-model=
"addMsg.MinProgram"
class=
"w217"
></el-input>
</el-form-item>
<el-form-item
label=
"推送时间"
prop=
"SendDate"
>
<el-date-picker
v-model=
'addMsg.SendDate'
:picker-options=
"pickerOptions0"
class=
'w217'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</el-form-item>
<el-form-item
label=
"所属公司"
>
<el-select
filterable
v-model=
"addMsg.RB_Branch_id"
>
<el-option
label=
"不限"
:value=
"-1"
:key=
"-1"
></el-option>
<el-option
v-for=
"item in companyList"
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"状态"
>
<el-select
filterable
class=
'w217'
v-model=
'addMsg.CustomerStatus'
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
"不限"
:value=
"0"
></el-option>
<el-option
label=
"未审核"
:value=
"1"
></el-option>
<el-option
label=
"已审核"
:value=
"2"
></el-option>
<el-option
label=
"已拒绝"
:value=
"3"
></el-option>
<el-option
label=
"黑名单"
:value=
"4"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"幸福存折"
>
<el-input
type=
"number"
v-model=
"addMsg.MinPassbook"
class=
"w100"
></el-input>
-
<el-input
type=
"number"
v-model=
"addMsg.MaxPassbook"
class=
"w100"
></el-input>
</el-form-item>
<el-form-item
label=
"交易额"
>
<el-input
type=
"number"
v-model=
"addMsg.MinTurnover"
class=
"w100"
></el-input>
-
<el-input
type=
"number"
v-model=
"addMsg.MaxTurnover"
class=
"w100"
></el-input>
</el-form-item>
<el-form-item
label=
"优惠券"
>
<el-input
type=
"number"
v-model=
"addMsg.MinCoupons"
class=
"w100"
></el-input>
-
<el-input
type=
"number"
v-model=
"addMsg.MaxCoupons"
class=
"w100"
></el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible = false, resetForm('addMsg')"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
<button
class=
"normalBtn"
@
click=
"submitForm('addMsg')"
>
{{
$t
(
'pub.saveBtn'
)
}}
</button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
modeList
:
[
{
name
:
"小程序"
,
id
:
1
},
{
name
:
"APP"
,
id
:
2
}
],
//请求
msg
:
{
SendTitle
:
''
,
pageIndex
:
1
,
pageSize
:
10
,
},
pickerOptions0
:
{
disabledDate
(
time
)
{
return
time
.
getTime
()
<
Date
.
now
()
-
8.64e7
;
//如果没有后面的-8.64e7就是不可以选择今天的
}
},
addMsg
:
{
ID
:
0
,
SendTitle
:
''
,
SendContent
:
''
,
SendType
:
1
,
SendDate
:
''
,
SendProgramType
:
0
,
AppUrl
:
''
,
MinProgram
:
''
,
RB_Branch_id
:
''
,
CustomerStatus
:
0
,
MinTurnover
:
0
,
MaxTurnover
:
0
,
MinCoupons
:
0
,
MaxCoupons
:
0
,
MinPassbook
:
0
,
MaxPassbook
:
0
,
},
rules
:
{
SendTitle
:
[
{
required
:
true
,
message
:
"请输入主题"
,
trigger
:
"blur"
}
],
SendContent
:
[
{
required
:
true
,
message
:
"请输入内容"
,
trigger
:
"blur"
}
],
SendDate
:
[
{
required
:
true
,
message
:
"请选择推送日期"
,
trigger
:
"change"
}
]
},
loading
:
false
,
outerVisible
:
false
,
dialogTitle
:
""
,
dataList
:
[],
companyList
:
[],
getCompanyMsg
:{
RB_Group_Id
:
'0'
,
Status
:
'0'
,
},
currentPage
:
1
,
};
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
getCompanyMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
//集团ID
this
.
getList
();
this
.
getCompany
()
},
methods
:
{
// 禁用
deleteItem
:
function
(
id
)
{
this
.
$confirm
(
'确认禁用?'
,
this
.
$t
(
'tips.tips'
),
{
confirmButtonText
:
this
.
$t
(
'pub.sureBtn'
),
cancelButtonText
:
this
.
$t
(
'pub.cancelBtn'
),
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
"sendMsgTemplate_post_UpdateSendMsgTemplate"
,
{
ID
:
id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
getList
();
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
},
null
);
}).
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
this
.
$t
(
'hotel.hotel_HasBeenCancelled'
)
});
});
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
},
getCompany
(){
this
.
apipost
(
'admin_get_BranchGetList'
,
this
.
getCompanyMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
companyList
=
res
.
data
.
data
;
}
else
{}
},
err
=>
{})
},
//获取数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"sendMsgTemplate_get_GetPageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
total
=
res
.
data
.
data
.
count
this
.
dataList
=
res
.
data
.
data
.
pageData
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//提交
submitForm
(
addMsg
)
{
//提交创建、修改表单
this
.
$refs
[
addMsg
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
addAward
();
}
else
{
return
false
;
}
});
},
//提交添加
addAward
()
{
this
.
apipost
(
"sendMsgTemplate_post_SetSendMsgTemplate"
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
outerVisible
=
false
;
this
.
getList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//重置信息
resetInfo
()
{
var
newMsg
=
{
ID
:
0
,
SendTitle
:
''
,
SendContent
:
''
,
SendType
:
1
,
SendDate
:
''
,
SendProgramType
:
0
,
AppUrl
:
''
,
MinProgram
:
''
,
RB_Branch_id
:
''
,
CustomerStatus
:
0
,
MinTurnover
:
0
,
MaxTurnover
:
0
,
MinCoupons
:
0
,
MaxCoupons
:
0
,
MinPassbook
:
0
,
MaxPassbook
:
0
,
};
this
.
addMsg
=
newMsg
;
},
closeChangeMachie
(
done
)
{
//弹出框关闭初始化弹框内表单
done
();
this
.
resetForm
(
"addMsg"
);
},
resetForm
(
formName
)
{
this
.
$refs
[
formName
].
resetFields
();
}
}
};
</
script
>
\ No newline at end of file
src/router/config.js
View file @
e730d6d8
...
...
@@ -3879,6 +3879,14 @@ export default {
title
:
'APP专享活动'
}
},
{
path
:
'/pushManagement'
,
name
:
'pushManagement'
,
component
:
resolve
=>
require
([
'@/components/activity/pushManagement'
],
resolve
),
meta
:
{
title
:
'消息推送'
}
},
{
path
:
'/CouponDetail'
,
name
:
'CouponDetail'
,
...
...
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