Commit 827a438e by chenxin

Merge branch 'feature/1.12更新-卡券自动领取' into 'master'

Feature/1.12更新 卡券自动领取

See merge request !130
parents a1f20b7e 53eca0b4
<!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.4ac8f876bde3a5a7e84bd3a525dc8a2b.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.40.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.19.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.2.24.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.24.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-new.2.0.65.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.43.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.16.js></script><script src=//web-1251519181.file.myqcloud.com/components/input.2.0.20.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.2.20.js></script><script src=//web-1251519181.file.myqcloud.com/components/pagination.1.0.8.js></script><script src=//web-1251519181.file.myqcloud.com/components/activity-select.1.0.2.1.js></script><script type=text/javascript src=/marketing/static/js/manifest.92fc8f484f2cad95b3e3.js></script><script type=text/javascript src=/marketing/static/js/vendor.fef1c3d3b3b586faaee2.js></script><script type=text/javascript src=/marketing/static/js/main.a38bc9dd2a1132342ec3.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.33d5bc3c98aa6ca8612b022d0407d0eb.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.40.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.19.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.2.24.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.24.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-new.2.0.65.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.43.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.16.js></script><script src=//web-1251519181.file.myqcloud.com/components/input.2.0.20.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.2.20.js></script><script src=//web-1251519181.file.myqcloud.com/components/pagination.1.0.8.js></script><script src=//web-1251519181.file.myqcloud.com/components/activity-select.1.0.2.1.js></script><script type=text/javascript src=/marketing/static/js/manifest.21f870dc68fe622fbecc.js></script><script type=text/javascript src=/marketing/static/js/vendor.fef1c3d3b3b586faaee2.js></script><script type=text/javascript src=/marketing/static/js/main.a38bc9dd2a1132342ec3.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.
!function(e){var r=window.webpackJsonp;window.webpackJsonp=function(n,c,o){for(var i,u,f,d=0,s=[];d<n.length;d++)u=n[d],t[u]&&s.push(t[u][0]),t[u]=0;for(i in c)Object.prototype.hasOwnProperty.call(c,i)&&(e[i]=c[i]);for(r&&r(n,c,o);s.length;)s.shift()();if(o)for(d=0;d<o.length;d++)f=a(a.s=o[d]);return f};var n={},t={15:0};function a(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,a),t.l=!0,t.exports}a.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,a){r=t[e]=[n,a]});r[2]=n;var c=document.getElementsByTagName("head")[0],o=document.createElement("script");o.type="text/javascript",o.charset="utf-8",o.async=!0,o.timeout=12e4,a.nc&&o.setAttribute("nonce",a.nc),o.src=a.p+"static/js/"+({0:"card",1:"game",2:"wechat",3:"message",4:"ewash",5:"scan",6:"ecm",7:"evaluation",8:"activity",9:"cdKey",10:"recharge",11:"msg",12:"calllog"}[e]||e)+"."+{0:"3789648a73781a240407",1:"13dab37beda20959629e",2:"2bc295c93adcee55a98f",3:"0378b23ea9e2767987cf",4:"ac5092d9b2d7d1a3b93a",5:"d11e9bae507a16a50ac8",6:"1d5dae587ab925184cc9",7:"99e49bc49f2439ac7253",8:"35efeb2ae926b54b4341",9:"1bc2336dbaf1112fbdc8",10:"e5cd16e4f5e1229ea313",11:"00a6edc9657c9e4c34fa",12:"f1c9fa1ccd0d36ae0602"}[e]+".js";var i=setTimeout(u,12e4);function u(){o.onerror=o.onload=null,clearTimeout(i);var r=t[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return o.onerror=o.onload=u,c.appendChild(o),n},a.m=e,a.c=n,a.d=function(e,r,n){a.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},a.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(r,"a",r),r},a.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},a.p="/marketing/",a.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,o){for(var f,i,u,d=0,s=[];d<n.length;d++)i=n[d],t[i]&&s.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,o);s.length;)s.shift()();if(o)for(d=0;d<o.length;d++)u=a(a.s=o[d]);return u};var n={},t={15:0};function a(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,a),t.l=!0,t.exports}a.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,a){r=t[e]=[n,a]});r[2]=n;var c=document.getElementsByTagName("head")[0],o=document.createElement("script");o.type="text/javascript",o.charset="utf-8",o.async=!0,o.timeout=12e4,a.nc&&o.setAttribute("nonce",a.nc),o.src=a.p+"static/js/"+({0:"card",1:"game",2:"wechat",3:"message",4:"ewash",5:"scan",6:"ecm",7:"evaluation",8:"activity",9:"cdKey",10:"recharge",11:"msg",12:"calllog"}[e]||e)+"."+{0:"1fa73df8ddce484f2f42",1:"13dab37beda20959629e",2:"2bc295c93adcee55a98f",3:"0378b23ea9e2767987cf",4:"7cec0849f7d5925281a1",5:"d41d7be38a6b2e47332a",6:"c1746744c38badac79ac",7:"99e49bc49f2439ac7253",8:"35efeb2ae926b54b4341",9:"acd1803f49e3f7121560",10:"e5cd16e4f5e1229ea313",11:"00a6edc9657c9e4c34fa",12:"f1c9fa1ccd0d36ae0602"}[e]+".js";var f=setTimeout(i,12e4);function i(){o.onerror=o.onload=null,clearTimeout(f);var r=t[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return o.onerror=o.onload=i,c.appendChild(o),n},a.m=e,a.c=n,a.d=function(e,r,n){a.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},a.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(r,"a",r),r},a.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},a.p="/marketing/",a.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
......@@ -244,6 +244,9 @@ a:hover {
.w450{
width: 450px!important;
}
.w600{
width: 600px!important;
}
.ml120{
margin-left: 120px;
}
......
......@@ -111,6 +111,9 @@ export const saveUpdatePutonCard = params => requests(PREFIX + 'save-update-puto
//卡券营销--卡券记录--投放记录--编辑/投放记录详情
export const getCardPutonDetail = params => requests(PREFIX + 'get-card-puton-detail', params);
//卡券营销--查询商户卡券自动领取配置
export const getCardManualSetting = params => requests(PREFIX + 'get-marketing-setting', params);
// 商品查询
export const loadGoodsData = params => requests(PREFIX + 'load-goods-data', params);
......
......@@ -7,7 +7,7 @@ import linktools from '@/components/linktools-fulls/index';
import { formatDateTimeByType, deepClone, getTimesByReq } from '@/utils/index.js';
import xxSysp_mix from '@/mixins/selector.js'; // 商品选择器方法
import { listEntepriseWeimobShop, listEntepriseWeimobCoupon } from '@/service/api/commonApi.js';
import { getCardDetail, saveUpdateCard, copyCardDetailService, getCategoryList, getPropertyList, getLatestReptileTime, getPropertyValueList, getWeimobCouponBindCount } from '@/service/api/cardApi.js';
import { getCardDetail, saveUpdateCard, copyCardDetailService, getCardManualSetting, getCategoryList, getPropertyList, getLatestReptileTime, getPropertyValueList, getWeimobCouponBindCount } from '@/service/api/cardApi.js';
import dmGoodsInput from '@/components/goods-input/index.vue';
const initForm = {
auditingStatus: '',
......@@ -150,6 +150,9 @@ export default {
goodsDiscountCheck: true,
goodsDiscountCheckLower: true,
discountAmountCheck: true,
// 自动领取设置
couponAutoGetFlag: 0, // 1开启自动领取 0关闭
couponAutoGetStock: 0, // 自动领取最大库存数
// ----微盟适用商品----
f1: [], // 一层的list
wmloading: false,
......@@ -317,6 +320,31 @@ export default {
}
this.form.sendDateTime = [,];
},
// 切换自动领取
changeManualGetFlag(val) {
if (val == 0) {
// 想要设置为自动领取
this.$confirm(
`<div class="fz16 mb10">是否关闭用户手动领取?</div><div class="regular-font-color fz13">用户在领取卡券后需要<b class="bold">同步至ERP</b>,如果关闭用户<b class="bold">手动领取</b>,卡券在<b class="bold">批量投放</b>时会需要将卡券信息批量同步至ERP。
该过程可能需要持续一段时间(具体同步时间和同步卡券张数以及ERP性能有关,参考同步时间为1万张卡券1个小时)。
当前支持不需要用户手动领取的卡券库存最大值为<b class="bold">${this.couponAutoGetStock}</b>张。</div>`,
'提示',
{
customClass: 'w450',
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
dangerouslyUseHTMLString: true
}
)
.then(() => {
this.form.manualGetFlag = val;
})
.catch(() => {});
} else {
this.form.manualGetFlag = val;
}
},
//切换卡券类型 表单置为默认值
reset(e) {
this.form = JSON.parse(JSON.stringify(initForm));
......@@ -335,6 +363,9 @@ export default {
//卡券营销--卡券库--新建/编辑卡券/卡券记录-领取记录-点击卡券查看详情
async getCardDetail() {
this.loading = true;
let manualGetFlagSettingRes = await getCardManualSetting(); // 获取商户卡券自动领取配置
this.couponAutoGetFlag = manualGetFlagSettingRes.result.couponAutoGetFlag || 0;
this.couponAutoGetStock = manualGetFlagSettingRes.result.couponAutoGetStock;
let res = null;
if (this.isCopy) {
res = await copyCardDetailService({ coupCardId: this.$route.params.id });
......@@ -519,11 +550,11 @@ export default {
this.form.useDescript = card.useDescript || '';
// this.form.coverDescript = card.coverDescript || '';
this.form.manualGetFlag = card.manualGetFlag;
// 20210107
if (this.isAdd || this.isCopy) {
this.form.manualGetFlag = 1; // 永远设置为手动领取
if (this.isCopy && this.couponAutoGetFlag == 0) {
// 复制 && 商户配置不允许使用
this.form.manualGetFlag = 1;
}
if (!this.isCopy) {
// 非复制才赋值有效期,跳转链接
this.form.cardEffectiveMode = card.cardEffectiveMode;
......@@ -841,6 +872,15 @@ export default {
card.jumpLink = card.jumpFlag ? this.form.jumpLink : {};
card.manualGetFlag = this.form.manualGetFlag;
if ((this.isAdd || this.isCopy) && this.couponAutoGetFlag == 0) {
// 商户不允许使用自动领取配置
card.manualGetFlag = 1;
}
if (card.manualGetFlag == 0 && card.cardCodeCount > this.couponAutoGetStock) {
// 开启转赠 限制库存数
this.$tips({ message: `无需手动领取库存超过(${this.couponAutoGetStock})上限`, type: 'warning' });
return;
}
card.cardExplain = this.form.cardExplain;
card.useDescript = this.form.useDescript;
......@@ -872,10 +912,6 @@ export default {
}
}
// 20210107
if (this.isAdd || this.isCopy) {
card.manualGetFlag = 1; // 永远设置为手动领取
}
params.card = JSON.stringify(card);
console.log(card);
this.submitLoading = true;
......
......@@ -252,10 +252,16 @@
</div>
</el-form-item>
<!-- 20210107 关闭手动领取功能 只有关闭的历史数据显示该按钮 新增/历史数据是关闭的不显示 -->
<el-form-item label="手动领取" v-if="(isEdit || isInfo) && form.manualGetFlag == 0">
<el-switch :disabled="isEdit || isInfo" :active-value="1" :inactive-value="0" v-model="form.manualGetFlag"></el-switch>
<!-- 商户配置开关关闭时,编辑和详情是自动领取的需要展示manualGetFlag=0 -->
<el-form-item label="手动领取" v-if="couponAutoGetFlag || (!couponAutoGetFlag && form.manualGetFlag == 0 && (this.isEdit || this.isInfo))">
<el-switch :disabled="isEdit || isInfo" :active-value="1" :inactive-value="0" :value="form.manualGetFlag" @change="changeManualGetFlag"></el-switch>
<span class="gray fz13">* 用户是否需要手动点击来领取卡券</span>
<div style="margin-left:48px;" class="fz13 regular-font-color">
* 用户在领取卡券后需要<b class="bold">同步至ERP</b>,如果关闭用户<b class="bold">手动领取</b>,卡券在<b class="bold">批量投放</b>时会需要将卡券信息批量同步至ERP。 <br />
该过程可能需要持续一段时间(具体同步时间和同步卡券张数以及ERP性能有关,参考同步时间为1万张卡券1个小时)。 <br />
当前支持不需要用户手动领取的卡券库存最大值为<b class="bold">{{ couponAutoGetStock }}</b
>张。
</div>
</el-form-item>
<el-form-item label="跳转配置">
......
......@@ -147,7 +147,7 @@
</el-form>
</template>
<script>
import { checkPutonMemberIds, saveUpdatePutonCard, getCardDetail, getCardPutonDetail } from '@/service/api/cardApi.js';
import { checkPutonMemberIds, saveUpdatePutonCard, getCardDetail, getCardManualSetting, getCardPutonDetail } from '@/service/api/cardApi.js';
import { listTemplateVariables } from '@/service/api/msgApi.js';
import { formatDateTimeByType } from '@/utils/index.js';
import itemCard from './partials/item-card.vue';
......@@ -210,6 +210,9 @@ export default {
remarkText: '',
templateKeyDataList: []
},
// 自动领取设置
couponAutoGetFlag: 0, // 1开启自动领取 0关闭
couponAutoGetStock: 0, // 自动领取最大库存数
options: [],
varShow: false,
currentTxet: '',
......@@ -323,12 +326,14 @@ export default {
cardColor: card.cardColor,
cardEffectiveMode: card.cardEffectiveMode,
brandLogo: res.result.enterprise.qcloudImageUrl,
cardLimit: card.cardLimit
cardLimit: card.cardLimit,
manualGetFlag: card.manualGetFlag
};
}
// 如果是新增,调用详情接口获取卡券详情
if (this.isAdd) {
this.getCardDetail(res.result.enterprise.qcloudImageUrl);
this.getCardManualSetting(); // 获取商户卡券自动领取配置
}
// 模板消息
let template = null;
......@@ -344,6 +349,13 @@ export default {
}
}
},
// 获取商户卡券自动领取配置
getCardManualSetting() {
getCardManualSetting().then(res => {
this.couponAutoGetFlag = res.result.couponAutoGetFlag || 0;
this.couponAutoGetStock = res.result.couponAutoGetStock;
});
},
//卡券详情
async getCardDetail(logo) {
let res = await getCardDetail({ coupCardId: this.$route.params.id });
......@@ -360,7 +372,8 @@ export default {
cardColor: card.cardColor,
cardEffectiveMode: card.cardEffectiveMode,
brandLogo: logo,
cardLimit: card.cardLimit
cardLimit: card.cardLimit,
manualGetFlag: card.manualGetFlag
};
if (card.cardLimit > 1) {
// 领取限制大于1的卡券的卡券投放通知方式没有微信群发接口,默认为不通知
......@@ -492,15 +505,7 @@ export default {
this.$refs[formName].validate(valid => {
if (valid) {
this.$confirm('是否群发卡券?', '提示', {
confirmButtonText: '确定',
cancelBUttonText: '取消',
type: 'warning'
})
.then(() => {
this.sendCard();
})
.catch(() => {});
this.sendCard();
} else {
this.$tips({ type: 'warning', message: '表单未填写完整' });
return false;
......@@ -521,17 +526,28 @@ export default {
let res = await checkPutonMemberIds(params);
if (res.errorCode === 0) {
let sumPerson = res.result.totalSendCount;
this.$confirm(`合计发送${sumPerson}人,是否发送?`, '提示', {
let html = ``;
console.log(this.cardInfo);
if (this.cardInfo.manualGetFlag == 0) {
// 自动领取的卡券需要添加如下文案
html += `<div class="fz16">当前群发人数为${sumPerson}人,是否进行投放?</div><div class="regular-font-color fz13 mt10">用户在领取卡券后需要<b class="bold">同步至ERP</b>,如果关闭用户<b class="bold">手动领取</b>,卡券在<b class="bold">批量投放</b>时会需要将卡券信息批量同步至ERP。
该过程可能需要持续一段时间(具体同步时间和同步卡券张数以及ERP性能有关,参考同步时间为1万张卡券1个小时)。
当前支持不需要用户手动领取的卡券库存最大值为<b class="bold">${this.couponAutoGetStock}</b>张。</div>`;
} else {
html = `<div>当前群发人数为${sumPerson}人,是否进行投放?</div>`;
}
this.$confirm(html, '提示', {
customClass: 'w450',
confirmButtonText: '确定',
cancelBUttonText: '取消',
type: 'warning'
type: 'warning',
dangerouslyUseHTMLString: true
})
.then(() => {
this.saveUpdatePutonCard();
})
.catch(() => {
this.$tips({ type: 'info', message: '已取消提交' });
});
.catch(() => {});
} else {
this.$tips({ type: 'error', message: '操作失败' });
}
......
......@@ -125,9 +125,7 @@ export default {
.then(() => {
this.deleteCard(val);
})
.catch(() => {
this.$tips({ type: 'info', message: '已取消删除' });
});
.catch(() => {});
},
async deleteCard(coupCardId) {
await deleteCard({ coupCardId });
......
import { _debounce } from '@/utils/index';
import { getEcmInfo, saveEcmInfo } from '@/service/api/ecmApi.js';
import { getCardManualSetting } from '@/service/api/cardApi.js';
import { listTemplateVariables } from '@/service/api/msgApi.js';
import { klflStrategy } from '@/service/api/gameApi.js'; // 会员等级列表接口
import xxSysp_mix from '@/mixins/selector.js'; // 商品选择器方法mixins
......@@ -28,6 +29,9 @@ export default {
// error_cost_info: '',
// error_cost_count_info: '',
cardNoticeType: 0, // info 老数据用得到
// 自动领取设置
couponAutoGetFlag: 0, // 1开启自动领取 0关闭
couponAutoGetStock: 0, // 自动领取最大库存数
form: {
memberType: 0,
ecmPlanName: '',
......@@ -214,6 +218,13 @@ export default {
console.log(err);
}
},
// 获取商户卡券自动领取配置
getCardManualSetting() {
getCardManualSetting().then(res => {
this.couponAutoGetFlag = res.result.couponAutoGetFlag || 0;
this.couponAutoGetStock = res.result.couponAutoGetStock;
});
},
// 获取ecm信息
async getEcmInfo(isResetTemplate = false) {
this.loading = true;
......@@ -900,6 +911,7 @@ export default {
}
this.$store.commit('mutations_breadcrumb', [{ name: '营销管理', path: '' }, { name: '智能营销', path: '/ecm' }, { name: breadcrumbName, path: '' }]); // eslint-disable-line
this.listTemplateVariables();
this.getCardManualSetting();
},
beforeDestroy() {
this.$store.commit('mutations_layoutTips', '');
......
......@@ -207,6 +207,13 @@
<h3 class="dm-title__label">营销事件</h3>
<!-- 只有实时才是单图文 -->
<marketing-event :readOnly="isInfo" ref="marketingEvent" @has-card="hasCard" v-if="ecmPlanId" :singleFlag="form.effectType === 0" :integralMultiple="form.effectAction === 'consume'" :ecmPlanId="ecmPlanId" :isSupportVar="form.effectType === 0" :code="code" :enabledMessageState="enabledMessageState" :cardLimitType="-1"></marketing-event>
<!-- 只有非实时&&选择卡券了展示提示 -->
<div v-if="currentCard.comName && form.effectType != 0 && couponAutoGetFlag" class="fz13 regular-font-color line-height2" style="margin-left:120px;margin-top:30px;">
* 用户在领取卡券后需要<b class="bold">同步至ERP</b>,如果关闭用户<b class="bold">手动领取</b>,卡券在<b class="bold">批量投放</b>时会需要将卡券信息批量同步至ERP。 <br />
该过程可能需要持续一段时间(具体同步时间和同步卡券张数以及ERP性能有关,参考同步时间为1万张卡券1个小时)。 <br />
当前支持不需要用户手动领取的卡券库存最大值为<b class="bold">{{ couponAutoGetStock }}</b
>张。
</div>
</section>
<!-- 只有存在卡券的情况下出现卡券通知方式 -->
<section class="dm-form__wrap" v-if="currentCard.comName">
......
......@@ -15,9 +15,6 @@
</el-form-item>
<h3 class="title mt46">
营销次数配置
<el-tooltip class="item" effect="dark" content="设置本营销计划对同个会员的触发次数" open-delay="500" placement="top-start">
<i class="ml10 iconfont icon-xinxixianshi cursor fz14 gray"></i>
</el-tooltip>
</h3>
<el-form-item label="营销次数配置" prop="marketingTimesType">
<el-select :disabled="disabled" v-model="form.marketingTimesType" class="w150 vertical-middle">
......
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