Commit 1d24137d by crushh

update: dist

parent b3cd6d13
......@@ -158,6 +158,7 @@ export default {
}
});
this.echoData = this.handleEchoData(filterFrontShow);
console.log(this.echoData);
}
});
},
......@@ -192,25 +193,6 @@ export default {
});
return arr;
},
echoStoreSelectorData(key) {
return new Promise((resolve, reject) => {
this.$refs.storeSelector[0]
.getStoreConfig()
.then(async data => {
console.log(data);
if (data.type == 0) {
resolve(false);
} else {
const str = data.list.map(item => item.name).join(',');
resolve(str);
}
})
.catch(() => {
resolve(false);
});
});
// 取得门店筛选器的文字回显
},
delAll() {
this.conditionTypeList.forEach(item => {
item.selectValue = [];
......@@ -236,15 +218,12 @@ export default {
},
storeChange(uuid, esScreeningWidgetChainId) {
const obj = this.conditionTypeList.find(item => item.esScreeningWidgetChainId == esScreeningWidgetChainId);
this.$nextTick(() => {
this.echoStoreSelectorData(uuid).then(res => {
if (res) {
obj.selectValue = res;
obj.value = uuid;
}
});
});
console.log(this.conditionTypeList);
const res = this.$refs.storeSelector[0].getList();
console.log(res);
if (res && res.length && res[0] == 1) return;
const str = res.map(item => (item.name ? item.name : item.id)).join(',');
obj.value = uuid;
obj.selectValue = str;
},
onTabsClick(val) {
const { name } = val;
......
<template>
<!-- <div class="layout-container">
<vue-gic-header class="user-header-pop" style="z-index: 1999;" :projectName="projectName" :collapseFlag="collapseFlag" @collapseTag="collapseTagHandler" @toRouterView="toRouterView"></vue-gic-header>
<div class="layout">
<aside-menu class="layout-left" v-if="asideShow" :projectName="projectName" :leftModulesName="leftModulesName" :collapseFlag.sync="collapseFlag"></aside-menu>
<div class="layout-right" :class="[{ asideShow: asideShow }, { collapseFlag: asideShow && collapseFlag }]">
<div class="layout-title">
<el-breadcrumb class="dm-breadcrumb" separator="/">
<el-breadcrumb-item :to="{ path: '' }"><a href="/report/#/memberSummary">首页</a></el-breadcrumb-item>
<el-breadcrumb-item :class="{ 'no-link': !v.path, 'can-link': v.path }" v-for="(v, i) in breadcrumb" :key="i" :to="{ path: v.path }">{{ v.name }}</el-breadcrumb-item>
</el-breadcrumb>
<h3>
<div>
<span class="content-title">{{ contentTitle }}<span v-if="contentTitle == '触达效果'" class="title_tip">每日上午更新昨日数据</span></span>
<div v-html="layoutTips" class="layout--tips--wrap"></div>
</div>
<div v-if="showDescription" class="intro_wrap"><i class="iconfont icon-zhibiaoshuoming introlIcon" alt="" /><span class="intro" @click="() => (drawer = true)">指标说明</span></div>
</h3>
</div>
<div class="layout-content__wrap">
<div class="layout-content" :class="[{ asideShow: asideShow }, { collapseFlag: asideShow && collapseFlag }]">
<router-view></router-view>
</div>
</div>
</div>
</div>
<description :drawer.sync="drawer" :direction="direction" :contentTitle="contentTitle" />
</div> -->
<div>
<dm-layout :projectName="projectName"> <router-view /></dm-layout>
<dm-layout :projectName="projectName">
<keep-alive>
<router-view v-if="$route.meta.keepAlive" />
</keep-alive>
<router-view v-if="!this.$route.meta.keepAlive" />
</dm-layout>
</div>
</template>
<script>
......@@ -52,28 +30,14 @@ export default {
this.bodyHeight = document.body.clientHeight || document.documentElement.clientHeight;
},
computed: {
// asideShow() {
// return this.$store.state.marketing.asideShow;
// },
contentTitle() {
const name = (this.$route.meta && this.$route.meta.aliasName) || this.$route.name; // 有些params跳转的需要用到route.name 这种情况如果meta中有aliasName,优先aliasName
return name;
},
// breadcrumb() {
// return this.$store.state.marketing.breadcrumb;
// },
// layoutTips() {
// return this.$store.state.marketing.layoutTips;
// },
showDescription() {
return (this.$route.path.indexOf('ecm/list') >= 0 && this.$store.state.marketing.xsxsFlag) || this.$route.path.indexOf('ecm/touch') >= 0;
}
},
// watch:{
// asideShow(val) {
// this.collapseFlag = this.asideShow;
// }
// },
methods: {
// 处理路由跳转
toRouterView(val) {
......
......@@ -9,7 +9,9 @@ export default {
path: 'list',
name: '列表',
component: () => import('../../views/ai/list.vue'),
meta: {}
meta: {
keepAlive: true
}
},
{
path: 'add/:scene',
......
......@@ -18,7 +18,7 @@
<span class="tips">仅支持选择已上线的话术,若需要增加话术,请联系运营经理</span>
</el-form-item>
</div>
<dm-sub-title line>活动时间<span class="tips">每天16:00之后不支持创建当天开始的活动</span></dm-sub-title>
<dm-sub-title line>活动时间</dm-sub-title>
<div class="section">
<birthSense ref="activeTime1" :data="birthTimeData" v-show="form.scene == 1" @change="getMemberCount" />
<holidaySense ref="activeTime2" :data="holidayTimeData" v-show="form.scene == 2" @change="getMemberCount" />
......@@ -45,15 +45,15 @@
<el-form-item label="消费条件" v-if="form.scene == 4 && form.memberType == 0">
<div class="consumeLine">
<el-checkbox v-model="form.consume_days_flag0" :true-label="1" :false-label="0" :disabled="disabledCheck" @change="handleLastconsume">最近消费间隔</el-checkbox>
<el-input-number v-model="form.consume_days0" @change="handleChangeNum(form.consume_days_flag0)" controls-position="right" :max="730" :min="30" size="small" style="margin:0 10px;" />
<el-input-number v-model="form.consume_days0" @change="handleChangeNum(form.consume_days_flag0)" controls-position="right" :max="730" :min="30" :precision="0" size="small" style="margin:0 10px;" />
</div>
<div class="consumeLine">
<el-checkbox v-model="form.consume_times_flag0" :true-label="1" :false-label="0" :disabled="disabledCheck" @change="handleLastconsume">最近消费次数</el-checkbox>
<el-input-number v-model="form.consume_times0" @change="handleChangeNum(form.consume_times_flag0)" controls-position="right" :max="100" :min="1" size="small" style="margin:0 10px;" />
<el-input-number v-model="form.consume_times0" @change="handleChangeNum(form.consume_times_flag0)" controls-position="right" :max="100" :min="1" :precision="0" size="small" style="margin:0 10px;" />
</div>
<div class="consumeLine">
<el-checkbox v-model="form.consume_amount_flag0" :true-label="1" :false-label="0" :disabled="disabledCheck" @change="handleLastconsume">累计消费金额</el-checkbox>
<el-input-number v-model="form.consume_amount0" @change="handleChangeNum(form.consume_amount_flag0)" controls-position="right" :max="100000" :min="1" size="small" style="margin:0 10px;" />
<el-input-number v-model="form.consume_amount0" @change="handleChangeNum(form.consume_amount_flag0)" controls-position="right" :precision="0" :max="100000" :min="1" size="small" style="margin:0 10px;" />
</div>
<el-button size="small" @click="ruleVisible2 = true" v-if="!memberCrowdWidgetId">添加其它条件</el-button>
<ruleFilter :visiable.sync="ruleVisible2" @save="handleRuleFilterSave" :memberCrowdWidgetId="memberCrowdWidgetId" :hideId="hideId" />
......@@ -62,15 +62,15 @@
<el-form-item label="消费条件" v-if="form.scene == 4 && form.memberType == 1">
<div class="consumeLine">
<el-checkbox v-model="form.consume_days_flag1" @change="getMemberCount" :true-label="1" :false-label="0">最近消费间隔</el-checkbox>
<el-input-number v-model="form.consume_days1" @change="handleChangeNum(form.consume_days_flag1)" controls-position="right" :max="730" :min="30" size="small" style="margin:0 10px;" />
<el-input-number v-model="form.consume_days1" @change="handleChangeNum(form.consume_days_flag1)" controls-position="right" :max="730" :precision="0" :min="30" size="small" style="margin:0 10px;" />
</div>
<div class="consumeLine">
<el-checkbox v-model="form.consume_times_flag1" @change="getMemberCount" :true-label="1" :false-label="0">最近消费次数</el-checkbox>
<el-input-number v-model="form.consume_times1" @change="handleChangeNum(form.consume_times_flag1)" controls-position="right" :max="100" :min="1" size="small" style="margin:0 10px;" />
<el-input-number v-model="form.consume_times1" @change="handleChangeNum(form.consume_times_flag1)" controls-position="right" :max="100" :precision="0" :min="1" size="small" style="margin:0 10px;" />
</div>
<div class="consumeLine">
<el-checkbox v-model="form.consume_amount_flag1" @change="getMemberCount" :true-label="1" :false-label="0">累计消费金额</el-checkbox>
<el-input-number v-model="form.consume_amount1" @change="handleChangeNum(form.consume_amount1)" controls-position="right" :max="100000" :min="1" size="small" style="margin:0 10px;" />
<el-input-number v-model="form.consume_amount1" @change="handleChangeNum(form.consume_amount1)" controls-position="right" :max="100000" :precision="0" :min="1" size="small" style="margin:0 10px;" />
</div>
</el-form-item>
<el-form-item label="预计覆盖人数">
......@@ -212,7 +212,7 @@
</el-select>
</td>
<td class="tagSelectCell" style="width:170px">
<el-input-number v-model="item.interval" controls-position="right" :max="60" :min="1" size="small" />
<el-input-number v-model="item.interval" controls-position="right" :max="60" :min="1" size="small" :precision="0" />
</td>
<td class="tagSelectCell">
<div class="delIcon" v-show="recallList.length > 1" type="text" @click="delRecallList(index)">
......@@ -240,7 +240,7 @@
</el-form-item>
<div v-if="form.analyseFlag == 1">
<el-form-item label="分析天数" prop="analyseDays">
触达日期起 <el-input-number style="width:128px;margin:0 5px;" v-model="form.analyseDays" controls-position="right" :max="31" :min="1" size="small" /> 天之内
触达日期起 <el-input-number style="width:128px;margin:0 5px;" v-model="form.analyseDays" controls-position="right" :precision="0" :max="31" :min="1" size="small" /> 天之内
<div class="analyseTips">
设置从客户被成功触达的日期计算,14 天以内的转化会被被作为此营销活动的转化收益;<br />
注:最短 1 天,最长 31 天 (以自然日计算),时长越长,会员的转化与此次营销的相关度越低,请酌情填写分析天数
......@@ -248,7 +248,7 @@
</el-form-item>
<el-form-item label="活动目标" prop="analyseAmount"
>销售额
<el-input-number style="width:128px;margin:0 5px;" v-model="form.analyseAmount" placeholder="1-99999" controls-position="right" :max="99999" :min="1" size="small" />
<el-input-number style="width:128px;margin:0 5px;" v-model="form.analyseAmount" placeholder="1-99999" controls-position="right" :precision="0" :max="99999" :min="1" size="small" />
万元
</el-form-item>
</div>
......@@ -457,7 +457,9 @@ export default {
this.form.scene = scene && Number(scene);
this.getTemplateList();
this.getAiDictList();
if (!this.isAdd) {
if (this.isAdd) {
this.$route.meta.refresh = false;
} else {
this.getActivityDetail(id);
}
if (scene == 3) {
......@@ -586,10 +588,6 @@ export default {
const { startDate, endDate, callFlag, callTime, birth_type, birth_days, holiday_date, holiday_type, holiday_name } = activeTimeData;
if (new Date(startDate).getFullYear() == new Date().getFullYear() && new Date(startDate).getMonth() + 1 == new Date().getMonth() + 1 && new Date(startDate).getDate() == new Date().getDate()) {
if (new Date().getHours() >= 16) {
this.$message.error('16:00之后不支持创建当天生效的活动');
return;
}
if (callFlag == 1) {
let arr = callTime.map(item => item.split('-')[1]);
let endTime = arr.reduce((p, v) => (p < v ? v : p));
......@@ -685,6 +683,8 @@ export default {
try {
const { result } = await initActivity(data);
if (result) {
this.$message.success('保存成功');
this.$route.meta.refresh = true;
this.$router.go(-1);
}
} finally {
......
<template>
<div class="contain" v-loding="loading">
<div class="contain">
<div class="cardList">
<div class="card" v-for="item in cardContent" :key="item.title">
<div class="cardTitle">
......@@ -35,7 +35,7 @@
</el-form-item>
</el-form>
</div>
<el-table :data="tableData" style="width:100%">
<el-table :data="tableData" style="width:100%" v-loading="loading">
<el-table-column prop="activityName" label="活动名称" show-overflow-tooltip />
<el-table-column prop="scene" label="活动场景" show-overflow-tooltip>
<template slot-scope="{ row }">
......@@ -273,6 +273,34 @@ export default {
this.getRechargeCenter();
this.getAiAccountCheck();
},
activated() {
if (this.$route.meta.refresh) {
this.form = {
activityName: '',
scene: '',
activityPlanStatus: '',
time: [],
pageNum: 1,
pageSize: 20
};
}
this.getTableData();
},
beforeRouteEnter(to, from, next) {
const {
meta: { type, path, refresh }
} = from;
if (path !== '/list') {
to.meta.refresh = true;
} else {
if (type === 'add' && refresh) {
to.meta.refresh = true;
} else {
to.meta.refresh = false;
}
}
next();
},
components: {
dmDropdown
},
......
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