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
5780fb08
Commit
5780fb08
authored
Jul 29, 2022
by
crushh
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/act-code' into dev
parents
dd121199
272432c3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
60 additions
and
29 deletions
+60
-29
selectShop.vue
src/components/common/selectShop.vue
+28
-9
detail.vue
...views/salesleads/actCodeManage/attractFlowLink/detail.vue
+32
-20
No files found.
src/components/common/selectShop.vue
View file @
5780fb08
<
template
>
<el-popover
placement=
"bottom"
style=
"min-width: 357px"
v-model=
"departmentVisible"
>
<dm-simple-transfer
v-model=
"selected"
:
props=
"props"
:data=
"data"
:item-size=
"66"
:titles=
"['选择门店', '已选门店']"
filterable
filter-placeholder=
"请输入门店名称/code"
@
change=
"chang
e"
>
<el-popover
placement=
"bottom"
v-model=
"departmentVisible"
>
<dm-simple-transfer
v-model=
"selected"
:
busy=
"busy"
:canSelectAll=
"canSelectAll"
:props=
"props"
:max=
"max"
:data=
"data"
:bodyH=
"62"
:item-size=
"66"
:titles=
"['选择门店', '已选门店']"
filterable
filter-placeholder=
"请输入门店名称/code"
@
change=
"change"
@
loadMore=
"loadMor
e"
>
<div
slot-scope=
"
{ option }">
<p>
{{
option
.
storeName
}}
</p>
<p
style=
"font-size: 12px;line-height: 1
8
px"
>
{{
option
.
storeCode
}}
</p>
<p
v-
show
=
"option.isOver == 1"
class=
"isOver"
>
所有导购今日添加已到上限
</p>
<p
style=
"font-size: 12px;line-height: 1
4
px"
>
{{
option
.
storeCode
}}
</p>
<p
v-
if
=
"option.isOver == 1"
class=
"isOver"
>
所有导购今日添加已到上限
</p>
</div>
</dm-simple-transfer>
<div
class=
"show-select-num cursor-pointer w-250"
slot=
"reference"
>
...
...
@@ -26,6 +26,18 @@ export default {
data
:
{
type
:
Array
,
default
:
()
=>
[]
},
max
:
{
type
:
Number
,
default
:
999999
},
busy
:
{
type
:
Boolean
,
default
:
false
},
canSelectAll
:
{
type
:
Boolean
,
default
:
false
}
},
data
()
{
...
...
@@ -34,7 +46,7 @@ export default {
props
:
{
key
:
'storeId'
,
label
:
'storeName'
,
isOver
:
'isOver
'
disabledProp
:
'disabled
'
}
};
},
...
...
@@ -43,15 +55,21 @@ export default {
console
.
log
(
val
);
this
.
$emit
(
'change'
,
val
);
},
renderContent
(
h
,
{
isOver
,
storeCode
,
storeId
,
storeName
})
{
console
.
log
(
isOver
,
storeCode
,
storeId
,
storeName
);
return
h
(
'p'
,
[
h
(
'p'
,
storeName
),
h
(
'p'
,
isOver
)]);
loadMore
(
side
)
{
if
(
side
==
'left'
)
{
// this.$emit('update:busy', true);
console
.
log
(
'loadMore'
);
this
.
$emit
(
'loadMore'
);
}
}
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"less"
scoped
>
/
deep
/
.dm-transfer-panel
.transfer-panel-body
{
height
:
calc
(
100%
-
58px
);
}
.show-select-num
{
position
:
relative
;
display
:
inline-block
;
...
...
@@ -78,6 +96,7 @@ export default {
}
}
}
.isOver
{
font-size
:
12px
;
color
:
#fa8c16
;
...
...
src/views/salesleads/actCodeManage/attractFlowLink/detail.vue
View file @
5780fb08
...
...
@@ -72,7 +72,7 @@
<div
class=
"level3-2"
v-if=
"form.customRuleJson.open"
>
<div
class=
"level3-2-content"
v-if=
"form.customRuleJson.store_type == 1"
>
<el-form-item
label=
"选择门店"
label-width=
"92px"
prop=
"storeList"
>
<selectShop
@
change=
"handleTransferChange"
:data=
"storeData"
:
selected=
"form.storeList
"
/>
<selectShop
@
change=
"handleTransferChange"
:data=
"storeData"
:
max=
"20"
:selected=
"form.storeList"
:canSelectAll=
"false
"
/>
</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.dy"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.dz, form.customRuleJson.store.dy) && form.customRuleJson.store.dy"
>
导购
</el-checkbox>
...
...
@@ -85,7 +85,7 @@
</div>
<p
class=
"content-tips m-b-10"
>
客户拒绝授权当前定位信息,可在下方指定的门店范围中(最多20家)自主选择要添加的门店好友
</p>
<el-form-item
label=
"选择门店"
label-width=
"92px"
prop=
"storeList"
>
<selectShop
@
change=
"handleTransferChange"
:data=
"storeData"
:
selected=
"form.storeList
"
/>
<selectShop
@
change=
"handleTransferChange"
:data=
"storeData"
:
max=
"20"
:selected=
"form.storeList"
:canSelectAll=
"false
"
/>
</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.ndy"
:true-label=
"1"
:false-label=
"0"
:disabled=
"disabledProperty(form.customRuleJson.store.ndz, form.customRuleJson.store.ndy) && form.customRuleJson.store.ndy"
>
导购
</el-checkbox>
...
...
@@ -220,7 +220,11 @@ export default {
}
},
wxEnterpriseId
:
sessionStorage
.
getItem
(
'userInfos'
)
?
JSON
.
parse
(
sessionStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
:
''
,
btnLoading
:
false
btnLoading
:
false
,
storePageNum
:
0
,
totalCount
:
1
,
busy
:
false
,
busy2
:
false
};
},
components
:
{
...
...
@@ -242,9 +246,8 @@ export default {
});
if
(
this
.
isEdit
)
{
this
.
getDetail
();
}
else
{
this
.
getStoreList
();
}
this
.
getStoreList
();
},
methods
:
{
...
...
@@ -252,16 +255,22 @@ export default {
this
.
getList
();
},
500
),
getStoreList
()
{
storeListApi
({
pageSize
:
99999
}).
then
(
res
=>
{
const
{
result
}
=
res
.
data
.
result
;
this
.
storeData
=
result
||
[];
if
(
this
.
form
.
storeList
&&
this
.
form
.
storeList
.
length
)
{
this
.
storeData
.
map
(
el
=>
{
el
.
checked
=
this
.
form
.
storeList
.
some
(
item
=>
item
.
storeId
==
el
.
storeId
);
return
el
;
});
}
});
storeListApi
({
pageSize
:
999999
})
.
then
(
res
=>
{
const
{
result
,
totalCount
}
=
res
.
data
.
result
;
this
.
storeData
=
this
.
storeData
.
concat
(
result
||
[]);
this
.
totalCount
=
totalCount
;
this
.
busy
=
false
;
// if (this.form.storeList && this.form.storeList.length) {
// this.storeData.map(el => {
// el.checked = this.form.storeList.some(item => item.storeId == el.storeId);
// return el;
// });
// }
})
.
finally
(
_
=>
{
this
.
busy
=
false
;
});
},
getDetail
()
{
this
.
loading
=
true
;
...
...
@@ -270,16 +279,15 @@ export default {
const
{
result
}
=
res
.
data
;
if
(
result
)
{
const
{
link
,
page
}
=
result
;
link
.
customRuleJson
=
JSON
.
parse
(
link
.
customRuleJson
);
link
.
storeRuleJson
=
JSON
.
parse
(
link
.
storeRuleJson
);
link
.
storeList
=
link
.
storeList
?
link
.
storeList
:
[];
this
.
form
=
link
;
this
.
form
.
storeList
.
map
(
item
=>
(
item
.
checked
=
true
));
if
(
!
this
.
form
.
welcomeId
)
{
this
.
welcomeType
=
2
;
}
this
.
landingForm
=
page
;
this
.
getStoreList
();
}
})
.
finally
(
_
=>
{
...
...
@@ -301,11 +309,16 @@ export default {
this
.
form
.
memberLabelId
=
''
;
},
handleTransferChange
(
val
)
{
console
.
log
(
val
);
this
.
form
.
storeList
=
val
;
this
.
$refs
.
form
.
validateField
(
'storeList'
);
},
// loadMore() {
// if (this.storeData.length
<
this
.
totalCount
)
{
// this.busy = false;
// this.storePageNum++;
// this.getStoreList();
// }
// },
getList
()
{
this
.
landingLoading
=
true
;
guidePageList
(
this
.
landingPage
)
...
...
@@ -313,7 +326,6 @@ export default {
const
{
result
,
totalCount
}
=
res
.
data
.
result
;
if
(
result
)
{
this
.
total
=
totalCount
;
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