Commit 348940a1 by liuchenxi

update: 下拉树接入

parent b723c6dd
......@@ -31,31 +31,7 @@
@change="onSearch"
clearable
/>
<el-select
v-model="customerTypeLabel"
placeholder="全部客户"
multiple
class="all-coustomer-select"
ref="select"
@change="selectChange"
style="width: 220px;margin-left:10px;height: 32px"
>
<el-option :value="customerType" style="height: auto;padding:0">
<el-tree
:data="treeData"
show-checkbox
node-key="id"
ref="tree"
class="customer-tree"
highlight-current
default-expand-all
:props="defaultProps"
:expand-on-click-node="false"
@check="handleCheckChange"
@node-click="handleClickNode"
/>
</el-option>
</el-select>
<vue-gic-select-tree :options="selectTreeOptions" @change="onSelectTreeChange" style="display: inline-block;margin-left:10px; height: 32px" />
<el-button type="text" @click="showSearch = !showSearch" class="senior-search">
高级搜索<i
:class="showSearch ? 'el-icon-d-arrow-left' : 'el-icon-d-arrow-right'"
......
......@@ -38,7 +38,6 @@ export default {
totalCount: 0,
loading: false,
tableData: [],
customerTypeLabel: "", // "非会员,微信会员,POS会员",
customerType: [
// { id: 1, label: "非会员" },
// { id: 3, label: "微信会员" },
......@@ -71,30 +70,46 @@ export default {
integralFlag: "", // 积分调整权限
memberGrade: [], // 商户等级列表
cliqueMemberGrade: [], // 集团等级列表
treeData: [
{
id: 1,
label: "非会员",
disabled: false
selectTreeOptions: {
selectOptions: {
allCheckText: '全部客户',
placeholder: '全部客户',
width: 220
},
{
id: 2,
label: "会员",
disabled: false,
children: [
treeOptions: {
data: [
{
id: 3,
label: "微信会员",
id: 1,
label: "会员",
disabled: false
},
{
id: 4,
label: "POS会员",
disabled: false
id: 2,
label: "会员",
disabled: false,
children: [
{
id: 3,
label: "微信会员",
disabled: false
},
{
id: 4,
label: "POS会员",
disabled: false
}
]
}
]
}
],
],
props: {
label: 'label',
children: 'children',
value: 'id'
}
},
searchAble: false,
multipleAble: true
},
defaultProps: {
children: "children",
label: "label"
......@@ -175,56 +190,11 @@ export default {
this.getFindMemberFields();
this.getAjaxMembers();
this.getEnterpriseInfo();
// 默认勾选全部客户类型 1-非会员 notMember 3-微信会员 wxOpenCarMember 4-pos会员 posMember
// this.$refs.tree.setCheckedNodes(this.treeData);
// this.$nextTick(_ => {
// this.handleCheckChange();
// });
},
beforUpdate() {},
methods: {
selectChange(e) {
const arrNew = [];
const dataLength = this.customerType.length;
const eleng = e.length;
for (let i = 0; i < dataLength; i++) {
for (let j = 0; j < eleng; j++) {
if (e[j] === this.customerType[i].label) {
arrNew.push(this.customerType[i]);
}
}
}
this.$refs.tree.setCheckedNodes(arrNew);
this.$nextTick(_ => {
this.handleCheckChange();
});
},
handleCheckChange(data, nodes) {
const res = this.$refs.tree.getCheckedNodes(true, true); // 这里两个true,1. 是否只是叶子节点 2. 是否包含半选节点(就是使得选择的时候不包含父节点)
const getAllCheck = this.$refs.tree.getCheckedNodes(false, true)
const arrLabel = [];
const arr = [];
res.forEach(item => {
item.disabled = false;
arrLabel.push(item.label);
arr.push(item);
});
this.customerType = [].concat(arr);
this.customerTypeLabel = [].concat(arrLabel);
const sum = this.searchTreeNodeNum(this.treeData);
if (getAllCheck.length == sum) this.customerTypeLabel = ['全部客户'];
},
searchTreeNodeNum(tree) {
let num = 0;
tree.forEach(el => {
num++;
if (Array.isArray(el.children) && el.children.length > 0) num += this.searchTreeNodeNum(el.children, num);
})
return num;
},
handleClickNode(data, node) {
this.$refs.tree.setChecked(data, !node.checked, true);
this.handleCheckChange();
onSelectTreeChange(data) {
this.customerType = data;
},
initialize() {
this.pageParam.phoneNameCard = sessionStorage.getItem("phoneNameCard")
......
<template>
<div class="marketing-card mt5">
<div class="search mb10">
投放时间:<el-date-picker :clearable="false" class="w256 mb10" value-format="yyyy-MM-dd" :pickerOptions="pickerOptions" v-model="launchTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="change"></el-date-picker>
领取时间:<el-date-picker class="ml10 w256 mb10" value-format="yyyy-MM-dd" :pickerOptions="pickerOptions" v-model="collectionTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="change"></el-date-picker>
投放时间:<el-date-picker :clearable="false" class="w256 mb10 mr10" value-format="yyyy-MM-dd" :pickerOptions="pickerOptions" v-model="launchTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="change"></el-date-picker>
领取时间:<el-date-picker class="mr10 w256 mb10" value-format="yyyy-MM-dd" :pickerOptions="pickerOptions" v-model="collectionTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="change"></el-date-picker>
<el-input
v-model="search.search"
placeholder="请输入卡券券码"
class="w260 ml10 mb10"
class="w260 mr10 mb10"
prefix-icon="el-icon-search"
@change="change"
clearable
/>
<el-select class="ml10 w160 mb10 mr10" v-model="search.cardType" placeholder="所有卡券类型" clearable @change="change">
<el-select class="w160 mb10 mr10" v-model="search.cardType" placeholder="所有卡券类型" clearable @change="change">
<el-option v-for="item in cardTypeList" :key="item.id" :value="item.value" :label="item.label" />
</el-select>
<el-select class="w160 mb10" v-model="search.receiveCode" placeholder="所有投放渠道" clearable @change="change">
......@@ -49,7 +49,7 @@
:current-page="tableData.currentPage"
:page-sizes="tableData.pageSizeList"
:page-size="tableData.pageSize"
layout="total, sizes, prev, pager, next, jumper"
layout="total, sizes, prev, pager, next"
:total="tableData.total"
>
</dm-pagination>
......
......@@ -45,7 +45,7 @@
:current-page="tableData.currentPage"
:page-sizes="tableData.pageSizeList"
:page-size="tableData.pageSize"
layout="total, sizes, prev, pager, next, jumper"
layout="total, sizes, prev, pager, next"
:total="tableData.total"
>
</dm-pagination>
......
......@@ -37,7 +37,7 @@
:current-page="tableData.currentPage"
:page-sizes="tableData.pageSizeList"
:page-size="tableData.pageSize"
layout="total, sizes, prev, pager, next, jumper"
layout="total, sizes, prev, pager, next"
:total="tableData.total"
>
</dm-pagination>
......
......@@ -37,7 +37,7 @@
:current-page="tableData.currentPage"
:page-sizes="tableData.pageSizeList"
:page-size="tableData.pageSize"
layout="total, sizes, prev, pager, next, jumper"
layout="total, sizes, prev, pager, next"
:total="tableData.total"
>
</dm-pagination>
......
......@@ -136,7 +136,7 @@ export default {
prop: "createDate",
minWidth: 80,
formatter(row) {
return `${dateformat(new Date(row.createDate), 'yyyy-MM-dd hh:mm:ss')}`;
return `${row.createDate ? dateformat(new Date(row.createDate), 'yyyy-MM-dd hh:mm:ss') : '--'}`;
}
},
{ label: "计划名称", prop: "ecmName", minWidth: 120 },
......@@ -172,7 +172,7 @@ export default {
prop: "createDate",
minWidth: 100,
formatter(row) {
return `${dateformat(new Date(row.createDate), 'yyyy-MM-dd hh:mm:ss')}`;
return `${row.createDate ? dateformat(new Date(row.createDate), 'yyyy-MM-dd hh:mm:ss') : '--'}`;
}
},
{
......@@ -180,7 +180,7 @@ export default {
prop: "receiveTime",
minWidth: 100,
formatter(row) {
return `${dateformat(new Date(row.receiveTime), 'yyyy-MM-dd hh:mm:ss')}`;
return `${row.receiveTime ? dateformat(new Date(row.receiveTime), 'yyyy-MM-dd hh:mm:ss') : '--'}`;
}
},
{ label: "卡券名称", prop: "cardName", minWidth: 100, },
......@@ -208,7 +208,7 @@ export default {
prop: "createDate",
minWidth: 80,
formatter(row) {
return `${dateformat(new Date(row.createDate), 'yyyy-MM-dd hh:mm:ss')}`;
return `${row.createDate ? dateformat(new Date(row.createDate), 'yyyy-MM-dd hh:mm:ss') : '--'}`;
}
},
{ label: "模板类型", prop: "smsType", minWidth: 50, formatter(row) {
......@@ -223,7 +223,7 @@ export default {
prop: "createDate",
minWidth: 80,
formatter(row) {
return `${dateformat(new Date(row.createDate), 'yyyy-MM-dd hh-mm-ss')}`;
return `${row.createDate ? dateformat(new Date(row.createDate), 'yyyy-MM-dd hh-mm-ss') : '--'}`;
}
},
{ label: "素材类型", prop: "contentType",minWidth: 60, formatter(row) {
......
......@@ -272,7 +272,7 @@
:current-page="currentPage"
:page-sizes="[20, 50, 75, 100]"
:page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper"
layout="total, sizes, prev, pager, next"
:total="total"
>
</dm-pagination>
......
......@@ -277,9 +277,9 @@
content: "\eb4d";
}
.icon-tubiao_tupiankongjian:before {
/* .icon-tubiao_tupiankongjian:before {
content: "\e656";
}
} */
.icon-video1:before {
content: "\e64b";
......@@ -937,9 +937,9 @@
content: "\ea30";
}
.icon-lianjie:before {
/* .icon-lianjie:before {
content: "\e627";
}
} */
.icon-duankailianjie:before {
content: "\e674";
......
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