1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/onlymry-vue-antd-admin

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
BDConstructionSite.vue 22 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
yanlitian Отправлено 5 лет назад 18e8318
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821
<template>
<div class="bigcs">
<!-- <div class="caption-title">
<i class="fl">
<img src="@/assets/bigdata/bigcs/images/title-left.png" />
</i>
<span class="biaoti fl">智慧工地</span>
<i class="fr">
<img src="@/assets/bigdata/bigcs/images/title-right.png" />
</i>
</div> -->
<!-- 内容正文 -->
<div class="zhenwen">
<div class="left_zs fl">
<!-- 项目概览 -->
<div class="data-box1 left_tb fl">
<i class="topL"></i>
<i class="topR"></i>
<i class="bottomL"></i>
<i class="bottomR"></i>
<div class="data-title">
<b class="data-title-left fl">[</b>
<span>项目概览</span>
<b class="data-title-right fr">]</b>
</div>
<!-- 项目概览-->
<div class="xmglan">
<ul class="xmgl_heard">
<li>当前</li>
<li class="hove">历史</li>
</ul>
<div id="xmgl_cen">
<div class="xmgl_tb">
<ul class="xm_cszs">
<li>
在建项目(个):
<span>100</span>
</li>
<li>
在建工地面积(平米):
<span>100</span>万M
</li>
<li>
<p>
市政(%):
<span>100</span>
<cite>%</cite>
</p>
<p>
绿化(%):
<span>100</span>
<cite>%</cite>
</p>
<p>
房建(%)
<span>100</span>
<cite>%</cite>
</p>
</li>
<li>
<p>
交建(%)
<span>100</span>
<cite>%</cite>
</p>
<p>
其他(%)
<span>100</span>
<cite>%</cite>
</p>
</li>
</ul>
</div>
<div class="xmgl_tb none">
<ul class="xm_cszs">
<li>
在建项目(个):
<span>140</span>
</li>
<li>
在建工地面积(平米):
<span>120</span>万M
</li>
<li>
<p>
市政(%):
<span>110</span>
<cite>%</cite>
</p>
<p>
绿化(%):
<span>140</span>
<cite>%</cite>
</p>
<p>
房建(%)
<span>180</span>
<cite>%</cite>
</p>
</li>
<li>
<p>
交建(%)
<span>10</span>
<cite>%</cite>
</p>
<p>
其他(%)
<span>140</span>
<cite>%</cite>
</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<!-- 项目人员信息状态 -->
<div class="data-box1 left_tb fl mtop40">
<i class="topL"></i>
<i class="topR"></i>
<i class="bottomL"></i>
<i class="bottomR"></i>
<div class="data-title">
<b class="data-title-left fl">[</b>
<span>项目人员信息状态</span>
<b class="data-title-right fr">]</b>
</div>
<!-- 项目人员信息状态-->
<div class="xmglan">
<div id="lytj" class="lytj"></div>
<div class="wgrytj">
<span class="wgrytj_bt">务工人员工种统计</span>
<div class="wgrytj_tb">
<div id="gztj" style="height:163px"></div>
</div>
</div>
<div class="wgrytj">
<span class="wgrytj_bt">各公司现场人员统计</span>
<div class="wgrytj_tb">
<div id="xcrytj" style="height:163px"></div>
</div>
</div>
</div>
</div>
</div>
<!--仪表盘等展示-->
<div class="center_zs fl">
<div class="data-box1 box1-back">
<i class="topL"></i>
<i class="topR"></i>
<i class="bottomL"></i>
<i class="bottomR"></i>
<div class="data-title">
<b class="data-title-left">[</b>
<span>仪表盘等展示</span>
<b class="data-title-right">]</b>
</div>
<div class="ybp">
<div id="ybp" style="height:600px"></div>
</div>
</div>
</div>
<!--右侧图表展示 -->
<div class="right_zs fl">
<!-- 巡检风险状态 -->
<div class="data-box1 right_tb">
<i class="topL"></i>
<i class="topR"></i>
<i class="bottomL"></i>
<i class="bottomR"></i>
<div class="data-title">
<b class="data-title-left">[</b>
<span>巡检风险状态</span>
<b class="data-title-right">]</b>
</div>
<!--巡检风险状态-->
<div class="ryclts">
<div id="xjfxzt" style="height:300px"></div>
</div>
</div>
<!-- 风险变化趋势 -->
<div class="data-box1 right_tb mtop40">
<i class="topL"></i>
<i class="topR"></i>
<i class="bottomL"></i>
<i class="bottomR"></i>
<div class="data-title">
<b class="data-title-left">[</b>
<span>风险变化趋势</span>
<b class="data-title-right">]</b>
</div>
<!--问题等级-->
<div class="ryclts">
<div class="clearfix">
<div id="fxbhqs" style="height:300px"></div>
</div>
<div class="wgrytj">
<div class="wenti_dj">
<div id="wentidj" style="height:100px"></div>
</div>
<div class="wenti_bg">
<table width="200" border="1">
<tr>
<td>类别</td>
<td>发现总是</td>
<td>重大问题</td>
<td>一般问题</td>
</tr>
<tr>
<td>质量问题</td>
<td class="green">45</td>
<td class="orange">300</td>
<td class="green">40</td>
</tr>
<tr>
<td>安全问题</td>
<td class="green">36</td>
<td class="orange">100</td>
<td class="green">78</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="h30 clearfix"></div>
</div>
</template>
<script>
import $ from "jquery";
import echarts from "echarts";
export default {
mounted() {
this.init();
},
methods: {
init() {
//分类选择
$(".xmgl_heard li").click(function() {
$(this).attr("class", "");
$(this)
.siblings()
.attr("class", "hove");
$("#xmgl_cen")
.find(".xmgl_tb")
.eq($(this).index())
.removeClass("none")
.siblings()
.addClass("none");
});
// /////////////////////////////////////////////
this.createPromanger();
this.createPropsonal();
this.createProworker();
this.createProdanger();
this.createProwraing();
this.createProquestions();
this.createProYBP();
},
createPromanger() {
/*################# 项目人员信息状态 #####################*/
var dom = document.getElementById("lytj");
var myChart = echarts.init(dom);
var app = {};
let option = null;
app.title = "环形图";
option = {
tooltip: {
trigger: "item",
formatter: "{a} <br/>{b}: {c} ({d}%)"
},
legend: {
orient: "vertical",
x: "left",
data: []
},
series: [
{
name: "访问来源",
type: "pie",
radius: ["50%", "70%"],
avoidLabelOverlap: false,
label: {
normal: {
show: true,
position: "inside",
formatter: "{d}%", //模板变量有 {a}、{b}、{c}、{d},分别表示系列名,数据名,数据值,百分比。{d}数据会根据value值计算百分比
textStyle: {
align: "center",
baseline: "middle",
fontFamily: "微软雅黑",
fontSize: 12,
fontWeight: "bolder"
}
},
emphasis: {
show: true,
textStyle: {
fontSize: "12",
fontWeight: "bold"
}
}
},
labelLine: {
normal: {
show: true,
position: "inside",
formatter: "{d}%", //模板变量有 {a}、{b}、{c}、{d},分别表示系列名,数据名,数据值,百分比。{d}数据会根据value值计算百分比
textStyle: {
align: "center",
baseline: "middle",
fontFamily: "微软雅黑",
fontSize: 15,
fontWeight: "bolder"
}
}
},
data: [
{
value: 335,
name: "质量"
},
{
value: 310,
name: "安全"
}
]
}
]
};
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
},
createPropsonal() {
var dom = document.getElementById("gztj");
var myChart = echarts.init(dom);
var app = {};
let option = null;
app.title = "环形图";
option = {
tooltip: {
trigger: "item",
formatter: "{a} <br/>{b}: {c} ({d}%)"
},
legend: {
orient: "vertical",
x: "left",
data: ["木工", "钢筋工", "瓦泥工", "电焊工", "起重工"],
textStyle: {
color: "#fff"
}
},
series: [
{
name: "访问来源",
type: "pie",
radius: ["50%", "70%"],
avoidLabelOverlap: false,
label: {
normal: {
show: false,
textStyle: {
align: "center",
baseline: "middle",
fontFamily: "微软雅黑",
fontSize: 12,
fontWeight: "normal"
}
},
emphasis: {
show: true,
textStyle: {
fontSize: "12",
fontWeight: "bold"
}
}
},
labelLine: {
normal: {
show: false
}
},
data: [
{
value: 335,
name: "木工"
},
{
value: 310,
name: "钢筋工"
},
{
value: 234,
name: "瓦泥工"
},
{
value: 135,
name: "电焊工"
},
{
value: 1548,
name: "起重工"
}
]
}
]
};
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
},
createProworker() {
var dom = document.getElementById("xcrytj");
var myChart = echarts.init(dom);
var app = {};
let option = null;
app.title = "环形图";
option = {
tooltip: {
trigger: "item",
formatter: "{a} <br/>{b}: {c} ({d}%)"
},
legend: {
orient: "vertical",
x: "left",
data: ["中国建筑", "万科", "金地", "韩村河建筑", "中国铁建"],
textStyle: {
color: "#fff"
}
},
series: [
{
name: "访问来源",
type: "pie",
radius: ["50%", "70%"],
avoidLabelOverlap: false,
label: {
normal: {
show: false,
textStyle: {
align: "center",
baseline: "middle",
fontFamily: "微软雅黑",
fontSize: 12,
fontWeight: "normal"
}
},
emphasis: {
show: true,
textStyle: {
fontSize: "12",
fontWeight: "bold"
}
}
},
labelLine: {
normal: {
show: false
}
},
data: [
{
value: 335,
name: "中国建筑"
},
{
value: 310,
name: "万科"
},
{
value: 234,
name: "金地"
},
{
value: 135,
name: "韩村河建筑"
},
{
value: 148,
name: "中国铁建"
}
]
}
]
};
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
},
createProdanger() {
/*################## 巡检风险状态 ##################*/
var option = {
tooltip: {
trigger: "axis"
},
legend: {
data: ["所属工地", "风险程度"],
textStyle: {
color: "#fff"
}
},
xAxis: [
{
type: "category",
data: ["内蒙", "玉树自治区", "河北省张家口", "吉林省"],
axisLabel: {
show: true,
textStyle: {
color: "#657c97"
}
}
}
],
yAxis: [
{
type: "value",
name: "风险程度",
nameTextStyle: {
color: "#657c97"
},
min: 0,
max: 100,
interval: 50,
axisLabel: {
textStyle: {
color: "#657c97"
}
}
}
],
series: [
{
name: "所属工地",
type: "bar",
/*设置柱状图颜色*/
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#83bff6"
},
{
offset: 0.5,
color: "#0ff"
},
{
offset: 1,
color: "#188df0"
}
]),
/*信息显示方式*/
label: {
show: false,
position: "top",
formatter: "{b}\n{c}"
}
}
},
data: [50, 75, 40, 70]
},
{
name: "风险程度",
type: "line",
itemStyle: {
/*设置折线颜色*/
normal: {
//color:'#0ff'
}
},
data: [50, 75, 40, 70]
}
]
};
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById("xjfxzt"));
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
},
createProwraing() {
/*############## 风险变化趋势 #####################*/
var dom = document.getElementById("fxbhqs");
var myChart = echarts.init(dom);
let option = null;
option = {
title: {
text: "风险变化趋势",
//是否显示标题组件
show: false
},
tooltip: {
trigger: "axis"
},
legend: {
data: ["项目起始时间", "安全问题", "质量问题", "环保问题"],
top: "3%",
textStyle: {
color: "#fff"
}
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
containLabel: true
},
toolbox: {
feature: {
saveAsImage: {}
}
},
xAxis: {
type: "category",
boundaryGap: false,
data: [
"2018/1",
"2018/2",
"2018/3",
"2018/4",
"2018/5",
"2018/6",
"2018/7"
],
axisLabel: {
show: true,
textStyle: {
color: "#657c97"
}
}
},
yAxis: {
type: "value",
axisLabel: {
show: true,
textStyle: {
color: "#657c97"
}
}
},
series: [
{
name: "项目起始时间",
type: "line",
stack: "总量",
data: [120, 132, 101, 134, 90, 230, 210],
// 显示数值
itemStyle: {
normal: {
label: {
show: true
}
}
}
},
{
name: "安全问题",
type: "line",
stack: "总量",
data: [100, 182, 191, 104, 290, 130, 200],
// 显示数值
itemStyle: {
normal: {
label: {
show: true
}
}
}
},
{
name: "质量问题",
type: "line",
stack: "总量",
data: [220, 182, 191, 234, 290, 330, 310],
// 显示数值
itemStyle: {
normal: {
label: {
show: true
}
}
}
},
{
name: "环保问题",
type: "line",
stack: "总量",
data: [120, 102, 121, 124, 110, 120, 110],
// 显示数值
itemStyle: {
normal: {
label: {
show: true
}
}
}
}
]
};
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
},
createProquestions() {
/*################### 问题等级 ###################*/
var dom = document.getElementById("wentidj");
var myChart = echarts.init(dom);
// var app = {};
let option = null;
option = {
tooltip: {
trigger: "item",
formatter: "{a} <br/>{b}: {c} ({d}%)"
},
legend: {
orient: "vertical",
x: "left",
data: []
},
series: [
{
name: "问题类别",
type: "pie",
radius: ["50%", "70%"],
avoidLabelOverlap: false,
label: {
normal: {
show: true,
position: "inside",
formatter: "{d}%" //模板变量有 {a}、{b}、{c}、{d},分别表示系列名,数据名,数据值,百分比。{d}数据会根据value值计算百分比
},
emphasis: {
show: true
}
},
labelLine: {
normal: {
show: true,
position: "inside", //让文字显示在柱子上
formatter: "{d}%" //模板变量有 {a}、{b}、{c}、{d},分别表示系列名,数据名,数据值,百分比。{d}数据会根据value值计算百分比
}
},
data: [
{
value: 335,
name: "质量问题"
},
{
value: 310,
name: "安全问题"
}
]
}
]
};
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
},
createProYBP() {
/*################### 问题等级 ###################*/
var dom = document.getElementById("ybp");
var myChart = echarts.init(dom);
// var app = {};
let option = null;
option = {
tooltip: {
formatter: "{a} <br/>{b} : {c}%"
},
toolbox: {
feature: {
restore: {},
saveAsImage: {}
}
},
series: [
{
name: "业务指标",
type: "gauge",
detail: { formatter: "{value}%" },
data: [{ value: 50, name: "完成率" }]
}
]
};
if (option && typeof option === "object") {
myChart.setOption(option, true);
setInterval(function() {
option.series[0].data[0].value = (Math.random() * 100).toFixed(2) - 0;
myChart.setOption(option, true);
}, 2000);
}
}
}
};
</script>
<style lang="less" scoped>
@import url("../assets/bigdata/bigcs/css/public.css");
@import url("../assets/bigdata/bigcs/css/jianlixt.css");
@import url("../assets/bigdata/bigcs/css/jianlisw.css");
.bigcs {
background: rgba(0, 0, 0, 1);
}
</style>

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/onlymry-vue-antd-admin.git
git@gitlife.ru:oschina-mirror/onlymry-vue-antd-admin.git
oschina-mirror
onlymry-vue-antd-admin
onlymry-vue-antd-admin
dev