Commit cda0516f by chenxin

fix:ecm 积分增加倍数;文案;卡券展架砍掉

parents c0584f8f 6301824e
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel="shortcut icon" href=./static/img/favicon.ico><title>GIC后台</title><link rel=stylesheet type=text/css href=static/fonts/iconfont.css><link rel=stylesheet type=text/css href=static/css/common.css><link rel=stylesheet href=//web-1251519181.file.myqcloud.com/components/element.2.12.0.css><link href=/marketing/static/css/main.62c10d584bc9948496e4faa36fe5e3ea.css rel=stylesheet></head><body><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.5.2/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/components/element.2.12.0.js></script><script src=//web-1251519181.file.myqcloud.com/components/header.2.0.33.js></script><script src=//web-1251519181.file.myqcloud.com/components/footer.2.0.04.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.09.js></script><script src=//web-1251519181.file.myqcloud.com/components/store.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/member-group.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.13.js></script><script src=//web-1251519181.file.myqcloud.com/components/confirm-people.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/people.2.0.38.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.13.js></script><script src=//web-1251519181.file.myqcloud.com/components/input.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/delete.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/selector.1.1.95.js></script><script type=text/javascript src=/marketing/static/js/manifest.68675eaf8da5bf7cac0f.js></script><script type=text/javascript src=/marketing/static/js/vendor.f6e5442e18ed1c7d4a4d.js></script><script type=text/javascript src=/marketing/static/js/main.6126c60d7495c38a2553.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel="shortcut icon" href=./static/img/favicon.ico><title>GIC后台</title><link rel=stylesheet type=text/css href=static/fonts/iconfont.css><link rel=stylesheet type=text/css href=static/css/common.css><link rel=stylesheet href=//web-1251519181.file.myqcloud.com/components/element.2.12.0.css><link href=/marketing/static/css/main.321069e6a79bbbf9e5b22a75d98f8aa9.css rel=stylesheet></head><body><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.5.2/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/components/element.2.12.0.js></script><script src=//web-1251519181.file.myqcloud.com/components/header.2.0.33.js></script><script src=//web-1251519181.file.myqcloud.com/components/footer.2.0.04.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.09.js></script><script src=//web-1251519181.file.myqcloud.com/components/store.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/member-group.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.13.js></script><script src=//web-1251519181.file.myqcloud.com/components/confirm-people.2.0.01.js></script><script src=//web-1251519181.file.myqcloud.com/components/people.2.0.38.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.13.js></script><script src=//web-1251519181.file.myqcloud.com/components/input.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/delete.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/selector.1.1.95.js></script><script type=text/javascript src=/marketing/static/js/manifest.ee4b0a31c55509e46e66.js></script><script type=text/javascript src=/marketing/static/js/vendor.f6e5442e18ed1c7d4a4d.js></script><script type=text/javascript src=/marketing/static/js/main.6126c60d7495c38a2553.js></script></body></html>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
!function(e){var r=window.webpackJsonp;window.webpackJsonp=function(n,c,a){for(var f,i,u,s=0,l=[];s<n.length;s++)i=n[s],t[i]&&l.push(t[i][0]),t[i]=0;for(f in c)Object.prototype.hasOwnProperty.call(c,f)&&(e[f]=c[f]);for(r&&r(n,c,a);l.length;)l.shift()();if(a)for(s=0;s<a.length;s++)u=o(o.s=a[s]);return u};var n={},t={12:0};function o(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,o),t.l=!0,t.exports}o.e=function(e){var r=t[e];if(0===r)return new Promise(function(e){e()});if(r)return r[2];var n=new Promise(function(n,o){r=t[e]=[n,o]});r[2]=n;var c=document.getElementsByTagName("head")[0],a=document.createElement("script");a.type="text/javascript",a.charset="utf-8",a.async=!0,a.timeout=12e4,o.nc&&a.setAttribute("nonce",o.nc),a.src=o.p+"static/js/"+({0:"card",1:"game",2:"wechat",3:"ewash",4:"evaluation",5:"message",6:"ecm",7:"recharge",8:"msg",9:"calllog"}[e]||e)+"."+{0:"acc2c552add48c8806f7",1:"eb6684ab9f11f6b91609",2:"8dfc5243f93f4e39bff3",3:"3b8c083130a8a0ae383b",4:"d155f948cc7f6cd10a1f",5:"94e2070a13c6b19e1728",6:"8071f67f02dde99e499b",7:"d542294c098249a6ebf1",8:"b54ee100686a1538ee52",9:"7c23e852688ebfec2cbb"}[e]+".js";var f=setTimeout(i,12e4);function i(){a.onerror=a.onload=null,clearTimeout(f);var r=t[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return a.onerror=a.onload=i,c.appendChild(a),n},o.m=e,o.c=n,o.d=function(e,r,n){o.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(r,"a",r),r},o.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},o.p="/marketing/",o.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
!function(e){var r=window.webpackJsonp;window.webpackJsonp=function(n,c,a){for(var f,i,u,s=0,l=[];s<n.length;s++)i=n[s],t[i]&&l.push(t[i][0]),t[i]=0;for(f in c)Object.prototype.hasOwnProperty.call(c,f)&&(e[f]=c[f]);for(r&&r(n,c,a);l.length;)l.shift()();if(a)for(s=0;s<a.length;s++)u=o(o.s=a[s]);return u};var n={},t={12:0};function o(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,o),t.l=!0,t.exports}o.e=function(e){var r=t[e];if(0===r)return new Promise(function(e){e()});if(r)return r[2];var n=new Promise(function(n,o){r=t[e]=[n,o]});r[2]=n;var c=document.getElementsByTagName("head")[0],a=document.createElement("script");a.type="text/javascript",a.charset="utf-8",a.async=!0,a.timeout=12e4,o.nc&&a.setAttribute("nonce",o.nc),a.src=o.p+"static/js/"+({0:"card",1:"game",2:"wechat",3:"ewash",4:"evaluation",5:"message",6:"ecm",7:"recharge",8:"msg",9:"calllog"}[e]||e)+"."+{0:"2157d4564feb669d7f0b",1:"b0063f1092cce87104cf",2:"6f2f4f7ce0a8b3573406",3:"0444b9db07ec19d54c80",4:"9e33a69becd19ed70f7f",5:"94e2070a13c6b19e1728",6:"d8692561e7380cbb097c",7:"ffc4d6e3b0f6e628f842",8:"b54ee100686a1538ee52",9:"0227f7c8f0a9a9fe5817"}[e]+".js";var f=setTimeout(i,12e4);function i(){a.onerror=a.onload=null,clearTimeout(f);var r=t[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return a.onerror=a.onload=i,c.appendChild(a),n},o.m=e,o.c=n,o.d=function(e,r,n){o.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(r,"a",r),r},o.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},o.p="/marketing/",o.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
......@@ -194,10 +194,7 @@ export default {
},
popoverTagRemove(tag) {
this.currentValue.splice(
this.currentValue.findIndex(val => val === tag.value),
1
);
this.currentValue.splice(this.currentValue.findIndex(val => val === tag.value), 1);
this.$refs.select.$emit('change', JSON.parse(JSON.stringify(this.currentValue)));
},
......
......@@ -28,7 +28,9 @@
</template>
</el-table-column>
<el-table-column prop="cardLimit" :show-overflow-tooltip="false" label="领取限制" width="90">
<template slot-scope="scope"> {{ scope.row.cardLimit }}张/人 </template>
<template slot-scope="scope">
{{ scope.row.cardLimit }}张/人
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="false" :width="90" align="left" prop="storeMode" label="适用门店">
<template slot-scope="scope">
......
......@@ -49,7 +49,9 @@
</template>
</el-table-column>
<el-table-column align="left" width="150" prop="callTime" label="通话时长(秒)">
<template slot-scope="scope"> {{ scope.row.callTime }}</template>
<template slot-scope="scope">
{{ scope.row.callTime }}
</template>
</el-table-column>
<el-table-column align="left" width="150" prop="callFee" label="录音">
<template slot-scope="scope">
......
......@@ -994,7 +994,7 @@ export default {
// ------微盟适用商品结束-------
},
mounted() {
this.cardGetShelfs();
// this.cardGetShelfs();
this.getCardDetail();
this.getCategoryList(); // 获取适用商品第一层数据
this.getListEntepriseWeimobShop(); // 获取微盟店铺数据
......
......@@ -238,9 +238,9 @@
<img-text-drag :list.sync="imgTextList" :disabled="form.auditingStatus === 1"></img-text-drag>
</el-form-item>
<el-form-item label="放入卡券展架" v-show="cardLimitRadio === 1" v-loading="cardShelfsLoading">
<!-- <el-form-item label="放入卡券展架" v-show="cardLimitRadio === 1" v-loading="cardShelfsLoading">
<el-transfer :disabled="isInfo" filterable :filter-method="filterMethod" filter-placeholder="输入展架名称搜索" v-model="form.shelfIds" :titles="['所有门店展架', '选中的展架']" :data="cardShelfsList"> </el-transfer>
</el-form-item>
</el-form-item> -->
<el-form-item prop="verificationType" label="核销方式" v-show="form.cardType === 2">
<el-radio v-model="form.verificationType" :label="0" :disabled="isEdit || isInfo">会员自助核销</el-radio>
......
......@@ -21,7 +21,9 @@
</template>
</el-table-column>
<el-table-column prop="cardLimit" :show-overflow-tooltip="false" label="领取限制" width="90">
<template slot-scope="scope"> {{ scope.row.cardLimit }}张/人 </template>
<template slot-scope="scope">
{{ scope.row.cardLimit }}张/人
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="false" :width="90" align="left" prop="storeMode" label="适用门店">
<template slot-scope="scope">
......
......@@ -16,7 +16,9 @@
<el-table-column width="120" align="left" prop="getedQuantity" label="领取数量"></el-table-column>
<el-table-column width="120" align="left" prop="usageQuantity" label="使用数量"></el-table-column>
<el-table-column width="120" align="left" prop="col4" label="核销率">
<template slot-scope="scope"> {{ ((scope.row.usageQuantity * 100) / (scope.row.getedQuantity === 0 ? 1 : scope.row.getedQuantity)).toFixed(2) }}% </template>
<template slot-scope="scope">
{{ ((scope.row.usageQuantity * 100) / (scope.row.getedQuantity === 0 ? 1 : scope.row.getedQuantity)).toFixed(2) }}%
</template>
</el-table-column>
<el-table-column width="120" align="left" prop="saleAmount" label="销售额"></el-table-column>
<el-table-column label="操作" align="left" width="160px" fixed="right">
......
......@@ -8,7 +8,7 @@ import { formatDateTimeByType, deepClone } from '@/utils/index.js';
import { isEmpty, numOfDecimal } from '@/utils/strlen.js';
import itemCard from './partials/item-card.vue';
import varDialog from './partials/variables.vue';
import Vue from 'vue';
export default {
name: 'ecm-manage',
mixins: [xxSysp_mix],
......@@ -437,6 +437,15 @@ export default {
// 判断是否能发送短信
if (hasMessageInList && this.isMessageForbidden()) return;
if (this.form.effectAction !== 'consume') {
// 非消费触发 是否包含多倍积分
const hasIntegralMultiple = this.$refs.marketingEvent.hasIntegralMultiple();
if (hasIntegralMultiple) {
this.$tips({ type: 'warning', message: '营销事件配置错误,积分金额倍数只生效于消费触发,请您修改设置' });
return;
}
}
if (this.form.expireType && (!this.form.beginDate || !this.form.endDate)) {
this.$tips({ type: 'warning', message: '固定期限不能为空' });
return;
......@@ -835,6 +844,29 @@ export default {
}
}
},
mounted() {
const Profile = Vue.extend({
template: '<p>{{ alias }}{{ ppp }}</p>',
data: function() {
return {
alias: 'yeluosen'
};
},
props: ['ppp']
});
new Profile().$mount('#mount-point');
// var Profile = Vue.extend({
// template: '<p>{{firstName}} {{lastName}} aka {{alias}}</p>',
// data: function() {
// return {
// firstName: 'Walter',
// lastName: 'White',
// alias: 'Heisenberg'
// };
// }
// });
},
created() {
// 设置面包屑
let breadcrumbName = '智能营销编辑';
......
......@@ -182,7 +182,7 @@
<!-- 营销事件组件 -->
<section class="dm-form__wrap">
<h3 class="dm-title__label">营销事件</h3>
<marketing-event ref="marketingEvent" @has-card="hasCard" v-if="ecmPlanId" :ecmPlanId="ecmPlanId" :isSupportVar="form.effectType === 0" :code="code" :enabledMessageState="enabledMessageState" :cardLimitType="-1"></marketing-event>
<marketing-event ref="marketingEvent" @has-card="hasCard" v-if="ecmPlanId" :integralMultiple="form.effectAction === 'consume'" :ecmPlanId="ecmPlanId" :isSupportVar="form.effectType === 0" :code="code" :enabledMessageState="enabledMessageState" :cardLimitType="-1"></marketing-event>
</section>
<!-- 只有存在卡券的情况下出现卡券通知方式 -->
<section class="dm-form__wrap" v-if="currentCard.comName">
......
<template>
<div class="dm-integral__item__wrap">
<span class="fz16">赠送积分<span class="fz12 gray ml20">* 仅支持给认证会员赠送积分</span></span>
<p class="mt15">
<span class="fz24 mr5 primary-font-color">{{ item.integralCount }}</span>
<span>积分</span>
</p>
<!-- {{ item.integralType }} -->
<template v-if="item.integralType === 1">
<span class="fz16">赠送积分<span class="fz12 gray ml20">* 仅支持给认证会员赠送积分</span></span>
<p class="mt15">
<span class="fz24 mr5 primary-font-color">{{ item.integralCount }}</span>
<span>积分</span>
</p>
</template>
<template v-if="item.integralType === 2">
<div><span class="fz16">赠送订单金额倍数积分</span></div>
<div class="mt5"><span class="fz12 gray">* 订单金额将四舍五入取整,且1元等于1积分</span></div>
<p class="mt15">
<span class="fz24 mr5 primary-font-color">{{ item.multipleNum }}</span>
<span></span>
</p>
</template>
</div>
</template>
......
......@@ -27,7 +27,9 @@
</template>
</el-table-column>
<el-table-column prop="cardLimit" :show-overflow-tooltip="false" label="领取限制" width="90">
<template slot-scope="scope"> {{ scope.row.cardLimit }}张/人 </template>
<template slot-scope="scope">
{{ scope.row.cardLimit }}张/人
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="false" :width="90" align="left" prop="storeMode" label="适用门店">
<template slot-scope="scope">
......
<template>
<el-dialog title="赠送积分" :visible.sync="show" width="420px" :before-close="close">
<p class="regular-font-color mb20">请输入需要赠送的积分<span class="fz12 gray ml10">* 仅支持给认证会员赠送积分</span></p>
<el-dialog title="赠送积分" :visible.sync="show" width="420px" @closed="close">
<el-form :model="form" :rules="rules" ref="form" label-width="0">
<el-form-item prop="integral">
<el-input v-model.number="form.integral" maxLength="7" />
</el-form-item>
<el-radio-group v-if="integralMultiple || old.integralType === 2" v-model="form.integralType" class="mb20" @change="reset">
<el-radio :label="1">固定积分</el-radio>
<el-radio :label="2">
订单金额倍数
<el-tooltip class="item">
<div slot="content">
<p style="color: white;margin-bottom:15px;">条件说明</p>
<p style="color: white;font-size:12px;width:200px;line-height:18px;">若该计划中增加了消费条件限制,那么在判断订单金额取值时,将综合该计划中的消费条件设置,只取符合条件设置的商品的金额作为积分加倍的数值</p>
</div>
<i class="el-icon-question ml5 minor-font-color"></i>
</el-tooltip>
</el-radio>
</el-radio-group>
<template v-if="form.integralType === 1">
<p class="regular-font-color mb20">请输入需要赠送的积分<span class="fz12 gray ml10">* 仅支持给认证会员赠送积分</span></p>
<el-form-item prop="integralCount">
<el-input v-model.number="form.integralCount" maxLength="7" />
</el-form-item>
</template>
<template v-if="form.integralType === 2">
<p class="regular-font-color mb20"><span class="fz12 gray">* 订单金额将四舍五入取整,且1元等于1积分</span></p>
<el-form-item prop="multipleNum">
设置倍数
<el-input-number v-model="form.multipleNum" class="ml5 mr5 w120" controls-position="right" :precision="2" :min="0.01" :max="100" placeholder="最多保留两位小数" />
</el-form-item>
</template>
</el-form>
<p class="minor-font-color mt10 line-height1_5 fz12">赠送积分无自动通知。如有通知需要,请额外添加【文本】、【图片】、【小程序】或【短信】营销事件。</p>
<span slot="footer" class="dialog-footer">
......@@ -27,6 +50,11 @@ export default {
show: {
type: Boolean,
default: false
},
integralMultiple: {
// 积分 是否需要倍数(场景:消费触发)
type: Boolean,
default: false
}
},
data() {
......@@ -43,23 +71,36 @@ export default {
};
return {
ecmMarketingTypeRelationId: '',
old: {}, // 旧数据
form: {
integral: '',
comName: 'integral'
integralCount: '',
comName: 'integral',
integralType: 1, // 1固定积分 2订单金额倍数
multipleNum: undefined // 倍数值
},
rules: {
integral: [{ required: true, message: '请输入积分值', trigger: 'blur' }, { validator: validInteral, trigger: 'blur' }] // eslint-disable-line
integralCount: [{ required: true, message: '请输入积分值', trigger: 'blur' }, { validator: validInteral, trigger: 'blur' }], // eslint-disable-line
multipleNum: [{ required: true, message: '请输入倍数', trigger: 'blur' }] // eslint-disable-line
},
loading: false
};
},
watch: {
reset() {
this.$refs.form.resetFields();
},
show(val) {
if (val) {
this.form.integral = this.item.integralCount;
this.old = { ...this.item };
this.form.integralCount = this.item.integralCount;
this.form.multipleNum = this.item.multipleNum || undefined;
this.form.integralType = this.item.integralType || 1;
this.ecmMarketingTypeRelationId = this.item.ecmMarketingTypeRelationId;
} else {
this.form.integral = '';
this.old = {};
this.form.integralCount = '';
this.form.multipleNum = undefined;
this.form.integralType = 1;
this.ecmMarketingTypeRelationId = '';
}
}
......@@ -72,6 +113,9 @@ export default {
addItem() {
this.$refs['form'].validate(valid => {
if (valid) {
if (this.integralMultiple) {
this.integralType = this.integralType || 1; // 设置默认1 防止''
}
this.$emit('sendItem', { ...this.form, ...{ ecmMarketingTypeRelationId: this.ecmMarketingTypeRelationId } });
this.close();
}
......
......@@ -30,7 +30,7 @@
</transition>
</div>
<!-- 弹窗组件 -->
<component :is="dialogCom" @sendItem="saveToList" :item="currentItem" :show.sync="dialogShow" :isSupportVar="isSupportVar" :cardLimitType="cardLimitType"></component>
<component :is="dialogCom" @sendItem="saveToList" :item="currentItem" :show.sync="dialogShow" :isSupportVar="isSupportVar" :cardLimitType="cardLimitType" :integralMultiple="integralMultiple"></component>
</section>
</template>
......@@ -108,6 +108,11 @@ export default {
cardLimitType: {
type: Number,
default: 1
},
integralMultiple: {
// 积分 是否需要倍数(场景:消费触发)
type: Boolean,
default: false
}
},
data() {
......@@ -180,12 +185,11 @@ export default {
this.list.push({ comName: 'item-teltask', item: { ...v.teltask, ecmMarketingTypeRelationId: v.ecmMarketingTypeRelationId, relationId: v.relationId, ecmPlanId: v.ecmPlanId } });
break;
case 'integral': // 8 积分
this.list.push({ comName: 'item-integral', item: { integralCount: v.integralCount, ecmMarketingTypeRelationId: v.ecmMarketingTypeRelationId, relationId: v.relationId, ecmPlanId: v.ecmPlanId } });
this.list.push({ comName: 'item-integral', item: { multipleNum: v.multipleNum, integralType: v.integralType, integralCount: v.integralCount, ecmMarketingTypeRelationId: v.ecmMarketingTypeRelationId, relationId: v.relationId, ecmPlanId: v.ecmPlanId } });
// this.list.push({ comName: 'item-teltask', item: { ...v.teltask, ecmMarketingTypeRelationId: v.ecmMarketingTypeRelationId, relationId: v.relationId, ecmPlanId: v.ecmPlanId } });
break;
}
});
this.hasReturnCard();
}
});
......@@ -259,10 +263,15 @@ export default {
//8.积分
if (val.comName === 'integral') {
params.title = `${val.integral}积分`;
params.integralCount = val.integral;
params.integralType = val.integralType;
if (params.integralType === 1) {
params.integralCount = val.integralCount;
}
if (params.integralType === 2) {
params.multipleNum = val.multipleNum;
params.title = `${val.multipleNum}倍积分`;
}
}
// 接口请求 保存
saveUpdateMarketingType({ marketingType: JSON.stringify(params) })
.then(res => {
......@@ -340,6 +349,10 @@ export default {
hasMessageInList() {
return this.list.some(v => v.comName === 'item-message' && v.item.type === 1);
},
//判断营销列表里是否包含积分--订单倍数 提供给父级使用
hasIntegralMultiple() {
return this.list.some(v => v.comName === 'item-integral' && v.item.integralType === 2);
},
//判断营销列表里是否有卡券 提供给父级使用
hasReturnCard() {
let item = {};
......
......@@ -78,7 +78,9 @@
<el-table-column :show-overflow-tooltip="false" width="80" align="center" prop="replyStatus" label="回复">
<template slot-scope="scope">
<el-button type="text" @click="replyData(scope.row)">
<template v-if="scope.row.replyStatus !== 1 && scope.row.content">立即回复</template>
<template v-if="scope.row.replyStatus !== 1 && scope.row.content">
立即回复
</template>
<i v-if="scope.row.replyStatus === 1" class="el-icon-message fz20 danger-color cursor"></i>
</el-button>
</template>
......
......@@ -95,10 +95,14 @@
</template>
</el-table-column>
<el-table-column prop="prizeQuantity" label="商品数量" align="left" :min-width="160">
<template slot-scope="scope" v-if="scope.row.prizeType !== 3"> <el-input-number controls-position="right" v-model="scope.row.prizeCount" type="number" :min="0" :disabled="isInfo" class="width50" size="small"></el-input-number></template>
<template slot-scope="scope" v-if="scope.row.prizeType !== 3">
<el-input-number controls-position="right" v-model="scope.row.prizeCount" type="number" :min="0" :disabled="isInfo" class="width50" size="small"></el-input-number>
</template>
</el-table-column>
<el-table-column prop="date" :render-header="labelTips" align="left" width="100">
<template slot-scope="scope" v-if="scope.row.prizeType !== 3"> {{ (totalCount * scope.row.prizeCount || 0).toFixed(2) }}% </template>
<template slot-scope="scope" v-if="scope.row.prizeType !== 3">
{{ (totalCount * scope.row.prizeCount || 0).toFixed(2) }}%
</template>
</el-table-column>
</el-table>
</el-form-item>
......
......@@ -73,10 +73,14 @@
</template>
</el-table-column>
<el-table-column prop="prizeQuantity" label="商品数量" align="left" :min-width="160">
<template slot-scope="scope" v-if="scope.row.prizeType !== 3"> <el-input-number controls-position="right" v-model="scope.row.prizeCount" type="number" :min="0" :disabled="isInfo" class="width50" size="small"></el-input-number></template>
<template slot-scope="scope" v-if="scope.row.prizeType !== 3">
<el-input-number controls-position="right" v-model="scope.row.prizeCount" type="number" :min="0" :disabled="isInfo" class="width50" size="small"></el-input-number>
</template>
</el-table-column>
<el-table-column prop="date" :render-header="labelTips" align="left" width="100">
<template slot-scope="scope" v-if="scope.row.prizeType !== 3"> {{ (totalCount * scope.row.prizeCount || 0).toFixed(2) }}% </template>
<template slot-scope="scope" v-if="scope.row.prizeType !== 3">
{{ (totalCount * scope.row.prizeCount || 0).toFixed(2) }}%
</template>
</el-table-column>
<el-table-column prop="date" label="操作" align="left" width="80">
<template slot-scope="scope">
......
......@@ -270,11 +270,7 @@ export default {
strategyType: 'add',
gamePrizeStrategyId: '',
prizeList: [{ prizeCount: 0, prizeStock: 0, card: { cardName: '' }, proGift: { mainPicUrl: { code: '', imgUrl: '' } }, codeId: '', gameCode: '', codeStock: '' }],
prizeReferTypeOptions: [
{ value: 1, label: '积分' },
{ value: 2, label: '卡券' },
{ value: 3, label: '礼品' }
],
prizeReferTypeOptions: [{ value: 1, label: '积分' }, { value: 2, label: '卡券' }, { value: 3, label: '礼品' }],
systemBakImgList: [{ imageUrl: '' }],
systemBtnImgList: [{ imageUrl: '' }],
currentBg: { imageUrl: '' },
......
......@@ -17,10 +17,14 @@
<p class="gray fz13">用户按游戏得分由高到低依次获得奖项。</p>
<el-table tooltipEffect="light" :data="tableList" style="width: 100%">
<el-table-column prop="awardName" label="奖项" align="left" width="90">
<template slot-scope="scope"> {{ (scope.$index + 1) | numberToChinese }}等奖 </template>
<template slot-scope="scope">
{{ (scope.$index + 1) | numberToChinese }}等奖
</template>
</el-table-column>
<el-table-column prop="winnerCount" label="奖品数量" align="left" width="220">
<template slot-scope="scope"> <el-input-number controls-position="right" v-model="scope.row.winnerCount" :precision="0" :min="1" size="small" class="w150" :disabled="isInfo"></el-input-number></template>
<template slot-scope="scope">
<el-input-number controls-position="right" v-model="scope.row.winnerCount" :precision="0" :min="1" size="small" class="w150" :disabled="isInfo"></el-input-number>
</template>
</el-table-column>
<el-table-column prop="prizeName" label="商品名称" align="left" :min-width="180">
<template slot-scope="scope">
......
......@@ -28,7 +28,9 @@
</el-table-column>
<el-table-column align="left" width="150" prop="telephone" label="接收号码"></el-table-column>
<el-table-column align="left" width="100" prop="countNum" label="计费条数">
<template slot-scope="scope"> {{ scope.row.countNum }}</template>
<template slot-scope="scope"
>{{ scope.row.countNum }}
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" min-width="180" prop="storeName" label="主门店">
<template slot-scope="scope">
......@@ -63,7 +65,9 @@
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" label="短信内容" align="left" min-width="200" prop="paramInfo">
<template slot-scope="scope"> 您的验证码是:{{ scope.row.paramInfo }} </template>
<template slot-scope="scope"
>您的验证码是:{{ scope.row.paramInfo }}
</template>
</el-table-column>
<el-table-column label="状态" align="left" width="100" prop="status">
<template slot-scope="scope">
......@@ -131,10 +135,14 @@
</template>
</el-table-column>
<el-table-column align="left" width="150" prop="callTime" label="时间(秒)">
<template slot-scope="scope"> {{ scope.row.callTime }}</template>
<template slot-scope="scope"
>{{ scope.row.callTime }}</template
>
</el-table-column>
<el-table-column align="left" width="150" prop="callFee" label="消费金额(元)">
<template slot-scope="scope"> {{ Number(scope.row.callFee / 1000).toFixed(2) }}</template>
<template slot-scope="scope"
>{{ Number(scope.row.callFee / 1000).toFixed(2) }}</template
>
</el-table-column>
</el-table>
<el-table tooltipEffect="light" :data="tableList" style="width:100%" v-loading="loading" v-if="$route.params.type === 'record'">
......@@ -178,10 +186,14 @@
</template>
</el-table-column>
<el-table-column align="left" width="150" prop="callTime" label="时间(分钟)">
<template slot-scope="scope"> {{ scope.row.callTime }}分钟 </template>
<template slot-scope="scope">
{{ scope.row.callTime }}分钟
</template>
</el-table-column>
<el-table-column align="left" width="150" prop="callFee" label="消费金额(元)">
<template slot-scope="scope"> {{ Number(scope.row.storageFee / 100).toFixed(2) }}</template>
<template slot-scope="scope">
{{ Number(scope.row.storageFee / 100).toFixed(2) }}
</template>
</el-table-column>
</el-table>
<el-pagination v-show="tableList.length" background class="dm-pagination" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="listParams.currentPage" :page-sizes="[20, 40, 60, 80]" :page-size="listParams.pageSize" layout="total, sizes, prev, pager, next" :total="total"></el-pagination>
......
......@@ -15,7 +15,9 @@
</template>
</el-table-column>
<el-table-column label="金额" align="left" prop="totalFee">
<template slot-scope="scope"> {{ (scope.row.totalFee / 100).toFixed(2) }}</template>
<template slot-scope="scope">
{{ (scope.row.totalFee / 100).toFixed(2) }}
</template>
</el-table-column>
</el-table>
<el-pagination v-show="tableList.length" background class="dm-pagination" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="listParams.currentPage" :page-sizes="[20, 40, 60, 80]" :page-size="listParams.pageSize" layout="total, sizes, prev, pager, next" :total="total"></el-pagination>
......
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