Commit 9024e8aca70caf66432b4484d86be27b0d0025c4
Merge branch 'minhang' of http://222.66.0.204:8090/panzhaov5/bsth_control into minhang
Showing
13 changed files
with
596 additions
and
151 deletions
Too many changes to show.
To preserve performance only 13 of 26 files are displayed.
src/main/java/com/bsth/controller/forms/ExportController.java
| ... | ... | @@ -190,9 +190,6 @@ public class ExportController { |
| 190 | 190 | m.put("clzbh", l.getClzbh()); |
| 191 | 191 | m.put("jsy", l.getJsy()); |
| 192 | 192 | m.put("jName", l.getjName()); |
| 193 | - | |
| 194 | - | |
| 195 | - | |
| 196 | 193 | m.put("sgh", l.getSgh()); |
| 197 | 194 | m.put("sName", l.getsName()); |
| 198 | 195 | m.put("jhlc", l.getJhlc()); | ... | ... |
src/main/java/com/bsth/controller/forms/MCY_FormsController.java
| ... | ... | @@ -78,6 +78,13 @@ public class MCY_FormsController { |
| 78 | 78 | |
| 79 | 79 | return formsService.singledata(map); |
| 80 | 80 | } |
| 81 | + | |
| 82 | + // 路单数据 | |
| 83 | + @RequestMapping(value = "/singledatanew", method = RequestMethod.GET) | |
| 84 | + public List<Singledata> singledatanew(@RequestParam Map<String, Object> map) { | |
| 85 | + | |
| 86 | + return formsService.singledata(map); | |
| 87 | + } | |
| 81 | 88 | |
| 82 | 89 | // 车辆加注 |
| 83 | 90 | @RequestMapping(value = "/vehicleloading", method = RequestMethod.GET) | ... | ... |
src/main/java/com/bsth/controller/oil/YlxxbController.java
| 1 | 1 | package com.bsth.controller.oil; |
| 2 | 2 | |
| 3 | 3 | import java.util.HashMap; |
| 4 | +import java.util.List; | |
| 4 | 5 | import java.util.Map; |
| 5 | 6 | |
| 6 | 7 | import org.springframework.beans.factory.annotation.Autowired; |
| ... | ... | @@ -28,6 +29,12 @@ public class YlxxbController extends BaseController<Ylxxb, Integer>{ |
| 28 | 29 | return pagequery; |
| 29 | 30 | } |
| 30 | 31 | |
| 32 | + @RequestMapping(value = "/listNbbm",method = RequestMethod.GET) | |
| 33 | + public List<Ylxxb> listNbbm(@RequestParam Map<String, Object> map){ | |
| 34 | + List<Ylxxb> list=service.Pagequery_nbbm(map); | |
| 35 | + return list; | |
| 36 | + } | |
| 37 | + | |
| 31 | 38 | |
| 32 | 39 | /** |
| 33 | 40 | * 核对油量(有加油没里程) |
| ... | ... | @@ -45,4 +52,17 @@ public class YlxxbController extends BaseController<Ylxxb, Integer>{ |
| 45 | 52 | } |
| 46 | 53 | return list; |
| 47 | 54 | } |
| 55 | + | |
| 56 | + @RequestMapping(value = "/checkNbbm",method = RequestMethod.POST) | |
| 57 | + public Map<String, Object> checkNbbm(@RequestParam Map<String, Object> map){ | |
| 58 | + Map<String, Object> list=new HashMap<>(); | |
| 59 | + try { | |
| 60 | + list = service.checkNbbm(map); | |
| 61 | + } catch (Exception e) { | |
| 62 | + // TODO Auto-generated catch block | |
| 63 | + e.printStackTrace(); | |
| 64 | + } | |
| 65 | + return list; | |
| 66 | + } | |
| 67 | + | |
| 48 | 68 | } | ... | ... |
src/main/java/com/bsth/data/gpsdata/arrival/entity/TimedEnableStationRoute.java
| 1 | -package com.bsth.data.gpsdata.arrival.entity; | |
| 2 | - | |
| 3 | -/** | |
| 4 | - * 定时启用站点路由 | |
| 5 | - * Created by panzhao on 2017/8/28. | |
| 6 | - */ | |
| 7 | -public class TimedEnableStationRoute { | |
| 8 | - | |
| 9 | - private String lineCode; | |
| 10 | - | |
| 11 | - private Long enableTime; | |
| 12 | - | |
| 13 | - public String getLineCode() { | |
| 14 | - return lineCode; | |
| 15 | - } | |
| 16 | - | |
| 17 | - public void setLineCode(String lineCode) { | |
| 18 | - this.lineCode = lineCode; | |
| 19 | - } | |
| 20 | - | |
| 21 | - public Long getEnableTime() { | |
| 22 | - return enableTime; | |
| 23 | - } | |
| 24 | - | |
| 25 | - public void setEnableTime(Long enableTime) { | |
| 26 | - this.enableTime = enableTime; | |
| 27 | - } | |
| 28 | -} | |
| 1 | +package com.bsth.data.gpsdata.arrival.entity; | |
| 2 | + | |
| 3 | +/** | |
| 4 | + * 定时启用站点路由 | |
| 5 | + * Created by panzhao on 2017/8/28. | |
| 6 | + */ | |
| 7 | +public class TimedEnableStationRoute { | |
| 8 | + | |
| 9 | + private String lineCode; | |
| 10 | + | |
| 11 | + private Long enableTime; | |
| 12 | + | |
| 13 | + public String getLineCode() { | |
| 14 | + return lineCode; | |
| 15 | + } | |
| 16 | + | |
| 17 | + public void setLineCode(String lineCode) { | |
| 18 | + this.lineCode = lineCode; | |
| 19 | + } | |
| 20 | + | |
| 21 | + public Long getEnableTime() { | |
| 22 | + return enableTime; | |
| 23 | + } | |
| 24 | + | |
| 25 | + public void setEnableTime(Long enableTime) { | |
| 26 | + this.enableTime = enableTime; | |
| 27 | + } | |
| 28 | +} | ... | ... |
src/main/java/com/bsth/entity/oil/Ylxxb.java
src/main/java/com/bsth/entity/oil/YlxxbUpdate.java
0 → 100644
| 1 | +package com.bsth.entity.oil; | |
| 2 | + | |
| 3 | +import java.util.Date; | |
| 4 | + | |
| 5 | +import javax.persistence.Entity; | |
| 6 | +import javax.persistence.GeneratedValue; | |
| 7 | +import javax.persistence.Id; | |
| 8 | +import javax.persistence.Table; | |
| 9 | +import javax.persistence.Transient; | |
| 10 | + | |
| 11 | +import org.springframework.format.annotation.DateTimeFormat; | |
| 12 | + | |
| 13 | +import com.bsth.data.BasicData; | |
| 14 | + | |
| 15 | +@Entity | |
| 16 | +@Table(name = "bsth_c_ylxxb_update") | |
| 17 | +public class YlxxbUpdate { | |
| 18 | + @Id | |
| 19 | + @GeneratedValue | |
| 20 | + private Integer id; | |
| 21 | + @DateTimeFormat(pattern="yyyy-MM-dd") | |
| 22 | + private Date yyrq; | |
| 23 | + private Date jlrq; | |
| 24 | + private String nbbm; | |
| 25 | + private String jsy; | |
| 26 | + private Double jzl; | |
| 27 | + private String stationid; | |
| 28 | + private Date createtime; | |
| 29 | + private String gsdm; | |
| 30 | + | |
| 31 | + private Date xgrq; | |
| 32 | + private String xgr; | |
| 33 | + private String tj; | |
| 34 | + public Integer getId() { | |
| 35 | + return id; | |
| 36 | + } | |
| 37 | + public void setId(Integer id) { | |
| 38 | + this.id = id; | |
| 39 | + } | |
| 40 | + public Date getYyrq() { | |
| 41 | + return yyrq; | |
| 42 | + } | |
| 43 | + public void setYyrq(Date yyrq) { | |
| 44 | + this.yyrq = yyrq; | |
| 45 | + } | |
| 46 | + public Date getJlrq() { | |
| 47 | + return jlrq; | |
| 48 | + } | |
| 49 | + public void setJlrq(Date jlrq) { | |
| 50 | + this.jlrq = jlrq; | |
| 51 | + } | |
| 52 | + public String getNbbm() { | |
| 53 | + return nbbm; | |
| 54 | + } | |
| 55 | + public void setNbbm(String nbbm) { | |
| 56 | + this.nbbm = nbbm; | |
| 57 | + } | |
| 58 | + public String getJsy() { | |
| 59 | + return jsy; | |
| 60 | + } | |
| 61 | + public void setJsy(String jsy) { | |
| 62 | + this.jsy = jsy; | |
| 63 | + } | |
| 64 | + public Double getJzl() { | |
| 65 | + return jzl; | |
| 66 | + } | |
| 67 | + public void setJzl(Double jzl) { | |
| 68 | + this.jzl = jzl; | |
| 69 | + } | |
| 70 | + public String getStationid() { | |
| 71 | + return stationid; | |
| 72 | + } | |
| 73 | + public void setStationid(String stationid) { | |
| 74 | + this.stationid = stationid; | |
| 75 | + } | |
| 76 | + public Date getCreatetime() { | |
| 77 | + return createtime; | |
| 78 | + } | |
| 79 | + public void setCreatetime(Date createtime) { | |
| 80 | + this.createtime = createtime; | |
| 81 | + } | |
| 82 | + public String getGsdm() { | |
| 83 | + return gsdm; | |
| 84 | + } | |
| 85 | + public void setGsdm(String gsdm) { | |
| 86 | + this.gsdm = gsdm; | |
| 87 | + } | |
| 88 | + public Date getXgrq() { | |
| 89 | + return xgrq; | |
| 90 | + } | |
| 91 | + public void setXgrq(Date xgrq) { | |
| 92 | + this.xgrq = xgrq; | |
| 93 | + } | |
| 94 | + public String getXgr() { | |
| 95 | + return xgr; | |
| 96 | + } | |
| 97 | + public void setXgr(String xgr) { | |
| 98 | + this.xgr = xgr; | |
| 99 | + } | |
| 100 | + public String getTj() { | |
| 101 | + return tj; | |
| 102 | + } | |
| 103 | + public void setTj(String tj) { | |
| 104 | + this.tj = tj; | |
| 105 | + } | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | +} | ... | ... |
src/main/java/com/bsth/repository/oil/YlxxbUpdateRepository.java
0 → 100644
| 1 | +package com.bsth.repository.oil; | |
| 2 | + | |
| 3 | + | |
| 4 | +import org.springframework.stereotype.Repository; | |
| 5 | +import com.bsth.entity.oil.YlxxbUpdate; | |
| 6 | +import com.bsth.repository.BaseRepository; | |
| 7 | + | |
| 8 | +@Repository | |
| 9 | +public interface YlxxbUpdateRepository extends BaseRepository<YlxxbUpdate, Integer>{ | |
| 10 | + | |
| 11 | +} | ... | ... |
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
| ... | ... | @@ -146,6 +146,11 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI |
| 146 | 146 | @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm =?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 order by s.lpName, s.realExecDate,s.fcsj") |
| 147 | 147 | List<ScheduleRealInfo> scheduleByDateAndLineQp(String line,String date); |
| 148 | 148 | |
| 149 | + | |
| 150 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) | |
| 151 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where gsBm like %?1% and fgsBm like %?2% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?3 order by s.xlDir,s.realExecDate,s.fcsj, s.lpName") | |
| 152 | + List<ScheduleRealInfo> scheduleByDateAndLineByGs_(String gsdm,String fgsdm,String date); | |
| 153 | + | |
| 149 | 154 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 150 | 155 | @Query(value="select DISTINCT s from ScheduleRealInfo s where gsBm like %?1% and fgsBm like %?2% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?3 and s.bcType not in ('in','out','ldks') order by s.xlDir,s.realExecDate,s.fcsj, s.lpName") |
| 151 | 156 | List<ScheduleRealInfo> scheduleByDateAndLineByGs(String gsdm,String fgsdm,String date); | ... | ... |
src/main/java/com/bsth/service/forms/FormsService.java
| ... | ... | @@ -30,6 +30,7 @@ public interface FormsService { |
| 30 | 30 | public List<Shifday> shifday(Map<String, Object> map); |
| 31 | 31 | |
| 32 | 32 | public List<Singledata> singledata(Map<String, Object> map); |
| 33 | + public List<Singledata> singledatanew(Map<String, Object> map); | |
| 33 | 34 | |
| 34 | 35 | public List<Vehicleloading> vehicleloading(String line,String data); |
| 35 | 36 | ... | ... |
src/main/java/com/bsth/service/forms/impl/FormsServiceImpl.java
| ... | ... | @@ -8,6 +8,8 @@ import java.text.NumberFormat; |
| 8 | 8 | import java.text.ParseException; |
| 9 | 9 | import java.text.SimpleDateFormat; |
| 10 | 10 | import java.util.ArrayList; |
| 11 | +import java.util.Collections; | |
| 12 | +import java.util.Comparator; | |
| 11 | 13 | import java.util.Date; |
| 12 | 14 | import java.util.HashMap; |
| 13 | 15 | import java.util.HashSet; |
| ... | ... | @@ -598,7 +600,7 @@ public class FormsServiceImpl implements FormsService { |
| 598 | 600 | |
| 599 | 601 | // 路单数据 |
| 600 | 602 | @Override |
| 601 | - public List<Singledata> singledata(Map<String, Object> map) { | |
| 603 | + public List<Singledata> singledatanew(Map<String, Object> map) { | |
| 602 | 604 | |
| 603 | 605 | String gsdm=""; |
| 604 | 606 | if(map.get("gsdmSing")!=null){ |
| ... | ... | @@ -651,7 +653,7 @@ public class FormsServiceImpl implements FormsService { |
| 651 | 653 | sql += " and r.xl_bm = '"+xlbm+"'"; |
| 652 | 654 | } |
| 653 | 655 | sql += " group by r.s_gh,r.s_name," |
| 654 | - + " r.xl_bm,r.cl_zbh,r.j_gh,r.j_name,r.gs_bm,r.fgs_bm order by r.xl_bm"; | |
| 656 | + + " r.xl_bm,r.cl_zbh,r.j_gh,r.j_name,r.gs_bm,r.fgs_bm order by r.xl_bm,r.cl_zbh"; | |
| 655 | 657 | |
| 656 | 658 | List<Singledata> list = jdbcTemplate.query(sql, new RowMapper<Singledata>() { |
| 657 | 659 | //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| ... | ... | @@ -735,6 +737,199 @@ public class FormsServiceImpl implements FormsService { |
| 735 | 737 | return list; |
| 736 | 738 | } |
| 737 | 739 | |
| 740 | + | |
| 741 | + // 路单数据 | |
| 742 | + @Override | |
| 743 | + public List<Singledata> singledata(Map<String, Object> map) { | |
| 744 | + | |
| 745 | + String gsdm=""; | |
| 746 | + if(map.get("gsdmSing")!=null){ | |
| 747 | + gsdm=map.get("gsdmSing").toString(); | |
| 748 | + } | |
| 749 | + String fgsdm=""; | |
| 750 | + if(map.get("fgsdmSing")!=null){ | |
| 751 | + fgsdm=map.get("fgsdmSing").toString(); | |
| 752 | + } | |
| 753 | + | |
| 754 | + String tjtype=map.get("tjtype").toString(); | |
| 755 | + String xlbm=map.get("line").toString().trim(); | |
| 756 | + startDate = map.get("startDate").toString(); | |
| 757 | + | |
| 758 | + List<ScheduleRealInfo> listReal=new ArrayList<ScheduleRealInfo>(); | |
| 759 | + if(xlbm.equals("")){ | |
| 760 | + listReal=scheduleRealInfoRepository.scheduleByDateAndLineByGs_(gsdm, fgsdm, startDate); | |
| 761 | + }else{ | |
| 762 | + listReal=scheduleRealInfoRepository.scheduleByDateAndLineQp(xlbm, startDate); | |
| 763 | + } | |
| 764 | + List<Singledata> list=new ArrayList<Singledata>(); | |
| 765 | + List<Singledata> listY=new ArrayList<Singledata>(); | |
| 766 | + List<Singledata> listD=new ArrayList<Singledata>(); | |
| 767 | + | |
| 768 | + if(tjtype.equals("jsy")){ | |
| 769 | + DecimalFormat df = new DecimalFormat("0.00"); | |
| 770 | + List<Ylb> listYlb= ylbRepository.obtainYl(startDate, gsdm, fgsdm, xlbm, "", "xlbm"); | |
| 771 | + for (int i = 0; i < listYlb.size(); i++) { | |
| 772 | + Ylb y=listYlb.get(i); | |
| 773 | + String jsy=y.getJsy(); | |
| 774 | + String line=y.getXlbm(); | |
| 775 | + String clzbh=y.getNbbm(); | |
| 776 | + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>(); | |
| 777 | + for (int j = 0; j < listReal.size(); j++) { | |
| 778 | + ScheduleRealInfo s=listReal.get(j); | |
| 779 | + if(s.getjGh().equals(jsy) && s.getClZbh().equals(clzbh) | |
| 780 | + &&s.getXlBm().equals(line)){ | |
| 781 | + newList.add(s); | |
| 782 | + } | |
| 783 | + } | |
| 784 | + double jhgl=culateMileageService.culateJhgl(newList); | |
| 785 | + double jhjcc=culateMileageService.culateJhJccgl(newList); | |
| 786 | + double yygl=culateMileageService.culateSjgl(newList); | |
| 787 | + double ljgl=culateMileageService.culateLjgl(newList); | |
| 788 | + double ksgl=culateMileageService.culateKsgl(newList); | |
| 789 | + double jcgl=culateMileageService.culateJccgl(newList); | |
| 790 | + | |
| 791 | + double zyygl=Arith.add(yygl, ljgl); | |
| 792 | + double zksgl=Arith.add(ksgl, jcgl); | |
| 793 | + | |
| 794 | + Singledata sin=new Singledata(); | |
| 795 | + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl))); | |
| 796 | + | |
| 797 | + sin.setEmptMileage(String.valueOf(zksgl)); | |
| 798 | + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc))); | |
| 799 | + sin.setxL(BasicData.lineCode2NameMap.get(y.getXlbm())); | |
| 800 | + sin.setClzbh(clzbh); | |
| 801 | + sin.setJsy(jsy); | |
| 802 | + sin.setrQ(startDate); | |
| 803 | + sin.setjName(BasicData.allPerson.get(gsdm+"-"+jsy)); | |
| 804 | + sin.setSgh(""); | |
| 805 | + sin.setsName(""); | |
| 806 | + sin.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm)); | |
| 807 | + sin.setHyl(df.format(y.getYh())); | |
| 808 | + sin.setJzl(df.format(y.getJzl())); | |
| 809 | + sin.setUnyyyl(df.format(y.getSh())); | |
| 810 | + listY.add(sin); | |
| 811 | + } | |
| 812 | + | |
| 813 | + List<Dlb> listDlb= dlbRepository.obtainDl(startDate, gsdm, fgsdm, xlbm, "", "xlbm"); | |
| 814 | + for (int i = 0; i < listDlb.size(); i++) { | |
| 815 | + | |
| 816 | + Dlb y=listDlb.get(i); | |
| 817 | + String jsy=y.getJsy(); | |
| 818 | + String line=y.getXlbm(); | |
| 819 | + String clzbh=y.getNbbm(); | |
| 820 | + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>(); | |
| 821 | + for (int j = 0; j < listReal.size(); j++) { | |
| 822 | + ScheduleRealInfo s=listReal.get(j); | |
| 823 | + if(s.getjGh().equals(jsy) && s.getClZbh().equals(clzbh) | |
| 824 | + &&s.getXlBm().equals(line)){ | |
| 825 | + newList.add(s); | |
| 826 | + } | |
| 827 | + } | |
| 828 | + double jhgl=culateMileageService.culateJhgl(newList); | |
| 829 | + double jhjcc=culateMileageService.culateJhJccgl(newList); | |
| 830 | + double yygl=culateMileageService.culateSjgl(newList); | |
| 831 | + double ljgl=culateMileageService.culateLjgl(newList); | |
| 832 | + double ksgl=culateMileageService.culateKsgl(newList); | |
| 833 | + double jcgl=culateMileageService.culateJccgl(newList); | |
| 834 | + | |
| 835 | + double zyygl=Arith.add(yygl, ljgl); | |
| 836 | + double zksgl=Arith.add(ksgl, jcgl); | |
| 837 | + | |
| 838 | + Singledata sin=new Singledata(); | |
| 839 | + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl))); | |
| 840 | + | |
| 841 | + sin.setEmptMileage(String.valueOf(zksgl)); | |
| 842 | + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc))); | |
| 843 | + sin.setxL(BasicData.lineCode2NameMap.get(y.getXlbm())); | |
| 844 | + sin.setClzbh(clzbh); | |
| 845 | + sin.setJsy(jsy); | |
| 846 | + sin.setrQ(startDate); | |
| 847 | + sin.setjName(BasicData.allPerson.get(gsdm+"-"+jsy)); | |
| 848 | + sin.setSgh(""); | |
| 849 | + sin.setsName(""); | |
| 850 | + sin.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm)); | |
| 851 | + sin.setHyl(df.format(y.getHd())); | |
| 852 | + sin.setJzl(df.format(y.getCdl())); | |
| 853 | + sin.setUnyyyl(df.format(y.getSh())); | |
| 854 | + listD.add(sin); | |
| 855 | + } | |
| 856 | + | |
| 857 | + Collections.sort(listY,new SingledataByXlbm()); | |
| 858 | + Collections.sort(listD,new SingledataByXlbm()); | |
| 859 | + list.addAll(listY); | |
| 860 | + list.addAll(listD); | |
| 861 | + }else{ | |
| 862 | + String sql="select r.s_gh,r.s_name, " | |
| 863 | + + " r.xl_bm,r.cl_zbh,r.gs_bm,r.fgs_bm" | |
| 864 | + + " from bsth_c_s_sp_info_real r where " | |
| 865 | + + " r.schedule_date_str = '"+startDate+"'" | |
| 866 | + + " and r.s_gh !='' and r.s_gh is not null "; | |
| 867 | + if(xlbm.equals("")){ | |
| 868 | + sql +="and r.gs_bm='"+gsdm+"' " | |
| 869 | + + " and r.fgs_bm='"+fgsdm+"'"; | |
| 870 | + }else{ | |
| 871 | + sql += " and r.xl_bm = '"+xlbm+"'"; | |
| 872 | + } | |
| 873 | + sql += " group by r.s_gh,r.s_name," | |
| 874 | + + " r.xl_bm,r.cl_zbh,r.gs_bm,r.fgs_bm order by r.xl_bm,r.cl_zbh"; | |
| 875 | + | |
| 876 | + list = jdbcTemplate.query(sql, new RowMapper<Singledata>() { | |
| 877 | + //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); | |
| 878 | + @Override | |
| 879 | + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException { | |
| 880 | + Singledata sin = new Singledata(); | |
| 881 | + sin.setrQ(startDate); | |
| 882 | + sin.setxL(arg0.getString("xl_bm")); | |
| 883 | + sin.setClzbh(arg0.getString("cl_zbh")); | |
| 884 | + sin.setSgh(arg0.getString("s_gh")); | |
| 885 | + sin.setsName(arg0.getString("s_name")); | |
| 886 | + return sin; | |
| 887 | + } | |
| 888 | + }); | |
| 889 | + | |
| 890 | + for (int i = 0; i < list.size(); i++) { | |
| 891 | + Singledata sin=list.get(i); | |
| 892 | + String jsy=sin.getSgh(); | |
| 893 | + String line=sin.getxL(); | |
| 894 | + String clzbh=sin.getClzbh(); | |
| 895 | + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>(); | |
| 896 | + for (int j = 0; j < listReal.size(); j++) { | |
| 897 | + ScheduleRealInfo s=listReal.get(j); | |
| 898 | + if(s.getsGh().equals(jsy) && s.getClZbh().equals(clzbh) | |
| 899 | + &&s.getXlBm().equals(line)){ | |
| 900 | + newList.add(s); | |
| 901 | + } | |
| 902 | + } | |
| 903 | + double jhgl=culateMileageService.culateJhgl(newList); | |
| 904 | + double jhjcc=culateMileageService.culateJhJccgl(newList); | |
| 905 | + double yygl=culateMileageService.culateSjgl(newList); | |
| 906 | + double ljgl=culateMileageService.culateLjgl(newList); | |
| 907 | + double ksgl=culateMileageService.culateKsgl(newList); | |
| 908 | + double jcgl=culateMileageService.culateJccgl(newList); | |
| 909 | + | |
| 910 | + double zyygl=Arith.add(yygl, ljgl); | |
| 911 | + double zksgl=Arith.add(ksgl, jcgl); | |
| 912 | + | |
| 913 | + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl))); | |
| 914 | + | |
| 915 | + sin.setEmptMileage(String.valueOf(zksgl)); | |
| 916 | + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc))); | |
| 917 | + sin.setxL(BasicData.lineCode2NameMap.get(line)); | |
| 918 | + sin.setClzbh(clzbh); | |
| 919 | + sin.setJsy(""); | |
| 920 | + sin.setjName(""); | |
| 921 | + sin.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm)); | |
| 922 | + sin.setHyl(""); | |
| 923 | + sin.setJzl(""); | |
| 924 | + sin.setUnyyyl(""); | |
| 925 | + } | |
| 926 | + Collections.sort(list,new SingledataByXlbm()); | |
| 927 | + } | |
| 928 | + | |
| 929 | + return list; | |
| 930 | + | |
| 931 | + } | |
| 932 | + | |
| 738 | 933 | // 运营服务阶段报表 |
| 739 | 934 | @Override |
| 740 | 935 | public List<Operationservice> operationservice(Map<String, Object> map) { |
| ... | ... | @@ -1398,4 +1593,12 @@ public class FormsServiceImpl implements FormsService { |
| 1398 | 1593 | } |
| 1399 | 1594 | return list; |
| 1400 | 1595 | } |
| 1596 | + | |
| 1597 | + class SingledataByXlbm implements Comparator<Singledata>{ | |
| 1598 | + @Override | |
| 1599 | + public int compare(Singledata o1, Singledata o2) { | |
| 1600 | + // TODO Auto-generated method stub | |
| 1601 | + return o2.getxL().compareTo(o1.getxL()); | |
| 1602 | + } | |
| 1603 | + } | |
| 1401 | 1604 | } | ... | ... |
src/main/java/com/bsth/service/oil/YlxxbService.java
| 1 | 1 | package com.bsth.service.oil; |
| 2 | 2 | |
| 3 | +import java.util.List; | |
| 3 | 4 | import java.util.Map; |
| 4 | 5 | |
| 5 | 6 | import com.bsth.entity.oil.Ylxxb; |
| ... | ... | @@ -9,6 +10,9 @@ import com.bsth.util.PageObject; |
| 9 | 10 | public interface YlxxbService extends BaseService<Ylxxb, Integer>{ |
| 10 | 11 | PageObject<Ylxxb> Pagequery(Map<String, Object> map) ; |
| 11 | 12 | |
| 13 | + List<Ylxxb> Pagequery_nbbm(Map<String, Object> map) ; | |
| 14 | + | |
| 12 | 15 | Map<String, Object> checkJsy(Map<String, Object> map) throws Exception; |
| 16 | + Map<String, Object> checkNbbm(Map<String, Object> map) throws Exception; | |
| 13 | 17 | |
| 14 | 18 | } | ... | ... |
src/main/java/com/bsth/service/oil/impl/YlxxbServiceImpl.java
| ... | ... | @@ -5,6 +5,7 @@ import java.sql.SQLException; |
| 5 | 5 | import java.text.ParseException; |
| 6 | 6 | import java.text.SimpleDateFormat; |
| 7 | 7 | import java.util.ArrayList; |
| 8 | +import java.util.Date; | |
| 8 | 9 | import java.util.HashMap; |
| 9 | 10 | import java.util.List; |
| 10 | 11 | import java.util.Map; |
| ... | ... | @@ -25,9 +26,11 @@ import com.bsth.common.ResponseCode; |
| 25 | 26 | import com.bsth.entity.excep.Offline; |
| 26 | 27 | import com.bsth.entity.oil.Ylb; |
| 27 | 28 | import com.bsth.entity.oil.Ylxxb; |
| 29 | +import com.bsth.entity.oil.YlxxbUpdate; | |
| 28 | 30 | import com.bsth.entity.search.CustomerSpecs; |
| 29 | 31 | import com.bsth.repository.oil.YlbRepository; |
| 30 | 32 | import com.bsth.repository.oil.YlxxbRepository; |
| 33 | +import com.bsth.repository.oil.YlxxbUpdateRepository; | |
| 31 | 34 | import com.bsth.service.impl.BaseServiceImpl; |
| 32 | 35 | import com.bsth.service.oil.YlxxbService; |
| 33 | 36 | import com.bsth.util.PageHelper; |
| ... | ... | @@ -40,6 +43,8 @@ public class YlxxbServiceImpl extends BaseServiceImpl<Ylxxb,Integer> implements |
| 40 | 43 | @Autowired |
| 41 | 44 | YlxxbRepository repository; |
| 42 | 45 | @Autowired |
| 46 | + YlxxbUpdateRepository updateRepository; | |
| 47 | + @Autowired | |
| 43 | 48 | YlbRepository ylbRepository; |
| 44 | 49 | @Autowired |
| 45 | 50 | JdbcTemplate jdbcTemplate; |
| ... | ... | @@ -53,7 +58,7 @@ public class YlxxbServiceImpl extends BaseServiceImpl<Ylxxb,Integer> implements |
| 53 | 58 | String sql=" select * from (" |
| 54 | 59 | + "select *,CONCAT(nbbm,jsy) as nj " |
| 55 | 60 | + " from bsth_c_ylxxb where yyrq='"+rq+"' " |
| 56 | - + " and gsdm ='"+gsdm+"' and jylx ='0') x where x.nj not in (" | |
| 61 | + + " and gsdm ='"+gsdm+"' and jylx !='1') x where x.nj not in (" | |
| 57 | 62 | + " select CONCAT(nbbm,jsy) from bsth_c_ylb " |
| 58 | 63 | + " where rq='"+rq+"'" |
| 59 | 64 | + " and ssgsdm='"+gsdm+"' and fgsdm ='"+fgsdm+"')" |
| ... | ... | @@ -61,7 +66,7 @@ public class YlxxbServiceImpl extends BaseServiceImpl<Ylxxb,Integer> implements |
| 61 | 66 | + " where rq='"+rq+"'" |
| 62 | 67 | + " and ssgsdm='"+gsdm+"' and fgsdm ='"+fgsdm+"') " |
| 63 | 68 | + " and x.nbbm not in (select nbbm from bsth_c_ylxxb" |
| 64 | - + " where yyrq='"+rq+"' and gsdm ='"+gsdm+"' AND jylx ='1')"; | |
| 69 | + + " where yyrq='"+rq+"' and gsdm ='"+gsdm+"' AND jylx !='0')"; | |
| 65 | 70 | |
| 66 | 71 | |
| 67 | 72 | /*String sql= "select v.*,u.jsy as ldgh from " |
| ... | ... | @@ -179,7 +184,7 @@ public class YlxxbServiceImpl extends BaseServiceImpl<Ylxxb,Integer> implements |
| 179 | 184 | Ylxxb ylxxb=repository.findOne(id); |
| 180 | 185 | if(!ylxxb.getJsy().equals(jsy)){ |
| 181 | 186 | ylxxb.setJsy(jsy); |
| 182 | - ylxxb.setJylx(1); | |
| 187 | + ylxxb.setJylx(3); | |
| 183 | 188 | repository.save(ylxxb); |
| 184 | 189 | } |
| 185 | 190 | } |
| ... | ... | @@ -191,5 +196,87 @@ public class YlxxbServiceImpl extends BaseServiceImpl<Ylxxb,Integer> implements |
| 191 | 196 | } |
| 192 | 197 | return newMap; |
| 193 | 198 | } |
| 199 | + @Override | |
| 200 | + public List<Ylxxb> Pagequery_nbbm(Map<String, Object> map) { | |
| 201 | + // TODO Auto-generated method stub | |
| 202 | + String rq=map.get("yyrq").toString(); | |
| 203 | + String gsdm=map.get("gsdm_like").toString(); | |
| 204 | + String nbbm=map.get("nbbm").toString(); | |
| 205 | + | |
| 206 | + String sql="select * from (select *,CONCAT(t.nbbm,'_',t.jsy,'_',t.jzl) as tj " | |
| 207 | + + " from bsth_c_ylxxb t where t.yyrq='"+rq+"' and t.gsdm='"+gsdm+"' and " | |
| 208 | + + " t.nylx=0 and t.jylx=0 and t.nbbm like '%"+nbbm+"%') y " | |
| 209 | + + " where y.nbbm not in (select c.inside_code from bsth_c_cars c " | |
| 210 | + + " where c.business_code ='05' and c.sfdc=0) and y.tj not in (" | |
| 211 | + + " select x.tj from bsth_c_ylxxb_update x)"; | |
| 212 | + | |
| 213 | + //根具条件查询指定日期Ylb的数据 | |
| 214 | +// List<Ylb> ylbIterator=ylbRepository.checkYl(rq,gsdm,fgsdm); | |
| 215 | + List<Ylxxb> list=jdbcTemplate.query(sql, | |
| 216 | + new RowMapper<Ylxxb>(){ | |
| 217 | + @Override | |
| 218 | + public Ylxxb mapRow(ResultSet rs, int rowNum) throws SQLException { | |
| 219 | + Ylxxb s = new Ylxxb(); | |
| 220 | + s.setId(rs.getInt("id")); | |
| 221 | + s.setYyrq(rs.getDate("yyrq")); | |
| 222 | + s.setNbbm(rs.getString("nbbm")); | |
| 223 | + s.setGsdm(rs.getString("gsdm")); | |
| 224 | + s.setJsy(rs.getString("jsy")); | |
| 225 | + s.setJzl(rs.getDouble("jzl")); | |
| 226 | + s.setStationid(rs.getString("stationid")); | |
| 227 | + s.setNylx(rs.getInt("nylx")); | |
| 228 | + s.setJyggh(rs.getString("jyggh")); | |
| 229 | + s.setYj(rs.getDouble("yj")); | |
| 230 | +// s.setLdgh(rs.getString("ldgh")); | |
| 231 | + s.setBz(rs.getString("bz")); | |
| 232 | + return s; | |
| 233 | + } | |
| 234 | + }); | |
| 235 | + return list; | |
| 236 | + } | |
| 194 | 237 | |
| 195 | -} | |
| 196 | 238 | \ No newline at end of file |
| 239 | + | |
| 240 | + @Transactional | |
| 241 | + @Override | |
| 242 | + public Map<String, Object> checkNbbm(Map<String, Object> map) throws Exception{ | |
| 243 | + Map<String, Object> newMap=new HashMap<String,Object>(); | |
| 244 | + // TODO Auto-generated method stub | |
| 245 | + try { | |
| 246 | +// int id=Integer.parseInt(map.get("id").toString()); | |
| 247 | +// String jsy=map.get("jsy").toString(); | |
| 248 | +// Ylxxb ylxxb=repository.findOne(id); | |
| 249 | +// ylxxb.setJsy(jsy); | |
| 250 | +// repository.save(ylxxb); | |
| 251 | + String json =StringEscapeUtils.unescapeHtml4(map.get("ylbList").toString()); | |
| 252 | + JSONArray jsonArray=JSONArray.parseArray(json); | |
| 253 | + JSONObject jsonObject; | |
| 254 | + for (int x = 0; x < jsonArray.size(); x++) { | |
| 255 | + jsonObject=jsonArray.getJSONObject(x); | |
| 256 | + Integer id =jsonObject.getInteger("id"); | |
| 257 | + String nbbm =jsonObject.getString("nbbm").trim(); | |
| 258 | + Ylxxb ylxxb=repository.findOne(id); | |
| 259 | + if(!ylxxb.getNbbm().equals(nbbm)){ | |
| 260 | + ylxxb.setNbbm(nbbm); | |
| 261 | + ylxxb.setJylx(2); | |
| 262 | + repository.save(ylxxb); | |
| 263 | + YlxxbUpdate ylxxbUpdate=new YlxxbUpdate(); | |
| 264 | + ylxxbUpdate.setGsdm(ylxxb.getGsdm()); | |
| 265 | + ylxxbUpdate.setJsy(ylxxb.getJsy()); | |
| 266 | + ylxxbUpdate.setJzl(ylxxb.getJzl()); | |
| 267 | + ylxxbUpdate.setJlrq(ylxxb.getJlrq()); | |
| 268 | + ylxxbUpdate.setNbbm(ylxxb.getNbbm()); | |
| 269 | + ylxxbUpdate.setYyrq(ylxxb.getYyrq()); | |
| 270 | + ylxxbUpdate.setCreatetime(new Date()); | |
| 271 | + ylxxbUpdate.setTj(nbbm+"_"+ylxxb.getJsy()+"_"+ylxxb.getJzl()); | |
| 272 | + updateRepository.save(ylxxbUpdate); | |
| 273 | + } | |
| 274 | + } | |
| 275 | + newMap.put("status", ResponseCode.SUCCESS); | |
| 276 | + }catch(Exception e){ | |
| 277 | + newMap.put("status", ResponseCode.ERROR); | |
| 278 | + logger.error("save erro.", e); | |
| 279 | + throw e; | |
| 280 | + } | |
| 281 | + return newMap; | |
| 282 | + } | |
| 283 | +} | ... | ... |
src/main/java/com/bsth/service/schedule/rules/validate/ValidWholeRerunBcFunction.java
| 1 | -package com.bsth.service.schedule.rules.validate; | |
| 2 | - | |
| 3 | -import com.bsth.entity.schedule.SchedulePlanInfo; | |
| 4 | -import org.kie.api.runtime.rule.AccumulateFunction; | |
| 5 | - | |
| 6 | -import java.io.*; | |
| 7 | -import java.text.SimpleDateFormat; | |
| 8 | -import java.util.ArrayList; | |
| 9 | -import java.util.HashMap; | |
| 10 | -import java.util.List; | |
| 11 | -import java.util.Map; | |
| 12 | - | |
| 13 | -/** | |
| 14 | - * 验证完全套跑路牌班次正确性。 | |
| 15 | - * 完全套跑路牌班次指此路牌下的所有班次由其他线路完成。 | |
| 16 | - * 记录漏掉的班次,并给出警告信息。 | |
| 17 | - */ | |
| 18 | -public class ValidWholeRerunBcFunction implements AccumulateFunction { | |
| 19 | - @Override | |
| 20 | - public void writeExternal(ObjectOutput out) throws IOException { | |
| 21 | - } | |
| 22 | - | |
| 23 | - @Override | |
| 24 | - public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { | |
| 25 | - | |
| 26 | - } | |
| 27 | - | |
| 28 | - protected static class RerunBcInfo implements Externalizable { | |
| 29 | - /** 错误描述 */ | |
| 30 | - public List<ValidateResults_output.ValidInfo> validInfoList = new ArrayList<>(); | |
| 31 | - /** 内部计数Map,key:{路牌Id}_{发车时间},value:个数 */ | |
| 32 | - public Map<String, Integer> lpBcFcsjCount = new HashMap<>(); | |
| 33 | - | |
| 34 | - public RerunBcInfo() { | |
| 35 | - } | |
| 36 | - | |
| 37 | - @Override | |
| 38 | - public void writeExternal(ObjectOutput out) throws IOException { | |
| 39 | - out.writeObject(validInfoList); | |
| 40 | - } | |
| 41 | - | |
| 42 | - @Override | |
| 43 | - public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { | |
| 44 | - validInfoList = (List<ValidateResults_output.ValidInfo>) in.readObject(); | |
| 45 | - } | |
| 46 | - } | |
| 47 | - | |
| 48 | - @Override | |
| 49 | - public Serializable createContext() { | |
| 50 | -// System.out.println("create"); | |
| 51 | - return new RerunBcInfo(); | |
| 52 | - } | |
| 53 | - | |
| 54 | - @Override | |
| 55 | - public void init(Serializable serializable) throws Exception { | |
| 56 | - // TODO: | |
| 57 | -// System.out.println("init"); | |
| 58 | - } | |
| 59 | - | |
| 60 | - @Override | |
| 61 | - public void accumulate(Serializable context, Object o) { | |
| 62 | - RerunBcInfo rerunBcInfo = (RerunBcInfo) context; | |
| 63 | - SchedulePlanInfo schedulePlanInfo = (SchedulePlanInfo) o; | |
| 64 | - | |
| 65 | - String key = schedulePlanInfo.getLp() + "_" + schedulePlanInfo.getFcsj(); | |
| 66 | - SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日"); | |
| 67 | - String infoformat = "日期(%s),路牌(%s)完全套跑,班次(%s),在套跑规则中未指定"; | |
| 68 | - | |
| 69 | - if (schedulePlanInfo.getCl() == null) { | |
| 70 | - rerunBcInfo.lpBcFcsjCount.put(key, 1); | |
| 71 | - | |
| 72 | - ValidateResults_output.ValidInfo validInfo = new ValidateResults_output.ValidInfo(); | |
| 73 | - validInfo.setSd(schedulePlanInfo.getScheduleDate()); | |
| 74 | - validInfo.setDesc(String.format( | |
| 75 | - infoformat, | |
| 76 | - sf.format(schedulePlanInfo.getScheduleDate()), | |
| 77 | - schedulePlanInfo.getLpName(), | |
| 78 | - schedulePlanInfo.getFcsj(), | |
| 79 | - 1)); | |
| 80 | - | |
| 81 | - rerunBcInfo.validInfoList.add(validInfo); | |
| 82 | - } | |
| 83 | - } | |
| 84 | - | |
| 85 | - @Override | |
| 86 | - public boolean supportsReverse() { | |
| 87 | - return true; | |
| 88 | - } | |
| 89 | - | |
| 90 | - @Override | |
| 91 | - public void reverse(Serializable context, Object o) throws Exception { | |
| 92 | - RerunBcInfo rerunBcInfo = (RerunBcInfo) context; | |
| 93 | - SchedulePlanInfo schedulePlanInfo = (SchedulePlanInfo) o; | |
| 94 | - | |
| 95 | - String key = schedulePlanInfo.getLp() + "_" + schedulePlanInfo.getFcsj(); | |
| 96 | - rerunBcInfo.lpBcFcsjCount.remove(key); | |
| 97 | - | |
| 98 | - if (!rerunBcInfo.validInfoList.isEmpty()) { // 全部清空 | |
| 99 | - rerunBcInfo.validInfoList.clear(); | |
| 100 | - } | |
| 101 | - } | |
| 102 | - | |
| 103 | - @Override | |
| 104 | - public Class<?> getResultType() { | |
| 105 | - return List.class; | |
| 106 | - } | |
| 107 | - | |
| 108 | - @Override | |
| 109 | - public Object getResult(Serializable context) throws Exception { | |
| 110 | - RerunBcInfo rerunBcInfo = (RerunBcInfo) context; | |
| 111 | - return rerunBcInfo.validInfoList; | |
| 112 | - } | |
| 113 | -} | |
| 1 | +package com.bsth.service.schedule.rules.validate; | |
| 2 | + | |
| 3 | +import com.bsth.entity.schedule.SchedulePlanInfo; | |
| 4 | +import org.kie.api.runtime.rule.AccumulateFunction; | |
| 5 | + | |
| 6 | +import java.io.*; | |
| 7 | +import java.text.SimpleDateFormat; | |
| 8 | +import java.util.ArrayList; | |
| 9 | +import java.util.HashMap; | |
| 10 | +import java.util.List; | |
| 11 | +import java.util.Map; | |
| 12 | + | |
| 13 | +/** | |
| 14 | + * 验证完全套跑路牌班次正确性。 | |
| 15 | + * 完全套跑路牌班次指此路牌下的所有班次由其他线路完成。 | |
| 16 | + * 记录漏掉的班次,并给出警告信息。 | |
| 17 | + */ | |
| 18 | +public class ValidWholeRerunBcFunction implements AccumulateFunction { | |
| 19 | + @Override | |
| 20 | + public void writeExternal(ObjectOutput out) throws IOException { | |
| 21 | + } | |
| 22 | + | |
| 23 | + @Override | |
| 24 | + public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { | |
| 25 | + | |
| 26 | + } | |
| 27 | + | |
| 28 | + protected static class RerunBcInfo implements Externalizable { | |
| 29 | + /** 错误描述 */ | |
| 30 | + public List<ValidateResults_output.ValidInfo> validInfoList = new ArrayList<>(); | |
| 31 | + /** 内部计数Map,key:{路牌Id}_{发车时间},value:个数 */ | |
| 32 | + public Map<String, Integer> lpBcFcsjCount = new HashMap<>(); | |
| 33 | + | |
| 34 | + public RerunBcInfo() { | |
| 35 | + } | |
| 36 | + | |
| 37 | + @Override | |
| 38 | + public void writeExternal(ObjectOutput out) throws IOException { | |
| 39 | + out.writeObject(validInfoList); | |
| 40 | + } | |
| 41 | + | |
| 42 | + @Override | |
| 43 | + public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { | |
| 44 | + validInfoList = (List<ValidateResults_output.ValidInfo>) in.readObject(); | |
| 45 | + } | |
| 46 | + } | |
| 47 | + | |
| 48 | + @Override | |
| 49 | + public Serializable createContext() { | |
| 50 | +// System.out.println("create"); | |
| 51 | + return new RerunBcInfo(); | |
| 52 | + } | |
| 53 | + | |
| 54 | + @Override | |
| 55 | + public void init(Serializable serializable) throws Exception { | |
| 56 | + // TODO: | |
| 57 | +// System.out.println("init"); | |
| 58 | + } | |
| 59 | + | |
| 60 | + @Override | |
| 61 | + public void accumulate(Serializable context, Object o) { | |
| 62 | + RerunBcInfo rerunBcInfo = (RerunBcInfo) context; | |
| 63 | + SchedulePlanInfo schedulePlanInfo = (SchedulePlanInfo) o; | |
| 64 | + | |
| 65 | + String key = schedulePlanInfo.getLp() + "_" + schedulePlanInfo.getFcsj(); | |
| 66 | + SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日"); | |
| 67 | + String infoformat = "日期(%s),路牌(%s)完全套跑,班次(%s),在套跑规则中未指定"; | |
| 68 | + | |
| 69 | + if (schedulePlanInfo.getCl() == null) { | |
| 70 | + rerunBcInfo.lpBcFcsjCount.put(key, 1); | |
| 71 | + | |
| 72 | + ValidateResults_output.ValidInfo validInfo = new ValidateResults_output.ValidInfo(); | |
| 73 | + validInfo.setSd(schedulePlanInfo.getScheduleDate()); | |
| 74 | + validInfo.setDesc(String.format( | |
| 75 | + infoformat, | |
| 76 | + sf.format(schedulePlanInfo.getScheduleDate()), | |
| 77 | + schedulePlanInfo.getLpName(), | |
| 78 | + schedulePlanInfo.getFcsj(), | |
| 79 | + 1)); | |
| 80 | + | |
| 81 | + rerunBcInfo.validInfoList.add(validInfo); | |
| 82 | + } | |
| 83 | + } | |
| 84 | + | |
| 85 | + @Override | |
| 86 | + public boolean supportsReverse() { | |
| 87 | + return true; | |
| 88 | + } | |
| 89 | + | |
| 90 | + @Override | |
| 91 | + public void reverse(Serializable context, Object o) throws Exception { | |
| 92 | + RerunBcInfo rerunBcInfo = (RerunBcInfo) context; | |
| 93 | + SchedulePlanInfo schedulePlanInfo = (SchedulePlanInfo) o; | |
| 94 | + | |
| 95 | + String key = schedulePlanInfo.getLp() + "_" + schedulePlanInfo.getFcsj(); | |
| 96 | + rerunBcInfo.lpBcFcsjCount.remove(key); | |
| 97 | + | |
| 98 | + if (!rerunBcInfo.validInfoList.isEmpty()) { // 全部清空 | |
| 99 | + rerunBcInfo.validInfoList.clear(); | |
| 100 | + } | |
| 101 | + } | |
| 102 | + | |
| 103 | + @Override | |
| 104 | + public Class<?> getResultType() { | |
| 105 | + return List.class; | |
| 106 | + } | |
| 107 | + | |
| 108 | + @Override | |
| 109 | + public Object getResult(Serializable context) throws Exception { | |
| 110 | + RerunBcInfo rerunBcInfo = (RerunBcInfo) context; | |
| 111 | + return rerunBcInfo.validInfoList; | |
| 112 | + } | |
| 113 | +} | ... | ... |