Kaynağa Gözat

实现成绩分布

insomniaLee 5 yıl önce
ebeveyn
işleme
1ae8599acd

+ 2 - 0
src/main/java/com/mooctest/controller/JobController.java

@@ -108,6 +108,8 @@ public class JobController {
         model.addAttribute("paper",paper);
         model.addAttribute("data",res);
         model.addAttribute("reportHost",reportHost);
+        model.addAttribute("userScore",userScores);
+        model.addAttribute("userScoreDistribute",jobService.hanleUserScore(userScores));
 //        model.addAttribute("")
         return "jobDetail";
     }

+ 16 - 1
src/main/java/com/mooctest/service/JobService.java

@@ -167,13 +167,28 @@ public class JobService {
         return  array;
     }
 
+    public int[] hanleUserScore(JSONArray array){
+       int [] res = new int[10];
+       for(int i =0 ;i<array.size();i++){
+           int temp = (int)Double.parseDouble(((JSONObject)array.get(i)).get("score").toString());
+           if(temp>=100){
+               res[9]++;
+           }else if(temp<=0){
+               res[0]++;
+           }else{
+               res[temp/10]++;
+           }
+       }
+       return res;
+    }
+
     private String  findUserNameById(String id){
         RestTemplate rt = new RestTemplate();
         StringHttpMessageConverter stringHttpMessageConverter=new StringHttpMessageConverter(Charset.forName("UTF-8"));
         List<HttpMessageConverter<?>> list=new ArrayList<HttpMessageConverter<?>>();
         list.add(stringHttpMessageConverter);
         rt.setMessageConverters(list);
-        String str = "http://114.55.91.83:8191/api/user/"+id;
+        String str = "http://101.37.175.111:8191/api/user/"+id;
         JSONObject tasksJson = JSON.parseObject(rt.getForObject(str , String.class));
         if(tasksJson == null || tasksJson.get("name")==null) return "No Name";
         return tasksJson.get("name").toString();

+ 1 - 1
src/main/resources/templates/changeReviewJob.html

@@ -219,7 +219,7 @@
 <!--                        </div>-->
                         <!-- text input -->
                         <div class="form-group">
-                            <label class="col-sm-2 control-label">单工作量(分钟)</label>
+                            <label class="col-sm-2 control-label">单任务工作量(分钟)</label>
                             <div class="col-sm-8">
                                 <!--                                xuao xiugai wei maxWorker-->
                                 <input id="singleTime"  th:value="${job.get('single_time')}" onchange="checkNum(event)"  type="text" class="form-control" placeholder="请输入单人工作量"/>

+ 19 - 31
src/main/resources/templates/jobDetail.html

@@ -251,15 +251,15 @@
                                         <div class="box-header">
                                             <h3 class="box-title">具体成绩</h3>
 
-                                            <div class="box-tools">
-                                                <ul class="pagination pagination-sm no-margin pull-right">
-                                                    <li><a href="#">&laquo;</a></li>
-                                                    <li><a href="#">1</a></li>
-                                                    <li><a href="#">2</a></li>
-                                                    <li><a href="#">3</a></li>
-                                                    <li><a href="#">&raquo;</a></li>
-                                                </ul>
-                                            </div>
+<!--                                            <div class="box-tools">-->
+<!--                                                <ul class="pagination pagination-sm no-margin pull-right">-->
+<!--                                                    <li><a href="#">&laquo;</a></li>-->
+<!--                                                    <li><a href="#">1</a></li>-->
+<!--                                                    <li><a href="#">2</a></li>-->
+<!--                                                    <li><a href="#">3</a></li>-->
+<!--                                                    <li><a href="#">&raquo;</a></li>-->
+<!--                                                </ul>-->
+<!--                                            </div>-->
                                         </div>
                                         <!-- /.box-header -->
                                         <div class="box-body no-padding">
@@ -269,26 +269,13 @@
                                                     <th>姓名</th>
                                                     <th >得分</th>
                                                 </tr>
-                                                <tr>
-                                                    <td>1.</td>
-                                                    <td>张三</td>
-                                                    <td><span>55</span></td>
-                                                </tr>
-                                                <tr>
-                                                    <td>2.</td>
-                                                    <td>王翦</td>
-                                                    <td><span>70</span></td>
-                                                </tr>
-                                                <tr>
-                                                    <td>3.</td>
-                                                    <td>乐毅</td>
-                                                    <td><span >30</span></td>
-                                                </tr>
-                                                <tr>
-                                                    <td>4.</td>
-                                                    <td>李牧</td>
-                                                    <td><span >90</span></td>
-                                                </tr>
+                                                <th:block th:each="item,itemStat : ${userScore}">
+                                                    <tr >
+                                                        <td th:text="${itemStat.index+1}"></td>
+                                                        <td th:text="${item.get('name')}">张三</td>
+                                                        <td th:text="${item.get('score')}"><span>55</span></td>
+                                                    </tr>
+                                                </th:block>
                                             </table>
                                         </div>
                                         <!-- /.box-body -->
@@ -409,6 +396,7 @@
     var urlParams = new URLSearchParams(window.location.search);
     var id = [[${data.get('id')}]];
     var reportHost = [[${reportHost}]]
+    var barData = [[${userScoreDistribute}]];
     // ruleId = [[${ruleLength}]]
 
 
@@ -426,7 +414,7 @@
         });
 
         var areaChartData = {
-            labels  : ['0-10', '20-10', '30-29', '23-23', '23-2', '34-53', '80-100'],
+            labels  : ['0-10', '10-20', '20-30', '30-40', '40-50', '50-60', '60-70','70-80','80-90','90-100'],
             datasets: [
                 {
                     label               : 'Digital Goods',
@@ -436,7 +424,7 @@
                     pointStrokeColor    : 'rgba(60,141,188,1)',
                     pointHighlightFill  : '#fff',
                     pointHighlightStroke: 'rgba(60,141,188,1)',
-                    data                : [28, 48, 40, 19, 86, 27, 90]
+                    data                : barData
                 }
             ]
         }