overview...html

本文介绍了一个用于实时监控物流盒子状态的系统,通过Ajax技术定时从服务器获取盒子的状态信息,并更新到前端页面,实现了对总部、运输车队、配送站点及配送员等不同环节盒子状态的可视化展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>

<html lang = "en">
<head>
<title> testbx </title>
<meta charset = "utf-8">
<link rel="stylesheet" href="./font-awesome/css/font-awesome.min.css">
<style type="text/css"> 
body {
  color: #000;
  background: #fff;
  margin: 10;
  padding: 10;
  font-family: verdana,sans-serif,verdana,arial;
  }
body p 
{
text-align:right;
font-size:16px;
font-family: verdana,sans-serif,verdana,arial; 
}  
table.gridtable {  
    font-family: sans-serif,verdana,arial; 
    font-size:11px;  
    color:#333333;      
    border-color: #666666;  
    border-collapse: collapse;
width:80%;    
line-height:150%
}  
table.gridtable th {  
    border-width: 2px; 
    padding: 8px;  
    text-align:left;
    font-size:20px;
    border-style: solid;  
    border-color: #666666;  
    background-color: #ffffff;  
}  
table.gridtable td {  
    border-width: 2px;
    padding: 8px;  

    text-align:left;
    border-style: solid;  
    border-color: #666666;  
    height:30px;
    width:25%;
    background-color: #F0F0F0;  
}  

#tbrankIcon
{
float:left;
}
</style> 

<script type="text/javascript" src="./JSON-js-master/json2.js"></script> 
<script>
var boxDate='2017-08-15 14:40:00';
var xmlHttp;
var iconColumn = 6;
var boxIdColumn = 0;
var parentIdColumn=1;
var locationColumn=2;
var statusCollumn=3;
var dateCollumn=4;
var inventoryTypeColumn=5;

var _zcpackage=0;
var _zcavailablebox=0;
var _zctotal=0;

var _tracknormal=0;
var _trackabnormal=0;
var _tracktotal=0;

var _dispackage=0;
var _disreturn=0;
var _distotal=0;

var _delpackage=0;
var _delreturn=0;
var _deltotal=0;

function GetXmlHttpObject()
{
    var xmlHttp=null;
    try
     {
         // Firefox, Opera 8.0+, Safari
         xmlHttp=new XMLHttpRequest();
     }
    catch (e)
     {
     //Internet Explorer
         try
          {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
          }
         catch (e)
          {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
     }
    return xmlHttp;
}

function showBoxStatus()

 //alert("showBoxStatus...");
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
     {
     alert ("Browser does not support HTTP Request");
     return;
     }
    var url="http://localhost/retrievestatus.php";
    url=url+"?onlinedate="+boxDate;
    url=url+"&sid="+Math.random();
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    
}

function stateChanged() 

if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 {  
   // alert("getrespone...");
    //var dataObj = JSON.parse(xmlHttp.responseText);
    //alert(xmlHttp.responseText);
    var dataObj=eval("("+xmlHttp.responseText+")")
    
    var rows = dataObj['data'];
    
    //var x = 0;
    for(var x=0; x<rows.length; x++) 
    {
        
        var record = String(rows[x]);
        //alert(record);
        var boxstatus = record.split(",");
        
        if(boxstatus[inventoryTypeColumn] == "1") // zc
        {
        
            if(boxstatus[statusCollumn] == "0")
            {
            //alert("OK...");
                _zcavailablebox++;
            }
            else if (boxstatus[statusCollumn] == "1")
            {
                _zcpackage++;
            }
        }
        else if (boxstatus[inventoryTypeColumn] == "2") //dis
        {
            if(boxstatus[statusCollumn] == "0")
            {
                _disreturn++;
            }
            else if (boxstatus[statusCollumn] == "1")
            {
                _dispackage++;
            }
        
        }
        else if (boxstatus[inventoryTypeColumn] == "3") //track
        {
            if(boxstatus[statusCollumn] == "0")
            {
                _trackabnormal++;
            }
            else if (boxstatus[statusCollumn] == "1")
            {
                _tracknormal++; //1 means box closed
            }
        }
        else
        {
            if(boxstatus[statusCollumn] == "0")
            {
                _delpackage++;
            }
            else if (boxstatus[statusCollumn] == "1")
            {
                _delreturn++;
            }
        }
    //    alert(boxstatus[dateCollumn]);
        //addMasterRows(boxstatus[boxIdColumn],boxstatus[parentIdColumn],boxstatus[locationColumn],boxstatus[statusCollumn],boxstatus[dateCollumn],boxstatus[inventoryTypeColumn]);
        
        boxDate = boxstatus[dateCollumn];

    }


    var _valzcpackage = document.getElementById("zc-package");
    var _valzcavailablebox = document.getElementById("zc-available-box");
    var _valzctotal = document.getElementById("zc-total");
    
    if(_valzcpackage) _valzcpackage.innerHTML=_zcpackage;
    if(_valzcavailablebox) _valzcavailablebox.innerHTML=_zcavailablebox;
    if(_valzctotal) _valzctotal.innerHTML="<a href=clicktable.html?location=1>" +(_zcpackage+_zcavailablebox) + "</a>";
    
    //document.getElementById("c").innerHTML="<a href=\"xxx.jsp\"></a>";
    
    var _valtrnormal = document.getElementById("track-normal");
    var _valtrabnormal = document.getElementById("track-abnormal");
    var _valtrtotal = document.getElementById("track-total");
    
    if(_valtrnormal) _valtrnormal.innerHTML=_tracknormal;
    if(_valtrabnormal) _valtrabnormal.innerHTML = _trackabnormal;
    if(_valtrtotal) _valtrtotal.innerHTML ="<a href=clicktable.html?location=3>"+( _tracknormal + _trackabnormal) + "</a>";
    
    var _valdipackage = document.getElementById("distribution-package");
    var _valdireturn = document.getElementById("distribution-return");
    var _valditotal = document.getElementById("distribution-total");
    
    if(_valdipackage) _valdipackage.innerHTML =_dispackage;
    if(_valdireturn) _valdireturn.innerHTML = _disreturn;    
    if(_valditotal) _valditotal.innerHTML = "<a href=clicktable.html?location=2>"+(_dispackage+_disreturn) + "</a>";
    
    var _valdepackage = document.getElementById("deliver-package");
    var _valdereturn = document.getElementById("deliver-return");
    var _valdetotal = document.getElementById("deliver-total");
    
    if(_valdepackage) _valdepackage.innerHTML= _delpackage;
    if(_valdereturn) _valdereturn.innerHTML= _delreturn;
    if(_valdetotal) _valdetotal.innerHTML= "<a href=clicktable.html?location=4>"+(_delpackage+_delreturn) + "</a>";
    
    var _valtotal = document.getElementById("totalbox");
    _valtotal.innerHTML="The total box number:" + (_zcpackage+_zcavailablebox + _tracknormal + _trackabnormal + _dispackage+_disreturn + _delpackage+_delreturn) + ", last update date:" + boxDate ;
    

 } 
}
function updateData()
{

    _zcpackage=0;
    _zcavailablebox=0;
    _zctotal=0;

    _tracknormal=0;
    _trackabnormal=0;
    _tracktotal=0;

    _dispackage=0;
    _disreturn=0;
    _distotal=0;

    _delpackage=0;
    _delreturn=0;
    _deltotal=0;

    showBoxStatus();
    //alert(_deltotal);

}
window.onload = function()
{
    //var li = document.getElementById("zc-package");
    //alert(li.lastChild.className);
    //li.innerHTML = "320";
    updateData();

    setInterval(updateData, 8000);
}
</script>

<body>

 <table id="boxlog" class="gridtable">  
    <thead>  
        <tr id="hmaster">  
            <th>总    部</th>  
            <th>运输车队</th>  
            <th>配送站点</th>  
            <th>配送员</th>  
                  
        </tr>  
    </thead>  
   <tbody id="tbMain">
        <tr id="content">  
        <td>        
            <div>
             <p ><i id="tbrankIcon" class="fa fa-share-square-o fa-lg" aria-hidden="true" title="待发包裹"></i><span id="zc-package">0</span></p>
             <p ><i id="tbrankIcon" class="fa fa-refresh fa-lg" aria-hidden="true" title="可用盒子"></i><span id="zc-available-box">0</span></p><br><br>  
             <p ><i id="tbrankIcon" class="fa fa-pie-chart fa-lg" aria-hidden="true"title="总计"  ></i><span id="zc-total">0</span></p>
            </div>    
        </td>
        
        <td>
            <div>
             <p><i id="tbrankIcon" class="fa fa-truck fa-lg" aria-hidden="true" title="正常运输"></i><span id="track-normal">0</span></p>
             <p style="color:#EA0000"><i id="tbrankIcon" class="fa fa-bell-slash-o fa-lg" aria-hidden="true" title="异常信息" ></i><span id="track-abnormal">0</span></p><br><br>
              <p><i id="tbrankIcon" class="fa fa-pie-chart fa-lg" aria-hidden="true"title="总计" ></i><span id="track-total">0</span></p>
            </div>    
        </td>
        
        <td>
            <div>
             <p><i id="tbrankIcon" class="fa fa-share-square-o fa-lg" aria-hidden="true" title="待发包裹"></i><span id="distribution-package">0</span></p>
             <p><i id="tbrankIcon" class="fa fa-reply-all fa-lg" aria-hidden="true" title="待回收盒子"></i><span id="distribution-return">0</span></p><br><br>
              <p><i id="tbrankIcon" class="fa fa-pie-chart fa-lg" aria-hidden="true"title="总计"></i><span id = "distribution-total">0</span></p>
            </div>    
        </td>
        
        <td>
            <div>
             <p><i id="tbrankIcon" class="fa fa-share-square-o  fa-lg" aria-hidden="true" title="待发包裹"></i><span id="deliver-package">0</span></p>
             <p><i id="tbrankIcon" class="fa fa-reply-all fa-lg" aria-hidden="true" title="待回收盒子"></i><span id="deliver-return">0</span></p><br><br>
              <p><i id="tbrankIcon" class="fa fa-pie-chart fa-lg" aria-hidden="true"title="总计" ></i><span id="deliver-total">0</span></p>
            </div>    
        </td>
        
        </tr>
   </tbody> 
 </table>   
<p>
<div id="totalbox"><b></b></div>
</p>
</body>
</html>

转载于:https://my.oschina.net/u/3428739/blog/1524231

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值