发布集成平台web代码提交
@ -0,0 +1,306 @@
|
||||
/**
|
||||
* @author zhixin wen <wenzhixin2010@gmail.com>
|
||||
* version: 1.10.1
|
||||
* https://github.com/wenzhixin/bootstrap-table/
|
||||
*/
|
||||
|
||||
.bootstrap-table .table {
|
||||
margin-bottom: 0 !important;
|
||||
border: 1px solid #dddddd;
|
||||
border-collapse: collapse !important;
|
||||
border-radius: 1px;
|
||||
}
|
||||
|
||||
.bootstrap-table .table:not(.table-condensed),
|
||||
.bootstrap-table .table:not(.table-condensed) > tbody > tr > th,
|
||||
.bootstrap-table .table:not(.table-condensed) > tfoot > tr > th,
|
||||
.bootstrap-table .table:not(.table-condensed) > thead > tr > td,
|
||||
.bootstrap-table .table:not(.table-condensed) > tbody > tr > td,
|
||||
.bootstrap-table .table:not(.table-condensed) > tfoot > tr > td {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.bootstrap-table .table.table-no-bordered > thead > tr > th,
|
||||
.bootstrap-table .table.table-no-bordered > tbody > tr > td {
|
||||
border-right: 2px solid transparent;
|
||||
}
|
||||
|
||||
.fixed-table-container {
|
||||
position: relative;
|
||||
clear: both;
|
||||
/*border: 1px solid #dddddd;*/
|
||||
border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
}
|
||||
|
||||
.fixed-table-container.table-no-bordered {
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
.fixed-table-footer,
|
||||
.fixed-table-header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.fixed-table-footer {
|
||||
/*border-top: 1px solid #dddddd;*/
|
||||
}
|
||||
|
||||
.fixed-table-body {
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.fixed-table-container table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.fixed-table-container thead th {
|
||||
height: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
/*border-left: 1px solid #dddddd;*/
|
||||
}
|
||||
|
||||
.fixed-table-container thead th:focus {
|
||||
outline: 0 solid transparent;
|
||||
}
|
||||
|
||||
.fixed-table-container thead th:first-child {
|
||||
border-left: none;
|
||||
border-top-left-radius: 4px;
|
||||
-webkit-border-top-left-radius: 4px;
|
||||
-moz-border-radius-topleft: 4px;
|
||||
}
|
||||
|
||||
.fixed-table-container thead th .th-inner,
|
||||
.fixed-table-container tbody td .th-inner {
|
||||
padding: 8px;
|
||||
line-height: 24px;
|
||||
vertical-align: top;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.fixed-table-container thead th .sortable {
|
||||
cursor: pointer;
|
||||
background-position: right;
|
||||
background-repeat: no-repeat;
|
||||
padding-right: 30px;
|
||||
}
|
||||
|
||||
.fixed-table-container thead th .both {
|
||||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7X QMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC');
|
||||
}
|
||||
|
||||
.fixed-table-container thead th .asc {
|
||||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg==');
|
||||
}
|
||||
|
||||
.fixed-table-container thead th .desc {
|
||||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII= ');
|
||||
}
|
||||
|
||||
.fixed-table-container th.detail {
|
||||
width: 30px;
|
||||
}
|
||||
|
||||
.fixed-table-container tbody td {
|
||||
border-left: 1px solid #dddddd;
|
||||
}
|
||||
|
||||
.fixed-table-container tbody tr:first-child td {
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
.fixed-table-container tbody td:first-child {
|
||||
border-left: none;
|
||||
}
|
||||
|
||||
/* the same color with .active */
|
||||
.fixed-table-container tbody .selected td {
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.fixed-table-container .bs-checkbox {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.fixed-table-container .bs-checkbox .th-inner {
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
.fixed-table-container input[type="radio"],
|
||||
.fixed-table-container input[type="checkbox"] {
|
||||
margin: 0 auto !important;
|
||||
}
|
||||
|
||||
.fixed-table-container .no-records-found {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.fixed-table-pagination div.pagination,
|
||||
.fixed-table-pagination .pagination-detail {
|
||||
font-size: 12px;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
margin-left: 20px;
|
||||
margin-right: 30px;
|
||||
color: #0D8BBD;
|
||||
}
|
||||
|
||||
.fixed-table-pagination div.pagination .pagination {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.fixed-table-pagination .pagination a {
|
||||
padding: 6px 12px;
|
||||
line-height: 1.428571429;
|
||||
}
|
||||
|
||||
.fixed-table-pagination .pagination-info {
|
||||
line-height: 34px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.fixed-table-pagination .btn-group {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.fixed-table-pagination .dropup .dropdown-menu {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.fixed-table-pagination .page-list {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .columns-left {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .columns-right {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .columns label {
|
||||
display: block;
|
||||
padding: 3px 20px;
|
||||
clear: both;
|
||||
font-weight: normal;
|
||||
line-height: 1.428571429;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .bars,
|
||||
.fixed-table-toolbar .search,
|
||||
.fixed-table-toolbar .columns {
|
||||
position: relative;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
line-height: 34px;
|
||||
}
|
||||
|
||||
.fixed-table-pagination li.disabled a {
|
||||
pointer-events: none;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.fixed-table-loading {
|
||||
display: none;
|
||||
position: absolute;
|
||||
top: 42px;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: 99;
|
||||
background-color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.fixed-table-body .card-view .title {
|
||||
font-weight: bold;
|
||||
display: inline-block;
|
||||
min-width: 30%;
|
||||
text-align: left !important;
|
||||
}
|
||||
|
||||
/* support bootstrap 2 */
|
||||
.fixed-table-body thead th .th-inner {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.table th, .table td {
|
||||
vertical-align: middle;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .dropdown-menu {
|
||||
text-align: left;
|
||||
max-height: 300px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .btn-group > .btn-group {
|
||||
display: inline-block;
|
||||
margin-left: -1px !important;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .btn-group > .btn-group > .btn {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .btn-group > .btn-group:first-child > .btn {
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
}
|
||||
|
||||
.fixed-table-toolbar .btn-group > .btn-group:last-child > .btn {
|
||||
border-top-right-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
}
|
||||
|
||||
.bootstrap-table .table > thead > tr > th {
|
||||
vertical-align: bottom;
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
/* support bootstrap 3 */
|
||||
.bootstrap-table .table thead > tr > th {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.bootstrap-table .fixed-table-footer tbody > tr > td {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
.bootstrap-table .fixed-table-footer .table {
|
||||
border-bottom: none;
|
||||
border-radius: 0;
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
.pull-right .dropdown-menu {
|
||||
right: 0;
|
||||
left: auto;
|
||||
}
|
||||
|
||||
/* calculate scrollbar width */
|
||||
p.fixed-table-scroll-inner {
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
}
|
||||
|
||||
div.fixed-table-scroll-outer {
|
||||
top: 0;
|
||||
left: 0;
|
||||
visibility: hidden;
|
||||
width: 200px;
|
||||
height: 150px;
|
||||
overflow: hidden;
|
||||
}
|
||||
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
|
||||
<title>404 - 找不到文件或目录。</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
|
||||
fieldset{padding:0 15px 10px 15px;}
|
||||
h1{font-size:2.4em;margin:0;color:#FFF;}
|
||||
h2{font-size:1.7em;margin:0;color:#CC0000;}
|
||||
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
|
||||
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
|
||||
background-color:#555555;}
|
||||
#content{margin:0 0 0 2%;position:relative;}
|
||||
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="header"><h1>服务器错误</h1></div>
|
||||
<div id="content">
|
||||
<div class="content-container"><fieldset>
|
||||
<h2>404 - 找不到文件或目录。</h2>
|
||||
<h3>您要查找的资源可能已被删除,已更改名称或者暂时不可用。</h3>
|
||||
</fieldset></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
|
||||
<title>404 - 找不到文件或目录。</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
|
||||
fieldset{padding:0 15px 10px 15px;}
|
||||
h1{font-size:2.4em;margin:0;color:#FFF;}
|
||||
h2{font-size:1.7em;margin:0;color:#CC0000;}
|
||||
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
|
||||
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
|
||||
background-color:#555555;}
|
||||
#content{margin:0 0 0 2%;position:relative;}
|
||||
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="header"><h1>服务器错误</h1></div>
|
||||
<div id="content">
|
||||
<div class="content-container"><fieldset>
|
||||
<h2>404 - 找不到文件或目录。</h2>
|
||||
<h3>您要查找的资源可能已被删除,已更改名称或者暂时不可用。</h3>
|
||||
</fieldset></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
|
||||
<title>404 - 找不到文件或目录。</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
|
||||
fieldset{padding:0 15px 10px 15px;}
|
||||
h1{font-size:2.4em;margin:0;color:#FFF;}
|
||||
h2{font-size:1.7em;margin:0;color:#CC0000;}
|
||||
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
|
||||
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
|
||||
background-color:#555555;}
|
||||
#content{margin:0 0 0 2%;position:relative;}
|
||||
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="header"><h1>服务器错误</h1></div>
|
||||
<div id="content">
|
||||
<div class="content-container"><fieldset>
|
||||
<h2>404 - 找不到文件或目录。</h2>
|
||||
<h3>您要查找的资源可能已被删除,已更改名称或者暂时不可用。</h3>
|
||||
</fieldset></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,127 @@
|
||||
.navtab{float: left;width: 45%;font-size: 0.18rem;}
|
||||
.navtab .navli{width: 100%}
|
||||
.navtab .navli li{float: left;margin-left:.5rem; color: #50FFFF;cursor: pointer}
|
||||
.navtab .navli li span{display: none;width: 80%;border-top: 0.03rem solid #50FFFF; height: 0.03rem;margin: 0 auto;margin-top: 0.05rem;}
|
||||
.navtab .navli li.isActive span{display: block}
|
||||
.btnblock{float: right; width: 35%}
|
||||
.btnblock span{display: block;}
|
||||
.btnblock span.btn1{background:#07556F; color: #ffffff; font-size: 0.16rem; border: #66FBF9 1px solid;border-radius: 0.05rem;padding: 0.05rem 0.1rem;margin-right: 3%;float: left; }
|
||||
.btnblock span.btn2 {color: #66FBF9;font-weight: bold; font-size: 0.14rem;border-radius: .2rem; padding: 0.04rem 0.15rem; float: right; line-height: 0.4rem;}
|
||||
.btnblock span.btn2 label{display: block; width: 0.25rem;height: 0.25rem;background: linear-gradient(0deg, rgba(26, 241, 166, 0.8), rgba(153, 233, 95, 0.8)); border-radius: 100%; margin: 0 auto}
|
||||
.btnblock span.btn3{color: #66FBF9;font-weight: bold; font-size: 0.14rem;border-radius: .2rem; padding: 0.04rem 0.15rem; margin-left: 3%; float: right;line-height: 0.4rem;}
|
||||
.btnblock span.btn3 label{display: block; width: 0.25rem;height: 0.25rem;background: linear-gradient(0deg, rgba(255, 192, 0, 0.8), rgba(252, 211, 86, 0.8)); border-radius: 100%; margin: 0 auto}
|
||||
.btnblock span.btn4{color: #66FBF9;font-weight: bold; font-size: 0.14rem;border-radius: .2rem; padding: 0.04rem 0.15rem; margin-left: 3%;float: right;line-height: 0.4rem;}
|
||||
.btnblock span.btn4 label{display: block; width: 0.25rem;height: 0.25rem;background: linear-gradient(0deg, rgba(255, 0, 0, 0.8), rgba(254, 104, 104, 0.8)); border-radius: 100%; margin: 0 auto}
|
||||
|
||||
.domain_title li{float: left; border-left: 1px solid #0A112B;}
|
||||
.domain_title li:first-child{border: 0}
|
||||
.domain_li li{float: left; min-height: 0.4rem;line-height: 0.4rem; border-left: 1px solid #0A112B;}
|
||||
.domain_li li:first-child{border: 0}
|
||||
.domain_li .style1{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(26, 241, 166, 0.8), rgba(153, 233, 95, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.2rem;}
|
||||
.domain_li .style2{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(255, 192, 0, 0.8), rgba(252, 211, 86, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.2rem;}
|
||||
.domain_li .style3{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(255, 0, 0, 0.8), rgba(254, 104, 104, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.2rem;}
|
||||
.growthCharts{width:100%;height: 4.2rem;}
|
||||
.growthTitle{float: left; font-size: 0.22rem;margin-top: 0.1rem;}
|
||||
.growthtishi{float: right;margin-top: 0.1rem;}
|
||||
.growthtishi .leftline{float: left; font-size: 0.22rem;}
|
||||
.growthtishi .rightline{float: right; font-size: 0.22rem;}
|
||||
.growthtishi .leftline span{width: 0.47rem; height:0.13rem;background: #F9D905; display:block; float: left; margin-top: 0.1rem;
|
||||
margin-right: 0.05rem;
|
||||
margin-left: 0.3rem;
|
||||
}
|
||||
.growthtishi .rightline span{width: 0.47rem; height:0.13rem;background: #00E6AC;display:block; float: left; margin-top: 0.1rem;
|
||||
margin-right: 0.05rem;
|
||||
margin-left: 0.3rem;
|
||||
}
|
||||
.territory_ul li{float: left; width:31%; margin-right: 3.5%}
|
||||
.territory_ul li:nth-child(3n){margin-right: 0;float: right}
|
||||
.territoryBox{ border:0.03rem solid #075d76; padding:0.02rem; background: rgba(6, 101, 106, 0.31); background-size: 100% auto; position: relative; margin-bottom: .3rem; z-index: 10;}
|
||||
.territoryBox:before,
|
||||
.territoryBox:after{ position:absolute; width: .2rem; height: .2rem; content: ""; border-top: 2px solid #02a6b5; top: -1px;}
|
||||
.territoryBox:before,.territoryBoxfoot:before{border-left: 2px solid #02a6b5;left: 0;}
|
||||
.territoryBox:after,.territoryBoxfoot:after{border-right: 2px solid #02a6b5; right: -1px;}
|
||||
.territoryBoxfoot{ position:absolute; bottom: -1px; width: 100%; left: -1px;}
|
||||
.territoryBoxfoot:before,
|
||||
.territoryBoxfoot:after{ position:absolute; width: .2rem; height: .2rem; content: "";border-bottom: 2px solid #02a6b5; bottom:-1px;}
|
||||
.territoryborder{background:rgba(7, 85, 111, 0.4);border:0.01rem solid #033c4f;position: relative;padding: 0.4rem 0.1rem; height: 100%;}
|
||||
.territoryborder span{position: absolute;right: 0.2rem;top: 0.2rem;width: .18rem; height: 0.18rem;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.territoryborder .style1{ background: linear-gradient(0deg, rgba(26, 241, 166, 0.8), rgba(153, 233, 95, 0.8));border-radius: 50%;}
|
||||
.territoryborder .style2{ background: linear-gradient(0deg, rgba(255, 192, 0, 0.8), rgba(252, 211, 86, 0.8));border-radius: 50%;}
|
||||
.territoryborder .style3{ background: linear-gradient(0deg, rgba(255, 0, 0, 0.8), rgba(254, 104, 104, 0.8));border-radius: 50%;}
|
||||
.territoryborder .number1{font-size: 0.37rem;color: #03F7FC; padding: 0.1rem 0.2rem;line-height: 0.6rem;}
|
||||
.territoryborder .number2{font-size: 0.28rem; padding: 0 .1rem .1rem .2rem;line-height: 0.6rem;}
|
||||
.territoryborder .number2 label{font-size: 0.4rem;}
|
||||
.organizational{width: 80%;margin: 0 auto; padding: 1rem 0 0 0.5rem; clear: both; overflow: hidden;}
|
||||
.organizational .title{background: #07556F; border: 0.02rem solid #66FBF9; border-radius: 0.1rem; padding: 0.1rem; display: inline-block;float: left; margin-top: 0.83rem}
|
||||
.organizational .title label{font-weight: normal; font-size: 0.22rem;float: left; margin-bottom:0;}
|
||||
.organizational .title b{float: right;width: .18rem; height: 0.18rem;vertical-align: middle; margin-left: 0.1rem; margin-top: 0.07rem;}
|
||||
.organizational .title .style1{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(26, 241, 166, 0.8), rgba(153, 233, 95, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.organizational .title .style2{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(255, 192, 0, 0.8), rgba(252, 211, 86, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.organizational .title .style3{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(255, 0, 0, 0.8), rgba(254, 104, 104, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.organizational .one{background: url(../images/jian1.png) no-repeat center center;background-size: 100%; width: 1.24rem; height: 0.23rem; float: left; margin-left: 0.2rem; margin-right: 0.1rem; margin-top: 1rem;}
|
||||
.organizational .two{background: url(../images/jian2.png) no-repeat center center;background-size: 100%; width: 1.32rem; height: 1.44rem; float: left; margin-left: 0.2rem; margin-right: 0.1rem;margin-top: 0.13rem;}
|
||||
.organizational .three{background: url(../images/jian3.png) no-repeat center center;background-size: 100%; width: 1.28rem; height: 2.48rem; float: left; margin-left: 0.2rem; margin-right: 0.1rem; margin-top: 0.15rem;}
|
||||
.organizational .title1{float: left;}
|
||||
.organizational .title3{background: #07556F; border: 0.02rem solid #66FBF9; border-radius: 0.1rem; padding: 0.1rem; display: block;height: 0.55rem;margin-bottom: 0.56rem;}
|
||||
.organizational .title3 label{font-weight: normal; font-size: 0.22rem;float: left; margin-bottom:0;}
|
||||
.organizational .title3 b{float: right;width: .18rem; height: 0.18rem;vertical-align: middle; margin-left: 0.1rem; margin-top: 0.07rem;}
|
||||
.organizational .title3 .style1{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(26, 241, 166, 0.8), rgba(153, 233, 95, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.organizational .title3 .style2{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(255, 192, 0, 0.8), rgba(252, 211, 86, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.organizational .title3 .style3{width: .18rem; height: 0.18rem; background: linear-gradient(0deg, rgba(255, 0, 0, 0.8), rgba(254, 104, 104, 0.8));border-radius: 50%;vertical-align: middle; margin-left: 0.1rem;}
|
||||
.organizational .title2{float: left;}
|
||||
.IndicatorLeft{width: 68%;float: left}
|
||||
.IndicatorLeft .title{ background: linear-gradient(0deg, rgba(16, 218, 255, 0.3), rgba(91, 147, 183, 0.3));font-size: 0.16rem; color: #66FBF9;text-align: center; padding: 0.08rem 0;}
|
||||
.IndicatorLeft td{margin-right: 0.01rem;font-size: 0.16rem;color: #66FBF9; background: linear-gradient(0deg, rgba(16, 218, 255, 0.3), rgba(91, 147, 183, 0.3))}
|
||||
.IndicatorLeft td:last-child{background: none;}
|
||||
.IndicatorLeft td label{display: block; width: 55%;margin: 0 auto;text-align: center; margin-bottom: 0.6rem; color: #66FBF9; font-size: 0.16rem;}
|
||||
|
||||
.IndicatorLeft .right{float: right; width: 49.9%;color: #66FBF9; font-size: 0.16rem;}
|
||||
.IndicatorRight{width: 31.9%;float: right;}
|
||||
.IndicatorRight .title{ background: linear-gradient(0deg, rgba(16, 218, 255, 0.3), rgba(91, 147, 183, 0.3));font-size: 0.16rem; color: #66FBF9;text-align: center; padding: 0.08rem 0;}
|
||||
.IndicatorLeft_li li{font-size: 0.16rem;color: #66FBF9;background:rgba(24, 97, 121, 0.3); padding:0.08rem 0.08rem 0.08rem 8.5%!important; margin-bottom: 1px;}
|
||||
.IndicatorLeft_li li:last-child{margin-bottom: 0}
|
||||
.IndicatorLeft_li span{display: inline-block; width: 0.7rem; height: 0.25rem;line-height: 0.25rem; text-align: center;background: #07556F; border: 1px solid #66FBF9; box-shadow: 0px 0.02rem 0.07rem 0px rgba(0, 28, 61, 0.5);
|
||||
border-radius: 0.05rem; margin: 0 auto; margin-bottom: 0.2rem; margin-left: 0.2rem; float: right}
|
||||
.territoryBox_1{ margin: 0.2rem 0.5rem 0.28rem 0.5rem!important;}
|
||||
.territoryBox_1 .number1{font-size: 0.28rem;color: #03F7FC; padding: 0.1rem 0.2rem;line-height: 0.4rem;}
|
||||
.territoryBox_1 .number2{font-size: 0.24rem; padding: 0 .1rem .1rem .2rem;line-height: 0.4rem;}
|
||||
.territoryBox_1 .number2 label{font-size: 0.3rem;}
|
||||
#relationship{width:60%; margin: 0 auto; text-align: center; }
|
||||
#relationship ul li{ margin: 0.2rem; padding: 0.2rem 0.2rem 0.2rem 0.2rem;
|
||||
box-shadow: 0 0 4px 1px rgba(121, 121, 121, 0.3);
|
||||
border-radius: 0.08rem;
|
||||
text-align: center;
|
||||
width:1.4rem;
|
||||
display: inline-block;
|
||||
font-size: 0.22rem;
|
||||
background: #07556F;
|
||||
border: 1px solid #66FBF9;
|
||||
}
|
||||
.guanxiline{
|
||||
position: absolute; border-top:1px solid #38B9BB;margin-top: 0.2rem;margin-left: 2.5%;
|
||||
}
|
||||
.guanxiline:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 6px solid transparent;
|
||||
border-left-color: #38B9BB;
|
||||
left: 100%;
|
||||
margin-left: 0px;
|
||||
bottom: -6px;
|
||||
}
|
||||
.guanxideashline{
|
||||
position: absolute; border-top:1px dashed #38B9BB;margin-top: 0.2rem;margin-left:2.5%;
|
||||
}
|
||||
.guanxideashline:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 6px solid transparent;
|
||||
border-left-color: #38B9BB;
|
||||
left: 100%;
|
||||
margin-left: 0px;
|
||||
bottom: -6px;
|
||||
}
|
||||
@ -0,0 +1,44 @@
|
||||
.tree__container, #from_tree__container__step__card__first, .tree__container__branch {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.tree__container__step__card {
|
||||
text-align: center;
|
||||
margin: 0.2rem;
|
||||
height: 1.4rem;
|
||||
}
|
||||
|
||||
.tree__container__step__card p {
|
||||
padding: 0.2rem 0.2rem 0.2rem 0.2rem;
|
||||
box-shadow: 0 0 4px 1px rgba(121, 121, 121, 0.3);
|
||||
border-radius: 0.08rem;
|
||||
text-align: center;
|
||||
width: 1.5rem;
|
||||
display: inline-block;
|
||||
font-size: 0.22rem;
|
||||
background: #07556F;
|
||||
border: 1px solid #66FBF9;
|
||||
}
|
||||
|
||||
#tree__svg-container {
|
||||
z-index: -1;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.tree__container__step {
|
||||
flex: 1 1 0px;
|
||||
width: auto;
|
||||
padding: 0;
|
||||
|
||||
}
|
||||
|
||||
.tree__container__step__card__p {
|
||||
cursor: pointer;
|
||||
transition: transform .2s ease;
|
||||
}
|
||||
|
||||
.tree__container__step__card__p:hover {
|
||||
transform: translateX(3px);
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
[
|
||||
{
|
||||
"name": "供应",
|
||||
"value": 5555
|
||||
},
|
||||
{
|
||||
"name": "人力",
|
||||
"value": 4444
|
||||
},
|
||||
{
|
||||
"name": "财力",
|
||||
"value": 3333
|
||||
},
|
||||
{
|
||||
"name": "工程",
|
||||
"value": 2222
|
||||
},
|
||||
{
|
||||
"name": "乳院",
|
||||
"value": 1111
|
||||
}
|
||||
]
|
||||
@ -0,0 +1,187 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport"
|
||||
content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
||||
<title>伊利流程发布平台</title>
|
||||
<meta http-equiv="Access-Control-Allow-Origin" content="*" />
|
||||
<link href="css/bstable/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
|
||||
<link href="css/bstable/css/bootstrap-table.css" rel="stylesheet" type="text/css" />
|
||||
<link rel="stylesheet" href="css/comon0.css">
|
||||
<link rel="stylesheet" href="css/style.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="loading">
|
||||
<div class="loadbox"> <img src="images/loading.gif"> 页面加载中... </div>
|
||||
</div>
|
||||
<div class="head">
|
||||
<h1>流程发布平台</h1>
|
||||
<div class="index_nav">
|
||||
<ul style="height: 30px; margin-bottom: 0px;">
|
||||
<li class="l_left total_chose_pl "><a href="index.html">流程管理看板</a></li>
|
||||
<li class="l_left total_chose_pl"><a href="fileboard.html">文件管理看板</a></li>
|
||||
<li class="r_right total_chose_pl "><a href="territory.html">领域流程绩效看板</a></li>
|
||||
<li class="r_right total_chose_pl nav_active">流程运行看板</li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div id="header"></div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<div class="boxall mt30">
|
||||
<div class="alltitle">目录 <img src="images/daohang.png"> </div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle"></span>
|
||||
<select class="year_chose">
|
||||
<option>JT集团</option>
|
||||
</select>
|
||||
<div class="btnblock">
|
||||
<span class="btn4"><label></label>不达标</span>
|
||||
<span class="btn3"><label></label>达标警示</span>
|
||||
<span class="btn2"><label></label>运行良好</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sycm">
|
||||
<div class="dataAllBorder02 over_hide dataAllBorder20 dataAllBorder22" id="over_hide">
|
||||
<table class="table" id="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<div class="boxall">
|
||||
<div class="alltitle" style="margin-right: 5%">目录 <img src="images/daohang.png"> </div>
|
||||
<div class="total_chose_box">
|
||||
<div class="navtab">
|
||||
<ul id="navtab" class="navli">
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btnblock">
|
||||
<span class="btn1">查看绩效清单</span>
|
||||
<span class="btn4"><label></label>不达标</span>
|
||||
<span class="btn3"><label></label>达标警示</span>
|
||||
<span class="btn2"><label></label>运行良好</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<div class="dataAllBorder02 over_hide dataAllBorder20 dataAllBorder22">
|
||||
<table class="table" id="table2">
|
||||
<thead>
|
||||
<tr>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<div class="boxall ">
|
||||
<div class="alltitle">目录 <img src="images/daohang.png"> </div>
|
||||
<div class="sycm">
|
||||
<div class="dataAllBorder02 over_hide dataAllBorder20 dataAllBorder22">
|
||||
<table class="table" id="table3">
|
||||
<thead>
|
||||
<tr>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<div class="boxall ">
|
||||
<div class="alltitle">单个指标数据展示 <img src="images/daohang.png"> </div>
|
||||
<div class="total_chose_box">
|
||||
<div class="btnblock">
|
||||
<span class="btn4"><label></label>不达标</span>
|
||||
<span class="btn3"><label></label>达标警示</span>
|
||||
<span class="btn2"><label></label>运行良好</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<div class="growthTitle">人均营收增长率</div>
|
||||
<div class="growthtishi">
|
||||
<div class="leftline"><span></span>基线值</div>
|
||||
<div class="rightline"><span></span>目标值</div>
|
||||
</div>
|
||||
<div class="growthCharts" id="growthCharts"></div>
|
||||
<!--<div class="organizational">
|
||||
<span class="title">
|
||||
<label>上游指标1</label>
|
||||
<b class="style1"></b>
|
||||
</span>
|
||||
<div class="one"></div>
|
||||
<span class="title">
|
||||
<label>人均营收增长率</label>
|
||||
<b class="style1"></b>
|
||||
</span>
|
||||
<div class="two"></div>
|
||||
<div class="title1">
|
||||
<span class="title3">
|
||||
<label>分解指标1</label>
|
||||
<b class="style2"></b>
|
||||
</span>
|
||||
<span class="title3">
|
||||
<label>分解指标2</label>
|
||||
<b class="style2"></b>
|
||||
</span>
|
||||
</div>
|
||||
<div class="three"></div>
|
||||
<div class="title2">
|
||||
<span class="title3">
|
||||
<label>分解指标1.1</label>
|
||||
<b class="style2"></b>
|
||||
</span>
|
||||
<span class="title3">
|
||||
<label>分解指标1.2</label>
|
||||
<b class="style2"></b>
|
||||
</span>
|
||||
<span class="title3">
|
||||
<label>分解指标1.3</label>
|
||||
<b class="style2"></b>
|
||||
</span>
|
||||
</div>
|
||||
</div>-->
|
||||
<div class="">
|
||||
<div id="organizational" style="width: 100%; height: 500px"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="back"></div>
|
||||
<script type="text/javascript" src="js/jquery.js"></script>
|
||||
<script type="text/javascript" src="js/js.js"></script>
|
||||
<script type="text/javascript" src="js/echarts.min.js"></script>
|
||||
<script type="text/javascript" src="js/domainprocessNeed/domainprocess.js"></script>
|
||||
<script type="text/javascript" src="js/domainprocessNeed/growthCharts.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
growthCharts.resize()
|
||||
})
|
||||
window.addEventListener("resize", function () {
|
||||
growthCharts.resize()
|
||||
});
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
$(".loading").fadeOut()
|
||||
growthChartsinto();
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,278 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport"
|
||||
content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
||||
<title>伊利流程发布平台</title>
|
||||
<link rel="stylesheet" href="css/comon0.css" type="text/css" />
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="loading">
|
||||
<div class="loadbox"> <img src="images/loading.gif"> 页面加载中... </div>
|
||||
</div>
|
||||
|
||||
<div class="head">
|
||||
<h1>流程管理看板</h1>
|
||||
<div class="index_nav">
|
||||
<ul style="height: 30px; margin-bottom: 0px;">
|
||||
<li class="l_left total_chose_pl"><a href="index.html">流程管理看板</a></li>
|
||||
<li class="l_left total_chose_pl nav_active">文件管理看板</li>
|
||||
<li class="r_right total_chose_pl"><a href="territory.html">领域流程绩效看板</a></li>
|
||||
<li class="r_right total_chose_pl"><a href="domainprocess.html">流程运行看板</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div id="header"></div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<div class="mapContent">
|
||||
<div class="numLeft">
|
||||
<div class="fileboxall wid60" style="margin-top: 24%;">
|
||||
<div class="fileboxcont">
|
||||
流程文件
|
||||
<span id="file_1"></span>
|
||||
</div>
|
||||
<div class="fileboxfoot"></div>
|
||||
</div>
|
||||
<div class="fileboxall wid50" style="margin-top: 35%;margin-left: 40%;">
|
||||
<div class="fileboxcont">
|
||||
表单/模板
|
||||
<span id="file_2"></span>
|
||||
</div>
|
||||
<div class="fileboxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="map">
|
||||
<div class="map1"><img src="images/lbx.png"></div>
|
||||
<div class="map2"><img src="images/jt.png"></div>
|
||||
<div class="map3"><img src="images/map.png"></div>
|
||||
<div class="map5"><img src="images/qiu.png"></div>
|
||||
<div class="map4">流程制度类<br/>文件总数
|
||||
<span id="file_all"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="numRight">
|
||||
<div class="fileboxall wid60" style="margin-top: 24%; margin-left: 40%;">
|
||||
<div class="fileboxcont">
|
||||
制度文件
|
||||
<span id="file_3"></span>
|
||||
</div>
|
||||
<div class="fileboxfoot"></div>
|
||||
</div>
|
||||
<div class="fileboxall wid50" style="margin-top: 35%;margin-right: 40%;">
|
||||
<div class="fileboxcont">
|
||||
操作指导
|
||||
<span id="file_4"></span>
|
||||
</div>
|
||||
<div class="fileboxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="boxall">
|
||||
<div class="alltitle mr0">制度管理看板 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">文件类型</span>
|
||||
<select class="year_chose w15" id="filetype">
|
||||
<option>流程制度</option>
|
||||
</select>
|
||||
<span class="chose_tltle">发布单位</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="sendissued" placeholder="全部" >
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="category" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycm wid90">
|
||||
<div class="data1">
|
||||
<div class="bor">
|
||||
<div class="qiu"></div>
|
||||
</div>
|
||||
<p id="published"></p>
|
||||
<span>已发布</span>
|
||||
</div>
|
||||
<div class="data2">
|
||||
<div class="bor">
|
||||
<div class="qiu"></div>
|
||||
</div>
|
||||
<p id="approval"></p>
|
||||
<span>审批中</span>
|
||||
</div>
|
||||
<div class="data3">
|
||||
<div class="bor">
|
||||
<div class="qiu"></div>
|
||||
</div>
|
||||
<p id="expired"></p>
|
||||
<span>已失效</span>
|
||||
</div>
|
||||
<div class="data4">
|
||||
<div class="bor">
|
||||
<div class="qiu"></div>
|
||||
</div>
|
||||
<p><label id="total"></label><em id="dw"></em></p>
|
||||
<span>查阅总数</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="boxall">
|
||||
<div class="alltitle">文件管理看板 <img src="images/daohang.png"></div>
|
||||
<div class="sycm" style="padding-top: 0.3rem">
|
||||
<div class="quote_bottom">
|
||||
<div class="quote_left">
|
||||
<div class="biaoge_paiIn" style="width: 80%">
|
||||
<h1>事业部文件数量</h1>
|
||||
<ul id="BDFileCount">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="quote_right">
|
||||
<div class="biaoge_paiIn3" style="width: 80%;margin-left: 13%;">
|
||||
<h1>职能部门文件数量</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDFileCount">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 100%;clear: both;overflow:hidden;">
|
||||
<div class="quote_left quotePosition">
|
||||
<div class="title">事业部文件年度更新率</div>
|
||||
<div class="danwei">数量</div>
|
||||
<div class="quoteCheck1" id="quoteqsjkdwEcharts"></div>
|
||||
<div class="quoteTime1">发布时间</div>
|
||||
</div>
|
||||
<div class="quote_right quotePosition">
|
||||
<div class="title">职能部门文件年度更新率</div>
|
||||
<div class="danwei">数量</div>
|
||||
<div class="quoteCheck2" id="quoteqsjkdwEcharts2"></div>
|
||||
<div class="quoteTime2">发布时间</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="quote_yearupdate" >
|
||||
<div class="title">事业部文件年度更新情况</div>
|
||||
<div class="danwei">数量</div>
|
||||
<div class="data_chart" style=" height: 5rem" id="yearupdateChart"></div>
|
||||
</div>
|
||||
<div class="quote_yearupdate" >
|
||||
<div class="title">职能部门文件年度更新情况</div>
|
||||
<div class="danwei">数量</div>
|
||||
<div class="data_chart" style=" height: 6rem" id="canonlyupdateChart"></div>
|
||||
</div>
|
||||
<div class="data_tit1">文件发布时间分布</div>
|
||||
<div class="wid93">
|
||||
<div class="filedanwei_left">数量</div>
|
||||
<div class="total_chose_box filedanwei_right">
|
||||
<span class="chose_tltle">发布单位</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="filesendissued" placeholder="全部" >
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="filecategory" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 5rem; clear:both; overflow: hidden ">
|
||||
<div class="data_chart" id="filebook"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<div class="boxall">
|
||||
<div class="alltitle" style="margin-right: 0">引用情况分析 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">发布单位</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="yysendissued" placeholder="全部" >
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="yycategory" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
<span class="chose_tltle">文件类型</span>
|
||||
<select class="year_chose w15" id="yyfiletype">
|
||||
<option>流程制度</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<div class="quote" id="quoteChart"></div>
|
||||
<div class="quote_line"></div>
|
||||
<div class="quote_paiIn">
|
||||
<ul>
|
||||
<li>
|
||||
<div class="liIn">
|
||||
<div class="liIn_left"><span class="zi">平均被引用次数</span></div>
|
||||
<div class="liIn_line"><div class="line_lineIn" id="yyfilenum1"></div></div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="liIn">
|
||||
<div class="liIn_left"><span class="zi">本月新增引用次数</span></div>
|
||||
<div class="liIn_line"><div class="line_lineIn" id="yyfilenum2"></div></div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="back"></div>
|
||||
<script type="text/javascript" src="js/jquery.js"></script>
|
||||
<script type="text/javascript" src="js/js.js"></script>
|
||||
<script type="text/javascript" src="js/echarts.min.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.waypoints.min.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.countup.min.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/comboTreePlugin.js"></script>
|
||||
<script type="text/javascript" src="js/fileboardNeed/fileboard.js"></script>
|
||||
<script type="text/javascript" src="js/fileboardNeed/yearupdate.js"></script>
|
||||
<script language="JavaScript" src="js/fileboardNeed/filebook.js"></script>
|
||||
<script language="JavaScript" src="js/fileboardNeed/quote.js"></script>
|
||||
<script language="JavaScript" src="js/fileboardNeed/quoteqsjkdw.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
$(".loading").fadeOut()
|
||||
$('#header').load('header.html')
|
||||
})
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
filebookChart.resize();
|
||||
quoteChart.resize();
|
||||
quoteqsjkdw.resize()
|
||||
quoteqsjkdw2.resize()
|
||||
yearupdateChart.resize()
|
||||
canonlyupdateChart.resize()
|
||||
})
|
||||
window.addEventListener("resize", function () {
|
||||
filebookChart.resize();
|
||||
quoteChart.resize();
|
||||
quoteqsjkdw.resize()
|
||||
quoteqsjkdw2.resize()
|
||||
yearupdateChart.resize()
|
||||
canonlyupdateChart.resize()
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,17 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>header</title>
|
||||
<style>
|
||||
.header{color: #FFFFFF; font-size: 0.18rem; text-align: right; padding: 0.2rem;}
|
||||
.header span{color: #FFFFFF; margin-left: 0.2rem; cursor: pointer; }
|
||||
</style>
|
||||
<script>
|
||||
var sid = '<#sid>';
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- <div class="header">您好 <span>退出</span></div> -->
|
||||
</body>
|
||||
</html>
|
||||
|
After Width: | Height: | Size: 227 B |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.3 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 223 B |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 933 B |
|
After Width: | Height: | Size: 184 B |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 72 KiB |
|
After Width: | Height: | Size: 70 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 701 B |
|
After Width: | Height: | Size: 591 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 355 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
After Width: | Height: | Size: 10 KiB |
@ -0,0 +1,458 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport"
|
||||
content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
||||
<title>伊利流程发布平台</title>
|
||||
<meta http-equiv="Access-Control-Allow-Origin" content="*" />
|
||||
<link href="css/bstable/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
|
||||
<link href="css/bstable/css/bootstrap-table.css" rel="stylesheet" type="text/css" />
|
||||
<link rel="stylesheet" href="css/comon0.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="loading">
|
||||
<div class="loadbox"> <img src="images/loading.gif"> 页面加载中... </div>
|
||||
</div>
|
||||
<div class="head">
|
||||
<h1>流程管理看板</h1>
|
||||
<div class="index_nav">
|
||||
<ul style="height: 30px; margin-bottom: 0px;">
|
||||
<li class="l_left total_chose_pl nav_active">流程管理看板</li>
|
||||
<li class="l_left total_chose_pl"><a href="fileboard.html">文件管理看板</a></li>
|
||||
<li class="r_right total_chose_pl"><a href="territory.html">领域流程绩效看板</a></li>
|
||||
<li class="r_right total_chose_pl"><a href="domainprocess.html">流程运行看板</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div id="header"></div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<!--头部数据-->
|
||||
<div class="nav_top1">
|
||||
<div class="analysis">流程</div>
|
||||
<ul class="data_show_box" id="bpmn2TotalNum">
|
||||
</ul>
|
||||
<div class="analysisSize">个</div>
|
||||
<div class="analysis">制度</div>
|
||||
<ul class="data_show_box" id="policyTotalNum">
|
||||
</ul>
|
||||
<div class="analysisSize">个</div>
|
||||
<div class="analysis">覆盖率</div>
|
||||
<div class="analysisNum counter" id="coverage"></div>
|
||||
<div class="analysisSize">%</div>
|
||||
</div>
|
||||
<!--目录表格-->
|
||||
<div class="boxall">
|
||||
<div class="alltitle">目录 <img src="images/daohang.png"> </div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle"></span>
|
||||
<select class="year_chose firstterms" id="terms1" style="margin-left: 1.1rem">
|
||||
</select>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<div class="dataAllBorder02 over_hide dataAllBorder20 dataAllBorder22" id="over_hide">
|
||||
<table class="table" id="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<!--四个环形图-->
|
||||
<div class="boxall">
|
||||
<div class="alltitle" style="margin-right: 5%">流程连接度分析 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">所属单位</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="radio1" placeholder="全部" >
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="radio2" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<div class="sy" id="echarts1"></div>
|
||||
<div class="sy " id="echarts2"></div>
|
||||
<div class="sy " id="echarts3"></div>
|
||||
<div class="sy " id="echarts4"></div>
|
||||
<div class="pie">
|
||||
<ul>
|
||||
<li class="col1">有前后置</li>
|
||||
<li class="col2">只有前置</li>
|
||||
<li class="col3">只有后置</li>
|
||||
<li class="col4">无前后置</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="biaoge_paiIn">
|
||||
<div class="sycm_title1">有前后置流程</div>
|
||||
<h1>各组织流程连接度—事业部</h1>
|
||||
<ul id="li_bdy">
|
||||
</ul>
|
||||
</div>
|
||||
<div class="biaoge_paiIn1">
|
||||
<div class="sycm_title1">无前后置流程</div>
|
||||
<h1>各组织流程连接度—事业部</h1>
|
||||
<ul id="li_bdn">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="biaoge_paiIn">
|
||||
<div class="sycm_title1">有前后置流程</div>
|
||||
<h1>各组织流程连接度—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="li_fdy">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn1">
|
||||
<div class="sycm_title1">无前后置流程</div>
|
||||
<h1>各组织流程连接度—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="li_fdn">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!--流程评论 环形图-->
|
||||
<div style="height:7.2rem;margin:0rem .4rem .3rem .4rem; box-sizing: border-box" class="boxall">
|
||||
<div class="alltitle1">流程评论 <img src="images/daohang.png"></div>
|
||||
<div class="chart-title">流程评论数量Top5
|
||||
<div class="chart-span">单位:个</div>
|
||||
</div>
|
||||
<div id="container" >
|
||||
<div class="chart-div" id="block4">
|
||||
<div class="chart-loader">
|
||||
<div class="loader"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycmright">
|
||||
<div class="biaoge_paiIn2">
|
||||
<h1>各组织流程评论数量</h1>
|
||||
<div class="scroll" id="plan">
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<!--雷达图-->
|
||||
<div class="mainbox boxall">
|
||||
<div class="alltitle">流程成熟度 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<select class="year_chose" id="coverage-field">
|
||||
</select>
|
||||
<span class="chose_tltle">评估周期</span>
|
||||
<select class="year_chose" id="coverage-evaluation">
|
||||
</select>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="radar">
|
||||
<div class="tablenumber">
|
||||
<ul>
|
||||
<li>成熟度等级分:<label id="csnum"></label></li>
|
||||
<li>综合评估得分:<label id="zhnum"></label></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="coverageId" class="main_bottom_b_con"></div>
|
||||
</div>
|
||||
<div class="coverTable">
|
||||
<div class="dataAllBorder02 over_hide dataAllBorder21">
|
||||
<table class="table" style="width: 96%">
|
||||
<thead>
|
||||
<tr>
|
||||
<td class="titlebgc" colspan="2">评估项</td>
|
||||
<td class="titlebgc" rowspan="2" width="15%">指标得分</td>
|
||||
<td class="titlebgc" rowspan="2">得分证据</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="titlebgc tabletextLeft" width="15%">指标</td>
|
||||
<td class="titlebgc" width="15%">参考要素</td>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<div style="height: 6.8rem;overflow-y: auto">
|
||||
<table class="table table_content" style="width: 97%">
|
||||
<tbody id="coverageTable">
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="tablenumber1">
|
||||
评估时间:<span></span><br/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div class="coverTitle">领域成熟度情况</div>
|
||||
<div class="domainmaturity">
|
||||
<div class="total_chose_box1">
|
||||
<span class="chose_tltle">评估维度</span>
|
||||
<select class="year_chose" id="evaluation">
|
||||
|
||||
</select>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<div class="qsjk-box" id="qsjkdwEcharts"></div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<!--矩形树图-->
|
||||
<div class="mainbox">
|
||||
<div class="boxall" style="height: 6rem;">
|
||||
<div class="alltitle">流程系统分布图 <img src="images/daohang.png"></div>
|
||||
<div class="sycm" style="height: 5rem;">
|
||||
<div id="treeChart" style="height: 5rem"></div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!--静态原型图-->
|
||||
<div class="mainbox">
|
||||
<div class="boxall">
|
||||
<div class="alltitle">流程节点分析 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="category" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
<span class="chose_tltle">发布单位</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="sendissued" placeholder="全部" >
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="sycm">
|
||||
<div class="circlemain">
|
||||
<div class="circle_left">
|
||||
<label>节点总数</label>
|
||||
<span id="nodeTotalNum"></span>
|
||||
</div>
|
||||
<div class="circle_right">
|
||||
<div class="childleft">
|
||||
<div class="left1">
|
||||
<label>审批类节点</label>
|
||||
<span id="approvalRrationate"><i></i>%</span>
|
||||
</div>
|
||||
<div class="right1">
|
||||
<label>审批类节点总数</label>
|
||||
<span id="approvalNodeNum"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="childright">
|
||||
<div class="left1">
|
||||
<label>操作类节点</label>
|
||||
<span id="operationRate"><i></i>%</span>
|
||||
</div>
|
||||
<div class="right1">
|
||||
<label>操作类节点总数</label>
|
||||
<span id="operationNodeNum"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="left2">
|
||||
<div class="text">线上审批</div>
|
||||
<div class="progress">
|
||||
<div class="progress-bar" id="onlineRate" role="progressbar" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100"><label></label>%</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="right2">
|
||||
<div class="text">信息系统</div>
|
||||
<div class="progress">
|
||||
<div class="progress-bar" id="itsysRate" role="progressbar" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100" ><label></label>%</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<div class="boxall">
|
||||
<div class="alltitle">审批类节点数量 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="node-field111" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="sycm">
|
||||
<div class="node_paiIn">
|
||||
<h1>审批节点数量—事业部</h1>
|
||||
<div class="scroll">
|
||||
<ul id="BDAcountfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="node_paiIn">
|
||||
<h1>审批节点数量—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDAcountfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn">
|
||||
<h1>审批节点占比—事业部</h1>
|
||||
<div class="scroll">
|
||||
<ul id="BDAratefile"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn1">
|
||||
<h1>审批节点占比—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDAratefile" >
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="biaoge_paiIn">
|
||||
<h1>审批节点线上化占比—事业部</h1>
|
||||
<div class="scroll">
|
||||
<ul id="BDAolfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn1">
|
||||
<h1>审批节点线上化占比—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDAolfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<div class="boxall">
|
||||
<div class="alltitle">操作类节点数量 <img src="images/daohang.png"></div>
|
||||
<div class="total_chose_box">
|
||||
<span class="chose_tltle">所属领域</span>
|
||||
<div class="treePickerWrapper">
|
||||
<input type="text" id="node-field222" placeholder="全部"/>
|
||||
<button class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="sycm">
|
||||
<div class="node_paiIn">
|
||||
<h1>操作节点数量—事业部</h1>
|
||||
<div class="scroll">
|
||||
<ul id="BDOcountfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="node_paiIn">
|
||||
<h1>操作节点数量—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDOcountfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn">
|
||||
<h1>操作节点占比—事业部</h1>
|
||||
<div class="scroll">
|
||||
<ul id="BDOratefile"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn1">
|
||||
<h1>操作节点占比—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDOratefile" >
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<div class="biaoge_paiIn">
|
||||
<h1>操作节点线上化占比—事业部</h1>
|
||||
<div class="scroll">
|
||||
<ul id="BDOolfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="biaoge_paiIn1">
|
||||
<h1>操作节点线上化占比—职能部门</h1>
|
||||
<div class="scroll">
|
||||
<ul id="FDOolfile">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="back"></div>
|
||||
<script type="text/javascript" src="js/jquery.js"></script>
|
||||
<script type="text/javascript" src="js/js.js"></script>
|
||||
<script type="text/javascript" src="js/echarts.min.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/fourChart.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/indexboard.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/index.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/comboTreePlugin.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/echarts-block4.js"></script>
|
||||
<script type="text/javascript" src="js/jcarousellite.js"></script>
|
||||
<script type="text/javascript" src="js/indexNeed/operation.js"></script>
|
||||
<!--雷达图-->
|
||||
<script type="text/javascript" src="js/indexNeed/coverage.js"></script>
|
||||
<!--柱形占比图-->
|
||||
<script type="text/javascript" src="js/indexNeed/qsjkdw.js"></script>
|
||||
<!--矩形树图-->
|
||||
<script type="text/javascript" src="js/indexNeed/tree.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
block4.resize();
|
||||
myChart.resize();
|
||||
myChart1.resize();
|
||||
myChart2.resize();
|
||||
myChart3.resize();
|
||||
myChart4.resize();
|
||||
radarchart.resize();
|
||||
qsjkdw.resize();
|
||||
})
|
||||
window.addEventListener("resize", function () {
|
||||
block4.resize();
|
||||
myChart.resize();
|
||||
myChart1.resize();
|
||||
myChart2.resize();
|
||||
myChart3.resize();
|
||||
myChart4.resize();
|
||||
radarchart.resize();
|
||||
qsjkdw.resize();
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="js/jquery.waypoints.min.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.countup.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
$(".loading").fadeOut()
|
||||
$('#header').load('header.html')
|
||||
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,539 @@
|
||||
$(function(){
|
||||
tabledata();
|
||||
navtag();
|
||||
tabledata2();
|
||||
tabledata3();
|
||||
});
|
||||
//第一个表格
|
||||
function tabledata(){
|
||||
let data= {
|
||||
//第一行表头
|
||||
headtop:['','','绩效指标'],
|
||||
//下面表格
|
||||
content: [
|
||||
{
|
||||
leftname:'战略类流程', //战略类流程
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:'1.0 战略规划到执行'
|
||||
}
|
||||
],
|
||||
num1:[ //第三列
|
||||
{
|
||||
name:'10'
|
||||
}
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:'运营类流程', //运营类流程
|
||||
secondcont:[
|
||||
{
|
||||
name:'2.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'3.0 产品与技术研发'
|
||||
},
|
||||
{
|
||||
name:'4.0 采购管理'
|
||||
},
|
||||
{
|
||||
name:'5.0 供应链管理'
|
||||
},
|
||||
{
|
||||
name:'6.0 供应链管理'
|
||||
},
|
||||
{
|
||||
name:'7.0 供应链管理'
|
||||
}
|
||||
],
|
||||
num1:[
|
||||
{
|
||||
name:'10'
|
||||
},
|
||||
{
|
||||
name:'10'
|
||||
},{
|
||||
name:'10'
|
||||
},{
|
||||
name:'10'
|
||||
},{
|
||||
name:'10'
|
||||
},{
|
||||
name:'10'
|
||||
}
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:'支持类流程', //支持类流程
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:'8.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'9.0 战略规划到执行'
|
||||
}
|
||||
],
|
||||
num1:[ //第三列
|
||||
{
|
||||
name:'10'
|
||||
},
|
||||
{
|
||||
name:'10'
|
||||
}
|
||||
],
|
||||
},
|
||||
]
|
||||
};
|
||||
let strTh = '',strTr='';
|
||||
for(let i=0;i<data.headtop.length;i++){
|
||||
strTh+='<th class="titlebgc titlecolor">'+data.headtop[i]+'</th>'
|
||||
}
|
||||
$('#table1 thead tr').html(strTh)
|
||||
for(let j=0;j<data.content.length;j++){
|
||||
let strTd1='<td class="titlebgc titlecolor">\n' +
|
||||
' <span>'+data.content[j].leftname+'</span>\n' +
|
||||
' </td>';
|
||||
let strtitle='',strnum1='';
|
||||
for(let a=0;a<data.content[j].secondcont.length;a++){
|
||||
strtitle+='<div>'+data.content[j].secondcont[a].name+'<label></label></div>'
|
||||
}
|
||||
let firstTd = '<td>'+strtitle+'</td>'
|
||||
for(let a=0;a<data.content[j].num1.length;a++){
|
||||
strnum1+='<div>'+data.content[j].num1[a].name+'</div>'
|
||||
}
|
||||
let Td1 = '<td class="center">'+strnum1+'</td>'
|
||||
strTr+='<tr>'+strTd1+firstTd+Td1+'</tr>'
|
||||
}
|
||||
$('#table1 tbody').html(strTr)
|
||||
}
|
||||
//选项卡
|
||||
function navtag(){
|
||||
var data=[
|
||||
{
|
||||
name:'JT集团'
|
||||
},
|
||||
{
|
||||
name:'液奶'
|
||||
},
|
||||
{
|
||||
name:'酸奶'
|
||||
},
|
||||
{
|
||||
name:'奶粉'
|
||||
},
|
||||
{
|
||||
name:'冷饮'
|
||||
},
|
||||
{
|
||||
name:'奶酪'
|
||||
},
|
||||
{
|
||||
name:'国际业务'
|
||||
},
|
||||
]
|
||||
let str='';
|
||||
for (var i=0;i<data.length;i++){
|
||||
if(i==0){
|
||||
str+='<li class="isActive">'+data[i].name+'<span></span></li>'
|
||||
}else{
|
||||
str+='<li>'+data[i].name+'<span></span></li>'
|
||||
}
|
||||
}
|
||||
$('#navtab').html(str)
|
||||
$('#navtab li').each(function (e){
|
||||
$('#navtab li:eq('+e+')').click(function (){
|
||||
$(this).siblings().removeClass('isActive')
|
||||
$(this).addClass('isActive')
|
||||
|
||||
})
|
||||
})
|
||||
};
|
||||
//第二个表格
|
||||
function tabledata2(){
|
||||
let data= {
|
||||
content: [
|
||||
{
|
||||
leftname:'L1流程绩效指标',
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:['3.0 产品与技术研发'],
|
||||
list:['新产品收入占比','规模品牌数量','首发产品数量','利润率','重点品牌品牌力','人均营收增长率'],
|
||||
list1:[],
|
||||
list2:[],
|
||||
list3:[]
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:'L2流程绩效指标',
|
||||
secondcont:[
|
||||
{
|
||||
name:['3.0 产品与技术研发','3.0 产品与技术研发','3.0 产品与技术研发'],
|
||||
list:['新产品收入占比','规模品牌数量','首发产品数量','利润率','重点品牌品牌力','人均营收增长率',''],
|
||||
list1:[],
|
||||
list2:[],
|
||||
list3:[]
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:'L3流程绩效指标',
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:['3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求','3.1.1管理研发需求'],
|
||||
list:['需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','3.1.1知识产权'],
|
||||
list1:['需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','3.1.1知识产权'],
|
||||
list2:['需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','需求转化成功率','3.1.1知识产权']
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
leftname:'关键流程清单',
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:[],
|
||||
list:[],
|
||||
list1:[],
|
||||
list2:[]
|
||||
}
|
||||
]
|
||||
},
|
||||
],
|
||||
yunxing:[1,2,3],//运行状态
|
||||
};
|
||||
let strTr='';
|
||||
for(let j=0;j<data.content.length;j++){
|
||||
let strTd1='<td class="titlebgc titlecolor titlewidth">\n' +
|
||||
' <span>'+data.content[j].leftname+'</span>\n' +
|
||||
' </td>';
|
||||
let strtitle='',strtdfl1='',strtdfl2='',strtdfl3='';
|
||||
for(let a=0;a<data.content[j].secondcont.length;a++){
|
||||
for(let z=0;z<data.content[j].secondcont[a].name.length;z++){
|
||||
strtitle+='<li class="titlelibgc" style=width:'+(100/data.content[j].secondcont[a].name.length)+'%>'+data.content[j].secondcont[a].name[z]+'</li>'
|
||||
}
|
||||
for(let f=0;f<data.content[j].secondcont[a].list.length;f++){
|
||||
if((f+1)==data.content[j].secondcont[a].list.length && j==2){
|
||||
strtdfl1+='<li class="titlelibgc1 last" style=width:'+(100/data.content[j].secondcont[a].list.length)+'%>'+data.content[j].secondcont[a].list[f]+'<label></label></li>'
|
||||
}else{
|
||||
strtdfl1+='<li class="titlelibgc1" style=width:'+(100/data.content[j].secondcont[a].list.length)+'%>'+data.content[j].secondcont[a].list[f]+'<label></label></li>'
|
||||
}
|
||||
}
|
||||
for(let l=0;l<data.content[j].secondcont[a].list1.length;l++){
|
||||
if(l==0){
|
||||
strtdfl2+='<li class="titlelibgc1" style=border:0;width:'+(100/data.content[j].secondcont[a].list1.length)+'%>'+data.content[j].secondcont[a].list1[l]+'<label></label></li>'
|
||||
}else if((l+1)==data.content[j].secondcont[a].list1.length && j==2) {
|
||||
strtdfl2+='<li class="titlelibgc1 last" style=width:'+(100/data.content[j].secondcont[a].list1.length)+'%>'+data.content[j].secondcont[a].list1[l]+'<label></label></li>'
|
||||
}else{
|
||||
strtdfl2+='<li class="titlelibgc1" style=width:'+(100/data.content[j].secondcont[a].list1.length)+'%>'+data.content[j].secondcont[a].list1[l]+'<label></label></li>'
|
||||
}
|
||||
}
|
||||
for(let m=0;m<data.content[j].secondcont[a].list2.length;m++){
|
||||
if(m==0){
|
||||
strtdfl3+='<li class="titlelibgc1" style=border:0;width:'+(100/data.content[j].secondcont[a].list2.length)+'%>'+data.content[j].secondcont[a].list2[m]+'<label></label></li>'
|
||||
}else if((m+1)==data.content[j].secondcont[a].list2.length && j==2) {
|
||||
strtdfl3+='<li class="titlelibgc1 last" style=width:'+(100/data.content[j].secondcont[a].list2.length)+'%>'+data.content[j].secondcont[a].list2[m]+'<label></label></li>'
|
||||
}else{
|
||||
strtdfl3+='<li class="titlelibgc1" style=width:'+(100/data.content[j].secondcont[a].list2.length)+'%>'+data.content[j].secondcont[a].list2[m]+'<label></label></li>'
|
||||
}
|
||||
}
|
||||
}
|
||||
let firstTd = '<td><ul class="domain_title">'+strtitle+'</ul><ul class="domain_li">'+strtdfl1+strtdfl2+strtdfl3+'</ul></td>'
|
||||
strTr+='<tr>'+strTd1+firstTd+'</tr>'
|
||||
}
|
||||
$('#table2 tbody').html(strTr)
|
||||
for(let i=0;i<data.yunxing.length;i++){
|
||||
if(data.yunxing[i]==1){
|
||||
$('#table2 .domain_li:first li:eq('+i+') label').addClass('style1')
|
||||
}
|
||||
if(data.yunxing[i]==2){
|
||||
$('#table2 .domain_li:first li:eq('+i+') label').addClass('style1');
|
||||
}
|
||||
if(data.yunxing[i]==3){
|
||||
$('#table2 .domain_li:first li:eq('+i+') label').addClass('style1');
|
||||
}
|
||||
}
|
||||
}
|
||||
//第三个表格
|
||||
function tabledata3(){
|
||||
let data= {
|
||||
//第一行表头
|
||||
headtop:['L1流程架构','L2流程架构','L3流程架构','流程绩效指标','衡量单位','跟踪频率','计算公式','数据来源'],
|
||||
//下面表格
|
||||
content: [
|
||||
{
|
||||
leftname:['3.0 产品与技术研发','',''],
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:'1.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'1.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'1.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'1.0 战略规划到执行'
|
||||
}
|
||||
],
|
||||
num1:[ //第三列
|
||||
{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},
|
||||
],
|
||||
num2:[ //第四列
|
||||
{
|
||||
name:'季度'
|
||||
},{
|
||||
name:'季度'
|
||||
},{
|
||||
name:'季度'
|
||||
},{
|
||||
name:'季度'
|
||||
},
|
||||
],
|
||||
num3:[ //第五列
|
||||
{
|
||||
name:'新产品收入(折前)/销售收入(折前)*100%'
|
||||
},{
|
||||
name:'第一家推向市场,符合公司战略方向'
|
||||
},{
|
||||
name:'折前收入100亿以上规模品牌的数量'
|
||||
},{
|
||||
name:'营业利润/折价前总收入*100%'
|
||||
},
|
||||
],
|
||||
num4:[ //第六列
|
||||
{
|
||||
name:'财务管理部'
|
||||
},{
|
||||
name:'财务管理部'
|
||||
},{
|
||||
name:'财务管理部'
|
||||
},{
|
||||
name:'财务管理部'
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:['','3.0 产品与技术研发',''],
|
||||
secondcont:[
|
||||
{
|
||||
name:'2.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'3.0 产品与技术研发'
|
||||
},
|
||||
{
|
||||
name:'4.0 采购管理'
|
||||
}
|
||||
],
|
||||
num1:[
|
||||
{
|
||||
name:'支'
|
||||
},{
|
||||
name:'支'
|
||||
},{
|
||||
name:'支'
|
||||
},
|
||||
],
|
||||
num2:[ //第四列
|
||||
{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
}
|
||||
],
|
||||
num3:[ //第五列
|
||||
{
|
||||
name:'品牌资产报告'
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
num4:[ //第六列
|
||||
{
|
||||
name:'品牌管理部'
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:['',''], //支持类流程
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:'8.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'9.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'10.0 战略规划到执行'
|
||||
},
|
||||
|
||||
],
|
||||
num1:[ //第三列
|
||||
{
|
||||
name:'个'
|
||||
},{
|
||||
name:'个'
|
||||
},{
|
||||
name:'个'
|
||||
},
|
||||
],
|
||||
num2:[ //第四列
|
||||
{
|
||||
name:'季度'
|
||||
},{
|
||||
name:'季度'
|
||||
},{
|
||||
name:'季度'
|
||||
}
|
||||
],
|
||||
num3:[ //第五列
|
||||
{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
num4:[ //第六列
|
||||
{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
leftname:['3.0 产品与技术研发',''],
|
||||
secondcont:[ //第二列
|
||||
{
|
||||
name:'8.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'9.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'9.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'9.0 战略规划到执行'
|
||||
},
|
||||
{
|
||||
name:'9.0 战略规划到执行'
|
||||
}
|
||||
],
|
||||
num1:[ //第三列
|
||||
{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},{
|
||||
name:'%'
|
||||
},
|
||||
],
|
||||
num2:[ //第四列
|
||||
{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
num3:[ //第五列
|
||||
{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
num4:[ //第六列
|
||||
{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},{
|
||||
name:''
|
||||
},
|
||||
],
|
||||
},
|
||||
]
|
||||
};
|
||||
let strTh = '',strTr='';
|
||||
for(let i=0;i<data.headtop.length;i++){
|
||||
strTh+='<th class="titlebgc titlecolor">'+data.headtop[i]+'</th>'
|
||||
}
|
||||
$('#table3 thead tr').html(strTh)
|
||||
for(let j=0;j<data.content.length;j++){
|
||||
let strTd1=''
|
||||
for(let tt=0;tt<data.content[j].leftname.length;tt++){
|
||||
if(j==1 && tt == 0){
|
||||
strTd1+='<td rowspan="3" class="titlebgc titlecolor"><span>'+data.content[j].leftname[tt]+'</span></td>';
|
||||
}else{
|
||||
strTd1+='<td class="titlebgc titlecolor"><span>'+data.content[j].leftname[tt]+'</span></td>';
|
||||
}
|
||||
|
||||
}
|
||||
let strtitle='';
|
||||
for(let a=0;a<data.content[j].secondcont.length;a++){
|
||||
strtitle+='<div>'+data.content[j].secondcont[a].name+'</div>'
|
||||
}
|
||||
let firstTd = '<td class="center">'+strtitle+'</td>'
|
||||
let strnum1='';
|
||||
for(let a=0;a<data.content[j].num1.length;a++){
|
||||
strnum1+='<div>'+data.content[j].num1[a].name+'</div>'
|
||||
}
|
||||
let strnum2='';
|
||||
for(let a=0;a<data.content[j].num2.length;a++){
|
||||
strnum2+='<div>'+data.content[j].num2[a].name+'</div>'
|
||||
}
|
||||
let strnum3='';
|
||||
for(let a=0;a<data.content[j].num3.length;a++){
|
||||
strnum3+='<div>'+data.content[j].num3[a].name+'</div>'
|
||||
}
|
||||
let strnum4='';
|
||||
for(let a=0;a<data.content[j].num4.length;a++){
|
||||
strnum4+='<div>'+data.content[j].num4[a].name+'</div>'
|
||||
}
|
||||
let Td1 = '<td class="center">'+strnum1+'</td><td class="center">'+strnum2+'</td><td>'+strnum3+'</td><td class="center">'+strnum4+'</td>'
|
||||
strTr+='<tr>'+strTd1+firstTd+Td1+'</tr>'
|
||||
}
|
||||
$('#table3 tbody').html(strTr)
|
||||
}
|
||||
@ -0,0 +1,309 @@
|
||||
var growthCharts = echarts.init(document.getElementById('growthCharts'));
|
||||
var growthChartsinto = function () {
|
||||
var xdata=[
|
||||
'1月',
|
||||
'2月',
|
||||
'3月',
|
||||
'4月',
|
||||
'5月',
|
||||
'6月',
|
||||
'7月',
|
||||
'8月',
|
||||
'9月',
|
||||
'10月',
|
||||
'11月',
|
||||
'12月'
|
||||
];
|
||||
var ydata=[
|
||||
{value:'64'},
|
||||
{value:'84'},
|
||||
{value:'53'},
|
||||
{value:'28'},
|
||||
{value:'64'},
|
||||
{value:'84'},
|
||||
{value:'53'},
|
||||
{value:'28'},
|
||||
{value:'64'},
|
||||
{value:'84'},
|
||||
{value:'53'},
|
||||
{value:'28'},
|
||||
{value:'53'},
|
||||
{value:'28'}
|
||||
]
|
||||
var option = {
|
||||
grid: {
|
||||
left: '5px',
|
||||
right: '0%',
|
||||
bottom: '0',
|
||||
top:'20%',
|
||||
containLabel: true,
|
||||
},
|
||||
tooltip: {
|
||||
show: "true",
|
||||
trigger: 'axis',
|
||||
axisPointer: { // 坐标轴指示器,坐标轴触发有效
|
||||
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
||||
},
|
||||
formatter:'{b0}:{c0}'+'%'
|
||||
},
|
||||
yAxis: {
|
||||
type : 'value',
|
||||
name : '',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
|
||||
},
|
||||
nameGap: 20, // y轴name与横纵坐标轴线的间距
|
||||
show:true,
|
||||
max: 100,
|
||||
splitLine: {show: true,
|
||||
lineStyle:{
|
||||
type:'solid',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
},
|
||||
axisTick: {show: false},
|
||||
axisLine: {
|
||||
show: false,
|
||||
lineStyle: {
|
||||
color: "#38B9BB",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel: {
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
fontSize:20
|
||||
},
|
||||
formatter:function(value,index){
|
||||
return value+'%';
|
||||
}
|
||||
},
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
axisTick: {
|
||||
show: false
|
||||
},
|
||||
boundaryGap: ['20%', '20%',],//坐标轴两边留白
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"#38B9BB"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisLabel:{
|
||||
textStyle:{
|
||||
color:'#ffffff',
|
||||
fontSize:'16'
|
||||
},
|
||||
interval:0
|
||||
},
|
||||
data: xdata
|
||||
}
|
||||
],
|
||||
series: [
|
||||
{
|
||||
name: '',
|
||||
type: 'bar',
|
||||
barWidth:'25px',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: function (params) {//超过预警值显示红色
|
||||
if (params.data.value > 60) {
|
||||
return '#2685CD';
|
||||
} else {
|
||||
return '#F9D905';
|
||||
}
|
||||
},
|
||||
barBorderRadius: 50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
label: {
|
||||
normal: {
|
||||
show: true,
|
||||
position: 'top',
|
||||
textStyle: {
|
||||
color: '#ffffff'
|
||||
},
|
||||
formatter:function(value,index){
|
||||
if (value.data.value > 60) {
|
||||
return ''
|
||||
} else {
|
||||
return value.data.value+'%';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
data:ydata,
|
||||
markLine : {
|
||||
symbol:['none','none'],
|
||||
data : [
|
||||
{
|
||||
yAxis :60,
|
||||
lineStyle:{
|
||||
normal:{
|
||||
type:'solid',
|
||||
color:'#F9D905'
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
yAxis :80,
|
||||
lineStyle:{
|
||||
normal:{
|
||||
type:'solid',
|
||||
color:'#00E6AC'
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
]
|
||||
};
|
||||
growthCharts.clear();
|
||||
growthCharts.setOption(option);
|
||||
};
|
||||
growthCharts.on("click",function(e){
|
||||
growthChartsinto();
|
||||
});
|
||||
|
||||
|
||||
var chartDom = document.getElementById('organizational');
|
||||
var myChart = echarts.init(chartDom);
|
||||
var option;
|
||||
var img = 'image/jian1.png'
|
||||
var img1 = 'images/qiu1.png';
|
||||
var img2 = 'images/qiu2.png';
|
||||
var img3 = 'images/qiu3.png';
|
||||
const data = {
|
||||
name: '上游指标1',
|
||||
value:3500,
|
||||
children: [
|
||||
{
|
||||
name: '人均营收增长率',
|
||||
value:3200,
|
||||
children: [
|
||||
{
|
||||
name: '分解指标1',
|
||||
value:1000,
|
||||
children: [
|
||||
{ name: '分解指标1.1', value: 1000 },
|
||||
{ name: '分解指标1.2', value: 2000 },
|
||||
{ name: '分解指标1.3', value: 287 },
|
||||
]
|
||||
},
|
||||
{
|
||||
name: '分解指标2',
|
||||
value: 300
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
option = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
triggerOn: 'mousemove'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
type: 'tree',
|
||||
id: 0,
|
||||
name: 'tree1',
|
||||
data: [data],
|
||||
top: '5%',
|
||||
left: '20%',
|
||||
bottom: '5%',
|
||||
right: '30%',
|
||||
symbolSize: 12,
|
||||
focusNodeAdjacency: true,
|
||||
edgeShape: 'polyline',
|
||||
edgeForkPosition: '63%',
|
||||
initialTreeDepth: 10,
|
||||
roam: true,
|
||||
edgeSymbol: ["circle", "arrow"],
|
||||
symbol: "circle",
|
||||
lineStyle: {
|
||||
width: 2,
|
||||
color:'#66FBF9',
|
||||
},
|
||||
legendHoverLink:true,
|
||||
label: {
|
||||
backgroundColor: '#07556F',
|
||||
color:'#FFFFFF',
|
||||
padding:20,
|
||||
borderRadius:10,
|
||||
borderWidth:1,
|
||||
borderColor:'#66FBF9',
|
||||
fontSize:18,
|
||||
position: 'left',
|
||||
verticalAlign: 'middle',
|
||||
align: 'right',
|
||||
rich:{
|
||||
img1:{
|
||||
backgroundColor: {
|
||||
image:img1
|
||||
}
|
||||
},
|
||||
img2:{
|
||||
backgroundColor: {
|
||||
image:img2
|
||||
}
|
||||
},
|
||||
img3:{
|
||||
backgroundColor: {
|
||||
image:img3
|
||||
}
|
||||
},
|
||||
height:40,
|
||||
percent:{
|
||||
width:20,
|
||||
}
|
||||
},
|
||||
formatter:function (params){
|
||||
var res="";
|
||||
console.log(params)
|
||||
if( params.value >= 3000 ){
|
||||
res+= params.name+' {img1|}';
|
||||
}
|
||||
if(params.value >= 1000 && params.value < 3000){
|
||||
res+= params.name+' {img2|}';
|
||||
}
|
||||
if(params.value < 1000){
|
||||
res+= params.name+' {img3|}';
|
||||
}
|
||||
return res
|
||||
}
|
||||
},
|
||||
leaves: {
|
||||
label: {
|
||||
position: 'right',
|
||||
verticalAlign: 'middle',
|
||||
align: 'left'
|
||||
}
|
||||
},
|
||||
emphasis: {
|
||||
focus: 'descendant'
|
||||
},
|
||||
expandAndCollapse: true,
|
||||
animationDuration: 550,
|
||||
animationDurationUpdate: 750
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
option && myChart.setOption(option);
|
||||
@ -0,0 +1,2 @@
|
||||
|
||||
|
||||
@ -0,0 +1,394 @@
|
||||
$(function(){
|
||||
fileload();
|
||||
management();
|
||||
fournumber();
|
||||
filenumber();
|
||||
fourupdateTime();
|
||||
});
|
||||
//文件管理看板第一层数据
|
||||
function fileload(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_fileTotal',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
$('#file_all').html(data.data.fileTotal)
|
||||
$('#file_1').html(data.data.fileSort.processFile)
|
||||
$('#file_2').html(data.data.fileSort.formFile)
|
||||
$('#file_3').html(data.data.fileSort.policyFile)
|
||||
$('#file_4').html(data.data.fileSort.guideFile)
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//3.2.制度管理看板筛选条件
|
||||
function management(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_queryTerms5',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
//filemanagement(data);
|
||||
if(data.result == 'ok') {
|
||||
let unit = '', field = '', radio1Id = '', radio2Id = '', id = '';
|
||||
let typelist = data.data.fileTypes
|
||||
|
||||
let str = ''
|
||||
|
||||
for (let i = 0; i < typelist.length; i++) {
|
||||
str += '<option id="' + typelist[i].termsKey + '">' + typelist[i].termsVal + '</option>'
|
||||
}
|
||||
debugger;
|
||||
$('#filetype').html(str);
|
||||
$('#filetype').change(function () {
|
||||
id = $(this).children('option:selected').attr('id');
|
||||
fournumber(id, unit, field)
|
||||
})
|
||||
let list = data.data.deptTreeNodes;
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#sendissued').comboTree({
|
||||
source: list,
|
||||
ulid: 'sendissued_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('#category').comboTree({
|
||||
source: list2,
|
||||
ulid: 'category_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.sendissued_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.sendissued_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
unit = $(this).attr('id')
|
||||
radio1Id = $(this).attr('id')
|
||||
if ($('#category').val() == '全部') {
|
||||
field = ''
|
||||
} else {
|
||||
field = radio2Id
|
||||
}
|
||||
fournumber(id, unit, field);
|
||||
fourupdateTime(unit, field);
|
||||
});
|
||||
})
|
||||
$('.category_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.category_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
field = $(this).attr('id')
|
||||
radio2Id = $(this).attr('id')
|
||||
if ($('#sendissued').val() == '全部') {
|
||||
unit = ''
|
||||
} else {
|
||||
unit = radio1Id
|
||||
}
|
||||
fournumber(id, unit, field);
|
||||
fourupdateTime(unit, field);
|
||||
});
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function fournumber(id,unit,field){
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_fileStatistics',
|
||||
data: {
|
||||
'fileType':id,
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
var n1=0,n2=0,n3=0;
|
||||
$('#published').html(data.data.publishedCount)
|
||||
$('#approval').html(data.data.inApprovalCount)
|
||||
$('#expired').html(data.data.expiredCount)
|
||||
if(data.data.consultCount>10000){
|
||||
let str = (data.data.consultCount/10000)
|
||||
$('#total').html(str)
|
||||
$('#dw').html('万')
|
||||
}else{
|
||||
$('#total').html(data.data.consultCount)
|
||||
$('#dw').html('')
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//3.3.1.部门文件数量
|
||||
function filenumber(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_deptFileCount',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
let BDF = data.data.BDFileCount
|
||||
let FDF = data.data.FDFileCount
|
||||
let all = 0;
|
||||
for(var i=0;i<BDF.length;i++){
|
||||
if(BDF[i].fileCount > all){
|
||||
all = BDF[i].fileCount
|
||||
}
|
||||
}
|
||||
let html='',num=0;
|
||||
for(let i=0;i<BDF.length;i++){
|
||||
if(all!=0){
|
||||
num= BDF[i].fileCount/all*100
|
||||
}
|
||||
html+='<li id="'+BDF[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDF[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+num+'%;></div></div>' +
|
||||
' <p class="num">'+BDF[i].fileCount+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDFileCount').html(html);
|
||||
let all1 = 0;
|
||||
for(var i=0;i<FDF.length;i++){
|
||||
if(FDF[i].fileCount > all1){
|
||||
all1 = FDF[i].fileCount
|
||||
}
|
||||
}
|
||||
let html1='',num1=0;
|
||||
for(let i=0;i<FDF.length;i++){
|
||||
if(all1!=0){
|
||||
num1= FDF[i].fileCount/all1*100
|
||||
}
|
||||
html1+='<li id="'+FDF[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDF[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+num1+'%;></div></div>' +
|
||||
' <p class="num">'+FDF[i].fileCount+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDFileCount').html(html1);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
function fourupdateTime(unit,field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_filePubTimeDistribution',
|
||||
data: {
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
filebook(data.data.fileCount)
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var filebookChart = echarts.init($("#filebook")[0]);
|
||||
var filebook =function (list){
|
||||
var heiht = 500;
|
||||
var net = net = list[0].processFileCount;
|
||||
let namelist=[];
|
||||
let processFileCountlist=[];// 流程(数量)
|
||||
let policyFileCountlist=[];// 制度(数量)
|
||||
let guideFileCountlist=[];// 操作指导(数量)
|
||||
let formFileCountlist=[];// 表单/模板(数量)
|
||||
for(let i=0;i<list.length;i++){
|
||||
debugger
|
||||
namelist.push(list[i].timeSlot)
|
||||
if(list[i].processFileCount>500){
|
||||
heiht = 1000;
|
||||
}
|
||||
if(list[i].processFileCount>net){
|
||||
net = list[i].processFileCount;
|
||||
}
|
||||
|
||||
processFileCountlist.push(list[i].processFileCount)
|
||||
policyFileCountlist.push(list[i].policyFileCount)
|
||||
guideFileCountlist.push(list[i].guideFileCount)
|
||||
formFileCountlist.push(list[i].formFileCount)
|
||||
}
|
||||
heiht = net +50;
|
||||
console.log('net',net);
|
||||
option = {
|
||||
tooltip : {
|
||||
trigger: 'axis'
|
||||
},
|
||||
grid: {
|
||||
x:46,
|
||||
y:30,
|
||||
x2:40,
|
||||
y2:70,
|
||||
borderWidth: 0
|
||||
},
|
||||
calculable : true,
|
||||
legend: {
|
||||
data:['流程','制度','操作指导','表单/模板',],
|
||||
bottom: 0,
|
||||
center: 0,
|
||||
itemWidth: 12, // 图例标记的图形宽度。[ default: 25 ]
|
||||
itemHeight: 12, // 图例标记的图形高度。[ default: 14 ]
|
||||
itemGap: 30, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
|
||||
textStyle: {
|
||||
fontSize: 12,
|
||||
color: '#ffffff'
|
||||
},
|
||||
},
|
||||
xAxis : [
|
||||
{
|
||||
type : 'category',
|
||||
data :namelist,
|
||||
axisLine: {
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"rgba(38, 133, 205, 1)"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {//x轴文字的配置
|
||||
show: true,
|
||||
textStyle: {
|
||||
color: "rgba(219,225,255,1)",
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: false,
|
||||
lineStyle:{
|
||||
type:'solid'
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
yAxis : [
|
||||
{
|
||||
type : 'value',
|
||||
min: 0,
|
||||
max: heiht,
|
||||
splitNumber: 7,
|
||||
name : ' ',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,//y轴线的颜色以及宽度
|
||||
lineStyle: {
|
||||
color: "rgba(38, 133, 205, 1)",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel : {
|
||||
formatter: '{value} ',
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
align: 'right'
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle:{
|
||||
type:'dashed',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
}
|
||||
},
|
||||
],
|
||||
series : [
|
||||
{
|
||||
name:'流程',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '流程',
|
||||
data:processFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(38, 133, 205, 1)',
|
||||
//这里设置柱形图圆角 [左上角,右上角,右下角,左下角]
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
name:'制度',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '制度',
|
||||
data:policyFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(14, 205, 205, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name:'操作指导',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '操作指导',
|
||||
data:guideFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(0, 230, 172, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name:'表单/模板',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '表单/模板',
|
||||
data:formFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(249, 217, 5, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
]
|
||||
};
|
||||
filebookChart.clear();
|
||||
filebookChart.setOption(option);
|
||||
}
|
||||
@ -0,0 +1,252 @@
|
||||
$(function (){
|
||||
filemanagement();
|
||||
fourupdateTime();
|
||||
})
|
||||
function filemanagement(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_queryTerms6',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
let fileunit = '', filefield = '', fileradio1Id = '', fileradio2Id = '';
|
||||
let filelist = data.data.deptTreeNodes;
|
||||
let filelist2 = data.data.fieldTreeNodes;
|
||||
$('#filesendissued').comboTree({
|
||||
source: filelist,
|
||||
ulid: 'filesendissued_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('#filecategory').comboTree({
|
||||
source: filelist2,
|
||||
ulid: 'filecategory_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.filesendissued_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.filesendissued_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
fileunit = $(this).attr('id')
|
||||
fileradio1Id = $(this).attr('id')
|
||||
if ($('#filecategory').val() == '全部') {
|
||||
filefield = ''
|
||||
} else {
|
||||
filefield = fileradio2Id
|
||||
}
|
||||
fourupdateTime(fileunit, filefield)
|
||||
});
|
||||
})
|
||||
$('.filecategory_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.filecategory_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
filefield = $(this).attr('id')
|
||||
fileradio2Id = $(this).attr('id')
|
||||
if ($('#filesendissued').val() == '全部') {
|
||||
fileunit = ''
|
||||
} else {
|
||||
fileunit = fileradio1Id
|
||||
}
|
||||
fourupdateTime(fileunit, filefield)
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
function fourupdateTime(unit,field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_filePubTimeDistribution',
|
||||
data: {
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
filebook(data.data.fileCount)
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var filebookChart = echarts.init($("#filebook")[0]);
|
||||
var filebook =function (list){
|
||||
let namelist=[];
|
||||
let processFileCountlist=[];// 流程(数量)
|
||||
let policyFileCountlist=[];// 制度(数量)
|
||||
let guideFileCountlist=[];// 操作指导(数量)
|
||||
let formFileCountlist=[];// 表单/模板(数量)
|
||||
for(let i=0;i<list.length;i++){
|
||||
namelist.push(list[i].timeSlot)
|
||||
processFileCountlist.push(list[i].processFileCount)
|
||||
policyFileCountlist.push(list[i].policyFileCount)
|
||||
guideFileCountlist.push(list[i].guideFileCount)
|
||||
formFileCountlist.push(list[i].formFileCount)
|
||||
}
|
||||
option = {
|
||||
tooltip : {
|
||||
trigger: 'axis'
|
||||
},
|
||||
grid: {
|
||||
x:46,
|
||||
y:30,
|
||||
x2:40,
|
||||
y2:70,
|
||||
borderWidth: 0
|
||||
},
|
||||
calculable : true,
|
||||
legend: {
|
||||
data:['流程','制度','操作指导','表单/模板',],
|
||||
bottom: 0,
|
||||
center: 0,
|
||||
itemWidth: 12, // 图例标记的图形宽度。[ default: 25 ]
|
||||
itemHeight: 12, // 图例标记的图形高度。[ default: 14 ]
|
||||
itemGap: 30, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
|
||||
textStyle: {
|
||||
fontSize: 12,
|
||||
color: '#ffffff'
|
||||
},
|
||||
},
|
||||
xAxis : [
|
||||
{
|
||||
type : 'category',
|
||||
data :namelist,
|
||||
axisLine: {
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"rgba(38, 133, 205, 1)"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {//x轴文字的配置
|
||||
show: true,
|
||||
textStyle: {
|
||||
color: "rgba(219,225,255,1)",
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: false,
|
||||
lineStyle:{
|
||||
type:'solid'
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
yAxis : [
|
||||
{
|
||||
type : 'value',
|
||||
min: 0,
|
||||
max: 35,
|
||||
splitNumber: 7,
|
||||
name : ' ',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,//y轴线的颜色以及宽度
|
||||
lineStyle: {
|
||||
color: "rgba(38, 133, 205, 1)",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel : {
|
||||
formatter: '{value} ',
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
align: 'right'
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle:{
|
||||
type:'dashed',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
}
|
||||
},
|
||||
],
|
||||
series : [
|
||||
{
|
||||
name:'流程',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '流程',
|
||||
data:processFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(38, 133, 205, 1)',
|
||||
//这里设置柱形图圆角 [左上角,右上角,右下角,左下角]
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
name:'制度',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '制度',
|
||||
data:policyFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(14, 205, 205, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name:'操作指导',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '操作指导',
|
||||
data:guideFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(0, 230, 172, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name:'表单/模板',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '表单/模板',
|
||||
data:formFileCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(249, 217, 5, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
]
|
||||
};
|
||||
filebookChart.clear();
|
||||
filebookChart.setOption(option);
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,179 @@
|
||||
$(function(){
|
||||
//yymanagement();
|
||||
//yyfournumber();
|
||||
});
|
||||
function yymanagement(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_queryTerms7',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
let unit = '', field = '', radio1Id = '', radio2Id = '', id = '';
|
||||
let typelist = data.data.fileTypes
|
||||
let str = ''
|
||||
|
||||
for (let i = 0; i < typelist.length; i++) {
|
||||
str += '<option id="' + typelist[i].termsKey + '">' + typelist[i].termsVal + '</option>'
|
||||
}
|
||||
debugger;
|
||||
$('#yyfiletype').html(str);
|
||||
$('#yyfiletype').change(function () {
|
||||
|
||||
id = ($(this).children('option:selected').attr('id'));
|
||||
yyfournumber(id, unit, field)
|
||||
})
|
||||
let list = data.data.deptTreeNodes;
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#yysendissued').comboTree({
|
||||
source: list,
|
||||
ulid: 'yysendissued_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('#yycategory').comboTree({
|
||||
source: list2,
|
||||
ulid: 'yycategory_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.yysendissued_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.yysendissued_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
unit = $(this).attr('id')
|
||||
radio1Id = $(this).attr('id')
|
||||
if ($('#yycategory').val() == '全部') {
|
||||
field = ''
|
||||
} else {
|
||||
field = radio2Id
|
||||
}
|
||||
debugger;
|
||||
yyfournumber(id, unit, field)
|
||||
});
|
||||
})
|
||||
$('.yycategory_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.yycategory_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
field = $(this).attr('id')
|
||||
radio2Id = $(this).attr('id')
|
||||
if ($('#yysendissued').val() == '全部') {
|
||||
unit = ''
|
||||
} else {
|
||||
unit = radio1Id
|
||||
}
|
||||
debugger;
|
||||
yyfournumber(id, unit, field)
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
function yyfournumber(id,unit,field){
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_citationAnalysis',
|
||||
data: {
|
||||
'fileType':id,
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
quoteChart.resize()
|
||||
quoteinit(data.data.quoteRate)
|
||||
$('#yyfilenum1').css('width',data.data.quoteDetail.quoteAvg+'%')
|
||||
$('#yyfilenum2').css('width',data.data.quoteDetail.quoteAdded+'%')
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var quoteChart = echarts.init(document.getElementById('quoteChart'));
|
||||
var quoteinit =function (quoteRate) {
|
||||
var v1=quoteRate
|
||||
option = {
|
||||
series: [
|
||||
{
|
||||
type: 'pie',
|
||||
radius: ['70%', '90%'],
|
||||
color:'#2685CD',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(38, 133, 205, 1)',
|
||||
},
|
||||
},
|
||||
labelLine: {
|
||||
normal: {
|
||||
show: false
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{
|
||||
value: v1,
|
||||
name: ' ',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(38, 133, 205, 1)',
|
||||
},
|
||||
},
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
type: 'pie',
|
||||
radius: ['70%', '90%'],
|
||||
color: '#00E6AC',
|
||||
label: {
|
||||
normal: {
|
||||
position: 'inner'
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{
|
||||
value: v1,
|
||||
name: '引用情况',
|
||||
label: {
|
||||
normal: {
|
||||
formatter: function (params) {
|
||||
return Math.round(v1) + '%'
|
||||
},
|
||||
textStyle: {
|
||||
fontSize: 42,
|
||||
color: '#00E6AC',
|
||||
},
|
||||
position: 'center'
|
||||
}
|
||||
},
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
borderWidth: 1
|
||||
},
|
||||
},
|
||||
{
|
||||
value:100-v1,
|
||||
name: ' ',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(255,255,255,0)',
|
||||
}
|
||||
},
|
||||
emphasis:{//使用emphasis
|
||||
disable:false,
|
||||
scale:false,//不缩放
|
||||
scaleSize:0,//为了防止失效直接设置未0
|
||||
},
|
||||
},
|
||||
|
||||
]
|
||||
},
|
||||
|
||||
|
||||
]
|
||||
};
|
||||
|
||||
quoteChart.clear();
|
||||
quoteChart.setOption(option);
|
||||
}
|
||||
@ -0,0 +1,313 @@
|
||||
$(function (){
|
||||
yearfileupdate();
|
||||
})
|
||||
var quoteqsjkdw = echarts.init(document.getElementById('quoteqsjkdwEcharts'));
|
||||
function yearfileupdate(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_deptFileYearRenewRate',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if (data.result == 'ok') {
|
||||
let list = data.data.BDRenewRate
|
||||
let list1 = data.data.FDRenewRate
|
||||
quoteloadqsjkdw(list)
|
||||
quoteloadqsjkdw2(list1)
|
||||
}
|
||||
}
|
||||
})
|
||||
};
|
||||
var quoteloadqsjkdw = function (list) {
|
||||
var xdata=[];
|
||||
var ydata=[];
|
||||
for(let i=0;i<list.length;i++){
|
||||
xdata.push(list[i].deptName)
|
||||
ydata.push({'value': list[i].renewRate})
|
||||
}
|
||||
var option = {
|
||||
grid: {
|
||||
left: '5px',
|
||||
right: '0%',
|
||||
bottom: '0',
|
||||
top:'10%',
|
||||
containLabel: true,
|
||||
},
|
||||
tooltip: {
|
||||
show: "true",
|
||||
trigger: 'axis',
|
||||
axisPointer: { // 坐标轴指示器,坐标轴触发有效
|
||||
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
||||
},
|
||||
formatter:'{b0}:{c0}'
|
||||
},
|
||||
yAxis: {
|
||||
type : 'value',
|
||||
name : '',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
|
||||
},
|
||||
nameGap: 20, // y轴name与横纵坐标轴线的间距
|
||||
show:true,
|
||||
splitLine: {show: true,
|
||||
lineStyle:{
|
||||
type:'dashed',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
},
|
||||
axisTick: {show: false},
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
color: "rgba(38, 133, 205, 1)",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel: {
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
fontSize:12
|
||||
},
|
||||
formatter:function(value,index){
|
||||
return value;
|
||||
}
|
||||
},
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
axisTick: {
|
||||
show: false
|
||||
},
|
||||
boundaryGap: ['20%', '20%',],//坐标轴两边留白
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"rgba(38, 133, 205, 1)"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisLabel:{
|
||||
textStyle:{
|
||||
color:'#ffffff',
|
||||
fontSize:'12'
|
||||
},
|
||||
interval:0
|
||||
},
|
||||
data: xdata
|
||||
}
|
||||
],
|
||||
series: [
|
||||
{
|
||||
name: '',
|
||||
type: 'bar',
|
||||
barWidth:'25px',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
||||
offset: 0,
|
||||
color: '#2685CD'
|
||||
}, {
|
||||
offset: 1,
|
||||
color: '#2685CD'
|
||||
}]),
|
||||
/*color: function (params) {//超过预警值显示红色
|
||||
if (params.data.value > 3) {
|
||||
return '#ff0000';
|
||||
} else {
|
||||
return '#2685CD';
|
||||
}
|
||||
},*/
|
||||
barBorderRadius: 50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
label: {
|
||||
normal: {
|
||||
show: false,
|
||||
position: 'top',
|
||||
textStyle: {
|
||||
color: '#58F1EB'
|
||||
}
|
||||
}
|
||||
},
|
||||
data:ydata,
|
||||
}
|
||||
]
|
||||
};
|
||||
quoteqsjkdw.clear();
|
||||
quoteqsjkdw.setOption(option);
|
||||
|
||||
};
|
||||
quoteqsjkdw.on("click",function(e){
|
||||
quoteloadqsjkdw();
|
||||
});
|
||||
|
||||
var quoteqsjkdw2 = echarts.init(document.getElementById('quoteqsjkdwEcharts2'));
|
||||
var quoteloadqsjkdw2 = function (list) {
|
||||
var xdata=[];
|
||||
var ydata=[]
|
||||
for(let i=0;i<list.length;i++){
|
||||
xdata.push(list[i].deptName)
|
||||
ydata.push({'value': list[i].renewRate})
|
||||
}
|
||||
var option = {
|
||||
grid: {
|
||||
left: '5px',
|
||||
right: '0%',
|
||||
bottom: '20%',
|
||||
top:'10%',
|
||||
containLabel: true,
|
||||
},
|
||||
toolbox: {
|
||||
left: 'center',
|
||||
feature : { }
|
||||
|
||||
},
|
||||
|
||||
tooltip: {
|
||||
show: "true",
|
||||
trigger: 'axis',
|
||||
axisPointer: { // 坐标轴指示器,坐标轴触发有效
|
||||
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
||||
},
|
||||
formatter:'{b0}:{c0}'
|
||||
},
|
||||
|
||||
dataZoom: [
|
||||
{
|
||||
type: 'inside',
|
||||
show: true,
|
||||
start: 0,//默认为1
|
||||
end: 18,//默认为100
|
||||
},
|
||||
{
|
||||
type: 'slider',
|
||||
start: 0,
|
||||
end: 18,
|
||||
startValue: 0, // 重点在这 -- 开始的值
|
||||
endValue: 24, // 重点在这 -- 结束的值
|
||||
left: '6%', //左边的距离
|
||||
right: '6%',//右边的距离
|
||||
|
||||
showDataShadow: true,//是否显示数据阴影 默认auto
|
||||
showDetail: true,//即拖拽时候是否显示详细数值信息 默认true
|
||||
realtime: true, //是否实时更新
|
||||
filterMode: 'filter',
|
||||
textStyle:{
|
||||
color:'#FFFFFF'
|
||||
}
|
||||
}
|
||||
],
|
||||
animation: false,
|
||||
yAxis: {
|
||||
type : 'value',
|
||||
name : '',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
},
|
||||
nameGap: 20, // y轴name与横纵坐标轴线的间距
|
||||
show:true,
|
||||
splitLine: {show: true,
|
||||
lineStyle:{
|
||||
type:'dashed',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
},
|
||||
axisTick: {show: false},
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
color: "rgba(38, 133, 205, 1)",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel: {
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
fontSize:12
|
||||
},
|
||||
formatter:function(value,index){
|
||||
return value;
|
||||
}
|
||||
},
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
axisTick: {
|
||||
show: false
|
||||
},
|
||||
boundaryGap: ['20%', '20%',],//坐标轴两边留白
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"rgba(38, 133, 205, 1)"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisLabel:{
|
||||
textStyle:{
|
||||
color:'#ffffff',
|
||||
fontSize:'12'
|
||||
},
|
||||
interval:0
|
||||
},
|
||||
data: xdata
|
||||
}
|
||||
],
|
||||
series: [
|
||||
{
|
||||
name: '',
|
||||
type: 'bar',
|
||||
barWidth:'25px',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
||||
offset: 0,
|
||||
color: '#2685CD'
|
||||
}, {
|
||||
offset: 1,
|
||||
color: '#2685CD'
|
||||
}]),
|
||||
barBorderRadius: 50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
label: {
|
||||
normal: {
|
||||
show: false,
|
||||
position: 'top',
|
||||
textStyle: {
|
||||
color: '#58F1EB'
|
||||
}
|
||||
}
|
||||
},
|
||||
data:ydata,
|
||||
}
|
||||
],
|
||||
|
||||
};
|
||||
quoteqsjkdw2.clear();
|
||||
quoteqsjkdw2.setOption(option);
|
||||
|
||||
};
|
||||
quoteqsjkdw2.on("click",function(e){
|
||||
quoteloadqsjkdw2();
|
||||
});
|
||||
@ -0,0 +1,366 @@
|
||||
$(function (){
|
||||
yearfile();
|
||||
})
|
||||
var yearupdateChart = echarts.init($("#yearupdateChart")[0]);
|
||||
function yearfile(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'FileManagementService_deptFileYearRenewSituation',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if (data.result == 'ok') {
|
||||
let list = data.data.BDRenewCount
|
||||
let list1 =data.data.FDRenewCount
|
||||
yearupdate(list)
|
||||
canonlyupdate(list1)
|
||||
}
|
||||
}
|
||||
})
|
||||
};
|
||||
var yearupdate =function (list){
|
||||
let namelist=[];
|
||||
let createCountlist=[] //新增
|
||||
let updateCountlist=[] //修订
|
||||
let abolishCountlist = []//废止
|
||||
for(let i=0;i<list.length;i++){
|
||||
namelist.push(list[i].deptName);
|
||||
createCountlist.push(list[i].createCount)
|
||||
updateCountlist.push(list[i].updateCount)
|
||||
abolishCountlist.push(list[i].abolishCount)
|
||||
}
|
||||
option = {
|
||||
tooltip : {
|
||||
trigger: 'axis'
|
||||
},
|
||||
grid: {
|
||||
x:50,
|
||||
y:30,
|
||||
x2:40,
|
||||
y2:70,
|
||||
borderWidth: 0
|
||||
},
|
||||
calculable : true,
|
||||
legend: {
|
||||
data:['新增数量','修订数量','废止数量'],
|
||||
bottom: 0,
|
||||
center: 0,
|
||||
itemWidth: 12, // 图例标记的图形宽度。[ default: 25 ]
|
||||
itemHeight: 12, // 图例标记的图形高度。[ default: 14 ]
|
||||
itemGap: 30, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
|
||||
textStyle: {
|
||||
fontSize: 12,
|
||||
color: '#ffffff'
|
||||
},
|
||||
},
|
||||
xAxis : [
|
||||
{
|
||||
type : 'category',
|
||||
data : namelist,
|
||||
axisLine: {
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"rgba(38, 133, 205, 1)"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {//x轴文字的配置
|
||||
show: true,
|
||||
textStyle: {
|
||||
color: "rgba(219,225,255,1)",
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: false,
|
||||
lineStyle:{
|
||||
type:'solid'
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
yAxis : [
|
||||
{
|
||||
type : 'value',
|
||||
min: 0,
|
||||
|
||||
splitNumber: 7,
|
||||
name : ' ',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,//y轴线的颜色以及宽度
|
||||
lineStyle: {
|
||||
color: "rgba(38, 133, 205, 1)",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel : {
|
||||
formatter: '{value} ',
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
align: 'right'
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle:{
|
||||
type:'dashed',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
}
|
||||
},
|
||||
],
|
||||
series : [
|
||||
{
|
||||
name:'新增数量',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '新增数量',
|
||||
data:createCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(38, 133, 205, 1)',
|
||||
//这里设置柱形图圆角 [左上角,右上角,右下角,左下角]
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
name:'修订数量',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '修订数量',
|
||||
data:updateCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(14, 205, 205, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name:'废止数量',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '废止数量',
|
||||
data:abolishCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(0, 230, 172, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
]
|
||||
};
|
||||
yearupdateChart.clear();
|
||||
yearupdateChart.setOption(option);
|
||||
}
|
||||
|
||||
//文件看板
|
||||
var canonlyupdateChart = echarts.init($("#canonlyupdateChart")[0]);
|
||||
var canonlyupdate =function (list){
|
||||
var namelist=[];
|
||||
let createCountlist=[] //新增
|
||||
let updateCountlist=[] //修订
|
||||
let abolishCountlist = []//废止
|
||||
for(let i=0;i<list.length;i++){
|
||||
namelist.push(list[i].deptName);
|
||||
createCountlist.push(list[i].createCount)
|
||||
updateCountlist.push(list[i].updateCount)
|
||||
abolishCountlist.push(list[i].abolishCount)
|
||||
}
|
||||
option = {
|
||||
tooltip : {
|
||||
trigger: 'axis'
|
||||
},
|
||||
grid: {
|
||||
left: '25',
|
||||
right: '30',
|
||||
bottom: '25%',
|
||||
top:'5%',
|
||||
containLabel: true,
|
||||
},
|
||||
calculable : true,
|
||||
legend: {
|
||||
data:['新增数量','修订数量','废止数量'],
|
||||
bottom: '15%',
|
||||
center: 0,
|
||||
itemWidth: 12, // 图例标记的图形宽度。[ default: 25 ]
|
||||
itemHeight: 12, // 图例标记的图形高度。[ default: 14 ]
|
||||
itemGap: 30, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
|
||||
textStyle: {
|
||||
fontSize: 12,
|
||||
color: '#ffffff'
|
||||
},
|
||||
},
|
||||
dataZoom: [
|
||||
{
|
||||
type: 'inside',
|
||||
show: true,
|
||||
start: 0,//默认为1
|
||||
end: 18,//默认为100
|
||||
},
|
||||
{
|
||||
type: 'slider',
|
||||
start: 0,
|
||||
end: 18,
|
||||
startValue: 0, // 重点在这 -- 开始的值
|
||||
endValue: 24, // 重点在这 -- 结束的值
|
||||
left: '3%', //左边的距离
|
||||
right: '3%',//右边的距离
|
||||
showDataShadow: true,//是否显示数据阴影 默认auto
|
||||
showDetail: true,//即拖拽时候是否显示详细数值信息 默认true
|
||||
realtime: true, //是否实时更新
|
||||
filterMode: 'filter',
|
||||
textStyle:{
|
||||
color:'#FFFFFF'
|
||||
}
|
||||
}
|
||||
],
|
||||
xAxis : [
|
||||
{
|
||||
type : 'category',
|
||||
data : namelist,
|
||||
axisLine: {
|
||||
lineStyle: {
|
||||
type:"solid",
|
||||
color:"rgba(38, 133, 205, 1)"
|
||||
},
|
||||
symbol: ['none'],
|
||||
symbolSize: [13, 20],
|
||||
symbolOffset: [0, 40],
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {//x轴文字的配置
|
||||
show: true,
|
||||
textStyle: {
|
||||
color: "rgba(219,225,255,1)",
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: false,
|
||||
lineStyle:{
|
||||
type:'solid'
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
yAxis : [
|
||||
{
|
||||
type : 'value',
|
||||
min: 0,
|
||||
splitNumber: 7,
|
||||
name : ' ',
|
||||
nameTextStyle:{//y轴上方单位的颜色
|
||||
color:'#ffffff',
|
||||
fontSize: '20'
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,//y轴线的颜色以及宽度
|
||||
lineStyle: {
|
||||
color: "rgba(38, 133, 205, 1)",
|
||||
width: 1,
|
||||
type: "solid"
|
||||
}
|
||||
},
|
||||
axisLabel : {
|
||||
formatter: '{value} ',
|
||||
textStyle: {
|
||||
color: '#ffffff',
|
||||
align: 'right'
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle:{
|
||||
type:'dashed',
|
||||
color:'rgba(102, 102, 102, 1)'
|
||||
}
|
||||
}
|
||||
},
|
||||
],
|
||||
series : [
|
||||
{
|
||||
name:'新增数量',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '新增数量',
|
||||
data:createCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(38, 133, 205, 1)',
|
||||
//这里设置柱形图圆角 [左上角,右上角,右下角,左下角]
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
name:'修订数量',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '修订数量',
|
||||
data:updateCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(14, 205, 205, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name:'废止数量',
|
||||
type:'bar',
|
||||
barWidth:'25px',
|
||||
stack: '废止数量',
|
||||
data:abolishCountlist,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: 'rgba(0, 230, 172, 1)',
|
||||
barBorderRadius:50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
]
|
||||
};
|
||||
canonlyupdateChart.clear();
|
||||
canonlyupdateChart.setOption(option);
|
||||
}
|
||||
|
||||
@ -0,0 +1,435 @@
|
||||
/*!
|
||||
* jQuery ComboTree Plugin
|
||||
* Author: Erhan FIRAT
|
||||
* Mail: erhanfirat@gmail.com
|
||||
* Licensed under the MIT license
|
||||
* Version: 1.1
|
||||
*/
|
||||
;(function ( $, window, document, undefined ) {
|
||||
|
||||
var comboTreePlugin = 'comboTree',
|
||||
defaults = {
|
||||
source: [],
|
||||
ulid:'',
|
||||
isMultiple: false
|
||||
};
|
||||
|
||||
function ComboTree( element, options ) {
|
||||
|
||||
this._elemInput = $(element);
|
||||
|
||||
this.options = $.extend( {}, defaults, options) ;
|
||||
|
||||
this._defaults = defaults;
|
||||
this._name = comboTreePlugin;
|
||||
this.init();
|
||||
}
|
||||
|
||||
ComboTree.prototype.init = function () {
|
||||
// Setting Doms
|
||||
this.comboTreeId = 'comboTree' + Math.floor(Math.random() * 999999);
|
||||
|
||||
this._elemInput.addClass('comboTreeInputBox');
|
||||
|
||||
if (this._elemInput.attr('id') === undefined)
|
||||
this._elemInput.attr('id', this.comboTreeId + 'Input');
|
||||
this.elemInputId = this._elemInput.attr('id');
|
||||
|
||||
this._elemInput.wrap('<div id="'+ this.comboTreeId + 'Wrapper" class="comboTreeWrapper"></div>');
|
||||
this._elemInput.wrap('<div id="'+ this.comboTreeId + 'InputWrapper" class="comboTreeInputWrapper"></div>');
|
||||
this._elemWrapper = $('#' + this.comboTreeId + 'Wrapper');
|
||||
|
||||
this._elemArrowBtn = $('<button id="' + this.comboTreeId + 'ArrowBtn" class="comboTreeArrowBtn"><span class="comboTreeArrowBtnImg"></span></button>');
|
||||
this._elemInput.after(this._elemArrowBtn);
|
||||
this._elemWrapper.append('<div id="' + this.comboTreeId + 'DropDownContainer" class="comboTreeDropDownContainer '+this.options.ulid+'"><div class="comboTreeDropDownContent"></div>');
|
||||
|
||||
// DORP DOWN AREA
|
||||
this._elemDropDownContainer = $('#' + this.comboTreeId + 'DropDownContainer');
|
||||
this._elemDropDownContainer.html(this.createSourceHTML());
|
||||
$('.ComboTreeItemParent ul').hide() //增加
|
||||
var str='<img src="../apps/com.awspaas.user.apps.yili.reportform/images/add.png" width="16" height="16"/>'
|
||||
$('.ComboTreeItemParent').children('span.comboTreeParentPlus').html(str);//增加,默认都是关闭状态
|
||||
|
||||
this._elemItems = this._elemDropDownContainer.find('li');
|
||||
this._elemItemsTitle = this._elemDropDownContainer.find('span.comboTreeItemTitle');
|
||||
|
||||
// VARIABLES
|
||||
this._selectedItem = {};
|
||||
this._selectedItems = [];
|
||||
|
||||
this.bindings();
|
||||
};
|
||||
|
||||
|
||||
|
||||
ComboTree.prototype.createSourceHTML = function () {
|
||||
var sourceHTML = '';
|
||||
if (this.options.isMultiple)
|
||||
sourceHTML = this.createFilterHTMLForMultiSelect();
|
||||
sourceHTML += this.createSourceSubItemsHTML(this.options.source);
|
||||
|
||||
return sourceHTML;
|
||||
};
|
||||
|
||||
ComboTree.prototype.createFilterHTMLForMultiSelect = function (){
|
||||
return '<input id="' + this.comboTreeId + 'MultiFilter" type="text" class="multiplesFilter" placeholder="Type to filter"/>';
|
||||
}
|
||||
|
||||
ComboTree.prototype.createSourceSubItemsHTML = function (subItems) {
|
||||
var subItemsHtml = '<UL>';
|
||||
for (var i=0; i<subItems.length; i++){
|
||||
subItemsHtml += this.createSourceItemHTML(subItems[i]);
|
||||
}
|
||||
subItemsHtml += '</UL>'
|
||||
return subItemsHtml;
|
||||
}
|
||||
|
||||
ComboTree.prototype.createSourceItemHTML = function (sourceItem) {
|
||||
var itemHtml = "",
|
||||
isThereSubs = sourceItem.hasOwnProperty("children");
|
||||
|
||||
itemHtml = '<LI class="child ComboTreeItem' + (isThereSubs?'Parent':'Chlid') + '"> ';
|
||||
var str='<img src="../apps/com.awspaas.user.apps.yili.reportform/images/jian.png" width="16" height="16"/>'
|
||||
if (isThereSubs)
|
||||
itemHtml += '<span class="comboTreeParentPlus">'+str+'</span>';
|
||||
|
||||
if (this.options.isMultiple)
|
||||
itemHtml += '<span id="' + sourceItem.ID + '" class="comboTreeItemTitle"><input type="checkbox">' + sourceItem.name + '</span>';
|
||||
else
|
||||
itemHtml += '<span id="' + sourceItem.ID + '" class="comboTreeItemTitle ">' + sourceItem.name + '</span>';
|
||||
|
||||
if (isThereSubs)
|
||||
itemHtml += this.createSourceSubItemsHTML(sourceItem.children);
|
||||
|
||||
itemHtml += '</LI>';
|
||||
return itemHtml;
|
||||
};
|
||||
|
||||
|
||||
// BINDINGS
|
||||
// *****************************
|
||||
ComboTree.prototype.bindings = function () {
|
||||
var _this = this;
|
||||
|
||||
this._elemArrowBtn.on('click', function(e){
|
||||
e.stopPropagation();
|
||||
_this.toggleDropDown();
|
||||
});
|
||||
this._elemInput.on('click', function(e){
|
||||
e.stopPropagation();
|
||||
if (!_this._elemDropDownContainer.is(':visible'))
|
||||
_this.toggleDropDown();
|
||||
});
|
||||
this._elemItems.on('click', function(e){
|
||||
e.stopPropagation();
|
||||
if ($(this).hasClass('ComboTreeItemParent')){
|
||||
_this.toggleSelectionTree(this);
|
||||
}
|
||||
});
|
||||
this._elemItemsTitle.on('click', function(e){
|
||||
e.stopPropagation();
|
||||
if (_this.options.isMultiple)
|
||||
_this.multiItemClick(this);
|
||||
else
|
||||
_this.singleItemClick(this);
|
||||
});
|
||||
this._elemItemsTitle.on("mousemove", function (e) {
|
||||
e.stopPropagation();
|
||||
_this.dropDownMenuHover(this);
|
||||
});
|
||||
|
||||
// KEY BINDINGS
|
||||
this._elemInput.on('keyup', function(e) {
|
||||
e.stopPropagation();
|
||||
|
||||
switch (e.keyCode) {
|
||||
case 27:
|
||||
_this.closeDropDownMenu(); break;
|
||||
case 13:
|
||||
case 39: case 37: case 40: case 38:
|
||||
e.preventDefault();
|
||||
break;
|
||||
default:
|
||||
if (!_this.options.isMultiple)
|
||||
_this.filterDropDownMenu();
|
||||
break;
|
||||
}
|
||||
});
|
||||
if (_this.options.isMultiple) {
|
||||
$("#" + _this.comboTreeId + "MultiFilter").on('keyup', function(e) {
|
||||
e.stopPropagation();
|
||||
|
||||
switch (e.keyCode) {
|
||||
case 27:
|
||||
$(this).val(''); _this.filterDropDownMenu(); break;
|
||||
default:
|
||||
_this.filterDropDownMenu();
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
this._elemInput.on('keydown', function(e) {
|
||||
e.stopPropagation();
|
||||
|
||||
switch (e.keyCode) {
|
||||
case 9:
|
||||
_this.closeDropDownMenu(); break;
|
||||
case 40: case 38:
|
||||
e.preventDefault();
|
||||
_this.dropDownInputKeyControl(e.keyCode - 39); break;
|
||||
case 37: case 39:
|
||||
e.preventDefault();
|
||||
_this.dropDownInputKeyToggleTreeControl(e.keyCode - 38);
|
||||
break;
|
||||
case 13:
|
||||
if (_this.options.isMultiple)
|
||||
_this.multiItemClick(_this._elemHoveredItem);
|
||||
else
|
||||
_this.singleItemClick(_this._elemHoveredItem);
|
||||
e.preventDefault();
|
||||
break;
|
||||
default:
|
||||
if (_this.options.isMultiple)
|
||||
e.preventDefault();
|
||||
}
|
||||
});
|
||||
// ON FOCUS OUT CLOSE DROPDOWN
|
||||
$(document).on('mouseup.' + _this.comboTreeId, function (e){
|
||||
if (!_this._elemWrapper.is(e.target) && _this._elemWrapper.has(e.target).length === 0 && _this._elemDropDownContainer.is(':visible'))
|
||||
_this.closeDropDownMenu();
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
// EVENTS HERE
|
||||
// ****************************
|
||||
|
||||
// DropDown Menu Open/Close
|
||||
ComboTree.prototype.toggleDropDown = function () {
|
||||
this._elemDropDownContainer.slideToggle(50);
|
||||
this._elemInput.focus();
|
||||
};
|
||||
ComboTree.prototype.closeDropDownMenu = function () {
|
||||
this._elemDropDownContainer.slideUp(50);
|
||||
};
|
||||
// Selection Tree Open/Close
|
||||
ComboTree.prototype.toggleSelectionTree = function (item, direction) {
|
||||
var subMenu = $(item).children('ul')[0];
|
||||
var str='<img src="../apps/com.awspaas.user.apps.yili.reportform/images/add.png" width="16" height="16"/>'
|
||||
var str1='<img src="../apps/com.awspaas.user.apps.yili.reportform/images/jian.png" width="16" height="16"/>'
|
||||
if (direction === undefined){
|
||||
|
||||
if ($(subMenu).is(':visible'))
|
||||
$(item).children('span.comboTreeParentPlus').html(str);
|
||||
else
|
||||
$(item).children('span.comboTreeParentPlus').html(str1);
|
||||
|
||||
$(subMenu).slideToggle(50);
|
||||
}
|
||||
else if (direction == 1 && !$(subMenu).is(':visible')){
|
||||
$(item).children('span.comboTreeParentPlus').html(str1);
|
||||
$(subMenu).slideDown(50);
|
||||
}
|
||||
else if (direction == -1){
|
||||
if ($(subMenu).is(':visible')){
|
||||
var str='<img src="images/add.png" width="16" height="16"/>'
|
||||
$(item).children('span.comboTreeParentPlus').html(str);
|
||||
$(subMenu).slideUp(50);
|
||||
}
|
||||
else {
|
||||
this.dropDownMenuHoverToParentItem(item);
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
// SELECTION FUNCTIONS
|
||||
// *****************************
|
||||
ComboTree.prototype.singleItemClick = function (ctItem) {
|
||||
this._selectedItem = {
|
||||
id: $(ctItem).attr("id"),
|
||||
name: $(ctItem).text()
|
||||
};
|
||||
|
||||
this.refreshInputVal();
|
||||
this.closeDropDownMenu();
|
||||
};
|
||||
ComboTree.prototype.multiItemClick = function (ctItem) {
|
||||
this._selectedItem = {
|
||||
id: $(ctItem).attr("id"),
|
||||
name: $(ctItem).text()
|
||||
};
|
||||
|
||||
var index = this.isItemInArray(this._selectedItem, this._selectedItems);
|
||||
if (index){
|
||||
this._selectedItems.splice(parseInt(index), 1);
|
||||
$(ctItem).find("input").prop('checked', false);
|
||||
}
|
||||
else {
|
||||
this._selectedItems.push(this._selectedItem);
|
||||
$(ctItem).find("input").prop('checked', true);
|
||||
}
|
||||
|
||||
this.refreshInputVal();
|
||||
};
|
||||
|
||||
ComboTree.prototype.isItemInArray = function (item, arr) {
|
||||
for (var i=0; i<arr.length; i++)
|
||||
if (item.id == arr[i].id && item.name == arr[i].name)
|
||||
return i + "";
|
||||
return false;
|
||||
}
|
||||
|
||||
ComboTree.prototype.refreshInputVal = function () {
|
||||
var tmpTitle = "";
|
||||
|
||||
if (this.options.isMultiple) {
|
||||
for (var i=0; i<this._selectedItems.length; i++){
|
||||
tmpTitle += this._selectedItems[i].name;
|
||||
if (i<this._selectedItems.length-1)
|
||||
tmpTitle += ", ";
|
||||
}
|
||||
}
|
||||
else {
|
||||
tmpTitle = this._selectedItem.name;
|
||||
}
|
||||
|
||||
this._elemInput.val(tmpTitle);
|
||||
}
|
||||
|
||||
ComboTree.prototype.dropDownMenuHover = function (itemSpan, withScroll) {
|
||||
this._elemItems.find('span.comboTreeItemHover').removeClass('comboTreeItemHover');
|
||||
$(itemSpan).addClass('comboTreeItemHover');
|
||||
this._elemHoveredItem = $(itemSpan);
|
||||
if (withScroll)
|
||||
this.dropDownScrollToHoveredItem(this._elemHoveredItem);
|
||||
}
|
||||
|
||||
ComboTree.prototype.dropDownScrollToHoveredItem = function (itemSpan) {
|
||||
var curScroll = this._elemDropDownContainer.scrollTop();
|
||||
this._elemDropDownContainer.scrollTop(curScroll + $(itemSpan).parent().position().top - 80);
|
||||
}
|
||||
|
||||
ComboTree.prototype.dropDownMenuHoverToParentItem = function (item) {
|
||||
var parentSpanItem = $($(item).parents('li.ComboTreeItemParent')[0]).children("span.comboTreeItemTitle");
|
||||
if (parentSpanItem.length)
|
||||
this.dropDownMenuHover(parentSpanItem, true);
|
||||
else
|
||||
this.dropDownMenuHover(this._elemItemsTitle[0], true);
|
||||
}
|
||||
|
||||
ComboTree.prototype.dropDownInputKeyToggleTreeControl = function (direction) {
|
||||
var item = this._elemHoveredItem;
|
||||
if ($(item).parent('li').hasClass('ComboTreeItemParent'))
|
||||
this.toggleSelectionTree($(item).parent('li'), direction);
|
||||
else if (direction == -1)
|
||||
this.dropDownMenuHoverToParentItem(item);
|
||||
}
|
||||
|
||||
ComboTree.prototype.dropDownInputKeyControl = function (step) {
|
||||
if (!this._elemDropDownContainer.is(":visible"))
|
||||
this.toggleDropDown();
|
||||
|
||||
var list = this._elemItems.find("span.comboTreeItemTitle:visible");
|
||||
i = this._elemHoveredItem?list.index(this._elemHoveredItem) + step:0;
|
||||
i = (list.length + i) % list.length;
|
||||
|
||||
this.dropDownMenuHover(list[i], true);
|
||||
},
|
||||
|
||||
ComboTree.prototype.filterDropDownMenu = function () {
|
||||
var searchText = '';
|
||||
if (!this.options.isMultiple)
|
||||
searchText = this._elemInput.val();
|
||||
else
|
||||
searchText = $("#" + this.comboTreeId + "MultiFilter").val();
|
||||
|
||||
if (searchText != ""){
|
||||
this._elemItemsTitle.hide();
|
||||
this._elemItemsTitle.siblings("span.comboTreeParentPlus").hide();
|
||||
list = this._elemItems.find("span:icontains('" + searchText + "')").each(function (i, elem) {
|
||||
$(this).show();
|
||||
$(this).siblings("span.comboTreeParentPlus").show();
|
||||
});
|
||||
}
|
||||
else{
|
||||
this._elemItemsTitle.show();
|
||||
this._elemItemsTitle.siblings("span.comboTreeParentPlus").show();
|
||||
}
|
||||
}
|
||||
|
||||
// Retuns Array (multiple), Integer (single), or False (No choice)
|
||||
ComboTree.prototype.getSelectedItemsId = function () {
|
||||
if (this.options.isMultiple && this._selectedItems.length>0){
|
||||
var tmpArr = [];
|
||||
for (i=0; i<this._selectedItems.length; i++)
|
||||
tmpArr.push(this._selectedItems[i].id);
|
||||
|
||||
return tmpArr;
|
||||
}
|
||||
else if (!this.options.isMultiple && this._selectedItem.hasOwnProperty('id')){
|
||||
return this._selectedItem.id;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Retuns Array (multiple), Integer (single), or False (No choice)
|
||||
ComboTree.prototype.getSelectedItemsTitle = function () {
|
||||
if (this.options.isMultiple && this._selectedItems.length>0){
|
||||
var tmpArr = [];
|
||||
for (i=0; i<this._selectedItems.length; i++)
|
||||
tmpArr.push(this._selectedItems[i].name);
|
||||
|
||||
return tmpArr;
|
||||
}
|
||||
else if (!this.options.isMultiple && this._selectedItem.hasOwnProperty('id')){
|
||||
return this._selectedItem.name;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
ComboTree.prototype.unbind = function () {
|
||||
this._elemArrowBtn.off('click');
|
||||
this._elemInput.off('click');
|
||||
this._elemItems.off('click');
|
||||
this._elemItemsTitle.off('click');
|
||||
this._elemItemsTitle.off("mousemove");
|
||||
this._elemInput.off('keyup');
|
||||
this._elemInput.off('keydown');
|
||||
this._elemInput.off('mouseup.' + this.comboTreeId);
|
||||
$(document).off('mouseup.' + this.comboTreeId);
|
||||
}
|
||||
|
||||
ComboTree.prototype.destroy = function () {
|
||||
this.unbind();
|
||||
this._elemWrapper.before(this._elemInput);
|
||||
this._elemWrapper.remove();
|
||||
this._elemInput.removeData('plugin_' + comboTreePlugin);
|
||||
}
|
||||
|
||||
|
||||
$.fn[comboTreePlugin] = function (options) {
|
||||
var ctArr = [];
|
||||
this.each(function () {
|
||||
if (!$.data(this, 'plugin_' + comboTreePlugin)) {
|
||||
$.data(this, 'plugin_' + comboTreePlugin, new ComboTree( this, options));
|
||||
ctArr.push($(this).data()['plugin_' + comboTreePlugin]);
|
||||
}
|
||||
});
|
||||
|
||||
if (this.length == 1)
|
||||
return ctArr[0];
|
||||
else
|
||||
return ctArr;
|
||||
}
|
||||
|
||||
})( jQuery, window, document );
|
||||
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,204 @@
|
||||
//雷达图
|
||||
$(function (){
|
||||
coverselect()
|
||||
Achievement()
|
||||
})
|
||||
//流程成熟度--下拉
|
||||
function coverselect(){
|
||||
|
||||
$.ajax({
|
||||
url:baseUrl+'ProcessPubService_queryTerms3',
|
||||
data: {},
|
||||
dataType:"json",
|
||||
type:"post",
|
||||
async:true,
|
||||
success:function(data){
|
||||
let list = data.data.paramFieldMaps;
|
||||
let list2 = data.data.paramCycleMaps;
|
||||
let str='<option id="MATURITYTOTAL">公司级</option>'
|
||||
for(let i=0;i<list.length;i++){
|
||||
if(list[i].termsVal!=''&&list[i].termsVal!='公司级'){
|
||||
str+='<option id="'+list[i].termsKey+'">'+list[i].termsVal+'</option>'
|
||||
}
|
||||
}
|
||||
$('#coverage-field').html(str)
|
||||
|
||||
let str1=''
|
||||
for(let i=0;i<list2.length;i++){
|
||||
if(list2[i].termsVal!=''){
|
||||
str1+='<option id="'+list2[i].termsKey+'">'+list2[i].termsVal+'</option>'
|
||||
}
|
||||
}
|
||||
$('#coverage-evaluation').html(str1)
|
||||
let field='MATURITYTOTAL',cycle='2022';
|
||||
intoajax(field,cycle)
|
||||
$('#coverage-field').change(function(){
|
||||
field = $(this).children('option:selected').attr('id');
|
||||
cycle =$('#coverage-evaluation').children('option:selected').attr('id');
|
||||
intoajax(field,cycle)
|
||||
})
|
||||
$('#coverage-evaluation').change(function(){
|
||||
cycle = $(this).children('option:selected').attr('id');
|
||||
field = $('#coverage-field').children('option:selected').attr('id');
|
||||
intoajax(field,cycle)
|
||||
})
|
||||
|
||||
}
|
||||
});
|
||||
};
|
||||
function intoajax(field,cycle){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_processMaturity',
|
||||
data: {
|
||||
'field':field,
|
||||
'cycle':cycle
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (result) {
|
||||
let data = result.data;
|
||||
bindhtml(data)
|
||||
radarchar(data)
|
||||
}
|
||||
});
|
||||
}
|
||||
function bindhtml(data){
|
||||
$('#csnum').html(data.MFDataMap.MRLEVELSCORE) //成熟度等级分
|
||||
$('#zhnum').html(data.MFDataMap.ASSESSSCORE) //综合评估得分
|
||||
$('.tablenumber1 span').html(data.MFDataMap.ASSESSDATE) //评估时间
|
||||
let list = data.MDDataMaps;
|
||||
let str=''
|
||||
for(var i=0;i<list.length;i++){
|
||||
str+='<tr>' +
|
||||
' <td width="15%">'+list[i].TARGETVAL+'</td>' +
|
||||
' <td width="15%">'+ list[i].REFERENCEELE.replace(/\n/g,'<br/>')+'</td>' +
|
||||
' <td width="15%">'+list[i].TARGETSCORE+'</td>' +
|
||||
' <td class="tabletextLeft tabletextfont">'+list[i].SCOREEVI.replace(/\n/g,'<br/>')+'</td>\n' +
|
||||
'</tr>'
|
||||
$('#coverageTable').html(str)
|
||||
}
|
||||
}
|
||||
var radarchart = echarts.init(document.getElementById("coverageId"));
|
||||
function radarchar(datalist){
|
||||
var list = [];
|
||||
let data = []
|
||||
for(let i=0;i<datalist.MDDataMaps.length;i++){
|
||||
list.push(datalist.MDDataMaps[i].TARGETSCORE)
|
||||
let obj={
|
||||
text:datalist.MDDataMaps[i].TARGETVAL,
|
||||
max:5
|
||||
}
|
||||
data.push(obj)
|
||||
}
|
||||
option = {
|
||||
color: ['rgba(254,212,45,0.6)'],
|
||||
tooltip: {},//提示框
|
||||
radar: [{
|
||||
indicator: data,
|
||||
center: ['53%', '45%'],//位置
|
||||
radius: '80%',
|
||||
startAngle: 180, //雷达摆放角度
|
||||
splitNumber: 4,//圈数
|
||||
//shape: 'circle',雷达圆形
|
||||
name: {
|
||||
formatter: '{value}',
|
||||
textStyle: {
|
||||
fontSize: '14', //外圈标签字体大小
|
||||
color: '#FFF' //外圈标签字体颜色
|
||||
}
|
||||
},
|
||||
splitArea: { // 坐标轴在 grid 区域中的分隔区域,默认不显示。
|
||||
show: true,
|
||||
areaStyle: { // 分隔区域的样式设置。
|
||||
color: [], // 分隔区域颜色。分隔区域会按数组中颜色的顺序依次循环设置颜色。默认是一个深浅的间隔色。
|
||||
}
|
||||
},
|
||||
axisLine: { //指向外圈文本的分隔线样式
|
||||
lineStyle: {
|
||||
color: '#0ecdcd'
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
lineStyle: {
|
||||
color: '#0ecdcd', // 分隔线颜色
|
||||
width: 1, // 分隔线线宽
|
||||
}
|
||||
}
|
||||
}],
|
||||
series: [{
|
||||
name: '雷达图',
|
||||
type: 'radar',
|
||||
data: [
|
||||
{
|
||||
name: '流程成熟度:',
|
||||
value: list,
|
||||
areaStyle: {
|
||||
normal: { // 单项区域填充样式
|
||||
opacity: 1 // 区域透明度
|
||||
}
|
||||
},
|
||||
symbolSize: 2.5, // 单个数据标记的大小,可以设置成诸如 10 这样单一的数字,也可以用数组分开表示宽和高,例如 [20, 10] 表示标记宽为20,高为10。
|
||||
label: { // 单个拐点文本的样式设置
|
||||
normal: {
|
||||
show: true, // 单个拐点文本的样式设置。[ default: false ]
|
||||
position: 'top', // 标签的位置。[ default: top ]
|
||||
distance: 2, // 距离图形元素的距离。当 position 为字符描述值(如 'top'、'insideRight')时候有效。[ default: 5 ]
|
||||
color: '#ffffff', // 文字的颜色。如果设置为 'auto',则为视觉映射得到的颜色,如系列色。[ default: "#fff" ]
|
||||
fontSize: 14, // 文字的字体大小
|
||||
formatter: function (params) {
|
||||
return params.value;
|
||||
}
|
||||
}
|
||||
},
|
||||
}]
|
||||
}]
|
||||
};
|
||||
radarchart.setOption(option)
|
||||
|
||||
}
|
||||
|
||||
|
||||
//领域成熟度 事业部达成率,职能部门达成率
|
||||
function Achievement(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_maturityReachRate',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (result) {
|
||||
debugger;
|
||||
let data1 = result.data.totalRateMaps[0];
|
||||
let data2 = result.data.totalRateMaps[1];
|
||||
$('#achievement_num1').html(data1.totalRate+'%')
|
||||
let str1='';
|
||||
for(let i=0;i<data1.rateMaps.length;i++){
|
||||
if(data1.rateMaps[i].FINISHRATIO!=''){
|
||||
if(i<1){
|
||||
str1+='<li class="titlebgc">'+data1.rateMaps[i].FIELDTARGETVAL+'</li><li class="titlebgc">'+data1.rateMaps[i].FINISHRATIO+'%</li>'
|
||||
}else{
|
||||
str1+='<li>'+data1.rateMaps[i].FIELDTARGETVAL+'</li><li>'+data1.rateMaps[i].FINISHRATIO+'%</li>'
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
$('#achievement_li1').html(str1);
|
||||
$('#achievement_num2').html(data2.totalRate+'%')
|
||||
let str2='';
|
||||
for(let i=0;i<data2.rateMaps.length;i++){
|
||||
if(data2.rateMaps[i].FINISHRATIO!=''){
|
||||
if(i<1){
|
||||
str2+='<li class="titlebgc">'+data2.rateMaps[i].FIELDTARGETVAL+'</li><li class="titlebgc">'+data2.rateMaps[i].FINISHRATIO+'%</li>'
|
||||
}else{
|
||||
str2+='<li>'+data2.rateMaps[i].FIELDTARGETVAL+'</li><li>'+data2.rateMaps[i].FINISHRATIO+'%</li>'
|
||||
}
|
||||
}
|
||||
}
|
||||
$('#achievement_li2').html(str2);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,247 @@
|
||||
$(function (){
|
||||
loadBlock4();
|
||||
})
|
||||
const block4 = echarts.init(document.getElementById("block4"), "shine");
|
||||
function loadBlock4() {
|
||||
const block4Opt = {
|
||||
legend: {
|
||||
show: false,//图例,显示与隐藏
|
||||
top: "center",
|
||||
left: '70%',
|
||||
itemWidth: 30,
|
||||
itemHeight: 40,
|
||||
width: 80,
|
||||
padding: [0, 20],
|
||||
itemGap: 25,
|
||||
formatter: function (name) {
|
||||
return "{title|" + name + "}\n{value|" + (objData[name].commentCount) + "}"
|
||||
},
|
||||
textStyle: {
|
||||
rich: {
|
||||
title: {
|
||||
fontSize: 10,
|
||||
lineHeight: 10,
|
||||
color: "rgba(255,255,255,.85)"
|
||||
},
|
||||
value: {
|
||||
fontSize: 14,
|
||||
lineHeight: 18,
|
||||
color: "rgba(255,255,255,1)"
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
tooltip: { //鼠标移入的显示信息
|
||||
show: true,
|
||||
trigger: "item",
|
||||
formatter: "{a}<br>{b}:{c}"
|
||||
},
|
||||
color: ['#fed401', '#0ecdcd', '#2685cd', '#fca404' ,'#fd4119'],
|
||||
grid: {
|
||||
top: '16%',//圆上文字间距
|
||||
bottom: '55%',//园上文字据下位置
|
||||
left: "44%", //圆上文字据左位置
|
||||
containLabel: false
|
||||
},
|
||||
yAxis: [{
|
||||
type: 'category',
|
||||
inverse: true,
|
||||
axisLine: {
|
||||
show: false
|
||||
},
|
||||
axisTick: {
|
||||
show: false
|
||||
},
|
||||
axisLabel: {
|
||||
interval: 0,
|
||||
inside: true,
|
||||
textStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 16,
|
||||
itemGap: 30,
|
||||
align: 'right'
|
||||
},
|
||||
show: true
|
||||
}
|
||||
}],
|
||||
xAxis: [{
|
||||
show: false
|
||||
}]
|
||||
};
|
||||
let data=[],dataline=[];
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_processComment',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (res) {
|
||||
|
||||
let list = res.data.commentOfField;
|
||||
if(list.length > 5){
|
||||
for(let i=0;i<5;i++){
|
||||
data.push(list[i]);
|
||||
}
|
||||
}else{
|
||||
data = list
|
||||
}
|
||||
debugger;
|
||||
dataline = res.data.commentOfDept;
|
||||
linebind(dataline)
|
||||
$("#block4").addClass("chart-done");
|
||||
arrName = getArrayValue(data, "fieldName");
|
||||
arrValue = getArrayValue(data, "commentCount");
|
||||
sumValue = eval(arrValue.join('+'));
|
||||
|
||||
if(sumValue==0){
|
||||
sumValue=10
|
||||
}
|
||||
|
||||
objData = array2obj(data, "fieldName");
|
||||
optionData = getData(data);
|
||||
block4.setOption(block4Opt);
|
||||
block4.setOption({
|
||||
yAxis: {
|
||||
data: optionData.yAxis
|
||||
},
|
||||
series: optionData.series,
|
||||
legend: {
|
||||
data: arrName
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
function getArrayValue(array, key) {
|
||||
var key = key || "value";
|
||||
var res = [];
|
||||
if (array) {
|
||||
array.forEach(function (t) {
|
||||
res.push(t[key]);
|
||||
});
|
||||
}
|
||||
return res;
|
||||
}
|
||||
function array2obj(array, key) {
|
||||
var resObj = {};
|
||||
for (var i = 0; i < array.length; i++) {
|
||||
resObj[array[i][key]] = array[i];
|
||||
}
|
||||
return resObj;
|
||||
}
|
||||
function getData(data) {
|
||||
var res = {
|
||||
series: [],
|
||||
yAxis: []
|
||||
};
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
res.series.push({
|
||||
name: '流程评论数量',
|
||||
type: 'pie',
|
||||
clockWise: true, //顺时加载
|
||||
hoverAnimation: false, //鼠标移入变大
|
||||
radius: [80 - i * 15 + '%', 73 - i * 15 + '%'],
|
||||
center: ["50%", "55%"],
|
||||
label: {
|
||||
show: false
|
||||
},
|
||||
itemStyle: {
|
||||
label: {
|
||||
show: false,
|
||||
},
|
||||
labelLine: {
|
||||
show: false
|
||||
},
|
||||
borderWidth: 3,
|
||||
borderRadius: 50
|
||||
},
|
||||
data: [{
|
||||
value: data[i].commentCount,
|
||||
name: data[i].fieldName
|
||||
}, {
|
||||
value: sumValue - data[i].commentCount,
|
||||
name: '',
|
||||
itemStyle: {
|
||||
color: "rgba(0,0,0,0)",
|
||||
borderWidth: 0,
|
||||
},
|
||||
tooltip: {
|
||||
show: false
|
||||
},
|
||||
hoverAnimation: false
|
||||
}]
|
||||
});
|
||||
res.series.push({
|
||||
name: '',
|
||||
type: 'pie',
|
||||
silent: true,
|
||||
z: 1,
|
||||
clockWise: true, //顺时加载 圆的方向
|
||||
hoverAnimation: false, //鼠标移入变大
|
||||
radius: [80 - i * 15 + '%', 73 - i * 15 + '%'],
|
||||
center: ["50%", "55%"],//圆的位置,左,上
|
||||
label: {
|
||||
show: false
|
||||
},
|
||||
itemStyle: {
|
||||
label: {
|
||||
show: false,
|
||||
},
|
||||
labelLine: {
|
||||
show: false
|
||||
},
|
||||
borderWidth: 3,
|
||||
borderRadius: 50,
|
||||
borderColor:'#FFFFFF'
|
||||
},
|
||||
data: [{
|
||||
value: 7.5,//控制圆开始位置和结束位置
|
||||
itemStyle: {
|
||||
color: "#1a3e51", //控制大圈背景颜色
|
||||
borderWidth: 0,
|
||||
},
|
||||
tooltip: {
|
||||
show: false
|
||||
},
|
||||
hoverAnimation: false
|
||||
}, {
|
||||
value: 2.5,//控制圆开始位置和结束位置
|
||||
name: '',
|
||||
itemStyle: {
|
||||
color: "rgba(0,0,0,0)",
|
||||
borderWidth: 0,
|
||||
},
|
||||
tooltip: {
|
||||
show: false
|
||||
},
|
||||
hoverAnimation: false
|
||||
}]
|
||||
});
|
||||
var nnn = data[i].fieldName
|
||||
if(nnn.length>15){
|
||||
res.yAxis.push(nnn.slice(0,15));
|
||||
}else{
|
||||
res.yAxis.push(nnn);
|
||||
}
|
||||
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
//流程评论进度条
|
||||
function linebind(dataline){
|
||||
let html='';
|
||||
for(let i=0;i<dataline.length;i++){
|
||||
if(dataline[i].deptName!=''){
|
||||
html+='<li id="'+dataline[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+dataline[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+dataline[i].commentCount+'%></div></div>' +
|
||||
' <p class="num">'+dataline[i].commentCount+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
|
||||
}
|
||||
$('#plan ul').html(html);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,345 @@
|
||||
$(function (){
|
||||
affiliatedUnitInto()
|
||||
|
||||
})
|
||||
//流程连接度分析--下拉
|
||||
function affiliatedUnitInto(){
|
||||
$.ajax({
|
||||
url:baseUrl+'ProcessPubService_queryTerms2',//异步请求访问链接
|
||||
data: {},//提交的数据,将自动转换为请求字符串格式
|
||||
dataType:"json",//json,xml,text,html等
|
||||
type:"post",//默认值: "GET"。请求方式 ("POST" 或 "GET")
|
||||
async:true,//默认为true,即默认为异步请求,否则为同步请求
|
||||
success:function(data){
|
||||
let list = data.data.deptTreeNodes;
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#radio1').comboTree({
|
||||
source: list,
|
||||
ulid:'radio1_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('#radio2').comboTree({
|
||||
source: list2,
|
||||
ulid:'radio2_id',
|
||||
isMultiple: false
|
||||
});
|
||||
let unit='',field='',radio1Id='',radio2Id='';
|
||||
ajaxbind(unit,field)
|
||||
$('.radio1_id ul li .comboTreeItemTitle').each(function (e){
|
||||
$('.radio1_id ul li .comboTreeItemTitle:eq('+e+')').click(function (){
|
||||
unit=$(this).attr('id')
|
||||
radio1Id = $(this).attr('id')
|
||||
if($('#radio2').val()=='全部'){
|
||||
field=''
|
||||
}else{
|
||||
field = radio2Id
|
||||
}
|
||||
ajaxbind(unit,field)
|
||||
});
|
||||
})
|
||||
$('.radio2_id ul li .comboTreeItemTitle').each(function (e){
|
||||
$('.radio2_id ul li .comboTreeItemTitle:eq('+e+')').click(function (){
|
||||
field=$(this).attr('id')
|
||||
radio2Id = $(this).attr('id')
|
||||
if($('#radio1').val()=='全部'){
|
||||
unit=''
|
||||
}else{
|
||||
unit = radio1Id
|
||||
}
|
||||
ajaxbind(unit,field)
|
||||
});
|
||||
})
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//环形图调接口
|
||||
function ajaxbind(unit,field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_processCONND',//异步请求访问链接
|
||||
data: {
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},//提交的数据,将自动转换为请求字符串格式
|
||||
dataType: "json",//json,xml,text,html等
|
||||
type: "post",//默认值: "GET"。请求方式 ("POST" 或 "GET")
|
||||
async: true,//默认为true,即默认为异步请求,否则为同步请求
|
||||
success: function (data) {
|
||||
var v1 = data.data.prepostRatio;
|
||||
var v2 = data.data.preRatio
|
||||
var v3 = data.data.postRatio
|
||||
var v4 = data.data.noprepostRatio
|
||||
charts1(v1);
|
||||
charts2(v2);
|
||||
charts3(v3);
|
||||
charts4(v4);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var myChart1 = echarts.init(document.getElementById('echarts1'));
|
||||
var charts1 = function (v1,v2) {
|
||||
var option = {
|
||||
series: [{
|
||||
type: 'pie',
|
||||
radius: ['75%', '100%'],
|
||||
color: '#50C2FF',
|
||||
hoverAnimation:false,
|
||||
data: [
|
||||
{
|
||||
value: v1,
|
||||
name: '有前后置',
|
||||
label: {
|
||||
normal: {
|
||||
formatter: function (params) {
|
||||
return v1 + '%'
|
||||
},
|
||||
textStyle: {
|
||||
fontSize: 36,
|
||||
color: '#50C2FF',
|
||||
},
|
||||
position: 'center'
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
value:100-v1,
|
||||
name: ' ',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(255,255,255,0)',
|
||||
}
|
||||
},
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
type: 'pie',
|
||||
radius: ['95%', '100%'],
|
||||
color: '#50C2FF',
|
||||
hoverAnimation:false,
|
||||
label: {
|
||||
normal: {
|
||||
position: 'inner'
|
||||
}
|
||||
},
|
||||
labelLine: {
|
||||
normal: {
|
||||
show: false
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{
|
||||
value: 100,
|
||||
name: ' ',
|
||||
},
|
||||
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
myChart1.clear();
|
||||
setTimeout(function () {
|
||||
myChart1.setOption(option);
|
||||
},100);
|
||||
}
|
||||
|
||||
var myChart2 = echarts.init(document.getElementById('echarts2'));
|
||||
var charts2 = function (v1,v2) {
|
||||
var option = {
|
||||
series: [{
|
||||
type: 'pie',
|
||||
radius: ['75%', '100%'],
|
||||
color: '#44FEFD',
|
||||
hoverAnimation:false,
|
||||
data: [
|
||||
{
|
||||
value: v1,
|
||||
name: '有前后置',
|
||||
label: {
|
||||
normal: {
|
||||
formatter: function (params) {
|
||||
return v1 + '%'
|
||||
},
|
||||
textStyle: {
|
||||
fontSize: 36,
|
||||
color: '#44FEFD',
|
||||
},
|
||||
position: 'center'
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
value: 100-v1,
|
||||
name: ' ',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(255,255,255,0)',
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
type: 'pie',
|
||||
radius: ['95%', '100%'],
|
||||
color: '#44FEFD',
|
||||
hoverAnimation:false,
|
||||
label: {
|
||||
normal: {
|
||||
position: 'inner'
|
||||
}
|
||||
},
|
||||
labelLine: {
|
||||
normal: {
|
||||
show: false
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{
|
||||
value: 100,
|
||||
name: ' ',
|
||||
},
|
||||
|
||||
]
|
||||
}]
|
||||
};
|
||||
myChart2.clear();
|
||||
setTimeout(function () {
|
||||
myChart2.setOption(option);
|
||||
},100);
|
||||
}
|
||||
|
||||
var myChart3 = echarts.init(document.getElementById('echarts3'));
|
||||
var charts3 = function (v1,v2) {
|
||||
var option = {
|
||||
series: [{
|
||||
type: 'pie',
|
||||
radius: ['75%', '100%'],
|
||||
color: '#00E6AC',
|
||||
hoverAnimation: false,
|
||||
data: [
|
||||
{
|
||||
value: v1,
|
||||
name: '有前后置',
|
||||
label: {
|
||||
normal: {
|
||||
formatter: function (params) {
|
||||
return v1 + '%'
|
||||
},
|
||||
textStyle: {
|
||||
fontSize: 36,
|
||||
color: '#00E6AC',
|
||||
},
|
||||
position: 'center'
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
value: 100-v1,
|
||||
name: ' ',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(255,255,255,0)',
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
]
|
||||
}, {
|
||||
type: 'pie',
|
||||
radius: ['95%', '100%'],
|
||||
color: '#00E6AC',
|
||||
hoverAnimation: false,
|
||||
label: {
|
||||
normal: {
|
||||
position: 'inner'
|
||||
}
|
||||
},
|
||||
labelLine: {
|
||||
normal: {
|
||||
show: false
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{
|
||||
value: 100,
|
||||
name: ' ',
|
||||
},
|
||||
|
||||
]
|
||||
}]
|
||||
};
|
||||
myChart3.clear();
|
||||
setTimeout(function () {
|
||||
myChart3.setOption(option);
|
||||
},100);
|
||||
}
|
||||
var myChart4 = echarts.init(document.getElementById('echarts4'));
|
||||
var charts4 = function (v1,v2) {
|
||||
var option = {
|
||||
series: [{
|
||||
type: 'pie',
|
||||
radius: ['75%', '100%'],
|
||||
color: '#F9D905',
|
||||
hoverAnimation: false,
|
||||
data: [
|
||||
{
|
||||
value: v1,
|
||||
name: '有前后置',
|
||||
label: {
|
||||
normal: {
|
||||
formatter: function (params) {
|
||||
return v1 + '%'
|
||||
},
|
||||
textStyle: {
|
||||
fontSize: 36,
|
||||
color: '#F9D905',
|
||||
},
|
||||
position: 'center'
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
value: 100-v1,
|
||||
name: ' ',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'rgba(255,255,255,0)',
|
||||
}
|
||||
},
|
||||
},
|
||||
]
|
||||
}, {
|
||||
type: 'pie',
|
||||
radius: ['95%', '100%'],
|
||||
color: '#F9D905',
|
||||
hoverAnimation: false,
|
||||
label: {
|
||||
normal: {
|
||||
position: 'inner'
|
||||
}
|
||||
},
|
||||
labelLine: {
|
||||
normal: {
|
||||
show: false
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{
|
||||
value: 100,
|
||||
name: ' ',
|
||||
},
|
||||
|
||||
]
|
||||
}]
|
||||
};
|
||||
myChart4.clear();
|
||||
setTimeout(function () {
|
||||
myChart4.setOption(option);
|
||||
},100);
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,286 @@
|
||||
|
||||
$(function(){
|
||||
//流程,制度,覆盖率
|
||||
firstnumber();
|
||||
//下拉框
|
||||
firstSelect();
|
||||
//进度条
|
||||
progressbar();
|
||||
//静态原型
|
||||
nodebind();
|
||||
});
|
||||
|
||||
//流程,制度,覆盖率
|
||||
function firstnumber(){
|
||||
$.ajax({
|
||||
url:baseUrl+'ProcessPubService_processTotalCount',//异步请求访问链接
|
||||
data:"",//提交的数据,将自动转换为请求字符串格式
|
||||
dataType:"json",//json,xml,text,html等
|
||||
type:"post",//默认值: "GET"。请求方式 ("POST" 或 "GET")
|
||||
async:true,//默认为true,即默认为异步请求,否则为同步请求
|
||||
success:function(data){
|
||||
//当异步请求完成时所执行的回调函数
|
||||
//流程个数
|
||||
let bpmn2TotalNum = data.data.bpmn2TotalNum;
|
||||
let list = counterInto(bpmn2TotalNum)
|
||||
let bpmn2TotalNumStr='';
|
||||
for(let i=0;i<list.length;i++){
|
||||
bpmn2TotalNumStr+='<li class="data_cage counter">'+list[i]+'</li>'
|
||||
}
|
||||
$('#bpmn2TotalNum').html(bpmn2TotalNumStr)
|
||||
//制度个数
|
||||
let policyTotalNum = data.data.policyTotalNum;
|
||||
let policyTotalNumlist = counterInto(policyTotalNum)
|
||||
let policyTotalNumStr='';
|
||||
for(let i=0;i<policyTotalNumlist.length;i++){
|
||||
policyTotalNumStr+='<li class="data_cage counter">'+policyTotalNumlist[i]+'</li>'
|
||||
}
|
||||
$('#policyTotalNum').html(policyTotalNumStr)
|
||||
//覆盖率
|
||||
$('#coverage').html(data.data.coverage)
|
||||
$('.counter').countUp();
|
||||
}
|
||||
});
|
||||
function counterInto(num){
|
||||
let list=[],str=0,str1=0;
|
||||
if(num<10){
|
||||
list=[0,0,0,num]
|
||||
}else if(num<100){
|
||||
let arr = num.toString().split(''); //convert string to number & split by ''
|
||||
list = arr.map(function(el){return +el}) //convert each digit to numbers
|
||||
list.unshift(str)
|
||||
list.unshift(str1)
|
||||
}else if(num<1000){
|
||||
let arr = num.toString().split(''); //convert string to number & split by ''
|
||||
list = arr.map(function(el){return +el}) //convert each digit to numbers
|
||||
list.unshift(str)
|
||||
}else{
|
||||
let arr = num.toString().split(''); //convert string to number & split by ''
|
||||
list = arr.map(function(el){return +el}) //convert each digit to numbers
|
||||
}
|
||||
return list
|
||||
}
|
||||
};
|
||||
//下拉框
|
||||
function firstSelect(){
|
||||
$.ajax({
|
||||
url:baseUrl+'ProcessPubService_queryTerms1',//异步请求访问链接
|
||||
data: {},//提交的数据,将自动转换为请求字符串格式
|
||||
dataType:"json",//json,xml,text,html等
|
||||
type:"post",//默认值: "GET"。请求方式 ("POST" 或 "GET")
|
||||
async:true,//默认为true,即默认为异步请求,否则为同步请求
|
||||
success:function(data){
|
||||
let list = data.data.terms1;
|
||||
let id='';
|
||||
if(list.length>0){
|
||||
let str=''
|
||||
for(let i=0;i<list.length;i++){
|
||||
str+='<option id="'+list[i].termsKey+'">'+list[i].termsVal+'</option>'
|
||||
}
|
||||
$('#terms1').html(str)
|
||||
//一表格
|
||||
id=(list[0].termsKey);
|
||||
$('#terms1').change(function(){
|
||||
id = ($(this).children('option:selected').attr('id'));
|
||||
tabledata(id)
|
||||
})
|
||||
}
|
||||
tabledata(id)
|
||||
}
|
||||
});
|
||||
}
|
||||
//首页表格
|
||||
function tabledata(id){
|
||||
$.ajax({
|
||||
url:baseUrl+'ProcessPubService_processList',//异步请求访问链接
|
||||
data: {
|
||||
'terms':id
|
||||
},//提交的数据,将自动转换为请求字符串格式
|
||||
dataType:"json",//json,xml,text,html等
|
||||
type:"post",//默认值: "GET"。请求方式 ("POST" 或 "GET")
|
||||
async:true,//默认为true,即默认为异步请求,否则为同步请求
|
||||
success:function(res){
|
||||
let data = res.data;
|
||||
if(!data){
|
||||
return;
|
||||
}
|
||||
let strTh = '',strTr='';
|
||||
for(let i=0;i<data.headtop.length;i++){
|
||||
strTh+='<th class="titlebgc titlecolor">'+data.headtop[i]+'</th>'
|
||||
}
|
||||
$('#table1 thead tr').html(strTh)
|
||||
if(id=='process'){
|
||||
$('#table1 tbody').html();
|
||||
for(let j=0;j<data.content.length;j++){
|
||||
let strTd1='<td class="titlebgc titlecolor">\n' +
|
||||
' <span>'+data.content[j].leftname+'</span>\n' +
|
||||
' </td>';
|
||||
let strtitle='',strnum1='',strnum2='',strnum3='';
|
||||
for(let a=0;a<data.content[j].secondcont.length;a++){
|
||||
strtitle+='<div>'+data.content[j].secondcont[a].name+'</div>'
|
||||
}
|
||||
let firstTd = '<td>'+strtitle+'</td>'
|
||||
for(let a=0;a<data.content[j].l2ol3BPMN2NUM.length;a++){
|
||||
strnum1+='<div>'+data.content[j].l2ol3BPMN2NUM[a].name+'</div>'
|
||||
}
|
||||
let Td1 = '<td>'+strnum1+'</td>'
|
||||
for(let a=0;a<data.content[j].l2ol3POLICYNUM.length;a++){
|
||||
strnum2+='<div>'+data.content[j].l2ol3POLICYNUM[a].name+'</div>'
|
||||
}
|
||||
let Td2 = '<td>'+strnum2+'</td>'
|
||||
for(let a=0;a<data.content[j].coverage.length;a++){
|
||||
strnum3+='<div>'+data.content[j].coverage[a].name+'</div>'
|
||||
}
|
||||
let Td3 = '<td>'+strnum3+'</td>'
|
||||
strTr+='<tr>'+strTd1+firstTd+Td1+Td2+Td3+'</tr>'
|
||||
}
|
||||
$('#table1 tbody').html(strTr)
|
||||
}
|
||||
if(id=='achievements'){
|
||||
$('#table1 tbody').html();
|
||||
for(let j=0;j<data.content.length;j++){
|
||||
let strTd1='<td class="titlebgc titlecolor">\n' +
|
||||
' <span>'+data.content[j].leftname+'</span>\n' +
|
||||
' </td>';
|
||||
let strtitle='',strnum1='',strnum2='';
|
||||
for(let a=0;a<data.content[j].secondcont.length;a++){
|
||||
strtitle+='<div>'+data.content[j].secondcont[a].name+'</div>'
|
||||
}
|
||||
let firstTd = '<td>'+strtitle+'</td>'
|
||||
for(let a=0;a<data.content[j].ACVNUM.length;a++){
|
||||
strnum1+='<div>'+data.content[j].ACVNUM[a].name+'</div>'
|
||||
}
|
||||
let Td1 = '<td>'+strnum1+'</td>'
|
||||
for(let a=0;a<data.content[j].coverage.length;a++){
|
||||
strnum2+='<div>'+data.content[j].coverage[a].name+'</div>'
|
||||
}
|
||||
let Td2 = '<td>'+strnum2+'</td>'
|
||||
strTr+='<tr>'+strTd1+firstTd+Td1+Td2+'</tr>'
|
||||
}
|
||||
$('#table1 tbody').html(strTr)
|
||||
}
|
||||
if(id=='systemnode'){
|
||||
$('#table1 tbody').html();
|
||||
for(let j=0;j<data.content.length;j++){
|
||||
let strTd1='<td class="titlebgc titlecolor">\n' +
|
||||
' <span>'+data.content[j].leftname+'</span>\n' +
|
||||
' </td>';
|
||||
let strtitle='',strnum1='',strnum2='';
|
||||
for(let a=0;a<data.content[j].secondcont.length;a++){
|
||||
strtitle+='<div>'+data.content[j].secondcont[a].name+'</div>'
|
||||
}
|
||||
let firstTd = '<td>'+strtitle+'</td>'
|
||||
for(let a=0;a<data.content[j].SYSNUM.length;a++){
|
||||
strnum1+='<div>'+data.content[j].SYSNUM[a].name+'</div>'
|
||||
}
|
||||
let Td1 = '<td>'+strnum1+'</td>'
|
||||
for(let a=0;a<data.content[j].coverage.length;a++){
|
||||
strnum2+='<div>'+data.content[j].coverage[a].name+'</div>'
|
||||
}
|
||||
let Td2 = '<td>'+strnum2+'</td>'
|
||||
strTr+='<tr>'+strTd1+firstTd+Td1+Td2+'</tr>'
|
||||
}
|
||||
$('#table1 tbody').html(strTr)
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
//流程连接度分析 四个进度条
|
||||
function progressbar(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_processCONNDDetail',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (res) {
|
||||
let BDY = res.data.BDY;
|
||||
let BDN = res.data.BDN;
|
||||
let FDY = res.data.FDY;
|
||||
let FDN = res.data.FDN;
|
||||
let html='',html1='',html2='',html3='';
|
||||
for(let i=0;i<BDY.length;i++){
|
||||
html+='<li id="'+BDY[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDY[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+BDY[i].ratio+'%;></div></div>' +
|
||||
' <p class="num">'+BDY[i].ratio+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#li_bdy').html(html);
|
||||
for(let i=0;i<BDN.length;i++){
|
||||
html1+='<li id="'+BDN[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDN[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+BDN[i].ratio+'%;></div></div>' +
|
||||
' <p class="num">'+BDN[i].ratio+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#li_bdn').html(html1)
|
||||
for(let i=0;i<FDY.length;i++){
|
||||
html2+='<li id="'+FDY[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDY[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+FDY[i].ratio+'%;></div></div>' +
|
||||
' <p class="num">'+FDY[i].ratio+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#li_fdy').html(html2)
|
||||
for(let i=0;i<FDN.length;i++){
|
||||
html3+='<li id="'+FDN[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDN[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+FDN[i].ratio+'%;></div></div>' +
|
||||
' <p class="num">'+FDN[i].ratio+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#li_fdn').html(html3)
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
//静态原型图
|
||||
function nodebind(){
|
||||
$.ajax({
|
||||
url:baseUrl+'ProcessPubService_queryTerms3',
|
||||
data: {},
|
||||
dataType:"json",
|
||||
type:"post",
|
||||
async:true,
|
||||
success:function(data){
|
||||
let list = data.data.paramFieldMaps;
|
||||
let list2 = data.data.paramCycleMaps;
|
||||
let str=''
|
||||
for(let i=0;i<list.length;i++){
|
||||
str+='<option id="'+list[i].termsKey+'">'+list[i].termsVal+'</option>'
|
||||
}
|
||||
$('#node-field').html(str)
|
||||
|
||||
let str1=''
|
||||
for(let i=0;i<list2.length;i++){
|
||||
str1+='<option id="'+list2[i].termsKey+'">'+list2[i].termsVal+'</option>'
|
||||
}
|
||||
$('#node-evaluation').html(str1)
|
||||
let field='',cycle='';
|
||||
// intoajax(field,cycle)
|
||||
$('#node-field').change(function(){
|
||||
field = $(this).children('option:selected').attr('id');
|
||||
cycle =$('#coverage-evaluation').children('option:selected').attr('id');
|
||||
// intoajax(field,cycle)
|
||||
})
|
||||
$('#node-evaluation').change(function(){
|
||||
cycle = $(this).children('option:selected').attr('id');
|
||||
field = $('#node-field').children('option:selected').attr('id');
|
||||
// intoajax(field,cycle)
|
||||
})
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -0,0 +1,95 @@
|
||||
$(function(){
|
||||
management();
|
||||
});
|
||||
|
||||
function management(){
|
||||
fournumber('', '');
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_nodeAnalysisTerms',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
let unit = '', field = '', radio1Id = '', radio2Id = '', id = '';
|
||||
fournumber(unit, field)
|
||||
let list = data.data.deptTreeNodes;
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#sendissued').comboTree({
|
||||
source: list,
|
||||
ulid: 'sendissued_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('#category').comboTree({
|
||||
source: list2,
|
||||
ulid: 'category_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.sendissued_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.sendissued_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
unit = $(this).attr('id')
|
||||
radio1Id = $(this).attr('id')
|
||||
if ($('#category').val() == '全部') {
|
||||
field = ''
|
||||
} else {
|
||||
field = radio2Id
|
||||
}
|
||||
fournumber(unit, field)
|
||||
});
|
||||
})
|
||||
$('.category_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.category_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
field = $(this).attr('id')
|
||||
radio2Id = $(this).attr('id')
|
||||
if ($('#sendissued').val() == '全部') {
|
||||
unit = ''
|
||||
} else {
|
||||
unit = radio1Id
|
||||
}
|
||||
fournumber( unit, field)
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
function fournumber(unit,field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_nodeAnalysis',
|
||||
data: {
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
var n1=0,n2=0,n3=0,n4=0,n5=0,n6=0,n7=0;
|
||||
$('#nodeTotalNum').html(data.data.nodeTotalNum)
|
||||
$('#approvalRrationate i').html(data.data.approvalRrationate)
|
||||
$('#approvalNodeNum').html(data.data.approvalNodeNum)
|
||||
$('#onlineRate label').html(data.data.onlineRate)
|
||||
$('#operationNodeNum').html(data.data.operationNodeNum)
|
||||
$('#operationRate i').html(data.data.operationRate)
|
||||
$('#itsysRate label').html(data.data.itsysRate)
|
||||
/* $('#approvalRrationate i').html(data.data.approvalRrationate).countUp()*/
|
||||
/* $('#approvalNodeNum').html(data.data.approvalNodeNum).countUp()*/
|
||||
/* $('#onlineRate label').html(data.data.onlineRate).countUp()*/
|
||||
$('#onlineRate').css({
|
||||
'width':data.data.onlineRate+'%'
|
||||
})
|
||||
/* $('#operationNodeNum').html(data.data.operationNodeNum).countUp()*/
|
||||
/* $('#operationRate i').html(data.data.operationRate).countUp()*/
|
||||
/* $('#itsysRate label').html(data.data.itsysRate).countUp()*/
|
||||
$('#itsysRate').css({
|
||||
'width':data.data.itsysRate+'%'
|
||||
})
|
||||
}else{
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -0,0 +1,98 @@
|
||||
$(function(){
|
||||
management();
|
||||
});
|
||||
|
||||
function management(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_nodeAnalysisTerms',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
let unit = '', field = '', radio1Id = '', radio2Id = '', id = '';
|
||||
fournumber(unit, field)
|
||||
let list = data.data.deptTreeNodes;
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#sendissued').comboTree({
|
||||
source: list,
|
||||
ulid: 'sendissued_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('#category').comboTree({
|
||||
source: list2,
|
||||
ulid: 'category_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.sendissued_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.sendissued_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
unit = $(this).attr('id')
|
||||
radio1Id = $(this).attr('id')
|
||||
if ($('#category').val() == '全部') {
|
||||
field = ''
|
||||
} else {
|
||||
field = radio2Id
|
||||
}
|
||||
fournumber(unit, field)
|
||||
});
|
||||
})
|
||||
$('.category_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.category_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
field = $(this).attr('id')
|
||||
radio2Id = $(this).attr('id')
|
||||
if ($('#sendissued').val() == '全部') {
|
||||
unit = ''
|
||||
} else {
|
||||
unit = radio1Id
|
||||
}
|
||||
fournumber( unit, field)
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
function fournumber(unit,field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_nodeAnalysis',
|
||||
data: {
|
||||
'unit':unit,
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
/* var data = {
|
||||
"data":{
|
||||
"nodeTotalNum":3484,
|
||||
"approvalNodeNum":759,
|
||||
"approvalRrationate":"21.79",
|
||||
"onlineRate":"75.89",
|
||||
"operationNodeNum":1485,
|
||||
"operationRate":"42.62",
|
||||
"itsysRate":"26.33"
|
||||
},
|
||||
}*/
|
||||
$('#nodeTotalNum').html(data.data.nodeTotalNum).countUp()
|
||||
$('#approvalRrationate i').html(data.data.approvalRrationate).countUp()
|
||||
$('#approvalNodeNum').html(data.data.approvalNodeNum).countUp()
|
||||
$('#onlineRate label').html(data.data.onlineRate).countUp()
|
||||
$('#onlineRate').css({
|
||||
'width':data.data.onlineRate+'%'
|
||||
})
|
||||
$('#operationNodeNum').html(data.data.operationNodeNum).countUp()
|
||||
$('#operationRate i').html(data.data.operationRate).countUp()
|
||||
$('#itsysRate label').html(data.data.itsysRate).countUp()
|
||||
$('#itsysRate').css({
|
||||
'width':data.data.itsysRate+'%'
|
||||
})
|
||||
}else{
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -0,0 +1,292 @@
|
||||
$(function() {
|
||||
approval()
|
||||
sexnumber()
|
||||
approvalfile()
|
||||
sexnumberfile()
|
||||
})
|
||||
//审批类
|
||||
function approval(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_deptNodeAttrTerms',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
let field = '';
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#node-field111').comboTree({
|
||||
source: list2,
|
||||
ulid: 'node-field111_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.node-field111_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.node-field111_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
field = $(this).attr('id')
|
||||
sexnumber(field)
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
//审批类
|
||||
function sexnumber(field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_deptNodeAttrApproval',
|
||||
data: {
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
let BDAcount = data.data.BDApprovalNodeCountMaps //审批节点数量--事业部
|
||||
let FDAcount = data.data.FDApprovalNodeCountMaps //审批节点数量--职能部门
|
||||
let BDArate = data.data.BDApprovalNodeRateMaps //审批节点占比--事业部
|
||||
let FDArate = data.data.FDApprovalNodeRateMaps //审批节点占比--职能部门
|
||||
let BDAol = data.data.BDApprovalOLNodeRateMaps //审批节点线上化占比--事业部
|
||||
let FDAol = data.data.FDApprovalOLNodeRateMaps //审批节点线上化占比--职能部门
|
||||
//审批节点数量--事业部
|
||||
let all = 0;
|
||||
for(var i=0;i<BDAcount.length;i++){
|
||||
if(BDAcount[i].approvalNodeNum > all){
|
||||
all = BDAcount[i].approvalNodeNum
|
||||
}
|
||||
}
|
||||
let html='';var num=0;
|
||||
for(let i=0;i<BDAcount.length;i++){
|
||||
if(all!=0){
|
||||
num= BDAcount[i].approvalNodeNum/all*100
|
||||
}
|
||||
html+='<li id="'+BDAcount[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDAcount[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+num +'%;></div></div>' +
|
||||
' <p class="num">'+BDAcount[i].approvalNodeNum+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDAcountfile').html(html);
|
||||
//审批节点数量--职能部门
|
||||
let all1 = 0;
|
||||
for(var i=0;i<FDAcount.length;i++){
|
||||
if(FDAcount[i].approvalNodeNum > all1){
|
||||
all1 = FDAcount[i].approvalNodeNum
|
||||
}
|
||||
}
|
||||
let html1='',num1=0;
|
||||
for(let i=0;i<FDAcount.length;i++){
|
||||
if(all1!=0){
|
||||
num1= FDAcount[i].approvalNodeNum/all1*100
|
||||
}
|
||||
html1+='<li id="'+FDAcount[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDAcount[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+num1+'%;></div></div>' +
|
||||
' <p class="num">'+FDAcount[i].approvalNodeNum+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDAcountfile').html(html1);
|
||||
|
||||
//审批节点占比--事业部
|
||||
let html2='';
|
||||
for(let i=0;i<BDArate.length;i++){
|
||||
html2+='<li id="'+BDArate[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDArate[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+BDArate[i].approvalRate+'%;></div></div>' +
|
||||
' <p class="num">'+BDArate[i].approvalRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDAratefile').html(html2);
|
||||
|
||||
//审批节点占比--职能部门
|
||||
let html3='';
|
||||
for(let i=0;i<FDArate.length;i++){
|
||||
html3+='<li id="'+FDArate[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDArate[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+FDArate[i].approvalRate+'%;></div></div>' +
|
||||
' <p class="num">'+FDArate[i].approvalRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDAratefile').html(html3);
|
||||
|
||||
//审批节点线上化占比--事业部
|
||||
let html4='';
|
||||
for(let i=0;i<BDAol.length;i++){
|
||||
html4+='<li id="'+BDAol[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDAol[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+BDAol[i].approvalOLRate+'%;></div></div>' +
|
||||
' <p class="num">'+BDAol[i].approvalOLRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDAolfile').html(html4);
|
||||
|
||||
//审批节点线上化占比--职能部门
|
||||
let html5='';
|
||||
for(let i=0;i<FDAol.length;i++){
|
||||
html5+='<li id="'+FDAol[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDAol[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+FDAol[i].approvalOLRate+'%;></div></div>' +
|
||||
' <p class="num">'+FDAol[i].approvalOLRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDAolfile').html(html5);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
//操作类
|
||||
function approvalfile(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_deptNodeAttrTerms',
|
||||
data: "",
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok') {
|
||||
let field = '';
|
||||
let list2 = data.data.fieldTreeNodes;
|
||||
$('#node-field222').comboTree({
|
||||
source: list2,
|
||||
ulid: 'node-field222_id',
|
||||
isMultiple: false
|
||||
});
|
||||
$('.node-field111_id ul li .comboTreeItemTitle').each(function (e) {
|
||||
$('.node-field222_id ul li .comboTreeItemTitle:eq(' + e + ')').click(function () {
|
||||
field = $(this).attr('id')
|
||||
sexnumberfile(field)
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
//操作类
|
||||
function sexnumberfile(field){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_deptNodeAttrOperation',
|
||||
data: {
|
||||
'field':field
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
if(data.result == 'ok'){
|
||||
let BDOcount = data.data.BDOperationNodeCountMaps //操作节点数量--事业部
|
||||
let FDOcount = data.data.FDOperationNodeCountMaps //操作节点数量--职能部门
|
||||
let BDOrate = data.data.BDOperationNodeRateMaps //操作节点占比--事业部
|
||||
let FDOrate = data.data.FDOperationNodeRateMaps //操作节点占比--职能部门
|
||||
let BDOol = data.data.BDOperationOLNodeRateMaps //操作节点线上化占比--事业部
|
||||
let FDOol = data.data.FDOperationOLNodeRateMaps //操作节点线上化占比--职能部门
|
||||
//操作节点数量--事业部
|
||||
let all = 0;
|
||||
for(var i=0;i<BDOcount.length;i++){
|
||||
if(BDOcount[i].operationNodeNum > all){
|
||||
all = BDOcount[i].operationNodeNum
|
||||
}
|
||||
}
|
||||
let html='';var num=0;
|
||||
for(let i=0;i<BDOcount.length;i++){
|
||||
if(all!=0){
|
||||
num= BDOcount[i].operationNodeNum/all*100
|
||||
}
|
||||
html+='<li id="'+BDOcount[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDOcount[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+num +'%;></div></div>' +
|
||||
' <p class="num">'+BDOcount[i].operationNodeNum+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDOcountfile').html(html);
|
||||
//操作节点数量--职能部门
|
||||
let all1 = 0;
|
||||
for(var i=0;i<FDOcount.length;i++){
|
||||
if(FDOcount[i].operationNodeNum > all1){
|
||||
all1 = FDOcount[i].operationNodeNum
|
||||
}
|
||||
}
|
||||
let html1='',num1=0;
|
||||
for(let i=0;i<FDOcount.length;i++){
|
||||
if(all1!=0){
|
||||
num1= FDOcount[i].operationNodeNum/all1*100
|
||||
}
|
||||
html1+='<li id="'+FDOcount[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDOcount[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+num1+'%;></div></div>' +
|
||||
' <p class="num">'+FDOcount[i].operationNodeNum+'</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDOcountfile').html(html1);
|
||||
|
||||
//操作节点占比--事业部
|
||||
let html2='';
|
||||
for(let i=0;i<BDOrate.length;i++){
|
||||
html2+='<li id="'+BDOrate[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDOrate[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+BDOrate[i].operationNodeRate+'%;></div></div>' +
|
||||
' <p class="num">'+BDOrate[i].operationNodeRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDOratefile').html(html2);
|
||||
|
||||
//操作节点占比--职能部门
|
||||
let html3='';
|
||||
for(let i=0;i<FDOrate.length;i++){
|
||||
html3+='<li id="'+FDOrate[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDOrate[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+FDOrate[i].operationNodeRate+'%;></div></div>' +
|
||||
' <p class="num">'+FDOrate[i].operationNodeRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDOratefile').html(html3);
|
||||
|
||||
//操作节点线上化占比--事业部
|
||||
let html4='';
|
||||
for(let i=0;i<BDOol.length;i++){
|
||||
html4+='<li id="'+BDOol[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+BDOol[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+BDOol[i].operationOLNodeRate+'%;></div></div>' +
|
||||
' <p class="num">'+BDOol[i].operationOLNodeRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#BDOolfile').html(html4);
|
||||
|
||||
//操作节点线上化占比--职能部门
|
||||
let html5='';
|
||||
for(let i=0;i<FDOol.length;i++){
|
||||
html5+='<li id="'+FDOol[i].deptID+'">' +
|
||||
' <div class="liIn">' +
|
||||
' <div class="liIn_left"><span class="zi">'+FDOol[i].deptName+'</span></div>' +
|
||||
' <div class="liIn_line"><div class="line_lineIn" style=width:'+FDOol[i].operationOLNodeRate+'%;></div></div>' +
|
||||
' <p class="num">'+FDOol[i].operationOLNodeRate+'%</p>' +
|
||||
' </div>' +
|
||||
'</li>'
|
||||
}
|
||||
$('#FDOolfile').html(html5);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -0,0 +1,223 @@
|
||||
//2.5.4.领域成熟度情况筛选条件:评估维度
|
||||
$(function(){
|
||||
evaluation()
|
||||
linechart()
|
||||
})
|
||||
function evaluation(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_queryTerms4',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (result) {
|
||||
let data = result.data.paramELDSMaps;
|
||||
let str=''
|
||||
for(let i=0;i<data.length;i++){
|
||||
str+='<option id="'+data[i].termsKey+'">'+data[i].termsVal+'</option>'
|
||||
}
|
||||
$('#evaluation').html(str);
|
||||
|
||||
$('#evaluation').change(function(){
|
||||
let ELDSKey = ($(this).children('option:selected').attr('id'));
|
||||
linechart(ELDSKey)
|
||||
})
|
||||
}
|
||||
});
|
||||
}
|
||||
function linechart(key){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_maturityField',
|
||||
data: {
|
||||
'ELDSKey':key
|
||||
},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (result) {
|
||||
debugger;
|
||||
let data = result.data.fieldDataMaps;
|
||||
let xdata=[]; let aim=[];let ydata=[]
|
||||
for(let i=0;i<data.length;i++){
|
||||
if(data[i].FIELDTARGETVAL!=''){
|
||||
xdata.push(data[i].FIELDTARGETVAL)
|
||||
aim.push(data[i].AIMVALUE)
|
||||
if(!key || key=='total'){
|
||||
ydata.push(data[i].ASSESSSCORE)
|
||||
}else{
|
||||
ydata.push(data[i].TARGETSCORE)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
loadqsjkdw(xdata,ydata,aim)
|
||||
}
|
||||
});
|
||||
}
|
||||
var qsjkdw = echarts.init(document.getElementById('qsjkdwEcharts'));
|
||||
var loadqsjkdw = function (xdata,ydata,aim) {
|
||||
var max = ydata[0];
|
||||
for(var i=0;i<ydata.length;i++){
|
||||
if(max < ydata[i]){
|
||||
max = ydata[i]
|
||||
}
|
||||
}
|
||||
var maxbfb = aim[0];
|
||||
for(var i=0;i<aim.length;i++){
|
||||
if(maxbfb < aim[i]){
|
||||
maxbfb = aim[i]
|
||||
}
|
||||
}
|
||||
|
||||
var option = {
|
||||
grid: {
|
||||
left: '5px',
|
||||
right: '0%',
|
||||
bottom: '1%',
|
||||
top:'10%',
|
||||
containLabel: true,
|
||||
},
|
||||
tooltip: {
|
||||
show: "true",
|
||||
trigger: 'axis',
|
||||
axisPointer: { // 坐标轴指示器,坐标轴触发有效
|
||||
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
||||
},
|
||||
/* formatter:'{b0}:{c0}'*/ //鼠标移入提示框内容
|
||||
},
|
||||
calculable : false,
|
||||
/*legend: { //指示签
|
||||
data:['成数量','占比'],
|
||||
textStyle:{
|
||||
color:"#e9ebee"
|
||||
}
|
||||
},*/
|
||||
yAxis:[
|
||||
{
|
||||
show:true,
|
||||
max: parseInt(max)+1,
|
||||
splitLine: {show: false,
|
||||
lineStyle:{
|
||||
color:'#353E47'
|
||||
}
|
||||
},
|
||||
axisTick: {show: false},
|
||||
axisLine: {show: true,
|
||||
lineStyle:{
|
||||
color:'#353E47'
|
||||
}},
|
||||
axisLabel: {
|
||||
textStyle: {
|
||||
color: '#0ECDCD'
|
||||
},
|
||||
formatter:function(value,index){
|
||||
return value;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'value',
|
||||
name: '',
|
||||
max: parseInt(maxbfb)+2,
|
||||
axisLine:{
|
||||
lineStyle:{
|
||||
color:'rgba(255,255,255,.3)'
|
||||
}
|
||||
},
|
||||
splitLine:{
|
||||
lineStyle:{
|
||||
color:'rgba(255,255,255,.1)'
|
||||
}
|
||||
},
|
||||
axisLabel: {
|
||||
formatter: '{value} %'
|
||||
}
|
||||
}
|
||||
],
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
axisTick: {
|
||||
show: false
|
||||
},
|
||||
boundaryGap: ['20%', '20%',],//坐标轴两边留白
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
color: '#0ECDCD',
|
||||
}
|
||||
},
|
||||
axisLabel:{
|
||||
textStyle:{
|
||||
color:'#0ECDCD',
|
||||
fontSize:'14'
|
||||
},
|
||||
interval:0,
|
||||
formatter: function (value) {
|
||||
//x轴的文字改为竖版显示
|
||||
var str = value.split("");
|
||||
return str.join("\n");
|
||||
}
|
||||
},
|
||||
data: xdata
|
||||
}
|
||||
],
|
||||
series: [
|
||||
{
|
||||
name: '综合评估得分',
|
||||
type: 'bar',
|
||||
barWidth:'25px',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
show: true,
|
||||
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
||||
offset: 0,
|
||||
color: '#2685CD'
|
||||
}, {
|
||||
offset: 1,
|
||||
color: '#2685CD'
|
||||
}]),
|
||||
barBorderRadius: 50,
|
||||
borderWidth: 0,
|
||||
borderColor: '#2685CD',
|
||||
}
|
||||
},
|
||||
label: {
|
||||
normal: {
|
||||
show: true,
|
||||
position: 'top',
|
||||
textStyle: {
|
||||
color: '#58F1EB'
|
||||
}
|
||||
}
|
||||
},
|
||||
data:ydata,
|
||||
},
|
||||
{
|
||||
name:'目标值',
|
||||
type:'line',
|
||||
smooth: false,//变为曲线 默认false折线
|
||||
// symbolSize: 0,//去掉页面上显示的圆点
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: new echarts.graphic.LinearGradient(
|
||||
0, 0, 0, 1,
|
||||
[
|
||||
{offset: 0, color: '#fffb34'},
|
||||
{offset: 1, color: '#fffb34'}
|
||||
]
|
||||
)
|
||||
}
|
||||
},
|
||||
yAxisIndex: 1,
|
||||
data:aim
|
||||
}
|
||||
]
|
||||
};
|
||||
qsjkdw.clear();
|
||||
qsjkdw.setOption(option);
|
||||
|
||||
};
|
||||
qsjkdw.on("click",function(e){
|
||||
loadqsjkdw();
|
||||
});
|
||||
@ -0,0 +1,118 @@
|
||||
$(function (){
|
||||
treebind()
|
||||
})
|
||||
var chartDom = document.getElementById('treeChart');
|
||||
var myChart = echarts.init(chartDom);
|
||||
function treebind(){
|
||||
$.ajax({
|
||||
url: baseUrl + 'ProcessPubService_sysDistribution',
|
||||
data: {},
|
||||
dataType: "json",
|
||||
type: "post",
|
||||
async: true,
|
||||
success: function (result) {
|
||||
let data = result.data.sysDistribution;
|
||||
let list = []
|
||||
for(var i=0;i<data.length;i++){
|
||||
let obj={
|
||||
"value": data[i].systemCount,
|
||||
"name": data[i].systemName
|
||||
}
|
||||
list.push(obj)
|
||||
}
|
||||
treeshow(list)
|
||||
}
|
||||
});
|
||||
}
|
||||
function treeshow(diskData){
|
||||
var option;
|
||||
myChart.showLoading();
|
||||
/*var diskData = [
|
||||
{
|
||||
"value": 180,
|
||||
"name": "二",
|
||||
"path": "二path"
|
||||
|
||||
},
|
||||
]*/
|
||||
/*var diskData=[
|
||||
{
|
||||
"value":233,
|
||||
"name":"财务共享平台"
|
||||
},
|
||||
{"vlaue":6,"name":"供应链系统(ERP),财务共享平台"},
|
||||
]*/
|
||||
myChart.hideLoading();
|
||||
const formatUtil = echarts.format;
|
||||
function getLevelOption() {
|
||||
return [
|
||||
{
|
||||
itemStyle: {
|
||||
borderWidth: 0,
|
||||
gapWidth: 3,
|
||||
color:'#01559d'
|
||||
}
|
||||
},
|
||||
{
|
||||
itemStyle: {
|
||||
gapWidth: 1,
|
||||
color:'#b2e5fa'
|
||||
}
|
||||
},
|
||||
{
|
||||
/* colorSaturation: [0.35, 0.5],*/
|
||||
itemStyle: {
|
||||
gapWidth: 1,
|
||||
borderColorSaturation: 0.6,
|
||||
color:'#01559b'
|
||||
}
|
||||
},
|
||||
{
|
||||
/* colorSaturation: [0.25, 0.3],*/
|
||||
itemStyle: {
|
||||
gapWidth: 1,
|
||||
borderColorSaturation: 0.3,
|
||||
color:'#0385d0'
|
||||
}
|
||||
},
|
||||
];
|
||||
}
|
||||
myChart.setOption(
|
||||
(option = {
|
||||
color:['#01559d','#0385d0','#4fc3f6','#b1e4f9','#b0d8f7','#0ECDCD','#8193F1','#2685CD'],
|
||||
tooltip: {
|
||||
formatter: function (info) {
|
||||
var value = info.seriesName;
|
||||
var zhi = info.value;
|
||||
var treePathInfo = info.treePathInfo;
|
||||
var treePath = [];
|
||||
for (var i = 1; i < treePathInfo.length; i++) {
|
||||
treePath.push(treePathInfo[i].name);
|
||||
}
|
||||
return [
|
||||
'<div class="tooltip-title">' +
|
||||
formatUtil.encodeHTML(treePath.join('/')) +
|
||||
'</div>',
|
||||
formatUtil.addCommas(value+'/'+zhi)/*'流程系统分布: ' +*/
|
||||
].join('');
|
||||
}
|
||||
},
|
||||
|
||||
series: [
|
||||
{
|
||||
name: '流程系统分布',
|
||||
type: 'treemap',
|
||||
visibleMin: 10,
|
||||
label: {
|
||||
show: true,
|
||||
formatter: '{b}'
|
||||
},
|
||||
// levels: getLevelOption(),
|
||||
data: diskData
|
||||
}
|
||||
]
|
||||
})
|
||||
);
|
||||
option && myChart.setOption(option);
|
||||
}
|
||||
|
||||
@ -0,0 +1,364 @@
|
||||
/**
|
||||
* jCarouselLite - jQuery plugin to navigate images/any content in a carousel style widget.
|
||||
* @requires jQuery v1.2 or above
|
||||
*
|
||||
* http://gmarwaha.com/jquery/jcarousellite/
|
||||
*
|
||||
* Copyright (c) 2007 Ganeshji Marwaha (gmarwaha.com)
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*
|
||||
* Version: 1.0.1
|
||||
* Note: Requires jquery 1.2 or above from version 1.0.1
|
||||
*/
|
||||
|
||||
/**
|
||||
* Creates a carousel-style navigation widget for images/any-content from a simple HTML markup.
|
||||
*
|
||||
* The HTML markup that is used to build the carousel can be as simple as...
|
||||
*
|
||||
* <div class="carousel">
|
||||
* <ul>
|
||||
* <li><img src="image/1.jpg" alt="1"></li>
|
||||
* <li><img src="image/2.jpg" alt="2"></li>
|
||||
* <li><img src="image/3.jpg" alt="3"></li>
|
||||
* </ul>
|
||||
* </div>
|
||||
*
|
||||
* As you can see, this snippet is nothing but a simple div containing an unordered list of images.
|
||||
* You don't need any special "class" attribute, or a special "css" file for this plugin.
|
||||
* I am using a class attribute just for the sake of explanation here.
|
||||
*
|
||||
* To navigate the elements of the carousel, you need some kind of navigation buttons.
|
||||
* For example, you will need a "previous" button to go backward, and a "next" button to go forward.
|
||||
* This need not be part of the carousel "div" itself. It can be any element in your page.
|
||||
* Lets assume that the following elements in your document can be used as next, and prev buttons...
|
||||
*
|
||||
* <button class="prev"><<</button>
|
||||
* <button class="next">>></button>
|
||||
*
|
||||
* Now, all you need to do is call the carousel component on the div element that represents it, and pass in the
|
||||
* navigation buttons as options.
|
||||
*
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev"
|
||||
* });
|
||||
*
|
||||
* That's it, you would have now converted your raw div, into a magnificient carousel.
|
||||
*
|
||||
* There are quite a few other options that you can use to customize it though.
|
||||
* Each will be explained with an example below.
|
||||
*
|
||||
* @param an options object - You can specify all the options shown below as an options object param.
|
||||
*
|
||||
* @option btnPrev, btnNext : string - no defaults
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev"
|
||||
* });
|
||||
* @desc Creates a basic carousel. Clicking "btnPrev" navigates backwards and "btnNext" navigates forward.
|
||||
*
|
||||
* @option btnGo - array - no defaults
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* btnGo: [".0", ".1", ".2"]
|
||||
* });
|
||||
* @desc If you don't want next and previous buttons for navigation, instead you prefer custom navigation based on
|
||||
* the item number within the carousel, you can use this option. Just supply an array of selectors for each element
|
||||
* in the carousel. The index of the array represents the index of the element. What i mean is, if the
|
||||
* first element in the array is ".0", it means that when the element represented by ".0" is clicked, the carousel
|
||||
* will slide to the first element and so on and so forth. This feature is very powerful. For example, i made a tabbed
|
||||
* interface out of it by making my navigation elements styled like tabs in css. As the carousel is capable of holding
|
||||
* any content, not just images, you can have a very simple tabbed navigation in minutes without using any other plugin.
|
||||
* The best part is that, the tab will "slide" based on the provided effect. :-)
|
||||
*
|
||||
* @option mouseWheel : boolean - default is false
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* mouseWheel: true
|
||||
* });
|
||||
* @desc The carousel can also be navigated using the mouse wheel interface of a scroll mouse instead of using buttons.
|
||||
* To get this feature working, you have to do 2 things. First, you have to include the mouse-wheel plugin from brandon.
|
||||
* Second, you will have to set the option "mouseWheel" to true. That's it, now you will be able to navigate your carousel
|
||||
* using the mouse wheel. Using buttons and mouseWheel or not mutually exclusive. You can still have buttons for navigation
|
||||
* as well. They complement each other. To use both together, just supply the options required for both as shown below.
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* mouseWheel: true
|
||||
* });
|
||||
*
|
||||
* @option auto : number - default is null, meaning autoscroll is disabled by default
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* auto: 800,
|
||||
* speed: 500
|
||||
* });
|
||||
* @desc You can make your carousel auto-navigate itself by specfying a millisecond value in this option.
|
||||
* The value you specify is the amount of time between 2 slides. The default is null, and that disables auto scrolling.
|
||||
* Specify this value and magically your carousel will start auto scrolling.
|
||||
*
|
||||
* @option speed : number - 200 is default
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* speed: 800
|
||||
* });
|
||||
* @desc Specifying a speed will slow-down or speed-up the sliding speed of your carousel. Try it out with
|
||||
* different speeds like 800, 600, 1500 etc. Providing 0, will remove the slide effect.
|
||||
*
|
||||
* @option easing : string - no easing effects by default.
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* easing: "bounceout"
|
||||
* });
|
||||
* @desc You can specify any easing effect. Note: You need easing plugin for that. Once specified,
|
||||
* the carousel will slide based on the provided easing effect.
|
||||
*
|
||||
* @option vertical : boolean - default is false
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* vertical: true
|
||||
* });
|
||||
* @desc Determines the direction of the carousel. true, means the carousel will display vertically. The next and
|
||||
* prev buttons will slide the items vertically as well. The default is false, which means that the carousel will
|
||||
* display horizontally. The next and prev items will slide the items from left-right in this case.
|
||||
*
|
||||
* @option circular : boolean - default is true
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* circular: false
|
||||
* });
|
||||
* @desc Setting it to true enables circular navigation. This means, if you click "next" after you reach the last
|
||||
* element, you will automatically slide to the first element and vice versa. If you set circular to false, then
|
||||
* if you click on the "next" button after you reach the last element, you will stay in the last element itself
|
||||
* and similarly for "previous" button and first element.
|
||||
*
|
||||
* @option visible : number - default is 3
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* visible: 4
|
||||
* });
|
||||
* @desc This specifies the number of items visible at all times within the carousel. The default is 3.
|
||||
* You are even free to experiment with real numbers. Eg: "3.5" will have 3 items fully visible and the
|
||||
* last item half visible. This gives you the effect of showing the user that there are more images to the right.
|
||||
*
|
||||
* @option start : number - default is 0
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* start: 2
|
||||
* });
|
||||
* @desc You can specify from which item the carousel should start. Remember, the first item in the carousel
|
||||
* has a start of 0, and so on.
|
||||
*
|
||||
* @option scrool : number - default is 1
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* scroll: 2
|
||||
* });
|
||||
* @desc The number of items that should scroll/slide when you click the next/prev navigation buttons. By
|
||||
* default, only one item is scrolled, but you may set it to any number. Eg: setting it to "2" will scroll
|
||||
* 2 items when you click the next or previous buttons.
|
||||
*
|
||||
* @option beforeStart, afterEnd : function - callbacks
|
||||
* @example
|
||||
* $(".carousel").jCarouselLite({
|
||||
* btnNext: ".next",
|
||||
* btnPrev: ".prev",
|
||||
* beforeStart: function(a) {
|
||||
* alert("Before animation starts:" + a);
|
||||
* },
|
||||
* afterEnd: function(a) {
|
||||
* alert("After animation ends:" + a);
|
||||
* }
|
||||
* });
|
||||
* @desc If you wanted to do some logic in your page before the slide starts and after the slide ends, you can
|
||||
* register these 2 callbacks. The functions will be passed an argument that represents an array of elements that
|
||||
* are visible at the time of callback.
|
||||
*
|
||||
*
|
||||
* @cat Plugins/Image Gallery
|
||||
* @author Ganeshji Marwaha/ganeshread@gmail.com
|
||||
*/
|
||||
|
||||
(function($) { // Compliant with jquery.noConflict()
|
||||
$.fn.jCarouselLite = function(o) {
|
||||
o = $.extend({
|
||||
btnPrev: null,
|
||||
btnNext: null,
|
||||
btnGo: null,
|
||||
mouseWheel: false,
|
||||
auto: null,
|
||||
hoverPause: false,
|
||||
|
||||
speed: 200,
|
||||
easing: null,
|
||||
|
||||
vertical: false,
|
||||
circular: true,
|
||||
visible: 3,
|
||||
start: 0,
|
||||
scroll: 1,
|
||||
|
||||
beforeStart: null,
|
||||
afterEnd: null
|
||||
}, o || {});
|
||||
|
||||
return this.each(function() { // Returns the element collection. Chainable.
|
||||
|
||||
var running = false, animCss=o.vertical?"top":"left", sizeCss=o.vertical?"height":"width";
|
||||
var div = $(this), ul = $("ul", div), tLi = $("li", ul), tl = tLi.size(), v = o.visible;
|
||||
|
||||
if(o.circular) {
|
||||
ul.prepend(tLi.slice(tl-v+1).clone())
|
||||
.append(tLi.slice(0,o.scroll).clone());
|
||||
o.start += v-1;
|
||||
}
|
||||
|
||||
var li = $("li", ul), itemLength = li.size(), curr = o.start;
|
||||
div.css("visibility", "visible");
|
||||
|
||||
li.css({overflow: "hidden", float: o.vertical ? "none" : "left"});
|
||||
ul.css({margin: "0", padding: "0", position: "relative", "list-style-type": "none", "z-index": "1"});
|
||||
div.css({overflow: "hidden", position: "relative", "z-index": "2", left: "0px"});
|
||||
|
||||
var liSize = o.vertical ? height(li) : width(li); // Full li size(incl margin)-Used for animation
|
||||
var ulSize = liSize * itemLength; // size of full ul(total length, not just for the visible items)
|
||||
var divSize = liSize * v; // size of entire div(total length for just the visible items)
|
||||
|
||||
li.css({width: li.width(), height: li.height()});
|
||||
ul.css(sizeCss, ulSize+"px").css(animCss, -(curr*liSize));
|
||||
|
||||
div.css(sizeCss, divSize+"px"); // Width of the DIV. length of visible images
|
||||
|
||||
if(o.btnPrev) {
|
||||
$(o.btnPrev).click(function() {
|
||||
return go(curr-o.scroll);
|
||||
});
|
||||
if(o.hoverPause) {
|
||||
$(o.btnPrev).hover(function(){stopAuto();}, function(){startAuto();});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(o.btnNext) {
|
||||
$(o.btnNext).click(function() {
|
||||
return go(curr+o.scroll);
|
||||
});
|
||||
if(o.hoverPause) {
|
||||
$(o.btnNext).hover(function(){stopAuto();}, function(){startAuto();});
|
||||
}
|
||||
}
|
||||
|
||||
if(o.btnGo)
|
||||
$.each(o.btnGo, function(i, val) {
|
||||
$(val).click(function() {
|
||||
return go(o.circular ? o.visible+i : i);
|
||||
});
|
||||
});
|
||||
|
||||
if(o.mouseWheel && div.mousewheel)
|
||||
div.mousewheel(function(e, d) {
|
||||
return d>0 ? go(curr-o.scroll) : go(curr+o.scroll);
|
||||
});
|
||||
|
||||
var autoInterval;
|
||||
|
||||
function startAuto() {
|
||||
stopAuto();
|
||||
autoInterval = setInterval(function() {
|
||||
go(curr+o.scroll);
|
||||
}, o.auto+o.speed);
|
||||
};
|
||||
|
||||
function stopAuto() {
|
||||
clearInterval(autoInterval);
|
||||
};
|
||||
|
||||
if(o.auto) {
|
||||
if(o.hoverPause) {
|
||||
div.hover(function(){stopAuto();}, function(){startAuto();});
|
||||
}
|
||||
startAuto();
|
||||
};
|
||||
|
||||
function vis() {
|
||||
return li.slice(curr).slice(0,v);
|
||||
};
|
||||
|
||||
function go(to) {
|
||||
if(!running) {
|
||||
|
||||
if(o.beforeStart)
|
||||
o.beforeStart.call(this, vis());
|
||||
|
||||
if(o.circular) { // If circular we are in first or last, then goto the other end
|
||||
if(to<0) { // If before range, then go around
|
||||
ul.css(animCss, -( (curr + tl) * liSize)+"px");
|
||||
curr = to + tl;
|
||||
} else if(to>itemLength-v) { // If beyond range, then come around
|
||||
ul.css(animCss, -( (curr - tl) * liSize ) + "px" );
|
||||
curr = to - tl;
|
||||
} else curr = to;
|
||||
} else { // If non-circular and to points to first or last, we just return.
|
||||
if(to<0 || to>itemLength-v) return;
|
||||
else curr = to;
|
||||
} // If neither overrides it, the curr will still be "to" and we can proceed.
|
||||
|
||||
running = true;
|
||||
|
||||
ul.animate(
|
||||
animCss == "left" ? { left: -(curr*liSize) } : { top: -(curr*liSize) } , o.speed, o.easing,
|
||||
function() {
|
||||
if(o.afterEnd)
|
||||
o.afterEnd.call(this, vis());
|
||||
running = false;
|
||||
}
|
||||
);
|
||||
// Disable buttons when the carousel reaches the last/first, and enable when not
|
||||
if(!o.circular) {
|
||||
$(o.btnPrev + "," + o.btnNext).removeClass("disabled");
|
||||
$( (curr-o.scroll<0 && o.btnPrev)
|
||||
||
|
||||
(curr+o.scroll > itemLength-v && o.btnNext)
|
||||
||
|
||||
[]
|
||||
).addClass("disabled");
|
||||
}
|
||||
|
||||
}
|
||||
return false;
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
function css(el, prop) {
|
||||
return parseInt($.css(el[0], prop)) || 0;
|
||||
};
|
||||
function width(el) {
|
||||
return el[0].offsetWidth + css(el, 'marginLeft') + css(el, 'marginRight');
|
||||
};
|
||||
function height(el) {
|
||||
return el[0].offsetHeight + css(el, 'marginTop') + css(el, 'marginBottom');
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
@ -0,0 +1 @@
|
||||
!function(t){"use strict";t.fn.countUp=function(e){var a=t.extend({time:2e3,delay:10},e);return this.each(function(){var e=t(this),n=a,u=function(){e.data("counterupTo")||e.data("counterupTo",e.text());var t=parseInt(e.data("counter-time"))>0?parseInt(e.data("counter-time")):n.time,a=parseInt(e.data("counter-delay"))>0?parseInt(e.data("counter-delay")):n.delay,u=t/a,r=e.data("counterupTo"),o=[r],c=/[0-9]+,[0-9]+/.test(r);r=r.replace(/,/g,"");for(var d=(/^[0-9]+$/.test(r),/^[0-9]+\.[0-9]+$/.test(r)),s=d?(r.split(".")[1]||[]).length:0,i=u;i>=1;i--){var p=parseInt(Math.round(r/u*i));if(d&&(p=parseFloat(r/u*i).toFixed(s)),c)for(;/(\d+)(\d{3})/.test(p.toString());)p=p.toString().replace(/(\d+)(\d{3})/,"$1,$2");o.unshift(p)}e.data("counterup-nums",o),e.text("0");var f=function(){e.text(e.data("counterup-nums").shift()),e.data("counterup-nums").length?setTimeout(e.data("counterup-func"),a):(delete e.data("counterup-nums"),e.data("counterup-nums",null),e.data("counterup-func",null))};e.data("counterup-func",f),setTimeout(e.data("counterup-func"),a)};e.waypoint(u,{offset:"100%",triggerOnce:!0})})}}(jQuery);
|
||||
5
com.awspaas.user.apps.yili.reportform/web/com.awspaas.user.apps.yili.reportform/js/jquery.js
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
//var baseUrl='https://paldemo3.awspaas.com//r/jd?cmd=com.awspaas.user.apps.yili.reportform.service.'
|
||||
//var baseUrl = 'http://10.114.11.135:8088/portal/r/jd?sid=e8a5111b-d1cc-48d2-87f0-ea890a744f3a&cmd=com.awspaas.user.apps.yili.reportform.service.'
|
||||
const baseUrl='./jd?sid='+sid+'&cmd=com.awspaas.user.apps.yili.reportform.service.'
|
||||
$(function (){
|
||||
var whei=$(window).width()
|
||||
$("html").css({fontSize:whei/20})
|
||||
$(window).resize(function(){
|
||||
var whei=$(window).width()
|
||||
$("html").css({fontSize:whei/20})
|
||||
});
|
||||
|
||||
//导航切换
|
||||
$(".index_nav ul li").each(function(index){
|
||||
$(this).click(function(){
|
||||
$(this).addClass("nav_active").siblings().removeClass("nav_active");
|
||||
$(".index_tabs .inner").eq(index).fadeIn().siblings("div").stop().hide();
|
||||
|
||||
})
|
||||
});
|
||||
})
|
||||
@ -0,0 +1,30 @@
|
||||
$(function() {
|
||||
navtag()
|
||||
})
|
||||
//选项卡
|
||||
function navtag(){
|
||||
var data=[
|
||||
{
|
||||
name:'父指标页签1'
|
||||
},
|
||||
{
|
||||
name:'父指标页签2'
|
||||
}
|
||||
]
|
||||
let str='';
|
||||
for (var i=0;i<data.length;i++){
|
||||
if(i==0){
|
||||
str+='<li class="isActive">'+data[i].name+'<span></span></li>'
|
||||
}else{
|
||||
str+='<li>'+data[i].name+'<span></span></li>'
|
||||
}
|
||||
}
|
||||
$('#navtab').html(str)
|
||||
$('#navtab li').each(function (e){
|
||||
$('#navtab li:eq('+e+')').click(function (){
|
||||
$(this).siblings().removeClass('isActive')
|
||||
$(this).addClass('isActive')
|
||||
|
||||
})
|
||||
})
|
||||
};
|
||||
@ -0,0 +1,282 @@
|
||||
function treemark() {
|
||||
let treeTiew=[
|
||||
{
|
||||
treeName:{
|
||||
name:[
|
||||
{
|
||||
key:'m0',
|
||||
value:'m0'
|
||||
}
|
||||
],
|
||||
guanxisolid:[
|
||||
{
|
||||
form:'m0',
|
||||
to:'m1'
|
||||
},
|
||||
{
|
||||
form:'m0',
|
||||
to:'m2'
|
||||
}
|
||||
],
|
||||
guanxideash:[
|
||||
{
|
||||
form:'m0',
|
||||
to:'m7'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
treeName: {
|
||||
name:[
|
||||
{
|
||||
key:'m1',
|
||||
value: 'm1'
|
||||
},
|
||||
{
|
||||
key:'m2',
|
||||
value:'m2'
|
||||
},
|
||||
{
|
||||
key:'m3',
|
||||
value: 'm3'
|
||||
}
|
||||
],
|
||||
guanxisolid:[
|
||||
{
|
||||
form:'m1',
|
||||
to:'m4'
|
||||
},
|
||||
{
|
||||
form:'m1',
|
||||
to:'m5'
|
||||
},
|
||||
{
|
||||
form:'m2',
|
||||
to:'m6'
|
||||
},
|
||||
{
|
||||
form:'m3',
|
||||
to:'m5'
|
||||
},
|
||||
{
|
||||
form:'m3',
|
||||
to:'m7'
|
||||
}
|
||||
],
|
||||
guanxideash:[
|
||||
{
|
||||
form:'m2',
|
||||
to:'m5'
|
||||
},
|
||||
{
|
||||
form:'m3',
|
||||
to:'m11'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
treeName: {
|
||||
name:[
|
||||
{
|
||||
key:'m4',
|
||||
value: 'm4'
|
||||
},
|
||||
{
|
||||
key:'m5',
|
||||
value:'m5'
|
||||
},
|
||||
{
|
||||
key:'m6',
|
||||
value: 'm6'
|
||||
},
|
||||
{
|
||||
key:'m7',
|
||||
value: 'm7'
|
||||
}
|
||||
],
|
||||
guanxisolid:[
|
||||
{
|
||||
form:'m4',
|
||||
to:'m8'
|
||||
},
|
||||
{
|
||||
form:'m4',
|
||||
to:'m10'
|
||||
},
|
||||
{
|
||||
form:'m5',
|
||||
to:'m10'
|
||||
},
|
||||
{
|
||||
form:'m6',
|
||||
to:'m10'
|
||||
},
|
||||
{
|
||||
form:'m6',
|
||||
to:'m11'
|
||||
},
|
||||
{
|
||||
form:'m7',
|
||||
to:'m9'
|
||||
},
|
||||
{
|
||||
form:'m7',
|
||||
to:'mn'
|
||||
}
|
||||
],
|
||||
guanxideash:[
|
||||
{
|
||||
form:'m2',
|
||||
to:'m5'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
treeName: {
|
||||
name:[
|
||||
{
|
||||
key:'m8',
|
||||
value: 'm8'
|
||||
},
|
||||
{
|
||||
key:'m9',
|
||||
value:'m9'
|
||||
},
|
||||
{
|
||||
key:'m10',
|
||||
value: 'm10'
|
||||
},
|
||||
{
|
||||
key:'m11',
|
||||
value: 'm11'
|
||||
},
|
||||
{
|
||||
key:'mn',
|
||||
value: 'mn'
|
||||
}
|
||||
],
|
||||
guanxisolid:[],
|
||||
guanxideash:[]
|
||||
}
|
||||
}
|
||||
]
|
||||
let str=''
|
||||
for (let i=0;i<treeTiew.length;i++){
|
||||
let str1=''
|
||||
for(let j=0;j<treeTiew[i].treeName.name.length;j++){
|
||||
str1+='<li id="'+treeTiew[i].treeName.name[j].key+'">'+treeTiew[i].treeName.name[j].value+'</li>'
|
||||
}
|
||||
str+='<div><ul>'+str1+'</ul></div>'
|
||||
}
|
||||
$('#relationship').html(str)
|
||||
|
||||
for (let i=0;i<treeTiew.length;i++){
|
||||
if(treeTiew[i].treeName.guanxisolid.length > 0){
|
||||
for(let j=0;j<treeTiew[i].treeName.guanxisolid.length;j++){
|
||||
let first=document.getElementById(treeTiew[i].treeName.guanxisolid[j].form);
|
||||
// 第一个点的坐标
|
||||
let firstPoint = {
|
||||
xPoint: first.getBoundingClientRect().left,
|
||||
YPoint: first.getBoundingClientRect().top,
|
||||
}
|
||||
let second=document.getElementById(treeTiew[i].treeName.guanxisolid[j].to);
|
||||
// 第二个点的坐标
|
||||
let secondPoint = {
|
||||
xPoint: second.getBoundingClientRect().left,
|
||||
YPoint: second.getBoundingClientRect().top,
|
||||
}
|
||||
// 计算出两个点之间的距离
|
||||
let line = Math.sqrt(Math.pow((firstPoint.xPoint - secondPoint.xPoint), 2) + Math.pow((firstPoint.YPoint - secondPoint.YPoint), 2))
|
||||
// 设置一个div 宽度为 两点之间的距离,并且以 transform-origin: 0 50% 为圆心旋转,角度已经算出来
|
||||
let w=line-60 //控制线的长度
|
||||
if(window.innerWidth>1800){
|
||||
w=line-80
|
||||
}
|
||||
let t=firstPoint.YPoint-60 //控制线的高低
|
||||
let l=firstPoint.xPoint-15
|
||||
let s = getAngle(firstPoint.xPoint,firstPoint.YPoint,secondPoint.xPoint,secondPoint.YPoint)
|
||||
// let lineHtmlStr ='<div class="guanxiline" style="width:'+w+'px;top:'+t+'px;left:'+l+'px;transform:rotate('+s+'deg);transform-origin: 0 50%;"><span></span></div>';
|
||||
let lineHtmlStr ='<div class="guanxiline" style="width:'+w+'px;transform:rotate('+s+'deg);transform-origin: 0 50%;"></div>';
|
||||
$('#'+treeTiew[i].treeName.guanxisolid[j].form).append(lineHtmlStr)
|
||||
|
||||
}
|
||||
}
|
||||
if(treeTiew[i].treeName.guanxideash.length > 0){
|
||||
for(let j=0;j<treeTiew[i].treeName.guanxideash.length;j++){
|
||||
let firstdeash=document.getElementById(treeTiew[i].treeName.guanxideash[j].form);
|
||||
// 第一个点的坐标
|
||||
let firstdeashPoint = {
|
||||
xPoint: firstdeash.getBoundingClientRect().left,
|
||||
YPoint: firstdeash.getBoundingClientRect().top,
|
||||
}
|
||||
let seconddeash=document.getElementById(treeTiew[i].treeName.guanxideash[j].to);
|
||||
// 第二个点的坐标
|
||||
let seconddeashPoint = {
|
||||
xPoint: seconddeash.getBoundingClientRect().left,
|
||||
YPoint: seconddeash.getBoundingClientRect().top,
|
||||
}
|
||||
// 计算出两个点之间的距离
|
||||
let linedeash = Math.sqrt(Math.pow((firstdeashPoint.xPoint - seconddeashPoint.xPoint), 2) + Math.pow((firstdeashPoint.YPoint - seconddeashPoint.YPoint), 2))
|
||||
// 设置一个div 宽度为 两点之间的距离,并且以 transform-origin: 0 50% 为圆心旋转,角度已经算出来
|
||||
let wdeash=linedeash-60 //控制线的长度
|
||||
if(window.innerWidth>1800){
|
||||
wdeash=linedeash-80
|
||||
}
|
||||
let tdeash=firstdeashPoint.YPoint-60 //控制线的高低
|
||||
let ldeash=firstdeashPoint.xPoint-15
|
||||
let sdeash = getAngle(firstdeashPoint.xPoint,firstdeashPoint.YPoint,seconddeashPoint.xPoint,seconddeashPoint.YPoint)
|
||||
//let lineHtmlStrdeash ='<div class="guanxideashline" style="width:'+wdeash+'px;top:'+tdeash+'px;left:'+ldeash+'px;transform:rotate('+sdeash+'deg);transform-origin: 0 50%;"><span></span></div>';
|
||||
let lineHtmlStrdeash ='<div class="guanxideashline" style="width:'+wdeash+'px;transform:rotate('+sdeash+'deg);transform-origin: 0 50%;"></div>';
|
||||
$('#'+treeTiew[i].treeName.guanxideash[j].form).append(lineHtmlStrdeash)
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//获取角度
|
||||
function getAngle(x1, y1, x2, y2) {
|
||||
var x = x1 - x2;
|
||||
var y = y1 - y2;
|
||||
var z = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
|
||||
var cos = y / z;
|
||||
var radina = Math.acos(cos); // 用反三角函数求弧度
|
||||
var angle = 180 / (Math.PI / radina); // 将弧度转换成角度
|
||||
if (x2 > x1 && y2 === y1) {
|
||||
// 在x轴正方向上
|
||||
angle = 0;
|
||||
}
|
||||
if (x2 > x1 && y2 < y1) {
|
||||
// 在第一象限;
|
||||
angle = angle -90;
|
||||
}
|
||||
if (x2 === x1 && y1 > y2) {
|
||||
// 在y轴正方向上
|
||||
angle = -90;
|
||||
}
|
||||
if (x2 < x1 && y2 < y1) {
|
||||
// 在第二象限
|
||||
angle = 278 - angle;
|
||||
}
|
||||
if (x2 < x1 && y2 === y1) {
|
||||
// 在x轴负方向
|
||||
angle = 180;
|
||||
}
|
||||
if (x2 < x1 && y2 > y1) {
|
||||
// 在第三象限
|
||||
angle = 278 - angle;
|
||||
}
|
||||
if (x2 === x1 && y2 > y1) {
|
||||
// 在y轴负方向上
|
||||
angle = 90;
|
||||
}
|
||||
if (x2 > x1 && y2 > y1) {
|
||||
// 在四象限
|
||||
angle = angle - 100;
|
||||
}
|
||||
return angle;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,234 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
||||
<title>伊利流程发布平台</title>
|
||||
<link rel="stylesheet" href="css/comon0.css" type="text/css" />
|
||||
<link rel="stylesheet" href="css/style.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="loading">
|
||||
<div class="loadbox"> <img src="images/loading.gif"> 页面加载中... </div>
|
||||
</div>
|
||||
<div class="head">
|
||||
<h1>流程发布平台</h1>
|
||||
<div class="index_nav">
|
||||
<ul style="height: 30px; margin-bottom: 0px;">
|
||||
<li class="l_left total_chose_pl"><a href="index.html">流程管理看板</a></li>
|
||||
<li class="l_left total_chose_pl"><a href="fileboard.html">文件管理看板</a></li>
|
||||
<li class="r_right total_chose_pl nav_active">领域流程绩效看板</li>
|
||||
<li class="r_right total_chose_pl"><a href="domainprocess.html">流程运行看板</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div id="header"></div>
|
||||
</div>
|
||||
<div class="mainbox">
|
||||
<div class="boxall mt30">
|
||||
<div class="alltitle">流程运行看板总图 <img src="images/daohang.png"> </div>
|
||||
<div class="total_chose_box">
|
||||
<div class="btnblock">
|
||||
<span class="btn4"><label></label>不达标</span>
|
||||
<span class="btn3"><label></label>达标警示</span>
|
||||
<span class="btn2"><label></label>运行良好</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<ul class="territory_ul">
|
||||
<li>
|
||||
<div class="territoryBox">
|
||||
<div class="territoryborder">
|
||||
<span class="style1"></span>
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="territoryBox">
|
||||
<div class="territoryborder">
|
||||
<span class="style1"></span>
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="territoryBox">
|
||||
<div class="territoryborder">
|
||||
<span class="style1"></span>
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="territoryBox">
|
||||
<div class="territoryborder">
|
||||
<span class="style1"></span>
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="territoryBox">
|
||||
<div class="territoryborder">
|
||||
<span class="style1"></span>
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="territoryBox">
|
||||
<div class="territoryborder">
|
||||
<span class="style1"></span>
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<div class="boxall">
|
||||
<div class="alltitle">指标数 <img src="images/daohang.png"> </div>
|
||||
<div class="total_chose_box">
|
||||
<div class="navtab">
|
||||
<ul id="navtab" class="navli">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sycm">
|
||||
<div id="relationship"></div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
<div class="boxall">
|
||||
<div class="alltitle">指标看板 <img src="images/daohang.png"> </div>
|
||||
<div class="sycm">
|
||||
<div class="IndicatorLeft">
|
||||
<!--<div class="title">11.0流程、信息化和数字化管理</div>-->
|
||||
<table>
|
||||
<tr>
|
||||
<td width="20%">
|
||||
<label>11.1 数字化服务引 领赋能与监督</label>
|
||||
|
||||
</td>
|
||||
<td width="20%">
|
||||
<label>11.1.3 数字化服务引 领赋能与监督</label>
|
||||
</td>
|
||||
<td>
|
||||
<ul class="IndicatorLeft_li">
|
||||
<li>末级流程名称</li>
|
||||
<li>[01]供应商主数据维护申请流程</li>
|
||||
<li>[02]供应商主数据维护申请流程 <span>M1</span><span>M1</span></li>
|
||||
<li>[03]会计信息主数据维护申请流程</li>
|
||||
<li>[04]预折价维护申请流程</li>
|
||||
<li>[01]供应商主数据维护申请流程</li>
|
||||
<li>[02]供应商主数据维护申请流程</li>
|
||||
<li>[03]会计信息主数据维护申请流程</li>
|
||||
<li>[04]预折价维护申请流程</li>
|
||||
<li>[04]预折价维护申请流程</li>
|
||||
<li>[04]预折价维护申请流程</li>
|
||||
<li>[04]预折价维护申请流程</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="IndicatorRight">
|
||||
<!-- <div class="title">11.0流程、信息化和数字化管理</div>-->
|
||||
<div class="territoryBox territoryBox_1">
|
||||
<div class="territoryborder">
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
<div class="territoryBox territoryBox_1">
|
||||
<div class="territoryborder">
|
||||
<div class="number1">
|
||||
财务数字化中心
|
||||
</div>
|
||||
<div class="number2">
|
||||
分析流程流程<label>11</label>万人
|
||||
指标数<label>71</label>个
|
||||
</div>
|
||||
</div>
|
||||
<div class="territoryBoxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="boxfoot"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="back"></div>
|
||||
<script type="text/javascript" src="js/jquery.js"></script>
|
||||
<script type="text/javascript" src="js/js.js"></script>
|
||||
<script type="text/javascript" src="js/echarts.min.js"></script>
|
||||
<script type="text/javascript" src="js/territoryNeed/territory.js"></script>
|
||||
<script type="text/javascript" src="js/territoryNeed/tree_maker.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function (){
|
||||
$(".loading").fadeOut()
|
||||
$('#header').load('header.html')
|
||||
treemark()
|
||||
})
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
|
||||
})
|
||||
window.addEventListener("resize", function () {
|
||||
$('#relationship').html('')
|
||||
treemark()
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||