Commit f6a7ce3b by chenxin

fix:build card merge-list ; 投放记录bug

parent 32cbea96
<!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.9c1deaf1cbf42de95f11bc9c33045fc9.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.35.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.10.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.16.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.18.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.42.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.2.10.js></script><script type=text/javascript src=/marketing/static/js/manifest.cfcb2928e1f62ae1b0f0.js></script><script type=text/javascript src=/marketing/static/js/vendor.cbb380c2053ab598e892.js></script><script type=text/javascript src=/marketing/static/js/main.93d39b4ed9fa3dfcebd2.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.d0d1d17d7b24fe6bbcc2d669adaf8859.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.35.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.10.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.16.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.18.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.42.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.2.10.js></script><script type=text/javascript src=/marketing/static/js/manifest.85628051296bec431557.js></script><script type=text/javascript src=/marketing/static/js/vendor.cbb380c2053ab598e892.js></script><script type=text/javascript src=/marketing/static/js/main.93d39b4ed9fa3dfcebd2.js></script></body></html>
\ No newline at end of file
!function(e){var r=window.webpackJsonp;window.webpackJsonp=function(t,a,c){for(var i,u,f,s=0,d=[];s<t.length;s++)u=t[s],n[u]&&d.push(n[u][0]),n[u]=0;for(i in a)Object.prototype.hasOwnProperty.call(a,i)&&(e[i]=a[i]);for(r&&r(t,a,c);d.length;)d.shift()();if(c)for(s=0;s<c.length;s++)f=o(o.s=c[s]);return f};var t={},n={13:0};function o(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.e=function(e){var r=n[e];if(0===r)return new Promise(function(e){e()});if(r)return r[2];var t=new Promise(function(t,o){r=n[e]=[t,o]});r[2]=t;var a=document.getElementsByTagName("head")[0],c=document.createElement("script");c.type="text/javascript",c.charset="utf-8",c.async=!0,c.timeout=12e4,o.nc&&c.setAttribute("nonce",o.nc),c.src=o.p+"static/js/"+({0:"card",1:"game",2:"wechat",3:"message",4:"ewash",5:"evaluation",6:"ecm",7:"activity",8:"recharge",9:"msg",10:"calllog"}[e]||e)+"."+{0:"d6a869dc83fee56ba329",1:"5603aa6bc3c455d7b51e",2:"f0b4c0e5c36f5ed6b7a8",3:"dbb7db1bf14e057fd6e0",4:"6d9e78ea84d8a6629c63",5:"78d9308b40629e9584bd",6:"393c92cf9310bf3051e4",7:"c7e6a74eba07ee933137",8:"cc0950432812606ca31b",9:"32e2fb20e9e49c721b1a",10:"4b68b26d138f9bc39980"}[e]+".js";var i=setTimeout(u,12e4);function u(){c.onerror=c.onload=null,clearTimeout(i);var r=n[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),n[e]=void 0)}return c.onerror=c.onload=u,a.appendChild(c),t},o.m=e,o.c=t,o.d=function(e,r,t){o.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:t})},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(t,a,c){for(var i,f,u,d=0,s=[];d<t.length;d++)f=t[d],n[f]&&s.push(n[f][0]),n[f]=0;for(i in a)Object.prototype.hasOwnProperty.call(a,i)&&(e[i]=a[i]);for(r&&r(t,a,c);s.length;)s.shift()();if(c)for(d=0;d<c.length;d++)u=o(o.s=c[d]);return u};var t={},n={13:0};function o(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.e=function(e){var r=n[e];if(0===r)return new Promise(function(e){e()});if(r)return r[2];var t=new Promise(function(t,o){r=n[e]=[t,o]});r[2]=t;var a=document.getElementsByTagName("head")[0],c=document.createElement("script");c.type="text/javascript",c.charset="utf-8",c.async=!0,c.timeout=12e4,o.nc&&c.setAttribute("nonce",o.nc),c.src=o.p+"static/js/"+({0:"card",1:"game",2:"wechat",3:"message",4:"ewash",5:"evaluation",6:"ecm",7:"activity",8:"recharge",9:"msg",10:"calllog"}[e]||e)+"."+{0:"24d402f4af87a5b2c495",1:"2b7dc3a048f95b9a3551",2:"89d0fd6e6f5bdacda76e",3:"de99b16999e8e9ea6159",4:"6d9e78ea84d8a6629c63",5:"d62f3011b81dee4c0822",6:"4019f1ca85f14af108d0",7:"c7e6a74eba07ee933137",8:"cc0950432812606ca31b",9:"32e2fb20e9e49c721b1a",10:"4b68b26d138f9bc39980"}[e]+".js";var i=setTimeout(f,12e4);function f(){c.onerror=c.onload=null,clearTimeout(i);var r=n[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),n[e]=void 0)}return c.onerror=c.onload=f,a.appendChild(c),t},o.m=e,o.c=t,o.d=function(e,r,t){o.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:t})},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
......@@ -64,6 +64,7 @@ export default {
handler(val) {
// 只读时获取详情
if (val && this.readOnly) {
this.marketingActivityId = val;
this.getActivityInfo();
}
},
......@@ -95,6 +96,19 @@ export default {
this.$router.push('/activity/add');
}
},
// 外部设置反显
setInfo(actId) {
this.loading = true;
getActivityInfo({ marketingActivityId: actId })
.then(res => {
this.loading = false;
this.tableList = res.result ? [res.result] : [];
this.marketingActivityId = actId;
})
.catch(() => {
this.loading = false;
});
},
// 获取详情
getActivityInfo() {
this.loading = true;
......
......@@ -20,7 +20,7 @@
<el-option v-for="item in sceneSettingIdOptions" :key="item.sceneSettingId" :label="item.sceneName" :value="item.sceneSettingId"></el-option>
</el-select>
</el-form-item> -->
<activity-select style="margin-left:71px;margin-bottom:22px;" :actId.sync="ruleForm.marketingActivityId" :readOnly="isEdit || isInfo"></activity-select>
<activity-select ref="actSelect" style="margin-left:71px;margin-bottom:22px;" :actId.sync="ruleForm.marketingActivityId" :readOnly="isInfo"></activity-select>
<el-form-item prop="cardIds" label="新增卡券">
<el-button @click="showCardDialog = true">添加卡券</el-button>
<el-table v-if="ruleForm.cardIds" class="mt20" :data="tableData" style="width: 100%">
......@@ -197,6 +197,9 @@ export default {
}
this.getCoupListInfo();
this.loading = false;
if (res.result.marketingActivityId) {
this.$refs.actSelect.setInfo(res.result.marketingActivityId);
}
})
.catch(err => {
this.$tips({ type: 'error', message: err.message || '获取详情失败' });
......
......@@ -2,9 +2,7 @@
<section class="dm-wrap" v-loading="loading">
<div class="pb22 clearfix">
<el-date-picker class="w400" v-model="dateTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="refresh"></el-date-picker>
<el-select class="dm-select w160" v-model="listParams.sceneSettingId" clearable placeholder="所有营销场景" @change="refresh">
<el-option v-for="item in sceneSettingIdOptions" :key="item.sceneSettingId" :label="item.sceneName" :value="item.sceneSettingId"></el-option>
</el-select>
<activity-select class="vertical-middle w150 mr5" :actId.sync="listParams.marketingActivityId" onlySelect @actUpdate="refresh"></activity-select>
<el-input v-model="listParams.search" class="w300" placeholder="请输入卡券包名称" clearable @change="refresh"><i slot="prefix" class="el-input__icon el-icon-search"></i></el-input>
<el-button class="fr" type="primary" @click="$router.push('/card/merge/add')">新建卡券包</el-button>
</div>
......@@ -29,8 +27,8 @@
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" min-width="120" align="left" prop="cardSize" label="卡券数量"></el-table-column>
<el-table-column :show-overflow-tooltip="true" width="120" align="left" prop="sceneSettingName" label="场景值">
<template slot-scope="scope">{{ scope.row.sceneSettingName || '--' }}</template>
<el-table-column :show-overflow-tooltip="true" width="120" align="left" prop="marketingActivityName" label="营销活动">
<template slot-scope="scope">{{ scope.row.marketingActivityName || '--' }}</template>
</el-table-column>
<el-table-column label="操作" align="left" width="120px" fixed="right">
<template slot-scope="scope">
......@@ -45,8 +43,8 @@
</section>
</template>
<script>
import activitySelect from '@/components/activity-select';
import { pageCoupPackage, deleteCoupPackage } from '@/service/api/cardApi.js';
import { sceneSettingList } from '@/service/api/wechatApi.js';
import { formatDateTimeByType } from '@/utils/index.js';
import talbeMethods from '@/mixins/tableMethods.js';
import filterAvater from '@/mixins/filterAvater.js';
......@@ -60,14 +58,13 @@ export default {
visible: false,
dateTime: [],
listParams: {
sceneSettingId: '',
marketingActivityId: '',
beginTime: '',
endTime: '',
search: '',
currentPage: 1,
pageSize: 20
},
sceneSettingIdOptions: [],
total: 0,
loading: false,
tableList: [],
......@@ -77,9 +74,11 @@ export default {
params: {} // 传递的参数
};
},
components: {
activitySelect
},
created() {
this.getTableList();
this.sceneSettingList();
this.$store.commit('mutations_breadcrumb', [{ name: '营销管理', path: '' }, { name: '卡券营销', path: '' }, { name: '卡券包', path: '' }, { name: '卡券包列表', path: '' }]); // eslint-disable-line
},
methods: {
......@@ -109,10 +108,6 @@ export default {
}
this.loading = false;
},
async sceneSettingList() {
let res = await sceneSettingList();
this.sceneSettingIdOptions = res.result || [];
},
/**-------辅助方法---------- */
dataTimeFormat() {
if (this.dateTime) {
......
<template>
<section class="card-record-send" v-loading="loading">
<div class="pb22">
<el-input class="w300" v-model="listParams.search" placeholder="输入卡券名称/备注名/活动名" @change="refresh"><i slot="prefix" class="el-input__icon el-icon-search"></i></el-input>
<el-input class="w300" v-model="listParams.search" clearable placeholder="输入卡券名称/备注名/活动名" @change="refresh"><i slot="prefix" class="el-input__icon el-icon-search"></i></el-input>
<el-checkbox class="vertical-middle" v-if="$store.state.marketing.isShowSelf" v-model="listParams.showSelfFlag" :true-label="1" :false-label="0" label="仅看本人" border @change="refresh" />
</div>
<el-table tooltipEffect="light" :data="recordList" style="width: 100%" row-key="putonTime">
<el-table tooltipEffect="dark" :data="recordList" style="width: 100%">
<el-table-column width="120" align="left" prop="putonTime" label="投放时间" fixed="left">
<template slot-scope="scope">
<p class="cell-time">
......@@ -122,7 +122,7 @@ export default {
this.loading = true;
cardRecordPage(this.listParams).then(res => {
if (res.errorCode === 0) {
this.recordList = res.result.result;
this.recordList = res.result.result || [];
this.total = res.result.totalCount;
}
this.loading = false;
......
......@@ -102,7 +102,11 @@ export default {
},
async storeEvaluateDetail() {
this.loading = true;
let res = await storeEvaluateDetail(this.listParams);
const params = { ...this.listParams };
if (!params.storeDetailSortName) {
delete params.storeDetailSortName;
}
let res = await storeEvaluateDetail(params);
this.tableList = res.result.result || [];
this.total = res.result.totalCount;
this.loading = false;
......
......@@ -93,7 +93,11 @@ export default {
async storeScoreDetail() {
this.loading = true;
this.tableList = [];
let res = await storeScoreDetail(this.listParams);
const params = { ...this.listParams };
if (!params.storeDetailSortName) {
delete params.storeDetailSortName;
}
let res = await storeScoreDetail(params);
this.tableList = res.result.result || [];
this.total = res.result.totalCount;
this.tableList.unshift({
......
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