Commit bb808a9d20c678f8bfad2f6e6eb145450032c1c0

Authored by BSTH
1 parent dc93313d

查询昨天数据信息

src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
... ... @@ -74,4 +74,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI
74 74  
75 75 @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2")
76 76 List<ScheduleRealInfo> scheduleByDateAndLine(String line,String date);
  77 +
  78 + @Query(value="select new map(s.scheduleDate as scheduleDate,s.xlBm as xlBm,s.clZbh as clZbh,s.jGh as jGh) from ScheduleRealInfo s where (s.xlBm = ?1 or s.xlBm is not null) and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 GROUP BY xlBm,clZbh,jGh ORDER BY xlBm,clZbh,realExecDate,fcsjActual")
  79 + List<Map<String,Object>> yesterdayDataList(String line,String date);
77 80 }
... ...
src/main/java/com/bsth/service/realcontrol/ScheduleRealInfoService.java
... ... @@ -110,4 +110,6 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L
110 110 Map<String,Object> scheduleDaily(String line,String date);
111 111  
112 112 List<ScheduleRealInfo> realScheduleList(String line,String date);
  113 +
  114 + List<Map<String,Object>> yesterdayDataList(String line);
113 115 }
... ...
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
... ... @@ -1421,4 +1421,52 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1421 1421  
1422 1422 return rs;
1423 1423 }
  1424 +
  1425 + public List<Map<String,Object>> yesterdayDataList(String line) {
  1426 + //前一天日期
  1427 + String date = sdfMonth.format(org.apache.commons.lang.time.DateUtils.addDays(new Date(), -1));
  1428 + List<Map<String,Object>> yesterdayDataList = scheduleRealInfoRepository.yesterdayDataList(line, date);
  1429 + List<ScheduleRealInfo> list = scheduleRealInfoRepository.scheduleByDateAndLine(line, date);
  1430 + for(ScheduleRealInfo scheduleRealInfo:list){
  1431 + if(scheduleRealInfo != null){
  1432 + for(int i=0;i<yesterdayDataList.size();i++){
  1433 + if(scheduleRealInfo.getXlBm().equals(yesterdayDataList.get(i).get("xlBm")) && scheduleRealInfo.getClZbh().equals(yesterdayDataList.get(i).get("clZbh"))
  1434 + && scheduleRealInfo.getjGh().equals(yesterdayDataList.get(i).get("jGh"))){
  1435 + //根据线路代码获取公司
  1436 + Line li = lineRepository.findByLineCode(line);
  1437 + yesterdayDataList.get(i).put("company", li.getCompany());
  1438 + //计算总公里
  1439 + Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks();
  1440 + //如果没有子任务,里程就是已执行(Status=2);有子任务的,忽略主任务,子任务的烂班
  1441 + if(childTaskPlans.isEmpty()){
  1442 + if(scheduleRealInfo.getStatus() == 2){
  1443 + yesterdayDataList.get(i).put("totalKilometers", scheduleRealInfo.getJhlc()==null?0.0:scheduleRealInfo.getJhlc()+(double)(yesterdayDataList.get(i).get("totalKilometers")==null?0.0:yesterdayDataList.get(i).get("totalKilometers")));
  1444 + }
  1445 + }else{
  1446 + Iterator<ChildTaskPlan> it = childTaskPlans.iterator();
  1447 + while(it.hasNext()){
  1448 + ChildTaskPlan childTaskPlan = it.next();
  1449 + if(!childTaskPlan.isDestroy()){
  1450 + yesterdayDataList.get(i).put("totalKilometers", childTaskPlan.getMileage()==null?0.0:childTaskPlan.getMileage()+(double)(yesterdayDataList.get(i).get("totalKilometers")==null?0.0:yesterdayDataList.get(i).get("totalKilometers")));
  1451 + }
  1452 + }
  1453 + }
  1454 + }
  1455 + }
  1456 + }
  1457 + }
  1458 + //增加顺序号
  1459 + for(int i=0;i<yesterdayDataList.size();i++){
  1460 + if(i == 0){
  1461 + yesterdayDataList.get(i).put("seqNumber", 1);
  1462 + }else{
  1463 + if(yesterdayDataList.get(i-1).get("clZbh").equals(yesterdayDataList.get(i).get("clZbh"))){
  1464 + yesterdayDataList.get(i).put("seqNumber", 1+(int)yesterdayDataList.get(i-1).get("seqNumber"));
  1465 + }else{
  1466 + yesterdayDataList.get(i).put("seqNumber", 1);
  1467 + }
  1468 + }
  1469 + }
  1470 + return yesterdayDataList;
  1471 + }
1424 1472 }
... ...