Commit aca63fcf by 陈羽

update:接口调试与页面完善

parent 776e1c15
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="shortcut icon" href="./static/img/favicon.ico">
<title>GIC后台</title>
<link rel="stylesheet" type="text/css" href="<%= htmlWebpackPlugin.options.BASE_URL %>static/fonts/iconfont.css">
<link rel="stylesheet" type="text/css" href="<%= htmlWebpackPlugin.options.BASE_URL %>static/css/common.css">
<link rel="stylesheet" href="//web-1251519181.file.myqcloud.com/components/element.2.12.0.css">
<!-- element 皮肤 -->
<!-- <link rel="stylesheet" type="text/css" href="http://web-1251519181.file.myqcloud.com/lib/elementUI/theme.1.0.1/index.css"> -->
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
<!-- 库引用cdn -->
<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/lib/elementUI/index.2.5.4.js"></script> -->
<!-- 组件引用cdn -->
<script src="//web-1251519181.file.myqcloud.com/components/header.2.0.45.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.19.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.28.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/store-card.2.0.30.js"></script><!-- 门店选择器 -->
<script src="//web-1251519181.file.myqcloud.com/components/store-new.2.0.71.js"></script><!-- 新版门店选择器 -->
<script src="//web-1251519181.file.myqcloud.com/components/confirm-people.2.0.06.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/people.2.0.43.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/export-excel.2.0.16.js"></script><!-- 数据导出 -->
<script src="//web-1251519181.file.myqcloud.com/components/input.2.0.20.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.21.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/pagination.1.0.8.js"></script><!-- 分页器 -->
<script src="//web-1251519181.file.myqcloud.com/components/track.1.0.4.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/activity-select.1.0.2.1.js"></script><!-- 数据对话 -->
</body>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="shortcut icon" href="./static/img/favicon.ico">
<title>GIC后台</title>
<link rel="stylesheet" type="text/css" href="<%= htmlWebpackPlugin.options.BASE_URL %>static/fonts/iconfont.css">
<link rel="stylesheet" type="text/css" href="<%= htmlWebpackPlugin.options.BASE_URL %>static/css/common.css">
<link rel="stylesheet" href="//web-1251519181.file.myqcloud.com/components/element.2.12.0.css">
<!-- element 皮肤 -->
<!-- <link rel="stylesheet" type="text/css" href="http://web-1251519181.file.myqcloud.com/lib/elementUI/theme.1.0.1/index.css"> -->
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
<!-- 库引用cdn -->
<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>
<!-- 组件引用cdn -->
<script src="//web-1251519181.file.myqcloud.com/components/header.2.0.45.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.20.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.28.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/store-card.2.0.30.js"></script><!-- 门店选择器 -->
<script src="//web-1251519181.file.myqcloud.com/components/store-new.2.0.71.js"></script><!-- 新版门店选择器 -->
<script src="//web-1251519181.file.myqcloud.com/components/confirm-people.2.0.06.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/people.2.0.43.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/export-excel.2.0.16.js"></script><!-- 数据导出 -->
<script src="//web-1251519181.file.myqcloud.com/components/input.2.0.20.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.21.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/pagination.1.0.8.js"></script><!-- 分页器 -->
<script src="//web-1251519181.file.myqcloud.com/components/track.1.0.4.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/activity-select.1.0.2.1.js"></script><!-- 数据对话 -->
<script src="//web-1251519181.file.myqcloud.com/components/radio-transfer.1.0.13.js"></script><!-- 单选穿梭框 -->
</body>
</html>
......@@ -3,7 +3,7 @@ export default {
path: 'sign',
name: '门店签到管理',
component: () => import(/* webpackChunkName: "signIn" */ '../../views/sign/index.vue'),
redirect: '/sign/setting',
redirect: '/sign/list',
children: [
{
path: 'setting',
......@@ -14,11 +14,11 @@ export default {
}
},
{
path: 'record',
path: 'list',
name: '门店签到记录',
component: () => import(/* webpackChunkName: "signIn" */ '../../views/sign/record.vue'),
component: () => import(/* webpackChunkName: "signIn" */ '../../views/sign/list.vue'),
meta: {
path: '/sign/record'
path: '/sign/list'
}
}
]
......
import { requests } from './index';
const PREFIX = 'api-marketing/store-sign/';
import config from '@/config';
export const url = config.api + PREFIX;
// 获取门店签到记录分页列表
export const getPageSignLog = params => requests(PREFIX + 'page-sign-log', params);
// 门店签到配置保存
export const saveStoreSignSetting = params => requests(PREFIX + 'save', params);
// 门店签到配置查询
export const getStoreSignDetail = params => requests(PREFIX + 'get-detail', params);
......@@ -183,11 +183,8 @@
top: 40px;
left: 0;
}
/* .dm-marketing__content--wrap {
max-width: 1200px;
} */
.dm-marketing__content__item {
margin-bottom: 20px;
margin: 20px 0;
}
.dm-marketing__content--index {
......@@ -202,67 +199,23 @@
padding: 4px;
color: #606266;
}
/* item */
/* card */
.dm-card__item__wrap {
display: inline-block;
position: relative;
width: 298px;
height: 142px;
width: 280px;
height: 101px;
margin: 0 10px 0 0;
padding: 18px 20px;
vertical-align: middle;
box-sizing: border-box;
border: 1px solid rgba(228, 231, 237, 1);
border-radius: 4px;
}
.dm-card__item {
padding: 0 15px;
background: rgba(72, 170, 3, 0.85);
height: 106px;
line-height: 106px;
}
.dm-card__item__avatar {
width: 60px;
height: 60px;
border-radius: 50%;
vertical-align: middle;
}
.dm-card__item__title {
vertical-align: middle;
margin-left: 8px;
max-width: 180px;
font-size: 16px;
font-weight: 500;
line-height: 30px;
color: #fff;
overflow: hidden;
text-overflow: ellipsis;
}
.dm-card__item__desc {
vertical-align: middle;
margin-left: 8px;
max-width: 200px;
font-size: 12px;
line-height: 20px;
color: #fff;
overflow: hidden;
text-overflow: ellipsis;
}
.dm-card__item--bottom {
vertical-align: middle;
line-height: 106px;
color: #909399;
font-size: 12px;
line-height: 36px;
padding-left: 15px;
}
/* integral */
.dm-integral__item__wrap {
box-sizing: border-box;
width: 300px;
width: 280px;
padding: 18px 20px;
margin: 0 10px 0 0;
border: 1px solid rgba(228, 231, 237, 1);
......
<template>
<div class="dm-card__item__wrap">
<el-tooltip open-delay="200" effect="dark" :content="item.prizeId" placement="top-start">
<p class="dm-card__item__title fz24">{{ item.couponName }}</p>
</el-tooltip>
<p class="dm-card__item--bottom fz16 mt15">{{ item.couponStatus ? '有效' : item.couponStatus === 0 ? '已删除' : '' }}</p>
</div>
</template>
<script>
export default {
name: 'item-card',
data() {
return {};
},
props: {
item: {
type: Object,
default() {
return {};
}
}
}
};
</script>
<style lang="scss" scoped></style>
<template>
<div class="inline-block dm-marketing__opt">
<span v-for="(v, i) in options" :key="i" class="dm-marketing__opt__item" @click="addItem(v)">
<img :src="v.img" alt="" srcset="" /><span> {{ v.name }}</span>
<span v-for="(v, i) in options" :key="i" class="dm-marketing__opt__item" @click="addItem(v)" style="display: inline-block;height: 36px;line-height: 36px;margin-right: 30px;cursor: pointer;">
<img :src="v.img" alt="" srcset="" style="vertical-align: middle; height: 17px; width: auto; overflow: hidden; color: #909399;" /><span style=" vertical-align: middle;color: #606266;font-size: 14px;"> {{ v.name }}</span>
</span>
</div>
</template>
......@@ -24,3 +24,32 @@ export default {
}
};
</script>
<style lang="scss" scoped>
.dm-marketing__opt {
background: #ffffff;
border: 1px solid rgba(235, 238, 245, 1);
-webkit-box-shadow: 0px 1px 20px 0px rgba(0, 0, 0, 0.15);
box-shadow: 0px 1px 20px 0px rgba(0, 0, 0, 0.15);
padding: 0 20px;
}
.dm-marketing__opt__item {
display: inline-block;
height: 36px;
line-height: 36px;
margin-right: 30px;
cursor: pointer;
}
.dm-marketing__opt__item > img {
vertical-align: middle;
height: 17px;
width: auto;
overflow: hidden;
color: #909399;
}
.dm-marketing__opt__item > span {
vertical-align: middle;
color: #606266;
font-size: 14px;
}
</style>
<template>
<section class="dm-wrap" v-loading="loading">
<div class="pb20 clearfix">
<el-input v-model="pageParams.memberInfo" class="w300" placeholder="请输入会员姓名/手机号" clearable @change="refresh"><i slot="prefix" class="el-input__icon el-icon-search"></i></el-input>
<el-date-picker class="w250" v-model="pageParams.time" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="refresh"></el-date-picker>
<p class="store_id">
<el-input v-model="storeName" placeholder="请选择门店" clearable @clear="clearStoreInfo"><i slot="prefix" class="el-input__icon el-icon-search"></i></el-input> <span @click="showStoreDialog" :style="!storeName ? 'width:100%;' : null">{{ storeName }}</span>
</p>
<vue-gic-store :projectName="projectName" :selectId="pageParams.storeId" :showStoreDialog="storeDialog" @selectStore="selectStore"></vue-gic-store>
</div>
<el-table tooltipEffect="light" :data="tableList" style="width: 100%">
<el-table-column :show-overflow-tooltip="true" align="left" prop="createTime" label="签到时间">
<template slot-scope="scope">
<p class="cell-time">
{{ formatDateTimeByType(scope.row.signTime, 'yyyy-MM-dd-HH-mm', true).y }}<br />
<span>{{ formatDateTimeByType(scope.row.signTime, 'yyyy-MM-dd-HH-mm', true).h }}</span>
</p>
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" label="签到用户">
<template slot-scope="scope">
<div class="memberInfo">
<img :src="scope.row.memberImage || ''" alt="" />
<div>
<p class="cell-memberInfo">{{ scope.row.memberName || '未获取到用户名' }}</p>
<p class="cell-memberInfo">{{ scope.row.memberPhone || '未获取到用户手机' }}</p>
</div>
</div>
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" label="福利类型">
<template slot-scope="scope"> {{ scope.prizeType === '1' ? '积分' : '卡券' }}</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" prop="prizeTxt" label="签到福利"></el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" prop="storeName" label="签到门店"></el-table-column>
</el-table>
</section>
</template>
<script>
import { getPageSignLog } from '@/service/api/storeSign.js';
import { formatDateTimeByType } from '@/utils/index.js';
export default {
name: 'sign-record',
data() {
return {
loading: false,
projectName: 'gic-web',
pageParams: {
currentPage: 1,
pageSize: 10
},
total: 0,
tableList: [],
// 门店单选
storeName: '',
storeDialog: false
};
},
created() {
this.$store.commit('mutations_breadcrumb', [{ name: '门店签到' }, { name: '门店签到记录', path: '' }]);
this.fetch();
},
methods: {
async fetch() {
try {
this.loading = true;
const params = { ...this.pageParams };
if (this.pageParams.time) {
params.startTime = formatDateTimeByType(params.time[0], 'yyyy-MM-dd');
params.endTime = formatDateTimeByType(params.time[1], 'yyyy-MM-dd');
delete params.time;
}
let res = await getPageSignLog(params);
if (res.errorCode === 0 && res.result) {
this.tableList = res.result.result || [];
this.total = res.result.totalCount;
} else {
this.tableList = [];
this.total = 0;
}
this.loading = false;
} catch (err) {
this.loading = false;
}
},
refresh() {
this.pageParams.currentPage = '1';
this.fetch();
},
// 显示门店弹窗
showStoreDialog() {
this.storeDialog = true;
},
clearStoreInfo() {
delete this.pageParams.storeId;
this.storeName = '';
this.refresh();
},
// 门店回显
selectStore(val) {
// 模拟检查数据
this.pageParams.storeId = val.storeId;
this.storeName = val.storeName || `(门店代码:${val.storeCode})`;
this.storeDialog = false;
this.refresh();
},
formatDateTimeByType
}
};
</script>
<style lang="scss" scoped>
.store_id {
display: inline-block;
position: relative;
height: 32px;
min-width: 300px;
vertical-align: middle;
cursor: default;
span {
position: absolute;
top: 0;
left: 0;
height: 100%;
opacity: 0;
cursor: default;
}
}
</style>
<template>
<div class="dm-card__item__wrap">
<img v-if="item.status === 0" :src="require('../assets/img/delete_icon.png')" draggable="false" class="flag" />
<img v-else-if="item.couponStock <= 0" :src="require('../assets/img/stock_icon.png')" draggable="false" class="flag" />
<div class="dm-card__item" :style="{ background: item.cardColor }">
<img class="dm-card__item__avatar" :src="item.brandLogo || loadErrorImg" alt="" />
<div class="inline-block">
<el-tooltip open-delay="200" effect="dark" :content="item.coupCardId" placement="top-start">
<p class="dm-card__item__title">{{ item.cardName }}</p>
</el-tooltip>
<p class="dm-card__item__desc" v-if="item.cardEffectiveMode !== 0">领取后{{ (item.startDay === 0 ? '当' : '第' + item.startDay) + '天,有效天数' + item.limitDay }}</p>
<p class="dm-card__item__desc" v-if="item.cardEffectiveMode === 0">{{ formatDateTimeByType(item.beginDate, 'yyyy-MM-dd') }}{{ formatDateTimeByType(item.endDate, 'yyyy-MM-dd') }}</p>
</div>
</div>
<p class="dm-card__item--bottom">
<span>适用{{ item.storeMode === 0 ? '所有门店' : item.storeMode === 1 ? '部分分组' : '部分门店' }}</span>
</p>
<div v-if="overdue" class="danger-color fz12 mt5"><i class="el-icon-warning mr5 fz12"></i>超过投放期限</div>
</div>
</template>
<script>
import { formatDateTimeByType } from '../assets/utils.js';
export default {
name: 'item-card',
data() {
return {
formatDateTimeByType,
// eslint-disable-next-line
loadErrorImg: require('../assets/img/loaderror.png')
};
},
props: {
item: {
type: Object,
default() {
return {};
}
}
},
computed: {
overdue() {
const { putEndDate, putBeginDate, putEffectiveMode } = this.item;
if (putEffectiveMode == 0) {
return new Date() > new Date(putEndDate) || new Date() < new Date(putBeginDate);
}
return false;
}
},
mounted() {
console.log(this.item);
}
};
</script>
<style lang="scss" scoped>
.dm-card__item__wrap {
position: relative;
img.flag {
position: absolute;
right: 0px;
top: -2px;
z-index: 5;
width: 70px;
}
}
</style>
import marketingEvent from './index.vue';
const gicMarketingEvent = {
install(Vue, options) {
Vue.component(marketingEvent.name, marketingEvent);
}
};
if (typeof window !== 'undefined' && window.Vue) {
window.Vue.use(gicMarketingEvent);
}
export default gicMarketingEvent;
<template>
<section class="dm-marketing">
<!-- 操作区 -->
<div class="dm-marketing__opt--wrap" v-if="list.length === 0">
<i class="el-icon-plus dm-marketing__opt--icon" @click="optTopShow = !optTopShow"></i>
<transition name="fade">
<opt @addItem="addItem" :options="allOptions" v-if="optTopShow"></opt>
</transition>
</div>
<!-- item组件区 -->
<div class="dm-marketing__content--wrap" v-if="list.length">
<div class="dm-marketing__content">
<!-- 组件 区域 -->
<div class="dm-marketing__content__item" v-for="(v, i) in list" :key="i">
<component :is="v.comName" :item="v.item"></component>
<template v-if="!readOnly">
<i class="el-icon-edit dm-marketing__opt--icon" v-if="v.comName === 'item-integral'" @click="editItem(v, i)"></i>
<dm-delete @confirm="delItem(v)">
<i class="el-icon-delete dm-marketing__opt--icon"></i>
</dm-delete>
</template>
</div>
</div>
</div>
<!-- 弹窗组件 -->
<component :is="dialogCom" @sendItem="saveToList" :item="currentItem" :show.sync="dialogShow" :isSupportVar="isSupportVar" :cardLimitType="cardLimitType" :integralMultiple="integralMultiple"></component>
</section>
</template>
<script>
// saveUpdateMarketingType,getMarketingEvent,getMarketingTypeDetails
// import { deleteMarketingType } from './assets/api.js';
// 删除组件
import dmDelete from './components/dm-delete.vue';
// 操作组件
import opt from './components/opt.vue';
// 页面item组件
import itemCard from './components/item-card.vue';
import itemIntegral from './components/item-integral.vue';
//弹窗组件
import libCard from './components/lib-card.vue';
import libIntegral from './components/lib-integral.vue';
// 全部的操作项
const allOptions = [
{ name: '卡券', value: 'card', key: 1, img: require('./assets/img/card.svg') },
{ name: '积分', value: 'integral', key: 2, img: require('./assets/img/integral.svg') }
];
export default {
name: 'vue-gic-marketing-event',
components: {
opt: opt,
'dm-delete': dmDelete,
'item-card': itemCard,
'item-integral': itemIntegral,
'lib-card': libCard,
'lib-integral': libIntegral
},
props: {
// 页面编码——- 1001-智能引擎; 1002-微信营销; 1003-被关注回复; 1004-关键字回复
code: {
type: String,
default: '1001'
},
ecmPlanId: {
type: String,
default: ''
},
// 是否能发短信的flag
enabledMessageState: {
type: Number,
default: 1
},
isSupportVar: {
type: Boolean,
default: false
},
cardLimitType: {
type: Number,
default: 1
},
integralMultiple: {
// 积分 是否需要倍数(场景:消费触发)
type: Boolean,
default: false
},
singleFlag: {
// 图文 实时发送这个参数为true,过滤图文仅要单图文
type: Boolean,
default: false
},
readOnly: {
// 只读
type: Boolean,
default: false
}
},
data() {
return {
list: [],
dialogShow: false,
dialogCom: '',
options: [],
allOptions: allOptions,
maxEventCount: 1, //item最大数
currentItem: {},
optShow: false,
optTopShow: true
};
},
created() {
// this.init();
},
methods: {
// 保存操作
saveToList(val) {
if (val.comName === 'integral' && this.list.length > 0) {
this.list[0].item.integralCount = val.integralCount;
} else {
this.hasReturn();
this.list.push({ comName: 'item-' + val.comName, item: val });
}
},
// 新增前置 不能超过营销事件限制数量
addItem(v) {
if (this.isOverMaxCount()) {
this.$message({ type: 'warning', message: `最多只能添加${this.maxEventCount}个签到福利` });
return;
}
this.dialogCom = 'lib-' + v.value;
// 新增的时候设置为空对象
this.currentItem = {};
this.dialogShow = true;
},
// 删除操作
delItem(item) {
const index = this.list.findIndex(v => v.item.coupCardId === item.item.coupCardId);
this.list.splice(index, 1);
this.hasReturn();
},
// 判断是否大于最大数量
isOverMaxCount() {
return this.list.length >= this.maxEventCount;
},
//判断营销列表里是否包含积分--订单倍数 提供给父级使用
hasIntegralMultiple() {
return this.list.some(v => v.comName === 'item-integral' && v.item.integralType === 2);
},
// 积分编辑前置
editItem(obj) {
this.currentItem = obj.item;
this.dialogCom = 'lib-' + obj.item.comName;
this.$nextTick(_ => {
this.dialogShow = true;
});
},
//判断营销列表里是否有卡券 提供给父级使用
hasReturn() {
let item = {};
try {
this.list.forEach(v => {
if (v.comName === 'item-card') {
item = v;
throw new Error();
}
});
} catch (e) {
console.log(e);
}
this.$emit('has-card', item);
}
}
};
</script>
<style lang="scss">
@import url('./assets/style/index.css');
.fade-enter-active,
.fade-leave-active {
transition: opacity 0.5s;
transform: translate(0);
}
.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {
opacity: 0;
display: none;
}
.dm-marketing {
.dm-marketing__opt {
padding-right: 0 !important;
}
}
</style>
<template>
<section class="dm-wrap" v-loading="loading">
<div class="pb20 clearfix">
<el-input v-model="pageParams.phone" class="w300" placeholder="请输入会员姓名/手机号" clearable @change="refresh"><i slot="prefix" class="el-input__icon el-icon-search"></i></el-input>
<el-date-picker class="w250" v-model="pageParams.time" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="refresh"></el-date-picker>
<div style="display:inline-block;">
<vue-gic-store-new :options="options" :isAdd="isAdd" :uuid.sync="uuid" ref="storeNew" @store-change="storeChange"></vue-gic-store-new>
</div>
</div>
<el-table tooltipEffect="light" :data="tableList" style="width: 100%">
<el-table-column :show-overflow-tooltip="true" align="left" prop="createTime" label="签到时间">
<template slot-scope="scope">
<p class="cell-time">
{{ formatDateTimeByType(scope.row.createTime, 'yyyy-MM-dd-HH-mm', true).y }}<br />
<span>{{ formatDateTimeByType(scope.row.createTime, 'yyyy-MM-dd-HH-mm', true).h }}</span>
</p>
</template>
</el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" prop="createTime" label="签到用户"></el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" prop="createTime" label="福利类型"></el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" prop="createTime" label="签到福利"></el-table-column>
<el-table-column :show-overflow-tooltip="true" align="left" prop="createTime" label="签到门店"></el-table-column>
</el-table>
</section>
</template>
<script>
export default {
name: 'sign-record',
data() {
return {
loading: false,
pageParams: {
pageNum: 1,
pageSize: 10
},
tableList: [],
// 门店筛选器
uuid: '', // 新增传空,编辑必传,
// 需要的下拉 默认为全部[0,1,2,3,4,5]
// 0 全部 1 门店类型 2门店标签 3 门店区域 4 门店分组 5 部分门店
options: [0, 1, 2, 3, 4, 5],
isAdd: true,
storeConfig: null
};
},
created() {
this.$store.commit('mutations_breadcrumb', [{ name: '门店签到' }, { name: '门店签到记录', path: '' }]);
},
methods: {
fetch() {
console.log();
},
refresh() {
console.log();
},
storeChange() {
// console.log(this.uuid);
this.$refs['storeNew'].getStoreConfig().then(data => {
// console.log('data----', data);
this.storeConfig = data;
});
}
}
};
</script>
<style lang="scss" scoped></style>
<template>
<section class="dm-wrap" v-loading="loading">
<div>999</div>
</section>
</template>
<script>
export default {
name: 'sign-record',
data() {
return {
loading: false
};
},
created() {
this.store.commit('mutations_breadcrumb', [{ name: '门店签到' }, { name: '门店小程序装修', path: '' }]);
},
methods: {}
};
</script>
<style lang="scss" scoped></style>
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