123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523 |
- <!DOCTYPE html>
- <html style="height: 100%">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=Edge">
- <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
- <title>流水线管理页</title>
- <!-- Favicon-->
- <link rel="icon" href="favicon.ico" type="image/x-icon">
- <!-- Google Fonts -->
- <link href="https://fonts.googleapis.com/css?family=Roboto:400,700&subset=latin,cyrillic-ext" rel="stylesheet" type="text/css">
- <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" type="text/css">
- <!-- Bootstrap Core Css -->
- <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
- <!-- Waves Effect Css -->
- <link href="plugins/node-waves/waves.css" rel="stylesheet" />
- <!-- Animation Css -->
- <link href="plugins/animate-css/animate.css" rel="stylesheet" />
- <!-- Morris Chart Css-->
- <link href="plugins/morrisjs/morris.css" rel="stylesheet" />
- <!-- Custom Css -->
- <link href="css/style.css" rel="stylesheet">
- <!-- AdminBSB Themes. You can choose a theme from css/themes instead of get all themes -->
- <link href="css/themes/all-themes.css" rel="stylesheet" />
- <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
- <script src="https://cdn.bootcss.com/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
- <script src="https://cdn.bootcss.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
- <link rel="icon" href="https://static.jianshukeji.com/highcharts/images/favicon.ico">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <style>
- /* css 代码 */
- </style>
- <script src="https://img.hcharts.cn/highcharts/highcharts.js"></script>
- <script src="https://img.hcharts.cn/highcharts/modules/exporting.js"></script>
- <script src="https://img.hcharts.cn/highcharts-plugins/highcharts-zh_CN.js"></script>
- <script language="JavaScript">
- function startTime()
- {
- var today=new Date();//定义日期对象
- var yyyy = today.getFullYear();//通过日期对象的getFullYear()方法返回年
- var MM = today.getMonth()+1;//通过日期对象的getMonth()方法返回年
- var dd = today.getDate();//通过日期对象的getDate()方法返回年
- var hh=today.getHours();//通过日期对象的getHours方法返回小时
- var mm=today.getMinutes();//通过日期对象的getMinutes方法返回分钟
- var ss=today.getSeconds();//通过日期对象的getSeconds方法返回秒
- // 如果分钟或小时的值小于10,则在其值前加0,比如如果时间是下午3点20分9秒的话,则显示15:20:09
- MM=checkTime(MM);
- dd=checkTime(dd);
- mm=checkTime(mm);
- ss=checkTime(ss);
- var day; //用于保存星期(getDay()方法得到星期编号)
- if(today.getDay()==0) day = "星期日 "
- if(today.getDay()==1) day = "星期一 "
- if(today.getDay()==2) day = "星期二 "
- if(today.getDay()==3) day = "星期三 "
- if(today.getDay()==4) day = "星期四 "
- if(today.getDay()==5) day = "星期五 "
- if(today.getDay()==6) day = "星期六 "
- document.getElementById('nowDateTimeSpan').innerHTML=yyyy+"-"+MM +"-"+ dd +" " + day+" " + hh+":"+mm+":"+ss;
- setTimeout('startTime()',1000);//每一秒中重新加载startTime()方法
- }
- function checkTime(i)
- {
- if (i<10){
- i="0" + i;
- }
- return i;
- }
- </script>
- </head>
- <body class="theme-red" style="height: 100%;background-color: #17253f !important;" onload="startTime()">
- <section class="content" style="margin: 0 auto;height: 100%">
- <nav class="navbar" style="background-color: red">
- <div class="container-fluid">
- <div class="navbar-header">
- <a class="navbar-brand" href="index.html">工厂产能监控系统</a>
- </div>
- <div style="color: #ffffff"><img src="images/logo.jpg" style="width: 10%"> 深圳市度彼电子有限公司——</div>
- <font color="#ffffff"><span id="nowDateTimeSpan"></span></font>
- </div>
- </nav>
- <!-- #END# CPU Usage -->
- <section style="margin-top: 100px;color: #ffffff" >
- <div style="width: 38%;float: left">
- <div class="text-center">全厂产能统计</div>
- <table class="table table-bordered text-center" style="color: #ffffff">
- <thead>
- <tr>
- <th scope="col">时间</th>
- <th scope="col">良品数</th>
- <th scope="col">不良品数</th>
- <th scope="col">堆积数</th>
- <th scope="col">不良率</th>
- </tr>
- </thead>
- <tbody id="rank-one">
- </tbody>
- </table>
- </div>
- <div style="width: 60%;float: right">
- <div class="text-center">本厂今日生产能手榜</div>
- <table class="table table-bordered text-center" style="color: #ffffff;width: 50%;float: left" >
- <thead>
- <tr >
- <th scope="col" colspan="4">红榜</th>
- </tr>
- <tr >
- <th >人员</th>
- <th >良品数</th>
- <th >人员</th>
- <th >不良率</th>
- </tr>
- </thead>
- <tbody id="rank-two">
- <tr>
- <th scope="row">1</th>
- <td>Mark</td>
- <td>Otto</td>
- <td>@mdo</td>
- </tr>
- <tr>
- <th scope="row">2</th>
- <td>Jacob</td>
- <td>Thornton</td>
- <td>@fat</td>
- </tr>
- <tr>
- <th scope="row">2</th>
- <td>Jacob</td>
- <td>Thornton</td>
- <td>@fat</td>
- </tr>
- <tr>
- <th scope="row">3</th>
- <td>Larry</td>
- <td>the Bird</td>
- <td>@twitter</td>
- </tr>
- </tbody>
- </table>
- <table class="table table-bordered text-center" style="color: #ffffff;width: 50%;float: right" >
- <thead>
- <tr >
- <th scope="col" colspan="4">黑榜</th>
- </tr>
- <tr >
- <th >人员</th>
- <th >良品数</th>
- <th >人员</th>
- <th >不良率</th>
- </tr>
- </thead>
- <tbody id="rank-three">
- <tr>
- <th scope="row">1</th>
- <td>Mark</td>
- <td>Otto</td>
- <td>@mdo</td>
- </tr>
- <tr>
- <th scope="row">2</th>
- <td>Jacob</td>
- <td>Thornton</td>
- <td>@fat</td>
- </tr>
- <tr>
- <th scope="row">2</th>
- <td>Jacob</td>
- <td>Thornton</td>
- <td>@fat</td>
- </tr>
- <tr>
- <th scope="row">3</th>
- <td>Larry</td>
- <td>the Bird</td>
- <td>@twitter</td>
- </tr>
- </tbody>
- </table>
- </div>
- </section>
- <section style="margin-top: 5em" >
- <div id="graph-1" ></div>
- <div class="row" style="height: 6em"></div>
- <div id="graph-2" ></div>
- </section>
- </section>
- <!-- Jquery Core Js -->
- <script src="plugins/jquery/jquery.min.js"></script>
- <!-- Bootstrap Core Js -->
- <script src="plugins/bootstrap/js/bootstrap.js"></script>
- <!-- Select Plugin Js -->
- <script src="plugins/bootstrap-select/js/bootstrap-select.js"></script>
- <!-- Slimscroll Plugin Js -->
- <script src="plugins/jquery-slimscroll/jquery.slimscroll.js"></script>
- <!-- Waves Effect Plugin Js -->
- <script src="plugins/node-waves/waves.js"></script>
- <!-- Jquery CountTo Plugin Js -->
- <script src="plugins/jquery-countto/jquery.countTo.js"></script>
- <!-- Morris Plugin Js -->
- <script src="plugins/raphael/raphael.min.js"></script>
- <script src="plugins/morrisjs/morris.js"></script>
- <!-- ChartJs -->
- <script src="plugins/chartjs/Chart.bundle.js"></script>
- <!-- Flot Charts Plugin Js -->
- <script src="plugins/flot-charts/jquery.flot.js"></script>
- <script src="plugins/flot-charts/jquery.flot.resize.js"></script>
- <script src="plugins/flot-charts/jquery.flot.pie.js"></script>
- <script src="plugins/flot-charts/jquery.flot.categories.js"></script>
- <script src="plugins/flot-charts/jquery.flot.time.js"></script>
- <!-- Sparkline Chart Plugin Js -->
- <script src="plugins/jquery-sparkline/jquery.sparkline.js"></script>
- <script src="js/admin.js"></script>
- <!--<script src="js/pages/index.js"></script>-->
- <!-- Demo Js -->
- <script src="js/demo.js"></script>
- <!--<script src="js/demo.js"></script> -->
- <script src="js/basic1.js"></script>
- <script>
- var timeday=new Array("今日" ,"昨日" ,"本周" ,"本月");
- function getSpotHtml(htmlbody, i) {
- htmlbody += "<tr>";
- htmlbody += `<tr>
- <td>${timeday[i]}</td>
- <td>${hispass[i]}</td>
- <td>${hisfail[i]}</td>
- <td>${hisstack[i]}</td>
- <td>${hisrate[i]}</td>
- </tr>`;
- htmlbody += "</tr>";
- return htmlbody;
- }
- function getSpotHtml1(htmlbody, i) {
- htmlbody += "<tr>";
- htmlbody += `<tr>
- <td>${goodid[i]}</td>
- <td>${goodpass[i]}</td>
- <td>${goodid[i]}</td>
- <td>${goodfailrate[i]}</td>
- </tr>`;
- htmlbody += "</tr>";
- return htmlbody;
- }
- function getSpotHtml2(htmlbody, i) {
- htmlbody += "<tr>";
- htmlbody += `<tr>
- <td>${badid[i]}</td>
- <td>${badpass[i]}</td>
- <td>${badid[i]}</td>
- <td>${badfailrate[i]}</td>
- </tr>`;
- htmlbody += "</tr>";
- return htmlbody;
- }
- function showEachSpot() {
- var htmlbody = "", one_person = "";
- var i = 0;
- var triGap = 4;
- htmlbody = "";
- for (i = 0; i < triGap; i++) {
- htmlbody = getSpotHtml(htmlbody, i);
- }
- $("#rank-one").html(htmlbody);
- console.log(htmlbody);
- }
- function showEachSpot1() {
- var htmlbody = "", one_person = "";
- var i = 0;
- var triGap = 3;
- htmlbody = "";
- for (i = 0; i < triGap; i++) {
- htmlbody = getSpotHtml1(htmlbody, i);
- }
- $("#rank-two").html(htmlbody);
- console.log(htmlbody);
- }
- function showEachSpot2() {
- var htmlbody = "", one_person = "";
- var i = 0;
- var triGap = 3;
- htmlbody = "";
- for (i = 0; i < triGap; i++) {
- htmlbody = getSpotHtml2(htmlbody, i);
- }
- $("#rank-three").html(htmlbody);
- console.log(htmlbody);
- }
- var i =0,j=0;
- function showChart() {
- var stackdata = [];
- var passdata=[];
- var faildata=[];
- var ratedata=[];
- var failmax=0;
- for (i = 0; i < passeverynum.length; i++) {
- passdata.push(passeverynum[i]);
- faildata.push(faileverynum[i]);
- stackdata.push(0);
- ratedata.push(failrate[i])
- if (failmax < ratedata[i]) {
- failmax = ratedata[i];
- }
- }
- showEachSpot();
- showEachSpot1();
- showEachSpot2();
- stackAndFailChart = Highcharts.chart('graph-1', {
- chart: {
- zoomType: 'xy',
- height: (4 / 16 * 100) + '%' // 16:9 ratio
- },
- title: {
- text: '各产线今日产能'
- },
- credits: {
- enabled: false // 禁用版权信息
- },
- exporting: {
- enabled: false
- },
- xAxis: [{
- crosshair: true,
- labels: {
- style: {
- fontSize: '1.5em'
- }
- }
- }],
- yAxis: [{ // Primary yAxis
- labels: {
- format: '{value}',
- style: {
- color: Highcharts.getOptions().colors[0],
- fontSize: '1.5em'
- }
- },
- min: 0,
- max: 10000,
- title: {
- style: {
- color: Highcharts.getOptions().colors[0],
- fontSize: '1em'
- }
- }
- },
- ],
- tooltip: {
- shared: true
- },
- legend: {
- layout: 'vertical',
- align: 'right',
- x: -100,
- verticalAlign: 'top',
- y: 0,
- floating: true,
- backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'
- },
- series: [{
- name: '良品数',
- type: 'column',
- data: passdata,
- }, {
- name: '不良品数',
- type: 'column',
- data: faildata,
- },
- {
- name: '堆积数',
- type: 'column',
- data: stackdata,
- },]
- });
- FailChart = Highcharts.chart('graph-2', {
- chart: {
- height: (4 / 16 * 100) + '%' // 16:9 ratio
- },
- title: {
- text: '各产线今日不良率'
- },
- credits: {
- enabled: false // 禁用版权信息
- },
- exporting: {
- enabled: false
- },
- xAxis: [{
- crosshair: true,
- labels: {
- style: {
- fontSize: '1.5em'
- }
- }
- }],
- yAxis: [ { // Secondary yAxis
- title: {
- text: '不良率',
- style: {
- color: 'red',
- fontSize: '1em'
- }
- },
- min: 0,
- max: 1.5 * failmax,
- labels: {
- formatter: function () {
- return Math.floor(this.value) + "%";
- },
- style: {
- color: 'red',
- fontSize: '20px'
- }
- },
- }],
- tooltip: {
- shared: true
- },
- legend: {
- layout: 'vertical',
- align: 'right',
- x: -120,
- verticalAlign: 'top',
- y: 0,
- floating: true,
- backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'
- },
- series: [{
- name: '不良率',
- type: 'spline',
- data: ratedata,
- color: 'red',
- tooltip: {
- valueSuffix: '%'
- }
- }]
- });
- }
- function updateChart() {
- var stackdata = [];
- var passdata=[];
- var faildata=[];
- var ratedata=[];
- for (i = 0; i < passeverynum.length; i++) {
- passdata.push(passeverynum[i]);
- faildata.push(faileverynum[i]);
- stackdata.push(0);
- ratedata.push(failrate[i])
- }
- // https://api.hcharts.cn/highcharts#Series.addPoint;
- stackAndFailChart.series[0].setData(passdata);
- stackAndFailChart.series[1].setData(faildata);
- stackAndFailChart.series[2].setData(stackdata);
- FailChart.series[0].setData(ratedata);
- showEachSpot();
- showEachSpot1();
- showEachSpot2();
- }
- var stackAndFailChart = null;
- var FailChart = null;
- $(document).ready(on_document_load);
- </script>
- </body>
- </html>
|