Commit 10760c8e by caoyanzhi

update: 新增特殊积分获取策略

parent b65be58d
...@@ -5,22 +5,29 @@ ...@@ -5,22 +5,29 @@
<div class="right-box"> <div class="right-box">
<div class="attention-wrap"> <div class="attention-wrap">
<div class="form-wrap"> <div class="form-wrap">
<el-form :model="ruleForm" ref="ruleForm" label-width="120px" class="demo-ruleForm"> <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="120px" class="demo-ruleForm">
<el-form-item label="策略名称" prop=""> <dm-sub-title text="基本信息" type="fill" style="margin-bottom: 20px"></dm-sub-title>
<el-input v-model="ruleForm.strategyName" class="w-340" @keyup.native="value => toInput(value)"> </el-input> <el-form-item label="策略名称:" prop="strategyName">
<el-input v-model="ruleForm.strategyName" class="w-340" placeholder="请输入策略名称" @keyup.native="value => toInput(value)"> </el-input>
<label class="input-label">{{ cateNameLength }}/20</label> <label class="input-label">{{ cateNameLength }}/20</label>
</el-form-item> </el-form-item>
<dm-sub-title text="渠道配置" type="fill" style="margin: 40px 0 20px 0"></dm-sub-title>
<template v-for="(item, index) in ruleForm.channelList"> <template v-for="(item, index) in ruleForm.channelList">
<!-- 线下渠道 --> <!-- 线下渠道 -->
<template v-if="item.channelType == 3"> <template v-if="item.channelType == 3">
<el-form-item label="适用线下渠道" prop="" :key="index"> <el-form-item label="线下渠道:" prop="" :key="index">
<el-switch v-model="item.openStatus" active-text="启用" inactive-text="停用"> </el-switch> <el-switch v-model="item.openStatus"> </el-switch>
</el-form-item> <span class="setting-tips">客户在线下门店产生的订单</span>
<div class="form-child" v-if="item.openStatus" :key="index"> <div class="form-child" v-if="item.openStatus" :key="index">
<el-form-item label="消费门店" prop="region"> <el-form-item label="选择商户:" label-width="85px" style="margin-bottom: 20px">
<el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple @change="onStoreChange(item)">
<el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option>
</el-select>
</el-form-item>
<el-form-item v-if="Array.isArray(item.enterpriseRelationIdArr) && item.enterpriseRelationIdArr.length > 0" label="消费门店:" prop="region" label-width="85px" style="margin-bottom: 20px">
<dm-store-selector :isClique="true" :scenesVal="scencs" :options="options" :isAdd="isAdd" :uuid.sync="uuid" ref="storeGroup"></dm-store-selector> <dm-store-selector :isClique="true" :scenesVal="scencs" :options="options" :isAdd="isAdd" :uuid.sync="uuid" ref="storeGroup"></dm-store-selector>
</el-form-item> </el-form-item>
<el-form-item label="适用商品" prop="name" class="padding-0"> <el-form-item v-if="Array.isArray(item.enterpriseRelationIdArr) && item.enterpriseRelationIdArr.length > 0" label="适用商品:" prop="name" class="padding-0" label-width="85px" style="margin-bottom: 20px">
<el-select v-model="item.channelRelationProType" placeholder="请选择" @change="changeGood($event)"> <el-select v-model="item.channelRelationProType" placeholder="请选择" @change="changeGood($event)">
<el-option v-for="item in applyGoods" :key="item.value" :label="item.label" :value="item.value"> </el-option> <el-option v-for="item in applyGoods" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select>
...@@ -30,34 +37,35 @@ ...@@ -30,34 +37,35 @@
<treeselect v-if="item.channelRelationProType == 2 || item.channelRelationProType == 3" placeholder="" noOptionsText="暂无数据" noResultsText="无数据" :multiple="true" :always-open="goodsOpen" :options="goodsTreeOptions" :value-consists-of="valueConsistsOf" v-model="item.strategyGoodsRelationIdArr" /> <treeselect v-if="item.channelRelationProType == 2 || item.channelRelationProType == 3" placeholder="" noOptionsText="暂无数据" noResultsText="无数据" :multiple="true" :always-open="goodsOpen" :options="goodsTreeOptions" :value-consists-of="valueConsistsOf" v-model="item.strategyGoodsRelationIdArr" />
<el-button v-if="item.channelRelationProType == 4" @click="showGoodsDialog">已选0件商品</el-button> <el-button v-if="item.channelRelationProType == 4" @click="showGoodsDialog">已选0件商品</el-button>
</el-form-item> </el-form-item>
<el-form-item label="折扣控制" prop="region"> <el-form-item label="折扣控制:" prop="region" label-width="85px">
<div class="radio-cell"> <div class="radio-cell">
<el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio> <el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio>
</div> </div>
<div class="radio-cell margin-20"> <div class="radio-cell margin-20">
<el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio> <el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio>
<el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="0.01" :step="0.01"></el-input-number> <el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="1" :step="0.01" placeholder="请输入" style="width: 115px"></el-input-number>
<label></label> <label></label>
<el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="0.01"></el-input-number> <el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="1" placeholder="请输入" style="width: 115px"></el-input-number>
<label>折商品都适用</label> <label>折商品都适用</label>
<span style="font-size: 13px;color: #828282;line-height: 1;padding-left: 10px;">注意:折扣范围0.01-10.00,最低折扣不能大于最高折扣</span> <span class="setting-tips">折扣范围1-10,填写8.8,则表示“打8.8折”,也即商品原价*8.8/10=商品折后价</span>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-form-item>
</template> </template>
<template v-if="item.channelType == 1"> <template v-if="item.channelType == 1">
<!-- 微信商城 --> <!-- 达摩微商城 -->
<el-form-item label="适用微信商城" prop="" :key="index"> <el-form-item label="达摩微商城:" prop="" :key="index">
<el-switch v-model="item.openStatus" active-text="启用" inactive-text="停用"> </el-switch> <el-switch v-model="item.openStatus"> </el-switch>
</el-form-item> <span class="setting-tips">客户在达摩微商城产生的订单</span>
<div class="form-child margin-20" v-if="item.openStatus == true" :key="index"> <div class="form-child margin-20" v-if="item.openStatus == true" :key="index">
<el-form-item label="选择商户"> <el-form-item label="选择商户:" label-width="85px" style="margin-bottom: 20px">
<el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple> <el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple>
<el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option> <el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="适用商品" class="padding-0"> <el-form-item label="适用商品:" class="padding-0" label-width="85px" style="margin-bottom: 20px">
<el-select v-model="item.channelRelationProType" placeholder="请选择" @change="changeGood($event)"> <el-select v-model="item.channelRelationProType" placeholder="请选择" @change="changeGood($event)">
<el-option v-for="item in applyGoods" :key="item.value" :label="item.label" :value="item.value"> </el-option> <el-option v-for="item in applyGoods" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select>
...@@ -68,92 +76,194 @@ ...@@ -68,92 +76,194 @@
<!--model=item.strategyGoodsRelationIdArr和上一个相同会有问题 --> <!--model=item.strategyGoodsRelationIdArr和上一个相同会有问题 -->
<el-button v-if="item.channelRelationProType == 4" @click="showGoodsDialog">已选0件商品</el-button> <el-button v-if="item.channelRelationProType == 4" @click="showGoodsDialog">已选0件商品</el-button>
</el-form-item> </el-form-item>
<el-form-item label="折扣控制" prop="region"> <el-form-item label="折扣控制:" prop="region" label-width="85px" style="margin-bottom: 20px">
<div class="radio-cell"> <div class="radio-cell">
<el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio> <el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio>
</div> </div>
<div class="radio-cell margin-20"> <div class="radio-cell margin-20">
<el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio> <el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio>
<el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="0.01"></el-input-number> <el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label></label> <label></label>
<el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="0.01"></el-input-number> <el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label>折商品都适用</label> <label>折商品都适用</label>
<span style="font-size: 13px;color: #828282;line-height: 1;padding-left: 10px;">注意:折扣范围0.01-10.00,最低折扣不能大于最高折扣</span> <span class="setting-tips">折扣范围1-10,填写8.8,则表示“打8.8折”,也即商品原价*8.8/10=商品折后价</span>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-form-item>
</template> </template>
<!-- 微盟渠道--> <!-- 微盟渠道-->
<template v-if="item.channelType == 9"> <template v-if="item.channelType == 9">
<el-form-item label="微盟渠道" prop="" :key="index"> <el-form-item label="微盟渠道" prop="" :key="index">
<el-switch v-model="item.openStatus"> </el-switch> <el-switch v-model="item.openStatus"> </el-switch>
</el-form-item> <span class="setting-tips">客户在微盟微商城产生的订单</span>
<div class="form-child margin-20" v-if="item.openStatus == true" :key="index"> <div class="form-child margin-20" v-if="item.openStatus == true" :key="index">
<el-form-item label="选择商户"> <el-form-item label="选择商户:" label-width="85px" style="margin-bottom: 20px">
<el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple> <el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple @change="onStoreChange(item)">
<el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option> <el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="选择店铺"> <el-form-item v-if="Array.isArray(item.enterpriseRelationIdArr) && item.enterpriseRelationIdArr.length > 0" label="消费门店:" label-width="85px" style="margin-bottom: 20px">
<el-select v-model="storeValue" v-if="!isJinHua"> <el-select v-model="storeValue" v-if="!isJinHua">
<el-option label="所有门店" value=""></el-option> <el-option label="所有门店" value=""></el-option>
</el-select> </el-select>
<vue-gic-store-new v-else :scenesVal="scencs" :options="options" :isAdd="isAdd" :uuid.sync="wmuuid" ref="wmstoreGroup"></vue-gic-store-new> <vue-gic-store-new v-else :scenesVal="scencs" :options="options" :isAdd="isAdd" :uuid.sync="wmuuid" ref="wmstoreGroup"></vue-gic-store-new>
</el-form-item> </el-form-item>
<el-form-item label="微盟商品" class="padding-0"> <el-form-item v-if="Array.isArray(item.enterpriseRelationIdArr) && item.enterpriseRelationIdArr.length > 0" label="适用商品:" class="padding-0" label-width="85px" style="margin-bottom: 20px">
<el-select v-model="item.channelRelationProType" placeholder="请选择"> <el-select v-model="item.channelRelationProType" placeholder="请选择">
<el-option v-for="item in wMGoodOption" :key="item.value" :label="item.label" :value="item.value"> </el-option> <el-option v-for="item in wMGoodOption" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="折扣控制" prop="region" class="input-margin-b"> <el-form-item label="折扣控制:" prop="region" class="input-margin-b" label-width="85px">
<div class="radio-cell"> <div class="radio-cell">
<el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio> <el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio>
</div> </div>
<div class="radio-cell margin-20"> <div class="radio-cell margin-20">
<el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio> <el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio>
<el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="0.01"></el-input-number> <el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label></label> <label></label>
<el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="0.01"></el-input-number> <el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label>折商品都适用</label> <label>折商品都适用</label>
<span style="font-size: 13px;color: #828282;line-height: 1;padding-left: 10px;">注意:折扣范围0.01-10.00,最低折扣不能大于最高折扣</span> <span class="setting-tips">折扣范围1-10,填写8.8,则表示“打8.8折”,也即商品原价*8.8/10=商品折后价</span>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
</el-form-item>
</template>
<!-- 天猫 -->
<template v-if="item.channelType == 8">
<el-form-item label="天猫渠道:" prop="" :key="index">
<el-switch v-model="item.openStatus"> </el-switch>
<span class="setting-tips">客户在天猫店铺产生的订单</span>
<div class="form-child margin-20" v-if="item.openStatus == true" :key="index">
<el-form-item label="选择商户:" label-width="85px" style="margin-bottom: 20px">
<el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple>
<el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="折扣控制:" prop="region" label-width="85px" style="margin-bottom: 20px">
<div class="radio-cell">
<el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio>
</div>
<div class="radio-cell margin-20">
<el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio>
<el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label></label>
<el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label>折商品都适用</label>
<span class="setting-tips">折扣范围1-10,填写8.8,则表示“打8.8折”,也即商品原价*8.8/10=商品折后价</span>
</div>
</el-form-item>
</div>
</el-form-item>
</template>
<!-- 抖音 11 -->
<template v-if="item.channelType == 11">
<el-form-item label="抖音渠道:" prop="" :key="index">
<el-switch v-model="item.openStatus"> </el-switch>
<span class="setting-tips">客户在抖音店铺产生的订单</span>
<div class="form-child margin-20" v-if="item.openStatus == true" :key="index">
<el-form-item label="选择商户:" label-width="85px" style="margin-bottom: 20px">
<el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple>
<el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="折扣控制:" prop="region" label-width="85px" style="margin-bottom: 20px">
<div class="radio-cell">
<el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio>
</div>
<div class="radio-cell margin-20">
<el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio>
<el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label></label>
<el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label>折商品都适用</label>
<span class="setting-tips">折扣范围1-10,填写8.8,则表示“打8.8折”,也即商品原价*8.8/10=商品折后价</span>
</div>
</el-form-item>
</div>
</el-form-item>
</template>
<!-- 其他 10 -->
<template v-if="item.channelType == 10">
<el-form-item label="其他渠道:" prop="" :key="index">
<el-switch v-model="item.openStatus"> </el-switch>
<span class="setting-tips">客户在其它渠道产生的订单</span>
<div class="form-child margin-20" v-if="item.openStatus == true" :key="index">
<el-form-item label="选择商户:" label-width="85px" style="margin-bottom: 20px">
<el-select size="small" v-model="item.enterpriseRelationIdArr" placeholder="请选择" multiple>
<el-option v-for="(item, ind) in mechantOption" :key="ind" :label="item.label" :value="item.value"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="折扣控制:" prop="region" label-width="85px" style="margin-bottom: 20px">
<div class="radio-cell">
<el-radio v-model="item.integralUseDiscountControl" label="1">所有折扣商品都适用</el-radio>
</div>
<div class="radio-cell margin-20">
<el-radio v-model="item.integralUseDiscountControl" label="2">折扣</el-radio>
<el-input-number v-model="item.integralUseDiscountControlLower" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label></label>
<el-input-number v-model="item.integralUseDiscountControlUpper" :precision="2" :controls="false" :max="10.0" :min="1" style="width: 115px"></el-input-number>
<label>折商品都适用</label>
<span class="setting-tips">折扣范围1-10,填写8.8,则表示“打8.8折”,也即商品原价*8.8/10=商品折后价</span>
</div>
</el-form-item>
</div>
</el-form-item>
</template> </template>
</template> </template>
<el-form-item label="适用对象" prop="" class="margin-20"> <dm-sub-title text="规则配置" type="fill" style="margin: 40px 0 20px"></dm-sub-title>
<el-select v-model="ruleForm.useCrowd" placeholder="请选择"> <el-form-item label="适用对象:" prop="useCrowd" class="margin-20">
<!-- <el-select v-model="ruleForm.useCrowd" placeholder="请选择">
<el-option v-for="item in applyObjOption" :key="item.value" :label="item.label" :value="item.value"> </el-option> <el-option v-for="item in applyObjOption" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select> -->
<el-radio-group v-model="ruleForm.useCrowd">
<el-radio v-for="el in applyObjOption" :key="el.value" :label="el.value">{{ el.label }}</el-radio>
</el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="人群定向" v-if="ruleForm.useCrowd == 2" prop="" class="padding-0"> <el-form-item label="人群定向" v-if="ruleForm.useCrowd == 2" prop="" class="padding-0">
<el-button style="width: 214px;" @click="showPeople">已设置{{ selectCount }}项筛选</el-button> <el-button style="width: 214px;" @click="showPeople">已设置{{ selectCount }}项筛选</el-button>
</el-form-item> </el-form-item>
<el-form-item label="获取规则" prop=""> <el-form-item label="获取规则:" prop="integralGetStatus">
<div> <div>
<el-radio v-model="ruleForm.integralGetStatus" label="0">不获取积分</el-radio>
</div>
<div class="margin-20">
<el-radio v-model="ruleForm.integralGetStatus" label="1">每消费</el-radio> <el-radio v-model="ruleForm.integralGetStatus" label="1">每消费</el-radio>
<el-input-number v-model="ruleForm.integralGet.fee" :precision="1" :controls="false" :max="10000.0" :min="0.1"></el-input-number> <el-input-number v-model="ruleForm.integralGet.fee" :precision="1" :controls="false" :max="10000.0" :min="0.1" style="width: 115px"></el-input-number>
<label>元,获取 </label> <label>元,获取 </label>
<!-- <el-input v-model="ruleForm.integralGet.integral" @blur="formatInputNumBlur($event)"></el-input> --> <!-- <el-input v-model="ruleForm.integralGet.integral" @blur="formatInputNumBlur($event)"></el-input> -->
<el-input-number v-model="ruleForm.integralGet.integral" :precision="1" :controls="false" :max="10000.0" :min="0.1"></el-input-number> <el-input-number v-model="ruleForm.integralGet.integral" :precision="1" :controls="false" :max="10000.0" :min="0.1" style="width: 115px"></el-input-number>
<label>积分。取整策略为</label> <label>积分。取整策略为</label>
<el-select v-model="ruleForm.integralGetStrategy" placeholder="请选择"> <el-select v-model="ruleForm.integralGetStrategy" placeholder="请选择" style="width: 115px">
<el-option v-for="item in cateOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> <el-option v-for="item in cateOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-select> </el-select>
</div> <p class="setting-tips" style="margin: 6px 0 0">例:根据消费金额计算出积分为4.3,选择「四舍五入」和「进位制」时为5积分,选择「抹零」则为4积分</p>
<div>
<el-radio v-model="ruleForm.integralGetStatus" label="0" class="margin-20">不获取积分</el-radio>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="积分冻结期" v-if="ruleForm.integralGetStatus == 1"> <el-input v-model="ruleForm.integralGetFreezeDays" @keyup.native="formatInputNum($event)"></el-input><label></label> </el-form-item> <el-form-item label="积分冻结期:" v-if="ruleForm.integralGetStatus == 1" prop="integralGetFreezeDays">
<el-form-item label="积分有效期" v-if="ruleForm.integralGetStatus == 1"> <el-input v-model="ruleForm.integralGetEffectiveDays" @keyup.native="formatInputNum($event)"></el-input><label></label> </el-form-item> 自获取之日起
<el-input v-model="ruleForm.integralGetFreezeDays" @keyup.native="formatInputNum($event)" style="width: 115px"></el-input><label></label>
<span class="setting-tips">仅对通过订单获取的积分生效,活动类获取的积分没有冻结期</span>
</el-form-item>
<el-form-item label="积分有效期:" v-if="ruleForm.integralGetStatus == 1" prop="integralGetEffectiveDays">
自获取之日起
<el-input v-model="ruleForm.integralGetEffectiveDays" @keyup.native="formatInputNum($event)" style="width: 115px"></el-input><label></label>
<span class="setting-tips">适用于所有方式获取的积分</span>
</el-form-item>
<!-- 新增策略有效期配置 --> <!-- 新增策略有效期配置 -->
<el-form-item label="策略有效期" prop=""> <el-form-item label="策略有效期:" prop="perpetualFlag">
<!-- 1 永久 0 非永久 --> <!-- 1 永久 0 非永久 -->
<el-radio v-model="ruleForm.perpetualFlag" :label="1">永久有效</el-radio> <el-radio v-model="ruleForm.perpetualFlag" :label="1">永久有效</el-radio>
<el-radio v-model="ruleForm.perpetualFlag" :label="0"> <el-radio v-model="ruleForm.perpetualFlag" :label="0">
在该时段内有效 在该时段内有效
</el-radio>
<el-radio v-model="ruleForm.perpetualFlag" :label="2">每月</el-radio>
<el-radio v-model="ruleForm.perpetualFlag" :label="3">每周</el-radio>
<el-radio v-model="ruleForm.perpetualFlag" :label="4">生日当日</el-radio>
<el-radio v-model="ruleForm.perpetualFlag" :label="5">生日当月</el-radio>
<div style="margin-top: 10px">
<el-date-picker <el-date-picker
v-if="ruleForm.perpetualFlag === 0" v-if="ruleForm.perpetualFlag === 0"
v-model="ruleForm.perpetualDate" v-model="ruleForm.perpetualDate"
...@@ -164,7 +274,13 @@ ...@@ -164,7 +274,13 @@
value-format="timestamp" value-format="timestamp"
:default-time="['00:00:00', '23:59:59']"> :default-time="['00:00:00', '23:59:59']">
</el-date-picker> </el-date-picker>
</el-radio> <el-select v-if="ruleForm.perpetualFlag == 2" v-model="ruleForm.checkMonthDay" placeholder="请选择">
<el-option v-for="item in 28" :key="item" :label="item" :value="item"></el-option>
</el-select>
<el-select v-if="ruleForm.perpetualFlag == 3" v-model="ruleForm.checkWeekDay" placeholder="请选择">
<el-option v-for="(item, index) in weekDayArr" :key="index + 1" :label="item" :value="index + 1"></el-option>
</el-select>
</div>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button :disabled="tpnEditBool" type="primary" @click="submitForm('ruleForm')">保 存</el-button> <el-button :disabled="tpnEditBool" type="primary" @click="submitForm('ruleForm')">保 存</el-button>
...@@ -238,7 +354,7 @@ export default { ...@@ -238,7 +354,7 @@ export default {
path: '/pointSystem' path: '/pointSystem'
}, },
{ {
name: '添加积分获取策略', name: '新增积分获取策略',
path: '' path: ''
} }
], ],
...@@ -366,9 +482,14 @@ export default { ...@@ -366,9 +482,14 @@ export default {
label: '自定义人群', label: '自定义人群',
value: '2' value: '2'
} }
// {
// label: '客户分组',
// value: '3'
// }
], ],
// 长度 // 长度
cateNameLength: 0, cateNameLength: 0,
weekDayArr: ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日'],
ruleForm: { ruleForm: {
// 积分获取规则 // 积分获取规则
...@@ -386,13 +507,15 @@ export default { ...@@ -386,13 +507,15 @@ export default {
integralUseStatus: '0', // 积分抵现开启 1是0否 integralUseStatus: '0', // 积分抵现开启 1是0否
integralUse: null, // 积分抵现 {fee:5,integral:5} integralUse: null, // 积分抵现 {fee:5,integral:5}
perpetualFlag: 1, perpetualFlag: 1,
checkMonthDay: '',
checkWeekDay: '',
channelList: [ channelList: [
{ {
integralStrategyChannelId: '', //id integralStrategyChannelId: '', //id
enterpriseId: '', enterpriseId: '',
integralStrategyId: '', //策略id integralStrategyId: '', //策略id
channelType: '3', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫 channelType: '3', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫
openStatus: true, //渠道配置是否启用 1启用 0停用 openStatus: false, //渠道配置是否启用 1启用 0停用
channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业 channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业
channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店 channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店
channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管) channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管)
...@@ -410,7 +533,7 @@ export default { ...@@ -410,7 +533,7 @@ export default {
enterpriseId: '', enterpriseId: '',
integralStrategyId: '', //策略id integralStrategyId: '', //策略id
channelType: '1', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫 channelType: '1', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫
openStatus: true, //渠道配置是否启用 1启用 0停用 openStatus: false, //渠道配置是否启用 1启用 0停用
channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业 channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业
channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店 channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店
channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管) channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管)
...@@ -428,8 +551,26 @@ export default { ...@@ -428,8 +551,26 @@ export default {
integralStrategyChannelId: '', //id integralStrategyChannelId: '', //id
enterpriseId: '', enterpriseId: '',
integralStrategyId: '', //策略id integralStrategyId: '', //策略id
channelType: '9', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫
openStatus: false, //渠道配置是否启用 1启用 0停用
channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业
channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店
channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管)
channelRelationProType: '1', // 策略关联商品类型 1所有商品 2商品品牌 3商品类目 4部分商品
integralUseDiscountControl: '1', // 折扣控制 1所有折扣商品适用 2折扣范围
integralUseDiscountControlUpper: '0.0',
integralUseDiscountControlLower: '0.0',
useProportionalRestriction: '0.0', // 抵现比例限制
strategyGoodsRelationIdArr: [], // 商品
storeRelationIdArr: [], //门店
enterpriseRelationIdArr: [] //商户
},
{
integralStrategyChannelId: '', //id
enterpriseId: '',
integralStrategyId: '', //策略id
channelType: '8', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫 channelType: '8', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫
openStatus: true, //渠道配置是否启用 1启用 0停用 openStatus: false, //渠道配置是否启用 1启用 0停用
channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业 channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业
channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店 channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店
channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管) channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管)
...@@ -446,8 +587,26 @@ export default { ...@@ -446,8 +587,26 @@ export default {
integralStrategyChannelId: '', //id integralStrategyChannelId: '', //id
enterpriseId: '', enterpriseId: '',
integralStrategyId: '', //策略id integralStrategyId: '', //策略id
channelType: '9', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫 channelType: '11', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫
openStatus: true, //渠道配置是否启用 1启用 0停用 openStatus: false, //渠道配置是否启用 1启用 0停用
channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业
channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店
channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管)
channelRelationProType: '1', // 策略关联商品类型 1所有商品 2商品品牌 3商品类目 4部分商品
integralUseDiscountControl: '1', // 折扣控制 1所有折扣商品适用 2折扣范围
integralUseDiscountControlUpper: '0.0',
integralUseDiscountControlLower: '0.0',
useProportionalRestriction: '0.0', // 抵现比例限制
strategyGoodsRelationIdArr: [], // 商品
storeRelationIdArr: [], //门店
enterpriseRelationIdArr: [] //商户
},
{
integralStrategyChannelId: '', //id
enterpriseId: '',
integralStrategyId: '', //策略id
channelType: '10', //渠道类型 1微信 3:线下 5淘宝 6京东 7唯品会 8天猫
openStatus: false, //渠道配置是否启用 1启用 0停用
channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业 channelRelationEnterpriseType: '1', // 策略关联企业 1所有企业 2部分企业
channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店 channelRelationStoreType: '1', //策略关联门店类型 1所有门店 2门店分组 3部分门店
channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管) channelStoreType: '-1', // 策略选择门店类型 (-1:所有 0:自营 1:联营 2:加盟,3代销4托管)
...@@ -466,6 +625,14 @@ export default { ...@@ -466,6 +625,14 @@ export default {
new Date(timeStramp.year, timeStramp.month, timeStramp.day, 23, 59, 59).getTime() new Date(timeStramp.year, timeStramp.month, timeStramp.day, 23, 59, 59).getTime()
] ]
}, },
rules: {
strategyName: { required: true, message: '请输入策略名称', trigger: 'blur' },
useCrowd: { required: true, message: '请选择适用对象', trigger: 'blur' },
integralGetStatus: { required: true, message: '请选择获取规则', trigger: 'blur' },
integralGetFreezeDays: { required: true, message: '请输入积分冻结期', trigger: 'blur' },
integralGetEffectiveDays: { required: true, message: '请输入积分有效期', trigger: 'blur' },
perpetualFlag: { required: true, message: '请选择策略有效期', trigger: 'blur' }
},
cateOptions: [ cateOptions: [
{ {
value: '1', value: '1',
...@@ -502,6 +669,14 @@ export default { ...@@ -502,6 +669,14 @@ export default {
}, },
methods: { methods: {
onStoreChange(item) {
if (item.channelType == 3) {
this.uuid = '';
} else if (item.channelType == 9) {
this.wmuuid = '';
}
item.channelRelationProType = '1';
},
// 返回 // 返回
goBack() { goBack() {
this.$router.go(-1); this.$router.go(-1);
...@@ -544,6 +719,10 @@ export default { ...@@ -544,6 +719,10 @@ export default {
obj.text = '折扣格式有误'; obj.text = '折扣格式有误';
} }
} }
if (data.channelList[i].channelType == 3 && !data.channelList[i].enterpriseRelationIdArr.length) {
obj.flag = false;
obj.text = '请选择商户';
}
if (data.channelList[i].channelType == 1 && !data.channelList[i].enterpriseRelationIdArr.length) { if (data.channelList[i].channelType == 1 && !data.channelList[i].enterpriseRelationIdArr.length) {
obj.flag = false; obj.flag = false;
obj.text = '请选择商户'; obj.text = '请选择商户';
...@@ -976,7 +1155,7 @@ export default { ...@@ -976,7 +1155,7 @@ export default {
log('商户列表:', that.mechantOption); log('商户列表:', that.mechantOption);
// showMsg.showmsg('设置成功','success') // showMsg.showmsg('设置成功','success')
that.ruleForm.channelList[0].enterpriseRelationIdArr = [data[0].enterpriseId]; // that.ruleForm.channelList[0].enterpriseRelationIdArr = [data[0].enterpriseId];
return; return;
} }
errMsg.errorMsg(resData); errMsg.errorMsg(resData);
...@@ -1109,6 +1288,13 @@ export default { ...@@ -1109,6 +1288,13 @@ export default {
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.setting-tips {
margin-left: 16px;
font-size: 12px;
font-weight: 400;
color: #909399;
line-height: 17px;
}
.attention-wrap { .attention-wrap {
padding: 24px 32px; padding: 24px 32px;
background: #fff; background: #fff;
...@@ -1169,11 +1355,9 @@ export default { ...@@ -1169,11 +1355,9 @@ export default {
} }
.form-child { .form-child {
padding: 15px 20px 10px 0px; padding: 20px;
background: #f5f6f9; background: #f5f6f9;
margin: 22px 0; margin-top: 20px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
} }
......
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