Commit e552f9f5 by crushh

update: 会员标签

parent e53b6acf
......@@ -79,7 +79,8 @@ const urlConfig = {
switchPos: '/api-member/member-change-wechat-member-pos', // 微信转pos
getBlockList: '/api-member/enteprise-black-list-page', // 黑名单列表
addToWhiteList: '/api-member/update-member-white-list', // 加入白名单
memberTagGroupDetail: '/api-member/member-tag-group-detail' //会员分组详情
memberTagGroupDetail: '/api-member/member-tag-group-detail', //会员分组详情
memberStoredRecordList: '/api-member/member-stored-record-list' //储值列表(储值明细列表)
}
const defaultUrl = Object.assign({}, urlConfig);
......
<template>
<div>
<div class="minwidth1200 wechat-point-details">
<div class="con-container">
<v-nav :navpath="navpath"></v-nav>
<div class="wrap table-container">
<div class="mBottom20">
<el-date-picker class="w250" v-model="dateTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="handleTimeChange"></el-date-picker>
<el-select
v-model="searchType"
placeholder="所有"
@change="handleChange"
>
<el-option
v-for="item in selectData"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</div>
<div class="mBottom40">
<div class="table-content">
<el-table
:data="listData"
tooltip-effect="dark"
ref="multipleTable"
>
<el-table-column
prop="businessOccurrenceTime"
label="时间"
>
</el-table-column>
<el-table-column
prop="businessType"
label="类型"
>
<template slot-scope="scope">
<span>{{scope.row.businessType | typeFilter}}</span>
</template>
</el-table-column>
<el-table-column
prop="storedValueChange"
label="日志详情"
>
<template slot-scope="{ row }">
<span :style="row.storedValueChange>0?'color:green':'color:red'">
<span v-if="row.storedValueChange>0">+</span>
<span else>-</span>
{{row.storedValueChange}}
</span>
</template>
</el-table-column>
<el-table-column
prop="storeName"
label="门店"
></el-table-column>
<el-table-column
prop="clerkName"
label="操作人员"
></el-table-column>
<el-table-column
prop="rechargeOrderNum"
label="储值订单号"
>
</el-table-column>
<el-table-column
prop="relationCostOrderNum"
label="关联消费订单号"
></el-table-column>
<el-table-column
prop="remark"
label="备注"
>
</el-table-column>
</el-table>
<div
class="page mTop20"
v-if="page.totalCount > 0"
>
<dm-pagination
background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="page.currentPage"
:page-sizes="[20, 40, 60, 80]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next"
:total="page.totalCount"
>
</dm-pagination>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import nav from "../../common/navbar/navbar.vue";
import {
checkFalse,
checkStatus
} from "../../../static/js/checkStatus";
import { doFetch } from "../../components/axios/api";
import url from "../../components/axios/url";
export default ({
components: {
"v-nav": nav
......@@ -29,10 +127,121 @@ export default ({
path: "/storedValue?memberId=" + this.$route.query.memberId
}
],
selectData:[
{
label:'所有',
value:0
},
{
label:'充值',
value:1
},
{
label:'消费',
value:2
},
{
label:'退款',
value:3
},
{
label:'退卡',
value:4
},
{
label:'储值调整',
value:5
}
],
memberId: this.$route.query.memberId || "",
page: {
currentPage: 1,
pageSize: 20,
totalCount: 0
},
listData:[],
searchType:0,
beginTime: "",
endTime: "",
dateTime:'',
}
},
filter:{
typeFilter(val){
let type = ''
switch(val){
case 1:
type = '充值'
break;
case 2:
type = '消费'
break;
case 3:
type = '退款'
break;
case 4:
type = '退卡'
break;
case 5:
type = '储值调整'
break;
}
return type;
}
},
mounted(){
this.getListData();
},
methods:{
handleChange() {
this.page.currentPage = 1;
this.getListData();
},
handleTimeChange(val) {
this.dateTime = val?val:[];
this.getListData();
},
handleCurrentChange() {
this.getListData();
},
handleSizeChange(val) {
this.page.pageSize = val;
this.getListData();
},
getListData() {
doFetch(url.memberStoredRecordList,{
memberId: this.memberId,
pageSize: this.page.pageSize,
currentPage: this.page.currentPage,
searchType: this.searchType,
beginTime: this.dateTime[0] ,
endTime: this.dateTime[1]
}).then(res => {
if (res.data.errorCode === 0) {
const {currentPage, totalCount, result=[]} = res.data.result.page;
this.listData = result;
this.page.currentPage = currentPage;
this.page.totalCount = totalCount;
} else {
checkFalse(res.data.message);
}
})
.catch(err => {
checkStatus(err);
});
}
}
})
</script>
<style scoped>
<style lang="stylus">
.wechat-point-details {
height: 100%;
overflow: auto;
.table-container {
padding: 20px;
margin: 20px;
background-color: #fff;
}
}
</style>
......@@ -462,6 +462,13 @@ export default {
linkRoute(route) {
this.$router.push({ path: route, query: { memberId: this.memberId } });
},
goStoreValue(val) {
if(this.memberInfo.storedValueFlag) {
this.$router.push({ path: '/storeValue', query: { memberId: this.memberId } });
}else {
this.$message.info("未对接储值明细,暂无数据");
}
},
// 更新头像
updateImgUrl() {
doFetch(url.updateImgUrl, {
......
......@@ -25,7 +25,7 @@
<p class="font14">积分</p>
<p class="color555">{{ memberInfo.accumulatPoints | fomatNumber }}</p>
</div>
<div class="wechat-baseitem">
<div class="wechat-baseitem pointer" @click="goStoreValue()">
<p class="font14">储值</p>
<p class="color555">{{ memberInfo.storedValue | fomatNumber }}</p>
</div>
......
......@@ -443,6 +443,13 @@ export default {
linkRoute(route) {
this.$router.push({ path: route, query: { memberId: this.memberId } });
},
goStoreValue(val) {
if(this.memberInfo.storedValueFlag) {
this.$router.push({ path: '/storeValue', query: { memberId: this.memberId } });
}else {
this.$message.info("未对接储值明细,暂无数据");
}
},
// 更新头像
updateImgUrl() {
doFetch(url.updateImgUrl, {
......
......@@ -25,8 +25,8 @@
<p class="font14">积分</p>
<p class="color555">{{ memberInfo.accumulatPoints | fomatNumber }}</p>
</div>
<div class="wechat-baseitem">
<p class="font14" @click="linkRoute('/storedValue')">储值</p>
<div class="wechat-baseitem pointer" @click="goStoreValue()">
<p class="font14">储值</p>
<p class="color555">{{ memberInfo.storedValue | fomatNumber }}</p>
</div>
<div class="wechat-baseitem pointer" @click="cardDetail(memberInfo.memberId)">
......
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