Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
member
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
member
member
Commits
59398488
Commit
59398488
authored
Jan 20, 2022
by
liuchenxi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update: 客户列表,详情优化
parent
fdaa2707
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
39 additions
and
35 deletions
+39
-35
allCustomersList.vue
src/components/allCustomers/allCustomersList.vue
+9
-2
customerDetail.less
src/components/allCustomers/customerDetail.less
+1
-6
customerDetail.vue
src/components/allCustomers/customerDetail.vue
+6
-6
index.js
src/components/allCustomers/index.js
+23
-21
No files found.
src/components/allCustomers/allCustomersList.vue
View file @
59398488
...
...
@@ -33,8 +33,9 @@
/>
<
el
-
select
v
-
model
=
"customerTypeLabel"
placeholder
=
"
请选择
"
placeholder
=
"
全部客户
"
multiple
ref
=
"select"
@
change
=
"selectChange"
style
=
"width: 300px"
>
...
...
@@ -47,7 +48,9 @@
highlight
-
current
default
-
expand
-
all
:
props
=
"defaultProps"
:
expand
-
on
-
click
-
node
=
"false"
@
check
=
"handleCheckChange"
@
node
-
click
=
"handleClickNode"
/>
<
/el-option
>
<
/el-select
>
...
...
@@ -76,6 +79,7 @@
<
/template
>
<
/el-select
>
<
/div
>
<
el
-
button
v
-
if
=
"getCodeAuth('memberBatchImport')"
:
limit
-
code
=
"getCode('memberBatchImport')"
type
=
"primary"
@
click
=
"batchImport"
>
批量导入修改
<
/el-button
>
<
/div
>
<
div
v
-
show
=
"showSearch"
class
=
"senior-search-content"
>
<!--
人群筛选器
-->
...
...
@@ -122,7 +126,7 @@
>
<
template
slot
-
scope
=
"{row
}
"
>
<!--
基本信息
-->
<
div
v
-
if
=
"colum == 'name'"
class
=
"customer-info-cell
"
>
<
div
v
-
if
=
"colum == 'name'"
:
class
=
"['customer-info-cell', getCodeAuth('memberIntoCustomDetail') && 'pointer']"
@
click
=
"linkDetail(row.memberId)
"
>
<
img
:
src
=
"row.thirdImgUrl||defaultImg"
alt
=
""
>
<
p
class
=
"memberName"
>
{{
row
.
memberName
||
'--'
}}
...
...
@@ -309,4 +313,7 @@ export default { ...action };
transform
:
translateY
(
0
);
}
}
.
pointer
{
cursor
:
pointer
;
}
<
/style
>
src/components/allCustomers/customerDetail.less
View file @
59398488
...
...
@@ -71,7 +71,7 @@
z-index: 1;
width: 100%;
height: 34px;
transform: translateY(
43px
);
transform: translateY(
0
);
transition: transform 0.5s, -webkit-transform 0.5s;
background: linear-gradient(
180deg,
...
...
@@ -100,11 +100,6 @@
display: block;
width: 100%;
}
&:hover {
.maskOperation {
transform: translateY(0px);
}
}
}
}
.right {
...
...
src/components/allCustomers/customerDetail.vue
View file @
59398488
<
template
>
<div
class=
"customer-details"
v-loading
.
fullscreen
.
lock=
"fullscreenLoading"
>
<div
class=
"customer-details"
>
<v-nav
:navpath=
"navpath"
/>
<div
class=
"customer-contain-wrap"
>
<div
class=
"customer-contain-wrap"
v-loading=
"fullscreenLoading"
>
<div
class=
"customer-info-item"
v-for=
"section in customerInfoItemList"
:key=
"section"
>
<div
class=
"info-item-header"
>
<h2
class=
"item-title"
>
...
...
@@ -24,7 +24,7 @@
<div
class=
"maskOperation"
>
<!--
<span
@
click=
"updateImgUrl"
>
刷新头像
</span><i
class=
"vertical-line"
/>
-->
<router-link
tag=
"span"
:to=
"`/photo-album?memberId=$
{memberId}
&
from=1`">
会员
相册
客户
相册
</router-link>
</div>
<el-image
...
...
@@ -150,7 +150,7 @@
</el-tooltip>
</el-descriptions-item>
</el-descriptions>
</div>
<!-- 会员信息字段 -->
<div
:class=
"[toggleTag?'':'shrink']"
v-if=
"showFieldType===2&&extendInfo.fieldList"
>
...
...
@@ -167,13 +167,13 @@
{{
item
.
fieldValue
}}
</el-descriptions-item>
</el-descriptions>
</div>
<div
class=
"empty-block"
v-if=
"(showFieldType===1&&!extendInfo.openField&&!extendInfo.openChildrenField)||(showFieldType===2&&!extendInfo.fieldList)"
>
<
img
:src=
"require('../../../static/img/no-data_icon.png')"
alt=
""
>
<
!--
<img
:src=
"require('../../../static/img/no-data_icon.png')"
alt=
""
>
--
>
<p>
暂无数据
</p>
</div>
<div
class=
"toggleTag"
@
click=
"toggleTag=!toggleTag"
v-if=
"toggleShow"
>
...
...
src/components/allCustomers/index.js
View file @
59398488
...
...
@@ -65,8 +65,7 @@ export default {
{
value
:
"integral"
,
label
:
"调整积分"
,
code
:
"memberBatchSetIntegral"
},
{
value
:
"grade"
,
label
:
"修改等级"
,
code
:
"memberBatchSetGrade"
},
{
value
:
"mainstore"
,
label
:
"修改服务门店"
,
code
:
"memberBatchSetService"
},
{
value
:
"store"
,
label
:
"修改协管门店"
,
code
:
"memberBatchSetCustomer"
},
{
value
:
"batchImport"
,
label
:
"批量导入"
,
code
:
"memberBatchImport"
}
{
value
:
"store"
,
label
:
"修改协管门店"
,
code
:
"memberBatchSetCustomer"
}
],
defaultImg
,
integralFlag
:
""
,
// 积分调整权限
...
...
@@ -156,17 +155,7 @@ export default {
watch
:
{
customerType
:
{
handler
(
newV
,
oldV
)
{
if
(
newV
.
length
===
0
&&
this
.
$refs
.
tree
)
{
this
.
$message
.
error
(
"至少选择一个客户类型"
);
this
.
$refs
.
tree
.
setChecked
(
oldV
[
0
].
id
,
true
,
true
);
this
.
$nextTick
(
_
=>
{
this
.
handleCheckChange
();
});
}
else
if
(
oldV
.
length
===
0
)
{
return
false
;
}
else
{
this
.
onSearch
();
}
this
.
onSearch
();
},
deep
:
true
},
...
...
@@ -212,6 +201,7 @@ export default {
},
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
=>
{
...
...
@@ -219,11 +209,22 @@ export default {
arrLabel
.
push
(
item
.
label
);
arr
.
push
(
item
);
});
if
(
res
.
length
===
1
)
{
res
[
0
].
disabled
=
true
;
}
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
();
},
initialize
()
{
this
.
pageParam
.
phoneNameCard
=
sessionStorage
.
getItem
(
"phoneNameCard"
)
...
...
@@ -462,11 +463,7 @@ export default {
},
// 批量处理
handleFocusBatch
(
val
)
{
if
(
this
.
batchValue
==
"batchImport"
)
{
// 批量导入
this
.
batchValue
=
""
;
this
.
openDialogImport
();
}
else
if
(
this
.
multipleList
.
length
<
1
)
{
if
(
this
.
multipleList
.
length
<
1
)
{
this
.
batchValue
=
""
;
checkFalse
(
"请勾选会员"
);
return
false
;
...
...
@@ -482,6 +479,10 @@ export default {
}
this
.
batchValue
=
""
;
},
// 批量导入修改
batchImport
()
{
this
.
openDialogImport
();
},
batchRefresh
()
{
this
.
getAjaxMembers
();
},
...
...
@@ -514,6 +515,7 @@ export default {
});
},
linkDetail
(
memberId
)
{
if
(
!
this
.
getCodeAuth
(
'memberIntoCustomDetail'
))
return
;
this
.
$router
.
push
({
path
:
"/customerDetail"
,
query
:
{
memberId
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment