Переглянути джерело

完善首页的动态数据

李天标 5 роки тому
батько
коміт
4be20c4ee9

+ 10 - 3
app-backend-web/src/main/java/com/hboxs/control/admin/IndexController.java

@@ -212,7 +212,7 @@ public class IndexController extends BaseController {
     /**
      *机器全年的使用统计
      */
-    @RequestMapping(value = "/allCleanNumber", method = RequestMethod.GET)
+    @RequestMapping(value = "/allCleanNumber", method = RequestMethod.GET,produces = {"application/json;charset=UTF-8"})
     @ResponseBody
     public String allCleanNumber(ModelMap model , RedirectAttributes redirectAttributes) {
         List<CleanStatisticsDTO> list = new ArrayList<>();
@@ -220,7 +220,14 @@ public class IndexController extends BaseController {
         list = cleanHistoryService.findByTime(admin.getId());
         model.addAttribute("allCleanNumber", list);
         JSONObject jsonObject = new JSONObject();
-        jsonObject.put("allCleanNumber",list);
+        List<Price> priceList = new LinkedList<>();
+        for(CleanStatisticsDTO cleanStatisticsDTO:list){
+            Price price = new Price();
+            price.setName(cleanStatisticsDTO.getsTime());
+            price.setPrice(cleanStatisticsDTO.getTotalNumber());
+            priceList.add(price);
+        }
+        jsonObject.put("allCleanNumber", priceList);
         return jsonObject.toString();
     }
 
@@ -426,7 +433,7 @@ public class IndexController extends BaseController {
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         String lastDayOfMonth = sdf.format(cal.getTime());
         Date dater = null;
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
         Date date = null;
         try {
             date = simpleDateFormat.parse(lastDayOfMonth);

+ 99 - 123
app-backend-web/src/main/webapp/WEB-INF/template/admin/common/index.ftl

@@ -11,13 +11,16 @@
     <script type="text/javascript" src="/resources/index/js/jquery.min.js"></script>
     <script type="text/javascript" src="/resources/index/js/jquery.shCircleLoader-min.js"></script>
     <script src="/resources/index/js/angular.min.js"></script>
-<#--<script type="text/javascript" src="/resources/index/js/angularIndex.js"></script>-->
+    <script type="text/javascript" src="/resources/index/js/echarts.min.js"></script>
+
+    <script type="text/javascript" src="/resources/index/js/angularIndex.js"></script>
 
 </head>
 <body>
 <div id="loader"></div>
 <script type="text/javascript">
     $('#loader').shCircleLoader({color: "#00deff"});
+
 </script>
 <!--Top Start!-->
 <div class="scanboardWp animsition">
@@ -50,9 +53,11 @@
 
                 <div class="tag1 itembg">
                     <ul>
-                        <li style="font-size: 30px;color: aqua;">666</li>
-                        <li style="font-size: 30px;color: aqua;">12/<span
-                                style="font-size: 30px;color: #ffd220;">76</span></li>
+                        <li id="peopleCouting" style="font-size: 30px;color: aqua;">0</li>
+                        <li style="font-size: 30px;color: aqua;">
+                            <span id="openMuchine" style="font-size: 30px;color: aqua;">0/</span>
+                            <span id="allMuchine" style="font-size: 30px;color: #ffd220;">0</span>
+                        </li>
                     </ul>
                     <ul>
                         <li style="font-size: 16px;color: #fff;">人流量</li>
@@ -65,12 +70,16 @@
                 <div class="itemTit" style="position: relative">
                     <span class="border-blue">设备清洗排行</span>
                     <div class="dateDropdown fr">
-                        <h3>2020-01-01</h3>
-                        <div class="dropdown">
-                            <a href="#">2020-01-01</a>
-                            <a href="#">2020-02-01</a>
-                            <a href="#">2020-02-01</a>
-                        </div>
+                    <#--<h3>2020-01-01</h3>-->
+                    <#--<div class="dropdown">-->
+                    <#--<a href="#">2020-01-01</a>-->
+                    <#--<a href="#">2020-02-01</a>-->
+                    <#--<a href="#">2020-02-01</a>-->
+                    <#--</div>-->
+                        <select id="cleanLine" onchange="getCleanLine(this.options[this.options.selectedIndex].value)"
+                                style="margin-top: 8px;color: #00ddfe;border:none;background-color:black">
+                            <option value="All">全部</option>
+                        </select>
                     </div>
                 </div>
                 <div class="itemCon">
@@ -81,42 +90,14 @@
                             <span>次数</span>
                         </div>
                         <div id="FontScroll2">
-                            <ul>
-                                <li>
-                                    <div class="fontInner clearfix">
-                                        <span>1</span>
-                                        <span>机器人1</span>
-                                        <span>1</span>
-                                    </div>
-                                </li>
-                                <li>
-                                    <div class="fontInner clearfix">
-                                        <span>2</span>
-                                        <span>机器人2</span>
-                                        <span>2</span>
-                                    </div>
-                                </li>
-                                <li>
-                                    <div class="fontInner clearfix">
-                                        <span>3</span>
-                                        <span>机器人3</span>
-                                        <span>3</span>
-                                    </div>
-                                </li>
-                                <li>
-                                    <div class="fontInner clearfix">
-                                        <span>4</span>
-                                        <span>机器人4</span>
-                                        <span>4</span>
-                                    </div>
-                                </li>
-                                <li>
-                                    <div class="fontInner clearfix">
-                                        <span>5</span>
-                                        <span>机器人5</span>
-                                        <span>5</span>
-                                    </div>
-                                </li>
+                            <ul id="cleanLineDes">
+                                <#--<li>-->
+                                    <#--<div class="fontInner clearfix">-->
+                                        <#--<span>1</span>-->
+                                        <#--<span>机器人1</span>-->
+                                        <#--<span>1</span>-->
+                                    <#--</div>-->
+                                <#--</li>-->
                             </ul>
                         </div>
                     </div>
@@ -128,12 +109,16 @@
                 <div class="itemTit" style="position: relative">
                     <span class="border-blue">问题占比</span>
                     <div class="dateDropdown fr">
-                        <h3>2020-01-01</h3>
-                        <div class="dropdown">
-                            <a href="#">2020-01-01</a>
-                            <a href="#">2020-02-01</a>
-                            <a href="#">2020-02-01</a>
-                        </div>
+                    <#--<h3>2020-01-01</h3>-->
+                    <#--<div class="dropdown">-->
+                    <#--<a href="#">2020-01-01</a>-->
+                    <#--<a href="#">2020-02-01</a>-->
+                    <#--<a href="#">2020-02-01</a>-->
+                    <#--</div>-->
+                        <select id="alarmBili" onchange="getAlarmRecordType(this.options[this.options.selectedIndex].value)"
+                                style="margin-top: 8px;color: #00ddfe;border:none;background-color:black">
+                            <option value="All">全部</option>
+                        </select>
                     </div>
                 </div>
                 <div id="myChart2"></div>
@@ -146,9 +131,9 @@
                 <div class="center1 item total itembg">
                     <div class="itemCon tag2" style="min-height: 125px;">
                         <ul>
-                            <li>598次</li>
-                            <li class="totalNum"><strong id="totalNum" total="666">0</strong><span>次</span></li>
-                            <li>68次</li>
+                            <li id="random">0次</li>
+                            <li class="totalNum"><strong id="totalNum" >0</strong><span>次</span></li>
+                            <li id="regular">0次</li>
                         </ul>
                         <ul>
                             <li>今日随机清洗次数</li>
@@ -161,27 +146,31 @@
                     <div class="itemTit" style="position: relative">
                         <span class="border-yellow">环境检测</span>
                         <div class="dateDropdown fr">
-                            <h3>申泽机器人1号</h3>
-                            <div class="dropdown">
-                                <a href="#">申泽机器人1号</a>
-                                <a href="#">申泽机器人2号</a>
-                                <a href="#">申泽机器人3号</a>
-                            </div>
+                        <#--<h3>申泽机器人1号</h3>-->
+                        <#--<div class="dropdown">-->
+                        <#--<a href="#">申泽机器人3号</a>-->
+                        <#--<a href="#">申泽机器人1号</a>-->
+                        <#--<a href="#">申泽机器人2号</a>-->
+                        <#--<a href="#">申泽机器人3号</a>-->
+                        <#--</div>-->
+                            <select id="shuxing" onchange="getEquipmentShuxing(this.options[this.options.selectedIndex].value)" style="margin-top: 8px;color: #00ddfe;border:none;background-color:black">
+
+                            </select>
                         </div>
                     </div>
                     <div class="itemCon itembg">
                         <div class="infoPie2" style="min-height: 125px;">
                             <ul class="clearfix">
                                 <li class="color-zi">
-                                    <span class="border-zi">29%</span>
+                                    <span id="odorConcentration" class="border-zi">0%</span>
                                     <p>气味浓度</p>
                                 </li>
-                                <li class="color-blue">
-                                    <span class="border-blue">23℃</span>
-                                    <p>温度</p>
+                                <li  class="color-blue">
+                                    <span id="cabinetTm" class="border-blue">0℃</span>
+                                    <p>室内温度</p>
                                 </li>
                                 <li class="color-yellow">
-                                    <span class="border-yellow">36%</span>
+                                    <span id="cabinetHd" class="border-yellow">0%</span>
                                     <p>湿度</p>
                                 </li>
                                 <li class="color-green">
@@ -208,37 +197,17 @@
                                 <span>全部状态</span>
                             </div>
                             <div id="FontScroll">
-                                <ul>
-                                    <li>
-                                        <div class="fontInner clearfix">
-                                            <span>ZC1712120023</span>
-                                            <span>机器人1</span>
-                                            <span>尾部喷水异常</span>
-                                            <span>2小时15分</span>
-                                            <span>申泽1层</span>
-                                            <span>待处理</span>
-                                        </div>
-                                    </li>
-                                    <li>
-                                        <div class="fontInner clearfix">
-                                            <span>ZC1712120023</span>
-                                            <span>机器人1</span>
-                                            <span>尾部喷水异常</span>
-                                            <span>2小时15分</span>
-                                            <span>申泽1层</span>
-                                            <span>待处理</span>
-                                        </div>
-                                    </li>
-                                    <li>
-                                        <div class="fontInner clearfix">
-                                            <span>ZC1712120023</span>
-                                            <span>机器人1</span>
-                                            <span>尾部喷水异常</span>
-                                            <span>2小时15分</span>
-                                            <span>申泽1层</span>
-                                            <span>待处理</span>
-                                        </div>
-                                    </li>
+                                <ul id="alarmList">
+                                <#--<li>-->
+                                <#--<div class="fontInner clearfix">-->
+                                <#--<span>ZC1712120023</span>-->
+                                <#--<span>机器人1</span>-->
+                                <#--<span>尾部喷水异常</span>-->
+                                <#--<span>2小时15分</span>-->
+                                <#--<span>申泽1层</span>-->
+                                <#--<span>待处理</span>-->
+                                <#--</div>-->
+                                <#--</li>-->
                                 </ul>
                             </div>
                         </div>
@@ -253,56 +222,64 @@
                 <div class="itemTit" style="position: relative">
                     <span class="border-yellow">剩余物料</span>
                     <div class="dateDropdown fr">
-                        <h3>2020-01-01</h3>
-                        <div class="dropdown">
-                            <a href="#">2020-01-01</a>
-                            <a href="#">2020-02-01</a>
-                            <a href="#">2020-02-01</a>
-                        </div>
+                    <#--<h3>2020-01-01</h3>-->
+                    <#--<div class="dropdown">-->
+                    <#--<a href="#">2020-01-01</a>-->
+                    <#--<a href="#">2020-02-01</a>-->
+                    <#--<a href="#">2020-02-01</a>-->
+                    <#--</div>-->
+                        <select id="wuliao" onchange="getEquipmentWuliao(this.options[this.options.selectedIndex].value)" style="margin-top: 8px;color: #00ddfe;border:none;background-color:black">
+
+                        </select>
                     </div>
                 </div>
-                <div class="itemCon">
-                    <div class="progress" progress="100%">
-                        <h3 class="clearfix"><span>清洁剂</span><i>100%</i></h3>
-                        <div class="progressBar">
-                            <span></span>
-                        </div>
-                    </div>
-                    <div class="progress" progress="40%">
-                        <h3 class="clearfix"><span>消毒水</span><i>40%</i></h3>
+                <div id="resource" class="itemCon">
+                    <div id="cleanerDiv" class="progress" >
+                        <h3 class="clearfix"><span>清洁剂</span><i id="cleaner">0%</i></h3>
                         <div class="progressBar">
                             <span></span>
                         </div>
                     </div>
-                    <div class="progress" progress="60%">
-                        <h3 class="clearfix"><span>清新剂</span><i>60%</i></h3>
+                    <div id="disinfectantDiv" class="progress">
+                        <h3 class="clearfix"><span>消毒水</span><i id="disinfectant">0%</i></h3>
                         <div class="progressBar">
                             <span></span>
                         </div>
                     </div>
+                    <#--<div class="progress" progress="60%">-->
+                        <#--<h3 class="clearfix"><span>清新剂</span><i>60%</i></h3>-->
+                        <#--<div class="progressBar">-->
+                            <#--<span></span>-->
+                        <#--</div>-->
+                    <#--</div>-->
                 </div>
             </div>
 
             <!--使用统计-->
             <div class="right2 item basicInfo">
                 <div class="itemTit">
-                    <span class="border-green">能耗</span>
-                </div>
+                    <span class="border-green">能耗
+                    <div class=" fr" style="margin-bottom: 20px">
+                        <select id="resources" onchange="getConsumedResources(this.options[this.options.selectedIndex].value);" style="margin-top: 0px;color: #00ddfe;border:none;background-color:black">
+                            <option value="All">全部</option>
+                        </select>
+                    </div>
+                </div></span>
                 <div class="itemCon itembg">
                     <div class="infoPie">
                         <ul class="clearfix">
                             <li class="color-yellow">
-                                <span class="border-yellow">32</span>
+                                <span id="water" class="border-yellow">0</span>
                                 <p>水耗(吨)</p>
                             </li>
                             <li class="color-green">
-                                <span class="border-green">66</span>
+                                <span id="electricity" class="border-green">0</span>
                                 <p>电耗(度)</p>
                             </li>
-                            <li class="color-blue">
-                                <p>水费:66元</p>
-                                <p>电费:66元</p>
-                            </li>
+                        <#--<li class="color-blue">-->
+                        <#--<p>水费:66元</p>-->
+                        <#--<p>电费:66元</p>-->
+                        <#--</li>-->
                         </ul>
                     </div>
                 </div>
@@ -327,5 +304,4 @@
 <script type="text/javascript" src="/resources/index/js/fontscroll.js"></script>
 <script type="text/javascript" src="/resources/index/js/jquery.animsition.js"></script>
 <script type="text/javascript" src="/resources/index/js/jquery.nicescroll.js"></script>
-<script type="text/javascript" src="/resources/index/js/echarts.min.js"></script>
 </html>

Різницю між файлами не показано, бо вона завелика
+ 323 - 0
app-backend-web/src/main/webapp/resources/index/js/angular.min.js


+ 157 - 0
app-backend-web/src/main/webapp/resources/index/js/angularIndex.js

@@ -0,0 +1,157 @@
+function getConsumedResources(time){
+    if(time==undefined||time==''){
+        time = document.getElementById("resources").value;
+    }
+    var equipmentList =null;
+    $.ajax({
+        url:"/asl-admin/index/consumedResources.htm?time="+time,
+        type:"get",
+        contentType: "application/json;charset=utf-8",
+        dataType: "json",
+        success: function(data){
+            number = data;
+            var water=window.document .getElementById ("water");
+            water.innerHTML = data.water;
+            var electricity=window.document .getElementById ("electricity");
+            electricity.innerHTML = data.electricity;
+            console.log("consumedResources:",number);
+        }
+    });
+};
+//机器清洗排行
+function getCleanLine(time){
+    if(time==undefined||time==''){
+        time = document.getElementById("cleanLine").value;
+    }
+    var equipmentList =null;
+    $.ajax({
+        url:"/asl-admin/index/cleanLine.htm?time="+time,
+        type:"get",
+        contentType: "application/json;charset=utf-8",
+        dataType: "json",
+        success: function(data){
+            number = data;
+            document.getElementById("cleanLineDes").innerHTML = "";
+            var ul = document.getElementById("cleanLineDes");
+            for(var i = 1;i <= data.cleanLine.length;i++){
+                var li = document.createElement("li");
+                li.innerHTML ='<li>'+
+                    '<div class="fontInner clearfix">'+
+                    '<span>'+i+'</span>'+
+                    '<span>'+data.cleanLine[i-1].title+'</span>'+
+                    '<span>'+data.cleanLine[i-1].totalNumber+'</span>'+
+                    '</div>'+
+                    '</li>';
+                ul.appendChild(li);
+            }
+            console.log("cleanLine:",number);
+        }
+    });
+};
+//报警的类型统计,问题占比
+function getAlarmRecordType(time){
+    if(time==undefined||time==''){
+        time = document.getElementById("alarmBili").value;
+    }
+    var equipmentList =null;
+    $.ajax({
+        url:"/asl-admin/index/alarmRecordType.htm?time="+time,
+        type:"get",
+        contentType: "application/json;charset=utf-8",
+        dataType: "json",
+        success: function(data){
+            number = data.alarmRecordType;
+            chart2(data.alarmRecordType);
+            console.log("alarmRecordType:",number);
+        }
+    });
+};
+//问题占比统计
+function chart2(alarmRecordType) {
+    var data = [];
+    for(var i =0;i<alarmRecordType.length;i++){
+        var person = new Object();
+        person.value = alarmRecordType[i].totalNumber;
+        person.name = alarmRecordType[i].title;
+        data.push(person);
+    }
+    var myChart2 = echarts.init(document.getElementById('myChart2'));
+    var option2 = {
+        legend: {
+            type: 'scroll',
+            orient: 'vertical',
+            right: 10,
+            top: 20,
+            bottom: 20,
+            textStyle:{//图例文字的样式
+                color:'#ccc'
+            },
+            data:data,
+        },
+        series: [
+            {
+                // name: '姓名',
+                type: 'pie',
+                radius: '55%',
+                label: {
+                    normal: {
+                        position: 'inner',
+                        show : false
+                    }
+                },
+                center: ['40%', '50%'],
+                data:data,
+                emphasis: {
+                    itemStyle: {
+                        shadowBlur: 10,
+                        shadowOffsetX: 0,
+                        shadowColor: 'rgba(0, 0, 0, 0.5)'
+                    }
+                }
+            }
+        ]
+    };
+    myChart2.setOption(option2);
+};
+// var equipmentLists = null;
+//机器的状态,温度,湿度,清洗剂的剩余用量
+// function getEquipmentShuxing(name){
+//     var equipmentList =null;
+//     $.ajax({
+//         url:"/asl-admin/index/equipmentStatus.htm",
+//         type:"get",
+//         contentType: "application/json;charset=utf-8",
+//         dataType: "json",
+//         success: function(data){
+//             number = data;
+//             equipmentList = data.equipmentList;
+//             equipmentLists = data.equipmentList;
+//             var odorConcentration=window.document .getElementById ("odorConcentration");
+//             var cabinetTm=window.document .getElementById ("cabinetTm");
+//             var cabinetHd=window.document .getElementById ("cabinetHd");
+//             for(var i = 0;i < equipmentList.length; i++){
+//                 if(name==equipmentList[i].name) {
+//                     odorConcentration.innerHTML = equipmentList[i].odorConcentration + "%";
+//                     cabinetTm.innerHTML = equipmentList[i].cabinetTm + "℃";
+//                     cabinetHd.innerHTML = equipmentList[i].cabinetHd + "%";
+//                 }
+//             }
+//
+//         }
+//     });
+// };
+// function getEquipmentName(){
+//     var equipmentList =null;
+//     $.ajax({
+//         url:"/asl-admin/index/equipmentStatus.htm",
+//         type:"get",
+//         contentType: "application/json;charset=utf-8",
+//         dataType: "json",
+//         success: function(data){
+//             number = data;
+//             equipmentLists = data.equipmentList;
+//             equipmentSelect(data.equipmentList);
+//             setInterval(changeA,equipmentLists.length*5000);
+//         }
+//     });
+// };

Різницю між файлами не показано, бо вона завелика
+ 815 - 146
app-backend-web/src/main/webapp/resources/index/js/scanboard.js


+ 8 - 0
app-entity/src/main/java/com/hboxs/entity/AlarmRecord.java

@@ -142,6 +142,14 @@ public class AlarmRecord extends BaseEntity {
     private String site;
 
 
+    public String getSite() {
+        return site;
+    }
+
+    public void setSite(String site) {
+        this.site = site;
+    }
+
     public String getClientId() {
         return clientId;
     }

+ 15 - 3
app-entity/src/main/java/com/hboxs/entity/Equipment.java

@@ -261,17 +261,17 @@ public class Equipment extends BaseEntity {
     private String simNo;
 
     /**
-     * 内温度
+     * 内温度
      */
     private String cabinetTm;
 
     /**
-     * 内湿度
+     * 内湿度
      */
     private String cabinetHd;
 
     /**
-     * 炉头温度
+     * 机器温度
      */
     private String furnaceTm;
 
@@ -281,6 +281,10 @@ public class Equipment extends BaseEntity {
     private String furnaceSp;
 
     /**
+     * 气味浓度
+     */
+    private String odorConcentration;
+    /**
      * 联网方式
      */
     private String netWorkingMode;
@@ -426,6 +430,14 @@ public class Equipment extends BaseEntity {
         this.peopleCounting = peopleCounting;
     }
 
+    public String getOdorConcentration() {
+        return odorConcentration;
+    }
+
+    public void setOdorConcentration(String odorConcentration) {
+        this.odorConcentration = odorConcentration;
+    }
+
     public String getSite() {
         return site;
     }