Prechádzať zdrojové kódy

添加excel导出,以及流程优化

insomniaLee 6 rokov pred
rodič
commit
733f9be2cd

+ 24 - 0
pom.xml

@@ -21,6 +21,7 @@
         <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.build.locales>zh_CN</project.build.locales>
+        <zookeeper-version>3.4.10</zookeeper-version>
     </properties>
 
     <dependencies>
@@ -147,6 +148,29 @@
         </dependency>
 
 
+        <!-- https://mvnrepository.com/artifact/org.apache.zookeeper/zookeeper -->
+<!--        <dependency>-->
+<!--            <groupId>org.apache.zookeeper</groupId>-->
+<!--            <artifactId>zookeeper</artifactId>-->
+<!--            <version>${zookeeper-version}</version>-->
+<!--            <exclusions>-->
+<!--                <exclusion>-->
+<!--                    <artifactId>log4j</artifactId>-->
+<!--                    <groupId>log4j</groupId>-->
+<!--                </exclusion>-->
+<!--                <exclusion>-->
+<!--                    <groupId>org.slf4j</groupId>-->
+<!--                    <artifactId>slf4j-api</artifactId>-->
+<!--                </exclusion>-->
+<!--                <exclusion>-->
+<!--                    <groupId>org.slf4j</groupId>-->
+<!--                    <artifactId>slf4j-log4j12</artifactId>-->
+<!--                </exclusion>-->
+<!--            </exclusions>-->
+<!--        </dependency>-->
+
+
+
     </dependencies>
 
 

+ 13 - 10
src/main/java/com/mooctest/controller/FinalReportController.java

@@ -1,25 +1,19 @@
 package com.mooctest.controller;
 
+import com.alibaba.fastjson.JSONObject;
 import com.mooctest.data.BugDTO;
 import com.mooctest.data.FinalReportDTO;
 import com.mooctest.data.TaskDTO;
 import com.mooctest.service.BugReportService;
 import com.mooctest.service.FinalReportService;
 import com.mooctest.service.TaskService;
-import com.mooctest.util.Report2Excel;
 import com.mooctest.util.Report2xls;
 import com.mooctest.util.ReportUtil;
-import org.apache.tomcat.util.http.fileupload.IOUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.client.ClientHttpRequest;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.*;
-import org.springframework.web.client.RestTemplate;
 
-import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 @Controller
@@ -73,7 +67,7 @@ public class FinalReportController {
 
         List<FinalReportDTO> finalReports = finalReportService.getByExamIdAndCaseId(examId, caseId);
         TaskDTO task = taskService.getByExamIdAndCaseId(examId, caseId);
-        Report2xls.report2excel(finalReports);
+//        Report2xls.report2excel(finalReports);
 //        Report2Excel.report2excel(finalReports);
         return "hello";
     }
@@ -99,12 +93,21 @@ public class FinalReportController {
     @ResponseBody
     public String export(@RequestParam("examId") long examId,
                          @RequestParam("caseId") long caseId) {
-
         TaskDTO task = taskService.getByExamIdAndCaseId(examId, caseId);
-
         return finalReportService.getExportReportAddr(task);
     }
 
+    @GetMapping("final_report/export_excel")
+    @ResponseBody
+    public String exportExcel(@RequestParam("examId") long examId,
+                         @RequestParam("caseId") long caseId) {
+        TaskDTO task = taskService.getByExamIdAndCaseId(examId, caseId);
+        return finalReportService.getReportExportExcelAttr(task);
+    }
+
+
+
+
     @RequestMapping(value = "/appendBugToFinalReport")
     @ResponseBody
     public void processRequest(

+ 2 - 1
src/main/java/com/mooctest/controller/ReportController.java

@@ -280,6 +280,7 @@ public class ReportController {
         return wordList.toJSONString();
     }
 
+    //审核报告;
     @GetMapping(value = "agg_report_list")
     public String showAggReportList(@RequestParam("examId") long examId,
                                     @RequestParam("caseId") long caseId,
@@ -310,7 +311,7 @@ public class ReportController {
     }
 
 
-    @GetMapping(value = "agg_report_list_test")
+    @GetMapping(value = "review_report")
     public String showAggReportLisst(@RequestParam("examId") long examId,
                                     @RequestParam("caseId") long caseId,
                                     @RequestParam(value = "status", required = false, defaultValue = "-1") int status,

+ 21 - 3
src/main/java/com/mooctest/service/FinalReportService.java

@@ -33,6 +33,9 @@ public class FinalReportService {
     @Value("${report.export.addr}")
     String reportExportAddr;
 
+    @Value("${report.export.excel.addr}")
+    String reportExportExcelAttr;
+
     public FinalReportDTO save(FinalReportDTO dto) {
 
         FinalReport finalReport = new FinalReport();
@@ -81,18 +84,33 @@ public class FinalReportService {
 
     public String getExportReportAddr(TaskDTO task) {
         List<FinalReport> finalReports = finalReportDao.findByExamIdAndCaseId(task.getExamId(), task.getCaseId());
-
         HttpHeaders headers = new HttpHeaders();
         headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
-
         JSONObject reportJson = genJsonForExport(task, finalReports);
         HttpEntity<String> request = new HttpEntity<>(reportJson.toJSONString(), headers);
         RestTemplate rt = HttpUtil.getRestTemplate();
-
         String url = rt.postForObject(reportExportAddr, request, String.class);
         return url;
     }
 
+    public String getReportExportExcelAttr(TaskDTO task){
+        List<FinalReport> finalReports = finalReportDao.findByExamIdAndCaseId(task.getExamId(), task.getCaseId());
+        HttpHeaders headers = new HttpHeaders();
+        headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
+        JSONObject reportJson = genJsonForExport(task, finalReports);
+        HttpEntity<String> request = new HttpEntity<>(reportJson.toJSONString(), headers);
+        RestTemplate rt = HttpUtil.getRestTemplate();
+        String url = rt.postForObject(reportExportExcelAttr, request, String.class);
+        return url;
+    }
+    public JSONObject getReportExportData(TaskDTO task){
+        List<FinalReport> finalReports = finalReportDao.findByExamIdAndCaseId(task.getExamId(), task.getCaseId());
+        HttpHeaders headers = new HttpHeaders();
+        headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
+        JSONObject reportJson = genJsonForExport(task, finalReports);
+        return reportJson;
+    }
+
     private JSONObject genJsonForExport(TaskDTO task, List<FinalReport> finalReports) {
         JSONObject root = new JSONObject();
         JSONArray projects = new JSONArray();

+ 2 - 1
src/main/resources/application.yml

@@ -1,5 +1,5 @@
-spring.profiles.active: dev
 
+spring.profiles.active: dev
 spring:
   mvc:
     favicon:
@@ -30,6 +30,7 @@ mongodb2.host: 127.0.0.1
 mongodb2.port: 27017
 
 report.export.addr: http://47.99.140.117:9002/generateReport
+report.export.excel.addr: http://192.168.31.54:9003/generateReport
 task.info.addr: http://47.99.140.117:9001/Bug/api/extra/getExamList
 
 server:

+ 40 - 24
src/main/resources/templates/agg_report_new.html

@@ -9,38 +9,54 @@
 </head>
 <body>
 <th:block layout:fragment="sidebar">
-
+    <li>
+        <a th:href="'/task_detail?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-book"></i>
+            <span>
+                任务详情
+            </span>
+        </a>
+    </li>
     <li>
         <a th:href="'/final_reports?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
             <i class="fa fa-calendar-check-o"></i>
             <span>预交付报告</span>
         </a>
     </li>
-    <li class="treeview">
-        <a href="#">
-            <i class="fa fa-list"></i>
-            <span>Reports</span>
-            <span class="pull-right-container">
-			<i class="fa fa-angle-left pull-right"></i>
-		</span>
+    <li>
+        <a th:href="'/review_report?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-edit"></i>
+            <span>
+                报告审核
+            </span>
         </a>
-        <ul class="treeview-menu" style="display: block;">
-            <li>
-                <a th:href="'/task_detail?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <i class="fa fa-sticky-note text-success"></i>
-                    <span>默认视图</span>
-                </a>
-            </li>
-            <li>
-                <a th:href="'/agg_report_list?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <i class="fa fa-sitemap text-warning"></i>
-                    <span>聚合视图</span>
-                </a>
-            </li>
-
-
-        </ul>
     </li>
+
+<!--    <li class="treeview">-->
+<!--        <a href="#">-->
+<!--            <i class="fa fa-list"></i>-->
+<!--            <span>Reports</span>-->
+<!--            <span class="pull-right-container">-->
+<!--			<i class="fa fa-angle-left pull-right"></i>-->
+<!--		</span>-->
+<!--        </a>-->
+<!--        <ul class="treeview-menu" style="display: block;">-->
+<!--            <li>-->
+<!--                <a th:href="'/task_detail?examId='+${examId}+'&amp;caseId='+${caseId}">-->
+<!--                    <i class="fa fa-sticky-note text-success"></i>-->
+<!--                    <span>默认视图</span>-->
+<!--                </a>-->
+<!--            </li>-->
+<!--            <li>-->
+<!--                <a th:href="'/agg_report_list?examId='+${examId}+'&amp;caseId='+${caseId}">-->
+<!--                    <i class="fa fa-sitemap text-warning"></i>-->
+<!--                    <span>聚合视图</span>-->
+<!--                </a>-->
+<!--            </li>-->
+
+
+<!--        </ul>-->
+<!--    </li>-->
 </th:block>
 <th:block layout:fragment="maincontent">
 

+ 35 - 9
src/main/resources/templates/final_report_list.html

@@ -36,19 +36,20 @@
                 </a>
             </li>
             <li>
-                <!--<a th:href="'/history/getTrees?case_take_id='+${caseId}-${examId}+'&amp;start='+0+'&amp;count='+10+'&amp;page=null&amp;identity='+0+'&amp;report_id='+5cbc1a9f825a8960cdc7bd4f+'&amp;worker_id='+22383+'">-->
-                <a th:href="'/history/getTrees?case_take_id=1281-2724&amp;start=0&amp;count=10&amp;page=null&amp;identity=0&amp;report_id=5cbc1a9f825a8960cdc7bd4f&amp;worker_id=22383'">
+                <a th:href="'/history/tree_list?examId='+${examId}+'&amp;caseId='+${caseId}">
+                    <!--写死的参数,-->
                     <!--<a th:href="'/history/getTrees2?examId='+${caseId}+'">-->
-                    <i class="fa fa-sitemap text-warning"></i>
-                    <span>新增视图</span>
+                    <i class="glyphicon glyphicon-tree-conifer" style="    color: #07b309;
+    margin-right: 5px;"></i>
+                    <span>树状视图</span>
                 </a>
             </li>
             <li>
-                <a th:href="'/tree_list?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <!--写死的参数,-->
+                <!--<a th:href="'/history/getTrees?case_take_id='+${caseId}-${examId}+'&amp;start='+0+'&amp;count='+10+'&amp;page=null&amp;identity='+0+'&amp;report_id='+5cbc1a9f825a8960cdc7bd4f+'&amp;worker_id='+22383+'">-->
+                <a th:href="'/history/getTrees?case_take_id=1281-2724&amp;start=0&amp;count=10&amp;page=null&amp;identity=0&amp;report_id=5cbc1a9f825a8960cdc7bd4f&amp;worker_id=22383'">
                     <!--<a th:href="'/history/getTrees2?examId='+${caseId}+'">-->
                     <i class="fa fa-sitemap text-warning"></i>
-                    <span>树状视图</span>
+                    <span>原始树状试图</span>
                 </a>
             </li>
         </ul>
@@ -80,9 +81,14 @@
         <div class="assign-div pull-right">
             <button id="export-btn" class="btn btn-sm btn-assign pull-right">
                 <i class="fa fa-coffee" style="margin-right: 3px;"></i>
-                <span>导出报告</span>
+                <span>导出报告(Html)</span>
+            </button>
+        </div>
+        <div class="assign-div pull-right">
+            <button id="export-btn-excel" class="btn btn-sm btn-assign pull-right">
+                <i class="fa fa-coffee" style="margin-right: 3px;"></i>
+                <span>导出报告(Excel)</span>
             </button>
-
         </div>
         <table id="report-list" class="table table-striped table-bordered" cellpadding="0" width="100%">
             <thead>
@@ -214,5 +220,25 @@
                 location.reload()
             });
         });
+
+        $('#export-btn-excel').click(function(){
+            // 修改assign-btn的文字以及让其处于不可用状态
+            // $(this).attr('disabled', true);
+            var urlParams = new URLSearchParams(window.location.search);
+            var examId = urlParams.get('examId');
+            var caseId = urlParams.get('caseId');
+            $.get('/final_report/export_excel', {examId: examId, caseId: caseId}, function (result) {
+                // var url = JSON.parse(result).downloadUrl;
+                console.log(result)
+
+                if(result=='wait'){
+                    alert("报告生成中预计半小时后出结果,请耐心等待")
+                }else{
+                    window.open(result, '_blank');
+                }
+            });
+        });
     });
+
+
 </script>

+ 39 - 23
src/main/resources/templates/single_report.html

@@ -11,36 +11,52 @@
 <th:block layout:fragment="sidebar">
 
     <li>
+        <a th:href="'/task_detail?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-book"></i>
+            <span>
+                任务详情
+            </span>
+        </a>
+    </li>
+    <li>
         <a th:href="'/final_reports?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
             <i class="fa fa-calendar-check-o"></i>
             <span>预交付报告</span>
         </a>
     </li>
-    <li class="treeview">
-        <a href="#">
-            <i class="fa fa-list"></i>
-            <span>Reports</span>
-            <span class="pull-right-container">
-			<i class="fa fa-angle-left pull-right"></i>
-		</span>
+    <li>
+        <a th:href="'/review_report?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-edit"></i>
+            <span>
+                报告审核
+            </span>
         </a>
-        <ul class="treeview-menu" style="display: block;">
-            <li>
-                <a th:href="'/task_detail?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <i class="fa fa-sticky-note text-success"></i>
-                    <span>默认视图</span>
-                </a>
-            </li>
-            <li>
-                <a th:href="'/agg_report_list?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <i class="fa fa-sitemap text-warning"></i>
-                    <span>聚合视图</span>
-                </a>
-            </li>
-
-
-        </ul>
     </li>
+<!--    <li class="treeview">-->
+<!--        <a href="#">-->
+<!--            <i class="fa fa-list"></i>-->
+<!--            <span>Reports</span>-->
+<!--            <span class="pull-right-container">-->
+<!--			<i class="fa fa-angle-left pull-right"></i>-->
+<!--		</span>-->
+<!--        </a>-->
+<!--        <ul class="treeview-menu" style="display: block;">-->
+<!--            <li>-->
+<!--                <a th:href="'/task_detail?examId='+${examId}+'&amp;caseId='+${caseId}">-->
+<!--                    <i class="fa fa-sticky-note text-success"></i>-->
+<!--                    <span>默认视图</span>-->
+<!--                </a>-->
+<!--            </li>-->
+<!--            <li>-->
+<!--                <a th:href="'/agg_report_list?examId='+${examId}+'&amp;caseId='+${caseId}">-->
+<!--                    <i class="fa fa-sitemap text-warning"></i>-->
+<!--                    <span>聚合视图</span>-->
+<!--                </a>-->
+<!--            </li>-->
+
+
+<!--        </ul>-->
+<!--    </li>-->
 </th:block>
 <th:block layout:fragment="maincontent">
 

+ 16 - 0
src/main/resources/templates/task_detail.html

@@ -14,11 +14,27 @@
 <body>
 <th:block layout:fragment="sidebar">
     <li>
+        <a th:href="'/task_detail?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-book"></i>
+            <span>
+                任务详情
+            </span>
+        </a>
+    </li>
+    <li>
         <a th:href="'/final_reports?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
             <i class="fa fa-calendar-check-o"></i>
             <span>预交付报告</span>
         </a>
     </li>
+    <li>
+        <a th:href="'/review_report?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+        <i class="glyphicon glyphicon-edit"></i>
+            <span>
+                报告审核
+            </span>
+        </a>
+    </li>
     <li class="treeview">
         <a href="#">
             <i class="fa fa-list"></i>

+ 8 - 8
src/main/resources/templates/task_list.html

@@ -41,14 +41,14 @@
 
             <!-- Sidebar Menu -->
             <ul class="sidebar-menu tree" data-widget="tree">
-                {% for task in app_list %}
-                <li>
-                    <a href="/task?id={{ task.id }}">
-                        <i class="fa fa-link"></i>
+<!--                {% for task in app_list %}-->
+<!--                <li th:each="task:${tasks}" >-->
 
-                    </a>
-                </li>
-                {% endfor %}
+<!--                    <a th:href="'/task_detail?examId='+${task.examId}+'&amp;caseId='+${task.caseId}" th:text="${task.name}">-->
+<!--                        <i class="fa fa-link"></i>-->
+<!--                    </a>-->
+<!--                </li>-->
+<!--                {% endfor %}-->
             </ul>
         </section>
     </aside>
@@ -97,7 +97,7 @@
                         <!--<td><img th:src="${task.icon}" style="width: 25px; height: 25px;" /></td>-->
                         <td><span  class="label label-info" th:text="${task.examId}"></span></td>
                         <td><span  class="label label-info" th:text="${task.caseId}">题号</span></td>
-                        <td><b><a href="#" id="task-name" th:text="${task.name}">{{ task.name }}</a></b></td>
+                        <td><b><a th:href="'/task_detail?examId=' + ${task.examId} + '&amp;caseId=' + ${task.caseId}" id="task-name" th:text="${task.name}">{{ task.name }}</a></b></td>
                         <!--<td th:text="${task.version}"></td>-->
                         <td th:if="${task.numOfUndeal > 0}"><span  class="label label-info">审核中</span></td>
                         <td th:if="${task.numOfUndeal == 0}"><span  class="label label-success">审核结束</span></td>

+ 19 - 3
src/main/resources/templates/test.html

@@ -13,11 +13,27 @@
 <body>
 <th:block layout:fragment="sidebar">
     <li>
+        <a th:href="'/task_detail?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-book"></i>
+            <span>
+                任务详情
+            </span>
+        </a>
+    </li>
+    <li>
         <a th:href="'/final_reports?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
             <i class="fa fa-calendar-check-o"></i>
             <span>预交付报告</span>
         </a>
     </li>
+    <li>
+        <a th:href="'/review_report?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-edit"></i>
+            <span>
+                报告审核
+            </span>
+        </a>
+    </li>
     <li class="treeview">
         <a href="#">
             <i class="fa fa-list"></i>
@@ -141,8 +157,8 @@
                                 <a th:if="${aggregated}" th:text="|ML-AG-${report.masterId.substring(10)}|" th:href="'/report?masterId='+${report.masterId}+'&amp;examId='+${examId}+'&amp;caseId='+${caseId}"></a>
                             </td>
                             <td>
-                                <span th:if="${report.getTreeId().length()==4}">暂无</span>
-                                <a th:if="${report.getTreeId().length()!=4}" th:text="|ML-TR-${report.treeId.substring(10)}|" th:href="'/history/report?treeId='+${report.treeId}+'&amp;examId='+${examId}+'&amp;caseId='+${caseId}"></a>
+                                <span th:if="(${report.getTreeId()==null}) or ${report.getTreeId().length()==4}">暂无</span>
+                                <a th:if="${report.getTreeId()!=null} and  ${report.getTreeId().length()!=4}" th:text="|ML-TR-${report.treeId.substring(10)}|" th:href="'/history/report?treeId='+${report.treeId}+'&amp;examId='+${examId}+'&amp;caseId='+${caseId}"></a>
                             </td>
                         </tr>
                     </th:block>
@@ -227,7 +243,7 @@
 
                                     <div class="box-header" id="agg-title-{{aggReport.dup_tag}}">
                                         <div style="overflow: auto;">
-                                            <a th:href="@{'/report?masterId=' + ${masterBug.key} + '&amp;examId=' + ${examId} + '&amp;caseId=' + ${caseId}}"
+                                            <a th:href="@{'/history/report?treeId=' + ${masterBug.key} + '&amp;examId=' + ${examId} + '&amp;caseId=' + ${caseId}}"
                                                class="pull-left agg-title" th:text="|ML-TR-${masterBug.key.substring(10)}|" ></a>
                                             <a th:href="'#dup-list-'+${masterBug.key}"
                                                class="glyphicon glyphicon-menu-hamburger pull-right agg-title"

+ 39 - 24
src/main/resources/templates/tree_report_new.html

@@ -9,38 +9,53 @@
 </head>
 <body>
 <th:block layout:fragment="sidebar">
-
+    <li>
+        <a th:href="'/task_detail?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-book"></i>
+            <span>
+                任务详情
+            </span>
+        </a>
+    </li>
     <li>
         <a th:href="'/final_reports?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
             <i class="fa fa-calendar-check-o"></i>
             <span>预交付报告</span>
         </a>
     </li>
-    <li class="treeview">
-        <a href="#">
-            <i class="fa fa-list"></i>
-            <span>Reports</span>
-            <span class="pull-right-container">
-			<i class="fa fa-angle-left pull-right"></i>
-		</span>
+    <li>
+        <a th:href="'/review_report?examId=' + ${examId} + '&amp;caseId=' + ${caseId}">
+            <i class="glyphicon glyphicon-edit"></i>
+            <span>
+                报告审核
+            </span>
         </a>
-        <ul class="treeview-menu" style="display: block;">
-            <li>
-                <a th:href="'/task_detail?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <i class="fa fa-sticky-note text-success"></i>
-                    <span>默认视图</span>
-                </a>
-            </li>
-            <li>
-                <a th:href="'/agg_report_list?examId='+${examId}+'&amp;caseId='+${caseId}">
-                    <i class="fa fa-sitemap text-warning"></i>
-                    <span>聚合视图</span>
-                </a>
-            </li>
-
-
-        </ul>
     </li>
+<!--    <li class="treeview">-->
+<!--        <a href="#">-->
+<!--            <i class="fa fa-list"></i>-->
+<!--            <span>Reports</span>-->
+<!--            <span class="pull-right-container">-->
+<!--			<i class="fa fa-angle-left pull-right"></i>-->
+<!--		</span>-->
+<!--        </a>-->
+<!--        <ul class="treeview-menu" style="display: block;">-->
+<!--            <li>-->
+<!--                <a th:href="'/task_detail?examId='+${examId}+'&amp;caseId='+${caseId}">-->
+<!--                    <i class="fa fa-sticky-note text-success"></i>-->
+<!--                    <span>默认视图</span>-->
+<!--                </a>-->
+<!--            </li>-->
+<!--            <li>-->
+<!--                <a th:href="'/agg_report_list?examId='+${examId}+'&amp;caseId='+${caseId}">-->
+<!--                    <i class="fa fa-sitemap text-warning"></i>-->
+<!--                    <span>聚合视图</span>-->
+<!--                </a>-->
+<!--            </li>-->
+
+
+<!--        </ul>-->
+<!--    </li>-->
 </th:block>
 <th:block layout:fragment="maincontent">