Commit 9588b78d authored by 张俊's avatar 张俊

健康环图

parent 0116d6b8
...@@ -3,17 +3,29 @@ ...@@ -3,17 +3,29 @@
<div class="person_info"> <div class="person_info">
<div class="preson"> <div class="preson">
<div class="person_text"> <div class="person_text">
<img src="../assets/imgs/img_head.png" alt=""> <img src="../assets/imgs/img_head.png" alt />
<span>你好,{{person}}!最近登录{{login_time}}</span> <span>你好,{{person}}!最近登录{{login_time}}</span>
</div> </div>
<div class="person_menu">管理功能&nbsp;&nbsp;&nbsp; <img src="../assets/imgs/home_ic_more_w.png" alt=""></div> <div class="person_menu">
管理功能&nbsp;&nbsp;&nbsp;
<img src="../assets/imgs/home_ic_more_w.png" alt />
</div>
</div> </div>
<div class="menu"> <div class="menu">
<div :class="now_user==0?'menu_box0':now_user==1?'menu_box1':'menu_box2'" v-for="(item,index) in menu_arr[now_user]" :key="index+100" > <div
<img :src="item.pic" alt=""> :class="now_user==0?'menu_box0':now_user==1?'menu_box1':'menu_box2'"
v-for="(item,index) in menu_arr[now_user]"
:key="index+100"
>
<img :src="item.pic" alt />
<div class="menu_text"> <div class="menu_text">
<p>{{item.text}}</p> <p>{{item.text}}</p>
<p :style="index == menu_arr[now_user].length - 1||now_user==1&&index==0?{color:item.color,marginRight:'-20px'}:{color:item.color}"><span style="font-size:36px">{{item.num}}</span><span v-if="index == menu_arr[now_user].length - 1||now_user==1&&index==0"></span></p> <p
:style="index == menu_arr[now_user].length - 1||now_user==1&&index==0?{color:item.color,marginRight:'-20px'}:{color:item.color}"
>
<span style="font-size:36px">{{item.num}}</span>
<span v-if="index == menu_arr[now_user].length - 1||now_user==1&&index==0"></span>
</p>
</div> </div>
</div> </div>
</div> </div>
...@@ -21,14 +33,21 @@ ...@@ -21,14 +33,21 @@
<div class="case_box"> <div class="case_box">
<div class="data_asy"> <div class="data_asy">
<p style="margin-top:20px;margin-bottom:10px;">数据分析中心 <img style="vertical-align:-9px;" src="../assets/imgs/home_btn_enter.png" alt=""></p> <p style="margin-top:20px;margin-bottom:10px;">
数据分析中心
<img style="vertical-align:-9px;" src="../assets/imgs/home_btn_enter.png" alt />
</p>
<div class="data_charts"> <div class="data_charts">
<div class="data_charts_left"> <div class="data_charts_left">
<p><span></span> 服务健康状态</p> <p>
<span></span> 服务健康状态
</p>
<div :id="health"></div> <div :id="health"></div>
</div> </div>
<div class="data_charts_right"> <div class="data_charts_right">
<p><span></span> 服务运营分析</p> <p>
<span></span> 服务运营分析
</p>
<div :id="yy_asy"></div> <div :id="yy_asy"></div>
</div> </div>
</div> </div>
...@@ -39,100 +58,217 @@ ...@@ -39,100 +58,217 @@
</template> </template>
<script> <script>
import uuidv1 from "uuid/v1";
export default { export default {
data(){ data() {
return{ return {
person:'康先生', person: "康先生",
login_time:'2020-03-12 10:21:22', login_time: "2020-03-12 10:21:22",
now_user:0, now_user: 0,
health:'', health: uuidv1(),
yy_asy:"", yy_asy: uuidv1(),
menu_arr:[ menu_arr: [
[ [
{ {
text:'服务总数', text: "服务总数",
pic:require('../assets/imgs/ic_fuwuzs_navy.png'), pic: require("../assets/imgs/ic_fuwuzs_navy.png"),
bg:'#e6ebfe', bg: "#e6ebfe",
color:'#515fe7', color: "#515fe7",
num:'12,332', num: "12,332"
}, },
{ {
text:'应用总数', text: "应用总数",
pic:require('../assets/imgs/ic_yingyongzs.png'), pic: require("../assets/imgs/ic_yingyongzs.png"),
bg:'#e5f4fe', bg: "#e5f4fe",
color:'#38aef9', color: "#38aef9",
num:'223', num: "223"
}, },
{ {
text:'收益总额', text: "收益总额",
pic:require('../assets/imgs/ic_shouyize.png'), pic: require("../assets/imgs/ic_shouyize.png"),
bg:'#fcefd6', bg: "#fcefd6",
color:'#ea7d19', color: "#ea7d19",
num:'¥2,312', num: "¥2,312"
}, }
], ],
[ [
{ {
text:'收益总额', text: "收益总额",
pic:require('../assets/imgs/ic_shouyize.png'), pic: require("../assets/imgs/ic_shouyize.png"),
bg:'#fcefd6', bg: "#fcefd6",
color:'#ea7d19', color: "#ea7d19",
num:'¥2,312', num: "¥2,312"
},
{
text: "服务总数",
pic: require("../assets/imgs/ic_fuwuzs_navy.png"),
bg: "#e6ebfe",
color: "#515fe7",
num: "12,332"
}, },
{ {
text:'服务总数', text: "应用总数",
pic:require('../assets/imgs/ic_fuwuzs_navy.png'), pic: require("../assets/imgs/ic_yingyongzs.png"),
bg:'#e6ebfe', bg: "#e5f4fe",
color:'#515fe7', color: "#38aef9",
num:'12,332', num: "223"
}, },
{ {
text:'应用总数', text: "收益总额",
pic:require('../assets/imgs/ic_yingyongzs.png'), pic: require("../assets/imgs/ic_shouyize.png"),
bg:'#e5f4fe', bg: "#fcefd6",
color:'#38aef9', color: "#ea7d19",
num:'223', num: "¥2,312"
}
]
]
};
},
mounted() {
this.init_health()
},
methods: {
init_health(num) {
var options = {
title: {
text: "77",
textStyle: {
color: "#01c4a3",
fontSize: 40
},
subtext: "健康占比",
subtextStyle: {
color: "#909090"
},
itemGap: -10, // 主副标题距离
left: "center",
top: "center"
},
angleAxis: {
max: 100, // 满分
clockwise: false, // 逆时针
startAngle: 90,
// 隐藏刻度线
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: false
},
splitLine: {
show: false
}
},
radiusAxis: {
type: "category",
// 隐藏刻度线
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: false
}, },
splitLine: {
show: false
}
},
polar: {
center: ["50%", "50%"],
radius: "140%" //图形大小
},
series: [
{
type: "bar",
data: [
{
name: "作文得分",
value: 60,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [
{ {
text:'收益总额', offset: 0,
pic:require('../assets/imgs/ic_shouyize.png'), color: "#aaf14f"
bg:'#fcefd6',
color:'#ea7d19',
num:'¥2,312',
}, },
{
offset: 1,
color: "#0acfa1"
}
]),
shadowColor: "rgba(0, 0, 0, 0.5)",
shadowBlur: 50
}
}
}
], ],
coordinateSystem: "polar",
roundCap: true,
barWidth: 25,
barGap: "-100%", // 两环重叠
z: 2
},
{
// 灰色环
type: "bar",
data: [
{
value: 100,
itemStyle: {
color: "#e2e2e2",
shadowColor: "rgba(0, 0, 0, 0.5)",
shadowBlur: 50
}
}
], ],
coordinateSystem: "polar",
roundCap: true,
barWidth: 25,
barGap: "-100%", // 两环重叠
z: 1
} }
]
};
window[this.health] = echarts.init(
document.getElementById(this.health)
);
window[this.health].setOption(options, true);
} }
} }
};
</script> </script>
<style scoped> <style scoped>
.person_info{ .person_info {
width: 1200px; width: 1200px;
height: 206px; height: 206px;
background-color: #ffffff; background-color: #ffffff;
box-shadow: 0px 3px 6px 0px box-shadow: 0px 3px 6px 0px #f4f7fc;
#f4f7fc;
border-radius: 12px; border-radius: 12px;
padding: 20px; padding: 20px;
} }
.preson{ .preson {
width: 100%; width: 100%;
height: 52px; height: 52px;
line-height: 52px; line-height: 52px;
border-bottom: 2px solid #f4f7fc; border-bottom: 2px solid #f4f7fc;
} }
.person_text{ .person_text {
float: left; float: left;
padding: 0 10px; padding: 0 10px;
} }
.person_text img{ .person_text img {
border-radius: 18px; border-radius: 18px;
margin-right: 10px; margin-right: 10px;
vertical-align: -10px; vertical-align: -10px;
} }
.person_menu{ .person_menu {
float: right; float: right;
width: 100px; width: 100px;
height: 32px; height: 32px;
...@@ -144,73 +280,76 @@ export default { ...@@ -144,73 +280,76 @@ export default {
cursor: pointer; cursor: pointer;
margin-top: 10px; margin-top: 10px;
} }
.menu{ .menu {
width: 100%; width: 100%;
height: 102px; height: 102px;
margin-top: 20px; margin-top: 20px;
} }
.menu_box0,.menu_box1{ .menu_box0,
.menu_box1 {
float: left; float: left;
width: calc((100% - 60px)/3); width: calc((100% - 60px) / 3);
margin-right: 30px; margin-right: 30px;
width: 366px; width: 366px;
height: 92px; height: 92px;
background-color: #e6ebfe; background-color: #e6ebfe;
border-radius: 12px 12px 12px 46px; border-radius: 12px 12px 12px 46px;
} }
.menu_box0:nth-last-of-type(1),.menu_box1:nth-last-of-type(1){ .menu_box0:nth-last-of-type(1),
.menu_box1:nth-last-of-type(1) {
margin-right: 0px; margin-right: 0px;
} }
.menu_box1{ .menu_box1 {
width: calc((100% - 60px)/4); width: calc((100% - 60px) / 4);
margin-right: 20px; margin-right: 20px;
} }
.menu img{ .menu img {
float: left; float: left;
margin: 28px 0 0 28px; margin: 28px 0 0 28px;
} }
.menu .menu_text{ .menu .menu_text {
float: right; float: right;
margin-top: 15px; margin-top: 15px;
margin-right: 29px; margin-right: 29px;
} }
.menu_text p{ .menu_text p {
text-align: right; text-align: right;
} }
.case_box{ .case_box {
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
} }
.data_asy{ .data_asy {
width: 720px; width: 720px;
float: left; float: left;
margin-right: 20px; margin-right: 20px;
} }
.data_charts{ .data_charts {
width: 720px; width: 720px;
height: 270px; height: 270px;
background-color: #ffffff; background-color: #ffffff;
box-shadow: 0px 3px 6px 0px box-shadow: 0px 3px 6px 0px #f4f7fc;
#f4f7fc;
border-radius: 12px; border-radius: 12px;
padding: 20px; padding: 20px;
} }
.data_charts_left{ .data_charts_left {
height: 100%; height: 100%;
width: 220px; width: 220px;
float: left; float: left;
} }
.data_charts_right{ .data_charts_right {
height: 100%; height: 100%;
width: 420px; width: 420px;
float: right; float: right;
} }
.data_charts_left p,.data_charts_right p{ .data_charts_left p,
.data_charts_right p {
font-size: 16px; font-size: 16px;
color: #707693; color: #707693;
} }
.data_charts_left p span,.data_charts_right p span{ .data_charts_left p span,
.data_charts_right p span {
width: 8px; width: 8px;
height: 8px; height: 8px;
background-color: #515fe7; background-color: #515fe7;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment