Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
dcxy-manage-shell
Project
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
姜雷
dcxy-manage-shell
Commits
26a18bc9
Commit
26a18bc9
authored
Apr 16, 2019
by
姜雷
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改数据首页
parent
6b577f4f
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
145 additions
and
65 deletions
+145
-65
CustomerConsumption.vue
...ers/Dashboard/CustomerConsumption/CustomerConsumption.vue
+39
-5
CustomerConsumptionStore.js
...Dashboard/CustomerConsumption/CustomerConsumptionStore.js
+5
-1
chart.vue
src/containers/Dashboard/CustomerConsumption/chart.vue
+12
-12
CustomerFeedback.vue
...ontainers/Dashboard/CustomerFeedback/CustomerFeedback.vue
+4
-0
CustomerRecharge.vue
...ontainers/Dashboard/CustomerRecharge/CustomerRecharge.vue
+42
-6
CustomerRechargeStore.js
...iners/Dashboard/CustomerRecharge/CustomerRechargeStore.js
+5
-1
chart.vue
src/containers/Dashboard/CustomerRecharge/chart.vue
+13
-32
CustomerRegister.vue
...ontainers/Dashboard/CustomerRegister/CustomerRegister.vue
+8
-4
Dashboard.vue
src/containers/Dashboard/Dashboard.vue
+6
-3
EquipmentList.vue
src/containers/Dashboard/EquipmentList/EquipmentList.vue
+11
-1
No files found.
src/containers/Dashboard/CustomerConsumption/CustomerConsumption.vue
View file @
26a18bc9
<
template
>
<div
class=
"Dashboard-DataCard"
>
<div
class=
"Dashboard-DataCard
CustomerConsumption
"
>
<div
class=
"Dashboard-SearchBar"
>
<search-item
label=
"运营商"
>
<operator-select
:accessType=
"1"
:value=
"filters.operatorId"
@
input=
"val => get
Recharg
eOrderList(
{operatorId: val})"
@
input=
"val => get
Consum
eOrderList(
{operatorId: val})"
/>
</search-item>
<search-item
label=
"区域"
>
<area-select
:value=
"filters.areaId"
@
input=
"val => get
Recharg
eOrderList(
{areaId: val})"
@
input=
"val => get
Consum
eOrderList(
{areaId: val})"
type="user"
/>
</search-item>
<el-radio-group
class=
"Dashboard-Radio"
:value=
"filters.timeType"
@
input=
"val => get
Recharg
eOrderList(
{timeType: val})"
@
input=
"val => get
Consum
eOrderList(
{timeType: val})"
>
<el-radio
class=
"Dashboard-Radio-item"
...
...
@@ -34,7 +34,21 @@
>
本年
</el-radio>
</el-radio-group>
</div>
<div
class=
"Dashboard-title"
>
会员消费数据
</div>
<div
class=
"Dashboard-title"
>
会员消费数据
<div
class=
"CustomerConsumptionChart-tip"
style=
"color:#333;font-size:14px;text-align: center;"
>
合计消费总金额:
<span
class=
"CustomerConsumption-total"
style=
"color:#f00;"
>
0.00元
</span>
合计消费人数:
<span
class=
"CustomerConsumption-count"
style=
"color:#f00;"
>
0人
</span>
</div>
</div>
<Chart
:data=
"consumeList"
:consumeCount=
"consumeCount"
...
...
@@ -72,3 +86,23 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
>
.CustomerConsumption
{
.Dashboard-title
{
display
:
flex
;
align-items
:
center
;
}
.CustomerConsumptionChart-tip
{
position
:
absolute
;
right
:
0
;
top
:
50px
;
margin-left
:
10px
;
color
:
#333
;
font-size
:
14px
;
font-weight
:
normal
;
text-align
:
center
;
}
}
</
style
>
src/containers/Dashboard/CustomerConsumption/CustomerConsumptionStore.js
View file @
26a18bc9
...
...
@@ -44,9 +44,13 @@ const actions = {
}
return
getConsumeOrderList
({
data
:
entity
,
}).
then
(
res
=>
{
})
.
then
(
res
=>
{
const
{
data
,
consumeCountVo
}
=
res
;
commit
(
FETCH_CONSUME_LIST
,
{
list
:
data
,
consumeCountVo
});
})
.
catch
(
err
=>
{
console
.
error
(
err
);
});
},
};
...
...
src/containers/Dashboard/CustomerConsumption/chart.vue
View file @
26a18bc9
...
...
@@ -29,7 +29,7 @@ export default {
container
:
'CustomerConsumptionChart'
,
forceFit
:
true
,
height
:
this
.
height
,
padding
:
[
10
0
,
50
,
50
,
100
],
padding
:
[
5
0
,
50
,
50
,
100
],
});
this
.
chart
.
source
(
this
.
data
);
this
.
chart
...
...
@@ -57,17 +57,17 @@ export default {
?
this
.
consumeCount
.
payMen
:
'0'
;
// 辅助元素
this
.
chart
.
guide
().
html
({
position
:
[
'0%'
,
'0%'
],
htmlContent
:
`<div style="color:#333;font-size:14px;text-align: center;">
合计消费总金额:<span class="CustomerConsumption-total" style="color:#f00;">0.00元</span>
合计消费人数:<span class="CustomerConsumption-count" style="color:#f00;">0人</span>
</div>`
,
alignX
:
'left'
,
alignY
:
'top'
,
offsetX
:
-
40
,
offsetY
:
-
40
,
});
//
this.chart.guide().html({
//
position: ['0%', '0%'],
//
htmlContent: `
<
div
style
=
"color:#333;font-size:14px;text-align: center;"
>
//
合计消费总金额:
<
span
class
=
"CustomerConsumption-total"
style
=
"color:#f00;"
>
0.00
元
<
/span
>
//
合计消费人数:
<
span
class
=
"CustomerConsumption-count"
style
=
"color:#f00;"
>
0
人
<
/span
>
//
<
/div>`
,
//
alignX: 'left',
//
alignY: 'top',
//
offsetX: -40,
//
offsetY: -40,
//
});
this
.
chart
.
render
();
this
.
chart
.
guide
().
text
({
...
...
src/containers/Dashboard/CustomerFeedback/CustomerFeedback.vue
View file @
26a18bc9
...
...
@@ -92,6 +92,10 @@ export default {
}
@media
screen
and
(
max-width
:
$bigScreenWidth
)
{
.CustomerFeedback
{
.CustomerFeedbackTitle
{
padding
:
0
10px
;
font-size
:
14px
;
}
.CustomerFeedback-Item
{
height
:
40px
;
font-size
:
14px
;
...
...
src/containers/Dashboard/CustomerRecharge/CustomerRecharge.vue
View file @
26a18bc9
<
template
>
<div
class=
"Dashboard-DataCard"
>
<div
class=
"Dashboard-DataCard
CustomerRecharge
"
>
<div
class=
"Dashboard-SearchBar"
>
<search-item
label=
"运营商"
>
<operator-select
...
...
@@ -27,11 +27,21 @@
>
本年
</el-radio>
</el-radio-group>
</div>
<div
class=
"Dashboard-title"
>
会员充值数据
</div>
<Chart
:data=
"rechargeList"
:rechargeCount=
"rechargeCount"
/>
<div
class=
"Dashboard-title"
>
会员充值数据
<div
class=
"CustomerRechangeChart-tip"
>
<span
class=
"CustomerRechange-tooltip"
style=
"background-color:#4e82fb;"
></span>
累计充值:
<span
style=
"color:#f00;"
>
{{
rechargeCount
&&
rechargeCount
.
rechargeMoney
?
(
rechargeCount
.
rechargeMoney
).
toFixed
(
2
)
:
'0.00'
}}
元
</span>
<span
class=
"CustomerRechange-tooltip"
style=
"background-color:#26c9a8;"
></span>
充值人数:
<span
style=
"color:#f00;"
>
{{
rechargeCount
&&
rechargeCount
.
rechargeMen
?
rechargeCount
.
rechargeMen
:
0
}}
人
</span>
</div>
</div>
<Chart
:data=
"rechargeList"
/>
</div>
</
template
>
...
...
@@ -65,3 +75,29 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
>
.CustomerRecharge
{
.Dashboard-title
{
display
:
flex
;
align-items
:
center
;
}
.CustomerRechangeChart-tip
{
position
:
absolute
;
right
:
0
;
top
:
50px
;
margin-right
:
10px
;
color
:
#333
;
font-size
:
14px
;
font-weight
:
normal
;
text-align
:
center
;
.CustomerRechange-tooltip
{
display
:
inline-block
;
width
:
10px
;
height
:
5px
;
margin-bottom
:
2px
;
margin-left
:
10px
;
}
}
}
</
style
>
src/containers/Dashboard/CustomerRecharge/CustomerRechargeStore.js
View file @
26a18bc9
...
...
@@ -43,9 +43,13 @@ const actions = {
}
return
getRechargeOrderList
({
data
:
entity
,
}).
then
(
res
=>
{
})
.
then
(
res
=>
{
const
{
data
,
rechargeOrderCountVo
}
=
res
;
commit
(
FETCH_RECHARGE_LIST
,
{
list
:
data
,
rechargeOrderCountVo
});
})
.
catch
(
err
=>
{
console
.
error
(
err
);
});
},
};
...
...
src/containers/Dashboard/CustomerRecharge/chart.vue
View file @
26a18bc9
<
template
>
<div
class=
"CustomerRechangeChart"
>
<div
class=
"CustomerRechangeChart-tip"
>
<span
class=
"CustomerRechange-tooltip"
style=
"background-color:#4e82fb;"
></span>
累计充值:
<span
style=
"color:#f00;"
>
{{
rechargeCount
&&
rechargeCount
.
rechargeMoney
?
(
rechargeCount
.
rechargeMoney
).
toFixed
(
2
)
:
'0.00'
}}
元
</span>
<span
class=
"CustomerRechange-tooltip"
style=
"background-color:#26c9a8;"
></span>
充值人数:
<span
style=
"color:#f00;"
>
{{
rechargeCount
&&
rechargeCount
.
rechargeMen
?
rechargeCount
.
rechargeMen
:
0
}}
人
</span>
</div>
<div
id=
'CustomerRechangeChart'
></div>
<div
id=
'CustomerRechangeSlider'
></div>
</div>
...
...
@@ -102,7 +91,7 @@ export default {
container
:
'CustomerRechangeChart'
,
forceFit
:
true
,
height
:
this
.
height
,
padding
:
[
10
0
,
50
,
50
,
120
],
padding
:
[
5
0
,
50
,
50
,
120
],
});
this
.
chart
.
source
(
dv
);
this
.
chart
.
axis
(
'areaName'
,
{
...
...
@@ -131,13 +120,18 @@ export default {
this
.
initSlider
();
},
initSlider
()
{
const
wrapDom
=
document
.
getElementById
(
'CustomerRechangeChart'
);
console
.
log
(
wrapDom
.
clientHeight
);
let
height
=
wrapDom
.
clientHeight
;
// const arrLength = this.data.length;
// let spanNum = 4 / arrLength;
this
.
sliderDom
=
document
.
getElementById
(
'CustomerRechangeSlider'
);
this
.
sliderDom
.
style
=
`height:
${
height
}
px`
;
this
.
slider
=
new
Slider
({
container
:
this
.
sliderDom
,
// dom 容器 id 或者 dom 容器对象
width
:
26
,
// slider 的宽度,默认为 'auto',即自适应宽度
height
:
300
,
// slider 的高度,默认为 '26px'
height
:
height
,
// slider 的高度,默认为 '26px'
xAxis
:
'value'
,
// 背景图的横轴对应字段,同时为数据筛选的字段
yAxis
:
'areaName'
,
// 背景图的纵轴对应字段
startRadio
:
this
.
ds
.
state
.
startRadio
,
// 新增
...
...
@@ -174,8 +168,8 @@ export default {
startRadio
:
this
.
ds
.
state
.
startRadio
,
endRadio
:
this
.
ds
.
state
.
endRadio
,
data
:
this
.
data
,
// minSpan:
spanNum
,
// maxSpan:
spanNum
,
// minSpan:
this.ds.state.endRadio
,
// maxSpan:
this.ds.state.endRadio
,
handleStyle
:
{
img
:
require
(
'@/assets/images/dashboard/QXtfhORGlDuRvLXFzpsQ.png'
),
width
:
26
,
...
...
@@ -192,8 +186,10 @@ export default {
},
refreshData
()
{
if
(
this
.
chart
)
{
const
arrLength
=
this
.
data
.
length
;
let
spanNum
=
4
/
arrLength
;
this
.
ds
.
setState
(
'endRadio'
,
spanNum
);
this
.
dv
.
source
(
this
.
data
);
console
.
log
(
this
.
slider
);
this
.
updateSlider
();
this
.
updateData
();
}
else
{
...
...
@@ -214,20 +210,5 @@ export default {
height
:
300px
;
transform
:
translate
(
100%
,
-100%
);
}
.CustomerRechangeChart-tip
{
position
:
absolute
;
left
:
80px
;
top
:
60px
;
color
:
#333
;
font-size
:
14px
;
text-align
:
center
;
}
.CustomerRechange-tooltip
{
display
:
inline-block
;
width
:
10px
;
height
:
5px
;
margin-bottom
:
2px
;
margin-left
:
20px
;
}
}
</
style
>
src/containers/Dashboard/CustomerRegister/CustomerRegister.vue
View file @
26a18bc9
...
...
@@ -14,7 +14,7 @@
<search-item
label=
"校区"
>
<area-select
v-model
.
trim=
"campusFilters.areaId"
@
change
=
"changeReportAreaHandle"
@
input
=
"changeReportAreaHandle"
type=
"user"
/>
</search-item>
...
...
@@ -53,7 +53,10 @@ export default {
},
data
()
{
return
{
campusFilters
:
{},
campusFilters
:
{
year
:
''
,
areaId
:
undefined
,
},
};
},
computed
:
{
...
...
@@ -77,9 +80,10 @@ export default {
}
},
changeReportAreaHandle
(
val
)
{
if
(
val
&&
this
.
campusFilters
.
year
)
{
if
(
val
)
{
let
year
=
this
.
campusFilters
.
year
;
this
.
fetchReportList
({
year
:
this
.
campusFilters
.
year
,
year
:
year
?
year
:
null
,
areaId
:
val
,
});
}
...
...
src/containers/Dashboard/Dashboard.vue
View file @
26a18bc9
...
...
@@ -102,7 +102,7 @@ export default {
align-items
:
center
;
justify-self
:
flex-end
;
.Dashboard-Radio-item
{
margin
:
0
10px
;
margin
:
0
10px
0
0
;
}
}
}
...
...
@@ -118,10 +118,10 @@ export default {
.Dashboard-DataCard
{
flex
:
2
;
&
:nth-child
(
2
)
{
flex
:
2
.
3
;
flex
:
2
.
5
;
}
&
:last-child
{
flex
:
1
.2
;
flex
:
1
;
}
}
.Dashboard-title
{
...
...
@@ -214,6 +214,9 @@ export default {
}
@media
screen
and
(
max-width
:
$bigScreenWidth
)
{
.Dashboard
{
.Dashboard-title
{
font-size
:
16px
;
}
.Dashboard-SearchBar
{
padding
:
10px
0
10px
;
}
...
...
src/containers/Dashboard/EquipmentList/EquipmentList.vue
View file @
26a18bc9
<
template
>
<div
class=
"Dashboard-DataCard"
>
<div
class=
"Dashboard-DataCard
EquipmentList
"
>
<div
class=
"Dashboard-title"
>
<div
class=
"Dashboard-title-icon equipment"
>
<img
src=
"@/assets/images/dashboard/icon_paiming@2x.png"
/>
...
...
@@ -36,3 +36,13 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
>
.EquipmentList
{
.Dashboard-title
{
.el-radio-button__inner
{
line-height
:
0
;
}
}
}
</
style
>
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