Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
CRM
Project
Project
Details
Activity
Releases
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
华国豪
CRM
Commits
0a33b2e9
Commit
0a33b2e9
authored
Apr 09, 2020
by
黄媛媛
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
15022a62
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1641 additions
and
7 deletions
+1641
-7
customerInfoBox.vue
src/components/assembly/customerInfoBox.vue
+7
-2
addContacts.vue
src/components/dialogModel/addContacts.vue
+2
-1
festival.vue
src/components/sellevent/festival.vue
+2
-2
index.vue
src/components/sellevent/index.vue
+2
-2
newline.vue
src/components/sellevent/newline.vue
+803
-0
newseries.vue
src/components/sellevent/newseries.vue
+806
-0
router.js
src/router.js
+18
-0
index.vue
src/views/index.vue
+1
-0
No files found.
src/components/assembly/customerInfoBox.vue
View file @
0a33b2e9
...
...
@@ -69,9 +69,9 @@
<p>
{{
detailsData
.
CustomerName
}}
</p>
</div>
<div
class=
"right"
>
<el-button
class=
"crm-btn query-btn"
@
click=
"editCust"
v-if=
"detailsData.IsRead === 0"
>
编辑
</el-button>
<el-button
class=
"crm-btn query-btn"
@
click=
"editCust"
v-if=
"detailsData.IsRead === 0
&& transferState
"
>
编辑
</el-button>
<!--
<el-button
class=
"crm-btn easy-btn iconfont iconwancheng"
v-if=
"detailsData.IsRead === 0"
>
更改成交状态
</el-button>
-->
<el-dropdown
@
command=
"handleCommand"
style=
"top: 1px;"
v-if=
"detailsData.IsRead === 0"
>
<el-dropdown
@
command=
"handleCommand"
style=
"top: 1px;"
v-if=
"detailsData.IsRead === 0
&& transferState
"
>
<el-button
class=
"crm-btn crm-btn-more easy-btn margin-right0"
>
<i
class=
"iconfont icongengduo"
></i>
</el-button>
...
...
@@ -169,6 +169,10 @@ export default {
CustomerId
:
{
type
:
Number
,
default
:
0
},
transferState
:
{
type
:
Boolean
,
default
:
true
}
},
data
()
{
...
...
@@ -193,6 +197,7 @@ export default {
this
.
MsgBus
.
$on
(
'RefreshInfoBox'
,
function
()
{
$this
.
init
()
})
console
.
log
(
"transferState"
,
this
.
transferState
)
},
methods
:
{
init
(){
...
...
src/components/dialogModel/addContacts.vue
View file @
0a33b2e9
...
...
@@ -173,7 +173,8 @@ export default {
this
.
MsgBus
.
$emit
(
'closeaddContacts'
)
},
addData
(){
this
.
form
.
CustomerId
=
this
.
ID
// this.form.CustomerId = this.ID
this
.
form
.
InfoID
=
this
.
ID
this
.
apipost
(
'/api/Customer/CreateMyCustomerContact'
,
this
.
form
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
'操作成功'
)
...
...
src/components/sellevent/festival.vue
View file @
0a33b2e9
...
...
@@ -17,7 +17,7 @@
<el-button
slot=
"append"
icon=
"el-icon-search"
@
click=
"getList"
></el-button>
</el-input>
</div>
-->
<el-select
v-model=
"msg.Type"
placeholder=
"请选择"
>
<el-select
v-model=
"msg.Type"
placeholder=
"请选择"
@
change=
"changeType"
>
<el-option
v-for=
"item in options"
:key=
"item.value"
...
...
@@ -501,7 +501,7 @@ export default {
this
.
MsgBus
.
$off
(
'editScene'
);
},
methods
:
{
change
Wher
e
(
item
){
change
Typ
e
(
item
){
this
.
msg
.
Type
=
item
this
.
addSendMsg
.
GraduationType
=
item
;
this
.
msg
.
pageIndex
=
1
...
...
src/components/sellevent/index.vue
View file @
0a33b2e9
...
...
@@ -86,7 +86,7 @@
<span>
同行营销事件
</span>
</div>
<div
class=
"events"
>
<div
class=
"event"
>
<div
class=
"event"
@
click=
"goBirth('newlineEvent')"
>
<img
src=
"../../assets/img/event/newline.png"
/>
<div
class=
"content"
>
<div
class=
"ti"
>
新线路推广
</div>
...
...
@@ -95,7 +95,7 @@
</div>
</div>
</div>
<div
class=
"event"
>
<div
class=
"event"
@
click=
"goBirth('newseriesEvent')"
>
<img
src=
"../../assets/img/event/newteam.png"
/>
<div
class=
"content"
>
<div
class=
"ti"
>
新系列推广
</div>
...
...
src/components/sellevent/newline.vue
0 → 100644
View file @
0a33b2e9
<
style
>
@import
'../../assets/css/customerManage.css'
;
.el-table__fixed-body-wrapper
table
{
padding-bottom
:
8px
!important
;
}
.el-table__fixed-body-wrapper
{
overflow
:
auto
;
}
.newline
.imgCol
.imgItem
{
width
:
100px
;
height
:
100px
;
margin-right
:
10px
;
margin-bottom
:
10px
;
display
:
inline-block
;
}
.newline
.imgCol
.imgItem
img
{
width
:
100%
;
max-height
:
100%
;
}
.newline
.labelImg
{
position
:
relative
;
width
:
100px
;
height
:
100px
;
top
:
15px
;
}
.newline
.labelImg
img
{
width
:
100%
;
height
:
100%
;
}
.newline
.labelImg
:hover
.hoverDiv
{
display
:
block
;
cursor
:
pointer
;
}
.newline
.hoverDiv
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
background
:
rgba
(
0
,
0
,
0
,
0.5
);
text-align
:
center
;
display
:
none
;
}
.newline
.hoverDiv
span
{
color
:
#fff
;
font-size
:
30px
;
position
:
relative
;
top
:
30px
;
}
.newline
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
background-color
:
rgba
(
13
,
36
,
129
,
1
);
}
</
style
>
<
template
>
<div
class=
"newline customerManage"
>
<div
class=
"tools"
>
<h1>
新系列推广客户
</h1>
<!--
<div
style=
"width: 340px;"
>
<el-input
placeholder=
"请输入直客名称/手机号"
v-model=
"msg.GusetName"
class=
"input-with-select"
>
<el-button
slot=
"append"
icon=
"el-icon-search"
@
click=
"getList"
></el-button>
</el-input>
</div>
-->
<div
class=
"rightmenu"
>
<!--
<el-button
class=
"crm-btn query-btn"
@
click=
"getList"
>
查询
</el-button>
-->
<el-button
icon=
"el-icon-present"
class=
"crm-btn org-btn"
@
click=
"addSendMsg.isAll=true;addSendMsg.sendObj='所有客户',transferVisiblezf=true"
>
发送新系列推广祝福涵
</el-button>
<!--
<el-dropdown>
<el-button
class=
"crm-btn crm-btn-more easy-btn margin-right0"
>
<i
class=
"iconfont icongengduo"
></i>
</el-button>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item><i
class=
"iconfont icondaoru"
></i>
导入
</el-dropdown-item>
<el-dropdown-item><i
class=
"iconfont icondaochu"
></i>
导出
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
-->
</div>
</div>
<div
class=
"query-box"
:style=
"
{'padding-bottom': sceneList.length > 0 ? '0px' : '10px'}">
<el-row
v-if=
"!multipleSelection.length"
:gutter=
"30"
>
<!--
<el-col
:span=
"4"
>
<span
class=
"font-size-12"
style=
"padding-right: 10px"
>
场景
</span>
<el-popover
placement=
"bottom"
width=
"180"
popper-class=
"popover-class"
v-model=
"visible"
trigger=
"click"
>
<div
data-v-16d669bb=
""
class=
"scene-container"
>
<div
class=
"scene-list"
>
<div
class=
"scene-list-item"
:class=
"
{'scene-list-item-select': sceneID === item.ID}" v-for="(item, index) in SceneEmployeeList" :key="index" @click="changeWhere(item)">
{{
item
.
SceneName
}}
</div>
</div>
<div
class=
"handle-interval"
>
<div
class=
"vux-flexbox handle-button vux-flex-row"
@
click=
"MsgBus.$emit('sceneBoxShow', 5, 1)"
>
<i
class=
"el-icon-circle-plus-outline handle-button-icon"
></i>
<div
class=
"handle-button-name"
>
新建场景
</div></div>
<div
class=
"vux-flexbox handle-button vux-flex-row"
@
click=
"MsgBus.$emit('sceneEditBoxShow', 5, SceneEmployeeList)"
>
<i
class=
"el-icon-setting handle-button-icon"
></i>
<div
class=
"handle-button-name"
>
管理
</div>
</div>
</div>
</div>
<el-select
size=
"mini"
popper-class=
"select-no"
slot=
"reference"
v-model=
"msg.ID"
placeholder=
"请选择"
>
<el-option
v-for=
"item in SceneEmployeeList"
:key=
"item.ID"
:label=
"item.SceneName"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-popover>
</el-col>
-->
<!--
<el-col
:span=
"10"
>
<span
class=
"font-size-12"
style=
"padding-right: 10px"
>
距离生日天数
</span>
<el-select
size=
"mini"
v-model=
"t"
placeholder=
"请选择"
@
change=
"changeBirthday"
>
<el-option
label=
"今日生日"
value=
"0"
></el-option>
<el-option
label=
"明日生日"
value=
"1"
></el-option>
<el-option
label=
"还有3天生日"
value=
"2"
></el-option>
<el-option
label=
"还有4天生日"
value=
"3"
></el-option>
<el-option
label=
"还有5天生日"
value=
"4"
></el-option>
<el-option
label=
"还有6天生日"
value=
"5"
></el-option>
<el-option
label=
"还有7天生日"
value=
"6"
></el-option>
</el-select>
</el-col>
-->
<!--
<el-col
:span=
"4"
>
<el-button
icon=
"iconfont iconshaixuan"
class=
"crm-btn query-btn crm-btn-mini margin-right0"
@
click=
"MsgBus.$emit('sceneBoxShow', 5)"
>
高级筛选
</el-button>
</el-col>
-->
</el-row>
<div
v-else
class=
"flex-center"
>
<p
class=
"font-size-12"
>
已选
<span
class=
"font-color-link"
>
{{
multipleSelection
.
length
}}
</span>
项
</p>
<div
class=
"selection-box"
>
<el-button
@
click=
"transferVisiblezf=true"
><i
class=
"el-icon-present"
></i>
发送祝福
</el-button>
</div>
</div>
<div
class=
"scene-wrapper"
v-if=
"sceneList.length > 0"
>
<ul
class=
"list"
>
<li
class=
"list-item"
v-for=
"(item, index) in sceneList"
:key=
"index"
>
<span
v-if=
"item.formType !== 'datetime'"
>
{{
item
.
str
}}
{{
item
.
regionStr
}}
“
{{
item
.
nameFC
?
item
.
nameFC
:
item
.
value
}}
”
</span>
<span
v-else
>
{{
item
.
str
}}
“
{{
item
.
start
}}
-
{{
item
.
end
}}
”
</span>
<i
class=
"el-icon-close icon"
@
click=
"deleteScene(index)"
></i>
</li>
</ul>
</div>
</div>
<div
class=
"page-content"
>
<el-table
v-if=
"loading"
v-loading=
"true"
:data=
"[]"
>
<el-table-column
v-for=
"(item, index) in queryType2"
:key=
"index"
:label=
"item.label"
>
</el-table-column>
</el-table>
<el-table
v-if=
"!loading"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%"
:height=
"sceneList.length > 0 ? '600' : '660'"
border
row-class-name=
"font-size-12"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
fixed
type=
"selection"
width=
"40"
></el-table-column>
<el-table-column
fixed
prop=
"CustomerName"
label=
"客户名称"
width=
"120"
show-overflow-tooltip
>
<template
slot-scope=
"scope"
>
<p
@
click=
"openDetails(scope)"
class=
"font-color-link cp"
>
{{
scope
.
row
.
CustomerName
}}
</p>
</
template
>
</el-table-column>
<el-table-column
prop=
"CustomerTypeAlias"
label=
"客户类型"
v-if=
"queryType[20].show"
width=
"120"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CustomerSourceTypeStr"
label=
"客户来源"
width=
"120"
v-if=
"queryType[1].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"Contact"
label=
"联系人"
width=
"120"
v-if=
"queryType[2].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"ContactNumber"
label=
"联系电话"
width=
"120"
sortable
v-if=
"queryType[3].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"Address"
label=
"地址"
width=
"150"
v-if=
"queryType[4].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"BusinessCount"
label=
"商机数"
width=
"80"
v-if=
"queryType[5].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"OrderCount"
label=
"交易订单数"
sortable
width=
"120"
v-if=
"queryType[6].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"GuestCount"
label=
"交客数"
sortable
width=
"100"
v-if=
"queryType[19].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"OrderMoney"
label=
"交易金额"
sortable
width=
"120"
v-if=
"queryType[7].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CouponCount"
label=
"优惠券"
sortable
width=
"80"
v-if=
"queryType[8].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"Client_Balance"
label=
"幸福存折"
width=
"100"
sortable
v-if=
"queryType[9].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CustomerLevelStr"
label=
"客户级别"
width=
"120"
sortable
v-if=
"queryType[10].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CustomerStatus"
label=
"审核状态"
v-if=
"queryType[11].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"RealNameAuthentication"
label=
"实名认证状态"
v-if=
"queryType[12].show"
width=
"120"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.RealNameAuthentication === 1"
class=
"font-color-success"
>
已认证
</p>
<p
v-else
class=
"font-color-warning"
>
未认证
</p>
</
template
>
</el-table-column>
<el-table-column
prop=
"IsAppLogin"
label=
"APP激活状态"
v-if=
"queryType[13].show"
width=
"120"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.IsAppLogin === 0"
class=
"font-color-warning"
>
未激活
</p>
<p
v-else
class=
"font-color-success"
>
已激活
</p>
</
template
>
</el-table-column>
<el-table-column
prop=
"CustomerPublic"
label=
"距进入公海天数"
sortable
v-if=
"queryType[14].show"
width=
"120"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"PersonChargeStr"
label=
"负责人"
width=
"120"
v-if=
"queryType[15].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"LastFollowUpTime"
label=
"近期约访"
sortable
v-if=
"queryType[16].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"UpdateTime"
label=
"更新时间"
sortable
v-if=
"queryType[17].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CreateTimestr"
label=
"创建时间"
sortable
v-if=
"queryType[18].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
width=
"40"
fixed=
"right"
>
<
template
slot=
"header"
slot-scope=
"scope"
>
<el-popover
placement=
"bottom"
width=
"240"
>
<mySelect
:queryType=
"queryType"
@
listenTochildEvent=
"showMessageFromChild"
/>
<i
class=
"el-icon-s-operation cp"
slot=
"reference"
></i>
</el-popover>
</
template
>
</el-table-column>
</el-table>
</div>
<div>
<el-pagination
class=
"Mypagination"
background
@
current-change=
"handleCurrentChange"
:page-sizes=
"[30, 60, 90, 100]"
:page-size=
"msg.pageSize"
layout=
"sizes, prev, pager, next"
@
size-change=
"handleSizeChange"
:total=
"total"
>
</el-pagination>
</div>
<el-drawer
:with-header=
"false"
size=
'70%'
:visible
.
sync=
"drawer"
direction=
"rtl"
:before-close=
"handleClose"
>
<customerInfoBox
:transferState=
"false"
:CustomerId=
"CustomerId"
/>
</el-drawer>
<div
v-if=
"dialogTableVisible"
>
<customerDialogBox
@
getList=
"getList"
:name=
"dialogTableVisibleName"
:CustomerId=
"CustomerId"
/>
</div>
<el-dialog
:visible
.
sync=
"transferVisiblezf"
:close-on-click-modal=
"false"
width=
"850px"
custom-class=
"transfer-box add-box add-box2"
>
<div
class=
"add-tit"
slot=
"title"
>
<p><span></span>
发送新系列推广祝福涵
</p>
<span
icon=
"el-icon-close"
></span>
</div>
<el-form
:model=
"addSendMsg"
ref=
"form"
class=
"MyEditForm"
>
<el-row>
<el-col
:span=
"10"
>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"计划标题"
class=
"label-pad-left"
>
<el-input
v-model=
"addSendMsg.Tittle"
placeholder=
"请输入计划标题,如果不填系统将自动生成"
></el-input>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"发送方式"
class=
"label-pad-left"
>
<el-select
v-model=
"addSendMsg.SendType"
placeholder=
"请选择"
>
<el-option
label=
'同业助手'
value=
'2'
></el-option>
<el-option
label=
'短信'
value=
'1'
></el-option>
</el-select>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"接收人员"
class=
"label-pad-left"
>
<el-input
:readonly=
"true"
v-model=
"addSendMsg.sendObj"
></el-input>
<div
style=
"font-size:12px;color:red;margin-left: 10px; margin-top: 2px;"
>
消息将发送给关联的同行,由同行转发给客人,暂不支持直接转发
</div>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"发送时间"
class=
"label-pad-left"
>
<el-date-picker
type=
"datetime"
v-model=
"addSendMsg.SendTime"
placeholder=
"选择日期时间"
>
</el-date-picker>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"图片"
class=
"label-pad-left"
>
<div
v-show=
"addSendMsg.ImgUrl!=''"
class=
"labelImg"
>
<div
class=
"hoverDiv"
>
<span
@
click=
"DeleteImg"
class=
"iconfont icondelete"
></span>
<span
@
click=
"previewFile(addSendMsg.ImgUrl)"
class=
"iconfont iconchakan"
></span>
</div>
<img
:src=
"addSendMsg.ImgUrl"
alt=
""
>
</div>
</el-form-item>
</div>
</el-col>
<el-col
class=
"imgCol"
:span=
"14"
>
<div
class=
"imgItem"
v-for=
"(item,index) in ImgList"
:key=
"index"
>
<img
@
click=
"chooseImg(item.PictureUrl)"
:src=
"item.PictureUrl"
alt=
""
>
</div>
<div
style=
"text-align:right;margin-top:10px"
>
<el-pagination
background
@
current-change=
"handleCurrentChange2"
layout=
"prev, pager, next"
:page-size=
"imgmsg.pageSize"
:total=
"total2"
>
</el-pagination>
</div>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
class=
"add-box-btn"
@
click=
"transferNew(2)"
>
确 定
</el-button>
<el-button
class=
"add-box-btn add-box-cancel"
@
click=
"transferVisiblezf = false"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
mySelect
from
"../dialogModel/select"
;
// import customerInfoBox from "../guestManagement/customerInfoBox";
import
customerInfoBox
from
"../assembly/customerInfoBox"
;
// import customerDialogBox from "./customerDialogBox";
import
customerDialogBox
from
"../dialogModel/customerDialogBox"
;
export
default
{
components
:
{
mySelect
,
customerInfoBox
,
customerDialogBox
},
data
()
{
return
{
transferMsg
:
{
CustomerIds
:
[],
TransferType
:
1
,
//类型,1-移除,2-转为团员
IsRead
:
0
,
//0-读写,1-只读
EmpId
:
''
,
TransferOther
:
[]
//1-联系人,2-商机,3-合同
},
queryType2
:
[
{
label
:
'客户名称'
,
show
:
true
,
},{
label
:
'客户来源'
,
show
:
true
,
},{
label
:
'联系人'
,
show
:
true
,
},{
label
:
'联系电话'
,
show
:
true
,
},{
label
:
'地址'
,
show
:
true
,
},{
label
:
'商机数'
,
show
:
true
,
},{
label
:
'交易订单数'
,
show
:
true
,
},{
label
:
'交易金额'
,
show
:
true
,
},{
label
:
'优惠券'
,
show
:
true
,
},{
label
:
'幸福存折'
,
show
:
true
,
},{
label
:
'客户级别'
,
show
:
true
,
},{
label
:
'审核状态'
,
show
:
true
,
},{
label
:
'实名认证状态'
,
show
:
true
,
},{
label
:
'APP激活状态'
,
show
:
true
,
},{
label
:
'距进入公海天数'
,
show
:
true
,
},{
label
:
'负责人'
,
show
:
true
,
},{
label
:
'近期约访'
,
show
:
true
,
},{
label
:
'更新时间'
,
show
:
true
,
},{
label
:
'创建时间'
,
show
:
true
,
},{
label
:
'交客数'
,
show
:
true
,
},
{
label
:
'客户类型'
,
show
:
true
,
}
],
queryType
:
[
{
label
:
'客户名称'
,
show
:
true
,
},{
label
:
'客户来源'
,
show
:
true
,
},{
label
:
'联系人'
,
show
:
true
,
},{
label
:
'联系电话'
,
show
:
true
,
},{
label
:
'地址'
,
show
:
true
,
},{
label
:
'商机数'
,
show
:
true
,
},{
label
:
'交易订单数'
,
show
:
true
,
},{
label
:
'交易金额'
,
show
:
true
,
},{
label
:
'优惠券'
,
show
:
true
,
},{
label
:
'幸福存折'
,
show
:
true
,
},{
label
:
'客户级别'
,
show
:
true
,
},{
label
:
'审核状态'
,
show
:
true
,
},{
label
:
'实名认证状态'
,
show
:
true
,
},{
label
:
'APP激活状态'
,
show
:
true
,
},{
label
:
'距进入公海天数'
,
show
:
true
,
},{
label
:
'负责人'
,
show
:
true
,
},{
label
:
'近期约访'
,
show
:
true
,
},{
label
:
'更新时间'
,
show
:
true
,
},{
label
:
'创建时间'
,
show
:
true
,
},{
label
:
'交客数'
,
show
:
true
,
},
{
label
:
'客户类型'
,
show
:
true
,
}
],
CustomerId
:
0
,
CustomerIdStr
:
''
,
transferVisiblezf
:
false
,
mySelectCtrl
:
false
,
drawer
:
false
,
loading
:
true
,
dialogTableVisible
:
false
,
dialogTableVisibleName
:
'新建直客'
,
tableData
:
[],
multipleSelection
:
[],
EmployeeList
:
[],
value
:
''
,
userInfo
:
{},
msg
:
{
GusetName
:
''
,
pageIndex
:
1
,
pageSize
:
30
,
ContactNumber
:
''
,
WhereType
:
-
1
,
OrderBy
:
''
,
ID
:
36
},
total
:
0
,
sceneList
:
[],
SceneEmployeeList
:
[],
sceneID
:
36
,
visible
:
false
,
addSendMsg
:{
Tittle
:
""
,
Type
:
8
,
SendType
:
'2'
,
Details
:
[],
SendTime
:
''
,
isAll
:
false
,
ImgUrl
:
''
,
},
ImgList
:[],
imgmsg
:
{
pageIndex
:
1
,
pageSize
:
16
,
},
total2
:
0
,
};
},
mounted
()
{
this
.
userInfo
=
this
.
getLocalStorage
();
this
.
getList
()
this
.
getImg
();
//this.Employee()
let
$this
=
this
this
.
MsgBus
.
$on
(
'closeCustomerDialogBox'
,
function
(){
$this
.
dialogTableVisible
=
false
})
this
.
GetSceneEmployeeList
()
this
.
MsgBus
.
$on
(
'sceneSave'
,
function
(
msg
){
$this
.
sceneList
=
[...
msg
]
$this
.
GetSceneEmployeeList
()
let
obj
=
{}
msg
.
forEach
(
element
=>
{
obj
[
element
.
name
]
=
element
});
$this
.
msg
.
Data
=
obj
$this
.
getList
()
})
this
.
MsgBus
.
$on
(
'editScene'
,
function
(){
console
.
log
(
1
)
$this
.
GetSceneEmployeeList
()
})
},
beforeDestroy
()
{
this
.
MsgBus
.
$off
(
'sceneSave'
);
this
.
MsgBus
.
$off
(
'editScene'
);
},
methods
:
{
previewFile
(
file
)
{
if
(
file
.
IsPicture
())
{
this
.
MsgBus
.
$emit
(
'showImg'
,
file
)
return
}
window
.
open
(
file
,
"_blank"
);
},
chooseImg
(
PictureUrl
){
this
.
addSendMsg
.
ImgUrl
=
PictureUrl
;
},
DeleteImg
(){
this
.
addSendMsg
.
ImgUrl
=
''
;
},
handleCurrentChange2
(
val
)
{
this
.
imgmsg
.
pageIndex
=
val
;
this
.
getImg
();
},
sendPresent
(){
},
changeWhere
(
item
){
this
.
msg
.
ID
=
item
.
ID
this
.
sceneID
=
item
.
ID
this
.
msg
.
Data
=
item
.
WhereData
?
JSON
.
parse
(
item
.
WhereData
)
:
{}
this
.
msg
.
WhereType
=
item
.
WhereType
this
.
visible
=
false
this
.
getList
()
},
GetSceneEmployeeList
(){
this
.
apipost
(
'/api/Scene/GetSceneEmployeeList'
,
{
LableType
:
5
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
SceneEmployeeList
=
res
.
data
.
data
}
})
},
deleteScene
(
index
){
this
.
sceneList
.
splice
(
index
,
1
)
let
obj
=
{}
this
.
sceneList
.
forEach
(
element
=>
{
obj
[
element
.
name
]
=
element
});
this
.
msg
.
Data
=
obj
this
.
getList
()
},
// 新增
transferNew
(){
this
.
apipost
(
'/api/SellEvent/AddCustomerActivity'
,
this
.
addSendMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
multipleSelection
=
[]
this
.
transferVisiblezf
=
false
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
()
this
.
addSendMsg
=
{
Tittle
:
""
,
Type
:
8
,
SendType
:
'2'
,
Details
:
[],
isAll
:
false
,
ImgUrl
:
''
,
}
}
})
},
showMessageFromChild
(
list
){
this
.
mySelectCtrl
=!
this
.
mySelectCtrl
if
(
list
)
{
this
.
queryType
=
list
this
.
getList
()
}
},
editCust
(){
this
.
dialogTableVisibleName
=
'修改客户'
this
.
dialogTableVisible
=
true
},
openDetails
(
scope
){
this
.
drawer
=
true
this
.
CustomerId
=
scope
.
row
.
CustomerId
this
.
CustomerName
=
scope
.
row
.
CustomerName
},
handleSizeChange
(
val
)
{
this
.
msg
.
pageSize
=
val
this
.
getList
();
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
handleClose
(
done
)
{
done
();
},
getList
:
function
(){
this
.
tableData
=
[]
this
.
loading
=
true
this
.
apipost
(
'/api/sellevent/GetMarketingPageList'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
tableData
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
this
.
loading
=
false
;
}
})
},
getImg
(){
this
.
apipost
(
'/api/sellevent/GetAdvertising'
,
this
.
imgmsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ImgList
=
res
.
data
.
data
.
pageData
;
this
.
total2
=
res
.
data
.
data
.
count
;
console
.
log
(
"this.ImgList"
,
this
.
ImgList
)
}
})
},
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
this
.
addSendMsg
.
isAll
=
false
if
(
val
&&
val
.
length
>
0
){
let
list
=
val
.
map
(
x
=>
{
return
{
GuestName
:
''
,
GuestId
:
0
,
CustomerName
:
x
.
CustomerName
,
CustomerId
:
x
.
CustomerId
,
GuestPhone
:
''
,
SentId
:
x
.
ContactNumber
,
}
})
this
.
addSendMsg
.
Details
=
list
this
.
addSendMsg
.
sendObj
=
val
.
length
==
1
?
val
[
0
].
CustomerName
:
val
[
0
].
CustomerName
+
"等"
}
else
{
this
.
addSendMsg
.
sendObj
=
""
}
}
}
};
</
script
>
src/components/sellevent/newseries.vue
0 → 100644
View file @
0a33b2e9
<
style
>
@import
'../../assets/css/customerManage.css'
;
.el-table__fixed-body-wrapper
table
{
padding-bottom
:
8px
!important
;
}
.el-table__fixed-body-wrapper
{
overflow
:
auto
;
}
.newline
.imgCol
{
padding-left
:
15px
;
box-sizing
:
border-box
;
}
.newline
.imgCol
.imgItem
{
width
:
100px
;
height
:
100px
;
margin-right
:
10px
;
margin-bottom
:
10px
;
display
:
inline-block
;
}
.newline
.imgCol
.imgItem
img
{
width
:
100%
;
max-height
:
100%
;
}
.newline
.labelImg
{
position
:
relative
;
width
:
100px
;
height
:
100px
;
top
:
15px
;
}
.newline
.labelImg
img
{
width
:
100%
;
height
:
100%
;
}
.newline
.labelImg
:hover
.hoverDiv
{
display
:
block
;
cursor
:
pointer
;
}
.newline
.hoverDiv
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
background
:
rgba
(
0
,
0
,
0
,
0.5
);
text-align
:
center
;
display
:
none
;
}
.newline
.hoverDiv
span
{
color
:
#fff
;
font-size
:
30px
;
position
:
relative
;
top
:
30px
;
}
.newline
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
background-color
:
rgba
(
13
,
36
,
129
,
1
);
}
</
style
>
<
template
>
<div
class=
"newline customerManage"
>
<div
class=
"tools"
>
<h1>
新线路推广客户
</h1>
<!--
<div
style=
"width: 340px;"
>
<el-input
placeholder=
"请输入直客名称/手机号"
v-model=
"msg.GusetName"
class=
"input-with-select"
>
<el-button
slot=
"append"
icon=
"el-icon-search"
@
click=
"getList"
></el-button>
</el-input>
</div>
-->
<div
class=
"rightmenu"
>
<!--
<el-button
class=
"crm-btn query-btn"
@
click=
"getList"
>
查询
</el-button>
-->
<el-button
icon=
"el-icon-present"
class=
"crm-btn org-btn"
@
click=
"addSendMsg.isAll=true;addSendMsg.sendObj='所有客户',transferVisiblezf=true"
>
发送新线路推广祝福涵
</el-button>
<!--
<el-dropdown>
<el-button
class=
"crm-btn crm-btn-more easy-btn margin-right0"
>
<i
class=
"iconfont icongengduo"
></i>
</el-button>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item><i
class=
"iconfont icondaoru"
></i>
导入
</el-dropdown-item>
<el-dropdown-item><i
class=
"iconfont icondaochu"
></i>
导出
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
-->
</div>
</div>
<div
class=
"query-box"
:style=
"
{'padding-bottom': sceneList.length > 0 ? '0px' : '10px'}">
<el-row
v-if=
"!multipleSelection.length"
:gutter=
"30"
>
<!--
<el-col
:span=
"4"
>
<span
class=
"font-size-12"
style=
"padding-right: 10px"
>
场景
</span>
<el-popover
placement=
"bottom"
width=
"180"
popper-class=
"popover-class"
v-model=
"visible"
trigger=
"click"
>
<div
data-v-16d669bb=
""
class=
"scene-container"
>
<div
class=
"scene-list"
>
<div
class=
"scene-list-item"
:class=
"
{'scene-list-item-select': sceneID === item.ID}" v-for="(item, index) in SceneEmployeeList" :key="index" @click="changeWhere(item)">
{{
item
.
SceneName
}}
</div>
</div>
<div
class=
"handle-interval"
>
<div
class=
"vux-flexbox handle-button vux-flex-row"
@
click=
"MsgBus.$emit('sceneBoxShow', 5, 1)"
>
<i
class=
"el-icon-circle-plus-outline handle-button-icon"
></i>
<div
class=
"handle-button-name"
>
新建场景
</div></div>
<div
class=
"vux-flexbox handle-button vux-flex-row"
@
click=
"MsgBus.$emit('sceneEditBoxShow', 5, SceneEmployeeList)"
>
<i
class=
"el-icon-setting handle-button-icon"
></i>
<div
class=
"handle-button-name"
>
管理
</div>
</div>
</div>
</div>
<el-select
size=
"mini"
popper-class=
"select-no"
slot=
"reference"
v-model=
"msg.ID"
placeholder=
"请选择"
>
<el-option
v-for=
"item in SceneEmployeeList"
:key=
"item.ID"
:label=
"item.SceneName"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-popover>
</el-col>
-->
<!--
<el-col
:span=
"10"
>
<span
class=
"font-size-12"
style=
"padding-right: 10px"
>
距离生日天数
</span>
<el-select
size=
"mini"
v-model=
"t"
placeholder=
"请选择"
@
change=
"changeBirthday"
>
<el-option
label=
"今日生日"
value=
"0"
></el-option>
<el-option
label=
"明日生日"
value=
"1"
></el-option>
<el-option
label=
"还有3天生日"
value=
"2"
></el-option>
<el-option
label=
"还有4天生日"
value=
"3"
></el-option>
<el-option
label=
"还有5天生日"
value=
"4"
></el-option>
<el-option
label=
"还有6天生日"
value=
"5"
></el-option>
<el-option
label=
"还有7天生日"
value=
"6"
></el-option>
</el-select>
</el-col>
-->
<!--
<el-col
:span=
"4"
>
<el-button
icon=
"iconfont iconshaixuan"
class=
"crm-btn query-btn crm-btn-mini margin-right0"
@
click=
"MsgBus.$emit('sceneBoxShow', 5)"
>
高级筛选
</el-button>
</el-col>
-->
</el-row>
<div
v-else
class=
"flex-center"
>
<p
class=
"font-size-12"
>
已选
<span
class=
"font-color-link"
>
{{
multipleSelection
.
length
}}
</span>
项
</p>
<div
class=
"selection-box"
>
<el-button
@
click=
"transferVisiblezf=true"
><i
class=
"el-icon-present"
></i>
发送祝福
</el-button>
</div>
</div>
<div
class=
"scene-wrapper"
v-if=
"sceneList.length > 0"
>
<ul
class=
"list"
>
<li
class=
"list-item"
v-for=
"(item, index) in sceneList"
:key=
"index"
>
<span
v-if=
"item.formType !== 'datetime'"
>
{{
item
.
str
}}
{{
item
.
regionStr
}}
“
{{
item
.
nameFC
?
item
.
nameFC
:
item
.
value
}}
”
</span>
<span
v-else
>
{{
item
.
str
}}
“
{{
item
.
start
}}
-
{{
item
.
end
}}
”
</span>
<i
class=
"el-icon-close icon"
@
click=
"deleteScene(index)"
></i>
</li>
</ul>
</div>
</div>
<div
class=
"page-content"
>
<el-table
v-if=
"loading"
v-loading=
"true"
:data=
"[]"
>
<el-table-column
v-for=
"(item, index) in queryType2"
:key=
"index"
:label=
"item.label"
>
</el-table-column>
</el-table>
<el-table
v-if=
"!loading"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%"
:height=
"sceneList.length > 0 ? '600' : '660'"
border
row-class-name=
"font-size-12"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
fixed
type=
"selection"
width=
"40"
></el-table-column>
<el-table-column
fixed
prop=
"CustomerName"
label=
"客户名称"
width=
"120"
show-overflow-tooltip
>
<template
slot-scope=
"scope"
>
<p
@
click=
"openDetails(scope)"
class=
"font-color-link cp"
>
{{
scope
.
row
.
CustomerName
}}
</p>
</
template
>
</el-table-column>
<el-table-column
prop=
"CustomerTypeAlias"
label=
"客户类型"
v-if=
"queryType[20].show"
width=
"120"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CustomerSourceTypeStr"
label=
"客户来源"
width=
"120"
v-if=
"queryType[1].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"Contact"
label=
"联系人"
width=
"120"
v-if=
"queryType[2].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"ContactNumber"
label=
"联系电话"
width=
"120"
sortable
v-if=
"queryType[3].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"Address"
label=
"地址"
width=
"150"
v-if=
"queryType[4].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"BusinessCount"
label=
"商机数"
width=
"80"
v-if=
"queryType[5].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"OrderCount"
label=
"交易订单数"
sortable
width=
"120"
v-if=
"queryType[6].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"GuestCount"
label=
"交客数"
sortable
width=
"100"
v-if=
"queryType[19].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"OrderMoney"
label=
"交易金额"
sortable
width=
"120"
v-if=
"queryType[7].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CouponCount"
label=
"优惠券"
sortable
width=
"80"
v-if=
"queryType[8].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"Client_Balance"
label=
"幸福存折"
width=
"100"
sortable
v-if=
"queryType[9].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CustomerLevelStr"
label=
"客户级别"
width=
"120"
sortable
v-if=
"queryType[10].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CustomerStatus"
label=
"审核状态"
v-if=
"queryType[11].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"RealNameAuthentication"
label=
"实名认证状态"
v-if=
"queryType[12].show"
width=
"120"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.RealNameAuthentication === 1"
class=
"font-color-success"
>
已认证
</p>
<p
v-else
class=
"font-color-warning"
>
未认证
</p>
</
template
>
</el-table-column>
<el-table-column
prop=
"IsAppLogin"
label=
"APP激活状态"
v-if=
"queryType[13].show"
width=
"120"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.IsAppLogin === 0"
class=
"font-color-warning"
>
未激活
</p>
<p
v-else
class=
"font-color-success"
>
已激活
</p>
</
template
>
</el-table-column>
<el-table-column
prop=
"CustomerPublic"
label=
"距进入公海天数"
sortable
v-if=
"queryType[14].show"
width=
"120"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"PersonChargeStr"
label=
"负责人"
width=
"120"
v-if=
"queryType[15].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"LastFollowUpTime"
label=
"近期约访"
sortable
v-if=
"queryType[16].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"UpdateTime"
label=
"更新时间"
sortable
v-if=
"queryType[17].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"CreateTimestr"
label=
"创建时间"
sortable
v-if=
"queryType[18].show"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
width=
"40"
fixed=
"right"
>
<
template
slot=
"header"
slot-scope=
"scope"
>
<el-popover
placement=
"bottom"
width=
"240"
>
<mySelect
:queryType=
"queryType"
@
listenTochildEvent=
"showMessageFromChild"
/>
<i
class=
"el-icon-s-operation cp"
slot=
"reference"
></i>
</el-popover>
</
template
>
</el-table-column>
</el-table>
</div>
<div>
<el-pagination
class=
"Mypagination"
background
@
current-change=
"handleCurrentChange"
:page-sizes=
"[30, 60, 90, 100]"
:page-size=
"msg.pageSize"
layout=
"sizes, prev, pager, next"
@
size-change=
"handleSizeChange"
:total=
"total"
>
</el-pagination>
</div>
<el-drawer
:with-header=
"false"
size=
'70%'
:visible
.
sync=
"drawer"
direction=
"rtl"
:before-close=
"handleClose"
>
<customerInfoBox
:transferState=
"false"
:CustomerId=
"CustomerId"
/>
</el-drawer>
<div
v-if=
"dialogTableVisible"
>
<customerDialogBox
@
getList=
"getList"
:name=
"dialogTableVisibleName"
:CustomerId=
"CustomerId"
/>
</div>
<el-dialog
:visible
.
sync=
"transferVisiblezf"
:close-on-click-modal=
"false"
width=
"850px"
custom-class=
"transfer-box add-box add-box2"
>
<div
class=
"add-tit"
slot=
"title"
>
<p><span></span>
发送新线路推广祝福涵
</p>
<span
icon=
"el-icon-close"
></span>
</div>
<el-form
:model=
"addSendMsg"
ref=
"form"
class=
"MyEditForm"
>
<el-row>
<el-col
:span=
"10"
>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"计划标题"
class=
"label-pad-left"
>
<el-input
v-model=
"addSendMsg.Tittle"
placeholder=
"请输入计划标题,如果不填系统将自动生成"
></el-input>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"发送方式"
class=
"label-pad-left"
>
<el-select
v-model=
"addSendMsg.SendType"
placeholder=
"请选择"
>
<el-option
label=
'同业助手'
value=
'2'
></el-option>
<el-option
label=
'短信'
value=
'1'
></el-option>
</el-select>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"接收人员"
class=
"label-pad-left"
>
<el-input
:readonly=
"true"
v-model=
"addSendMsg.sendObj"
></el-input>
<div
style=
"font-size:12px;color:red;margin-left: 10px; margin-top: 2px;"
>
消息将发送给关联的同行,由同行转发给客人,暂不支持直接转发
</div>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"发送时间"
class=
"label-pad-left"
>
<el-date-picker
type=
"datetime"
v-model=
"addSendMsg.SendTime"
placeholder=
"选择日期时间"
>
</el-date-picker>
</el-form-item>
</div>
<div
class=
"MyEditForm-item"
>
<el-form-item
label=
"图片"
class=
"label-pad-left"
>
<div
v-show=
"addSendMsg.ImgUrl!=''"
class=
"labelImg"
>
<div
class=
"hoverDiv"
>
<span
@
click=
"DeleteImg"
class=
"iconfont icondelete"
></span>
<span
@
click=
"previewFile(addSendMsg.ImgUrl)"
class=
"iconfont iconchakan"
></span>
</div>
<img
:src=
"addSendMsg.ImgUrl"
alt=
""
>
</div>
</el-form-item>
</div>
</el-col>
<el-col
class=
"imgCol"
:span=
"14"
>
<div
class=
"imgItem"
v-for=
"(item,index) in ImgList"
:key=
"index"
>
<img
@
click=
"chooseImg(item.PictureUrl)"
:src=
"item.PictureUrl"
alt=
""
>
</div>
<div
style=
"text-align:right;margin-top:10px"
>
<el-pagination
background
@
current-change=
"handleCurrentChange2"
layout=
"prev, pager, next"
:page-size=
"imgmsg.pageSize"
:total=
"total2"
>
</el-pagination>
</div>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
class=
"add-box-btn"
@
click=
"transferNew(2)"
>
确 定
</el-button>
<el-button
class=
"add-box-btn add-box-cancel"
@
click=
"transferVisiblezf = false"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
mySelect
from
"../dialogModel/select"
;
// import customerInfoBox from "../guestManagement/customerInfoBox";
import
customerInfoBox
from
"../assembly/customerInfoBox"
;
// import customerDialogBox from "./customerDialogBox";
import
customerDialogBox
from
"../dialogModel/customerDialogBox"
;
export
default
{
components
:
{
mySelect
,
customerInfoBox
,
customerDialogBox
},
data
()
{
return
{
transferMsg
:
{
CustomerIds
:
[],
TransferType
:
1
,
//类型,1-移除,2-转为团员
IsRead
:
0
,
//0-读写,1-只读
EmpId
:
''
,
TransferOther
:
[]
//1-联系人,2-商机,3-合同
},
queryType2
:
[
{
label
:
'客户名称'
,
show
:
true
,
},{
label
:
'客户来源'
,
show
:
true
,
},{
label
:
'联系人'
,
show
:
true
,
},{
label
:
'联系电话'
,
show
:
true
,
},{
label
:
'地址'
,
show
:
true
,
},{
label
:
'商机数'
,
show
:
true
,
},{
label
:
'交易订单数'
,
show
:
true
,
},{
label
:
'交易金额'
,
show
:
true
,
},{
label
:
'优惠券'
,
show
:
true
,
},{
label
:
'幸福存折'
,
show
:
true
,
},{
label
:
'客户级别'
,
show
:
true
,
},{
label
:
'审核状态'
,
show
:
true
,
},{
label
:
'实名认证状态'
,
show
:
true
,
},{
label
:
'APP激活状态'
,
show
:
true
,
},{
label
:
'距进入公海天数'
,
show
:
true
,
},{
label
:
'负责人'
,
show
:
true
,
},{
label
:
'近期约访'
,
show
:
true
,
},{
label
:
'更新时间'
,
show
:
true
,
},{
label
:
'创建时间'
,
show
:
true
,
},{
label
:
'交客数'
,
show
:
true
,
},
{
label
:
'客户类型'
,
show
:
true
,
}
],
queryType
:
[
{
label
:
'客户名称'
,
show
:
true
,
},{
label
:
'客户来源'
,
show
:
true
,
},{
label
:
'联系人'
,
show
:
true
,
},{
label
:
'联系电话'
,
show
:
true
,
},{
label
:
'地址'
,
show
:
true
,
},{
label
:
'商机数'
,
show
:
true
,
},{
label
:
'交易订单数'
,
show
:
true
,
},{
label
:
'交易金额'
,
show
:
true
,
},{
label
:
'优惠券'
,
show
:
true
,
},{
label
:
'幸福存折'
,
show
:
true
,
},{
label
:
'客户级别'
,
show
:
true
,
},{
label
:
'审核状态'
,
show
:
true
,
},{
label
:
'实名认证状态'
,
show
:
true
,
},{
label
:
'APP激活状态'
,
show
:
true
,
},{
label
:
'距进入公海天数'
,
show
:
true
,
},{
label
:
'负责人'
,
show
:
true
,
},{
label
:
'近期约访'
,
show
:
true
,
},{
label
:
'更新时间'
,
show
:
true
,
},{
label
:
'创建时间'
,
show
:
true
,
},{
label
:
'交客数'
,
show
:
true
,
},
{
label
:
'客户类型'
,
show
:
true
,
}
],
CustomerId
:
0
,
CustomerIdStr
:
''
,
transferVisiblezf
:
false
,
mySelectCtrl
:
false
,
drawer
:
false
,
loading
:
true
,
dialogTableVisible
:
false
,
dialogTableVisibleName
:
'新建直客'
,
tableData
:
[],
multipleSelection
:
[],
EmployeeList
:
[],
value
:
''
,
userInfo
:
{},
msg
:
{
GusetName
:
''
,
pageIndex
:
1
,
pageSize
:
30
,
ContactNumber
:
''
,
WhereType
:
-
1
,
OrderBy
:
''
,
ID
:
36
},
total
:
0
,
sceneList
:
[],
SceneEmployeeList
:
[],
sceneID
:
36
,
visible
:
false
,
addSendMsg
:{
Tittle
:
""
,
Type
:
7
,
SendType
:
'2'
,
Details
:
[],
SendTime
:
''
,
isAll
:
false
,
ImgUrl
:
''
,
},
ImgList
:[],
imgmsg
:
{
pageIndex
:
1
,
pageSize
:
16
,
},
total2
:
0
,
};
},
mounted
()
{
this
.
userInfo
=
this
.
getLocalStorage
();
this
.
getList
()
this
.
getImg
();
//this.Employee()
let
$this
=
this
this
.
MsgBus
.
$on
(
'closeCustomerDialogBox'
,
function
(){
$this
.
dialogTableVisible
=
false
})
this
.
GetSceneEmployeeList
()
this
.
MsgBus
.
$on
(
'sceneSave'
,
function
(
msg
){
$this
.
sceneList
=
[...
msg
]
$this
.
GetSceneEmployeeList
()
let
obj
=
{}
msg
.
forEach
(
element
=>
{
obj
[
element
.
name
]
=
element
});
$this
.
msg
.
Data
=
obj
$this
.
getList
()
})
this
.
MsgBus
.
$on
(
'editScene'
,
function
(){
console
.
log
(
1
)
$this
.
GetSceneEmployeeList
()
})
},
beforeDestroy
()
{
this
.
MsgBus
.
$off
(
'sceneSave'
);
this
.
MsgBus
.
$off
(
'editScene'
);
},
methods
:
{
previewFile
(
file
)
{
if
(
file
.
IsPicture
())
{
this
.
MsgBus
.
$emit
(
'showImg'
,
file
)
return
}
window
.
open
(
file
,
"_blank"
);
},
chooseImg
(
PictureUrl
){
this
.
addSendMsg
.
ImgUrl
=
PictureUrl
;
},
DeleteImg
(){
this
.
addSendMsg
.
ImgUrl
=
''
;
},
handleCurrentChange2
(
val
)
{
this
.
imgmsg
.
pageIndex
=
val
;
this
.
getImg
();
},
sendPresent
(){
},
changeWhere
(
item
){
this
.
msg
.
ID
=
item
.
ID
this
.
sceneID
=
item
.
ID
this
.
msg
.
Data
=
item
.
WhereData
?
JSON
.
parse
(
item
.
WhereData
)
:
{}
this
.
msg
.
WhereType
=
item
.
WhereType
this
.
visible
=
false
this
.
getList
()
},
GetSceneEmployeeList
(){
this
.
apipost
(
'/api/Scene/GetSceneEmployeeList'
,
{
LableType
:
5
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
SceneEmployeeList
=
res
.
data
.
data
}
})
},
deleteScene
(
index
){
this
.
sceneList
.
splice
(
index
,
1
)
let
obj
=
{}
this
.
sceneList
.
forEach
(
element
=>
{
obj
[
element
.
name
]
=
element
});
this
.
msg
.
Data
=
obj
this
.
getList
()
},
// 新增
transferNew
(){
this
.
apipost
(
'/api/SellEvent/AddCustomerActivity'
,
this
.
addSendMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
multipleSelection
=
[]
this
.
transferVisiblezf
=
false
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
()
this
.
addSendMsg
=
{
Tittle
:
""
,
Type
:
7
,
SendType
:
'2'
,
Details
:
[],
isAll
:
false
,
ImgUrl
:
''
,
}
}
})
},
showMessageFromChild
(
list
){
this
.
mySelectCtrl
=!
this
.
mySelectCtrl
if
(
list
)
{
this
.
queryType
=
list
this
.
getList
()
}
},
editCust
(){
this
.
dialogTableVisibleName
=
'修改客户'
this
.
dialogTableVisible
=
true
},
openDetails
(
scope
){
this
.
drawer
=
true
this
.
CustomerId
=
scope
.
row
.
CustomerId
this
.
CustomerName
=
scope
.
row
.
CustomerName
},
handleSizeChange
(
val
)
{
this
.
msg
.
pageSize
=
val
this
.
getList
();
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
handleClose
(
done
)
{
done
();
},
getList
:
function
(){
this
.
tableData
=
[]
this
.
loading
=
true
this
.
apipost
(
'/api/sellevent/GetMarketingPageList'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
tableData
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
this
.
loading
=
false
;
}
})
},
getImg
(){
this
.
apipost
(
'/api/sellevent/GetAdvertising'
,
this
.
imgmsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ImgList
=
res
.
data
.
data
.
pageData
;
this
.
total2
=
res
.
data
.
data
.
count
;
}
})
},
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
this
.
addSendMsg
.
isAll
=
false
if
(
val
&&
val
.
length
>
0
){
let
list
=
val
.
map
(
x
=>
{
return
{
GuestName
:
''
,
GuestId
:
0
,
CustomerName
:
x
.
CustomerName
,
CustomerId
:
x
.
CustomerId
,
GuestPhone
:
''
,
SentId
:
x
.
ContactNumber
,
}
})
this
.
addSendMsg
.
Details
=
list
this
.
addSendMsg
.
sendObj
=
val
.
length
==
1
?
val
[
0
].
CustomerName
:
val
[
0
].
CustomerName
+
"等"
}
else
{
this
.
addSendMsg
.
sendObj
=
""
}
}
}
};
</
script
>
src/router.js
View file @
0a33b2e9
...
...
@@ -234,6 +234,24 @@ export default new Router({
title
:
"下次出行事件"
}
},
{
path
:
"/newlineEvent"
,
name
:
"newlineEvent"
,
component
:
()
=>
import
(
'./components/sellevent/newline.vue'
),
meta
:
{
title
:
"新线路推广事件"
}
},
{
path
:
"/newseriesEvent"
,
name
:
"newseriesEvent"
,
component
:
()
=>
import
(
'./components/sellevent/newseries.vue'
),
meta
:
{
title
:
"新系列推广事件"
}
},
{
path
:
"/gaoxiao"
,
name
:
"gaoxiao"
,
...
...
src/views/index.vue
View file @
0a33b2e9
...
...
@@ -441,6 +441,7 @@ export default {
this
.
dialogClue
=
true
},
editCust
(){
console
.
log
(
"1111"
);
this
.
dialogTableVisibleName
=
'修改客户'
this
.
dialogCustomerVisible
=
true
},
...
...
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