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
66038271
Commit
66038271
authored
Nov 22, 2021
by
crushh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update: 群发导出
parent
c6dce127
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
167 additions
and
24 deletions
+167
-24
taskView.vue
src/components/app/taskView.vue
+0
-1
newCard.vue
src/views/apps/card/newCard.vue
+7
-7
myCustomerList.vue
src/views/apps/customerApp/myCustomerList.vue
+0
-1
material.vue
src/views/enterprise/material.vue
+1
-1
grStoreDetail.vue
src/views/salesleads/groupSend/grStoreDetail.vue
+53
-3
grStoreList.vue
src/views/salesleads/groupSend/grStoreList.vue
+52
-3
grTaskList.vue
src/views/salesleads/groupSend/grTaskList.vue
+49
-3
taskDetail.vue
src/views/salesleads/trafficTask/taskDetail.vue
+5
-3
taskRecord.vue
src/views/salesleads/trafficTask/taskRecord.vue
+0
-1
taskViewDetail.vue
src/views/salesleads/trafficTask/taskViewDetail.vue
+0
-1
No files found.
src/components/app/taskView.vue
View file @
66038271
...
@@ -391,7 +391,6 @@ export default {
...
@@ -391,7 +391,6 @@ export default {
if
(
resData
.
errorCode
==
1
)
{
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
val
==
1
)
{
if
(
val
==
1
)
{
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
...
...
src/views/apps/card/newCard.vue
View file @
66038271
...
@@ -18,15 +18,15 @@
...
@@ -18,15 +18,15 @@
</div>
</div>
<div
v-else
class=
"card-add-btn text-center cursor-pointer"
@
click=
"showCard"
><span
class=
"el-icon-plus font-12 color-909399"
></span><span
class=
"font-14 color-909399 p-l-8"
>
添加卡券
</span></div>
<div
v-else
class=
"card-add-btn text-center cursor-pointer"
@
click=
"showCard"
><span
class=
"el-icon-plus font-12 color-909399"
></span><span
class=
"font-14 color-909399 p-l-8"
>
添加卡券
</span></div>
</el-form-item>
</el-form-item>
<
!--
<
el-form-item>
<el-form-item>
<span
slot=
"label"
>
<span
slot=
"label"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"此领取次数表示导购将该卡券发送给顾客后可领取的总次数,顾客可将该卡券转发给他人,但领取次数受此控制"
placement=
"top-start"
>
<span
style=
"cursor: pointer;padding-bottom: 2px; border-bottom: 1px dashed #2F54EB;"
>
领取次数
</span></el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"此领取次数表示导购将该卡券发送给顾客后可领取的总次数,顾客可将该卡券转发给他人,但领取次数受此控制"
placement=
"top-start"
>
<span
style=
"cursor: pointer;padding-bottom: 2px; border-bottom: 1px dashed #2F54EB;"
>
领取次数
</span></el-tooltip>
</span>
</span>
<el-radio-group
v-model=
"formData.receiveTime"
>
<el-radio-group
v-model=
"formData.receiveTime
s
"
>
<el-radio
:label=
"0"
>
固定1次
</el-radio>
<el-radio
:label=
"0"
>
固定1次
</el-radio>
<el-radio
:label=
"1"
>
不限次数
</el-radio>
<el-radio
:label=
"1"
>
不限次数
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
-->
</el-form-item>
<div
class=
"el-form-item el-form-item--large"
>
<div
class=
"el-form-item el-form-item--large"
>
<label
for=
"name"
class=
"el-form-item__label"
style=
"width: 120px; cursor: pointer;"
>
<label
for=
"name"
class=
"el-form-item__label"
style=
"width: 120px; cursor: pointer;"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"卡券的发送范围设置"
placement=
"top-start"
>
<span
style=
"cursor: pointer;padding-bottom: 2px; border-bottom: 1px dashed #2F54EB;"
>
选择发送范围
</span></el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"卡券的发送范围设置"
placement=
"top-start"
>
<span
style=
"cursor: pointer;padding-bottom: 2px; border-bottom: 1px dashed #2F54EB;"
>
选择发送范围
</span></el-tooltip>
...
@@ -152,7 +152,7 @@ export default {
...
@@ -152,7 +152,7 @@ export default {
selectList
:
[],
selectList
:
[],
eachSendTimes
:
3
,
eachSendTimes
:
3
,
sendType
:
'0'
,
sendType
:
'0'
,
// receiveTime
: 0,
receiveTimes
:
0
,
totalSendTimes
:
0
totalSendTimes
:
0
},
},
rules
:
{
rules
:
{
...
@@ -252,7 +252,7 @@ export default {
...
@@ -252,7 +252,7 @@ export default {
coupCardId
:
that
.
formData
.
coupCardId
,
coupCardId
:
that
.
formData
.
coupCardId
,
sendRange
:
that
.
formData
.
sendRange
,
sendRange
:
that
.
formData
.
sendRange
,
selectList
:
selectList
,
selectList
:
selectList
,
// receiveTime: this.formData.receiveTime
,
receiveTimes
:
this
.
formData
.
receiveTimes
,
// eachSendTimes: that.formData.eachSendTimes || '0',
// eachSendTimes: that.formData.eachSendTimes || '0',
// sendType: that.formData.sendType,
// sendType: that.formData.sendType,
totalSendTimes
:
that
.
formData
.
totalSendTimes
,
totalSendTimes
:
that
.
formData
.
totalSendTimes
,
...
@@ -361,8 +361,8 @@ export default {
...
@@ -361,8 +361,8 @@ export default {
selectList
:
resData
.
result
.
detail
.
sendRange
!=
0
?
(
resData
.
result
.
detail
.
sendRange
==
2
?
resData
.
result
.
list
.
map
(
item
=>
item
.
id
)
:
resData
.
result
.
list
)
:
[],
selectList
:
resData
.
result
.
detail
.
sendRange
!=
0
?
(
resData
.
result
.
detail
.
sendRange
==
2
?
resData
.
result
.
list
.
map
(
item
=>
item
.
id
)
:
resData
.
result
.
list
)
:
[],
eachSendTimes
:
resData
.
result
.
detail
.
eachSendTimes
,
eachSendTimes
:
resData
.
result
.
detail
.
eachSendTimes
,
sendType
:
String
(
resData
.
result
.
detail
.
sendType
),
sendType
:
String
(
resData
.
result
.
detail
.
sendType
),
totalSendTimes
:
resData
.
result
.
detail
.
totalSendTimes
totalSendTimes
:
resData
.
result
.
detail
.
totalSendTimes
,
// receiveTime: resData.result.detail.receiveTime
receiveTimes
:
resData
.
result
.
detail
.
receiveTimes
// receiveType: String(resData.result.detail.receiveType),
// receiveType: String(resData.result.detail.receiveType),
// totalReceiveTimes: resData.result.detail.totalReceiveTimes
// totalReceiveTimes: resData.result.detail.totalReceiveTimes
};
};
...
...
src/views/apps/customerApp/myCustomerList.vue
View file @
66038271
...
@@ -512,7 +512,6 @@ export default {
...
@@ -512,7 +512,6 @@ export default {
.
then
(
res
=>
{
.
then
(
res
=>
{
let
resData
=
res
.
data
;
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
if
(
resData
.
errorCode
==
1
)
{
this
.
tableRefresh
=
!
this
.
tableRefresh
;
that
.
tableData
=
resData
.
result
.
result
||
[];
that
.
tableData
=
resData
.
result
.
result
||
[];
that
.
total
=
resData
.
result
.
totalCount
;
that
.
total
=
resData
.
result
.
totalCount
;
if
(
val
==
1
)
{
if
(
val
==
1
)
{
...
...
src/views/enterprise/material.vue
View file @
66038271
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
<div
class=
"add-group font-14 color-909399 cursor-pointer line-h-32"
@
click=
"addGroup"
><span
class=
"el-icon-plus"
></span><span
class=
"p-l-5"
>
新建分组
</span></div>
<div
class=
"add-group font-14 color-909399 cursor-pointer line-h-32"
@
click=
"addGroup"
><span
class=
"el-icon-plus"
></span><span
class=
"p-l-5"
>
新建分组
</span></div>
</div>
</div>
<div
class=
"group-body"
>
<div
class=
"group-body"
>
<div
:class=
"['no-group m-t-10 line-h-32 font-14 color-606266 cursor-pointer', currentCategoryId == '-1' ? 'current-group' : '']"
@
click=
"selectNoGroup"
><span
style=
"color: transparent;"
:class=
"['color-c0c4cc font-12 cursor-pointer p-l-10 el-icon-caret-bottom el-icon-caret-right']"
></span>
未
分组
</div>
<div
:class=
"['no-group m-t-10 line-h-32 font-14 color-606266 cursor-pointer', currentCategoryId == '-1' ? 'current-group' : '']"
@
click=
"selectNoGroup"
><span
style=
"color: transparent;"
:class=
"['color-c0c4cc font-12 cursor-pointer p-l-10 el-icon-caret-bottom el-icon-caret-right']"
></span>
全部
分组
</div>
<ul
class=
"group-ul padding-lr-12"
>
<ul
class=
"group-ul padding-lr-12"
>
<template
v-for=
"(item, index) in groupData"
>
<template
v-for=
"(item, index) in groupData"
>
<li
class=
"group-cell"
:key=
"index + 'group'"
>
<li
class=
"group-cell"
:key=
"index + 'group'"
>
...
...
src/views/salesleads/groupSend/grStoreDetail.vue
View file @
66038271
...
@@ -28,7 +28,20 @@
...
@@ -28,7 +28,20 @@
</div>
</div>
</div>
</div>
<div
class=
"m-t-20"
>
<div
class=
"m-t-20"
>
<el-table
v-loading=
"loading"
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%;"
>
<el-table
v-loading=
"loading"
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%;"
:key=
"tableRefresh"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"45"
:class-name=
"selectRadio == 1 ? 'cell-disabled' : 'font-size-zero'"
>
</el-table-column>
<el-table-column
width=
"25"
>
<template
#
header
>
<el-dropdown
style=
"line-height: 10px; padding: 0; margin-left: -15px; transform: translateY(4px); -webkit-transform: translateY(4px);"
placement=
"bottom-start"
>
<span
class=
"el-dropdown-link"
><i
class=
"iconfont icongengduo"
></i>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item>
<el-checkbox
v-model=
"selectRadio"
:true-label=
"0"
:false-label=
"2"
@
change=
"handleCommand"
>
选择当页
</el-checkbox></el-dropdown-item>
<el-dropdown-item>
<el-checkbox
v-model=
"selectRadio"
:true-label=
"1"
:false-label=
"2"
@
change=
"handleCommand"
>
选择全部
</el-checkbox></el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
?
' '
:
' '
}}
</
template
>
</el-table-column>
<el-table-column
label=
"任务标题"
show-overflow-tooltip
min-width=
"120"
>
<el-table-column
label=
"任务标题"
show-overflow-tooltip
min-width=
"120"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
taskTitle
||
'--'
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
taskTitle
||
'--'
}}
</
template
>
</el-table-column>
</el-table-column>
...
@@ -91,6 +104,7 @@ import headDefault from '@/assets/head_default.jpg';
...
@@ -91,6 +104,7 @@ import headDefault from '@/assets/head_default.jpg';
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
{
getRequest
,
postRequest
,
postExcel
}
from
'@/api/api'
;
import
{
getRequest
,
postRequest
,
postExcel
}
from
'@/api/api'
;
import
errMsg
from
'@/common/js/error'
;
import
errMsg
from
'@/common/js/error'
;
import
showMsg
from
'@/common/js/showmsg'
;
import
{
_debounce
}
from
'@/common/js/public'
;
import
{
_debounce
}
from
'@/common/js/public'
;
import
detailPreview
from
'@/components/review/salesleads-detail-preview.vue'
;
import
detailPreview
from
'@/components/review/salesleads-detail-preview.vue'
;
export
default
{
export
default
{
...
@@ -111,6 +125,9 @@ export default {
...
@@ -111,6 +125,9 @@ export default {
},
},
data
()
{
data
()
{
return
{
return
{
selectRadio
:
2
,
// 选择当页/选择全部
tableRefresh
:
false
,
multipleSelection
:
[],
headDefault
,
headDefault
,
bgHeight
:
window
.
screen
.
availHeight
-
298
+
'px'
,
bgHeight
:
window
.
screen
.
availHeight
-
298
+
'px'
,
loading
:
false
,
loading
:
false
,
...
@@ -175,17 +192,48 @@ export default {
...
@@ -175,17 +192,48 @@ export default {
computed
:
{},
computed
:
{},
methods
:
{
methods
:
{
/**
/**
* 表格选择
*/
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
val
.
length
?
''
:
(
this
.
selectRadio
=
2
);
},
/**
* 显示选择本页/全部
*/
handleCommand
(
command
)
{
this
.
selectRadio
=
command
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
command
==
1
||
command
==
0
)
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
});
}
else
if
(
command
==
2
)
{
this
.
$refs
.
multipleTable
.
clearSelection
();
}
},
/**
* 导出
* 导出
*/
*/
exportExcel
(
type
)
{
exportExcel
(
type
)
{
if
(
!
this
.
multipleSelection
.
length
)
{
showMsg
.
showmsg
(
'请选择任务'
,
'warning'
);
return
false
;
}
this
.
loadingBtn
=
true
;
this
.
loadingBtn
=
true
;
let
url
=
'/haoban-task-manage-web/market/clue/export/store-view-task-detail'
;
let
url
=
'/haoban-task-manage-web/market/clue/export/store-view-task-detail'
;
const
{
finishOverStatus
,
taskType
,
pageNum
,
pageSize
}
=
this
.
pageParams
;
let
para
=
{
let
para
=
{
enterpriseId
:
sessionStorage
.
getItem
(
'userInfoBrandId'
),
enterpriseId
:
sessionStorage
.
getItem
(
'userInfoBrandId'
),
dataType
:
1
,
dataType
:
1
,
...
this
.
pageParams
,
finishOverStatus
,
taskType
,
pageNum
,
pageSize
,
startTime
:
this
.
pageParams
.
date
[
0
],
startTime
:
this
.
pageParams
.
date
[
0
],
endTime
:
this
.
pageParams
.
date
[
1
],
endTime
:
this
.
pageParams
.
date
[
1
],
selectType
:
this
.
selectRadio
,
selectIdList
:
this
.
selectRadio
==
1
?
''
:
this
.
multipleSelection
.
map
(
ele
=>
ele
.
taskId
).
join
(
','
),
// 门店分组,数组
storeId
:
this
.
$route
.
params
.
id
storeId
:
this
.
$route
.
params
.
id
};
};
let
fileName
=
this
.
pageParams
.
date
.
length
?
`群发任务-门店视图-任务详情_
${
para
.
startTime
}
至
${
para
.
endTime
}
.xls`
:
`群发任务-门店视图-任务详情.xls`
;
let
fileName
=
this
.
pageParams
.
date
.
length
?
`群发任务-门店视图-任务详情_
${
para
.
startTime
}
至
${
para
.
endTime
}
.xls`
:
`群发任务-门店视图-任务详情.xls`
;
...
@@ -217,11 +265,13 @@ export default {
...
@@ -217,11 +265,13 @@ export default {
// errMsg.errorMsg(resData);
// errMsg.errorMsg(resData);
})
})
.
catch
(
function
(
error
)
{
.
catch
(
function
(
error
)
{
this
.
loadingBtn
=
false
;
this
.
$message
.
error
({
this
.
$message
.
error
({
duration
:
1000
,
duration
:
1000
,
message
:
error
.
message
message
:
error
.
message
});
});
})
.
finally
(()
=>
{
this
.
loadingBtn
=
false
;
});
});
},
},
/**
/**
...
...
src/views/salesleads/groupSend/grStoreList.vue
View file @
66038271
...
@@ -31,7 +31,20 @@
...
@@ -31,7 +31,20 @@
</div>
</div>
</div>
</div>
<div
class=
"m-t-20"
>
<div
class=
"m-t-20"
>
<el-table
v-loading=
"loading"
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%;"
>
<el-table
v-loading=
"loading"
:key=
"tableRefresh"
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%;"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"45"
:class-name=
"selectRadio == 1 ? 'cell-disabled' : 'font-size-zero'"
>
</el-table-column>
<el-table-column
width=
"25"
>
<template
#
header
>
<el-dropdown
style=
"line-height: 10px; padding: 0; margin-left: -15px; transform: translateY(4px); -webkit-transform: translateY(4px);"
placement=
"bottom-start"
>
<span
class=
"el-dropdown-link"
><i
class=
"iconfont icongengduo"
></i>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item>
<el-checkbox
v-model=
"selectRadio"
:true-label=
"0"
:false-label=
"2"
@
change=
"handleCommand"
>
选择当页
</el-checkbox></el-dropdown-item>
<el-dropdown-item>
<el-checkbox
v-model=
"selectRadio"
:true-label=
"1"
:false-label=
"2"
@
change=
"handleCommand"
>
选择全部
</el-checkbox></el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
?
' '
:
' '
}}
</
template
>
</el-table-column>
<el-table-column
label=
"门店名称"
show-overflow-tooltip
>
<el-table-column
label=
"门店名称"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
storeName
||
'--'
}}
>
{{
scope
.
row
.
storeName
||
'--'
}}
...
@@ -74,6 +87,7 @@
...
@@ -74,6 +87,7 @@
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
showMsg
from
'@/common/js/showmsg'
;
import
gicSelectGroup
from
'@/components/common/gic-select-group.vue'
;
import
gicSelectGroup
from
'@/components/common/gic-select-group.vue'
;
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
{
getRequest
,
postExcel
}
from
'@/api/api'
;
import
{
getRequest
,
postExcel
}
from
'@/api/api'
;
...
@@ -91,6 +105,9 @@ export default {
...
@@ -91,6 +105,9 @@ export default {
},
},
data
()
{
data
()
{
return
{
return
{
selectRadio
:
2
,
// 选择当页/选择全部
tableRefresh
:
false
,
multipleSelection
:
[],
bgHeight
:
window
.
screen
.
availHeight
-
298
+
'px'
,
bgHeight
:
window
.
screen
.
availHeight
-
298
+
'px'
,
dateStart
:
new
Date
().
getTime
()
-
3600
*
1000
*
24
*
365
,
dateStart
:
new
Date
().
getTime
()
-
3600
*
1000
*
24
*
365
,
dateEnd
:
new
Date
(),
dateEnd
:
new
Date
(),
...
@@ -143,14 +160,44 @@ export default {
...
@@ -143,14 +160,44 @@ export default {
computed
:
{},
computed
:
{},
methods
:
{
methods
:
{
/**
/**
* 表格选择
*/
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
val
.
length
?
''
:
(
this
.
selectRadio
=
2
);
},
/**
* 显示选择本页/全部
*/
handleCommand
(
command
)
{
this
.
selectRadio
=
command
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
command
==
1
||
command
==
0
)
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
});
}
else
if
(
command
==
2
)
{
this
.
$refs
.
multipleTable
.
clearSelection
();
}
},
/**
* 导出
* 导出
*/
*/
exportExcel
()
{
exportExcel
()
{
if
(
!
this
.
multipleSelection
.
length
)
{
showMsg
.
showmsg
(
'请选择门店'
,
'warning'
);
return
false
;
}
this
.
loadingBtn
=
true
;
this
.
loadingBtn
=
true
;
let
url
=
'/haoban-task-manage-web/market/clue/export/store-view'
;
let
url
=
'/haoban-task-manage-web/market/clue/export/store-view'
;
const
{
pageNum
,
pageSize
,
storeName
}
=
this
.
pageParams
;
let
para
=
{
let
para
=
{
...
this
.
pageParams
,
pageNum
,
pageSize
,
storeName
,
taskType
:
2
,
taskType
:
2
,
selectType
:
this
.
selectRadio
,
selectIdList
:
this
.
selectRadio
==
1
?
''
:
this
.
multipleSelection
.
map
(
ele
=>
ele
.
storeId
).
join
(
','
),
// 门店分组,数组
enterpriseId
:
sessionStorage
.
getItem
(
'userInfoBrandId'
),
enterpriseId
:
sessionStorage
.
getItem
(
'userInfoBrandId'
),
qywxEnterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
,
qywxEnterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
,
startTime
:
this
.
pageParams
.
date
[
0
],
startTime
:
this
.
pageParams
.
date
[
0
],
...
@@ -191,11 +238,13 @@ export default {
...
@@ -191,11 +238,13 @@ export default {
// errMsg.errorMsg(resData);
// errMsg.errorMsg(resData);
})
})
.
catch
(
function
(
error
)
{
.
catch
(
function
(
error
)
{
this
.
loadingBtn
=
false
;
this
.
$message
.
error
({
this
.
$message
.
error
({
duration
:
1000
,
duration
:
1000
,
message
:
error
.
message
message
:
error
.
message
});
});
})
.
finally
(()
=>
{
this
.
loadingBtn
=
false
;
});
});
},
},
checkGroupIds
:
function
(
nodes
)
{
checkGroupIds
:
function
(
nodes
)
{
...
...
src/views/salesleads/groupSend/grTaskList.vue
View file @
66038271
...
@@ -39,7 +39,20 @@
...
@@ -39,7 +39,20 @@
</div>
</div>
</div>
</div>
<div
class=
"m-t-20"
>
<div
class=
"m-t-20"
>
<el-table
v-loading=
"loading"
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%;"
>
<el-table
v-loading=
"loading"
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%;"
:key=
"tableRefresh"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"45"
:class-name=
"selectRadio == 1 ? 'cell-disabled' : 'font-size-zero'"
>
</el-table-column>
<el-table-column
width=
"25"
>
<template
#
header
>
<el-dropdown
style=
"line-height: 10px; padding: 0; margin-left: -15px; transform: translateY(4px); -webkit-transform: translateY(4px);"
placement=
"bottom-start"
>
<span
class=
"el-dropdown-link"
><i
class=
"iconfont icongengduo"
></i>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item>
<el-checkbox
v-model=
"selectRadio"
:true-label=
"0"
:false-label=
"2"
@
change=
"handleCommand"
>
选择当页
</el-checkbox></el-dropdown-item>
<el-dropdown-item>
<el-checkbox
v-model=
"selectRadio"
:true-label=
"1"
:false-label=
"2"
@
change=
"handleCommand"
>
选择全部
</el-checkbox></el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
?
' '
:
' '
}}
</
template
>
</el-table-column>
<el-table-column
label=
"计划名称"
show-overflow-tooltip
>
<el-table-column
label=
"计划名称"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ecmPlanName
||
'--'
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ecmPlanName
||
'--'
}}
</
template
>
</el-table-column>
</el-table-column>
...
@@ -79,6 +92,7 @@
...
@@ -79,6 +92,7 @@
<
script
>
<
script
>
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
{
getRequest
,
postExcel
}
from
'@/api/api'
;
import
{
getRequest
,
postExcel
}
from
'@/api/api'
;
import
showMsg
from
'@/common/js/showmsg'
;
import
errMsg
from
'@/common/js/error'
;
import
errMsg
from
'@/common/js/error'
;
import
{
_debounce
}
from
'@/common/js/public'
;
import
{
_debounce
}
from
'@/common/js/public'
;
...
@@ -94,6 +108,9 @@ export default {
...
@@ -94,6 +108,9 @@ export default {
},
},
data
()
{
data
()
{
return
{
return
{
selectRadio
:
2
,
// 选择当页/选择全部
tableRefresh
:
false
,
multipleSelection
:
[],
bgHeight
:
window
.
screen
.
availHeight
-
298
+
'px'
,
bgHeight
:
window
.
screen
.
availHeight
-
298
+
'px'
,
dateStart
:
new
Date
().
getTime
()
-
3600
*
1000
*
24
*
365
,
dateStart
:
new
Date
().
getTime
()
-
3600
*
1000
*
24
*
365
,
dateEnd
:
new
Date
(),
dateEnd
:
new
Date
(),
...
@@ -141,14 +158,41 @@ export default {
...
@@ -141,14 +158,41 @@ export default {
},
},
computed
:
{},
computed
:
{},
methods
:
{
methods
:
{
/**
* 表格选择
*/
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
val
.
length
?
''
:
(
this
.
selectRadio
=
2
);
},
/**
* 显示选择本页/全部
*/
handleCommand
(
command
)
{
this
.
selectRadio
=
command
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
command
==
1
||
command
==
0
)
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
});
}
else
if
(
command
==
2
)
{
this
.
$refs
.
multipleTable
.
clearSelection
();
}
},
exportExcel
(
type
)
{
exportExcel
(
type
)
{
if
(
!
this
.
multipleSelection
.
length
)
{
showMsg
.
showmsg
(
'请选择计划'
,
'warning'
);
return
false
;
}
this
.
loadingBtn
=
true
;
this
.
loadingBtn
=
true
;
let
para
=
{
let
para
=
{
...
this
.
pageParams
,
...
this
.
pageParams
,
enterpriseId
:
sessionStorage
.
getItem
(
'userInfoBrandId'
),
enterpriseId
:
sessionStorage
.
getItem
(
'userInfoBrandId'
),
qywxEnterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
,
qywxEnterpriseId
:
JSON
.
parse
(
localStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
,
startTime
:
this
.
pageParams
.
date
[
0
],
startTime
:
this
.
pageParams
.
date
[
0
],
endTime
:
this
.
pageParams
.
date
[
1
]
endTime
:
this
.
pageParams
.
date
[
1
],
selectType
:
this
.
selectRadio
,
selectIdList
:
this
.
selectRadio
==
1
?
''
:
this
.
multipleSelection
.
map
(
ele
=>
ele
.
ecmPlanId
).
join
(
','
)
};
};
postExcel
(
'/haoban-task-manage-web/market/clue/export/plan-view'
,
para
)
postExcel
(
'/haoban-task-manage-web/market/clue/export/plan-view'
,
para
)
.
then
(
res
=>
{
.
then
(
res
=>
{
...
@@ -173,11 +217,13 @@ export default {
...
@@ -173,11 +217,13 @@ export default {
// errMsg.errorMsg(resData);
// errMsg.errorMsg(resData);
})
})
.
catch
(
function
(
error
)
{
.
catch
(
function
(
error
)
{
this
.
loadingBtn
=
false
;
this
.
$message
.
error
({
this
.
$message
.
error
({
duration
:
1000
,
duration
:
1000
,
message
:
error
.
message
message
:
error
.
message
});
});
})
.
finally
(()
=>
{
this
.
loadingBtn
=
false
;
});
});
},
},
/**
/**
...
...
src/views/salesleads/trafficTask/taskDetail.vue
View file @
66038271
...
@@ -338,7 +338,7 @@ export default {
...
@@ -338,7 +338,7 @@ export default {
methods
:
{
methods
:
{
beforeExportExcel
()
{
beforeExportExcel
()
{
if
(
!
this
.
multipleSelection
.
length
)
{
if
(
!
this
.
multipleSelection
.
length
)
{
showMsg
.
showmsg
(
'请选择
门店
'
,
'warning'
);
showMsg
.
showmsg
(
'请选择
任务
'
,
'warning'
);
return
false
;
return
false
;
}
}
if
(
this
.
enableDownloadCompleteData
==
1
)
{
if
(
this
.
enableDownloadCompleteData
==
1
)
{
...
@@ -371,7 +371,10 @@ export default {
...
@@ -371,7 +371,10 @@ export default {
isOverTime
:
that
.
conditionObj
.
overdue
||
''
,
// 逾期
isOverTime
:
that
.
conditionObj
.
overdue
||
''
,
// 逾期
isCompleted
:
that
.
conditionObj
.
completed
||
''
,
// 完成
isCompleted
:
that
.
conditionObj
.
completed
||
''
,
// 完成
taskIds
:
that
.
selectRadio
==
1
?
''
:
that
.
multipleSelection
.
map
(
ele
=>
ele
.
taskId
).
join
(
','
),
taskIds
:
that
.
selectRadio
==
1
?
''
:
that
.
multipleSelection
.
map
(
ele
=>
ele
.
taskId
).
join
(
','
),
dataType
:
type
dataType
:
type
,
createTimeStart
:
this
.
conditionObj
.
date
[
0
],
createTimeEnd
:
this
.
conditionObj
.
date
[
1
],
title
:
this
.
conditionObj
.
title
};
};
postExcel
(
'/haoban-app-tel-task-three-web/task/export-store-view-clerk-list'
,
para
)
postExcel
(
'/haoban-app-tel-task-three-web/task/export-store-view-clerk-list'
,
para
)
.
then
(
res
=>
{
.
then
(
res
=>
{
...
@@ -654,7 +657,6 @@ export default {
...
@@ -654,7 +657,6 @@ export default {
}
}
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
val
==
1
)
{
if
(
val
==
1
)
{
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
...
...
src/views/salesleads/trafficTask/taskRecord.vue
View file @
66038271
...
@@ -399,7 +399,6 @@ export default {
...
@@ -399,7 +399,6 @@ export default {
if
(
resData
.
errorCode
==
1
)
{
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
val
==
1
)
{
if
(
val
==
1
)
{
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
...
...
src/views/salesleads/trafficTask/taskViewDetail.vue
View file @
66038271
...
@@ -462,7 +462,6 @@ export default {
...
@@ -462,7 +462,6 @@ export default {
if
(
resData
.
errorCode
==
1
)
{
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
this
.
tableRefresh
=
!
this
.
tableRefresh
;
if
(
val
==
1
)
{
if
(
val
==
1
)
{
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
this
.
$refs
.
multipleTable
.
toggleAllSelection
();
...
...
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