storageBoxView.jsp 6.6 KB
<%--
  Created by IntelliJ IDEA.
  User: kangmor
  Date: 2015/12/4
  Time: 14:14
--%>
<%@ include file="/common/taglibs.jsp" %>
<%@ page language="java" pageEncoding="UTF-8" %>

<style>

</style>



<script>
    function launchFullscreen(element) {
        element.style.width = "100%";
        element.style.height = "100%";
        if (element.requestFullscreen) {
            element.requestFullscreen();
        } else if (element.mozRequestFullScreen) {
            element.mozRequestFullScreen();
        } else if (element.webkitRequestFullscreen) {
            element.webkitRequestFullscreen();
        } else if (element.msRequestFullscreen) {
            element.msRequestFullscreen();
        }
    }

</script>

<!-- BEGIN PAGE HEADER-->
<h3 class="page-title">
    <fmt:message key="menu.cloud.storage"/>
    <small><fmt:message key="料仓状态"/></small>
</h3>



<div class="row" onclick="/*launchFullscreen(this);*/" style="width: 100%; height: 100%;">
    <div class="col-md-12 col-sm-12">
        <div class="portlet light bordered" >
            <div class="portlet-title">
                <div class="caption">
                    ${storage.name}
                </div>
            </div><div class="portlet-body">
                <div class="row">
                    <div class="col-md-12">
                        <div id="statusContent" class="dashboard-stat grey-silver status-wrap" onclick="//launchFullscreen(this);" style="width: 100%; height: 100%;">
                            <div class="status-content" id="wholeStatus"><fmt:message key="sotrage.status.999"/></div>
                        </div>
                    </div>
                    <c:forEach begin="1" end="${storage.boxCount}" var="i">
                        <div class="col-md-4" >
                            <div class="dashboard-stat grey-silver" id="box${i}" onclick="/*launchFullscreen(this);*/">
                                <div class="details">
                                <span class="box-name">
                                BOX ${i}
                                </span>
                                    <div class="box-status" id="statusTxt${i}">
                                        <fmt:message key="sotrage.status.999"/>
                                    </div>

                                </div>
                            <span class="more">
                                <span class="left"> <fmt:message key="storage.chart.temperature"/> : <span id="temperature${i}">--</span></span>
                                <span class="right"> <fmt:message key="storage.chart.humidity"/> : <span id="humidity${i}">--</span></span>
                            </span>
                            </div>
                        </div>
                    </c:forEach>
                </div>
            </div>
        </div>
    </div>
</div>

<fmt:message key="storage.status" var="currentStatus"/>
<fmt:message key="storage.status.1" var="status_1"/>
<fmt:message key="storage.status.2" var="status_2"/>
<fmt:message key="storage.status.3" var="status_3"/>
<fmt:message key="storage.status.4" var="status_4"/>
<fmt:message key="storage.status.5" var="status_5"/>
<fmt:message key="storage.status.6" var="status_6"/>
<fmt:message key="storage.status.7" var="status_7"/>
<fmt:message key="storage.status.8" var="status_8"/>
<fmt:message key="storage.status.9" var="status_9"/>
<fmt:message key="storage.status.10" var="status_10"/>
<fmt:message key="storage.status.11" var="status_11"/>
<fmt:message key="storage.status.12" var="status_12"/>
<fmt:message key="storage.status.13" var="status_13"/>
<fmt:message key="sotrage.status.999" var="status_999"/>

<c:set var="scripts" scope="request">
    <script language="JavaScript" type="text/javascript">

        var boxColors=["blue-madison","green-haze","red-intense","purple-plum","yellow-casablanca","blue-hoki","green-jungle"];

        var statusMsg={
            "1":"${status_1}",
            "2":"${status_2}",
            "3":"${status_3}",
            "4":"${status_4}",
            "5":"${status_5}",
            "6":"${status_6}",
            "7":"${status_7}",
            "8":"${status_8}",
            "9":"${status_9}",
            "10":"${status_10}",
            "11":"${status_11}",
            "12":"${status_12}",
            "13":"${status_13}",
            "999":"${status_999}"
        };

//
//        $("#statusContent").attr("class","dashboard-stat status-wrap blue-madison");
//
//        for(var i=1;i<10;i++){
//            $("#box"+i).attr("class","dashboard-stat "+ boxColors[(i) % boxColors.length]);
//            var statusTxt = statusMsg[(i-1)%8];
//            if(!statusTxt){
//                statusTxt = boxStatusBean.status;
//            }
//            $("#statusTxt" + i).html(statusTxt);
//            $("#temperature"+ i).html(""+i);
//            $("#humidity"+ i).html(""+i);
//        }

        setInterval(function () {
            $.get('${ctx}/service/store/status?cid=${storage.cid}', function (statusBean) {

                var status = statusBean.status;
                $("#wholeStatus").html(statusMsg[status]);

                if(status == '999'){
                    $("#statusContent").attr("class","dashboard-stat status-wrap grey-silver");
                    for(var i=1;i<=${storage.boxCount};i++){
                        $("#box"+ i).attr("class","dashboard-stat grey-silver");
                        $("#temperature"+ boxid).html("--");
                        $("#humidity"+ boxid).html("--");
                    }
                    return;
                }else{
                    $("#statusContent").attr("class","dashboard-stat status-wrap blue-madison");
                }


                var statusMap = statusBean.boxStatus;
                for (var boxid in statusMap){
                    var boxStatusBean = statusMap[boxid];
                    var statusTxt = statusMsg[boxStatusBean.status];
                    if(!statusTxt){
                        statusTxt = boxStatusBean.status;
                    }
                    $("#statusTxt" + boxid).html(statusTxt);
                    if(boxStatusBean.status != '999'){
                        $("#box"+ boxid).attr("class","dashboard-stat " + boxColors[boxid % boxColors.length]);
                        $("#temperature"+ boxid).html(""+boxStatusBean.temperature);
                        $("#humidity"+ boxid).html(""+boxStatusBean.humidity);
                    }else{
                        $("#box"+ boxid).attr("class","dashboard-stat grey-silver");
                        $("#temperature"+ boxid).html("--");
                        $("#humidity"+ boxid).html("--");
                    }
                }


            });
        }, 1000);

    </script>
</c:set>