Commit 1f86e9a3 by liuchenxi

Merge remote-tracking branch 'origin/feature/8月下迭代'

parents 78df7682 d8f7f47f
......@@ -156,3 +156,5 @@ export const getCouponStock = params => requests(PREFIX + 'get-coupon-stock', pa
// 游戏营销-- 获取游戏更新时间
export const getGameDataUpdatetime = params => requests(PREFIX + 'get-game-data-updatetime', params);
// 生成小程序游戏链接
export const generateMiniProgramLink = params => requests('api-admin/get-page-link-game', params);
......@@ -16,7 +16,10 @@ const state = {
isShowSelf: false, // 展示是否显示 '仅看本人' btn 在app.vue调用 每次刷新都会获取
openFlag: false, // 列表是否显示创建人
appletEnable: false, // 小程序是否可用,
xsxsFlag: false // 是否开启销售线索
xsxsFlag: false, // 是否开启销售线索
userId: '',
departAuth: 0,
superAdmin: 0
};
// getters
......@@ -104,6 +107,15 @@ const mutations = {
},
updateLimitCodeList(state, limitCodeList) {
state.limitCodeList = limitCodeList;
},
updateSuperAdmin(state, val) {
state.superAdmin = val;
},
updateDepartAuth(state, val) {
state.departAuth = val;
},
updateUserId(state, val) {
state.userId = val;
}
};
......
......@@ -16,6 +16,9 @@ export default config => {
const couponEnable = await requests('/api-marketing/opt-coupon-enable', { requestProject: 'marketing' });
store.commit('updateAppletEnable', couponEnable.result || false); // result: true,能改 false不能
store.commit('updateLimitCodeList', loginUserRes.result.limitCodeList);
store.commit('updateSuperAdmin', loginUserRes.result.superAdmin);
store.commit('updateDepartAuth', loginUserRes.result.departAuth);
store.commit('updateUserId', loginUserRes.result.userId);
createApp();
fullLoading.close();
} catch (error) {
......
......@@ -78,7 +78,7 @@
</div>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="saveForm" :disabled="isInfo">{{ isAdd ? '新增' : '保存' }}</el-button>
<el-button type="primary" @click="saveForm" :disabled="isInfo">{{ isAdd ? '保存' : '保存' }}</el-button>
</el-form-item>
</el-form>
<vue-gic-card :type="1" :showCardDialog.sync="showCardDialog" @selectCard="selectCard" :cardLimit="-1" :cardType="null"></vue-gic-card>
......
......@@ -20,7 +20,7 @@ export default Vue.component('render-temp', {
// 微盟外部券:领取记录、投放、报表
// 通用外部券:领取记录、报表
const bind1 =
canEdit && (!isApiCreate || isWeimo) && canGroupSend && !isCommon && showPutonBtn ? (
(!isApiCreate || isWeimo) && canGroupSend && !isCommon && showPutonBtn ? (
<a title="投放" onClick={this.handler.bind(null, 1)}>
<i class="iconfont icon-daohang-" />
</a>
......
......@@ -270,6 +270,13 @@ export default {
},
methods: {
/* ----------------核心方法--------------- */
onChangeDiscountLimit(type) {
if (type == 6) {
this.$set(this.discount_limit, 'count2', undefined);
} else {
this.$delete(this.discount_limit, 'count2');
}
},
filterWord(prop) {
this.copyTemplate[prop] = this.copyTemplate[prop].replace(/[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/g, '');
},
......@@ -478,6 +485,9 @@ export default {
this.discount_limit.flag = true;
this.discount_limit.type = discount_limit.type;
this.discount_limit.count = discount_limit.count;
if ('count2' in discount_limit) {
this.$set(this.discount_limit, 'count2', discount_limit.count2);
}
}
// 消费金额&消费件数
......@@ -754,6 +764,10 @@ export default {
this.$tips({ type: 'warning', message: '消费件数为正整数' });
return;
}
if (this.discount_limit.flag && this.discount_limit.type == 6 && (isNaN(this.discount_limit.count) || isNaN(this.discount_limit.count2))) {
this.$tips({ type: 'warning', message: '适用商品折扣区间未填写完整' });
return;
}
// 验证适用商品折扣 discount_limit
if (this.discount_limit.flag && isNaN(this.discount_limit.count)) {
this.$tips({ type: 'warning', message: '适用商品折扣额度未填写' });
......
......@@ -151,14 +151,15 @@
<el-checkbox class="el-form-item__label align-left" v-model="discount_limit.flag" :disabled="!isAdd">适用商品折扣</el-checkbox>
<div>
<div v-if="discount_limit.flag" class="inline-block">
<el-select :disabled="!isAdd" v-model="discount_limit.type" class="w150">
<el-select :disabled="!isAdd" v-model="discount_limit.type" class="w150" @change="onChangeDiscountLimit">
<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-option label="小于等于" :value="5"></el-option>
<el-option label="区间" :value="6"></el-option>
</el-select>
<el-input-number controls-position="right" :disabled="!isAdd" v-model="discount_limit.count" :precision="2" :min="0" :max="10" class="w150"></el-input-number>&nbsp;&nbsp;
<el-input-number style="vertical-align: middle" controls-position="right" :disabled="!isAdd" v-model="discount_limit.count" :precision="2" :min="0" :max="discount_limit.count2 || 10" class="w150"></el-input-number>&nbsp;&nbsp;<template v-if="discount_limit.type == 6">&nbsp;&nbsp;<el-input-number style="vertical-align: middle" controls-position="right" :disabled="!isAdd" v-model="discount_limit.count2" :precision="2" :min="discount_limit.count || 0" :max="10" class="w150"></el-input-number>&nbsp;&nbsp;</template><el-popover v-if="discount_limit.type == 6" placement="right" title="" width="200" trigger="hover" content="包含边界值"><i class="el-icon-info ml5 gray" slot="reference"></i></el-popover>
<div class="fz12 gray">* 商品折扣 = 商品实付 / 吊牌价</div>
</div>
<span class="fz14 gray" v-else>不限制消费商品折扣</span>
......
......@@ -83,10 +83,10 @@
</el-table-column>
<el-table-column label="操作" align="left" width="160" fixed="right">
<template slot-scope="scope">
<template v-if="scope.row.canEdit !== false">
<el-button type="text" v-if="(scope.row.effectType == 0 || scope.row.effectType == 1) && scope.row.onlineStatus != 2" @click="editData(scope.row)">编辑</el-button>
<el-button type="text" v-else-if="scope.row.effectType == 2 || scope.row.onlineStatus == 2" @click="$router.push(`/ecm/info/${scope.row.ecmPlanId}`)">详情</el-button>
</template>
<!-- <template v-if="scope.row.canEdit !== false"> -->
<el-button type="text" v-if="($store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId) && (scope.row.effectType == 0 || scope.row.effectType == 1) && scope.row.onlineStatus != 2" @click="editData(scope.row)">编辑</el-button>
<el-button type="text" v-else-if="$store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId || [2, 3].includes($store.state.marketing.departAuth)" @click="$router.push(`/ecm/info/${scope.row.ecmPlanId}`)">详情</el-button>
<!-- </template> -->
<!-- <dm-delete v-if="scope.row.effectType !== 2 && scope.row.onlineStatus === 1 && scope.row.canEdit !== false" @confirm="offlineEcmPlan(scope.row)" tips="是否下线该计划?">
<el-button type="text">下线</el-button>
</dm-delete> -->
......
......@@ -40,6 +40,7 @@
</el-radio-group>
<dm-pagination v-show="textImgList.length" class="dm-pagination" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="listParams.currentPage" :page-sizes="[20, 40, 60, 80]" :page-size="listParams.pageSize" layout="prev, pager, next" :total="total"></dm-pagination>
<p v-if="singleFlag" class="minor-font-color mb10">* 将使用微信客服接口发送,已按微信规则过滤图文数目大于1的图文。</p>
<p class="minor-font-color mb10">* 只有开通微信支付的商户,才能获得图文插入H5链接跳转其他网址的功能。</p>
<span slot="footer" class="dialog-footer">
<el-button @click="close">关 闭</el-button>
<el-button type="primary" @click="addItem">确 定</el-button>
......
<template>
<el-dialog title="游戏链接下载" :visible.sync="show" width="40%" :before-close="close" v-loading="loading">
<div class="links__body">
<div class="links__body--url">{{ obj.gameUrl }}</div>
<div class="links__body--btn">
<el-button v-clipboard:text="obj.gameUrl" type="text" icon="iconfont icon-lianjie fz14"> 复制链接</el-button>
<el-dialog title="游戏链接下载" :visible.sync="show" width="600px" :before-close="close">
<div class="link-tip">
<i class="el-icon-info"></i>
使用“小程序链接”,非会员进入游戏页面将提示进行认证注册成为会员,认证成功后自动返回游戏页面,建议采用小程序链接
</div>
<div class="link-title">
<i class="icon iconfont icon-xiaochengxu4" style="color:#6457AD"></i>
小程序链接
</div>
<div v-loading="loading" class="links-block">
<div class="links__body">
<div class="links__body--url">{{ miniprogram.link }}</div>
<div class="links__body--btn">
<el-button v-clipboard:text="miniprogram.link" type="text" icon="iconfont icon-lianjie fz14"> 复制链接</el-button>
</div>
</div>
<div class="link__divider"></div>
<div class="links__qr">
<!-- <vue-qr id="qrWrap" :text="qcText" :size="102" :margin="0" :logoMargin="10"></vue-qr> -->
<div style="text-align:center">
<el-image style="width:102px;height:102px;border:4px solid #fff;cursor: pointer;" lazy :src="miniprogram.url" @click.native="onView(false)">
<!-- <img slot="placeholder" style="width:102px;height:102px" src="@/assets/img/loaderror.png" /> -->
<div slot="placeholder" style="display:flex;align-items:center;justify-content:center;width:100%;height:100%;">
<i class="el-icon-picture-outline" style="font-size:30px"></i>
</div>
</el-image>
</div>
<el-button class="links__qr--btn" type="text" icon="iconfont icon-icon_yunxiazai fz14 mr4" @click="downloadMiniporgramImg">小程序二维码下载</el-button>
</div>
</div>
<div class="links__qr">
<vue-qr id="qrWrap" :text="qcText" :size="200" :margin="0" :logoMargin="10"></vue-qr>
<el-button class="links__qr--btn" type="text" icon="iconfont icon-icon_yunxiazai fz14" @click="downloadImg">二维码下载</el-button>
<div class="link-title">
<i class="icon iconfont icon-fuwuhao2" style="color:#2CBB64"></i>
H5链接
</div>
<div class="links-block" style="margin-bottom:25px">
<div class="links__body">
<div class="links__body--url">{{ obj.gameUrl }}</div>
<div class="links__body--btn">
<el-button v-clipboard:text="obj.gameUrl" type="text" icon="iconfont icon-lianjie fz14"> 复制链接</el-button>
</div>
</div>
<div class="link__divider"></div>
<div class="links__qr">
<vue-qr id="qrWrap" :text="qcText" :size="510" :logoScale="5" :margin="0" :logoMargin="10" @click.native="onView(true)"></vue-qr>
<el-button class="links__qr--btn" type="text" icon="iconfont icon-icon_yunxiazai fz14 mr4" @click="downloadImg">服务号二维码下载</el-button>
</div>
</div>
</el-dialog>
</template>
<script>
import VueQr from 'vue-qr';
import { formatDateTimeByType, downloadFile } from '@/utils/index.js';
import { generateMiniProgramLink } from '@/service/api/gameApi.js';
import { api as viewerApi } from 'v-viewer';
import 'viewerjs/dist/viewer.css';
export default {
name: 'links',
components: {
......@@ -39,13 +78,22 @@ export default {
data() {
return {
loading: false,
qcText: ''
qcText: '',
miniprogram: {
link: '',
url: ''
}
};
},
watch: {
show(val) {
if (val) {
this.miniprogram = {
link: '',
url: ''
};
this.createQrImg();
this.generateMiniProgramLink();
}
}
},
......@@ -53,37 +101,159 @@ export default {
createQrImg() {
this.qcText = this.obj.gameUrl || '';
},
generateMiniProgramLink() {
this.loading = true;
let gameType = '';
switch (this.gameTypeName) {
case '大转盘':
gameType = 'GAME_LINK_DZP';
break;
case '刮刮卡':
gameType = 'GAME_LINK_GGK';
break;
case '拼图游戏':
gameType = 'GAME_LINK_PTYX';
break;
case '找你马':
gameType = 'GAME_LINK_ZNM';
break;
case '口令福利':
gameType = 'GAME_LINK_KLFL';
break;
}
generateMiniProgramLink({
id: this.obj.gameId || this.obj.gameActivityId,
linkId: gameType
}).then(res => {
this.miniprogram = res.result;
this.loading = false;
});
},
close() {
this.$emit('update:show', false);
},
downloadImg() {
const qrWrap = document.getElementById('qrWrap');
const qrImg = qrWrap && qrWrap.childNodes[0].src;
downloadFile(this.gameTypeName + '-' + this.obj.gameName + formatDateTimeByType(this.obj.gameStartTime, 'yyyy-MM-dd-HH-mm-ss') || '游戏链接', qrImg);
downloadFile(this.gameTypeName + '-' + this.obj.gameName + '-服务号-' + formatDateTimeByType(this.obj.gameStartTime, 'yyyy-MM-dd-HH-mm-ss') || '游戏链接', qrImg);
},
onView(isH5) {
let qrImg = '';
if (isH5) {
const qrWrap = document.getElementById('qrWrap');
qrImg = qrWrap && qrWrap.childNodes[0].src;
} else {
qrImg = this.miniprogram.url + '?imageMogr2/thumbnail/500x500';
}
viewerApi({
images: [qrImg],
options: {
toolbar: false,
navbar: false,
title: false
}
});
},
downloadMiniporgramImg() {
const downloadFile = (fileName, content) => {
const url = content;
const x = new XMLHttpRequest();
x.open('GET', url, true);
x.responseType = 'blob';
x.onload = function(e) {
const blob = new Blob([x.response], { type: 'image/png' });
let url = window.URL.createObjectURL(blob);
let a = document.createElement('a');
a.href = url;
a.download = fileName;
a.click();
};
x.send();
};
downloadFile(this.gameTypeName + '-' + this.obj.gameName + '-小程序-' + formatDateTimeByType(this.obj.gameStartTime, 'yyyy-MM-dd-HH-mm-ss') || '游戏链接', this.miniprogram.url);
}
}
};
</script>
<style lang="scss" scoped>
.links__body {
border: 1px solid #ddd;
// border: 1px solid #ddd;
flex: 1;
&--url {
height: 80px;
height: 138px;
overflow-x: hidden;
overflow-y: auto;
word-break: break-all;
padding: 10px;
padding: 13px 22px 0 16px;
line-height: 17px;
font-size: 12px;
}
&--btn {
text-align: center;
line-height: 2;
line-height: 1;
}
}
.links__qr {
padding: 20px 0;
padding: 22px 30px 10px 24px;
text-align: center;
&--btn {
margin: 20px 0;
margin: 18px 0 0;
}
}
.link__divider {
margin-top: 19px;
height: 130px;
width: 1px;
background-color: #ebecf0;
}
.links-block {
display: flex;
background: #f5f7fa;
margin: 10px 0 10px;
}
.link-title {
display: flex;
align-items: center;
font-weight: 500;
color: #303133;
line-height: 20px;
margin-top: 20px;
i {
font-size: 20px;
margin-right: 8px;
}
}
.link-tip {
width: 544px;
background: #e6f7ff;
border-radius: 4px;
border: 1px solid #91d5ff;
font-size: 13px;
color: #606266;
line-height: 1.2;
padding: 10px 0;
margin-bottom: 10px;
display: flex;
.el-icon-info {
line-height: 18px;
margin-left: 16px;
margin-right: 4px;
color: #1890ff;
font-size: 12px;
}
}
#qrWrap {
/deep/ img {
border: 4px solid #fff;
width: 102px;
height: 102px;
cursor: pointer;
}
}
</style>
<style lang="scss">
.mr4 {
margin-right: 4px;
}
</style>
......@@ -21,8 +21,8 @@
<template slot-scope="scope">
<el-button type="text" @click="setLinks(scope.row, 1)">链接</el-button>
<el-button type="text" @click="$router.push('/game/dzp/record/' + scope.row.gameId)">中奖记录</el-button>
<el-button type="text" @click="$router.push('/game/dzp/edit/' + scope.row.gameId)" v-if="scope.row.gameStatus != '3'">编辑</el-button>
<el-button type="text" @click="$router.push('/game/dzp/detail/' + scope.row.gameId)" v-if="scope.row.gameStatus == '3'">详情</el-button>
<el-button type="text" @click="$router.push('/game/dzp/edit/' + scope.row.gameId)" v-if="($store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId) && scope.row.gameStatus != '3'">编辑</el-button>
<el-button type="text" @click="$router.push('/game/dzp/detail/' + scope.row.gameId)" v-else-if="$store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId || [2, 3].includes($store.state.marketing.departAuth)">详情</el-button>
<dm-delete @confirm="delData(scope.row)" v-if="scope.row.canEdit !== false" tips="是否删除该游戏?">
<el-button type="text">删除</el-button>
</dm-delete>
......
......@@ -21,8 +21,8 @@
<template slot-scope="scope">
<el-button type="text" @click="setLinks(scope.row, 2)">链接</el-button>
<el-button type="text" @click="$router.push('/game/ggk/record/' + scope.row.gameId)">中奖记录</el-button>
<el-button type="text" @click="$router.push('/game/ggk/edit/' + scope.row.gameId)" v-if="scope.row.gameStatus != '3'">编辑</el-button>
<el-button type="text" @click="$router.push('/game/ggk/detail/' + scope.row.gameId)" v-if="scope.row.gameStatus == '3'">详情</el-button>
<el-button type="text" @click="$router.push('/game/ggk/edit/' + scope.row.gameId)" v-if="($store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId) && scope.row.gameStatus != '3'">编辑</el-button>
<el-button type="text" @click="$router.push('/game/ggk/detail/' + scope.row.gameId)" v-else-if="$store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId || [2, 3].includes($store.state.marketing.departAuth)">详情</el-button>
<dm-delete @confirm="delData(scope.row)" v-if="scope.row.canEdit !== false" tips="是否删除该游戏?">
<el-button type="text">删除</el-button>
</dm-delete>
......
......@@ -23,8 +23,8 @@
<template slot-scope="scope">
<el-button type="text" @click="setLinks(scope.row, 5)">链接</el-button>
<el-button type="text" v-if="scope.row.sendStatus !== 0" @click="$router.push('/game/klfl/record/' + scope.row.gameActivityId)">中奖记录</el-button>
<el-button type="text" v-if="scope.row.activityStatus === 0 || scope.row.activityStatus === 1" @click="$router.push('/game/klfl/edit/' + scope.row.gameActivityId)">编辑</el-button>
<el-button type="text" v-else @click="$router.push('/game/klfl/info/' + scope.row.gameActivityId)">详情</el-button>
<el-button type="text" v-if="($store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId) && (scope.row.activityStatus === 0 || scope.row.activityStatus === 1)" @click="$router.push('/game/klfl/edit/' + scope.row.gameActivityId)">编辑</el-button>
<el-button type="text" v-else-if="$store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId || [2, 3].includes($store.state.marketing.departAuth)" @click="$router.push('/game/klfl/info/' + scope.row.gameActivityId)">详情</el-button>
<dm-delete @confirm="delData(scope.row)" tips="是否删除该游戏?" v-if="scope.row.canEdit !== false">
<el-button type="text">删除</el-button>
</dm-delete>
......
......@@ -21,8 +21,8 @@
<template slot-scope="scope">
<el-button type="text" @click="setLinks(scope.row, 3)">链接</el-button>
<el-button type="text" v-if="scope.row.activityStatus !== 0" @click="$router.push('/game/ptyx/record/' + scope.row.gameActivityId)">记录</el-button>
<el-button type="text" v-if="scope.row.activityStatus === 0 || scope.row.activityStatus === 1" @click="$router.push('/game/ptyx/edit/' + scope.row.gameActivityId)">编辑</el-button>
<el-button type="text" v-else @click="$router.push('/game/ptyx/query/' + scope.row.gameActivityId)">详情</el-button>
<el-button type="text" v-if="($store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId) && (scope.row.activityStatus === 0 || scope.row.activityStatus === 1)" @click="$router.push('/game/ptyx/edit/' + scope.row.gameActivityId)">编辑</el-button>
<el-button type="text" v-else-if="$store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId || [2, 3].includes($store.state.marketing.departAuth)" @click="$router.push('/game/ptyx/query/' + scope.row.gameActivityId)">详情</el-button>
<dm-delete @confirm="delData(scope.row)" tips="是否删除该游戏?" v-if="scope.row.canEdit !== false">
<el-button type="text">删除</el-button>
</dm-delete>
......
......@@ -20,8 +20,8 @@
<template slot-scope="scope">
<el-button type="text" @click="setLinks(scope.row, 4)">链接</el-button>
<el-button type="text" v-if="scope.row.activityStatus !== 0" @click="$router.push('/game/znm/record/' + scope.row.gameActivityId)">记录</el-button>
<el-button type="text" v-if="scope.row.activityStatus === 0 || scope.row.activityStatus === 1" @click="$router.push('/game/znm/edit/' + scope.row.gameActivityId)">编辑</el-button>
<el-button type="text" v-else @click="$router.push('/game/znm/info/' + scope.row.gameActivityId)">详情</el-button>
<el-button type="text" v-if="($store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId) && (scope.row.activityStatus === 0 || scope.row.activityStatus === 1)" @click="$router.push('/game/znm/edit/' + scope.row.gameActivityId)">编辑</el-button>
<el-button type="text" v-else-if="$store.state.marketing.superAdmin == 1 || $store.state.marketing.userId == scope.row.creatorId || [2, 3].includes($store.state.marketing.departAuth)" @click="$router.push('/game/znm/info/' + scope.row.gameActivityId)">详情</el-button>
<dm-delete @confirm="delData(scope.row)" tips="是否删除该游戏?" v-if="scope.row.canEdit !== false">
<el-button type="text">删除</el-button>
</dm-delete>
......
......@@ -16,6 +16,10 @@
<div>Q:为什么我发的图文出现了别人的内容?</div>
<div>A:由于微信平台拥有原创保护监测机制,如果所发送的图文中,图文内容与已申请原创申明的图文内容高度相似时,图文发送后,微信会将图文链接更换为原创内容的链接,请注意保证图文的原创性。</div>
</li>
<li>
<div>Q:为什么微信图文中配置的链接,推送到会员手机端会员无法点击?</div>
<div>A:只有开通微信支付的商户,才能获得图文插入H5链接跳转其他网址的功能。</div>
</li>
<li style="margin-top:20px">
<a target="_blank" href="https://mp.weixin.qq.com/cgi-bin/announce?action=getannouncement&key=1463730026&version=1&lang=zh_CN&platform=2&token=1734190417"><i class="el-icon-question mr5"></i>微信公众平台原创声明及相关功能使用条款</a>
</li>
......
......@@ -52,6 +52,18 @@
</el-table-column>
<el-table-column min-width="100" align="left" prop="creatorName" label="创建人" v-if="$store.state.marketing.openFlag"></el-table-column>
<el-table-column label="操作" align="left" width="180px" fixed="right">
<template slot="header" slot-scope="scope">
<span>操作</span>
<el-tooltip class="item" effect="dark" placement="top-end">
<template slot="content">
<div style="line-height:1.5">
【删除】指的是删除这条微信营销推送记录,不会影响已经推送出去的信息,也不影响微信公众号粉丝的接收。<br />
【禁用】指的是禁用此发出去的推文记录,接收到该推文的人员将不可再查看该推文的内容,页面显示:该内容已被发布者删除
</div>
</template>
<i class="iconfont icon-xinxixianshi fz14"></i>
</el-tooltip>
</template>
<template slot-scope="scope">
<el-button type="text" v-if="scope.row.contentType === 0 && scope.row.sendStatus === 1 && scope.row.couponType === 1" @click="queryData(scope.row)">数据</el-button>
<dm-delete @confirm="delData(scope.row)" v-if="scope.row.canEdit !== false" tips="是否删除该发送记录?">
......
@font-face {
font-family: "iconfont"; /* Project id 688955 */
src: url('iconfont.woff2?t=1623822833759') format('woff2'),
url('iconfont.woff?t=1623822833759') format('woff'),
url('iconfont.ttf?t=1623822833759') format('truetype');
src: url('iconfont.woff2?t=1629873400222') format('woff2'),
url('iconfont.woff?t=1629873400222') format('woff'),
url('iconfont.ttf?t=1629873400222') format('truetype');
}
.iconfont {
......@@ -13,6 +13,50 @@
-moz-osx-font-smoothing: grayscale;
}
.icon-umidd17:before {
content: "\e66d";
}
.icon-xuanzhong11-copy:before {
content: "\eb59";
}
.icon-xuanzhong11:before {
content: "\e690";
}
.icon-huiyuanqia:before {
content: "\e668";
}
.icon-zhifubaoxiaochengxu:before {
content: "\e669";
}
.icon-shouye:before {
content: "\e66c";
}
.icon-fuwuhao2:before {
content: "\e665";
}
.icon-xiaochengxu4:before {
content: "\e666";
}
.icon-xiaochengxu12:before {
content: "\e662";
}
.icon-zhuangtailan:before {
content: "\e663";
}
.icon-jiantou:before {
content: "\e8a3";
}
.icon-Icon-yishanchu:before {
content: "\e65a";
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -6,6 +6,83 @@
"description": "",
"glyphs": [
{
"icon_id": "18516314",
"name": "支付宝",
"font_class": "umidd17",
"unicode": "e66d",
"unicode_decimal": 58989
},
{
"icon_id": "23794372",
"name": "选中",
"font_class": "xuanzhong11-copy",
"unicode": "eb59",
"unicode_decimal": 60249
},
{
"icon_id": "18683817",
"name": "选中",
"font_class": "xuanzhong11",
"unicode": "e690",
"unicode_decimal": 59024
},
{
"icon_id": "3796375",
"name": "会员卡",
"font_class": "huiyuanqia",
"unicode": "e668",
"unicode_decimal": 58984
},
{
"icon_id": "6180166",
"name": "支付宝小程序",
"font_class": "zhifubaoxiaochengxu",
"unicode": "e669",
"unicode_decimal": 58985
},
{
"icon_id": "21471056",
"name": "首 页",
"font_class": "shouye",
"unicode": "e66c",
"unicode_decimal": 58988
},
{
"icon_id": "16840237",
"name": "服务号",
"font_class": "fuwuhao2",
"unicode": "e665",
"unicode_decimal": 58981
},
{
"icon_id": "19703591",
"name": "小程序",
"font_class": "xiaochengxu4",
"unicode": "e666",
"unicode_decimal": 58982
},
{
"icon_id": "8444051",
"name": "小程序",
"font_class": "xiaochengxu12",
"unicode": "e662",
"unicode_decimal": 58978
},
{
"icon_id": "22292746",
"name": "状态栏",
"font_class": "zhuangtailan",
"unicode": "e663",
"unicode_decimal": 58979
},
{
"icon_id": "9724564",
"name": "右箭头",
"font_class": "jiantou",
"unicode": "e8a3",
"unicode_decimal": 59555
},
{
"icon_id": "22270569",
"name": "Icon-yishanchu",
"font_class": "Icon-yishanchu",
......
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