Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
marketing
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
marketing-web
marketing
Commits
622b486a
Commit
622b486a
authored
Jun 02, 2022
by
crushh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update: dist
parent
d11c1de7
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
56 additions
and
25 deletions
+56
-25
form.vue
src/views/game/cmh/form.vue
+9
-2
info.vue
src/views/game/cmh/info.vue
+27
-3
activityDetail.vue
src/views/game/cmh/statistics/activityDetail.vue
+10
-10
prizeDetail.vue
src/views/game/cmh/statistics/prizeDetail.vue
+3
-3
statistics.vue
src/views/game/cmh/statistics/statistics.vue
+7
-7
No files found.
src/views/game/cmh/form.vue
View file @
622b486a
...
...
@@ -7,7 +7,7 @@
</div>
<div
class=
"rightBtn"
>
<el-button
@
click=
"returnNext"
v-if=
"!isInfo"
>
退出
</el-button>
<el-button
@
click=
"
$router.go(-1)
"
v-else
>
返回
</el-button>
<el-button
@
click=
"
goBack
"
v-else
>
返回
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
v-if=
"isCopy || isEdit"
>
发布并预览
</el-button>
</div>
</div>
...
...
@@ -39,7 +39,7 @@
<ruleConfig
ref=
"ruleConfig"
:gameStatus=
"gameStatus"
:templateId=
"templateId"
:gameTime=
"gameTime"
:shareImgData=
"shareImgData"
:echoData=
"ruleForm"
v-show=
"active == 2"
@
nextStep=
"nextStep"
@
prevStep=
"step => active--"
@
submit=
"submitForm"
:btnLoading=
"btnLoading"
@
change=
"handleRuleConfigChange"
/>
</div>
</div>
<info
:data=
"echoData"
:invalidCard=
"invalidCard"
v-if=
"isInfo"
/>
<info
:data=
"echoData"
:invalidCard=
"invalidCard"
v-if=
"isInfo"
ref=
"info"
/>
</div>
<links
:show
.
sync=
"linkShow"
:obj=
"linksObj"
gameTypeName=
"幸运盲盒"
:isNew=
"true"
:showFooter=
"true"
:showClose=
"false"
>
<el-button
@
click=
"editRenew"
>
重新编辑
</el-button>
...
...
@@ -239,6 +239,12 @@ export default {
})
.
catch
(()
=>
{});
},
goBack
()
{
this
.
$router
.
go
(
-
1
);
if
(
this
.
isInfo
)
{
this
.
$refs
.
info
.
stopMusic
();
}
},
handleMenuSelect
(
index
)
{
this
.
menuActive
=
index
;
},
...
...
@@ -473,6 +479,7 @@ export default {
border-radius
:
8px
8px
0px
0px
;
margin
:
0
20px
0
13px
;
position
:
relative
;
overflow-y
:
auto
;
img
{
width
:
375px
;
}
...
...
src/views/game/cmh/info.vue
View file @
622b486a
...
...
@@ -91,7 +91,11 @@
<
div
class
=
"section"
>
<
el
-
descriptions
column
=
"3"
>
<
el
-
descriptions
-
item
label
=
"参与人群"
>
{{
form
.
gameRuleInfo
.
memberType
==
0
&&
!
form
.
gameRuleInfo
.
filterJson
?
'全部人群'
:
''
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"适用人群说明"
>
{{
form
.
gameRuleInfo
&&
form
.
gameRuleInfo
.
memberDesc
}}
<
/el-descriptions-item
>
<
el
-
descriptions
-
item
label
=
"适用人群说明"
:
labelStyle
=
"labelStyle"
>
<
div
class
=
"ellips"
>
{{
form
.
gameRuleInfo
&&
form
.
gameRuleInfo
.
memberDesc
}}
<
/div
>
<
/el-descriptions-item
>
<
/el-descriptions
>
<
div
v
-
if
=
"form.gameRuleInfo.memberType == 0 && form.gameRuleInfo.filterJson"
>
<
vue
-
gic
-
people
projectName
=
"marketing"
:
isAdd
=
"false"
:
hasSearchData
=
"form.gameRuleInfo.filterJson"
:
useId
=
"form.memberWeightView.searchId"
sceneValue
=
"member"
ref
=
"peopleFilter"
@
editShow
=
"toggleTag = true"
@
editHide
=
"toggleTag = false"
@
hideBtn
=
"toggleTag = false"
/>
...
...
@@ -196,11 +200,18 @@ export default {
2
:
'卡券'
}
,
isAdd
:
this
.
$route
.
meta
.
type
===
'add'
,
heightPx
:
0
heightPx
:
0
,
labelStyle
:
{
minWidth
:
'88px'
}
}
;
}
,
mounted
()
{
this
.
heightPx
=
document
.
body
.
clientHeight
-
52
;
music
.
addEventListener
(
'ended'
,
()
=>
{
music
.
currentTime
=
0
;
this
.
isPlay
=
false
;
}
);
}
,
components
:
{
gicNewMemberGroup
...
...
@@ -260,7 +271,12 @@ export default {
cancelFilter
()
{
this
.
$refs
.
peopleFilter
.
cancelSet
();
}
,
stopMusic
()
{
if
(
this
.
isPlay
)
{
this
.
isPlay
=
false
;
music
.
pause
();
}
}
,
calculateRate
()
{
const
prizeNumTotal
=
this
.
form
.
gamePrizeList
.
map
(
item
=>
(
item
.
prizeType
!=
0
?
item
.
prizeStock
:
0
)).
reduce
((
pre
,
current
)
=>
pre
+
current
);
this
.
form
.
gamePrizeList
.
forEach
(
item
=>
{
...
...
@@ -298,6 +314,14 @@ export default {
.
invalid
{
color
:
#
909399
;
}
.
ellips
{
// overflow: hidden;
// text-overflow: ellipsis;
// display: -webkit-box;
// -webkit-line-clamp: 2;
// /*! autoprefixer: ignore next */
// -webkit-box-orient: vertical;
}
.
section
{
padding
:
20
px
0
18
px
0
;
}
...
...
src/views/game/cmh/statistics/activityDetail.vue
View file @
622b486a
...
...
@@ -6,7 +6,7 @@
<el-button
icon=
"iconfont fz14 icon-cp-xiazai"
type=
"primary"
class=
"fr"
@
click=
"handleExport"
size=
"small"
:disabled=
"!total"
>
查询结果导出
</el-button>
</div>
<el-table
tooltipEffect=
"light"
:data=
"tableList"
style=
"width:100%"
>
<el-table-column
label=
"基本信息"
min-width=
"214"
show-overflow-tooltip
fixed=
"left"
>
<el-table-column
label=
"基本信息"
min-width=
"214"
fixed=
"left"
>
<div
slot-scope=
"
{ row }" class="member-info">
<img
class=
"member-logo"
v-if=
"row.memberImage"
:src=
"row.memberImage"
alt=
""
/>
<svg
aria-hidden=
"true"
v-else
class=
"member-logo"
>
...
...
@@ -28,16 +28,16 @@
<el-table-column
label=
"会员卡号"
min-width=
"130px"
prop=
"cardNum"
show-overflow-tooltip
:formatter=
"(row, col, val) => val || '--'"
></el-table-column>
<el-table-column
label=
"服务门店"
min-width=
"210"
prop=
"mainStoreName"
>
<
template
slot-scope=
"{ row }"
>
{{
row
.
mainStoreName
}}
{{
row
.
mainStoreName
||
'--'
}}
<br
/>
{{
row
.
mainStoreCode
}}
{{
row
.
mainStoreCode
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
label=
"中奖次数"
min-width=
"96"
prop=
"winCnt"
></el-table-column>
<el-table-column
label=
"分享次数"
min-width=
"96"
prop=
"shareCnt"
></el-table-column>
<el-table-column
label=
"裂变新用户"
min-width=
"112"
prop=
"invitationMemberCnt"
></el-table-column>
<el-table-column
label=
"消耗积分"
min-width=
"96"
prop=
"useIntegralCnt"
></el-table-column>
<el-table-column
min-width=
"88"
prop=
"isNewMember"
>
<el-table-column
label=
"中奖次数"
min-width=
"96"
prop=
"winCnt"
:formatter=
"(row, col, val) => val || '--'"
></el-table-column>
<el-table-column
label=
"分享次数"
min-width=
"96"
prop=
"shareCnt"
:formatter=
"(row, col, val) => val || '--'"
></el-table-column>
<el-table-column
label=
"裂变新用户"
min-width=
"112"
prop=
"invitationMemberCnt"
:formatter=
"(row, col, val) => val || '--'"
></el-table-column>
<el-table-column
label=
"消耗积分"
min-width=
"96"
prop=
"useIntegralCnt"
:formatter=
"(row, col, val) => val || '--'"
></el-table-column>
<el-table-column
min-width=
"88"
prop=
"isNewMember"
:formatter=
"(row, col, val) => val || '--'"
>
<
template
slot=
"header"
>
新会员
<el-tooltip
placement=
"top"
content=
"用户自身是否通过本次游戏注册成为会员"
>
...
...
@@ -47,9 +47,9 @@
</el-table-column>
<el-table-column
label=
"首次参与时间"
min-width=
"114"
prop=
"firstPlayTime"
fixed=
"right"
>
<
template
slot-scope=
"{ row }"
>
{{
formatDateTimeByType
(
row
.
firstPlayTime
,
'yyyy-MM-dd'
)
}}
{{
formatDateTimeByType
(
row
.
firstPlayTime
,
'yyyy-MM-dd'
)
||
'--'
}}
<br
/>
{{
formatDateTimeByType
(
row
.
firstPlayTime
,
'HH-mm-ss'
)
}}
{{
formatDateTimeByType
(
row
.
firstPlayTime
,
'HH-mm-ss'
)
||
'--'
}}
</
template
>
</el-table-column>
</el-table>
...
...
src/views/game/cmh/statistics/prizeDetail.vue
View file @
622b486a
...
...
@@ -4,7 +4,7 @@
<el-input
v-model=
"form.prizeName"
class=
"w260"
placeholder=
"请输入奖品名称"
clearable
@
change=
"refresh"
><i
slot=
"prefix"
class=
"el-input__icon el-icon-search"
></i></el-input>
<el-input
v-model=
"form.search"
class=
"w260"
placeholder=
"请输入姓名/昵称/手机号/会员卡号"
clearable
@
change=
"refresh"
><i
slot=
"prefix"
class=
"el-input__icon el-icon-search"
></i></el-input>
<el-date-picker
class=
"w256"
v-model=
"form.dateTime"
value-format=
"yyyy-MM-dd"
@
change=
"refresh"
type=
"daterange"
range-separator=
"~"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
<el-select
class=
"w160"
v-model=
"form.prizeType"
placeholder=
"所有
游戏状态
"
@
change=
"refresh"
clearable
>
<el-select
class=
"w160"
v-model=
"form.prizeType"
placeholder=
"所有
奖品类型
"
@
change=
"refresh"
clearable
>
<el-option
v-for=
"(v, i) in prizeTypeOptions"
:key=
"i"
:label=
"v.label"
:value=
"v.value"
></el-option>
</el-select>
<el-button
icon=
"iconfont fz14 icon-cp-xiazai"
type=
"primary"
class=
"fr"
@
click=
"handleExport"
size=
"small"
:disabled=
"!total"
>
查询结果导出
</el-button>
...
...
@@ -35,9 +35,9 @@
<el-table-column
label=
"兑奖方式"
min-width=
"184"
prop=
"exchangeTypeName"
:formatter=
"(row, col, val) => val || '--'"
></el-table-column>
<el-table-column
label=
"中奖时间"
min-width=
"183"
prop=
"prizeTime"
fixed=
"right"
>
<
template
slot-scope=
"{ row }"
>
{{
formatDateTimeByType
(
row
.
prizeTime
,
'yyyy-MM-dd'
)
}}
{{
formatDateTimeByType
(
row
.
prizeTime
,
'yyyy-MM-dd'
)
||
'--'
}}
<br
/>
{{
formatDateTimeByType
(
row
.
prizeTime
,
'HH-mm-ss'
)
}}
{{
formatDateTimeByType
(
row
.
prizeTime
,
'HH-mm-ss'
)
||
'--'
}}
</
template
>
</el-table-column>
</el-table>
...
...
src/views/game/cmh/statistics/statistics.vue
View file @
622b486a
...
...
@@ -75,7 +75,7 @@ const tableHead = [
prop
:
'prizeTotalStock'
,
minWidth
:
'88'
,
formatter
:
function
(
row
)
{
return
`<span>
${
row
.
prizeTotalStock
?
row
.
prizeTotalStock
.
toLocaleString
()
:
'- -'
}
</span>`
;
return
`<span>
${
numFormat
(
row
.
prizeTotalStock
)
}
</span>`
;
}
},
{
...
...
@@ -83,7 +83,7 @@ const tableHead = [
prop
:
'prizeWinningMNum'
,
minWidth
:
'116'
,
formatter
:
function
(
row
)
{
return
`<span>
${
row
.
prizeWinningMNum
?
row
.
prizeWinningMNum
.
toLocaleString
()
:
'- -'
}
</span>`
;
return
`<span>
${
numFormat
(
row
.
prizeWinningMNum
)
}
</span>`
;
}
},
{
...
...
@@ -99,7 +99,7 @@ const tableHead = [
prop
:
'receivedMNum'
,
minWidth
:
'100'
,
formatter
:
function
(
row
)
{
return
`<span>
${
row
.
receivedMNum
?
row
.
receivedMNum
.
toLocaleString
()
:
'- -'
}
</span>`
;
return
`<span>
${
numFormat
(
row
.
receivedMNum
)
}
</span>`
;
}
},
{
...
...
@@ -107,7 +107,7 @@ const tableHead = [
prop
:
'writeOffNum'
,
minWidth
:
'120'
,
formatter
:
function
(
row
)
{
return
`<span>
${
row
.
writeOffNum
?
row
.
writeOffNum
.
toLocaleString
()
:
'- -'
}
</span>`
;
return
`<span>
${
numFormat
(
row
.
writeOffNum
)
}
</span>`
;
}
},
{
...
...
@@ -115,7 +115,7 @@ const tableHead = [
prop
:
'writeOffMNum'
,
minWidth
:
'120'
,
formatter
:
function
(
row
)
{
return
`<span>
${
row
.
writeOffMNum
?
row
.
writeOffMNum
.
toLocaleString
()
:
'- -'
}
</span>`
;
return
`<span>
${
numFormat
(
row
.
writeOffMNum
)
}
</span>`
;
}
},
{
...
...
@@ -123,7 +123,7 @@ const tableHead = [
prop
:
'writeOffRate'
,
minWidth
:
'100'
,
formatter
:
function
(
row
)
{
return
`<span>
${
!
isNaN
(
row
.
writeOffRate
)
?
row
.
writeOffRate
+
'%'
:
'- -'
}
</span>`
;
return
`<span>
${
typeof
row
.
writeOffRate
==
'number'
?
row
.
writeOffRate
+
'%'
:
'- -'
}
</span>`
;
}
},
{
...
...
@@ -131,7 +131,7 @@ const tableHead = [
prop
:
'perCustomerTransaction'
,
minWidth
:
'100'
,
formatter
:
function
(
row
)
{
return
`<span>
${
row
.
perCustomerTransaction
?
row
.
perCustomerTransaction
.
toLocaleString
()
:
'- -'
}
</span>`
;
return
`<span>
${
numFormat
(
row
.
perCustomerTransaction
)
}
</span>`
;
}
},
{
...
...
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