Commit 81229745b7208774580a2b2c33edc8b24c216b94
1 parent
9c7c388f
按日期查询指标接口添加签卡率
Showing
1 changed file
with
33 additions
and
1 deletions
src/main/java/com/bsth/server_rs/bigdata/BigscreenService.java
| @@ -1150,11 +1150,12 @@ public class BigscreenService { | @@ -1150,11 +1150,12 @@ public class BigscreenService { | ||
| 1150 | List<Map<String, Object>> smDetail = new ArrayList<Map<String,Object>>(); | 1150 | List<Map<String, Object>> smDetail = new ArrayList<Map<String,Object>>(); |
| 1151 | List<Map<String, Object>> qqDetail = new ArrayList<Map<String,Object>>(); | 1151 | List<Map<String, Object>> qqDetail = new ArrayList<Map<String,Object>>(); |
| 1152 | List<Map<String, Object>> gpDetail = new ArrayList<Map<String,Object>>(); | 1152 | List<Map<String, Object>> gpDetail = new ArrayList<Map<String,Object>>(); |
| 1153 | + List<Map<String, Object>> qkDetail = new ArrayList<Map<String,Object>>(); | ||
| 1153 | 1154 | ||
| 1154 | long sjbcs_z = 0l;//实时总班次 | 1155 | long sjbcs_z = 0l;//实时总班次 |
| 1155 | BigDecimal yygl_z = new BigDecimal(0);//实时总营运里程 | 1156 | BigDecimal yygl_z = new BigDecimal(0);//实时总营运里程 |
| 1156 | long jhcc = 0, sjcc = 0, jhbc = 0, sjbc = 0, jhsmbc = 0, sjsmbc = 0, | 1157 | long jhcc = 0, sjcc = 0, jhbc = 0, sjbc = 0, jhsmbc = 0, sjsmbc = 0, |
| 1157 | - jhqqbc = 0, sjqqzd = 0, jhgpqqbc = 0, sjgpqqzd = 0; | 1158 | + jhqqbc = 0, sjqqzd = 0, jhgpqqbc = 0, sjgpqqzd = 0, bcs_qk = 0, qks = 0; |
| 1158 | 1159 | ||
| 1159 | for(Map<String, Object> t : list){ | 1160 | for(Map<String, Object> t : list){ |
| 1160 | if(yyLine.contains(t.get("lineCode").toString())){ | 1161 | if(yyLine.contains(t.get("lineCode").toString())){ |
| @@ -1213,12 +1214,41 @@ public class BigscreenService { | @@ -1213,12 +1214,41 @@ public class BigscreenService { | ||
| 1213 | } | 1214 | } |
| 1214 | } | 1215 | } |
| 1215 | 1216 | ||
| 1217 | + Map<String, Map<String, Object>> keyMap = new HashMap<String, Map<String, Object>>(); | ||
| 1218 | + List<ScheduleRealInfo> findAll = scheduleRealInfoRepository.findAll(date); | ||
| 1219 | + for(ScheduleRealInfo s : findAll){ | ||
| 1220 | + if(s.getXlBm() != null && yyLine.contains(s.getXlBm())){//营运线路 | ||
| 1221 | + if(!isInOut(s) && !s.isCcService() && s.getStatus() != -1 && s.getStatus() != 0){ | ||
| 1222 | + String xlName = s.getXlName(); | ||
| 1223 | + if(!(keyMap.containsKey(xlName))){ | ||
| 1224 | + Map<String, Object> qk = new HashMap<String, Object>(); | ||
| 1225 | + qk.put("type", "线路签卡详情"); | ||
| 1226 | + qk.put("lineName", xlName); | ||
| 1227 | + qk.put("jh", 0); | ||
| 1228 | + qk.put("sj", 0); | ||
| 1229 | + keyMap.put(xlName, qk); | ||
| 1230 | + qkDetail.add(qk); | ||
| 1231 | + } | ||
| 1232 | + Map<String, Object> qk = keyMap.get(xlName); | ||
| 1233 | + qk.put("jh", Long.valueOf(qk.get("jh").toString()) + 1); | ||
| 1234 | + ++bcs_qk; | ||
| 1235 | + String sty = decimalToBinary(s.getRfidState()); | ||
| 1236 | + Integer state = Integer.parseInt(sty); | ||
| 1237 | + if ((state & 4) == 4) { | ||
| 1238 | + qk.put("sj", Long.valueOf(qk.get("sj").toString()) + 1); | ||
| 1239 | + ++qks; | ||
| 1240 | + } | ||
| 1241 | + } | ||
| 1242 | + } | ||
| 1243 | + } | ||
| 1244 | + | ||
| 1216 | List<Map<String, Object>> detailsList = new ArrayList<Map<String, Object>>(); | 1245 | List<Map<String, Object>> detailsList = new ArrayList<Map<String, Object>>(); |
| 1217 | detailsList.addAll(ccDetail); | 1246 | detailsList.addAll(ccDetail); |
| 1218 | detailsList.addAll(bcDetail); | 1247 | detailsList.addAll(bcDetail); |
| 1219 | detailsList.addAll(smDetail); | 1248 | detailsList.addAll(smDetail); |
| 1220 | detailsList.addAll(qqDetail); | 1249 | detailsList.addAll(qqDetail); |
| 1221 | detailsList.addAll(gpDetail); | 1250 | detailsList.addAll(gpDetail); |
| 1251 | + detailsList.addAll(qkDetail); | ||
| 1222 | 1252 | ||
| 1223 | resMap.put("ccl", jhcc>0?new BigDecimal(sjcc).divide(new BigDecimal(jhcc), | 1253 | resMap.put("ccl", jhcc>0?new BigDecimal(sjcc).divide(new BigDecimal(jhcc), |
| 1224 | 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); | 1254 | 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); |
| @@ -1230,6 +1260,8 @@ public class BigscreenService { | @@ -1230,6 +1260,8 @@ public class BigscreenService { | ||
| 1230 | 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); | 1260 | 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); |
| 1231 | resMap.put("gpzdl", jhgpqqbc>0?new BigDecimal(sjgpqqzd).divide(new BigDecimal(jhgpqqbc), | 1261 | resMap.put("gpzdl", jhgpqqbc>0?new BigDecimal(sjgpqqzd).divide(new BigDecimal(jhgpqqbc), |
| 1232 | 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); | 1262 | 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); |
| 1263 | + resMap.put("qkl", bcs_qk>0?new BigDecimal(qks).divide(new BigDecimal(bcs_qk), | ||
| 1264 | + 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).doubleValue():"0"); | ||
| 1233 | 1265 | ||
| 1234 | resMap.put("detailsList", detailsList); | 1266 | resMap.put("detailsList", detailsList); |
| 1235 | 1267 |