|
@@ -1,5 +1,4 @@
|
|
|
-<!DOCTYPE html>
|
|
|
-<html>
|
|
|
+<html>
|
|
|
<head>
|
|
|
<meta charset="UTF-8">
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
|
|
@@ -43,42 +42,43 @@
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
<style>
|
|
|
/* css 代码 */
|
|
|
+ th, td{
|
|
|
+ color:white;
|
|
|
+ }
|
|
|
</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 src="https://img.hcharts.cn/highcharts/themes/dark-unica.js"></script>
|
|
|
<script language="JavaScript">
|
|
|
- function startTime()
|
|
|
- {
|
|
|
- var today=new Date();//定义日期对象
|
|
|
+ function startTime() {
|
|
|
+ var today = new Date();//定义日期对象
|
|
|
var yyyy = today.getFullYear();//通过日期对象的getFullYear()方法返回年
|
|
|
- var MM = today.getMonth()+1;//通过日期对象的getMonth()方法返回年
|
|
|
+ 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方法返回秒
|
|
|
+ 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);
|
|
|
+ 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 +" " + hh+":"+mm+":"+ss+" " + day;
|
|
|
- setTimeout('startTime()',1000);//每一秒中重新加载startTime()方法
|
|
|
+ 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 + " " + hh + ":" + mm + ":" + ss + " " + day;
|
|
|
+ setTimeout('startTime()', 1000);//每一秒中重新加载startTime()方法
|
|
|
}
|
|
|
|
|
|
- function checkTime(i)
|
|
|
- {
|
|
|
- if (i<10){
|
|
|
- i="0" + i;
|
|
|
+ function checkTime(i) {
|
|
|
+ if (i < 10) {
|
|
|
+ i = "0" + i;
|
|
|
}
|
|
|
return i;
|
|
|
}
|
|
@@ -91,542 +91,92 @@
|
|
|
<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>
|
|
|
+ <div style="color:#fff" class="text-center"><img src="images/logo.jpg" style="width: 10%;"> 深圳市度彼电子有限公司</div>
|
|
|
<font color="#ffffff"><span id="nowDateTimeSpan"></span></font>
|
|
|
</div>
|
|
|
|
|
|
</nav>
|
|
|
-<section style="margin-top: 100px;color: #ffffff" style-height="20">
|
|
|
- <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 class="container">
|
|
|
+ <div style="margin-top: 100px;" style-height="20" class="text-white row">
|
|
|
+ <div class="col-md-4">
|
|
|
+ <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 class="col-md-8 text-white">
|
|
|
+ <div class="text-center row">本厂今日生产能手榜</div>
|
|
|
+ <div class="row">
|
|
|
+ <div class="row-md-6">
|
|
|
+ <table class="table table-bordered text-center table-striped">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ <th scope="col" colspan="4">红榜</th>
|
|
|
+
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>人员</th>
|
|
|
+ <th>良品数</th>
|
|
|
+ <th>人员</th>
|
|
|
+ <th>不良率</th>
|
|
|
+
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody id="rank-two">
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ <div class="row-md-6">
|
|
|
+ <table class="table table-bordered text-center table-striped">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ <th scope="col" colspan="4">黑榜</th>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>人员</th>
|
|
|
+ <th>良品数</th>
|
|
|
+ <th>人员</th>
|
|
|
+ <th>不良率</th>
|
|
|
+
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody id="rank-three">
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</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 class="row" style-height="50">
|
|
|
+ <div class="row col-md-12 ">
|
|
|
+ <div id="graph-1" class="chartsize col-md-12" style-height="30"></div>
|
|
|
+ </div>
|
|
|
+ <div class="row col-md-12 ">
|
|
|
+ <div id="graph-2" class="chartsize col-md-12" style-height="30"></div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
-</section>
|
|
|
-
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-<div class="row" style-height="50-8">
|
|
|
- <div id="graph-1"></div>
|
|
|
- <div class="row " style="height: 10em"></div>
|
|
|
- <div class="row" style-height="">
|
|
|
- <div id="graph-2"></div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
|
|
|
|
|
|
-<!-- 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>
|
|
|
-
|
|
|
-<!-- Custom Js -->
|
|
|
-<script src="js/admin.js"></script>
|
|
|
-<!--<script src="js/pages/index.js"></script>-->
|
|
|
-
|
|
|
<!-- Demo Js -->
|
|
|
-<script src="js/demo.js"></script>
|
|
|
<script src="js/basic.js"></script>
|
|
|
<script src="js/getparam.js"></script>
|
|
|
-
|
|
|
-<script>
|
|
|
- var timeday=["今日" ,"昨日" ,"本周" ,"本月"];
|
|
|
- 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);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- function showChart() {
|
|
|
-
|
|
|
- var data = [];
|
|
|
- var ratedata = [];
|
|
|
- var stackmax = 0;
|
|
|
- var failmax = 0;
|
|
|
- var passdata=[];
|
|
|
- var faildata=[];
|
|
|
- var passmax=0;
|
|
|
-
|
|
|
- for (i = 0; i < passNumber.length; i++) {
|
|
|
- if (stackmax < stackeverynum[i]) {
|
|
|
- stackmax = stackeverynum[i];
|
|
|
- }
|
|
|
- if (failmax < failrate[i]) {
|
|
|
- failmax = failrate[i];
|
|
|
- }
|
|
|
- if(passmax<passNumber[i]){
|
|
|
- passmax=passNumber[i];
|
|
|
- }
|
|
|
- data.push(stackeverynum[i]);
|
|
|
- ratedata.push(Math.floor(failrate[i]));
|
|
|
- passdata.push(passNumber[i]);
|
|
|
- faildata.push(failNumber[i])
|
|
|
- }
|
|
|
-
|
|
|
- showEachSpot();
|
|
|
- showEachSpot1();
|
|
|
- showEachSpot2();
|
|
|
-
|
|
|
-
|
|
|
- stackmax = Math.max(stackmax, 5);
|
|
|
- failmax = Math.max(failmax, 5);
|
|
|
-
|
|
|
- stackAndFailChart = Highcharts.chart('graph-1', {
|
|
|
- chart: {
|
|
|
- zoomType: 'xy',
|
|
|
- //height: (4 / 16 * 100) + '%' // 16:9 ratio
|
|
|
- },
|
|
|
- title: {
|
|
|
- text: '各工位今日产能'
|
|
|
- },
|
|
|
- credits: {
|
|
|
- enabled: false // 禁用版权信息
|
|
|
- },
|
|
|
- exporting: {
|
|
|
- enabled: false
|
|
|
- },
|
|
|
- xAxis: [{
|
|
|
- categories: namedata,
|
|
|
- crosshair: true,
|
|
|
- title: {
|
|
|
- text: '员工',
|
|
|
- style: {
|
|
|
- fontSize: '1.5em'
|
|
|
- }
|
|
|
- },
|
|
|
- labels: {
|
|
|
- style: {
|
|
|
- fontSize: '1.5em'
|
|
|
- }
|
|
|
- }
|
|
|
- }],
|
|
|
- yAxis: [{ // Primary yAxis
|
|
|
- labels: {
|
|
|
- format: '{value}',
|
|
|
- style: {
|
|
|
- color: Highcharts.getOptions().colors[0],
|
|
|
- fontSize: '1.5em'
|
|
|
- }
|
|
|
- },
|
|
|
- min: 0,
|
|
|
- max: passmax*1.5,
|
|
|
- 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: data,
|
|
|
-
|
|
|
- },]
|
|
|
- });
|
|
|
- FailChart = Highcharts.chart('graph-2', {
|
|
|
- chart: {
|
|
|
- //height: (4 / 16 * 100) + '%' // 16:9 ratio
|
|
|
- },
|
|
|
- title: {
|
|
|
- text: '各工位今日不良率'
|
|
|
- },
|
|
|
- credits: {
|
|
|
- enabled: false // 禁用版权信息
|
|
|
- },
|
|
|
- exporting: {
|
|
|
- enabled: false
|
|
|
- },
|
|
|
- xAxis: [{
|
|
|
- categories: namedata,
|
|
|
- crosshair: true,
|
|
|
- title: {
|
|
|
- text: '员工',
|
|
|
- style: {
|
|
|
- fontSize: '1.5em'
|
|
|
- }
|
|
|
- },
|
|
|
- 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 data = [];
|
|
|
- var ratedata = [];
|
|
|
- var stackmax = 0;
|
|
|
- var failmax = 0;
|
|
|
- var passdata=[];
|
|
|
- var faildata=[];
|
|
|
- var passmax=0;
|
|
|
- for (i = 0; i < passNumber.length; i++) {
|
|
|
- if (stackmax < stackeverynum[i]) {
|
|
|
- stackmax = stackeverynum[i];
|
|
|
- }
|
|
|
- if (failmax < failrate[i]) {
|
|
|
- failmax = failrate[i];
|
|
|
- }
|
|
|
- if(passmax<passNumber[i]){
|
|
|
- passmax=passNumber[i];
|
|
|
- }
|
|
|
- data.push(stackeverynum[i]);
|
|
|
- ratedata.push(Math.floor(failrate[i]));
|
|
|
- passdata.push(passNumber[i]);
|
|
|
- faildata.push(failNumber[i])
|
|
|
- }
|
|
|
-
|
|
|
- stackmax = Math.max(stackmax, 5);
|
|
|
- failmax = Math.max(failmax, 5);
|
|
|
- // https://api.hcharts.cn/highcharts#Series.addPoint;
|
|
|
- stackAndFailChart.series[0].setData(passdata);
|
|
|
- stackAndFailChart.series[1].setData(faildata);
|
|
|
- stackAndFailChart.series[2].setData(data);
|
|
|
- FailChart.series[0].setData(ratedata);
|
|
|
- if(failmax > FailChart.yAxis[0].getExtremes().max * 1.3 || failmax < FailChart.yAxis[0].getExtremes().max * 0.5) {
|
|
|
- FailChart.yAxis[0].setExtremes(0, failmax*1.5);
|
|
|
- }
|
|
|
- if(passmax>stackAndFailChart.yAxis[0].getExtremes().max*1.3 || passmax<stackAndFailChart.yAxis[0].getExtremes().max*0.5) {
|
|
|
- stackAndFailChart.yAxis[0].setExtremes(0, passmax*1.5);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- showEachSpot();
|
|
|
- showEachSpot1();
|
|
|
- showEachSpot2();
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- var stackAndFailChart = null;
|
|
|
- var FailChart = null;
|
|
|
-
|
|
|
- $(document).ready(on_document_load);
|
|
|
-
|
|
|
- window.onresize = resizeAll;
|
|
|
-
|
|
|
- function resizeAll() {
|
|
|
- $('[style-height="10"]').height(window.innerHeight / 10);
|
|
|
- $('[style-height="20"]').each(function(one,items){$(items).height(window.innerHeight / 5)});
|
|
|
- $('[style-height="30"]').each(function(one,items){$(items).height(window.innerHeight * 0.4)});
|
|
|
- $('[style-height="40"]').height(window.innerHeight *0.4);
|
|
|
- $('[style-height="30-8"]').height(window.innerHeight * 0.4 - 220);
|
|
|
- $('[style-height="30-1"]').each(function(one,items){$(items).height(window.innerHeight * 0.3)});
|
|
|
- $('[style-height="30-2"]').each(function(one,items){$(items).height(window.innerHeight * 0.2)});
|
|
|
-
|
|
|
- $('[style-height="50-8"]').each(function(one,items){$(items).height(window.innerHeight * 0.5)});
|
|
|
- var graph = $("#graph-1");
|
|
|
- graph.width(window.innerWidth - 35);
|
|
|
- graph.height(window.innerHeight *0.2);
|
|
|
- if (graph.highcharts !== undefined) {
|
|
|
- graph.highcharts().reflow();
|
|
|
- }
|
|
|
- var graph = $("#graph-2");
|
|
|
- graph.width(window.innerWidth - 35);
|
|
|
- graph.height(window.innerHeight *0.2);
|
|
|
- if (graph.highcharts !== undefined) {
|
|
|
- graph.highcharts().reflow();
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- setInterval(function () {
|
|
|
- resizeAll();
|
|
|
- }, 5000);
|
|
|
-
|
|
|
- resizeAll();
|
|
|
-
|
|
|
- //startClock();
|
|
|
-
|
|
|
-</script>
|
|
|
+<script src="js/resize.js"></script>
|
|
|
+<script src="js/lazhang-data.js"></script>
|
|
|
+<script src="js/lazhang-display.js"></script>
|
|
|
</body>
|
|
|
|
|
|
-</html>
|
|
|
-
|
|
|
-
|
|
|
-<!---
|
|
|
-### SVR_BASE 类似 "http://127.0.0.1:8803" 实际上线之后是确定值,写死在HTML里的JS里面
|
|
|
-
|
|
|
-
|
|
|
-### 各个拉实时产量数据接口地址
|
|
|
-SVR_BASE + "/server/fcWorkRaw/allFlows"
|
|
|
-
|
|
|
-### 单个拉内,所有工位实时产量数据接口地址 e.g. 拉线ID = 2
|
|
|
-SVR_BASE + "/server/fcWorkRaw/allSpots" + "?" + "flowId=2"
|
|
|
-
|
|
|
-
|
|
|
-### 员工上班记录API e.g. 拉线ID = 2 工位顺序 = 1 员工ID = 33404
|
|
|
-SVR_BASE + "/server/fcWorkStartend/goOnline" + "?" + "flowId=2&sequence=1&workerId=33404"
|
|
|
-
|
|
|
-### 查询已上班员工 e.g. 拉线ID = 2
|
|
|
-SVR_BASE + "/server/fcWorkRaw/getAll" + "?" + "flowId=2"
|
|
|
--->
|
|
|
+</html>
|