Commit e730d6d8 authored by 华国豪's avatar 华国豪 🙄

新增消息推送管理

parent bf3fd401
<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> &nbsp;
<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
......@@ -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',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment