Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-3
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
office
haoban-3
Commits
a7d0356c
Commit
a7d0356c
authored
Aug 17, 2022
by
crushh
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/act-code' into dev
parents
a17b78e0
b77603cf
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
53 additions
and
26 deletions
+53
-26
selectShop.vue
src/components/common/selectShop.vue
+11
-4
detail.vue
...views/salesleads/actCodeManage/attractFlowLink/detail.vue
+42
-22
No files found.
src/components/common/selectShop.vue
View file @
a7d0356c
<
template
>
<
template
>
<el-popover
placement=
"bottom"
v-model=
"departmentVisible"
>
<el-popover
placement=
"bottom"
v-model=
"departmentVisible"
>
<dm-simple-transfer
:value=
"selected"
:canSelectAll=
"canSelectAll"
:filterMethod=
"filterMethod
"
:props=
"props"
:max=
"max"
:data=
"data"
:bodyH=
"62"
:item-size=
"66"
:titles=
"['选择门店', '已选门店']"
filterable
filter-placeholder=
"请输入门店名称/code"
@
change=
"change"
>
<dm-simple-transfer
:value=
"selected"
v-loading=
"loading"
:canSelectAll=
"canSelectAll"
:left-panel=
"leftPanel"
@
leftLoadMore=
"onLeftLoadMore
"
:props=
"props"
:max=
"max"
:data=
"data"
:bodyH=
"62"
:item-size=
"66"
:titles=
"['选择门店', '已选门店']"
filterable
filter-placeholder=
"请输入门店名称/code"
@
change=
"change"
>
<div
slot-scope=
"
{ option }">
<div
slot-scope=
"
{ option }">
<el-tooltip
:content=
"option.storeName"
:disabled=
"option.storeName.length
<
10
"
>
<el-tooltip
:content=
"option.storeName"
:disabled=
"option.storeName.length
<
10
"
>
<p
class=
"storeName"
>
{{
option
.
storeName
}}
</p>
<p
class=
"storeName"
>
{{
option
.
storeName
}}
</p>
...
@@ -37,6 +37,14 @@ export default {
...
@@ -37,6 +37,14 @@ export default {
canSelectAll
:
{
canSelectAll
:
{
type
:
Boolean
,
type
:
Boolean
,
default
:
false
default
:
false
},
leftPanel
:
{
type
:
Object
,
default
:
()
=>
{}
},
loading
:
{
type
:
Boolean
,
default
:
false
}
}
},
},
data
()
{
data
()
{
...
@@ -51,11 +59,10 @@ export default {
...
@@ -51,11 +59,10 @@ export default {
},
},
methods
:
{
methods
:
{
change
(
val
)
{
change
(
val
)
{
console
.
log
(
val
);
this
.
$emit
(
'change'
,
val
);
this
.
$emit
(
'change'
,
val
);
},
},
filterMethod
(
val
,
item
)
{
onLeftLoadMore
(
query
)
{
return
item
.
storeName
.
toLowerCase
().
indexOf
(
val
.
toLowerCase
())
>
-
1
||
item
.
storeCode
.
toLowerCase
().
indexOf
(
val
.
toLowerCase
())
>
-
1
;
this
.
$emit
(
'leftLoadMore'
,
query
)
;
}
}
}
}
};
};
...
...
src/views/salesleads/actCodeManage/attractFlowLink/detail.vue
View file @
a7d0356c
...
@@ -73,7 +73,7 @@
...
@@ -73,7 +73,7 @@
<div
class=
"level3-2"
v-if=
"form.customRuleJson.open"
>
<div
class=
"level3-2"
v-if=
"form.customRuleJson.open"
>
<div
class=
"level3-2-content"
v-if=
"form.customRuleJson.store_type == 1"
>
<div
class=
"level3-2-content"
v-if=
"form.customRuleJson.store_type == 1"
>
<el-form-item
label=
"选择门店"
label-width=
"92px"
prop=
"storeList"
>
<el-form-item
label=
"选择门店"
label-width=
"92px"
prop=
"storeList"
>
<selectShop
@
change=
"handleTransferChange"
:data=
"storeData"
:max=
"20"
:selected=
"form.storeList"
:canSelectAll=
"false"
/>
<selectShop
@
change=
"handleTransferChange"
:
loading=
"storeLoading"
:left-panel=
"leftPanel"
@
leftLoadMore=
"onLeftLoadMore"
:
data=
"storeData"
:max=
"20"
:selected=
"form.storeList"
:canSelectAll=
"false"
/>
</el-form-item>
</el-form-item>
<el-checkbox
v-model=
"form.customRuleJson.store.dz"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.dz, form.customRuleJson.store.dy) && form.customRuleJson.store.dz"
>
店长
</el-checkbox>
<el-checkbox
v-model=
"form.customRuleJson.store.dz"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.dz, form.customRuleJson.store.dy) && form.customRuleJson.store.dz"
>
店长
</el-checkbox>
<el-checkbox
v-model=
"form.customRuleJson.store.dy"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.dz, form.customRuleJson.store.dy) && form.customRuleJson.store.dy"
>
导购
</el-checkbox>
<el-checkbox
v-model=
"form.customRuleJson.store.dy"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.dz, form.customRuleJson.store.dy) && form.customRuleJson.store.dy"
>
导购
</el-checkbox>
...
@@ -86,7 +86,7 @@
...
@@ -86,7 +86,7 @@
</div>
</div>
<p
class=
"content-tips m-b-10"
>
客户拒绝授权当前定位信息,可在下方指定的门店范围中(最多20家)自主选择要添加的门店好友
</p>
<p
class=
"content-tips m-b-10"
>
客户拒绝授权当前定位信息,可在下方指定的门店范围中(最多20家)自主选择要添加的门店好友
</p>
<el-form-item
label=
"选择门店"
label-width=
"92px"
prop=
"storeList"
>
<el-form-item
label=
"选择门店"
label-width=
"92px"
prop=
"storeList"
>
<selectShop
@
change=
"handleTransferChange"
:data=
"storeData"
:max=
"20"
:selected=
"form.storeList"
:canSelectAll=
"false"
/>
<selectShop
@
change=
"handleTransferChange"
:
left-panel=
"leftPanel"
@
leftLoadMore=
"onLeftLoadMore"
:
data=
"storeData"
:max=
"20"
:selected=
"form.storeList"
:canSelectAll=
"false"
/>
</el-form-item>
</el-form-item>
<el-checkbox
v-model=
"form.customRuleJson.store.ndz"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.ndz, form.customRuleJson.store.ndy) && form.customRuleJson.store.ndz"
>
店长
</el-checkbox>
<el-checkbox
v-model=
"form.customRuleJson.store.ndz"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.ndz, form.customRuleJson.store.ndy) && form.customRuleJson.store.ndz"
>
店长
</el-checkbox>
<el-checkbox
v-model=
"form.customRuleJson.store.ndy"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.ndz, form.customRuleJson.store.ndy) && form.customRuleJson.store.ndy"
>
导购
</el-checkbox>
<el-checkbox
v-model=
"form.customRuleJson.store.ndy"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.ndz, form.customRuleJson.store.ndy) && form.customRuleJson.store.ndy"
>
导购
</el-checkbox>
...
@@ -164,6 +164,14 @@ export default {
...
@@ -164,6 +164,14 @@ export default {
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
20
pageSize
:
20
},
},
leftPanel
:
{
pageNum
:
1
,
totalPage
:
1
,
isMultiplePage
:
true
,
loading
:
false
,
filterMethod
:
this
.
filterMethod
},
search
:
''
,
welcomeType
:
1
,
welcomeType
:
1
,
landingLoading
:
false
,
landingLoading
:
false
,
loading
:
false
,
loading
:
false
,
...
@@ -178,12 +186,11 @@ export default {
...
@@ -178,12 +186,11 @@ export default {
storeList
:
{
required
:
true
,
validator
:
validateStoreList
}
storeList
:
{
required
:
true
,
validator
:
validateStoreList
}
},
},
storeData
:
[],
storeData
:
[],
storeLoading
:
false
,
form
:
{
form
:
{
linkType
:
1
,
linkType
:
1
,
memberLabelName
:
''
,
memberLabelName
:
''
,
memberLabelId
:
''
,
memberLabelId
:
''
,
// memberLabelName: '测试标签值名称重复- 温州青童时代店',
// memberLabelId: 'edd3901afd1e418d93fdc3b50bb24784',
storeList
:
[],
storeList
:
[],
name
:
''
,
name
:
''
,
pageId
:
''
,
pageId
:
''
,
...
@@ -222,9 +229,7 @@ export default {
...
@@ -222,9 +229,7 @@ export default {
}
}
},
},
wxEnterpriseId
:
sessionStorage
.
getItem
(
'userInfos'
)
?
JSON
.
parse
(
sessionStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
:
''
,
wxEnterpriseId
:
sessionStorage
.
getItem
(
'userInfos'
)
?
JSON
.
parse
(
sessionStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
:
''
,
btnLoading
:
false
,
btnLoading
:
false
storePageNum
:
0
,
totalCount
:
1
};
};
},
},
components
:
{
components
:
{
...
@@ -250,25 +255,42 @@ export default {
...
@@ -250,25 +255,42 @@ export default {
this
.
getStoreList
();
this
.
getStoreList
();
}
}
},
},
methods
:
{
methods
:
{
toInput
:
_debounce
(
function
(
e
,
value
)
{
toInput
:
_debounce
(
function
(
e
,
value
)
{
this
.
getList
();
this
.
getList
();
},
500
),
},
500
),
onLeftLoadMore
()
{
if
(
this
.
leftPanel
.
pageNum
<
this
.
leftPanel
.
totalPage
)
{
this
.
leftPanel
.
pageNum
++
;
this
.
leftPanel
.
loading
=
true
;
this
.
getStoreList
();
}
},
filterMethod
(
search
)
{
this
.
storeLoading
=
true
;
this
.
search
=
search
;
this
.
leftPanel
.
pageNum
=
1
;
this
.
leftPanel
.
loading
=
true
;
this
.
storeData
=
[];
this
.
getStoreList
();
},
getStoreList
()
{
getStoreList
()
{
storeListApi
({
page
Size
:
999999
})
storeListApi
({
page
Num
:
this
.
leftPanel
.
pageNum
,
pageSize
:
20
,
storeSearchParams
:
this
.
search
})
.
then
(
res
=>
{
.
then
(
res
=>
{
const
{
result
,
total
Count
}
=
res
.
data
.
result
;
const
{
result
,
total
Page
}
=
res
.
data
.
result
;
this
.
totalCount
=
totalCount
;
this
.
leftPanel
.
totalPage
=
totalPage
;
if
(
Array
.
isArray
(
result
)
&&
Array
.
isArray
(
this
.
form
.
storeList
))
{
if
(
Array
.
isArray
(
result
)
&&
Array
.
isArray
(
this
.
form
.
storeList
))
{
this
.
storeData
=
result
.
map
(
el
=>
{
this
.
storeData
=
this
.
storeData
.
concat
(
el
.
checked
=
this
.
form
.
storeList
.
some
(
item
=>
item
.
storeId
==
el
.
storeId
);
result
.
map
(
el
=>
{
return
el
;
el
.
checked
=
this
.
form
.
storeList
.
some
(
item
=>
item
.
storeId
==
el
.
storeId
);
});
return
el
;
})
);
}
}
})
})
.
finally
(
_
=>
{
.
finally
(
_
=>
{
this
.
busy
=
false
;
this
.
leftPanel
.
loading
=
false
;
this
.
storeLoading
=
false
;
});
});
},
},
getDetail
()
{
getDetail
()
{
...
@@ -308,19 +330,17 @@ export default {
...
@@ -308,19 +330,17 @@ export default {
this
.
form
.
memberLabelId
=
''
;
this
.
form
.
memberLabelId
=
''
;
},
},
handleTransferChange
(
val
)
{
handleTransferChange
(
val
)
{
console
.
log
(
val
);
this
.
form
.
storeList
=
val
;
this
.
form
.
storeList
=
val
;
this
.
$refs
.
form
.
validateField
(
'storeList'
);
// this.$refs.form.validateField('storeList');
// if (val && !val.length) {
// this.storeData = this.storeData.splice(0);
// }
},
},
getList
()
{
getList
()
{
this
.
landingLoading
=
true
;
this
.
landingLoading
=
true
;
guidePageList
(
this
.
landingPage
)
guidePageList
(
this
.
landingPage
)
.
then
(
res
=>
{
.
then
(
res
=>
{
const
{
result
,
totalCount
}
=
res
.
data
.
result
;
const
{
result
,
search
}
=
res
.
data
.
result
;
if
(
result
)
{
if
(
result
)
{
this
.
total
=
totalCount
;
this
.
total
=
search
;
this
.
landingData
=
result
;
this
.
landingData
=
result
;
}
}
})
})
...
...
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