Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
memberTag-web
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
memberTag
memberTag-web
Commits
ee59066c
Commit
ee59066c
authored
Dec 01, 2020
by
黑潮
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update: 分组操作日志页面
parent
b07e4f30
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
207 additions
and
5 deletions
+207
-5
index.js
src/router/index.js
+8
-0
formatTime.js
src/utils/formatTime.js
+1
-1
member-group-log.vue
src/view/memberGroup/member-group-log.vue
+186
-0
memberGroupDetail.vue
src/view/memberGroup/memberGroupDetail.vue
+3
-2
memberGroupList.vue
src/view/memberGroup/memberGroupList.vue
+6
-0
memberLevelDetail.vue
src/view/memberGroup/memberLevelDetail.vue
+3
-2
No files found.
src/router/index.js
View file @
ee59066c
...
@@ -138,6 +138,14 @@ export const constantRouterMap = [
...
@@ -138,6 +138,14 @@ export const constantRouterMap = [
meta
:
{
meta
:
{
title
:
'会员标签-编辑分组'
title
:
'会员标签-编辑分组'
}
}
},
{
path
:
'/memberGroupLog'
,
component
:
_import
(
'memberGroup'
,
'member-group-log'
),
name
:
'分组操作日志'
,
meta
:
{
title
:
'分组操作日志'
}
}
}
]
]
},
},
...
...
src/utils/formatTime.js
View file @
ee59066c
...
@@ -12,7 +12,7 @@ export function dateformat(time, fmt) {
...
@@ -12,7 +12,7 @@ export function dateformat(time, fmt) {
if
(
/
(
y+
)
/
.
test
(
fmt
))
{
if
(
/
(
y+
)
/
.
test
(
fmt
))
{
fmt
=
fmt
.
replace
(
RegExp
.
$1
,
(
time
.
getFullYear
()
+
""
).
substr
(
4
-
RegExp
.
$1
.
length
));
fmt
=
fmt
.
replace
(
RegExp
.
$1
,
(
time
.
getFullYear
()
+
""
).
substr
(
4
-
RegExp
.
$1
.
length
));
}
}
for
(
var
k
in
o
)
{
for
(
let
k
in
o
)
{
if
(
new
RegExp
(
"("
+
k
+
")"
).
test
(
fmt
))
{
if
(
new
RegExp
(
"("
+
k
+
")"
).
test
(
fmt
))
{
fmt
=
fmt
.
replace
(
RegExp
.
$1
,
(
RegExp
.
$1
.
length
==
1
)
?
(
o
[
k
])
:
((
"00"
+
o
[
k
]).
substr
((
""
+
o
[
k
]).
length
)));
fmt
=
fmt
.
replace
(
RegExp
.
$1
,
(
RegExp
.
$1
.
length
==
1
)
?
(
o
[
k
])
:
((
"00"
+
o
[
k
]).
substr
((
""
+
o
[
k
]).
length
)));
}
}
...
...
src/view/memberGroup/member-group-log.vue
0 → 100644
View file @
ee59066c
<
template
>
<div
class=
"member-group-log"
>
<nav-crumb
:navpath=
"navpath"
></nav-crumb>
<div
class=
"member-group-log__content"
>
<div
class=
"font-0"
>
<el-input
class=
"w-220 m-r-8"
placeholder=
"请输入内容"
prefix-icon=
"el-icon-search"
v-model=
"searchKey"
clearable
@
clear=
"clearSearch"
@
keyup
.
enter
.
native=
"onSearch"
/>
<el-date-picker
class=
"date-picker"
value-format=
"yyyy-MM-dd HH:mm:ss"
v-model=
"dateValue"
type=
"datetimerange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
:default-time=
"['00:00:00', '23:59:59']"
@
change=
"selectDate"
></el-date-picker>
</div>
<div
class=
"common-wrap__table m-t-20"
>
<el-table
v-loading=
"loading"
:data=
"tableData"
>
<el-table-column
label=
"日志ID"
prop=
"logId"
></el-table-column>
<el-table-column
label=
"分组名称"
prop=
"operateObject"
show-overflow-tooltip
></el-table-column>
<el-table-column
label=
"操作内容"
prop=
"content"
show-overflow-tooltip
></el-table-column>
<el-table-column
:width=
"200"
label=
"操作时间"
>
<template
slot-scope=
"scope"
>
<p
class=
"h-18"
>
{{
scope
.
row
.
createTime
|
formatTimeYMD
}}
</p>
<p
class=
"h-18"
>
{{
scope
.
row
.
createTime
|
formatTimeHMS
}}
</p>
</
template
>
</el-table-column>
<el-table-column
:width=
"200"
label=
"操作人"
>
<
template
slot-scope=
"scope"
>
<p
class=
"h-18"
>
{{
getName
(
scope
.
row
.
optUserName
)
}}
</p>
<p
class=
"h-18"
>
{{
getPhone
(
scope
.
row
.
optUserName
)
}}
</p>
</
template
>
</el-table-column>
</el-table>
</div>
<div
class=
"block common-wrap__page text-right"
v-if=
"tableData.length !== 0"
>
<dm-pagination
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"currentPage"
:page-sizes=
"[10, 20, 30, 40]"
:page-size=
"pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"total"
>
</dm-pagination>
</div>
</div>
<vue-gic-footer></vue-gic-footer>
</div>
</template>
<
script
>
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
{
dateformat
}
from
'@/utils/formatTime'
export
default
{
name
:
'member-group-log'
,
components
:
{
navCrumb
},
data
()
{
return
{
searchKey
:
''
,
dateValue
:
[],
tableData
:
[],
total
:
0
,
pageSize
:
20
,
currentPage
:
1
,
loading
:
false
,
navpath
:
[
{
name
:
'首页'
,
path
:
`
${
window
.
location
.
origin
}
/report/#/memberSummary`
,
relocation
:
true
},
{
name
:
'会员管理'
,
path
:
''
},
{
name
:
'会员分组'
,
path
:
'/memberGroupList'
},
{
name
:
'分组操作日志'
,
path
:
''
}
]
};
},
filters
:
{
formatTimeYMD
(
data
)
{
if
(
!
data
)
return
'--'
return
dateformat
(
new
Date
(
data
),
'yyyy-MM-dd'
)
},
formatTimeHMS
(
data
)
{
if
(
!
data
)
return
'--'
return
dateformat
(
new
Date
(
data
),
'hh:mm:ss'
)
},
},
methods
:
{
selectDate
(
val
)
{
this
.
currentPage
=
1
;
this
.
getList
();
},
clearSearch
()
{
this
.
currentPage
=
1
;
this
.
getList
();
},
getList
()
{
this
.
loading
=
true
let
[
startDate
=
''
,
endDate
=
''
]
=
this
.
dateValue
||
[];
return
this
.
axios
.
get
(
'http://gicdev.demogic.com'
+
'/gic-member-tag-web/member-tag-group/groupLog'
,
{
params
:
{
pageSize
:
this
.
pageSize
,
pageNum
:
this
.
currentPage
,
requestProject
:
'gic-member-tag-web'
,
search
:
this
.
searchKey
,
startDate
,
endDate
}
}).
then
(
res
=>
{
let
{
data
,
data
:
{
result
}
}
=
res
console
.
log
(
data
)
if
(
data
.
errorCode
===
1
)
{
this
.
total
=
result
.
totalCount
this
.
tableData
=
result
.
result
||
[]
}
this
.
$nextTick
(()
=>
{
console
.
log
(
this
.
$refs
.
line
.
scrollHeight
)
})
this
.
loading
=
false
})
},
handleCurrentChange
(
val
)
{
this
.
currentPage
=
val
;
this
.
getList
();
},
handleSizeChange
(
val
)
{
this
.
currentPage
=
1
;
this
.
pageSize
=
val
;
this
.
getList
();
},
onSearch
()
{
this
.
currentPage
=
1
;
this
.
getList
();
},
getName
(
item
)
{
if
(
!
item
)
return
'--'
return
item
.
split
(
'-'
)[
0
]
||
'--'
},
getPhone
(
item
)
{
if
(
!
item
)
return
'--'
return
item
.
split
(
'-'
)[
1
]
||
'--'
}
},
mounted
()
{
this
.
searchKey
=
this
.
$route
.
query
.
groupName
||
''
this
.
getList
()
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.member-group-log
{
//
min-width
:
1200px
;
overflow
:
auto
;
width
:
100%
;
&__content
{
margin
:
24px
;
background
:
#fff
;
padding
:
24px
;
}
.h-18
{
height
:
18px
;
line-height
:
18px
;
}
}
</
style
>
<
style
lang=
"scss"
>
.el-tooltip__popper
{
max-width
:
95%
;
}
</
style
>
src/view/memberGroup/memberGroupDetail.vue
View file @
ee59066c
...
@@ -11,11 +11,12 @@
...
@@ -11,11 +11,12 @@
人
人
</span>
</span>
<template
v-if=
"canEdit"
>
<template
v-if=
"canEdit"
>
<el-button
type=
"primary"
class=
"down-member-list__btn"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown && total
<
1000000
"
>
人群导出
</el-button>
<el-button
type=
"primary"
class=
"down-member-list__btn
m-l-8
"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown && total
<
1000000
"
>
人群导出
</el-button>
<el-tooltip
v-else-if=
"downMemberListPop.canDown"
class=
"item"
effect=
"dark"
content=
"每张报表导出人数限制为100万,大于100万的人群会自动拆分为多张报表进行导出"
placement=
"top"
>
<el-tooltip
v-else-if=
"downMemberListPop.canDown"
class=
"item"
effect=
"dark"
content=
"每张报表导出人数限制为100万,大于100万的人群会自动拆分为多张报表进行导出"
placement=
"top"
>
<el-button
type=
"primary"
class=
"down-member-list__btn"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown"
>
人群导出
</el-button>
<el-button
type=
"primary"
class=
"down-member-list__btn
m-l-8
"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown"
>
人群导出
</el-button>
</el-tooltip>
</el-tooltip>
</
template
>
</
template
>
<el-button
type=
"primary"
class=
"down-member-list__btn"
@
click=
"$router.push(`/memberGroupLog?groupName=${groupName}`)"
>
操作日志
</el-button>
</div>
</div>
<div
class=
"memberGroupDetail-wrap__head"
>
<div
class=
"memberGroupDetail-wrap__head"
>
<span
class=
"tag-selected-title"
>
筛选标签
</span>
<span
class=
"tag-selected-title"
>
筛选标签
</span>
...
...
src/view/memberGroup/memberGroupList.vue
View file @
ee59066c
...
@@ -146,6 +146,9 @@
...
@@ -146,6 +146,9 @@
<el-option
:key=
"1"
label=
"实时"
:value=
"1"
>
</el-option>
<el-option
:key=
"1"
label=
"实时"
:value=
"1"
>
</el-option>
</el-select>
</el-select>
<div
class=
"batch-option"
>
<div
class=
"batch-option"
>
<el-tooltip
class=
"item"
content=
"分组内的标签条件或者其他信息有过编辑的,均在此查看"
placement=
"top"
>
<el-button
class=
"fl"
type=
"primary"
@
click=
"$router.push('/memberGroupLog')"
>
分组操作日志
</el-button>
</el-tooltip>
<el-select
v-model=
"batchSelect"
@
change=
"batchHandleSelect"
@
focus=
"handleFocus"
placeholder=
"批量操作"
class=
"w-180 m-l-0"
>
<el-select
v-model=
"batchSelect"
@
change=
"batchHandleSelect"
@
focus=
"handleFocus"
placeholder=
"批量操作"
class=
"w-180 m-l-0"
>
<el-option
:key=
"0"
label=
"失效"
:value=
"0"
>
</el-option>
<el-option
:key=
"0"
label=
"失效"
:value=
"0"
>
</el-option>
<el-option
:key=
"1"
label=
"删除"
:value=
"1"
>
</el-option>
<el-option
:key=
"1"
label=
"删除"
:value=
"1"
>
</el-option>
...
@@ -1390,6 +1393,9 @@ export default {
...
@@ -1390,6 +1393,9 @@ export default {
.fr
{
.fr
{
margin-left
:
10px
;
margin-left
:
10px
;
}
}
.fl
{
margin-right
:
10px
;
}
}
}
.refresh
{
.refresh
{
color
:
#909399
;
color
:
#909399
;
...
...
src/view/memberGroup/memberLevelDetail.vue
View file @
ee59066c
...
@@ -11,10 +11,11 @@
...
@@ -11,10 +11,11 @@
<span>
{{
separator
(
total
)
}}
</span>
<span>
{{
separator
(
total
)
}}
</span>
人
人
</span>
</span>
<el-button
type=
"primary"
class=
"down-member-list__btn"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown && total
<
1000000
"
>
人群导出
</el-button>
<el-button
type=
"primary"
class=
"down-member-list__btn
m-l-8
"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown && total
<
1000000
"
>
人群导出
</el-button>
<el-tooltip
v-else-if=
"downMemberListPop.canDown"
class=
"item"
effect=
"dark"
content=
"每张报表导出人数限制为100万,大于100万的人群会自动拆分为多张报表进行导出"
placement=
"top"
>
<el-tooltip
v-else-if=
"downMemberListPop.canDown"
class=
"item"
effect=
"dark"
content=
"每张报表导出人数限制为100万,大于100万的人群会自动拆分为多张报表进行导出"
placement=
"top"
>
<el-button
type=
"primary"
class=
"down-member-list__btn"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown"
>
人群导出
</el-button>
<el-button
type=
"primary"
class=
"down-member-list__btn
m-l-8
"
@
click=
"downMemberListPop.show = true"
v-if=
"downMemberListPop.canDown"
>
人群导出
</el-button>
</el-tooltip>
</el-tooltip>
<el-button
type=
"primary"
class=
"down-member-list__btn"
@
click=
"`/memberGroupLog?memberTagGroupId=$
{$route.query.memberTagGroupId}`">操作日志
</el-button>
</div>
</div>
<div
class=
"memberGroupDetail-wrap__table"
>
<div
class=
"memberGroupDetail-wrap__table"
>
<el-input
<el-input
...
...
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