Commit dcd3623a by 无尘

fix: 修改奖励配置

parent 09d580d6
<!DOCTYPE html><html><head><meta charset=utf-8><link rel="shortcut icon" href=./favicon.ico><title>分享有礼</title><link href=./static/css/app.0f365e2cf210c93e2567e1a1c4d8e530.css rel=stylesheet></head><body style="background-color: #f0f2f5;min-width: 1400px;"><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.6.6/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/lib/elementUI/index.2.5.4.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.03.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-new.2.0.29.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/people.2.0.38.js></script><script src=//web-1251519181.file.myqcloud.com/components/aside-menu.2.0.11.js></script><script src=//web-1251519181.file.myqcloud.com/components/area-ab.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.02.js></script><script src=//web-1251519181.file.myqcloud.com/components/selector.1.1.91.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.12.js></script><script type=text/javascript src=./static/js/manifest.d4b27dc84f85f33d96c6.js></script><script type=text/javascript src=./static/js/vendor.6e29ed0b437a6bb669b1.js></script><script type=text/javascript src=./static/js/app.680a6cd41b8032942b82.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><link rel="shortcut icon" href=./favicon.ico><title>分享有礼</title><link href=./static/css/app.6e0b9469e82ac7f4f44dd026940c1ee1.css rel=stylesheet></head><body style="background-color: #f0f2f5;min-width: 1400px;"><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.6.6/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/lib/elementUI/index.2.5.4.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.03.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-new.2.0.29.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/people.2.0.38.js></script><script src=//web-1251519181.file.myqcloud.com/components/aside-menu.2.0.11.js></script><script src=//web-1251519181.file.myqcloud.com/components/area-ab.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.02.js></script><script src=//web-1251519181.file.myqcloud.com/components/selector.1.1.91.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.12.js></script><script type=text/javascript src=./static/js/manifest.826645ad282409a7382f.js></script><script type=text/javascript src=./static/js/vendor.6e29ed0b437a6bb669b1.js></script><script type=text/javascript src=./static/js/app.8bec0e24b642f35fd04c.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 n=window.webpackJsonp;window.webpackJsonp=function(r,c,a){for(var f,i,u,d=0,b=[];d<r.length;d++)i=r[d],t[i]&&b.push(t[i][0]),t[i]=0;for(f in c)Object.prototype.hasOwnProperty.call(c,f)&&(e[f]=c[f]);for(n&&n(r,c,a);b.length;)b.shift()();if(a)for(d=0;d<a.length;d++)u=o(o.s=a[d]);return u};var r={},t={15:0};function o(n){if(r[n])return r[n].exports;var t=r[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,o),t.l=!0,t.exports}o.e=function(e){var n=t[e];if(0===n)return new Promise(function(e){e()});if(n)return n[2];var r=new Promise(function(r,o){n=t[e]=[r,o]});n[2]=r;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/"+e+"."+{0:"b1c6d8cabf2459ac5a8a",1:"5b546fa38466a0b05e37",2:"b07b0ce865296329407d",3:"6910fc54772239762497",4:"e42560cdcc9ef2f1fe8a",5:"8ecd133bf1cda0bdffb4",6:"2342d9cea2c3b9db329d",7:"b0fd74564cc799593b8f",8:"fe9ec49f63ecd8e527ba",9:"522a01ff8d619d2bf030",10:"e16b73d2d4b922255e52",11:"c11d02c33702d00b2e2e",12:"b96af0829c134b12bfbb"}[e]+".js";var f=setTimeout(i,12e4);function i(){a.onerror=a.onload=null,clearTimeout(f);var n=t[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return a.onerror=a.onload=i,c.appendChild(a),r},o.m=e,o.c=r,o.d=function(e,n,r){o.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(n,"a",n),n},o.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},o.p="./",o.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
!function(e){var n=window.webpackJsonp;window.webpackJsonp=function(r,c,a){for(var f,i,u,d=0,b=[];d<r.length;d++)i=r[d],t[i]&&b.push(t[i][0]),t[i]=0;for(f in c)Object.prototype.hasOwnProperty.call(c,f)&&(e[f]=c[f]);for(n&&n(r,c,a);b.length;)b.shift()();if(a)for(d=0;d<a.length;d++)u=o(o.s=a[d]);return u};var r={},t={15:0};function o(n){if(r[n])return r[n].exports;var t=r[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,o),t.l=!0,t.exports}o.e=function(e){var n=t[e];if(0===n)return new Promise(function(e){e()});if(n)return n[2];var r=new Promise(function(r,o){n=t[e]=[r,o]});n[2]=r;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/"+e+"."+{0:"b1c6d8cabf2459ac5a8a",1:"5b546fa38466a0b05e37",2:"57f1ec62a5f466d7d076",3:"6910fc54772239762497",4:"e42560cdcc9ef2f1fe8a",5:"8ecd133bf1cda0bdffb4",6:"2342d9cea2c3b9db329d",7:"b0fd74564cc799593b8f",8:"fe9ec49f63ecd8e527ba",9:"522a01ff8d619d2bf030",10:"e16b73d2d4b922255e52",11:"c11d02c33702d00b2e2e",12:"b96af0829c134b12bfbb"}[e]+".js";var f=setTimeout(i,12e4);function i(){a.onerror=a.onload=null,clearTimeout(f);var n=t[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return a.onerror=a.onload=i,c.appendChild(a),r},o.m=e,o.c=r,o.d=function(e,n,r){o.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(n,"a",n),n},o.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},o.p="./",o.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
......@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-11-21 16:37:02
* @LastEditors: 无尘
* @LastEditTime: 2019-11-25 10:53:44
* @LastEditTime: 2019-12-03 14:29:25
-->
<!--
<consume-config></consume-config>
......@@ -14,11 +14,23 @@ import consumeConfig from '@/components/active-config/configs/consume-config.vue
<template>
<div class="consume-config border-box">
<el-form label-width="154px" :model="consumeAction" ref="consumeForm" :rules="rules">
<el-form-item label="消费门店控制:" prop="">
<el-form
label-width="154px"
:model="consumeAction"
ref="consumeForm"
:rules="rules"
>
<el-form-item
label="消费门店控制:"
prop=""
>
<ul class="flex ">
<template v-for="(item, index) in consumeStoreData">
<li :class="['li-cell li-second-cell flex-1 ', consumeAction.consumeStoreControlFlag == item.goalId ? 'li-second-active' : '']" :key="index + 'first'" @click="selectStore(item)">
<li
:class="['li-cell li-second-cell flex-1 ', consumeAction.consumeStoreControlFlag == item.goalId ? 'li-second-active' : '']"
:key="index + 'first'"
@click="selectStore(item)"
>
<div class="li-cell-inner">
<div class="li-cell-bottom border-box">
<div class="li-cell-scene">
......@@ -37,24 +49,46 @@ import consumeConfig from '@/components/active-config/configs/consume-config.vue
</li>
</template>
</ul>
<div v-if="consumeAction.consumeStoreControlFlag == 1" class="store-select-wrap">
<div
v-if="consumeAction.consumeStoreControlFlag == 1"
class="store-select-wrap"
>
<div class="store-select-title">
<el-tooltip placement="top">
<div slot="content">该文案将显示在消费奖励规则中,<br />向活动参与者说明消费门店的条件要求,<br />请尽量用简洁易懂的描述。</div>
<span class="font-12 color-606266 cursor-pointer store-title-name">门店条件文案:</span>
</el-tooltip>
<limitInput :inputWidth="385" :disflag="$route.query.editFlag ? true : false" :inputValue.sync="consumeAction.consumeStoreName" :holder="'请输入门店条件文案'" :getByType="'char'" :maxLength="30"> </limitInput>
<limitInput
:inputWidth="385"
:disflag="$route.query.editFlag ? true : false"
:inputValue.sync="consumeAction.consumeStoreName"
:holder="'请输入门店条件文案'"
:getByType="'char'"
:maxLength="30"
> </limitInput>
</div>
<div class="store-select-body">
<vue-gic-store-card :readonly="$route.query.editFlag ? true : false" :uuid.sync="uuid" ref="storeCard"></vue-gic-store-card>
<vue-gic-store-card
:readonly="$route.query.editFlag ? true : false"
:uuid.sync="uuid"
ref="storeCard"
></vue-gic-store-card>
</div>
</div>
</el-form-item>
<el-form-item class="m-t-20" label="成交额控制:" prop="">
<el-form-item
class="m-t-20"
label="成交额控制:"
prop=""
>
<ul class="flex ">
<template v-for="(item, index) in dealAmountData">
<li :class="['li-cell li-second-cell flex-1 ', consumeAction.dealAmountControlFlag == item.goalId ? 'li-second-active' : '']" :key="index + 'first'" @click="selectMoney(item)">
<li
:class="['li-cell li-second-cell flex-1 ', consumeAction.dealAmountControlFlag == item.goalId ? 'li-second-active' : '']"
:key="index + 'first'"
@click="selectMoney(item)"
>
<div class="li-cell-inner">
<div class="li-cell-bottom border-box">
<div class="li-cell-scene">
......@@ -73,20 +107,41 @@ import consumeConfig from '@/components/active-config/configs/consume-config.vue
</li>
</template>
</ul>
<div v-if="consumeAction.dealAmountControlFlag == 1" class="store-select-wrap child-select-wrap">
<div
v-if="consumeAction.dealAmountControlFlag == 1"
class="store-select-wrap child-select-wrap"
>
<div class="store-select-title">
<span class="font-14 color-606266">控制区间:</span>
<el-input-number v-model="consumeAction.dealAmountControlMin" controls-position="right" :min="1" :max="999999"> </el-input-number>
<el-input-number
v-model="consumeAction.dealAmountControlMin"
controls-position="right"
:min="1"
:max="999999"
> </el-input-number>
<span class="font-14 color-606266 p-l-3 p-r-10">元 - </span>
<el-input-number v-model="consumeAction.dealAmountControlMax" controls-position="right" :min="1" :max="999999"> </el-input-number>
<el-input-number
v-model="consumeAction.dealAmountControlMax"
controls-position="right"
:min="1"
:max="999999"
> </el-input-number>
<span class="font-14 color-606266"></span>
</div>
</div>
</el-form-item>
<el-form-item class="m-t-20" label="单笔成交件数控制:" prop="">
<el-form-item
class="m-t-20"
label="单笔成交件数控制:"
prop=""
>
<ul class="flex">
<template v-for="(item, index) in singleDealData">
<li :class="['li-cell li-second-cell flex-1 ', consumeAction.singleDealNumberControlFlag == item.goalId ? 'li-second-active' : '']" :key="index + 'first'" @click="selectNumber(item)">
<li
:class="['li-cell li-second-cell flex-1 ', consumeAction.singleDealNumberControlFlag == item.goalId ? 'li-second-active' : '']"
:key="index + 'first'"
@click="selectNumber(item)"
>
<div class="li-cell-inner">
<div class="li-cell-bottom border-box">
<div class="li-cell-scene">
......@@ -105,12 +160,25 @@ import consumeConfig from '@/components/active-config/configs/consume-config.vue
</li>
</template>
</ul>
<div v-if="consumeAction.singleDealNumberControlFlag == 1" class="store-select-wrap child-select-wrap">
<div
v-if="consumeAction.singleDealNumberControlFlag == 1"
class="store-select-wrap child-select-wrap"
>
<div class="store-select-title">
<span class="font-14 color-606266">控制区间:</span>
<el-input-number v-model="consumeAction.singleDealNumberControlMin" controls-position="right" :min="1" :max="99"> </el-input-number>
<el-input-number
v-model="consumeAction.singleDealNumberControlMin"
controls-position="right"
:min="1"
:max="99"
> </el-input-number>
<span class="font-14 color-606266 p-l-3 p-r-10">件 - </span>
<el-input-number v-model="consumeAction.singleDealNumberControlMax" controls-position="right" :min="1" :max="99"> </el-input-number>
<el-input-number
v-model="consumeAction.singleDealNumberControlMax"
controls-position="right"
:min="1"
:max="99"
> </el-input-number>
<span class="font-14 color-606266"></span>
</div>
</div>
......@@ -136,7 +204,8 @@ export default {
singleDealNumberControlMin: 1, //单笔成交件数最小值
singleDealNumberControlMax: 1, //单笔成交件数最大值
uuid: '',
storeList: []
storeList: [],
"stepType": 1 //步骤类型 类型:1服务号关注,2活动营销页访问奖励,3会员认证奖励,4游戏参与奖励,5卡券领取奖励6,消费奖励
};
}
}
......@@ -156,7 +225,8 @@ export default {
singleDealNumberControlMin: 1, //单笔成交件数最小值
singleDealNumberControlMax: 1, //单笔成交件数最大值
uuid: '',
storeList: []
storeList: [],
"stepType": 1 //步骤类型 类型:1服务号关注,2活动营销页访问奖励,3会员认证奖励,4游戏参与奖励,5卡券领取奖励6,消费奖励
},
consumeStoreData: [
{
......
......@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-11-21 16:37:02
* @LastEditors: 无尘
* @LastEditTime: 2019-12-03 10:09:14
* @LastEditTime: 2019-12-03 14:30:35
-->
<!--
<fraud-control></fraud-control>
......@@ -160,6 +160,7 @@ export default {
amountLimitAmount: 1,
pointProgram: 1, //0、不限制,1、延时发放(推荐),2积分冻结
pointControlDay: 1, //限制延时
"stepType": 1 //步骤类型 类型:1服务号关注,2活动营销页访问奖励,3会员认证奖励,4游戏参与奖励,5卡券领取奖励6,消费奖励
};
}
}
......@@ -172,7 +173,6 @@ export default {
amountLimitAmount: 1,
pointProgram: 1, //0、不限制,1、延时发放(推荐),2积分冻结
pointControlDay: 1, //限制延时
stepType: 1 //步骤类型 类型:1服务号关注,2活动营销页访问奖励,3会员认证奖励,4游戏参与奖励,5卡券领取奖励6,消费奖励
},
modeData: [
......
......@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-11-21 16:37:02
* @LastEditors: 无尘
* @LastEditTime: 2019-12-02 10:36:49
* @LastEditTime: 2019-12-03 14:30:11
-->
<!--
<invitee-reward></invitee-reward>
......@@ -333,7 +333,8 @@ export default {
cardId: '',
cardName: ''
}
]
],
"stepType": 1 //步骤类型 类型:1服务号关注,2活动营销页访问奖励,3会员认证奖励,4游戏参与奖励,5卡券领取奖励6,消费奖励
};
}
}
......
......@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-11-21 16:37:02
* @LastEditors: 无尘
* @LastEditTime: 2019-12-02 14:06:55
* @LastEditTime: 2019-12-03 14:29:41
-->
<!--
<spot-award></spot-award>
......@@ -303,7 +303,8 @@ export default {
], //即时奖励内容(阶梯内容) 奖励内容json字符串
awardLimitType: 1, //奖励限制类型 1、不限制奖励(推荐),2、限制奖励次数,3、限制奖励额度
awardLimitNumber: 1, //限制奖励次数
awardLimitPoint: 1 //限制奖励额度
awardLimitPoint: 1, //限制奖励额度
"stepType": 1 //步骤类型 类型:1服务号关注,2活动营销页访问奖励,3会员认证奖励,4游戏参与奖励,5卡券领取奖励6,消费奖励
};
}
}
......
......@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-11-20 13:44:22
* @LastEditors: 无尘
* @LastEditTime: 2019-12-03 14:09:26
* @LastEditTime: 2019-12-03 15:06:08
-->
<!--
单个上传组件
......@@ -158,7 +158,7 @@ export default {
that.$message.error(`图片宽度必须≥${that.width}px,宽高比≤${that.limitRate}!`);
reject();
}
if (that.limitFlag == 3 && (width < that.width || width/height != that.limitRate) ){
if (that.limitFlag == 3 && (width < that.width || width/height != 5/4) ){
that.$message.error(`图片宽度必须≥${that.width}px,宽高比≤5/4!`);
reject();
}
......
......@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-11-12 10:18:30
* @LastEditors: 无尘
* @LastEditTime: 2019-11-26 15:25:57
* @LastEditTime: 2019-12-03 14:57:56
*/
import Vuex from 'vuex';
import Vue from 'vue';
......@@ -25,6 +25,7 @@ export default new Vuex.Store({
cardInfo: {}, // 小程序卡片配置
posterInfo: {}, // 海报配置
rewardInfo: {}, // 奖励配置
multRewardInfo: {}, // 渐进式奖励配置
tempBackData: [] // 后端判断禁用数据
},
mutations: {
......@@ -66,12 +67,16 @@ export default new Vuex.Store({
saveReward: (state, data) => {
state.rewardInfo = data;
},
saveMultReward: (state, data) => {
state.multRewardInfo = data;
},
clearData: state => {
state.baseInfo = {};
state.centerInfo = {};
state.cardInfo = {};
state.posterInfo = {};
state.rewardInfo = {};
state.multRewardInfo = {};
},
clearIndex: state => {
state.activeInfo = {};
......@@ -96,6 +101,9 @@ export default new Vuex.Store({
saveRewardInfo(context, data) {
context.commit('saveReward', data);
},
saveMultRewardInfo(context, data) {
context.commit('saveMultReward', data);
},
clearActiveData(context, data) {
context.commit('clearData');
},
......
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