main.html 11.9 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)
                }
            });

            $.get("../admin/home/getShipmentsLast7Days").done(function (data) {
                let option={
                    title: {
                        // text: '',
                    },
                    tooltip: {
                        trigger: 'axis'
                    },
                    legend: {
                        data:['今日入库量','今日出库量']
                    },
                    toolbox: {
                        show: true,
                        feature: {
                            dataView: {readOnly: false},
                            magicType: {type: ['line', 'bar']},
                            saveAsImage: {}
                        }
                    },
                    xAxis:  {
                        type: 'category',
                        boundaryGap: false,
                        data: []
                    },
                    yAxis: {
                        type: 'value',
                    },
                    series: [
                        {
                            name:'今日入库量',
                            type:'line',
                            data:[],
                        },
                        {
                            name:'今日出库量',
                            type:'line',
                            data:[],
                        }
                    ]
                };
                option.xAxis.data.push(1,2,3,4,5,6,7);
                for(let value of data.data.receiptDetails){
                    option.series[0].data.push(value.qty)
                }
                for(let value of data.data.shipmentDetails){
                    option.series[1].data.push(value.qty)
                }
                let chart1=echarts.init(document.getElementById('chart1'));
                chart1.setOption(option);

                console.log(option);
            });


            let chart2=echarts.init(document.getElementById('chart2'));
            let chart3=echarts.init(document.getElementById('chart3'));
            let chart4=echarts.init(document.getElementById('chart4'));


        }


        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>