feature_0521
root 6 years ago
parent 70244c75aa
commit 7bfeb88b02

@ -5,74 +5,87 @@
<i-col span="6"> <i-col span="6">
<FormItem label="零售公司" prop=""> <FormItem label="零售公司" prop="">
<Select v-model="formValidate.companyData" filterable placeholder="全部" clearable> <Select v-model="formValidate.companyData" filterable placeholder="全部" clearable>
<Option v-for="(item,index) in companyList" :key="index" :value="item.value">{{ item.label }}</Option> <Option v-for="(item,index) in companyList" :key="index" :value="item.value">{{ item.label
}}
</Option>
</Select> </Select>
</FormItem> </FormItem>
</i-col> </i-col>
<i-col span="6"> <i-col span="6">
<FormItem label="店铺" prop=""> <FormItem label="店铺" prop="">
<Select v-model="formValidate.shopData" filterable placeholder="全部" clearable> <Select v-model="formValidate.shopData" filterable placeholder="全部" clearable>
<Option v-for="(item,index) in shopList" :key="index" :value="item.value">{{ item.label }}</Option> <Option v-for="(item,index) in shopList" :key="index" :value="item.value">{{ item.label }}
</Option>
</Select> </Select>
</FormItem> </FormItem>
</i-col> </i-col>
<i-col span="4"> <i-col span="4">
<FormItem label="活动状态" prop=""> <FormItem label="活动状态" prop="">
<Select v-model="formValidate.activityStatus"> <Select v-model="formValidate.activityStatus">
<Option v-for="(item,index) in activityStatusList" :key="index" :value="item.value">{{ item.label }}</Option> <Option v-for="(item,index) in activityStatusList" :key="index" :value="item.value">{{
item.label }}
</Option>
</Select> </Select>
</FormItem> </FormItem>
</i-col> </i-col>
<i-col span="7"> <i-col span="7">
<FormItem label="选择日期" prop=""> <FormItem label="选择日期" prop="">
<Date-picker format="yyyy-MM-dd" :value="formValidate.date" type="daterange" placement="bottom-end" placeholder="选择日期区间"></Date-picker> <Date-picker :value="formValidate.date" type="daterange" placement="bottom-end"
placeholder="选择日期区间"></Date-picker>
</FormItem> </FormItem>
</i-col> </i-col>
<i-col span="1"> <i-col span="1">
<Button type="primary" @click="getActivityTable"></Button> <Button type="primary" @click="searchTable"></Button>
</i-col> </i-col>
</Row> </Row>
<Row style="margin-top:50px"> <Row style="margin-top:50px">
<Table border :columns="columns1" :data="activityData"></Table> <Table border :columns="columns1" :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>
</Row> </Row>
</Form> </Form>
</div> </div>
</template> </template>
<script> <script>
import ActivityManager from "../../services/ActivityManager/ActivityManager"; import ActivityManager from "../../services/ActivityManager/ActivityManager";
export default { import http from '../../services/CommonHttp'
export default {
name: "ActivityPlan", name: "ActivityPlan",
inject: ['setMenuName'], inject: ['setMenuName'],
data() { data() {
return { return {
companyList: [], totalSize: 0,
shopList: [],
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
data: [],
companyList: [],
shopList: [],
activityStatus: '进行中',
formValidate: { formValidate: {
date: [], date: '',
companyData: '', companyData: '',
shopData: '', shopData: '',
activityStatus: '进行中', activityStatus: '进行中',
}, },
activityData:[{ activityData: [{
activityStatus: '进行中' activityStatus: '进行中'
},{ }, {
activityStatus: '已结束' activityStatus: '已结束'
}], }],
activityStatusList: [{ activityStatusList: [{
label: '全部', label: '全部',
value: '全部' value: '全部'
},{ }, {
label: '进行中', label: '进行中',
value: '2' value: '进行中'
},{ }, {
label: '未开始', label: '未开始',
value: '1' value: '未开始'
},{ }, {
label: '已结束', label: '已结束',
value: '3' value: '已结束'
}], }],
columns1: [{ columns1: [{
type: 'index', type: 'index',
@ -81,45 +94,77 @@ export default {
}, },
{ {
title: '活动名称', title: '活动名称',
key: 'activityName' key: 'name'
}, },
{ {
title: '活动类型', title: '活动类型',
key: 'activityStyle' key: 'scheduleVO.name',
render(h, params) {
return h("span", params.row['scheduleVO']['name']);
}
}, },
{ {
title: '活动时间', title: '活动开始时间',
key: 'activityDate' key: 'beginTime'
}, },
{ {
title: '零售公司', title: '活动结束时间',
key: 'company' key: 'endTime'
}, },
// {
// title: '',
// key: 'company'
// },
{ {
title: '店铺', title: '店铺',
key: 'shop' key: 'shop',
render(h, params) {
return h("span", (params.row.stores.length || 0) + '家')
}
}, },
{ {
title: '添加好友数', title: '添加好友数',
key: 'addFriendNum' key: 'addFriendNum',
render(h, params) {
return h("span", (params.row.friends || 0) + '人')
}
}, },
{ {
title: '参与活动客户数', title: '参与活动客户数',
key: 'joinActivityClientNum' key: 'joinActivityClientNum',
render(h, params) {
return h("span", (params.row.friends || 0) + '人')
}
}, },
{ {
title: '活动码', title: '活动码',
key: 'activityCode' key: 'activityCode',
render(h) {
return h('Button', { props: { type: 'primary', size: 'small' } }, '查看详情')
}
}, },
{ {
title: '活动状态', title: '活动状态',
key: 'activityStatus' key: 'status',
render(h, p) {
const status = p.row.status;
if (status === 1) return h('span', '未开始');
if (status === 2) return h('span', '进行中');
if (status === 3) return h('span', '已结束');
if (status === 4) return h('span', '取消');
}
}, },
{ {
title: '操作', title: '操作',
key: 'action', key: 'action',
render () { width: 200,
return `<Button type="text" size="small">终止</Button><Button type="text" size="small">修改</Button>`; render(h, p) {
return h('div',
[
h('Button', { props: { type: 'primary', size: 'small' }, style: { marginRight: '8px' }, on: { click: () => this.stop(p.row) } }, '终止'),
h('Button', { props: { type: 'primary', size: 'small' }, on: { click: () => this.modify(p.row) } }, '修改')
]
)
} }
}] }]
} }
@ -128,24 +173,9 @@ export default {
this.setMenuName("活动管理", "活动计划") this.setMenuName("活动管理", "活动计划")
this.getCompanyInfo() this.getCompanyInfo()
this.getShopInfo() this.getShopInfo()
// this.getActivityTable() this.searchTable();
}, },
methods: { methods: {
getActivityTable() {
let that = this
console.log(that.formValidate.date)
debugger
let data = new FormData()
data.append('endDate', that.formValidate.date)
data.append('organizationId', that.formValidate.companyData)
data.append('pageNum', that.pageNum)
data.append('pageSize', that.pageSize)
data.append('startDate', that.formValidate.date)
data.append('startDate', that.formValidate.date)
ActivityManager.getActivityTableData(data, function (data) {
debugger
})
},
getCompanyInfo() { getCompanyInfo() {
let that = this let that = this
let data = { let data = {
@ -176,8 +206,21 @@ export default {
}); });
}) })
}, },
handlePage: function (value) {
this.pageNum = value;
this.searchTable();
},
searchTable(params = {}) {
params.pageNum = this.pageNum;
params.pageSize = this.pageSize;
http.get('/activity/instance/list', params).then(res => {
const data = res.data.results.this || {};
this.data = data.list || [];
this.totalSize = data.total || 0;
})
}
}
} }
}
</script> </script>
<style scoped> <style scoped>

@ -31,7 +31,8 @@
action="" action=""
style="display: inline-block;"> style="display: inline-block;">
<div style="width: 200px;height:200px;line-height: 200px;"> <div style="width: 200px;height:200px;line-height: 200px;">
<span>请上传图片</span> <span v-if="!formValidate.logo"></span>
<img v-if="formValidate.logo" :src="formValidate.logo" alt="" style="width: 100%; height: auto">
</div> </div>
</Upload> </Upload>
</FormItem> </FormItem>
@ -71,6 +72,7 @@
</template> </template>
<script> <script>
import ActivityManager from "../../services/ActivityManager/ActivityManager"; import ActivityManager from "../../services/ActivityManager/ActivityManager";
import axios from 'axios';
export default { export default {
name: "addActivity", name: "addActivity",
data() { data() {
@ -84,7 +86,8 @@ export default {
activityName: '', activityName: '',
activityDsc: '', activityDsc: '',
appId: '', appId: '',
uri: '' uri: '',
logo: '',
}, },
ruleValidate: { ruleValidate: {
activityName: [ activityName: [
@ -161,10 +164,22 @@ export default {
debugger debugger
this.imageName = file.name this.imageName = file.name
}, },
handleBeforeUpload(res, file) { handleBeforeUpload(res) {
let data = new FormData() const me = this;
data.append('file', res.name) let data = new FormData();
ActivityManager.uploadImg(data, function (data) { data.append('file', res);
axios({
method: 'post',
url: '/upload',
data: data,
headers: {
'Content-Type': 'multipart/form-data'
}
}).then(function (res) {
console.log(res);
if (res.data.success) {
me.formValidate.logo = res.data.results;
}
}) })
}, },
next() { next() {

Loading…
Cancel
Save