Commit b87501d9 by shaojiawen

update:merge

parents e6fa3e6a 5ad3fd69
......@@ -133,21 +133,15 @@
<img class="channel-icon" v-if="channel.parentSourceCode == 1700" src="../../../static/img/channel-icon/qiyeweixin-1.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1303" src="../../../static/img/channel-icon/weimen-1.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1302" src="../../../static/img/channel-icon/tianmao-1.png" alt="">
<!-- <img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-1.png" alt=""> -->
</template>
<template v-if="channel.activeFlag == 1">
<img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-1.png" alt="">
</template>
<template v-if="channel.activeFlag != 1">
<img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-2.png" alt="">
</template>
</template>
<template v-if="channel.highlight == 2">
<img class="channel-icon" v-if="channel.parentSourceCode == 1100" src="../../../static/img/channel-icon/weixin-2.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1600" src="../../../static/img/channel-icon/xiaochengxu-2.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1700" src="../../../static/img/channel-icon/qiyeweixin-2.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1303" src="../../../static/img/channel-icon/weimen-2.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1302" src="../../../static/img/channel-icon/tianmao-2.png" alt="">
<!-- <img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-2.png" alt=""> -->
<img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-2.png" alt="">
</template>
</span>
</template>
......
......@@ -7,6 +7,7 @@
:close-on-click-modal="false"
@close="cancel"
width="480px"
:picker-options="pickerOptions()"
>
<el-tabs v-model="activeName">
<el-tab-pane
......@@ -81,7 +82,24 @@ export default {
visible: false,
fieldsList: [],
activeName: '0',
loading: false
loading: false,
pickerOptions() {
// let pickerMinDate;
return {
onPick(obj) {
// pickerMinDate = obj.minDate;
},
disabledDate(time) {
let start = new Date();
start.setFullYear(start.getFullYear() - 100);
start.setDate(start.getDate() + 1);
start = new Date(`${start.getFullYear()}-${start.getMonth() + 1}-${start.getDate()}`);
let end = new Date();
end = new Date(`${end.getFullYear()}-${end.getMonth() + 1}-${end.getDate()} 23:59:59`);
return time.getTime() < start.getTime() || time.getTime() > end;
}
};
}
};
},
watch: {
......
<template>
<div>
<el-dialog
title="编辑基本信息"
title="编辑基本信息333"
custom-class="customer-dialog"
:visible.sync="visible"
:close-on-click-modal="false"
......@@ -46,6 +46,7 @@
v-model="form.memberBirthday"
type="date"
placeholder="选择日期"
:picker-options="pickerOptions()"
/>
</el-form-item>
<el-form-item label="手机号码:">
......@@ -168,6 +169,23 @@ export default {
remark: [{ required: true, message: '请输入原因备注', trigger: 'blur' }],
},
btnLoading: false,
pickerOptions() {
// let pickerMinDate;
return {
onPick(obj) {
// pickerMinDate = obj.minDate;
},
disabledDate(time) {
let start = new Date();
start.setFullYear(start.getFullYear() - 100);
start.setDate(start.getDate() + 1);
start = new Date(`${start.getFullYear()}-${start.getMonth() + 1}-${start.getDate()}`);
let end = new Date();
end = new Date(`${end.getFullYear()}-${end.getMonth() + 1}-${end.getDate()} 23:59:59`);
return time.getTime() < start.getTime() || time.getTime() > end;
}
};
}
};
},
computed: {
......
<template>
<div style="padding:20px">
<div class="logTop">
<el-cascader
style="width:260px;"
placeholder="全部类型/全部事由"
:options="options"
filterable
clearable
:props="{ checkStrictly: true }"
@change="filterMethod">
<template slot-scope="{data}">
<span>{{data.operTypeName || data.openReasonName}}</span>
</template>
</el-cascader>
<el-date-picker style="width: 256px; margin-left:10px;" v-model="dateDefault" type="daterange" range-separator="~" start-placeholder="创建开始日期" end-placeholder="创建结束日期" :default-time="['00:00:00', '23:59:59']" :picker-options="pickerOptions()" value-format="yyyy-MM-dd" @change="handleSearch"> </el-date-picker>
<p class="font14 tip-p" v-if="!memberId">展示近一年的日志</p>
</div>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="createTime" label="时间">
<template slot-scope="scope">
{{ scope.row.createTime | formatTime }}
</template>
</el-table-column>
<el-table-column prop="operType" label="日志类型" />
<el-table-column prop="operReason" label="事由" />
<el-table-column prop="operContent" label="日志详情" show-overflow-tooltip/>
<el-table-column prop="operRemark" label="备注" show-overflow-tooltip>
<template slot-scope="{ row }">
<span v-html="row.operRemark" />
</template>
</el-table-column>
<el-table-column prop="" label="操作" width="120" v-if="memberId">
<template slot-scope="{ }">
<el-button type="text" @click="goLink('/customerLog')">查看</el-button>
</template>
</el-table-column>
</el-table>
<div class="page mTop20" v-if="totalCount > 0">
<dm-pagination
v-if="!memberId"
background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="logPageParam.currentPage"
:page-sizes="[20, 40, 60, 80]"
:page-size="logPageParam.pageSize"
layout="total, sizes, prev, pager, next"
:total="totalCount"
/>
<dm-pagination
v-else
background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="logPageParam.currentPage"
:page-size="logPageParam.pageSize"
layout="prev, pager, next"
:total="totalCount"
/>
</div>
</div>
</template>
<script>
import mixin from '../../wechatmembers/cardMixin';
import url from '../../axios/url';
import { doFetch, doFetchGet } from '../../axios/api';
export default {
name: 'customerLog',
mixins: [mixin],
props: {
memberId: {
type: String,
default: ''
}
},
data() {
return {
tableLoading: false,
tableData: [],
logPageParam: {
pageSize: 20,
currentPage: 1,
operReason: null,
operType: null,
beginTime: '',
endTime: ''
},
totalCount: 0,
options: [
// {
// value: 'zhinan',
// label: '指南',
// children: [{
// value: 'shejiyuanze',
// label: '设计原则',
// children: [{
// value: 'yizhi',
// label: '一致'
// }, {
// value: 'fankui',
// label: '反馈'
// }, {
// value: 'xiaolv',
// label: '效率'
// }, {
// value: 'kekong',
// label: '可控'
// }]
// }, {
// value: 'daohang',
// label: '导航',
// children: [{
// value: 'cexiangdaohang',
// label: '侧向导航'
// }, {
// value: 'dingbudaohang',
// label: '顶部导航'
// }]
// }]
// }
]
};
},
created() {
this.setDefalutTime()
this.getLogPage();
this.getLogTypeData();
},
methods: {
// 级联搜索
filterMethod(e) {
console.log(e);
},
// 客户日志类型列表
getLogTypeData() {
doFetchGet(url.getMemberLogType,{}).then(res=>{
if(res.data.errorCode == 0) {
this.options = res.data.result || [];
console.log(this.options,'999');
}
})
},
// 客户日志列表
getLogPage () {
this.tableLoading = true;
this.logPageParam.beginTime = this.dateDefault[0];
this.logPageParam.endTime = this.dateDefault[1];
doFetch(url.logPage, {
...this.logPageParam,
memberId: this.memberId || this.$route.query.memberId,
})
.then(res => {
this.tableLoading = false;
if (res.data.errorCode === 0) {
this.tableData = res.data.result.page.result || [];
this.tableData = this.tableData.map(el => {
if (typeof el.operRemark == 'string') { el.operRemark = el.operRemark.replace(/\n/g, ' <br />'); }
return el;
});
this.totalCount = res.data.result.page.totalCount;
} else {
checkFalse(res.data.message);
return false;
}
})
.catch(err => {
this.tableLoading = false;
checkStatus(err);
})
.finally(_ => this.count++);
},
handleSizeChange (v) {
this.logPageParam.pageSize = v;
this.logPageParam.currentPage = 1;
this.getLogPage();
},
handleCurrentChange (v) {
this.logPageParam.currentPage = v;
this.getLogPage();
},
handleSearch() {
this.logPageParam.currentPage = 1;
this.getLogPage();
},
goLink (v) {
console.log(this.memberId, 'this.memberId');
if (v) this.$router.push({ path: v, query: { memberId: this.memberId } });
},
}
};
</script>
<style lang="scss" scoped>
.logTop {
margin-bottom: 20px;
display: flex !important;
align-items: center !important;
margin-right: 10px;
}
.tip-p{
margin-left: 20px;
color: #6B6D71;
// padding-bottom: 16px;
}
</style>
\ No newline at end of file
......@@ -171,7 +171,7 @@ export default {
this.otherTagsList = this.formatTagsList(otherTagsList);
this.weimobTagsList = this.formatTagsList(weimobTagsList);
this.weimobTagFlag = weimobTagFlag;
console.log(this.tagsList);
// console.log(this.tagsList);
} else {
checkFalse(res.data.message);
}
......@@ -211,7 +211,7 @@ export default {
},
// 切换选中
changeCheck (item, isMultiple = true) {
console.log(item, 'item');
// console.log(item, 'item');
let count = 0;
this.$nextTick(_ => {
// 站位
......@@ -259,7 +259,7 @@ export default {
if (ele.checkBox) tagIds.push(ele.checkBox);
}
});
console.log(tagIds);
// console.log(tagIds);
let curtagIds = '';
if (tagIds.length > 0) {
curtagIds = tagIds.join(',');
......
......@@ -60,7 +60,7 @@
<!-- {{member.memberSources}} -->
<el-popover popper-class="channel-info-popover" v-if="channel.highlight == 1" trigger="hover" placement="top">
<div class="channel-info">
<div class="channel-title">{{ channel.sourceName }}<span v-if="channel.parentSourceCode == 1304 && channel.activeFlag !=1">(未激活)</span></div>
<div class="channel-title">{{ channel.sourceName }}</div>
<div class="channel-info-item" v-if="!channel.event || channel.event != '-'">
<span class="channel-info-label">来 源:</span>
<span class="channel-info-value">{{ channel.event || '--' }}</span>
......@@ -76,11 +76,7 @@
<img class="channel-icon" v-if="channel.parentSourceCode == 1700" src="../../../static/img/channel-icon/qiyeweixin-1.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1303" src="../../../static/img/channel-icon/weimen-1.png" alt="">
<img class="channel-icon" v-if="channel.parentSourceCode == 1302" src="../../../static/img/channel-icon/tianmao-1.png" alt="">
<!-- <img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-1.png" alt=""> -->
<span v-if="channel.parentSourceCode == 1304">
<img class="channel-icon" v-if="channel.activeFlag == 1" src="../../../static/img/channel-icon/douyin-1.png" alt="">
<img class="channel-icon" v-else src="../../../static/img/channel-icon/douyin-2.png" alt="">
</span>
<img class="channel-icon" v-if="channel.parentSourceCode == 1304" src="../../../static/img/channel-icon/douyin-1.png" alt="">
</template>
</el-popover>
<template v-if="channel.highlight == 2">
......@@ -729,7 +725,8 @@
<!-- 标签备注end -->
<!-- 客户日志 -->
<template v-if="section.name==='log'">
<!-- <customer-log style="padding:0" v-if="section.name==='log'" :memberId="memberId"></customer-log> -->
<!-- <template v-if="section.name==='log'">
<el-table :data="tableData" v-loading="tableLoading" style="width: 100%">
<el-table-column prop="createTime" label="时间">
<template slot-scope="scope">
......@@ -737,8 +734,8 @@
</template>
</el-table-column>
<el-table-column prop="operType" label="日志类型" />
<el-table-column prop="operContent" label="日志详情" />
<el-table-column prop="operReason" label="事由" />
<el-table-column prop="operContent" label="日志详情" />
<el-table-column prop="operRemark" label="备注">
<template slot-scope="{ row }">
<span v-html="row.operRemark" />
......@@ -757,10 +754,16 @@
:total="totalCount"
/>
</div>
</template>
</template> -->
<!-- 客户日志end -->
</div>
</div>
<dm-sub-title text="客户日志" type="fill" style="margin-bottom: 20px;font-size:14px;">
客户日志
<span style="margin-left: 10px; color: #909399;font-size:12px">(展示近一年的日志)</span>
</dm-sub-title>
<customer-log style="padding:0" :memberId="memberId"></customer-log>
</div>
<!-- 基本信息修改弹窗 -->
<baseinfo-dialog
......@@ -887,4 +890,10 @@ export default { ...action };
height: 22px !important;
top: 9px;
}
.subTitle .text {
font-size: 14px !important;
}
.subTitle .line {
margin-right: 8px !important;
}
</style>
......@@ -10,6 +10,7 @@ import { mapState } from 'vuex';
import url from '../../components/axios/url';
import { doFetch, doFetchqs, doFetchGet } from '../../components/axios/api';
import authMethods from '@/mixins/auth';
import CustomerLog from './components/customerLog.vue';
import {
checkFalse,
checkStatus,
......@@ -65,16 +66,16 @@ export default {
sourceTagList: []
}
},
tableData: [],
logPageParam: {
pageSize: 20,
currentPage: 1,
},
totalCount: 0,
// tableData: [],
// logPageParam: {
// pageSize: 20,
// currentPage: 1,
// },
// totalCount: 0,
defaultImg,
labelTabsActive: 'memberTagGroup',
fullscreenLoading: false, // 全局loading
tableLoading: false, // 用户日志列表loading
// tableLoading: false, // 用户日志列表loading
imgLoading: false, // 刷新头像loading
popoverVisible: false, // 修改等级popover
toggleTag: false, // 拓展信息展开按钮
......@@ -173,14 +174,14 @@ export default {
{ title: '营销活动标签', key: 'marketingTagList' },
],
},
{ title: '客户日志', name: 'log', class: 'log-info-contain' },
// { title: '客户日志', name: 'log', class: 'log-info-contain' },
],
marketingRecordNum: 0
};
},
watch: {
count: function (n, o) {
if (n === 4){
if (n === 3){
this.fullscreenLoading = false;
if(!this.memberInfo.erpIntegralFlag) this.$message.error('查询ERP积分失败,当前积分为上次同步积分,实际积分以ERP为准');
}
......@@ -240,7 +241,7 @@ export default {
this.count = 0;
this.fullscreenLoading = true;
this.getAllDetail();
this.getLogPage();
// this.getLogPage();
},
isOverflow(text) {
const dom = document.createElement('span');
......@@ -250,7 +251,7 @@ export default {
dom.innerText = text;
document.body.appendChild(dom);
const result = dom.offsetWidth >= 72;
console.log(dom.offsetWidth)
// console.log(dom.offsetWidth)
document.body.removeChild(dom);
return result;
},
......@@ -333,32 +334,32 @@ export default {
.finally(_ => this.count++);
});
},
getLogPage () {
this.tableLoading = true;
doFetch(url.logPage, {
...this.logPageParam,
memberId: this.memberId,
})
.then(res => {
this.tableLoading = false;
if (res.data.errorCode === 0) {
this.tableData = res.data.result.page.result || [];
this.tableData = this.tableData.map(el => {
if (typeof el.operRemark == 'string') { el.operRemark = el.operRemark.replace(/\n/g, ' <br />'); }
return el;
});
this.totalCount = res.data.result.page.totalCount;
} else {
checkFalse(res.data.message);
return false;
}
})
.catch(err => {
this.tableLoading = false;
checkStatus(err);
})
.finally(_ => this.count++);
},
// getLogPage () {
// this.tableLoading = true;
// doFetch(url.logPage, {
// ...this.logPageParam,
// memberId: this.memberId,
// })
// .then(res => {
// this.tableLoading = false;
// if (res.data.errorCode === 0) {
// this.tableData = res.data.result.page.result || [];
// this.tableData = this.tableData.map(el => {
// if (typeof el.operRemark == 'string') { el.operRemark = el.operRemark.replace(/\n/g, ' <br />'); }
// return el;
// });
// this.totalCount = res.data.result.page.totalCount;
// } else {
// checkFalse(res.data.message);
// return false;
// }
// })
// .catch(err => {
// this.tableLoading = false;
// checkStatus(err);
// })
// .finally(_ => this.count++);
// },
updateImgUrl () {
this.imgLoading = true;
doFetch(url.updateImgUrl, {
......@@ -398,15 +399,15 @@ export default {
});
}
},
handleSizeChange (v) {
this.logPageParam.pageSize = v;
this.logPageParam.currentPage = 1;
this.getLogPage();
},
handleCurrentChange (v) {
this.logPageParam.currentPage = v;
this.getLogPage();
},
// handleSizeChange (v) {
// this.logPageParam.pageSize = v;
// this.logPageParam.currentPage = 1;
// this.getLogPage();
// },
// handleCurrentChange (v) {
// this.logPageParam.currentPage = v;
// this.getLogPage();
// },
// 集团配置
getEnterpriseInfo () {
doFetchqs(url.enterpriseInfo).then(res => {
......@@ -475,7 +476,7 @@ export default {
const res = await doFetchGet(url.getMarketingRecordNum, param);
if (res.data.errorCode == 0) {
this.marketingRecordNum = res.data.result || 0;
console.log(this.marketingRecordNum);
// console.log(this.marketingRecordNum);
} else {
checkFalse(res.data.message);
}
......@@ -491,6 +492,7 @@ export default {
customermainstoreDialog,
customersubstoreDialog,
customerlabelDialog,
IconLabelValue
IconLabelValue,
CustomerLog
},
};
......@@ -99,7 +99,9 @@ const urlConfig = {
getMarketingRecordNum: '/api-marketing/member/marketing-count',
aiLogPage: '/api-marketing/member/page-ai-member-log',
getOrderList: '/api-member/member-all-order-page',
getMemberSourceList: '/api-plug/member-source-list'
getMemberSourceList: '/api-plug/member-source-list',
getMemberLogType: '/api-plug/member-oper-type-list',
getMemberLogReason: '/api-plug/member-oper-reason-list'
}
const defaultUrl = Object.assign({}, urlConfig);
......
import {formatYMD} from '@/common/filters/custom.js';
export default {
data() {
return {
// dateKey: 0,
dateDefault: [],
pickerOptions() {
// let pickerMinDate;
return {
onPick(obj) {
// pickerMinDate = obj.minDate;
},
disabledDate(time) {
let start = new Date();
start.setFullYear(start.getFullYear() - 1);
start.setDate(start.getDate() + 1);
start = new Date(`${start.getFullYear()}-${start.getMonth() + 1}-${start.getDate()}`);
let end = new Date();
end = new Date(`${end.getFullYear()}-${end.getMonth() + 1}-${end.getDate()} 23:59:59`);
return time.getTime() < start.getTime() || time.getTime() > end;
}
};
}
};
},
methods: {
setDefalutTime(){
let start = new Date();
start.setFullYear(start.getFullYear());
start.setDate(start.getDate());
start = `${start.getFullYear()}-${start.getMonth() + 1}-${start.getDate()}`;
let end = new Date();
end = `${end.getFullYear()}-${end.getMonth() + 1}-${end.getDate()-1}`;
this.dateDefault = [formatYMD(new Date(end).getTime()), formatYMD(new Date(start).getTime())]
},
}
};
\ No newline at end of file
......@@ -5,12 +5,12 @@
<el-select
v-model="cardReviceCode"
style="margin-right: 7px;"
placeholder="所有渠道"
placeholder="所有来源"
@change="handleSearch"
>
<el-option
:key=-1
label="所有渠道"
label="所有来源"
:value=-1
></el-option>
<el-option
......@@ -24,6 +24,7 @@
v-model="useStatus"
placeholder="所有状态"
@change="handleSearch"
style="margin-right: 7px;"
>
<el-option
:key=-1
......@@ -71,7 +72,9 @@
:value=10
></el-option>
</el-select>
<el-date-picker style="width: 256px;" v-model="dateDefault" type="daterange" range-separator="~" start-placeholder="创建开始日期" end-placeholder="创建结束日期" :default-time="['00:00:00', '23:59:59']" :picker-options="pickerOptions()" value-format="yyyy-MM-dd" @change="handleSearch"> </el-date-picker>
</div>
<p class="font14 tip-p">展示投放时间仅一年的卡券</p>
<div class="table-content">
<el-table
:data="memberData"
......@@ -107,9 +110,17 @@
</el-table-column>
<el-table-column
prop="receiveName"
label="投放渠道"
label="投放来源"
></el-table-column>
<el-table-column
prop="cardType"
label="卡券类型"
>
<template slot-scope="{row}">
{{row.cardType == 0 ? '抵金券' : row.cardType == 1 ? '折扣券' : row.cardType == 2 ? '兑换券' : '--'}}
</template>
</el-table-column>
<el-table-column
prop="cardName"
label="卡券名称"
>
......@@ -120,6 +131,24 @@
</template>
</el-table-column>
<el-table-column
prop="cardDenomination"
label="优惠额度"
>
<template slot-scope="{row}">
{{row.cardType == 0 ? `${row.cardDenomination}元` : row.cardType == 1 ? `${row.cardDenomination}折` : row.cardType == 2 ? `${row.cardDenomination}` : '--'}}
</template>
</el-table-column>
<el-table-column
prop="receiveName"
label="有效期"
>
<template slot-scope="{row}">
<!-- {{row.cardEffectiveMode == 0 ? `${row.effectTime | formatTime}-${row.limitTime | formatTime}` : row.cardEffectiveMode == 1 && row.receiveTime == null ? `领取后${row.startDay}天生效,有效期${row.limitDay}天` : row.cardEffectiveMode == 1 && row.receiveTime != null ? `${row.effectTime | formatTime}-${row.limitTime | formatTime}` : row.cardEffectiveMode == 2 && row.receiveTime == null ? '领取后当月有效' : row.cardEffectiveMode == 2 && row.receiveTime != null ? `${row.effectTime | formatTime}-${row.limitTime | formatTime}` : '--'}} -->
{{row.cardEffectiveMode == 0 || (row.cardEffectiveMode == 2 && row.receiveTime != null) || (row.cardEffectiveMode == 1 && row.receiveTime != null) ? `${row.effectTime | formatTime}-${row.limitTime | formatTime}` : row.cardEffectiveMode == 1 && row.receiveTime == null ? `领取后${row.startDay}天生效,有效期${row.limitDay}天` : row.cardEffectiveMode == 2 && row.receiveTime == null ? '领取后当月有效' : '--'}}
</template>
</el-table-column>
<el-table-column
prop="cardCode"
label="卡券代码"
>
......@@ -130,7 +159,7 @@
</el-table-column>
<el-table-column
prop="status"
label="状态"
label="卡券状态"
>
<div slot-scope="scope" v-html="formatStatus(scope.row)">
<!-- <span v-if="scope.row.status === -1">所有</span>
......@@ -299,6 +328,7 @@
</template>
<script>
import mixin from './cardMixin';
import nav from "../../common/navbar/navbar.vue";
import { doFetch } from "../../components/axios/api";
import url from "../../components/axios/url";
......@@ -352,12 +382,12 @@ export default {
orderNumber: null,
};
},
mixins: [authMethods],
mixins: [authMethods, mixin],
methods: {
formatStatus(row) {
let _content = '';
const { status } = row;
console.log(row)
// console.log(row)
let isOverdue = Date.now() >= row.limitTime;
if (status == 3) {
_content = `<div class="${isOverdue ? 'dm-status--info' : 'dm-status--error'}">${isOverdue ? '已过期' : '待领取'}</div>`;
......@@ -503,7 +533,9 @@ export default {
pageSize: this.page.pageSize,
currentPage: this.page.currentPage,
cardReviceCode: this.cardReviceCode,
useStatus: this.useStatus
useStatus: this.useStatus,
beginTime: this.dateDefault[0],
endTime: this.dateDefault[1],
})
.then(res => {
if (res.data.errorCode === 0) {
......@@ -556,6 +588,7 @@ export default {
}
},
created() {
this.setDefalutTime()
if (this.memberId) {
this.getMemberCardsPage();
}
......@@ -569,6 +602,10 @@ export default {
</script>
<style lang="stylus" scoped>
.tip-p{
color: #6B6D71;
padding-bottom: 16px;
}
.check-box {
padding-bottom: 20px;
}
......
<template>
<div class="integral-tab" >
<div class="integral-tab m20" >
<el-tabs v-model="activeName">
<el-tab-pane label="积分明细" name="first" >
<p class="font14 tip-p">展示近两年的积分明细</p>
......@@ -52,6 +52,7 @@
<el-option label="所有积分状态" :value=-1></el-option>
<el-option v-for="item in frozenStatusList" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
<el-date-picker style="width: 256px;" v-model="dateDefault" type="daterange" range-separator="~" start-placeholder="创建开始日期" end-placeholder="创建结束日期" :default-time="['00:00:00', '23:59:59']" :picker-options="pickerOptions()" value-format="yyyy-MM-dd" @change="handleSearch"> </el-date-picker>
</div>
<el-button
v-if="getCodeAuth('memberAdjustIntegral')"
......@@ -232,6 +233,7 @@
</template>
<script>
import mixin from './integralMixin';
import enterpriseIntergralWithhold from './enterpriseIntergralWithhold.vue';
import nav from "../../common/navbar/navbar.vue";
import { doFetch } from "../../components/axios/api";
......@@ -284,7 +286,7 @@ export default {
integralFlag: ""
};
},
mixins: [authMethods],
mixins: [authMethods, mixin],
methods: {
formatSourceType(row, col, val) {
const type = this.sourceTypeList.find(el => el.value == val) || {};
......@@ -335,8 +337,8 @@ export default {
dictCode: this.dictCode,
searchType: this.searchType,
sourceType: this.sourceType,
beginTime: this.beginTime,
endTime: this.endTime,
beginTime: this.dateDefault[0],
endTime: this.dateDefault[1],
storeName: this.storeName,
frozenStatus:this.frozenStatus
})
......@@ -395,6 +397,7 @@ export default {
}
},
created() {
this.setDefalutTime()
if (this.memberId) {
this.getIntegralDataPage();
this.getIntegralOperateType();
......@@ -410,6 +413,10 @@ export default {
</script>
<style lang="stylus">
.m20 {
margin: 20px;
margin-top: 0px;
}
.tip-p{
color: #6B6D71;
padding-bottom: 16px;
......
......@@ -27,12 +27,12 @@ export default {
methods: {
setDefalutTime(){
let start = new Date();
start.setFullYear(start.getFullYear() - 2);
start.setFullYear(start.getFullYear());
start.setDate(start.getDate() + 1);
start = `${start.getFullYear()}-${start.getMonth() + 1}-${start.getDate()}`;
let end = new Date();
end = `${end.getFullYear()}-${end.getMonth() + 1}-${end.getDate()}`;
this.dateDefault = [formatYMD(new Date(start).getTime()), formatYMD(new Date(end).getTime())]
this.dateDefault = [formatYMD(new Date(end).getTime()), formatYMD(new Date(start).getTime())]
},
}
};
\ No newline at end of file
......@@ -53,6 +53,13 @@ export const constantRouterMap = [
},
},
{
path: '/customerLog',
component: _import('allCustomers/components', 'customerLog'),
meta: {
title: '客户日志',
},
},
{
path: '/order-list',
component: _import('allCustomers', 'order-list'),
meta: {
......
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