Commit 3c1097064efac4a2d3bdf096b71b953af39fd7bb
1 parent
0e2c3762
行车时刻统计 停站时间区分上下行
Showing
2 changed files
with
36 additions
and
27 deletions
src/main/java/com/bsth/service/report/impl/ReportServiceImpl.java
| ... | ... | @@ -720,36 +720,40 @@ public class ReportServiceImpl implements ReportService{ |
| 720 | 720 | Map<String, Object> tempMap = new HashMap<String, Object>(); |
| 721 | 721 | List<Map<String, Object>> list2 = keyMap.get(key); |
| 722 | 722 | List<Integer> cjs = new ArrayList<Integer>(); |
| 723 | - int sxsj = 0, xxsj = 0, zcj = 0, tssj = 0; | |
| 724 | - int sxbc = 0, xxbc = 0; | |
| 725 | - int temp = 24*60+1; | |
| 723 | + int sxsj = 0, xxsj = 0, sxtssj = 0, xxtssj = 0; | |
| 724 | + int sxbc = 0, xxbc = 0, sxtsbc = 0, xxtsbc = 0; | |
| 725 | + int temp = 24*60+1, zcj = 0; | |
| 726 | 726 | boolean ists = false; |
| 727 | 727 | for(Map<String, Object> m : list2){ |
| 728 | 728 | String[] split = m.get("fcsj").toString().split(":"); |
| 729 | 729 | int fcsj = Integer.valueOf(split[0])*60 + Integer.valueOf(split[1]); |
| 730 | 730 | int xlDir = Integer.valueOf(m.get("dir").toString()); |
| 731 | 731 | int bcsj = Integer.valueOf(m.get("bcsj").toString()); |
| 732 | + if(temp >= fcsj){ | |
| 733 | + temp = fcsj; | |
| 734 | + ists = false; | |
| 735 | + } | |
| 732 | 736 | if(xlDir == 0){ |
| 733 | 737 | sxsj += bcsj; |
| 734 | 738 | sxbc ++; |
| 739 | + if(ists){ | |
| 740 | + sxtssj += fcsj - temp; | |
| 741 | + sxtsbc++; | |
| 742 | + } | |
| 735 | 743 | } else { |
| 736 | 744 | xxsj += bcsj; |
| 737 | 745 | xxbc ++; |
| 738 | - } | |
| 739 | - if(temp >= fcsj){ | |
| 740 | - temp = fcsj; | |
| 741 | - ists = false; | |
| 742 | - } else { | |
| 743 | 746 | if(ists){ |
| 744 | - tssj += fcsj - temp; | |
| 745 | - ists = false; | |
| 746 | - } else { | |
| 747 | - cjs.add(fcsj - temp); | |
| 747 | + xxtssj += fcsj - temp; | |
| 748 | + xxtsbc++; | |
| 748 | 749 | } |
| 750 | + } | |
| 751 | + if(temp < fcsj){ | |
| 752 | + cjs.add(fcsj - temp); | |
| 749 | 753 | temp = fcsj; |
| 750 | - if(m.get("ists").equals("1")){ | |
| 751 | - ists = true; | |
| 752 | - } | |
| 754 | + } | |
| 755 | + if(m.get("ists").toString().trim().equals("1")){ | |
| 756 | + ists = true; | |
| 753 | 757 | } |
| 754 | 758 | } |
| 755 | 759 | Collections.sort(cjs); |
| ... | ... | @@ -757,12 +761,14 @@ public class ReportServiceImpl implements ReportService{ |
| 757 | 761 | zcj += i; |
| 758 | 762 | } |
| 759 | 763 | tempMap.put("sjd", key); |
| 760 | - tempMap.put("sxsj", sxsj / sxbc); | |
| 761 | - tempMap.put("xxsj", xxsj / xxbc); | |
| 762 | - tempMap.put("fqsj", (sxsj + xxsj) / list2.size()); | |
| 764 | + tempMap.put("sxsj", sxbc != 0 ? sxsj / sxbc : "0"); | |
| 765 | + tempMap.put("xxsj", xxbc != 0 ? xxsj / xxbc : "0"); | |
| 766 | + tempMap.put("sxtssj", sxtsbc != 0 ? sxtssj / sxtsbc : "0"); | |
| 767 | + tempMap.put("xxtssj", xxtsbc != 0 ? xxtssj / xxtsbc : "0"); | |
| 768 | + tempMap.put("fqsj", Integer.valueOf(tempMap.get("sxsj").toString()) + Integer.valueOf(tempMap.get("xxsj").toString()) | |
| 769 | + + Integer.valueOf(tempMap.get("sxtssj").toString()) + Integer.valueOf(tempMap.get("xxtssj").toString())); | |
| 763 | 770 | tempMap.put("cjqj", cjs.size()>0?cjs.get(0)+"——"+cjs.get(cjs.size()-1):"——"); |
| 764 | 771 | tempMap.put("pjcj", cjs.size()>0?zcj/cjs.size():"/"); |
| 765 | - tempMap.put("tssj", tssj); | |
| 766 | 772 | maps.put(key, tempMap); |
| 767 | 773 | } |
| 768 | 774 | newList.add(maps.get("(首)——6:30")); | ... | ... |
src/main/resources/static/pages/report/timetable/timetable.html
| ... | ... | @@ -165,19 +165,21 @@ |
| 165 | 165 | <div class="col-md-6" > |
| 166 | 166 | <table class="table table-bordered table-checkable" id="formsTime5"> |
| 167 | 167 | <tr> |
| 168 | - <td colspan="7">全日分组行驶时间(区间除外)</td> | |
| 168 | + <td colspan="8">全日分组行驶时间(区间除外)</td> | |
| 169 | 169 | </tr> |
| 170 | 170 | <tr> |
| 171 | 171 | <td width="20%" rowspan="2" style="text-align:center;vertical-align:middle;">分组 时间</td> |
| 172 | - <td width="23%" colspan="2" style="text-align:center;vertical-align:middle;">计划行驶(分)</td> | |
| 173 | - <td width="15%" rowspan="2" style="text-align:center;vertical-align:middle;">分圈时间</td> | |
| 174 | - <td width="15%" rowspan="2" style="text-align:center;vertical-align:middle;">停驶时间</td> | |
| 175 | - <td width="15%" rowspan="2" style="text-align:center;vertical-align:middle;">车距区间</td> | |
| 176 | - <td width="12%" rowspan="2" style="text-align:center;vertical-align:middle;">平均车距</td> | |
| 172 | + <td width="19%" colspan="2" style="text-align:center;vertical-align:middle;">计划行驶(分)</td> | |
| 173 | + <td width="19%" colspan="2" style="text-align:center;vertical-align:middle;">停站时间</td> | |
| 174 | + <td width="14%" rowspan="2" style="text-align:center;vertical-align:middle;">周转时间</td> | |
| 175 | + <td width="14%" rowspan="2" style="text-align:center;vertical-align:middle;">车距区间</td> | |
| 176 | + <td width="14%" rowspan="2" style="text-align:center;vertical-align:middle;">平均车距</td> | |
| 177 | 177 | </tr> |
| 178 | 178 | <tr> |
| 179 | 179 | <td>上行</td> |
| 180 | 180 | <td style="text-align:center;">下行</td> |
| 181 | + <td>上行</td> | |
| 182 | + <td style="text-align:center;">下行</td> | |
| 181 | 183 | </tr> |
| 182 | 184 | <tbody class="tbody_time_5"> |
| 183 | 185 | |
| ... | ... | @@ -405,15 +407,16 @@ |
| 405 | 407 | <td align="center">{{result.sjd}}</td> |
| 406 | 408 | <td align="center">{{result.sxsj}}</td> |
| 407 | 409 | <td align="center">{{result.xxsj}}</td> |
| 410 | + <td align="center">{{result.sxtssj}}</td> | |
| 411 | + <td align="center">{{result.xxtssj}}</td> | |
| 408 | 412 | <td align="center">{{result.fqsj}}</td> |
| 409 | - <td align="center">{{result.tssj}}</td> | |
| 410 | 413 | <td align="center">{{result.cjqj}}</td> |
| 411 | 414 | <td align="center">{{result.pjcj}}</td> |
| 412 | 415 | </tr> |
| 413 | 416 | {{/each}} |
| 414 | 417 | {{if list.length == 0}} |
| 415 | 418 | <tr> |
| 416 | - <td colspan="7"><h6 class="muted">没有找到相关数据</h6></td> | |
| 419 | + <td colspan="8"><h6 class="muted">没有找到相关数据</h6></td> | |
| 417 | 420 | </tr> |
| 418 | 421 | {{/if}} |
| 419 | 422 | </script> | ... | ... |