Commit c3956eea872c411f65dd093c8208926215e94e1f
1 parent
999dd10f
出车早未到接口,(仅临港)除了每车首班缺人班次外,也要统计中途进出场后开始营运的首班班次。
Showing
2 changed files
with
22 additions
and
8 deletions
src/main/java/com/bsth/repository/ScheduleRealInfoRepository.java
| @@ -22,6 +22,15 @@ public interface ScheduleRealInfoRepository extends PagingAndSortingRepository<S | @@ -22,6 +22,15 @@ public interface ScheduleRealInfoRepository extends PagingAndSortingRepository<S | ||
| 22 | List<ScheduleRealInfo> findAll(String schDate); | 22 | List<ScheduleRealInfo> findAll(String schDate); |
| 23 | 23 | ||
| 24 | /** | 24 | /** |
| 25 | + * 根据日期获取班次信息(排序) | ||
| 26 | + * @param schDate | ||
| 27 | + * @return | ||
| 28 | + */ | ||
| 29 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) | ||
| 30 | + @Query("select DISTINCT s from ScheduleRealInfo s where s.scheduleDateStr=?1 order by scheduleDateStr, xlBm, clZbh, realExecDate, fcsj") | ||
| 31 | + List<ScheduleRealInfo> findAllByOrder(String schDate); | ||
| 32 | + | ||
| 33 | + /** | ||
| 25 | * 根据日期和线路编码获取班次信息 | 34 | * 根据日期和线路编码获取班次信息 |
| 26 | * @param schDate | 35 | * @param schDate |
| 27 | * @param lineCode | 36 | * @param lineCode |
src/main/java/com/bsth/server_rs/bigdata/BigscreenService.java
| @@ -2892,11 +2892,8 @@ public class BigscreenService { | @@ -2892,11 +2892,8 @@ public class BigscreenService { | ||
| 2892 | for(Map<String, Object> map : minfcsjList){ | 2892 | for(Map<String, Object> map : minfcsjList){ |
| 2893 | minfcsjMap.put(map.get("line").toString(), map.get("minfcsj").toString()); | 2893 | minfcsjMap.put(map.get("line").toString(), map.get("minfcsj").toString()); |
| 2894 | } | 2894 | } |
| 2895 | - | ||
| 2896 | - SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); | ||
| 2897 | - String format = sdf.format(new Date()); | ||
| 2898 | 2895 | ||
| 2899 | - List<ScheduleRealInfo> findAll = scheduleRealInfoRepository.findAll(date); | 2896 | + List<ScheduleRealInfo> findAll = scheduleRealInfoRepository.findAllByOrder(date); |
| 2900 | List<ScheduleRealInfo> list_s = new ArrayList<ScheduleRealInfo>(); | 2897 | List<ScheduleRealInfo> list_s = new ArrayList<ScheduleRealInfo>(); |
| 2901 | Map<String, ScheduleRealInfo> scheduleMap = new HashMap<String, ScheduleRealInfo>(); | 2898 | Map<String, ScheduleRealInfo> scheduleMap = new HashMap<String, ScheduleRealInfo>(); |
| 2902 | for(ScheduleRealInfo s : findAll){ | 2899 | for(ScheduleRealInfo s : findAll){ |
| @@ -2938,9 +2935,7 @@ public class BigscreenService { | @@ -2938,9 +2935,7 @@ public class BigscreenService { | ||
| 2938 | List<ScheduleRealInfo> notYetList = new ArrayList<ScheduleRealInfo>(); | 2935 | List<ScheduleRealInfo> notYetList = new ArrayList<ScheduleRealInfo>(); |
| 2939 | 2936 | ||
| 2940 | long sum = scheduleMap.keySet().size(), zwd = 0;//早未到数 | 2937 | long sum = scheduleMap.keySet().size(), zwd = 0;//早未到数 |
| 2941 | -// long yg_z = 0, sn_z = 0, jg_z = 0, nh_z = 0; | ||
| 2942 | long cd_1 = 0, cd_2 = 0, cd_3 = 0, cd_5 = 0, cd_6 = 0; | 2938 | long cd_1 = 0, cd_2 = 0, cd_3 = 0, cd_5 = 0, cd_6 = 0; |
| 2943 | -// long yg_zwd = 0, sn_zwd = 0, jg_zwd = 0, nh_zwd = 0; | ||
| 2944 | long cd_1_zwd = 0, cd_2_zwd = 0, cd_3_zwd = 0, cd_5_zwd = 0, cd_6_zwd = 0; | 2939 | long cd_1_zwd = 0, cd_2_zwd = 0, cd_3_zwd = 0, cd_5_zwd = 0, cd_6_zwd = 0; |
| 2945 | for(String key : scheduleMap.keySet()){ | 2940 | for(String key : scheduleMap.keySet()){ |
| 2946 | ScheduleRealInfo s = scheduleMap.get(key); | 2941 | ScheduleRealInfo s = scheduleMap.get(key); |
| @@ -2956,7 +2951,16 @@ public class BigscreenService { | @@ -2956,7 +2951,16 @@ public class BigscreenService { | ||
| 2956 | } else if("6".equals(s.getFgsBm())){ | 2951 | } else if("6".equals(s.getFgsBm())){ |
| 2957 | cd_6 += 1; | 2952 | cd_6 += 1; |
| 2958 | } | 2953 | } |
| 2959 | - if("缺人".equals(s.getAdjustExps())){ | 2954 | + } |
| 2955 | + } | ||
| 2956 | + | ||
| 2957 | + int b = 1; | ||
| 2958 | + for(ScheduleRealInfo s : list_s){ | ||
| 2959 | + if("out".equals(s.getBcType())){ | ||
| 2960 | + b = 1; //有出场,下一个班次则是出场第一班 | ||
| 2961 | + } | ||
| 2962 | + if(b == 1 && ("normal".equals(s.getBcType()))){ | ||
| 2963 | + if("缺人".equals(s.getAdjustExps()) || "缺车".equals(s.getAdjustExps())){ | ||
| 2960 | List<ScheduleRealInfo> list = new ArrayList<ScheduleRealInfo>(); | 2964 | List<ScheduleRealInfo> list = new ArrayList<ScheduleRealInfo>(); |
| 2961 | list.add(s); | 2965 | list.add(s); |
| 2962 | BigDecimal sjgl = new BigDecimal(culateSjgl(list)); | 2966 | BigDecimal sjgl = new BigDecimal(culateSjgl(list)); |
| @@ -2978,7 +2982,8 @@ public class BigscreenService { | @@ -2978,7 +2982,8 @@ public class BigscreenService { | ||
| 2978 | notYetList.add(s); | 2982 | notYetList.add(s); |
| 2979 | } | 2983 | } |
| 2980 | } | 2984 | } |
| 2981 | - } | 2985 | + b = 0; |
| 2986 | + } | ||
| 2982 | } | 2987 | } |
| 2983 | 2988 | ||
| 2984 | resMap.put("sum", sum); | 2989 | resMap.put("sum", sum); |