feature_0521
zhenghuang 5 years ago
parent fe0480eb22
commit ab777874ef

@ -1,18 +1,18 @@
<template>
<div class="activityManager">
<Spin v-show="loading" fix>加载中...</Spin>
<Spin v-show="loading"
fix>加载中...</Spin>
<Row>
<i-col
class="activityListClass"
<i-col class="activityListClass"
v-for="(item, index) in activityList"
:key="index"
span="7"
offset="1"
>
offset="1">
<Card>
<div class="operateAndThemeItem">
<div class="ThemeItem">
<img class="img" :src="'/kiisoo-ic' + item.logo" />
<img class="img"
:src="'/kiisoo-ic' + item.logo" />
<div class="tipItem">
<span>{{ item.name }}</span>
<span>{{ item.description }}</span>
@ -27,24 +27,22 @@
</i-col>
</Row>
<Row>
<i-col span="7" offset="1">
<div @click="dispalyAddActivity('')" class="addactivity">
<i-col span="7"
offset="1">
<div @click="dispalyAddActivity('')"
class="addactivity">
<span>+</span>
<span>添加活动</span>
</div>
</i-col>
</Row>
<useTable
ref="useTable"
<useTable ref="useTable"
@doShow="doShow"
:show="showUse"
:schedule="useSchedule"
></useTable>
<addActivity
@dispalyAddActivityModal="dispalyAddActivityModal"
:schedule="useSchedule"></useTable>
<addActivity @dispalyAddActivityModal="dispalyAddActivityModal"
:addActivityModal="addActivityModal"
:id="id"
></addActivity>
:id="id"></addActivity>
</div>
</template>
@ -61,7 +59,7 @@ export default {
addActivity,
},
inject: ["setMenuName"],
data() {
data () {
return {
showUse: false,
addActivityModal: false,
@ -72,21 +70,21 @@ export default {
loading: false,
};
},
mounted() {
mounted () {
this.setMenuName("活动管理", "活动池");
this.getActivityTable();
},
methods: {
doShow(show) {
doShow (show) {
this.showUse = show;
},
getActivityData(id) {
getActivityData (id) {
let that = this;
let data = {
instanceId: id,
};
that.loading = true;
ActivityManager.getActivityInfo(data, function(data) {
ActivityManager.getActivityInfo(data, function (data) {
that.inputActivityList = [];
data.data.results.params.forEach((item) => {
that.inputActivityList.push({
@ -98,35 +96,36 @@ export default {
that.loading = false;
});
},
getActivityTable() {
getActivityTable () {
let that = this;
ActivityManager.getActivityList({}, function(data) {
ActivityManager.getActivityList({}, function (data) {
that.activityList = data.data.results;
});
},
disPlayUseTable(item) {
disPlayUseTable (item) {
let that = this;
let data = {
id: item.id,
};
// let data = new FormData()
// data.append('instanceId', item.id)
ActivityManager.getActivityInfo(data, function(data) {
ActivityManager.getActivityInfo(data, function (data) {
that.useSchedule = data.data.results;
that.showUse = true;
that.$forceUpdate()
});
},
dispalyAddActivity(id) {
dispalyAddActivity (id) {
this.addActivityModal = true;
this.id = id.toString();
},
dispalyuseModal(displayModalFlag, isCancle) {
dispalyuseModal (displayModalFlag, isCancle) {
this.useModal = displayModalFlag;
if (isCancle === true) {
this.getActivityTable();
}
},
dispalyAddActivityModal(displayModalFlag, isCancle) {
dispalyAddActivityModal (displayModalFlag, isCancle) {
this.addActivityModal = displayModalFlag;
if (isCancle === true) {
this.getActivityTable();

@ -1,93 +1,83 @@
<template>
<div>
<Spin v-if="saving" fix>加载中...</Spin>
<Form ref="formValidate" :model="formValidate" :label-width="80">
<Spin v-if="saving"
fix>加载中...</Spin>
<Form ref="formValidate"
:model="formValidate"
:label-width="80">
<Row>
<i-col span="7">
<FormItem label="选择日期"
prop="">
<Date-picker v-model="formValidate.date"
type="daterange"
placement="bottom-end"
placeholder="选择日期区间"></Date-picker>
</FormItem>
</i-col>
<i-col span="6">
<FormItem label="零售公司" prop="">
<Select
v-model="formValidate.organizationId"
<FormItem label="零售公司"
prop="">
<Select v-model="formValidate.organizationId"
filterable
placeholder="全部"
clearable
>
<Option
v-for="(item, index) in companyList"
clearable>
<Option v-for="(item, index) in companyList"
:key="index"
:value="item.value"
>{{ item.label }}
:value="item.value">{{ item.label }}
</Option>
</Select>
</FormItem>
</i-col>
<i-col span="6">
<FormItem label="店铺" prop="">
<Select
v-model="formValidate.storeId"
<FormItem label="店铺"
prop="">
<Select v-model="formValidate.storeId"
filterable
placeholder="全部"
clearable
>
<Option
v-for="(item, index) in shopList"
clearable>
<Option v-for="(item, index) in shopList"
:key="index"
:value="item.value"
>{{ item.label }}
:value="item.value">{{ item.label }}
</Option>
</Select>
</FormItem>
</i-col>
<i-col span="4">
<FormItem label="活动状态" prop="">
<FormItem label="活动状态"
prop="">
<Select v-model="formValidate.status">
<Option
v-for="(item, index) in activityStatusList"
<Option v-for="(item, index) in activityStatusList"
:key="index"
:value="item.value"
>{{ item.label }}
:value="item.value">{{ item.label }}
</Option>
</Select>
</FormItem>
</i-col>
<i-col span="7">
<FormItem label="选择日期" prop="">
<Date-picker
v-model="formValidate.date"
type="daterange"
placement="bottom-end"
placeholder="选择日期区间"
></Date-picker>
</FormItem>
</i-col>
<i-col span="1">
<Button type="primary" @click="searchTable"></Button>
<Button type="primary"
@click="searchTable">查询</Button>
</i-col>
</Row>
<Row style="margin-top:50px">
<Table
:loading="loading"
<Table :loading="loading"
border
:columns="columns1"
:data="data"
></Table>
<Page
:total="totalSize"
:data="data"></Table>
<Page :total="totalSize"
:current="pageNum"
:page-size="pageSize"
show-elevator
show-total
placement="top"
@on-change="handlePage"
class-name="ks-page"
></Page>
class-name="ks-page"></Page>
</Row>
</Form>
<useTable
ref="useTable"
<useTable ref="useTable"
@doShow="doShow"
:show="showUse"
:schedule="activityInstance.scheduleVO"
></useTable>
:schedule="activityInstance.scheduleVO"></useTable>
</div>
</template>
@ -104,7 +94,7 @@ export default {
components: {
useTable,
},
data() {
data () {
const _this = this;
return {
loading: false,
@ -166,47 +156,43 @@ export default {
{
title: "活动类型",
key: "scheduleVO.name",
render(h, params) {
return h("span", params.row["scheduleVO"]["name"]);
render (h, params) {
return h("span", params.row["params"][0]["defaultVal"]);
},
},
{
title: "活动开始时间",
title: "活动时间",
key: "beginTime",
width: 230,
render (h, params) {
return h("span", (params.row.beginTime) + " - " + (params.row.endTime));
},
{
title: "活动结束时间",
key: "endTime",
},
// {
// title: '',
// key: 'company'
// },
{
title: "店铺",
key: "shop",
render(h, params) {
return h("span", (params.row.stores.length || 0) + "家");
render (h, params) {
return h("span", (params.row.stores[0].abbreviation) + "等" + (params.row.stores.length || 0) + "家");
},
},
{
title: "添加好友数",
key: "addFriendNum",
render(h, params) {
render (h, params) {
return h("span", (params.row.friends || 0) + "人");
},
},
{
title: "参与活动客户数",
key: "joinActivityClientNum",
render(h, params) {
render (h, params) {
return h("span", (params.row.friends || 0) + "人");
},
},
{
title: "活动码",
key: "activityCode",
render(h, p) {
render (h, p) {
return h(
"Button",
{
@ -220,7 +206,7 @@ export default {
{
title: "活动状态",
key: "status",
render(h, p) {
render (h, p) {
const status = p.row.status;
if (status === 1) return h("span", "未开始");
if (status === 2) return h("span", "进行中");
@ -232,7 +218,7 @@ export default {
title: "操作",
key: "action",
width: 200,
render(h, p) {
render (h, p) {
return h("div", [
h(
"Button",
@ -259,22 +245,22 @@ export default {
],
};
},
mounted() {
mounted () {
this.setMenuName("活动管理", "活动计划");
this.getCompanyInfo();
this.getShopInfo();
this.searchTable();
},
methods: {
doShow(show) {
doShow (show) {
this.showUse = show;
},
getCompanyInfo() {
getCompanyInfo () {
let that = this;
let data = {
userId: JSON.parse(sessionStorage.getItem("loginInfo")).userId,
};
ActivityManager.getCompany(data, function(data) {
ActivityManager.getCompany(data, function (data) {
that.companyList = [];
data.data.results.forEach((element) => {
that.companyList.push({
@ -284,12 +270,12 @@ export default {
});
});
},
getShopInfo() {
getShopInfo () {
let that = this;
let data = {
userId: JSON.parse(sessionStorage.getItem("loginInfo")).userId,
};
ActivityManager.getShop(data, function(data) {
ActivityManager.getShop(data, function (data) {
that.shopList = [];
data.data.results.forEach((element) => {
that.shopList.push({
@ -299,34 +285,43 @@ export default {
});
});
},
handlePage: function(value) {
handlePage: function (value) {
this.pageNum = value;
this.searchTable();
},
stop(instance) {
this.saving = true;
stop (instance) {
let _this = this;
this.$Modal.confirm({
title: '您确认要终止?',
content: '终止之后不可恢复',
onOk: () => {
this.saving = true;
ActivityManager.instanceTerminate({ instanceId: instance.id }, (res) => {
_this.saving = false;
if (res.success == undefined || !res.success) {
that.$Message.error("终止失败!");
if (res.data.success == undefined || !res.data.success) {
_this.$Message.error("终止失败!");
} else {
_this.searchTable();
}
});
},
modify(instance) {
onCancel: () => {
}
});
},
modify (instance) {
this.activityInstance = instance;
this.showUse = true;
store.commit("SET_useData", instance);
store.commit("SET_useData", Object.assign({}, instance));
},
navigateCode(instance) {
navigateCode (instance) {
this.$router.push({
path: "/activity/plan/code",
query: { instanceId: instance.id },
});
},
searchTable(params = {}) {
searchTable (params = {}) {
this.loading = true;
if (
this.formValidate.date !== null &&

@ -117,7 +117,7 @@ export default {
ActivityManager.getCompany(data, function (data) {
that.companyList = [];
that.companyListdata = data.data.results;
if (store.getters.useData.company.length == that.companyListdata.length) {
if (store.getters.useData.company && store.getters.useData.company.length == that.companyListdata.length) {
that.allSelect = true;
}
data.data.results.forEach((element) => {

Loading…
Cancel
Save