Commit 6f16079f2155ff85fee084333c6d7535fb6f3dfa
1 parent
815bcf48
人员配置接口中间添加有售票员的线路其配驾驶员数、配售票员数、配车辆数
Showing
1 changed file
with
83 additions
and
30 deletions
src/main/java/com/bsth/server_rs/bigdata/BigscreenService.java
| @@ -352,7 +352,7 @@ public class BigscreenService { | @@ -352,7 +352,7 @@ public class BigscreenService { | ||
| 352 | 352 | ||
| 353 | if(gpSet.contains(t.get("lineCode").toString())){ | 353 | if(gpSet.contains(t.get("lineCode").toString())){ |
| 354 | Map<String, Object> gp = new HashMap<String, Object>(); | 354 | Map<String, Object> gp = new HashMap<String, Object>(); |
| 355 | - gp.put("type", "起讫站发车准点详情"); | 355 | + gp.put("type", "挂牌线路发车准点详情"); |
| 356 | gp.put("lineName", t.get("lineName").toString()); | 356 | gp.put("lineName", t.get("lineName").toString()); |
| 357 | gp.put("jh", t.get("jhszfcs").toString()); | 357 | gp.put("jh", t.get("jhszfcs").toString()); |
| 358 | gp.put("sj", t.get("sjszfczds").toString()); | 358 | gp.put("sj", t.get("sjszfczds").toString()); |
| @@ -410,7 +410,6 @@ public class BigscreenService { | @@ -410,7 +410,6 @@ public class BigscreenService { | ||
| 410 | dd1.setTime(dd.getTime() - 1l*1000*60*60*24); | 410 | dd1.setTime(dd.getTime() - 1l*1000*60*60*24); |
| 411 | String date1 = sd.format(dd1); //前一天 | 411 | String date1 = sd.format(dd1); //前一天 |
| 412 | List<ScheduleRealInfo> findAll = scheduleRealInfoRepository.findAll(date1); | 412 | List<ScheduleRealInfo> findAll = scheduleRealInfoRepository.findAll(date1); |
| 413 | - List<ScheduleRealInfo> list_jh = new ArrayList<ScheduleRealInfo>(); | ||
| 414 | List<ScheduleRealInfo> list_sj = new ArrayList<ScheduleRealInfo>(); | 413 | List<ScheduleRealInfo> list_sj = new ArrayList<ScheduleRealInfo>(); |
| 415 | for(ScheduleRealInfo s : findAll){ | 414 | for(ScheduleRealInfo s : findAll){ |
| 416 | if(s.getXlBm() != null && yyLine.contains(s.getXlBm())){//营运线路 | 415 | if(s.getXlBm() != null && yyLine.contains(s.getXlBm())){//营运线路 |
| @@ -424,25 +423,25 @@ public class BigscreenService { | @@ -424,25 +423,25 @@ public class BigscreenService { | ||
| 424 | } | 423 | } |
| 425 | } | 424 | } |
| 426 | } | 425 | } |
| 427 | - double jhyygl = culateJhgl(list_jh);//计划营运公里 | 426 | + double jhyygl = culateJhgl(findAll);//计划营运公里 |
| 428 | double sjgl = culateSjgl(list_sj);//实际公里 | 427 | double sjgl = culateSjgl(list_sj);//实际公里 |
| 429 | double sjljgl = culateLjgl(list_sj);//实际临加公里 | 428 | double sjljgl = culateLjgl(list_sj);//实际临加公里 |
| 430 | double sjyygl = Arith.add(sjgl, sjljgl);//实际营运公里 | 429 | double sjyygl = Arith.add(sjgl, sjljgl);//实际营运公里 |
| 431 | - double lz = culateCJLC(list_jh, "路阻"); | ||
| 432 | - double dm = culateCJLC(list_jh, "吊慢"); | ||
| 433 | - double gz = culateCJLC(list_jh, "故障"); | ||
| 434 | - double jf = culateCJLC(list_jh, "纠纷"); | ||
| 435 | - double zs = culateCJLC(list_jh, "肇事"); | ||
| 436 | - double qr = culateCJLC(list_jh, "缺人"); | ||
| 437 | - double qc = culateCJLC(list_jh, "缺车"); | 430 | + double lz = culateCJLC(list_sj, "路阻"); |
| 431 | + double dm = culateCJLC(list_sj, "吊慢"); | ||
| 432 | + double gz = culateCJLC(list_sj, "故障"); | ||
| 433 | + double jf = culateCJLC(list_sj, "纠纷"); | ||
| 434 | + double zs = culateCJLC(list_sj, "肇事"); | ||
| 435 | + double qr = culateCJLC(list_sj, "缺人"); | ||
| 436 | + double qc = culateCJLC(list_sj, "缺车"); | ||
| 438 | double qrqc = Arith.add(qr, qc);//缺人缺车 | 437 | double qrqc = Arith.add(qr, qc);//缺人缺车 |
| 439 | - double kx = culateCJLC(list_jh, "客稀"); | ||
| 440 | - double qh = culateCJLC(list_jh, "气候"); | ||
| 441 | - double yw = culateCJLC(list_jh, "援外"); | ||
| 442 | - double lb_pc = culateCJLC(list_jh, "配车"); | ||
| 443 | - double lb_by = culateCJLC(list_jh, "保养"); | ||
| 444 | - double lb_cj = culateCJLC(list_jh, "抽减"); | ||
| 445 | - double lb_qt = culateCJLC(list_jh, "其他"); | 438 | + double kx = culateCJLC(list_sj, "客稀"); |
| 439 | + double qh = culateCJLC(list_sj, "气候"); | ||
| 440 | + double yw = culateCJLC(list_sj, "援外"); | ||
| 441 | + double lb_pc = culateCJLC(list_sj, "配车"); | ||
| 442 | + double lb_by = culateCJLC(list_sj, "保养"); | ||
| 443 | + double lb_cj = culateCJLC(list_sj, "抽减"); | ||
| 444 | + double lb_qt = culateCJLC(list_sj, "其他"); | ||
| 446 | double qt = Arith.add(Arith.add(lb_pc, lb_by), Arith.add(lb_cj, lb_qt));//其他 | 445 | double qt = Arith.add(Arith.add(lb_pc, lb_by), Arith.add(lb_cj, lb_qt));//其他 |
| 447 | 446 | ||
| 448 | Map<String, Object> jhyyglMap = new HashMap<String, Object>(); | 447 | Map<String, Object> jhyyglMap = new HashMap<String, Object>(); |
| @@ -548,9 +547,9 @@ public class BigscreenService { | @@ -548,9 +547,9 @@ public class BigscreenService { | ||
| 548 | String lineSql="SELECT b.start_opt,a.company,a.line_code,a.name,a.level," | 547 | String lineSql="SELECT b.start_opt,a.company,a.line_code,a.name,a.level," |
| 549 | + " a.shanghai_linecode, a.nature from " | 548 | + " a.shanghai_linecode, a.nature from " |
| 550 | + " bsth_c_line a left join bsth_c_line_config b " | 549 | + " bsth_c_line a left join bsth_c_line_config b " |
| 551 | - + " on a.id=b.line where " | ||
| 552 | - + " a.shanghai_linecode is not null and a.shanghai_linecode !='' and a.destroy=0 " | ||
| 553 | - + " and a.remove=0 and a.nature in ('yxl','cgxl','gjxl','csbs','cctxl')"; | 550 | + + " on a.id=b.line where a.shanghai_linecode is not null" |
| 551 | + + " and a.shanghai_linecode !='' and a.destroy=0 and a.remove=0" | ||
| 552 | + + " and a.nature in ('yxl','cgxl','gjxl','csbs','cctxl')"; | ||
| 554 | List<Map<String, Object>> lineList=jdbcTemplate.query(lineSql, | 553 | List<Map<String, Object>> lineList=jdbcTemplate.query(lineSql, |
| 555 | new RowMapper<Map<String, Object>>(){ | 554 | new RowMapper<Map<String, Object>>(){ |
| 556 | @Override | 555 | @Override |
| @@ -662,10 +661,10 @@ public class BigscreenService { | @@ -662,10 +661,10 @@ public class BigscreenService { | ||
| 662 | + " where e.is_cancel = 0 group by e.jsy, e.xl ) a" | 661 | + " where e.is_cancel = 0 group by e.jsy, e.xl ) a" |
| 663 | + " left join bsth_c_personnel p on a.jsy = p.id" | 662 | + " left join bsth_c_personnel p on a.jsy = p.id" |
| 664 | + " group by p.company_code"; | 663 | + " group by p.company_code"; |
| 665 | - List<Map<String, Object>> jsyList=jdbcTemplate.query(gpLineSql, | 664 | + List<Map<String, Object>> ecList=jdbcTemplate.query(gpLineSql, |
| 666 | new RowMapper<Map<String, Object>>(){ | 665 | new RowMapper<Map<String, Object>>(){ |
| 667 | @Override | 666 | @Override |
| 668 | - public Map<String, Object> mapRow(ResultSet rs, int rowNum) throws SQLException { | 667 | + public Map<String, Object> mapRow(ResultSet rs, int rowNum) throws SQLException { |
| 669 | Map<String, Object> m=new HashMap<String,Object>(); | 668 | Map<String, Object> m=new HashMap<String,Object>(); |
| 670 | m.put("company", rs.getString("company_code")); | 669 | m.put("company", rs.getString("company_code")); |
| 671 | m.put("jsy", rs.getString("jsy")); | 670 | m.put("jsy", rs.getString("jsy")); |
| @@ -674,24 +673,78 @@ public class BigscreenService { | @@ -674,24 +673,78 @@ public class BigscreenService { | ||
| 674 | } | 673 | } |
| 675 | }); | 674 | }); |
| 676 | 675 | ||
| 677 | - for(Map<String, Object> m : jsyList){ | 676 | + List<Map<String, Object>> jsyList = new ArrayList<Map<String, Object>>(); |
| 677 | + Map<String, Object> ygMap = new HashMap<String, Object>(); | ||
| 678 | + ygMap.put("company", "杨高"); | ||
| 679 | + ygMap.put("jsy", "0"); | ||
| 680 | + ygMap.put("line", "0"); | ||
| 681 | + Map<String, Object> snMap = new HashMap<String, Object>(); | ||
| 682 | + snMap.put("company", "上南"); | ||
| 683 | + snMap.put("jsy", "0"); | ||
| 684 | + snMap.put("line", "0"); | ||
| 685 | + Map<String, Object> jgMap = new HashMap<String, Object>(); | ||
| 686 | + jgMap.put("company", "金高"); | ||
| 687 | + jgMap.put("jsy", "0"); | ||
| 688 | + jgMap.put("line", "0"); | ||
| 689 | + Map<String, Object> nhMap = new HashMap<String, Object>(); | ||
| 690 | + nhMap.put("company", "南汇"); | ||
| 691 | + nhMap.put("jsy", "0"); | ||
| 692 | + nhMap.put("line", "0"); | ||
| 693 | + for(Map<String, Object> m : ecList){ //顺序:杨高,上南,金高,南汇 | ||
| 694 | + if("05".equals(m.get("company").toString())){ | ||
| 695 | +// m.put("company", "杨高"); | ||
| 696 | + ygMap.put("jsy", m.get("jsy").toString()); | ||
| 697 | + ygMap.put("line", m.get("line").toString()); | ||
| 698 | + } | ||
| 678 | if("55".equals(m.get("company").toString())){ | 699 | if("55".equals(m.get("company").toString())){ |
| 679 | - m.put("company", "上南"); | 700 | +// m.put("company", "上南"); |
| 701 | + snMap.put("jsy", m.get("jsy").toString()); | ||
| 702 | + snMap.put("line", m.get("line").toString()); | ||
| 680 | } | 703 | } |
| 681 | if("22".equals(m.get("company").toString())){ | 704 | if("22".equals(m.get("company").toString())){ |
| 682 | - m.put("company", "金高"); | ||
| 683 | - } | ||
| 684 | - if("05".equals(m.get("company").toString())){ | ||
| 685 | - m.put("company", "杨高"); | 705 | +// m.put("company", "金高"); |
| 706 | + jgMap.put("jsy", m.get("jsy").toString()); | ||
| 707 | + jgMap.put("line", m.get("line").toString()); | ||
| 686 | } | 708 | } |
| 687 | if("26".equals(m.get("company").toString())){ | 709 | if("26".equals(m.get("company").toString())){ |
| 688 | - m.put("company", "南汇"); | 710 | +// m.put("company", "南汇"); |
| 711 | + nhMap.put("jsy", m.get("jsy").toString()); | ||
| 712 | + nhMap.put("line", m.get("line").toString()); | ||
| 689 | } | 713 | } |
| 690 | } | 714 | } |
| 715 | + jsyList.add(ygMap); | ||
| 716 | + jsyList.add(snMap); | ||
| 717 | + jsyList.add(jgMap); | ||
| 718 | + jsyList.add(nhMap); | ||
| 719 | + | ||
| 720 | + String xlSql = "select (select name from bsth_c_line l where l.id = t.xl) line_name, a.jsy, b.spy, c.cl" | ||
| 721 | + + " from (select xl from bsth_c_s_ecinfo e where e.spy is not null and e.is_cancel = 0 group by xl) t" | ||
| 722 | + + " left join " | ||
| 723 | + + " (select a.xl, count(1) jsy from (select a.xl, a.jsy from bsth_c_s_ecinfo a where a.is_cancel = 0 and a.jsy is not null group by xl, jsy) a group by xl) a" | ||
| 724 | + + " on t.xl = a.xl" | ||
| 725 | + + " left join" | ||
| 726 | + + " (select b.xl, count(1) spy from (select b.xl, b.spy from bsth_c_s_ecinfo b where b.is_cancel = 0 and b.spy is not null group by xl, spy) b group by xl) b" | ||
| 727 | + + " on t.xl = b.xl" | ||
| 728 | + + " left join" | ||
| 729 | + + " (select c.xl, count(1) cl from (select c.xl, c.cl from bsth_c_s_ccinfo c where c.is_cancel = 0 and c.cl is not null and c.qyrq < now() group by xl, cl) c group by xl) c" | ||
| 730 | + + " on t.xl = c.xl"; | ||
| 731 | + List<Map<String, Object>> xlConfigList=jdbcTemplate.query(xlSql, | ||
| 732 | + new RowMapper<Map<String, Object>>(){ | ||
| 733 | + @Override | ||
| 734 | + public Map<String, Object> mapRow(ResultSet rs, int rowNum) throws SQLException { | ||
| 735 | + Map<String, Object> m=new HashMap<String,Object>(); | ||
| 736 | + m.put("lineName", rs.getString("line_name")); | ||
| 737 | + m.put("jsy", rs.getString("jsy")); | ||
| 738 | + m.put("spy", rs.getString("spy")); | ||
| 739 | + m.put("cl", rs.getString("cl")); | ||
| 740 | + return m; | ||
| 741 | + } | ||
| 742 | + }); | ||
| 691 | 743 | ||
| 692 | resMap.put("jsyList", jsyList); | 744 | resMap.put("jsyList", jsyList); |
| 693 | resMap.put("attList", attList); | 745 | resMap.put("attList", attList); |
| 694 | resMap.put("lackList", lackList); | 746 | resMap.put("lackList", lackList); |
| 747 | + resMap.put("configList", xlConfigList); | ||
| 695 | 748 | ||
| 696 | return JSON.parseObject(JSON.toJSONString(resMap)); | 749 | return JSON.parseObject(JSON.toJSONString(resMap)); |
| 697 | } | 750 | } |
| @@ -703,7 +756,7 @@ public class BigscreenService { | @@ -703,7 +756,7 @@ public class BigscreenService { | ||
| 703 | Map<String, Object> tempMap = new HashMap<String, Object>(); | 756 | Map<String, Object> tempMap = new HashMap<String, Object>(); |
| 704 | tempMap.put("type", type); | 757 | tempMap.put("type", type); |
| 705 | String[] split = dates[i].split("-"); | 758 | String[] split = dates[i].split("-"); |
| 706 | - tempMap.put("type", split[1] + "/" + split[2]); | 759 | + tempMap.put("date", split[1] + "/" + split[2]); |
| 707 | tempMap.put("jh", "0"); | 760 | tempMap.put("jh", "0"); |
| 708 | tempMap.put("sj", "0"); | 761 | tempMap.put("sj", "0"); |
| 709 | mapList.add(tempMap); | 762 | mapList.add(tempMap); |