main.html 13.2 KB
<!DOCTYPE html>
<html  lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <!--360浏览器优先以webkit内核解析-->
    <title>概况</title>
    <link rel="shortcut icon" href="favicon.ico">
    <link  th:href="@{/css/bootstrap.min.css}" rel="stylesheet"/>
    <link  th:href="@{/css/font-awesome.css}" rel="stylesheet"/>
    <link  th:href="@{/css/main/animate.min.css}" rel="stylesheet"/>
    <link  th:href="@{/css/main/style.min862f.css}" rel="stylesheet"/>

    <style>
        .tab-ul{
            display: inline-block;
            margin: 0 auto;
        }
        .tab-ul li{
            text-decoration: none;
            display: inline-block;
            margin: 0 20px;
        }
        .chart-hide{
            display: none;
        }
    </style>
</head>

<body class="gray-bg">
    <div class="row" style="padding:20px 30px 10px 30px;">
        <div class="col-sm-2" style="padding:5px;">
              <div class="total_box ys01">
                 <h1 id="s1">-</h1>
                 <p>今日总单量</p>
              </div>
        </div>
        <div class="col-sm-2" style="padding:5px;">
              <div class="total_box ys02">
                 <h1 id="s2">-</h1>
                 <p>今日入库量</p>
              </div>
        </div>
        <div class="col-sm-2" style="padding:5px;">
              <div class="total_box ys03">
                 <h1 id="s3">-</h1>
                 <p>今日出库量</p>
              </div>
        </div>
        <div class="col-sm-2" style="padding:5px;">
              <div class="total_box ys04">
                 <h1 id="s4">-</h1>
                 <p>库存总量</p>
              </div>
        </div>
        <div class="col-sm-2" style="padding:5px;">
              <div class="total_box ys05">
                 <h1 id="s5">-</h1>
                 <p>库内物料品数</p>
              </div>
        </div>
        <div class="col-sm-2" style="padding:5px;">
              <div class="total_box ys06">
                 <h1 id="s6">-</h1>
                 <p>待执行任务数</p>
              </div>
        </div>
    </div>
    
    <div class="row" style="padding:0 30px;">
       <div class="col-sm-6" style="padding:5px 5px 10px 5px;">
            <div class="float-e-margins">
               <div class="ibox-title">
                   <h5>每日收发货量</h5>
                   <ul class="tab-ul tab-list1">
                       <li><a>时间维度</a></li>
                       <li><a>仓库维度</a></li>
                       <li><a>货主维度</a></li>
                   </ul>
               </div>
               <div class="ibox-content">
                   <div class="echart-1"><div id="chart1" class="flot-chart1"></div></div>
                   <div class="echart-1 chart-hide">
                       <div id="chart1-1" class="flot-chart1"></div>
                   </div>
                   <div class="echart-1 chart-hide"><div id="chart1-2" class="flot-chart1">3</div></div>
               </div>
            </div>     
       </div>
       <div class="col-sm-6" style="padding:5px 5px 10px 5px;">
            <div class="float-e-margins">
                <div class="ibox-title">
                    <h5>库位利用率</h5>
                </div>
               <div class="ibox-content">
                   <div class="echart-2"><div id="chart2" class="flot-chart1"></div></div>
               </div>
            </div>     
       </div>
       <div class="col-sm-6" style="padding:5px 5px 10px 5px;">
            <div class="float-e-margins">
               <div class="ibox-title">
                   <h5>库龄展示</h5>
                   <ul class="tab-ul tab-list3">
                       <li><a>仓库维度</a></li>
                       <li><a>货主维度</a></li>
                   </ul>
               </div>
               <div class="ibox-content">
                   <div class="echart-3"><div id="chart3" class="flot-chart1"></div></div>
                   <div class="echart-3 chart-hide"><div id="chart3-1" class="flot-chart1">2</div></div>
               </div>
            </div>     
       </div>
       <div class="col-sm-6" style="padding:5px 5px 10px 5px;">
            <div class="ibox float-e-margins">
               <div class="ibox-title">
                   <h5>库存分布</h5>
                   <ul class="tab-ul tab-list4">
                       <li><a>仓库维度</a></li>
                       <li><a>货主维度</a></li>
                   </ul>
               </div>
               <div class="ibox-content">
                   <div class="echart-4"><div id="chart4" class="flot-chart1"></div></div>
                   <div class="echart-4 chart-hide"><div id="chart4-1" class="flot-chart1">2</div></div>
               </div>
            </div>     
       </div>
    </div>


    <script th:src="@{/js/jquery.min.js}"></script>
    <script th:src="@{/js/bootstrap.min.js}"></script>
    <script th:src="@{/js/echarts/echarts.js}"></script>
    <script>

        $(function () {
            refresh();

            $(".tab-list1 li").click(function () {
                let a=$('.tab-list1 li').index(this);
                $(".echart-1").addClass('chart-hide');
                $(".echart-1").eq(a).removeClass('chart-hide');
                chart();
            });

            $(".tab-list3 li").click(function () {
                let a=$('.tab-list3 li').index(this);
                $(".echart-3").addClass('chart-hide');
                $(".echart-3").eq(a).removeClass('chart-hide');
            });

            $(".tab-list4 li").click(function () {
                let a=$('.tab-list4 li').index(this);
                $(".echart-4").addClass('chart-hide');
                $(".echart-4").eq(a).removeClass('chart-hide');
            });
        });

        function refresh() {
            $.get("../admin/home/getCommonData").done(function (data) {
                if(data.code==200){
                    $("#s1").text(data.data.bllCount)
                    $("#s2").text(data.data.receiptTotal)
                    $("#s3").text(data.data.shipmentTotal)
                    $("#s4").text(data.data.inventoryTotal)
                    $("#s5").text(data.data.materialCount)
                    $("#s6").text(data.data.taskUncompletedTotal)
                }
            });


            let chart1=echarts.init(document.getElementById('chart1'));
            let chart2=echarts.init(document.getElementById('chart2'));
            let chart3=echarts.init(document.getElementById('chart3'));
            let chart4=echarts.init(document.getElementById('chart4'));
            let option={
                tooltip : {
                    trigger: 'axis',
                    axisPointer : {            // 坐标轴指示器,坐标轴触发有效
                        type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
                    }
                },
                legend: {
                    data: ['直接访问', '邮件营销','联盟广告','视频广告','搜索引擎']
                },
                grid: {
                    left: '3%',
                    right: '4%',
                    bottom: '3%',
                    containLabel: true
                },
                yAxis:  {
                    type: 'value'
                },
                xAxis: {
                    type: 'category',
                    data: ['周一','周二','周三']
                },
                series: [
                    {
                        name: '直接访问',
                        type: 'bar',
                        stack: '总量',
                        label: {
                            normal: {
                                show: true,
                                position: 'insideRight'
                            }
                        },
                        data: [10, 30, 20]
                    },
                    {
                        name: '邮件营销',
                        type: 'bar',
                        stack: '总量',
                        label: {
                            normal: {
                                show: true,
                                position: 'insideRight'
                            }
                        },
                        data: [30, 10, 30]
                    },
                    {
                        name: '联盟广告',
                        type: 'bar',
                        stack: '总量',
                        label: {
                            normal: {
                                show: true,
                                position: 'insideRight'
                            }
                        },
                        data: [20, 20, 10]
                    },
                    {
                        name: '视频广告',
                        type: 'bar',
                        stack: '总量',
                        label: {
                            normal: {
                                show: true,
                                position: 'insideRight'
                            }
                        },
                        data: [15, 30, 20]
                    },
                    {
                        name: '搜索引擎',
                        type: 'bar',
                        stack: '总量',
                        label: {
                            normal: {
                                show: true,
                                position: 'insideRight'
                            }
                        },
                        data: [25, 10, 20]
                    }
                ]
            };
            chart1.setOption(option);

        }


        let chart11=null;

        function chart() {
            let option={
                title: {
                    text: '未来一周气温变化',
                    subtext: '纯属虚构'
                },
                tooltip: {
                    trigger: 'axis'
                },
                legend: {
                    data:['最高气温','最低气温']
                },
                toolbox: {
                    show: true,
                    feature: {
                        dataZoom: {
                            yAxisIndex: 'none'
                        },
                        dataView: {readOnly: false},
                        magicType: {type: ['line', 'bar']},
                        restore: {},
                        saveAsImage: {}
                    }
                },
                xAxis:  {
                    type: 'category',
                    boundaryGap: false,
                    data: ['周一','周二','周三','周四','周五','周六','周日']
                },
                yAxis: {
                    type: 'value',
                    axisLabel: {
                        formatter: '{value} °C'
                    }
                },
                series: [
                    {
                        name:'最高气温',
                        type:'line',
                        data:[11, 11, 15, 13, 12, 13, 10],
                        markPoint: {
                            data: [
                                {type: 'max', name: '最大值'},
                                {type: 'min', name: '最小值'}
                            ]
                        },
                        markLine: {
                            data: [
                                {type: 'average', name: '平均值'}
                            ]
                        }
                    },
                    {
                        name:'最低气温',
                        type:'line',
                        data:[1, -2, 2, 5, 3, 2, 0],
                        markPoint: {
                            data: [
                                {name: '周最低', value: -2, xAxis: 1, yAxis: -1.5}
                            ]
                        },
                        markLine: {
                            data: [
                                {type: 'average', name: '平均值'},
                                [{
                                    symbol: 'none',
                                    x: '90%',
                                    yAxis: 'max'
                                }, {
                                    symbol: 'circle',
                                    label: {
                                        normal: {
                                            position: 'start',
                                            formatter: '最大值'
                                        }
                                    },
                                    type: 'max',
                                    name: '最高点'
                                }]
                            ]
                        }
                    }
                ]
            };
            if(chart11!==null){
                chart11.setOption(option);
            }
            else {
                chart11=echarts.init(document.getElementById('chart1-1'));
                chart11.setOption(option);
            }
        }

    </script>
</body>
</html>