Commit 143d992a0dd60587e2b11563b98584e0df143e84
Merge branch 'minhang' into qingpu
# Conflicts: # src/main/java/com/bsth/service/oil/impl/YlbServiceImpl.java # src/main/resources/ms-jdbc.properties # src/main/resources/static/real_control_v2/js/north/toolbar.js
Showing
52 changed files
with
2784 additions
and
759 deletions
Too many changes to show.
To preserve performance only 52 of 110 files are displayed.
src/main/java/com/bsth/common/Constants.java
| @@ -21,6 +21,9 @@ public class Constants { | @@ -21,6 +21,9 @@ public class Constants { | ||
| 21 | public static final String LOGIN_FAILURE = "/user/loginFailure"; | 21 | public static final String LOGIN_FAILURE = "/user/loginFailure"; |
| 22 | public static final String CAPTCHA = "/captcha.jpg"; | 22 | public static final String CAPTCHA = "/captcha.jpg"; |
| 23 | 23 | ||
| 24 | + //对外的营运数据接口 | ||
| 25 | + public static final String SERVICE_INTERFACE = "/companyService/**"; | ||
| 26 | + | ||
| 24 | /** | 27 | /** |
| 25 | * 线调部分子页面不做拦截,便于浏览器缓存 | 28 | * 线调部分子页面不做拦截,便于浏览器缓存 |
| 26 | */ | 29 | */ |
src/main/java/com/bsth/controller/oil/CdlController.java
0 → 100644
| 1 | +package com.bsth.controller.oil; | ||
| 2 | + | ||
| 3 | +import java.util.Date; | ||
| 4 | +import java.util.Map; | ||
| 5 | + | ||
| 6 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 7 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
| 8 | +import org.springframework.web.bind.annotation.RequestMethod; | ||
| 9 | +import org.springframework.web.bind.annotation.RestController; | ||
| 10 | + | ||
| 11 | +import com.bsth.controller.BaseController; | ||
| 12 | +import com.bsth.entity.oil.Cdl; | ||
| 13 | +import com.bsth.service.oil.CdlService; | ||
| 14 | + | ||
| 15 | +@RestController | ||
| 16 | +@RequestMapping("cdl") | ||
| 17 | +public class CdlController extends BaseController<Cdl, Integer>{ | ||
| 18 | + @Autowired | ||
| 19 | + CdlService service; | ||
| 20 | + @RequestMapping(value = "/save",method = RequestMethod.POST) | ||
| 21 | + public Map<String, Object> saveCdl(Cdl t){ | ||
| 22 | +// SysUser user = SecurityUtils.getCurrentUser(); | ||
| 23 | + t.setUpdatetime(new Date()); | ||
| 24 | + /*SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 25 | + try { | ||
| 26 | + t.setUpdatetime(sdf.parse("2016-10-13")); | ||
| 27 | + } catch (ParseException e) { | ||
| 28 | + // TODO Auto-generated catch block | ||
| 29 | + e.printStackTrace(); | ||
| 30 | + }*/ | ||
| 31 | + return service.save(t); | ||
| 32 | + } | ||
| 33 | +} |
src/main/java/com/bsth/controller/oil/DlbController.java
| 1 | package com.bsth.controller.oil; | 1 | package com.bsth.controller.oil; |
| 2 | 2 | ||
| 3 | +import java.util.List; | ||
| 4 | +import java.util.Map; | ||
| 5 | + | ||
| 6 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 7 | +import org.springframework.data.domain.Page; | ||
| 8 | +import org.springframework.data.domain.PageRequest; | ||
| 9 | +import org.springframework.data.domain.Sort; | ||
| 10 | +import org.springframework.data.domain.Sort.Direction; | ||
| 3 | import org.springframework.web.bind.annotation.RequestMapping; | 11 | import org.springframework.web.bind.annotation.RequestMapping; |
| 12 | +import org.springframework.web.bind.annotation.RequestMethod; | ||
| 13 | +import org.springframework.web.bind.annotation.RequestParam; | ||
| 4 | import org.springframework.web.bind.annotation.RestController; | 14 | import org.springframework.web.bind.annotation.RestController; |
| 5 | import com.bsth.controller.BaseController; | 15 | import com.bsth.controller.BaseController; |
| 6 | import com.bsth.entity.oil.Dlb; | 16 | import com.bsth.entity.oil.Dlb; |
| 17 | +import com.bsth.entity.oil.Ylb; | ||
| 18 | +import com.bsth.service.oil.DlbService; | ||
| 19 | +import com.google.common.base.Splitter; | ||
| 7 | 20 | ||
| 8 | @RestController | 21 | @RestController |
| 9 | @RequestMapping("dlb") | 22 | @RequestMapping("dlb") |
| 10 | public class DlbController extends BaseController<Dlb, Integer>{ | 23 | public class DlbController extends BaseController<Dlb, Integer>{ |
| 24 | + @Autowired | ||
| 25 | + DlbService service; | ||
| 26 | + /** | ||
| 27 | + * | ||
| 28 | + * @Title: list | ||
| 29 | + * @Description: TODO(多条件分页查询) | ||
| 30 | + * @param @param map 查询条件 | ||
| 31 | + * @param @param page 页码 | ||
| 32 | + * @param @param size 每页显示数量 | ||
| 33 | + * @throws | ||
| 34 | + */ | ||
| 35 | + @RequestMapping(method = RequestMethod.GET) | ||
| 36 | + public Page<Dlb> list(@RequestParam Map<String, Object> map, | ||
| 37 | + @RequestParam(defaultValue = "0") int page, | ||
| 38 | + @RequestParam(defaultValue = "10") int size, | ||
| 39 | + @RequestParam(defaultValue = "id") String order, | ||
| 40 | + @RequestParam(defaultValue = "DESC") String direction){ | ||
| 41 | + | ||
| 42 | + Direction d; | ||
| 43 | +// map.put("xlbm_like", map.get("xlbm_like").toString().trim()); | ||
| 44 | +// try { | ||
| 45 | + String rq=map.get("rq").toString(); | ||
| 46 | + if(!(rq=="")){ | ||
| 47 | +// | ||
| 48 | +// SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 49 | +// Calendar calendar = new GregorianCalendar(); | ||
| 50 | +// calendar.setTime(sdf.parse(rq)); | ||
| 51 | +// calendar.add(calendar.DATE,1); | ||
| 52 | +// Date date=calendar.getTime(); | ||
| 53 | + map.put("rq_eq", rq); | ||
| 54 | +// map.put("rq_lt", sdf.format(date)); | ||
| 55 | +// System.out.println(rq); | ||
| 56 | +// System.out.println(sdf.format(date)); | ||
| 57 | + } | ||
| 58 | +// } catch (ParseException e) { | ||
| 59 | +// // TODO Auto-generated catch block | ||
| 60 | +// e.printStackTrace(); | ||
| 61 | +// } | ||
| 62 | + if(null != direction && direction.equals("ASC")) | ||
| 63 | + d = Direction.ASC; | ||
| 64 | + else | ||
| 65 | + d = Direction.DESC; | ||
| 66 | + | ||
| 67 | + // 允许多个字段排序,order可以写单个字段,也可以写多个字段 | ||
| 68 | + // 多个字段格式:{col1},{col2},{col3},....,{coln} | ||
| 69 | + // 每个字段的排序方向都是一致,这个以后再看要不要改 | ||
| 70 | + List<String> list = Splitter.on(",").trimResults().splitToList(order); | ||
| 71 | + return baseService.list(map, new PageRequest(page, size, new Sort(d, list))); | ||
| 72 | + } | ||
| 73 | + | ||
| 74 | + @RequestMapping(value = "/obtain",method = RequestMethod.GET) | ||
| 75 | + public Map<String, Object> obtain(@RequestParam Map<String, Object> map){ | ||
| 76 | + Map<String, Object> list=service.obtain(map); | ||
| 77 | + System.out.println(); | ||
| 78 | + return list; | ||
| 79 | + } | ||
| 80 | + | ||
| 81 | + /** | ||
| 82 | + * 保存电量 | ||
| 83 | + * @param map | ||
| 84 | + * @return | ||
| 85 | + */ | ||
| 86 | + @RequestMapping(value = "/sort",method = RequestMethod.GET) | ||
| 87 | + public Map<String, Object> sort(@RequestParam Map<String, Object> map){ | ||
| 88 | + Map<String, Object> list=service.sort(map); | ||
| 89 | + return list; | ||
| 90 | + } | ||
| 11 | 91 | ||
| 92 | + /** | ||
| 93 | + * 核对电量(有加电没里程) | ||
| 94 | + * @param map | ||
| 95 | + * @return | ||
| 96 | + */ | ||
| 97 | + @RequestMapping(value = "/checkDl",method = RequestMethod.GET) | ||
| 98 | + public Map<String, Object> checkDl(@RequestParam Map<String, Object> map){ | ||
| 99 | + Map<String, Object> list=service.checkDl(map); | ||
| 100 | + return list; | ||
| 101 | + } | ||
| 12 | } | 102 | } |
src/main/java/com/bsth/controller/oil/YlbController.java
| @@ -50,8 +50,14 @@ public class YlbController extends BaseController<Ylb, Integer>{ | @@ -50,8 +50,14 @@ public class YlbController extends BaseController<Ylb, Integer>{ | ||
| 50 | * @return | 50 | * @return |
| 51 | */ | 51 | */ |
| 52 | @RequestMapping(value = "/obtain",method = RequestMethod.GET) | 52 | @RequestMapping(value = "/obtain",method = RequestMethod.GET) |
| 53 | - public Map<String, Object> obtain(@RequestParam Map<String, Object> map){ | ||
| 54 | - Map<String, Object> list=yblService.obtain(map); | 53 | + public Map<String, Object> obtain(@RequestParam Map<String, Object> map) throws Exception{ |
| 54 | + Map<String, Object> list =new HashMap<String, Object>(); | ||
| 55 | + try { | ||
| 56 | + list = yblService.obtain(map); | ||
| 57 | + } catch (Exception e) { | ||
| 58 | + // TODO Auto-generated catch block | ||
| 59 | + throw e; | ||
| 60 | + } | ||
| 55 | System.out.println(); | 61 | System.out.println(); |
| 56 | return list; | 62 | return list; |
| 57 | } | 63 | } |
| @@ -73,8 +79,14 @@ public class YlbController extends BaseController<Ylb, Integer>{ | @@ -73,8 +79,14 @@ public class YlbController extends BaseController<Ylb, Integer>{ | ||
| 73 | * @return | 79 | * @return |
| 74 | */ | 80 | */ |
| 75 | @RequestMapping(value = "/outAndIn",method = RequestMethod.GET) | 81 | @RequestMapping(value = "/outAndIn",method = RequestMethod.GET) |
| 76 | - public Map<String, Object> outAndIn(@RequestParam Map<String, Object> map){ | ||
| 77 | - Map<String, Object> list=yblService.outAndIn(map); | 82 | + public Map<String, Object> outAndIn(@RequestParam Map<String, Object> map) throws Exception{ |
| 83 | + Map<String, Object> list=new HashMap<String, Object>(); | ||
| 84 | + try { | ||
| 85 | + list=yblService.outAndIn(map); | ||
| 86 | + } catch (Exception e) { | ||
| 87 | + // TODO: handle exception | ||
| 88 | + } | ||
| 89 | + | ||
| 78 | return list; | 90 | return list; |
| 79 | } | 91 | } |
| 80 | 92 | ||
| @@ -107,8 +119,15 @@ public class YlbController extends BaseController<Ylb, Integer>{ | @@ -107,8 +119,15 @@ public class YlbController extends BaseController<Ylb, Integer>{ | ||
| 107 | 119 | ||
| 108 | Direction d; | 120 | Direction d; |
| 109 | map.put("xlbm_like", map.get("xlbm_like").toString().trim()); | 121 | map.put("xlbm_like", map.get("xlbm_like").toString().trim()); |
| 110 | -// try { | ||
| 111 | String rq=map.get("rq").toString(); | 122 | String rq=map.get("rq").toString(); |
| 123 | + int lx=Integer.parseInt(map.get("sxtj").toString().trim()); | ||
| 124 | + if(lx>0){ | ||
| 125 | + map.put("nbbm_in", yblService.checkNbmmNum(rq, map.get("ssgsdm_like").toString(), | ||
| 126 | + map.get("fgsdm_like").toString(), map.get("xlbm_like").toString(), | ||
| 127 | + map.get("nbbm_eq").toString(),lx)); | ||
| 128 | + } | ||
| 129 | +// try { | ||
| 130 | + | ||
| 112 | if(!(rq=="")){ | 131 | if(!(rq=="")){ |
| 113 | // | 132 | // |
| 114 | // SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | 133 | // SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); |
| @@ -143,6 +162,11 @@ public class YlbController extends BaseController<Ylb, Integer>{ | @@ -143,6 +162,11 @@ public class YlbController extends BaseController<Ylb, Integer>{ | ||
| 143 | return yblService.oilListMonth(line, date); | 162 | return yblService.oilListMonth(line, date); |
| 144 | } | 163 | } |
| 145 | 164 | ||
| 165 | + @RequestMapping(value = "/sumYlb",method = RequestMethod.GET) | ||
| 166 | + public Map<String, Object> sumYlb(@RequestParam Map<String, Object> map){ | ||
| 167 | + Map<String, Object> list=yblService.sumYlb(map); | ||
| 168 | + return list; | ||
| 169 | + } | ||
| 146 | 170 | ||
| 147 | @RequestMapping(value = "/listExport",method = RequestMethod.POST) | 171 | @RequestMapping(value = "/listExport",method = RequestMethod.POST) |
| 148 | public List<Map<String, Object>> listExport(@RequestParam Map<String, Object> map){ | 172 | public List<Map<String, Object>> listExport(@RequestParam Map<String, Object> map){ |
src/main/java/com/bsth/controller/realcontrol/OilStationSocietyController.java
0 → 100644
| 1 | +package com.bsth.controller.realcontrol; | ||
| 2 | + | ||
| 3 | +import com.bsth.controller.BaseController; | ||
| 4 | +import com.bsth.entity.realcontrol.OilStationSociety; | ||
| 5 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
| 6 | +import org.springframework.web.bind.annotation.RestController; | ||
| 7 | + | ||
| 8 | +/** | ||
| 9 | + * Created by panzhao on 2017/3/16. | ||
| 10 | + */ | ||
| 11 | +@RestController | ||
| 12 | +@RequestMapping("/oilStation") | ||
| 13 | +public class OilStationSocietyController extends BaseController<OilStationSociety, String>{ | ||
| 14 | +} |
src/main/java/com/bsth/controller/realcontrol/PageForwardingController.java
| 1 | package com.bsth.controller.realcontrol; | 1 | package com.bsth.controller.realcontrol; |
| 2 | 2 | ||
| 3 | +import com.bsth.entity.sys.Role; | ||
| 3 | import com.bsth.entity.sys.SysUser; | 4 | import com.bsth.entity.sys.SysUser; |
| 4 | import com.bsth.security.util.SecurityUtils; | 5 | import com.bsth.security.util.SecurityUtils; |
| 6 | +import org.slf4j.Logger; | ||
| 7 | +import org.slf4j.LoggerFactory; | ||
| 5 | import org.springframework.stereotype.Controller; | 8 | import org.springframework.stereotype.Controller; |
| 6 | import org.springframework.web.bind.annotation.RequestMapping; | 9 | import org.springframework.web.bind.annotation.RequestMapping; |
| 7 | import org.springframework.web.servlet.ModelAndView; | 10 | import org.springframework.web.servlet.ModelAndView; |
| 8 | 11 | ||
| 12 | +import javax.servlet.http.HttpServletResponse; | ||
| 13 | + | ||
| 9 | /** | 14 | /** |
| 10 | * 线调登入页面转发 | 15 | * 线调登入页面转发 |
| 11 | * Created by panzhao on 2017/1/21. | 16 | * Created by panzhao on 2017/1/21. |
| @@ -14,18 +19,36 @@ import org.springframework.web.servlet.ModelAndView; | @@ -14,18 +19,36 @@ import org.springframework.web.servlet.ModelAndView; | ||
| 14 | @RequestMapping("real_control") | 19 | @RequestMapping("real_control") |
| 15 | public class PageForwardingController { | 20 | public class PageForwardingController { |
| 16 | 21 | ||
| 22 | + Logger logger = LoggerFactory.getLogger(this.getClass()); | ||
| 23 | + | ||
| 17 | @RequestMapping("/v2") | 24 | @RequestMapping("/v2") |
| 18 | - public ModelAndView v2(){ | 25 | + public ModelAndView v2(HttpServletResponse response){ |
| 19 | ModelAndView mv = new ModelAndView(); | 26 | ModelAndView mv = new ModelAndView(); |
| 20 | SysUser user = SecurityUtils.getCurrentUser(); | 27 | SysUser user = SecurityUtils.getCurrentUser(); |
| 21 | 28 | ||
| 22 | //班次管理员 | 29 | //班次管理员 |
| 23 | if(user.getUserName().equals("bcgly")){ | 30 | if(user.getUserName().equals("bcgly")){ |
| 24 | mv.setViewName("/real_control_v2/sch_manage/sch_imitate.html"); | 31 | mv.setViewName("/real_control_v2/sch_manage/sch_imitate.html"); |
| 32 | + return mv; | ||
| 25 | } | 33 | } |
| 34 | + | ||
| 35 | + try{ | ||
| 36 | + //闵行运管所,直接打开地图页面 | ||
| 37 | + if(user.getRoles().size() == 1){ | ||
| 38 | + for(Role role : user.getRoles()){ | ||
| 39 | + if(role.getCodeName().equals("MH_YGS")){ | ||
| 40 | + // 直接重定向 | ||
| 41 | + response.sendRedirect("/pages/mapmonitor/alone/wrap.html"); | ||
| 42 | + return null; | ||
| 43 | + } | ||
| 44 | + } | ||
| 45 | + } | ||
| 46 | + }catch (Exception e){ | ||
| 47 | + logger.error("", e); | ||
| 48 | + } | ||
| 49 | + | ||
| 26 | //正常线调主页 | 50 | //正常线调主页 |
| 27 | - else | ||
| 28 | - mv.setViewName("/real_control_v2/main.html"); | 51 | + mv.setViewName("/real_control_v2/main.html"); |
| 29 | return mv; | 52 | return mv; |
| 30 | } | 53 | } |
| 31 | } | 54 | } |
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
| @@ -35,6 +35,11 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -35,6 +35,11 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 35 | return scheduleRealInfoService.findByLines(lines); | 35 | return scheduleRealInfoService.findByLines(lines); |
| 36 | } | 36 | } |
| 37 | 37 | ||
| 38 | + @RequestMapping(value = "/car") | ||
| 39 | + public List<ScheduleRealInfo> findByCar(String nbbm){ | ||
| 40 | + return dayOfSchedule.findByNbbm(nbbm); | ||
| 41 | + } | ||
| 42 | + | ||
| 38 | /** | 43 | /** |
| 39 | * | 44 | * |
| 40 | * @Title: outgoAdjust @Description: TODO(待发调整) @param @param id | 45 | * @Title: outgoAdjust @Description: TODO(待发调整) @param @param id |
| @@ -279,13 +284,13 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -279,13 +284,13 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 279 | return scheduleRealInfoService.queryUserInfoPx(line, date,state,type); | 284 | return scheduleRealInfoService.queryUserInfoPx(line, date,state,type); |
| 280 | } | 285 | } |
| 281 | 286 | ||
| 282 | - @RequestMapping(value = "/exportWaybill") | 287 | + @RequestMapping(value = "/exportWaybill",method = RequestMethod.GET) |
| 283 | public List<ScheduleRealInfo> exportWaybill(@RequestParam String jName, @RequestParam String clZbh, | 288 | public List<ScheduleRealInfo> exportWaybill(@RequestParam String jName, @RequestParam String clZbh, |
| 284 | @RequestParam String lpName,@RequestParam String date,@RequestParam String line) { | 289 | @RequestParam String lpName,@RequestParam String date,@RequestParam String line) { |
| 285 | return scheduleRealInfoService.exportWaybill(jName, clZbh, lpName,date,line); | 290 | return scheduleRealInfoService.exportWaybill(jName, clZbh, lpName,date,line); |
| 286 | } | 291 | } |
| 287 | 292 | ||
| 288 | - @RequestMapping(value = "/exportWaybillQp") | 293 | + @RequestMapping(value = "/exportWaybillQp",method = RequestMethod.GET) |
| 289 | public List<ScheduleRealInfo> exportWaybillQp(@RequestParam String clZbh | 294 | public List<ScheduleRealInfo> exportWaybillQp(@RequestParam String clZbh |
| 290 | ,@RequestParam String date,@RequestParam String line) { | 295 | ,@RequestParam String date,@RequestParam String line) { |
| 291 | return scheduleRealInfoService.exportWaybillQp( clZbh, date,line); | 296 | return scheduleRealInfoService.exportWaybillQp( clZbh, date,line); |
| @@ -308,13 +313,13 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -308,13 +313,13 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 308 | return scheduleRealInfoService.findLine(line); | 313 | return scheduleRealInfoService.findLine(line); |
| 309 | } | 314 | } |
| 310 | 315 | ||
| 311 | - @RequestMapping(value="/findKMBC") | 316 | + @RequestMapping(value="/findKMBC",method = RequestMethod.GET) |
| 312 | public Map<String,Object> findKMBC(@RequestParam String jName,@RequestParam String clZbh,@RequestParam String lpName | 317 | public Map<String,Object> findKMBC(@RequestParam String jName,@RequestParam String clZbh,@RequestParam String lpName |
| 313 | ,@RequestParam String date,@RequestParam String line){ | 318 | ,@RequestParam String date,@RequestParam String line){ |
| 314 | return scheduleRealInfoService.findKMBC(jName, clZbh,lpName,date,line); | 319 | return scheduleRealInfoService.findKMBC(jName, clZbh,lpName,date,line); |
| 315 | } | 320 | } |
| 316 | 321 | ||
| 317 | - @RequestMapping(value="/findKMBCQp") | 322 | + @RequestMapping(value="/findKMBCQp",method = RequestMethod.GET) |
| 318 | public Map<String,Object> findKMBCQp(@RequestParam String clZbh | 323 | public Map<String,Object> findKMBCQp(@RequestParam String clZbh |
| 319 | ,@RequestParam String date,@RequestParam String line){ | 324 | ,@RequestParam String date,@RequestParam String line){ |
| 320 | return scheduleRealInfoService.findKMBCQp(clZbh,date,line); | 325 | return scheduleRealInfoService.findKMBCQp(clZbh,date,line); |
| @@ -344,13 +349,13 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -344,13 +349,13 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 344 | * @param lpName 路牌 | 349 | * @param lpName 路牌 |
| 345 | * @return | 350 | * @return |
| 346 | */ | 351 | */ |
| 347 | - @RequestMapping(value="/queryListWaybill") | 352 | + @RequestMapping(value="/queryListWaybill",method = RequestMethod.GET) |
| 348 | public List<ScheduleRealInfo> queryListWaybill(@RequestParam String jName,@RequestParam String clZbh,@RequestParam String lpName | 353 | public List<ScheduleRealInfo> queryListWaybill(@RequestParam String jName,@RequestParam String clZbh,@RequestParam String lpName |
| 349 | ,@RequestParam String date,@RequestParam String line){ | 354 | ,@RequestParam String date,@RequestParam String line){ |
| 350 | return scheduleRealInfoService.queryListWaybill(jName, clZbh,lpName,date,line); | 355 | return scheduleRealInfoService.queryListWaybill(jName, clZbh,lpName,date,line); |
| 351 | } | 356 | } |
| 352 | 357 | ||
| 353 | - @RequestMapping(value="/queryListWaybillQp") | 358 | + @RequestMapping(value="/queryListWaybillQp",method = RequestMethod.GET) |
| 354 | public List<ScheduleRealInfo> queryListWaybillQp(@RequestParam String clZbh, | 359 | public List<ScheduleRealInfo> queryListWaybillQp(@RequestParam String clZbh, |
| 355 | @RequestParam String date,@RequestParam String line){ | 360 | @RequestParam String date,@RequestParam String line){ |
| 356 | return scheduleRealInfoService.queryListWaybillQp(clZbh,date,line); | 361 | return scheduleRealInfoService.queryListWaybillQp(clZbh,date,line); |
| @@ -362,6 +367,12 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -362,6 +367,12 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 362 | return scheduleRealInfoService.statisticsDaily(line, date, xlName, type); | 367 | return scheduleRealInfoService.statisticsDaily(line, date, xlName, type); |
| 363 | } | 368 | } |
| 364 | 369 | ||
| 370 | + @RequestMapping(value="/statisticsDailyTj") | ||
| 371 | + public List<Map<String,Object>> statisticsDailyTj(@RequestParam String line, @RequestParam String date, | ||
| 372 | + @RequestParam String date2,@RequestParam String xlName, @RequestParam String type){ | ||
| 373 | + return scheduleRealInfoService.statisticsDailyTj(line, date,date2, xlName, type); | ||
| 374 | + } | ||
| 375 | + | ||
| 365 | @RequestMapping(value="/MapById",method = RequestMethod.GET) | 376 | @RequestMapping(value="/MapById",method = RequestMethod.GET) |
| 366 | public Map<String, Object> MapById(@RequestParam("id") Long id){ | 377 | public Map<String, Object> MapById(@RequestParam("id") Long id){ |
| 367 | return scheduleRealInfoService.MapById(id); | 378 | return scheduleRealInfoService.MapById(id); |
| @@ -457,7 +468,7 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -457,7 +468,7 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 457 | return scheduleRealInfoService.scheduleDailyExport(map); | 468 | return scheduleRealInfoService.scheduleDailyExport(map); |
| 458 | } | 469 | } |
| 459 | 470 | ||
| 460 | - @RequestMapping(value = "exportWaybillMore", method = RequestMethod.POST) | 471 | + @RequestMapping(value = "exportWaybillMore", method = RequestMethod.GET) |
| 461 | public Map<String, Object> exportWaybillMore(@RequestParam Map<String, Object> map){ | 472 | public Map<String, Object> exportWaybillMore(@RequestParam Map<String, Object> map){ |
| 462 | return scheduleRealInfoService.exportWaybillMore(map); | 473 | return scheduleRealInfoService.exportWaybillMore(map); |
| 463 | } | 474 | } |
src/main/java/com/bsth/controller/realcontrol/ServiceDataInterface.java
0 → 100644
| 1 | +package com.bsth.controller.realcontrol; | ||
| 2 | + | ||
| 3 | +import com.bsth.data.schedule.DayOfSchedule; | ||
| 4 | +import com.bsth.entity.realcontrol.ScheduleRealInfo; | ||
| 5 | +import org.apache.commons.lang3.StringUtils; | ||
| 6 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 7 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
| 8 | +import org.springframework.web.bind.annotation.RequestParam; | ||
| 9 | +import org.springframework.web.bind.annotation.RestController; | ||
| 10 | + | ||
| 11 | +import java.util.ArrayList; | ||
| 12 | +import java.util.List; | ||
| 13 | + | ||
| 14 | +/** | ||
| 15 | + * 对外的营运数据接口,主要输出当日的数据 | ||
| 16 | + * Created by panzhao on 2017/3/15. | ||
| 17 | + */ | ||
| 18 | +@RestController | ||
| 19 | +@RequestMapping("/companyService") | ||
| 20 | +public class ServiceDataInterface { | ||
| 21 | + | ||
| 22 | + private final static String SECRE_KEY = "dVPHJkWUt5FhMT7jrM2dLV7QvlHAmZFd42rs1P0usBx8A7HZki"; | ||
| 23 | + | ||
| 24 | + @Autowired | ||
| 25 | + DayOfSchedule dayOfSchedule; | ||
| 26 | + | ||
| 27 | + @RequestMapping("/getCurrentDayPlan") | ||
| 28 | + public List<ScheduleRealInfo> getCurrentDayPlan( | ||
| 29 | + @RequestParam String companyId, | ||
| 30 | + @RequestParam String workId, | ||
| 31 | + @RequestParam String secretKey) { | ||
| 32 | + | ||
| 33 | + if (StringUtils.isEmpty(secretKey) || !secretKey.equals(SECRE_KEY)) | ||
| 34 | + return null; | ||
| 35 | + | ||
| 36 | + List<ScheduleRealInfo> all = new ArrayList<>(dayOfSchedule.findAll()), rs = new ArrayList<>(); | ||
| 37 | + for (ScheduleRealInfo sch : all) { | ||
| 38 | + if (sch.getGsBm() != null | ||
| 39 | + && sch.getGsBm().equals(companyId) | ||
| 40 | + && sch.getjGh().equals(workId)) { | ||
| 41 | + rs.add(sch); | ||
| 42 | + } | ||
| 43 | + } | ||
| 44 | + return rs; | ||
| 45 | + } | ||
| 46 | + | ||
| 47 | + @RequestMapping("/returnCCInfo") | ||
| 48 | + public List<ScheduleRealInfo> returnCCInfo(@RequestParam String companyId, @RequestParam String secretKey){ | ||
| 49 | + if (StringUtils.isEmpty(secretKey) || !secretKey.equals(SECRE_KEY)) | ||
| 50 | + return null; | ||
| 51 | + | ||
| 52 | + | ||
| 53 | + List<ScheduleRealInfo> all = new ArrayList<>(dayOfSchedule.findAll()), rs = new ArrayList<>(); | ||
| 54 | + for (ScheduleRealInfo sch : all) { | ||
| 55 | + | ||
| 56 | + if (sch.getBcType().equals("out") | ||
| 57 | + && sch.getGsBm() != null | ||
| 58 | + && sch.getGsBm().equals(companyId)) { | ||
| 59 | + rs.add(sch); | ||
| 60 | + } | ||
| 61 | + } | ||
| 62 | + return rs; | ||
| 63 | + } | ||
| 64 | + | ||
| 65 | + @RequestMapping("/returnJCInfo") | ||
| 66 | + public List<ScheduleRealInfo> returnJCInfo(@RequestParam String companyId, @RequestParam String secretKey){ | ||
| 67 | + if (StringUtils.isEmpty(secretKey) || !secretKey.equals(SECRE_KEY)) | ||
| 68 | + return null; | ||
| 69 | + | ||
| 70 | + | ||
| 71 | + List<ScheduleRealInfo> all = new ArrayList<>(dayOfSchedule.findAll()), rs = new ArrayList<>(); | ||
| 72 | + for (ScheduleRealInfo sch : all) { | ||
| 73 | + if (sch.getBcType().equals("in") | ||
| 74 | + && sch.getGsBm() != null | ||
| 75 | + && sch.getGsBm().equals(companyId)) { | ||
| 76 | + rs.add(sch); | ||
| 77 | + } | ||
| 78 | + } | ||
| 79 | + return rs; | ||
| 80 | + } | ||
| 81 | +} |
src/main/java/com/bsth/controller/realcontrol/dto/LpData.java
| @@ -22,7 +22,7 @@ public class LpData { | @@ -22,7 +22,7 @@ public class LpData { | ||
| 22 | this.zdzName = sch.getZdzName(); | 22 | this.zdzName = sch.getZdzName(); |
| 23 | } | 23 | } |
| 24 | 24 | ||
| 25 | - public void appendTo(ScheduleRealInfo sch, int type, boolean changeRealTime) { | 25 | + public void appendTo(ScheduleRealInfo sch, int type) { |
| 26 | 26 | ||
| 27 | if (type == 0) { | 27 | if (type == 0) { |
| 28 | //只换人 | 28 | //只换人 |
| @@ -33,11 +33,11 @@ public class LpData { | @@ -33,11 +33,11 @@ public class LpData { | ||
| 33 | } else if (type == 1) { | 33 | } else if (type == 1) { |
| 34 | //只换车 | 34 | //只换车 |
| 35 | sch.setClZbh(this.nbbm); | 35 | sch.setClZbh(this.nbbm); |
| 36 | - | ||
| 37 | - //换实际时间 | 36 | + changeRealTime(sch); |
| 37 | + /*//换实际时间 | ||
| 38 | if(changeRealTime){ | 38 | if(changeRealTime){ |
| 39 | changeRealTime(sch); | 39 | changeRealTime(sch); |
| 40 | - } | 40 | + }*/ |
| 41 | 41 | ||
| 42 | } else if (type == 2) { | 42 | } else if (type == 2) { |
| 43 | //换人并换车 | 43 | //换人并换车 |
| @@ -48,9 +48,9 @@ public class LpData { | @@ -48,9 +48,9 @@ public class LpData { | ||
| 48 | sch.setClZbh(this.nbbm); | 48 | sch.setClZbh(this.nbbm); |
| 49 | 49 | ||
| 50 | //换实际时间 | 50 | //换实际时间 |
| 51 | - if(changeRealTime){ | 51 | + //if(changeRealTime){ |
| 52 | changeRealTime(sch); | 52 | changeRealTime(sch); |
| 53 | - } | 53 | + //} |
| 54 | } | 54 | } |
| 55 | } | 55 | } |
| 56 | 56 |
src/main/java/com/bsth/data/schedule/DayOfSchedule.java
| @@ -46,7 +46,7 @@ public class DayOfSchedule implements CommandLineRunner { | @@ -46,7 +46,7 @@ public class DayOfSchedule implements CommandLineRunner { | ||
| 46 | 46 | ||
| 47 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 47 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 48 | 48 | ||
| 49 | - //按线路分组的 “计划” 排班数据 | 49 | + //按线路分组的 “原始计划” 排班数据 |
| 50 | public static Map<String, List<SchedulePlanInfo>> schedulePlanMap; | 50 | public static Map<String, List<SchedulePlanInfo>> schedulePlanMap; |
| 51 | 51 | ||
| 52 | // 按车辆分组的班次数据 | 52 | // 按车辆分组的班次数据 |
| @@ -378,9 +378,11 @@ public class DayOfSchedule implements CommandLineRunner { | @@ -378,9 +378,11 @@ public class DayOfSchedule implements CommandLineRunner { | ||
| 378 | sch.setZdsj(fmtHHmm.print(fmtHHmm.parseMillis(sch.getFcsj()) + (sch.getBcsj() * 60 * 1000))); | 378 | sch.setZdsj(fmtHHmm.print(fmtHHmm.parseMillis(sch.getFcsj()) + (sch.getBcsj() * 60 * 1000))); |
| 379 | sch.setLate(false); | 379 | sch.setLate(false); |
| 380 | } | 380 | } |
| 381 | + | ||
| 382 | + sch.setJhlcOrig(sch.getJhlc()); | ||
| 381 | //计划里程为0,设置NULL | 383 | //计划里程为0,设置NULL |
| 382 | - if (sch.getJhlc() != null && sch.getJhlc() == 0) | ||
| 383 | - sch.setJhlc(null); | 384 | + //if (sch.getJhlc() != null && sch.getJhlc() == 0) |
| 385 | + // sch.setJhlc(null); | ||
| 384 | } | 386 | } |
| 385 | } catch (Exception e) { | 387 | } catch (Exception e) { |
| 386 | logger.error("", e); | 388 | logger.error("", e); |
| @@ -492,6 +494,9 @@ public class DayOfSchedule implements CommandLineRunner { | @@ -492,6 +494,9 @@ public class DayOfSchedule implements CommandLineRunner { | ||
| 492 | if (config != null) | 494 | if (config != null) |
| 493 | outConfig = config.getOutConfig(); | 495 | outConfig = config.getOutConfig(); |
| 494 | 496 | ||
| 497 | + //限定出站既出场的停车场 | ||
| 498 | + String park = config.getTwinsPark(); | ||
| 499 | + boolean limitPark = StringUtils.isNotEmpty(park); | ||
| 495 | boolean flag = false; | 500 | boolean flag = false; |
| 496 | ScheduleRealInfo next = null; | 501 | ScheduleRealInfo next = null; |
| 497 | for (ScheduleRealInfo temp : list) { | 502 | for (ScheduleRealInfo temp : list) { |
| @@ -504,7 +509,8 @@ public class DayOfSchedule implements CommandLineRunner { | @@ -504,7 +509,8 @@ public class DayOfSchedule implements CommandLineRunner { | ||
| 504 | continue; | 509 | continue; |
| 505 | 510 | ||
| 506 | //出站既出场,忽略出场班次 | 511 | //出站既出场,忽略出场班次 |
| 507 | - if (outConfig == 2 && temp.getBcType().equals("out")) | 512 | + if (outConfig == 2 && temp.getBcType().equals("out") |
| 513 | + && (!limitPark || park.equals(temp.getQdzCode()))) | ||
| 508 | continue; | 514 | continue; |
| 509 | 515 | ||
| 510 | if (flag) { | 516 | if (flag) { |
| @@ -527,6 +533,9 @@ public class DayOfSchedule implements CommandLineRunner { | @@ -527,6 +533,9 @@ public class DayOfSchedule implements CommandLineRunner { | ||
| 527 | if (config != null) | 533 | if (config != null) |
| 528 | outConfig = config.getOutConfig(); | 534 | outConfig = config.getOutConfig(); |
| 529 | 535 | ||
| 536 | + //限定出站既出场的停车场 | ||
| 537 | + String park = config.getTwinsPark(); | ||
| 538 | + boolean limitPark = StringUtils.isNotEmpty(park); | ||
| 530 | boolean flag = false; | 539 | boolean flag = false; |
| 531 | ScheduleRealInfo next = null; | 540 | ScheduleRealInfo next = null; |
| 532 | for (ScheduleRealInfo temp : list) { | 541 | for (ScheduleRealInfo temp : list) { |
| @@ -539,7 +548,8 @@ public class DayOfSchedule implements CommandLineRunner { | @@ -539,7 +548,8 @@ public class DayOfSchedule implements CommandLineRunner { | ||
| 539 | continue; | 548 | continue; |
| 540 | 549 | ||
| 541 | //出站既出场,忽略出场班次 | 550 | //出站既出场,忽略出场班次 |
| 542 | - if (outConfig == 2 && temp.getBcType().equals("out")) | 551 | + if (outConfig == 2 && temp.getBcType().equals("out") |
| 552 | + && (!limitPark || park.equals(temp.getQdzCode()))) | ||
| 543 | continue; | 553 | continue; |
| 544 | 554 | ||
| 545 | if (flag && temp.getXlDir().equals(sch.getXlDir())) { | 555 | if (flag && temp.getXlDir().equals(sch.getXlDir())) { |
src/main/java/com/bsth/entity/oil/Cdl.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 com.bsth.data.BasicData; | ||
| 12 | + | ||
| 13 | +@Entity | ||
| 14 | +@Table(name = "bsth_c_cdl") | ||
| 15 | +public class Cdl { | ||
| 16 | + @Id | ||
| 17 | + @GeneratedValue | ||
| 18 | + private Integer id; | ||
| 19 | + | ||
| 20 | + private String nbbm; | ||
| 21 | + | ||
| 22 | + //存电量 | ||
| 23 | + private Double cdl; | ||
| 24 | + | ||
| 25 | + private Date updatetime; | ||
| 26 | + | ||
| 27 | + //恒定存电 | ||
| 28 | + private Double clcd; | ||
| 29 | + //公司代码 | ||
| 30 | + private String gsdm; | ||
| 31 | + | ||
| 32 | + @Transient | ||
| 33 | + private String gsname; | ||
| 34 | + | ||
| 35 | + @Transient | ||
| 36 | + private String fgsname; | ||
| 37 | + | ||
| 38 | + //分公司代码 | ||
| 39 | + private String fgsdm; | ||
| 40 | + | ||
| 41 | + public Integer getId() { | ||
| 42 | + return id; | ||
| 43 | + } | ||
| 44 | + | ||
| 45 | + public void setId(Integer id) { | ||
| 46 | + this.id = id; | ||
| 47 | + } | ||
| 48 | + | ||
| 49 | + public String getNbbm() { | ||
| 50 | + return nbbm; | ||
| 51 | + } | ||
| 52 | + | ||
| 53 | + public void setNbbm(String nbbm) { | ||
| 54 | + this.nbbm = nbbm; | ||
| 55 | + } | ||
| 56 | + | ||
| 57 | + | ||
| 58 | + public Double getCdl() { | ||
| 59 | + return cdl; | ||
| 60 | + } | ||
| 61 | + | ||
| 62 | + public void setCdl(Double cdl) { | ||
| 63 | + this.cdl = cdl; | ||
| 64 | + } | ||
| 65 | + | ||
| 66 | + public Double getClcd() { | ||
| 67 | + return clcd; | ||
| 68 | + } | ||
| 69 | + | ||
| 70 | + public void setClcd(Double clcd) { | ||
| 71 | + this.clcd = clcd; | ||
| 72 | + } | ||
| 73 | + | ||
| 74 | + public Date getUpdatetime() { | ||
| 75 | + return updatetime; | ||
| 76 | + } | ||
| 77 | + | ||
| 78 | + public void setUpdatetime(Date updatetime) { | ||
| 79 | + this.updatetime = updatetime; | ||
| 80 | + } | ||
| 81 | + | ||
| 82 | + | ||
| 83 | + public String getGsdm(){ | ||
| 84 | + return gsdm; | ||
| 85 | + } | ||
| 86 | + | ||
| 87 | + public void setGsdm(String gsdm){ | ||
| 88 | + this.gsdm=gsdm; | ||
| 89 | + } | ||
| 90 | + | ||
| 91 | + public String getFgsdm() { | ||
| 92 | + return fgsdm; | ||
| 93 | + } | ||
| 94 | + | ||
| 95 | + public void setFgsdm(String fgsdm) { | ||
| 96 | + this.fgsdm = fgsdm; | ||
| 97 | + } | ||
| 98 | + | ||
| 99 | + public String getGsname() { | ||
| 100 | + return BasicData.businessCodeNameMap.get(this.gsdm); | ||
| 101 | + } | ||
| 102 | + | ||
| 103 | + public void setGsname(String gsname) { | ||
| 104 | + this.gsname = gsname; | ||
| 105 | + } | ||
| 106 | + | ||
| 107 | + public String getFgsname() { | ||
| 108 | + return BasicData.businessFgsCodeNameMap.get(this.fgsdm+"_"+this.gsdm); | ||
| 109 | + } | ||
| 110 | + | ||
| 111 | + public void setFgsname(String fgsname) { | ||
| 112 | + this.fgsname = fgsname; | ||
| 113 | + } | ||
| 114 | + | ||
| 115 | + | ||
| 116 | +} |
src/main/java/com/bsth/entity/oil/Ylb.java
| @@ -30,7 +30,7 @@ public class Ylb { | @@ -30,7 +30,7 @@ public class Ylb { | ||
| 30 | private Double jzlc=0.0; | 30 | private Double jzlc=0.0; |
| 31 | private Double czyl=0.0; | 31 | private Double czyl=0.0; |
| 32 | private Double jzyl=0.0; | 32 | private Double jzyl=0.0; |
| 33 | - private Double jzl; | 33 | + private Double jzl=0.0; |
| 34 | private int sfkt; | 34 | private int sfkt; |
| 35 | private String jhsj; | 35 | private String jhsj; |
| 36 | private Double yh=0.0; | 36 | private Double yh=0.0; |
src/main/java/com/bsth/entity/realcontrol/LineConfig.java
| @@ -47,6 +47,9 @@ public class LineConfig { | @@ -47,6 +47,9 @@ public class LineConfig { | ||
| 47 | /** 出场时间设置 0:真实出场(设备离开缓冲区时间) 1:请求出场时间 2:出站即出场 */ | 47 | /** 出场时间设置 0:真实出场(设备离开缓冲区时间) 1:请求出场时间 2:出站即出场 */ |
| 48 | private int outConfig; | 48 | private int outConfig; |
| 49 | 49 | ||
| 50 | + /** 出站既出场 对应的停车场 */ | ||
| 51 | + private String twinsPark; | ||
| 52 | + | ||
| 50 | /** 短语模板 , 号分隔多个 */ | 53 | /** 短语模板 , 号分隔多个 */ |
| 51 | private String phraseTemps; | 54 | private String phraseTemps; |
| 52 | 55 | ||
| @@ -208,4 +211,12 @@ public class LineConfig { | @@ -208,4 +211,12 @@ public class LineConfig { | ||
| 208 | public void setDownOutDiff(int downOutDiff) { | 211 | public void setDownOutDiff(int downOutDiff) { |
| 209 | this.downOutDiff = downOutDiff; | 212 | this.downOutDiff = downOutDiff; |
| 210 | } | 213 | } |
| 214 | + | ||
| 215 | + public String getTwinsPark() { | ||
| 216 | + return twinsPark; | ||
| 217 | + } | ||
| 218 | + | ||
| 219 | + public void setTwinsPark(String twinsPark) { | ||
| 220 | + this.twinsPark = twinsPark; | ||
| 221 | + } | ||
| 211 | } | 222 | } |
src/main/java/com/bsth/entity/realcontrol/OilStationSociety.java
0 → 100644
| 1 | +package com.bsth.entity.realcontrol; | ||
| 2 | + | ||
| 3 | +import javax.persistence.Entity; | ||
| 4 | +import javax.persistence.Id; | ||
| 5 | +import javax.persistence.Table; | ||
| 6 | + | ||
| 7 | +/** | ||
| 8 | + * 社会加油站 | ||
| 9 | + * Created by panzhao on 2017/3/16. | ||
| 10 | + */ | ||
| 11 | +@Entity | ||
| 12 | +@Table(name = "bsth_c_oil_station") | ||
| 13 | +public class OilStationSociety { | ||
| 14 | + | ||
| 15 | + @Id | ||
| 16 | + private String lineCode; | ||
| 17 | + | ||
| 18 | + /** | ||
| 19 | + * 加油站名称 | ||
| 20 | + */ | ||
| 21 | + private String stationName; | ||
| 22 | + | ||
| 23 | + /** | ||
| 24 | + * 上行进场距离 | ||
| 25 | + */ | ||
| 26 | + private Double upInMile; | ||
| 27 | + /** | ||
| 28 | + * 上行出场距离 | ||
| 29 | + */ | ||
| 30 | + private Double upOutMile; | ||
| 31 | + | ||
| 32 | + /** | ||
| 33 | + * 下行进场距离 | ||
| 34 | + */ | ||
| 35 | + private Double downInMile; | ||
| 36 | + /** | ||
| 37 | + * 下行出场距离 | ||
| 38 | + */ | ||
| 39 | + private Double downOutMile; | ||
| 40 | + | ||
| 41 | + | ||
| 42 | + /** | ||
| 43 | + * 上行进场时间 分钟 | ||
| 44 | + */ | ||
| 45 | + private int upInTime; | ||
| 46 | + /** | ||
| 47 | + * 上行出场时间 分钟 | ||
| 48 | + */ | ||
| 49 | + private int upOutTime; | ||
| 50 | + | ||
| 51 | + /** | ||
| 52 | + * 下行进场时间 分钟 | ||
| 53 | + */ | ||
| 54 | + private int downInTime; | ||
| 55 | + /** | ||
| 56 | + * 下行出场时间 分钟 | ||
| 57 | + */ | ||
| 58 | + private int downOutTime; | ||
| 59 | + | ||
| 60 | + | ||
| 61 | + public String getLineCode() { | ||
| 62 | + return lineCode; | ||
| 63 | + } | ||
| 64 | + | ||
| 65 | + public void setLineCode(String lineCode) { | ||
| 66 | + this.lineCode = lineCode; | ||
| 67 | + } | ||
| 68 | + | ||
| 69 | + public String getStationName() { | ||
| 70 | + return stationName; | ||
| 71 | + } | ||
| 72 | + | ||
| 73 | + public void setStationName(String stationName) { | ||
| 74 | + this.stationName = stationName; | ||
| 75 | + } | ||
| 76 | + | ||
| 77 | + public Double getUpInMile() { | ||
| 78 | + return upInMile; | ||
| 79 | + } | ||
| 80 | + | ||
| 81 | + public void setUpInMile(Double upInMile) { | ||
| 82 | + this.upInMile = upInMile; | ||
| 83 | + } | ||
| 84 | + | ||
| 85 | + public Double getUpOutMile() { | ||
| 86 | + return upOutMile; | ||
| 87 | + } | ||
| 88 | + | ||
| 89 | + public void setUpOutMile(Double upOutMile) { | ||
| 90 | + this.upOutMile = upOutMile; | ||
| 91 | + } | ||
| 92 | + | ||
| 93 | + public Double getDownInMile() { | ||
| 94 | + return downInMile; | ||
| 95 | + } | ||
| 96 | + | ||
| 97 | + public void setDownInMile(Double downInMile) { | ||
| 98 | + this.downInMile = downInMile; | ||
| 99 | + } | ||
| 100 | + | ||
| 101 | + public Double getDownOutMile() { | ||
| 102 | + return downOutMile; | ||
| 103 | + } | ||
| 104 | + | ||
| 105 | + public void setDownOutMile(Double downOutMile) { | ||
| 106 | + this.downOutMile = downOutMile; | ||
| 107 | + } | ||
| 108 | + | ||
| 109 | + public int getUpInTime() { | ||
| 110 | + return upInTime; | ||
| 111 | + } | ||
| 112 | + | ||
| 113 | + public void setUpInTime(int upInTime) { | ||
| 114 | + this.upInTime = upInTime; | ||
| 115 | + } | ||
| 116 | + | ||
| 117 | + public int getUpOutTime() { | ||
| 118 | + return upOutTime; | ||
| 119 | + } | ||
| 120 | + | ||
| 121 | + public void setUpOutTime(int upOutTime) { | ||
| 122 | + this.upOutTime = upOutTime; | ||
| 123 | + } | ||
| 124 | + | ||
| 125 | + public int getDownInTime() { | ||
| 126 | + return downInTime; | ||
| 127 | + } | ||
| 128 | + | ||
| 129 | + public void setDownInTime(int downInTime) { | ||
| 130 | + this.downInTime = downInTime; | ||
| 131 | + } | ||
| 132 | + | ||
| 133 | + public int getDownOutTime() { | ||
| 134 | + return downOutTime; | ||
| 135 | + } | ||
| 136 | + | ||
| 137 | + public void setDownOutTime(int downOutTime) { | ||
| 138 | + this.downOutTime = downOutTime; | ||
| 139 | + } | ||
| 140 | +} |
src/main/java/com/bsth/entity/realcontrol/ScheduleRealInfo.java
| @@ -88,7 +88,10 @@ public class ScheduleRealInfo { | @@ -88,7 +88,10 @@ public class ScheduleRealInfo { | ||
| 88 | /** 计划里程 */ | 88 | /** 计划里程 */ |
| 89 | private Double jhlc; | 89 | private Double jhlc; |
| 90 | 90 | ||
| 91 | - /** 实际里程 */ | 91 | + /** 原始计划里程 (原计调的数据) */ |
| 92 | + private Double jhlcOrig; | ||
| 93 | + | ||
| 94 | + /** 实际里程 这个字段被废弃*/ | ||
| 92 | private Double realMileage; | 95 | private Double realMileage; |
| 93 | 96 | ||
| 94 | /** 实际里程 */ | 97 | /** 实际里程 */ |
| @@ -460,6 +463,9 @@ public class ScheduleRealInfo { | @@ -460,6 +463,9 @@ public class ScheduleRealInfo { | ||
| 460 | 463 | ||
| 461 | public void setJhlc(Double jhlc) { | 464 | public void setJhlc(Double jhlc) { |
| 462 | this.jhlc = jhlc; | 465 | this.jhlc = jhlc; |
| 466 | + //临加班次 计划公里 和 实际计划公里一样 | ||
| 467 | + if(this.isSflj()) | ||
| 468 | + this.setJhlcOrig(this.getJhlc()); | ||
| 463 | } | 469 | } |
| 464 | 470 | ||
| 465 | public String getSjlc() { | 471 | public String getSjlc() { |
| @@ -623,6 +629,11 @@ public class ScheduleRealInfo { | @@ -623,6 +629,11 @@ public class ScheduleRealInfo { | ||
| 623 | } | 629 | } |
| 624 | } | 630 | } |
| 625 | 631 | ||
| 632 | + @Override | ||
| 633 | + public int hashCode() { | ||
| 634 | + return ("schedule_" + this.id).hashCode(); | ||
| 635 | + } | ||
| 636 | + | ||
| 626 | public String getQdzArrDateJH() { | 637 | public String getQdzArrDateJH() { |
| 627 | return qdzArrDatejh; | 638 | return qdzArrDatejh; |
| 628 | } | 639 | } |
| @@ -757,6 +768,7 @@ public class ScheduleRealInfo { | @@ -757,6 +768,7 @@ public class ScheduleRealInfo { | ||
| 757 | } | 768 | } |
| 758 | 769 | ||
| 759 | public void destroy(){ | 770 | public void destroy(){ |
| 771 | + this.jhlc = 0.0; | ||
| 760 | this.status = -1; | 772 | this.status = -1; |
| 761 | } | 773 | } |
| 762 | 774 | ||
| @@ -845,4 +857,22 @@ public class ScheduleRealInfo { | @@ -845,4 +857,22 @@ public class ScheduleRealInfo { | ||
| 845 | public void setRealMileage(Double realMileage) { | 857 | public void setRealMileage(Double realMileage) { |
| 846 | this.realMileage = realMileage; | 858 | this.realMileage = realMileage; |
| 847 | } | 859 | } |
| 860 | + | ||
| 861 | + public Double getJhlcOrig() { | ||
| 862 | + return jhlcOrig; | ||
| 863 | + } | ||
| 864 | + | ||
| 865 | + public void setJhlcOrig(Double jhlcOrig) { | ||
| 866 | + this.jhlcOrig = jhlcOrig; | ||
| 867 | + } | ||
| 868 | + | ||
| 869 | + public void reCalcLate() { | ||
| 870 | + if(this.getStatus() == 0 | ||
| 871 | + && this.getFcsjActual() == null | ||
| 872 | + && this.dfsjT < System.currentTimeMillis()){ | ||
| 873 | + this.setLate(true); | ||
| 874 | + } | ||
| 875 | + else | ||
| 876 | + this.setLate(false); | ||
| 877 | + } | ||
| 848 | } | 878 | } |
src/main/java/com/bsth/entity/schedule/CarConfigInfo.java
| 1 | package com.bsth.entity.schedule; | 1 | package com.bsth.entity.schedule; |
| 2 | 2 | ||
| 3 | +import com.bsth.entity.CarPark; | ||
| 3 | import com.bsth.entity.Cars; | 4 | import com.bsth.entity.Cars; |
| 4 | import com.bsth.entity.Line; | 5 | import com.bsth.entity.Line; |
| 5 | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; | 6 | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; |
| @@ -47,9 +48,16 @@ public class CarConfigInfo extends BEntity implements Serializable { | @@ -47,9 +48,16 @@ public class CarConfigInfo extends BEntity implements Serializable { | ||
| 47 | private Date qyrq; | 48 | private Date qyrq; |
| 48 | /** 终止日期 */ | 49 | /** 终止日期 */ |
| 49 | private Date zzrq; | 50 | private Date zzrq; |
| 51 | + | ||
| 52 | + | ||
| 50 | @Column(nullable = false) | 53 | @Column(nullable = false) |
| 51 | /** 停车点(TODO:这个不知道是否要关联)*/ | 54 | /** 停车点(TODO:这个不知道是否要关联)*/ |
| 52 | private String tcd; | 55 | private String tcd; |
| 56 | + | ||
| 57 | + /** 停车场关联(出场,进场班次会关联停车场) */ | ||
| 58 | + @ManyToOne(cascade = CascadeType.DETACH, fetch = FetchType.LAZY) | ||
| 59 | + private CarPark tcc; | ||
| 60 | + | ||
| 53 | /** 受否切换 0或者1(TODO:不懂,貌似喝历史配车有关) */ | 61 | /** 受否切换 0或者1(TODO:不懂,貌似喝历史配车有关) */ |
| 54 | @Column(nullable = false) | 62 | @Column(nullable = false) |
| 55 | private int isSwitch; | 63 | private int isSwitch; |
| @@ -248,4 +256,12 @@ public class CarConfigInfo extends BEntity implements Serializable { | @@ -248,4 +256,12 @@ public class CarConfigInfo extends BEntity implements Serializable { | ||
| 248 | public void setDownInSj(Double downInSj) { | 256 | public void setDownInSj(Double downInSj) { |
| 249 | this.downInSj = downInSj; | 257 | this.downInSj = downInSj; |
| 250 | } | 258 | } |
| 259 | + | ||
| 260 | + public CarPark getTcc() { | ||
| 261 | + return tcc; | ||
| 262 | + } | ||
| 263 | + | ||
| 264 | + public void setTcc(CarPark tcc) { | ||
| 265 | + this.tcc = tcc; | ||
| 266 | + } | ||
| 251 | } | 267 | } |
src/main/java/com/bsth/entity/schedule/SchedulePlanInfo.java
| @@ -160,7 +160,10 @@ public class SchedulePlanInfo { | @@ -160,7 +160,10 @@ public class SchedulePlanInfo { | ||
| 160 | Boolean isFb, | 160 | Boolean isFb, |
| 161 | CarConfigInfo carConfigInfo, | 161 | CarConfigInfo carConfigInfo, |
| 162 | List<EmployeeConfigInfo> employeeConfigInfoList, | 162 | List<EmployeeConfigInfo> employeeConfigInfoList, |
| 163 | - SchedulePlan schedulePlan) { | 163 | + SchedulePlan schedulePlan, |
| 164 | + boolean isFirstBc, // 是否第一个班次 | ||
| 165 | + boolean isLastBc // 是否最后一个班次 | ||
| 166 | + ) { | ||
| 164 | 167 | ||
| 165 | // TODO:关联的公司名称 | 168 | // TODO:关联的公司名称 |
| 166 | // TODO:关联的公司编码 | 169 | // TODO:关联的公司编码 |
| @@ -266,6 +269,47 @@ public class SchedulePlanInfo { | @@ -266,6 +269,47 @@ public class SchedulePlanInfo { | ||
| 266 | // 使用的时刻表名字 | 269 | // 使用的时刻表名字 |
| 267 | this.ttInfoName = ttInfoDetail.getTtinfo().getName(); | 270 | this.ttInfoName = ttInfoDetail.getTtinfo().getName(); |
| 268 | 271 | ||
| 272 | + // 使用车辆配置的停车场信息 | ||
| 273 | + String pzType = carConfigInfo.getPzType(); // 配置类型 | ||
| 274 | + if (pzType != null && !pzType.equals("BSY")) { | ||
| 275 | + if ("ZW".equals(pzType)) { // 只看早晚进出场 | ||
| 276 | + if (isFirstBc) { // 第一个班次是出场 | ||
| 277 | + this.qdz = carConfigInfo.getTcc().getId(); // 起点站-停车场id | ||
| 278 | + this.qdzCode = carConfigInfo.getTcc().getParkCode(); // 起点站-停车场code | ||
| 279 | + this.qdzName = carConfigInfo.getTcc().getParkName(); // 起点站-停车场name | ||
| 280 | + | ||
| 281 | + this.jhlc = "0".equals(this.xlDir) ? carConfigInfo.getUpOutLc() : carConfigInfo.getDownOutLc(); | ||
| 282 | + this.bcsj = "0".equals(this.xlDir) ? carConfigInfo.getUpOutSj().intValue() : carConfigInfo.getDownOutSj().intValue(); | ||
| 283 | + | ||
| 284 | + } else if (isLastBc) { // 最后一个班次是进场 | ||
| 285 | + this.zdz = carConfigInfo.getTcc().getId(); // 终点站-停车场id | ||
| 286 | + this.zdzCode = carConfigInfo.getTcc().getParkCode(); // 终点站-停车场code | ||
| 287 | + this.zdzName = carConfigInfo.getTcc().getParkName(); // 终点站-停车场name | ||
| 288 | + | ||
| 289 | + this.jhlc = "0".equals(this.xlDir) ? carConfigInfo.getUpInLc() : carConfigInfo.getDownInLc(); | ||
| 290 | + this.bcsj = "0".equals(this.xlDir) ? carConfigInfo.getUpInSj().intValue() : carConfigInfo.getDownInSj().intValue(); | ||
| 291 | + } | ||
| 292 | + | ||
| 293 | + } else if ("FS".equals(pzType)) { // 所有进出场 | ||
| 294 | + if ("out".equals(this.bcType)) { // 出场班次 | ||
| 295 | + this.qdz = carConfigInfo.getTcc().getId(); // 起点站-停车场id | ||
| 296 | + this.qdzCode = carConfigInfo.getTcc().getParkCode(); // 起点站-停车场code | ||
| 297 | + this.qdzName = carConfigInfo.getTcc().getParkName(); // 起点站-停车场name | ||
| 298 | + | ||
| 299 | + this.jhlc = "0".equals(this.xlDir) ? carConfigInfo.getUpOutLc() : carConfigInfo.getDownOutLc(); | ||
| 300 | + this.bcsj = "0".equals(this.xlDir) ? carConfigInfo.getUpOutSj().intValue() : carConfigInfo.getDownOutSj().intValue(); | ||
| 301 | + | ||
| 302 | + } else if ("in".equals(this.bcType)) { | ||
| 303 | + this.zdz = carConfigInfo.getTcc().getId(); // 终点站-停车场id | ||
| 304 | + this.zdzCode = carConfigInfo.getTcc().getParkCode(); // 终点站-停车场code | ||
| 305 | + this.zdzName = carConfigInfo.getTcc().getParkName(); // 终点站-停车场name | ||
| 306 | + | ||
| 307 | + this.jhlc = "0".equals(this.xlDir) ? carConfigInfo.getUpInLc() : carConfigInfo.getDownInLc(); | ||
| 308 | + this.bcsj = "0".equals(this.xlDir) ? carConfigInfo.getUpInSj().intValue() : carConfigInfo.getDownInSj().intValue(); | ||
| 309 | + } | ||
| 310 | + } | ||
| 311 | + } | ||
| 312 | + | ||
| 269 | } | 313 | } |
| 270 | 314 | ||
| 271 | 315 |
src/main/java/com/bsth/entity/schedule/rule/ScheduleRule1Flat.java
| @@ -71,7 +71,7 @@ public class ScheduleRule1Flat extends BEntity { | @@ -71,7 +71,7 @@ public class ScheduleRule1Flat extends BEntity { | ||
| 71 | @NotNull | 71 | @NotNull |
| 72 | private Integer ryStart; | 72 | private Integer ryStart; |
| 73 | 73 | ||
| 74 | - /** 翻班格式(TODO:这个用在车子上的,暂时不管)*/ | 74 | + /** 翻班格式(类似格式:1110011)*/ |
| 75 | private String fbgs; | 75 | private String fbgs; |
| 76 | 76 | ||
| 77 | public Long getId() { | 77 | public Long getId() { |
src/main/java/com/bsth/entity/search/PredicatesBuilder.java
| @@ -69,6 +69,11 @@ public class PredicatesBuilder { | @@ -69,6 +69,11 @@ public class PredicatesBuilder { | ||
| 69 | return cb.in(expression).value(list); | 69 | return cb.in(expression).value(list); |
| 70 | } | 70 | } |
| 71 | 71 | ||
| 72 | + | ||
| 73 | + public static Predicate ins(CriteriaBuilder cb,Path<?> expression, List<String> list){ | ||
| 74 | + return cb.in(expression).value(list); | ||
| 75 | + } | ||
| 76 | + | ||
| 72 | public static Predicate gt(CriteriaBuilder cb,Path<Number> expression, Object object){ | 77 | public static Predicate gt(CriteriaBuilder cb,Path<Number> expression, Object object){ |
| 73 | try { | 78 | try { |
| 74 | return cb.gt(expression, nf.parse(object.toString())); | 79 | return cb.gt(expression, nf.parse(object.toString())); |
src/main/java/com/bsth/entity/search/SearchOperator.java
src/main/java/com/bsth/entity/sys/RealControAuthority.java
src/main/java/com/bsth/filter/BaseFilter.java
| @@ -16,7 +16,7 @@ public abstract class BaseFilter implements Filter { | @@ -16,7 +16,7 @@ public abstract class BaseFilter implements Filter { | ||
| 16 | /** | 16 | /** |
| 17 | * 白名单 | 17 | * 白名单 |
| 18 | */ | 18 | */ |
| 19 | - private String[] whiteListURLs = { Constants.LOGIN_PAGE,Constants.CAPTCHA, | 19 | + private String[] whiteListURLs = { Constants.LOGIN_PAGE,Constants.CAPTCHA, Constants.SERVICE_INTERFACE, |
| 20 | Constants.ASSETS_URL, Constants.FAVICON_URL, Constants.METRONIC_URL, Constants.LOGIN, Constants.LOGIN_FAILURE, Constants.UPSTREAM_URL, Constants.XD_CHILD_PAGES, Constants.XD_REAL_GPS }; | 20 | Constants.ASSETS_URL, Constants.FAVICON_URL, Constants.METRONIC_URL, Constants.LOGIN, Constants.LOGIN_FAILURE, Constants.UPSTREAM_URL, Constants.XD_CHILD_PAGES, Constants.XD_REAL_GPS }; |
| 21 | 21 | ||
| 22 | @Override | 22 | @Override |
src/main/java/com/bsth/filter/ResourceFilter.java
| @@ -42,7 +42,6 @@ public class ResourceFilter extends BaseFilter { | @@ -42,7 +42,6 @@ public class ResourceFilter extends BaseFilter { | ||
| 42 | 42 | ||
| 43 | if (f.exists() && f.isFile()) { | 43 | if (f.exists() && f.isFile()) { |
| 44 | request.getRequestDispatcher("/?initFragment=" + joinParam(request)).forward(request, response); | 44 | request.getRequestDispatcher("/?initFragment=" + joinParam(request)).forward(request, response); |
| 45 | - ; | ||
| 46 | } else | 45 | } else |
| 47 | response.sendRedirect("/"); | 46 | response.sendRedirect("/"); |
| 48 | } | 47 | } |
src/main/java/com/bsth/repository/CarsRepository.java
| @@ -12,4 +12,7 @@ public interface CarsRepository extends BaseRepository<Cars, Integer>{ | @@ -12,4 +12,7 @@ public interface CarsRepository extends BaseRepository<Cars, Integer>{ | ||
| 12 | 12 | ||
| 13 | @Query(value="select s from Cars s where s.id in(select e.cl.id from CarConfigInfo e where e.xl.id = ?1) ") | 13 | @Query(value="select s from Cars s where s.id in(select e.cl.id from CarConfigInfo e where e.xl.id = ?1) ") |
| 14 | List<Cars> findCarsByLineId(Integer lineId); | 14 | List<Cars> findCarsByLineId(Integer lineId); |
| 15 | + | ||
| 16 | + @Query(value="select s from Cars s") | ||
| 17 | + List<Cars> findCars(); | ||
| 15 | } | 18 | } |
src/main/java/com/bsth/repository/oil/CdlRepository.java
0 → 100644
| 1 | +package com.bsth.repository.oil; | ||
| 2 | + | ||
| 3 | + | ||
| 4 | + | ||
| 5 | +import java.util.List; | ||
| 6 | + | ||
| 7 | +import org.springframework.data.jpa.repository.Modifying; | ||
| 8 | +import org.springframework.data.jpa.repository.Query; | ||
| 9 | +import org.springframework.stereotype.Repository; | ||
| 10 | +import org.springframework.transaction.annotation.Transactional; | ||
| 11 | + | ||
| 12 | +import com.bsth.entity.oil.Cdl; | ||
| 13 | +import com.bsth.entity.oil.Cyl; | ||
| 14 | +import com.bsth.repository.BaseRepository; | ||
| 15 | + | ||
| 16 | +@Repository | ||
| 17 | +public interface CdlRepository extends BaseRepository<Cdl, Integer>{ | ||
| 18 | + @Transactional | ||
| 19 | + @Modifying | ||
| 20 | + @Query(value="SELECT * FROM bsth_c_cdl ",nativeQuery=true) | ||
| 21 | + List<Cdl> obtainCdl(); | ||
| 22 | +} |
src/main/java/com/bsth/repository/oil/CylRepository.java
| @@ -15,6 +15,6 @@ import com.bsth.repository.BaseRepository; | @@ -15,6 +15,6 @@ import com.bsth.repository.BaseRepository; | ||
| 15 | public interface CylRepository extends BaseRepository<Cyl, Integer>{ | 15 | public interface CylRepository extends BaseRepository<Cyl, Integer>{ |
| 16 | @Transactional | 16 | @Transactional |
| 17 | @Modifying | 17 | @Modifying |
| 18 | - @Query(value="SELECT * FROM bsth_c_cyl ",nativeQuery=true) | ||
| 19 | - List<Cyl> obtainCyl(); | 18 | + @Query(value="SELECT * FROM bsth_c_cyl where nbbm like %?1% and gsdm like %?2%",nativeQuery=true) |
| 19 | + List<Cyl> obtainCyl(String nbbm,String gsdm); | ||
| 20 | } | 20 | } |
src/main/java/com/bsth/repository/oil/DlbRepository.java
| 1 | package com.bsth.repository.oil; | 1 | package com.bsth.repository.oil; |
| 2 | 2 | ||
| 3 | +import java.util.List; | ||
| 4 | + | ||
| 5 | +import org.springframework.data.jpa.repository.Modifying; | ||
| 6 | +import org.springframework.data.jpa.repository.Query; | ||
| 3 | import org.springframework.stereotype.Repository; | 7 | import org.springframework.stereotype.Repository; |
| 8 | +import org.springframework.transaction.annotation.Transactional; | ||
| 9 | + | ||
| 4 | import com.bsth.entity.oil.Dlb; | 10 | import com.bsth.entity.oil.Dlb; |
| 11 | +import com.bsth.entity.oil.Ylb; | ||
| 5 | import com.bsth.repository.BaseRepository; | 12 | import com.bsth.repository.BaseRepository; |
| 6 | 13 | ||
| 7 | @Repository | 14 | @Repository |
| 8 | public interface DlbRepository extends BaseRepository<Dlb, Integer>{ | 15 | public interface DlbRepository extends BaseRepository<Dlb, Integer>{ |
| 16 | + /** | ||
| 17 | + * 前一天DLB信息 | ||
| 18 | + * @param rq | ||
| 19 | + * @return | ||
| 20 | + */ | ||
| 21 | + @Transactional | ||
| 22 | + @Modifying | ||
| 23 | + @Query(value="SELECT a.* FROM bsth_c_dlb a where to_days(?1)-to_days(a.rq)=1" | ||
| 24 | + + " and jcsx=(select max(b.jcsx) from bsth_c_dlb b where a.nbbm=b.nbbm and " | ||
| 25 | + + " to_days(?1)-to_days(b.rq)=1 )",nativeQuery=true) | ||
| 26 | + List<Dlb> obtainYlbefore(String rq); | ||
| 27 | + /** | ||
| 28 | + * 当天DLB信息 | ||
| 29 | + * @param rq | ||
| 30 | + * @return | ||
| 31 | + */ | ||
| 32 | + @Transactional | ||
| 33 | + @Modifying | ||
| 34 | + @Query(value="SELECT * FROM bsth_c_dlb where to_days(?)=to_days(rq)",nativeQuery=true) | ||
| 35 | + List<Dlb> obtainDl(String rq); | ||
| 9 | 36 | ||
| 10 | } | 37 | } |
src/main/java/com/bsth/repository/oil/JdlRepository.java
| @@ -27,6 +27,12 @@ public interface JdlRepository extends BaseRepository<Jdl, Integer>{ | @@ -27,6 +27,12 @@ public interface JdlRepository extends BaseRepository<Jdl, Integer>{ | ||
| 27 | @Query(value="SELECT * FROM bsth_c_jdl where gs_bm = ?1 and fgs_bm = ?2 and rq = ?3 and nbbm like %?4%",nativeQuery=true) | 27 | @Query(value="SELECT * FROM bsth_c_jdl where gs_bm = ?1 and fgs_bm = ?2 and rq = ?3 and nbbm like %?4%",nativeQuery=true) |
| 28 | List<Jdl> query(String gsbm, String fgsbm, String rq, String nbbm); | 28 | List<Jdl> query(String gsbm, String fgsbm, String rq, String nbbm); |
| 29 | 29 | ||
| 30 | + | ||
| 31 | + @Transactional | ||
| 32 | + @Modifying | ||
| 33 | + @Query(value="SELECT * FROM bsth_c_jdl where rq = ?",nativeQuery=true) | ||
| 34 | + List<Jdl> JdlList( String rq); | ||
| 35 | + | ||
| 30 | @Transactional | 36 | @Transactional |
| 31 | @Modifying | 37 | @Modifying |
| 32 | @Query(value="SELECT jdl FROM bsth_c_jdl where gs_bm = ?1 and fgs_bm = ?2 and rq = ?3 and nbbm = ?4 and jdz = ?5",nativeQuery=true) | 38 | @Query(value="SELECT jdl FROM bsth_c_jdl where gs_bm = ?1 and fgs_bm = ?2 and rq = ?3 and nbbm = ?4 and jdz = ?5",nativeQuery=true) |
src/main/java/com/bsth/repository/oil/YlbRepository.java
| @@ -23,8 +23,9 @@ public interface YlbRepository extends BaseRepository<Ylb, Integer>{ | @@ -23,8 +23,9 @@ public interface YlbRepository extends BaseRepository<Ylb, Integer>{ | ||
| 23 | @Modifying | 23 | @Modifying |
| 24 | @Query(value="SELECT a.* FROM bsth_c_ylb a where to_days(?1)-to_days(a.rq)=1" | 24 | @Query(value="SELECT a.* FROM bsth_c_ylb a where to_days(?1)-to_days(a.rq)=1" |
| 25 | + " and jcsx=(select max(b.jcsx) from bsth_c_ylb b where a.nbbm=b.nbbm and " | 25 | + " and jcsx=(select max(b.jcsx) from bsth_c_ylb b where a.nbbm=b.nbbm and " |
| 26 | - + " to_days(?1)-to_days(b.rq)=1 )",nativeQuery=true) | ||
| 27 | - List<Ylb> obtainYlbefore(String rq); | 26 | + + " to_days(?1)-to_days(b.rq)=1 ) and ssgsdm like %?2% and fgsdm like %?3% and " |
| 27 | + + " xlbm like %?4% and nbbm like %?5% ",nativeQuery=true) | ||
| 28 | + List<Ylb> obtainYlbefore(String rq,String gsbm,String fgsbm,String xlbm,String nbbm); | ||
| 28 | 29 | ||
| 29 | /** | 30 | /** |
| 30 | * 当天YLB信息 | 31 | * 当天YLB信息 |
| @@ -33,8 +34,10 @@ public interface YlbRepository extends BaseRepository<Ylb, Integer>{ | @@ -33,8 +34,10 @@ public interface YlbRepository extends BaseRepository<Ylb, Integer>{ | ||
| 33 | */ | 34 | */ |
| 34 | @Transactional | 35 | @Transactional |
| 35 | @Modifying | 36 | @Modifying |
| 36 | - @Query(value="SELECT * FROM bsth_c_ylb where to_days(?)=to_days(rq)",nativeQuery=true) | ||
| 37 | - List<Ylb> obtainYl(String rq); | 37 | + @Query(value="SELECT * FROM bsth_c_ylb where to_days(?1)=to_days(rq) and ssgsdm like %?2% " |
| 38 | + + " and fgsdm like %?3%" | ||
| 39 | + + " and xlbm like %?4% and nbbm like %?5% order by ?6 asc ",nativeQuery=true) | ||
| 40 | + List<Ylb> obtainYl(String rq,String gsdm,String fgsdm,String xlbm,String nbbm,String px); | ||
| 38 | 41 | ||
| 39 | 42 | ||
| 40 | @Transactional | 43 | @Transactional |
| @@ -48,6 +51,41 @@ public interface YlbRepository extends BaseRepository<Ylb, Integer>{ | @@ -48,6 +51,41 @@ public interface YlbRepository extends BaseRepository<Ylb, Integer>{ | ||
| 48 | */ | 51 | */ |
| 49 | @Transactional | 52 | @Transactional |
| 50 | @Modifying | 53 | @Modifying |
| 51 | - @Query(value="select sum(jzl) as jzl,sum(zlc) as zlc from bsth_c_ylb where nbbm=?1 and rq=?2",nativeQuery=true) | ||
| 52 | - List<Object[]> sumLcYl(String nbbm,Date rq); | 54 | + @Query(value="select ifnull(jzl,0),ifnull(zlc,0),ifnull(sh,0) from bsth_c_ylb where nbbm=?1 and rq=?2 and xlbm like %?3%",nativeQuery=true) |
| 55 | + List<Object[]> sumLcYl(String nbbm,Date rq,String xlbm); | ||
| 56 | + | ||
| 57 | + /** | ||
| 58 | + * | ||
| 59 | + * @param nbbm | ||
| 60 | + * @param rq | ||
| 61 | + * @param xlbm | ||
| 62 | + * @return | ||
| 63 | + */ | ||
| 64 | + @Transactional | ||
| 65 | + @Modifying | ||
| 66 | + @Query(value="select nbbm,count(nbbm) from bsth_c_ylb where to_days(?1)=to_days(rq) and " | ||
| 67 | + + " ssgsdm like %?2% " | ||
| 68 | + + " and fgsdm like %?3%" | ||
| 69 | + + " and xlbm like %?4% and nbbm like %?5% " | ||
| 70 | + + " group by nbbm,rq,ssgsdm,fgsdm,xlbm",nativeQuery=true) | ||
| 71 | + List<Object[]> checkNbmmNum(String rq, String gsbm,String fgsbm,String xlbm,String nbbm); | ||
| 72 | + | ||
| 73 | + | ||
| 74 | + @Query(value="select jzl,yh,sh from Ylb s " | ||
| 75 | + + " where to_days(?1)=to_days(s.rq) " | ||
| 76 | + + " and s.ssgsdm like %?2% " | ||
| 77 | + + " and s.fgsdm like %?3%" | ||
| 78 | + + " and s.xlbm like %?4% " | ||
| 79 | + + " and s.nbbm in ?5 ") | ||
| 80 | + List<Object[]> sumYlb(String rq, String gsbm,String fgsbm,String xlbm,List<String> listNbbm); | ||
| 81 | + | ||
| 82 | + @Transactional | ||
| 83 | + @Modifying | ||
| 84 | + @Query(value="select ifnull(jzl,0),ifnull(yh,0),ifnull(sh,0) from bsth_c_ylb " | ||
| 85 | + + " where to_days(?1)=to_days(rq) " | ||
| 86 | + + " and ssgsdm like %?2% " | ||
| 87 | + + " and fgsdm like %?3%" | ||
| 88 | + + " and xlbm like %?4% " | ||
| 89 | + + " and nbbm like %?5%",nativeQuery=true) | ||
| 90 | + List<Object[]> sumYlb2(String rq, String gsbm,String fgsbm,String xlbm,String nbbm); | ||
| 53 | } | 91 | } |
src/main/java/com/bsth/repository/oil/YlxxbRepository.java
| @@ -19,8 +19,8 @@ public interface YlxxbRepository extends BaseRepository<Ylxxb, Integer>{ | @@ -19,8 +19,8 @@ public interface YlxxbRepository extends BaseRepository<Ylxxb, Integer>{ | ||
| 19 | */ | 19 | */ |
| 20 | @Transactional | 20 | @Transactional |
| 21 | @Modifying | 21 | @Modifying |
| 22 | - @Query(value="SELECT * FROM bsth_c_ylxxb where to_days(?)=to_days(yyrq)",nativeQuery=true) | ||
| 23 | - List<Ylxxb> obtainYlxx(String rq); | 22 | + @Query(value="SELECT * FROM bsth_c_ylxxb where to_days(?1)=to_days(yyrq) and nylx=?2 and gsdm like %?3%",nativeQuery=true) |
| 23 | + List<Ylxxb> obtainYlxx(String rq,int nylx,String gsdm); | ||
| 24 | 24 | ||
| 25 | @Transactional | 25 | @Transactional |
| 26 | @Modifying | 26 | @Modifying |
src/main/java/com/bsth/repository/realcontrol/ChildTaskPlanRepository.java
| 1 | package com.bsth.repository.realcontrol; | 1 | package com.bsth.repository.realcontrol; |
| 2 | 2 | ||
| 3 | -import java.util.List; | ||
| 4 | - | 3 | +import com.bsth.entity.realcontrol.ChildTaskPlan; |
| 4 | +import com.bsth.repository.BaseRepository; | ||
| 5 | import org.springframework.data.jpa.domain.Specification; | 5 | import org.springframework.data.jpa.domain.Specification; |
| 6 | import org.springframework.data.jpa.repository.EntityGraph; | 6 | import org.springframework.data.jpa.repository.EntityGraph; |
| 7 | import org.springframework.stereotype.Repository; | 7 | import org.springframework.stereotype.Repository; |
| 8 | 8 | ||
| 9 | -import com.bsth.entity.realcontrol.ChildTaskPlan; | ||
| 10 | -import com.bsth.repository.BaseRepository; | 9 | +import java.util.List; |
| 11 | 10 | ||
| 12 | @Repository | 11 | @Repository |
| 13 | public interface ChildTaskPlanRepository extends BaseRepository<ChildTaskPlan, Long>{ | 12 | public interface ChildTaskPlanRepository extends BaseRepository<ChildTaskPlan, Long>{ |
| @@ -15,4 +14,8 @@ public interface ChildTaskPlanRepository extends BaseRepository<ChildTaskPlan, L | @@ -15,4 +14,8 @@ public interface ChildTaskPlanRepository extends BaseRepository<ChildTaskPlan, L | ||
| 15 | @EntityGraph(value = "childTaskPlan_schedule", type = EntityGraph.EntityGraphType.FETCH) | 14 | @EntityGraph(value = "childTaskPlan_schedule", type = EntityGraph.EntityGraphType.FETCH) |
| 16 | @Override | 15 | @Override |
| 17 | List<ChildTaskPlan> findAll(Specification<ChildTaskPlan> spec); | 16 | List<ChildTaskPlan> findAll(Specification<ChildTaskPlan> spec); |
| 17 | + | ||
| 18 | + @EntityGraph(value = "childTaskPlan_schedule", type = EntityGraph.EntityGraphType.FETCH) | ||
| 19 | + @Override | ||
| 20 | + ChildTaskPlan findOne(Long id); | ||
| 18 | } | 21 | } |
src/main/java/com/bsth/repository/realcontrol/OilStationSocietyRepository.java
0 → 100644
| 1 | +package com.bsth.repository.realcontrol; | ||
| 2 | + | ||
| 3 | +import com.bsth.entity.realcontrol.OilStationSociety; | ||
| 4 | +import com.bsth.repository.BaseRepository; | ||
| 5 | +import org.springframework.stereotype.Repository; | ||
| 6 | + | ||
| 7 | +/** | ||
| 8 | + * Created by panzhao on 2017/3/16. | ||
| 9 | + */ | ||
| 10 | +@Repository | ||
| 11 | +public interface OilStationSocietyRepository extends BaseRepository<OilStationSociety, String>{ | ||
| 12 | +} |
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
| @@ -65,11 +65,11 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | @@ -65,11 +65,11 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | ||
| 65 | int countByDate(String date); | 65 | int countByDate(String date); |
| 66 | 66 | ||
| 67 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) | 67 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 68 | - @Query(value = "select s from ScheduleRealInfo s where s.scheduleDateStr = ?1") | 68 | + @Query(value = "select DISTINCT s from ScheduleRealInfo s where s.scheduleDateStr = ?1") |
| 69 | List<ScheduleRealInfo> findByDate(String dateStr); | 69 | List<ScheduleRealInfo> findByDate(String dateStr); |
| 70 | 70 | ||
| 71 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) | 71 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 72 | - @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 and cl_zbh=?3 order by bcs") | 72 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 and cl_zbh=?3 order by bcs") |
| 73 | List<ScheduleRealInfo> findByDate2(String line,String date,String clzbh); | 73 | List<ScheduleRealInfo> findByDate2(String line,String date,String clzbh); |
| 74 | 74 | ||
| 75 | @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and s.status = -1") | 75 | @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and s.status = -1") |
| @@ -86,26 +86,31 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | @@ -86,26 +86,31 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | ||
| 86 | + " and clZbh like %?5% order by s.fcsj") | 86 | + " and clZbh like %?5% order by s.fcsj") |
| 87 | List<ScheduleRealInfo> correctForm(String line,String startDate,String endDate,String lpName,String code); | 87 | List<ScheduleRealInfo> correctForm(String line,String startDate,String endDate,String lpName,String code); |
| 88 | 88 | ||
| 89 | - @Query(value="select s from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and s.scheduleDate = str_to_date(?4,'%Y-%m-%d') and s.xlBm=?5 order by realExecDate,fcsj") | 89 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 90 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and s.scheduleDate = str_to_date(?4,'%Y-%m-%d') and s.xlBm=?5 order by realExecDate,fcsj") | ||
| 90 | List<ScheduleRealInfo> queryListWaybill(String jName,String clZbh,String lpName,String date,String line); | 91 | List<ScheduleRealInfo> queryListWaybill(String jName,String clZbh,String lpName,String date,String line); |
| 91 | 92 | ||
| 92 | - @Query(value="select s from ScheduleRealInfo s where s.clZbh = ?1 and s.scheduleDate = str_to_date(?2,'%Y-%m-%d') and xlBm =?3 order by realExecDate,fcsj") | 93 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 94 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.clZbh = ?1 and s.scheduleDate = str_to_date(?2,'%Y-%m-%d') and xlBm =?3 order by realExecDate,fcsj") | ||
| 93 | List<ScheduleRealInfo> queryListWaybill2(String clZbh,String date,String line); | 95 | List<ScheduleRealInfo> queryListWaybill2(String clZbh,String date,String line); |
| 94 | 96 | ||
| 95 | - @Query(value="select s from ScheduleRealInfo s where s.jGh = ?1 and s.clZbh = ?2 and s.scheduleDate = str_to_date(?3,'%Y-%m-%d') order by realExecDate,fcsj") | ||
| 96 | - List<ScheduleRealInfo> queryListWaybill3(String jName,String clZbh,String date); | 97 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 98 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.jGh like %?1% and s.clZbh like %?2% and s.scheduleDate = str_to_date(?3,'%Y-%m-%d') and s.gsBm like %?4% and s.fgsBm like %?5% order by realExecDate,fcsj") | ||
| 99 | + List<ScheduleRealInfo> queryListWaybill3(String jName,String clZbh,String date,String gsbm,String fgsbm); | ||
| 97 | 100 | ||
| 98 | - @Query(value="select s from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') between str_to_date(?3,'%Y-%m-%d') and str_to_date(?4,'%Y-%m-%d') order by bcs") | 101 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 102 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') between str_to_date(?3,'%Y-%m-%d') and str_to_date(?4,'%Y-%m-%d') order by bcs") | ||
| 99 | List<ScheduleRealInfo> queryListWaybill4(String jName,String clZbh,String date,String enddate); | 103 | List<ScheduleRealInfo> queryListWaybill4(String jName,String clZbh,String date,String enddate); |
| 100 | 104 | ||
| 101 | - @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2") | 105 | + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 106 | + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2") | ||
| 102 | List<ScheduleRealInfo> scheduleDaily(String line,String date); | 107 | List<ScheduleRealInfo> scheduleDaily(String line,String date); |
| 103 | 108 | ||
| 104 | @Query(value = "select count(*) from ScheduleRealInfo s where s.xlBm=?1 and s.scheduleDateStr=?2") | 109 | @Query(value = "select count(*) from ScheduleRealInfo s where s.xlBm=?1 and s.scheduleDateStr=?2") |
| 105 | int countByLineCodeAndDate(String xlBm, String schDate); | 110 | int countByLineCodeAndDate(String xlBm, String schDate); |
| 106 | 111 | ||
| 107 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) | 112 | @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) |
| 108 | - @Query(value = "select s from ScheduleRealInfo s where s.xlBm=?1 and s.scheduleDateStr=?2") | 113 | + @Query(value = "select DISTINCT s from ScheduleRealInfo s where s.xlBm=?1 and s.scheduleDateStr=?2") |
| 109 | List<ScheduleRealInfo> findByLineCodeAndDate(String xlBm, String schDate); | 114 | List<ScheduleRealInfo> findByLineCodeAndDate(String xlBm, String schDate); |
| 110 | 115 | ||
| 111 | @Modifying | 116 | @Modifying |
| @@ -127,8 +132,12 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | @@ -127,8 +132,12 @@ public interface ScheduleRealInfoRepository extends BaseRepository<ScheduleRealI | ||
| 127 | @Query(value="select s from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m') = ?2 and s.bcType not in ('in','out') order by s.xlBm") | 132 | @Query(value="select s from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m') = ?2 and s.bcType not in ('in','out') order by s.xlBm") |
| 128 | List<ScheduleRealInfo> scheduleByDateAndLine3(String line,String date); | 133 | List<ScheduleRealInfo> scheduleByDateAndLine3(String line,String date); |
| 129 | 134 | ||
| 130 | - @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 like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 GROUP BY xlBm,clZbh,jGh,scheduleDate,jGh ORDER BY xlBm,clZbh") | ||
| 131 | - List<Map<String,Object>> yesterdayDataList(String line,String date); | 135 | + //按照时间段统计 |
| 136 | + @Query(value="select s from ScheduleRealInfo s where s.xlBm like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') between ?2 and ?3 and s.bcType not in ('in','out') order by s.xlBm") | ||
| 137 | + List<ScheduleRealInfo> scheduleByDateAndLineTj(String line,String date,String date2); | ||
| 138 | + | ||
| 139 | + @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 like %?1% and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 and s.gsBm like %?3% and s.fgsBm like %?4% GROUP BY xlBm,clZbh,jGh,scheduleDate,jGh ORDER BY xlBm,clZbh") | ||
| 140 | + List<Map<String,Object>> yesterdayDataList(String line,String date,String gsbm,String fgsbm); | ||
| 132 | 141 | ||
| 133 | @Query(value="select s from ScheduleRealInfo s where DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?1 ORDER BY xlBm,lpName,clZbh,xlDir") | 142 | @Query(value="select s from ScheduleRealInfo s where DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?1 ORDER BY xlBm,lpName,clZbh,xlDir") |
| 134 | List<ScheduleRealInfo> setLD(String date); | 143 | List<ScheduleRealInfo> setLD(String date); |
src/main/java/com/bsth/repository/schedule/SchedulePlanInfoRepository.java
| @@ -49,7 +49,7 @@ public interface SchedulePlanInfoRepository extends BaseRepository<SchedulePlanI | @@ -49,7 +49,7 @@ public interface SchedulePlanInfoRepository extends BaseRepository<SchedulePlanI | ||
| 49 | "where info.xl = ?1 and " + | 49 | "where info.xl = ?1 and " + |
| 50 | "info.schedule_date = ?2 " + | 50 | "info.schedule_date = ?2 " + |
| 51 | "group by info.xl_name, info.schedule_date, info.lp, info.lp_name, info.cl, info.cl_zbh " + | 51 | "group by info.xl_name, info.schedule_date, info.lp, info.lp_name, info.cl, info.cl_zbh " + |
| 52 | - "order by info.xl_name, info.schedule_date, info.lp ", nativeQuery = true) | 52 | + "order by info.xl_name, info.schedule_date, info.lp, info.fcno ", nativeQuery = true) |
| 53 | List<Object[]> findGroupInfo(Integer xlid, Date scheduleDate); | 53 | List<Object[]> findGroupInfo(Integer xlid, Date scheduleDate); |
| 54 | 54 | ||
| 55 | @Modifying | 55 | @Modifying |
src/main/java/com/bsth/repository/sys/DutyEmployeeRepository.java
| @@ -13,6 +13,7 @@ import java.util.List; | @@ -13,6 +13,7 @@ import java.util.List; | ||
| 13 | @Repository | 13 | @Repository |
| 14 | public interface DutyEmployeeRepository extends BaseRepository<DutyEmployee, Long>{ | 14 | public interface DutyEmployeeRepository extends BaseRepository<DutyEmployee, Long>{ |
| 15 | 15 | ||
| 16 | - @Query("select t from DutyEmployee t where t.codeIdx like %?1% and t.ts > ?2 and t.ts < ?3") | 16 | + //@Query("select t from DutyEmployee t where t.codeIdx like %?1% and t.ts > ?2 and t.ts < ?3") |
| 17 | + @Query("select t from DutyEmployee t where t.codeIdx like %?1% and t.ts < ?3") | ||
| 17 | List<DutyEmployee> findByLineAndTime(String lineCode, long st, long et); | 18 | List<DutyEmployee> findByLineAndTime(String lineCode, long st, long et); |
| 18 | } | 19 | } |
src/main/java/com/bsth/security/WebSecurityConfig.java
| @@ -36,7 +36,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { | @@ -36,7 +36,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { | ||
| 36 | public void configure(WebSecurity web) throws Exception { | 36 | public void configure(WebSecurity web) throws Exception { |
| 37 | // 白名单 | 37 | // 白名单 |
| 38 | web.ignoring().antMatchers(Constants.LOGIN_PAGE, Constants.LOGIN, Constants.ASSETS_URL, Constants.FAVICON_URL, Constants.CAPTCHA, | 38 | web.ignoring().antMatchers(Constants.LOGIN_PAGE, Constants.LOGIN, Constants.ASSETS_URL, Constants.FAVICON_URL, Constants.CAPTCHA, |
| 39 | - Constants.METRONIC_URL, Constants.LOGIN_FAILURE, Constants.UPSTREAM_URL, Constants.XD_CHILD_PAGES, Constants.XD_REAL_GPS); | 39 | + Constants.SERVICE_INTERFACE, Constants.METRONIC_URL, Constants.LOGIN_FAILURE, Constants.UPSTREAM_URL, Constants.XD_CHILD_PAGES, Constants.XD_REAL_GPS); |
| 40 | } | 40 | } |
| 41 | 41 | ||
| 42 | @Override | 42 | @Override |
src/main/java/com/bsth/service/forms/impl/CommonServiceImpl.java
| @@ -101,7 +101,7 @@ public class CommonServiceImpl implements CommonService{ | @@ -101,7 +101,7 @@ public class CommonServiceImpl implements CommonService{ | ||
| 101 | + " order by bcs"; | 101 | + " order by bcs"; |
| 102 | 102 | ||
| 103 | 103 | ||
| 104 | - List<ScheduleRealInfo> list = scheduleRealInfoRepository.queryListWaybill3(jName, clZbh , date); | 104 | + List<ScheduleRealInfo> list = scheduleRealInfoRepository.queryListWaybill3(jName, clZbh , date,"",""); |
| 105 | 105 | ||
| 106 | DecimalFormat format = new DecimalFormat("0.00"); | 106 | DecimalFormat format = new DecimalFormat("0.00"); |
| 107 | // int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); | 107 | // int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); |
src/main/java/com/bsth/service/forms/impl/FormsServiceImpl.java
| @@ -2,6 +2,7 @@ package com.bsth.service.forms.impl; | @@ -2,6 +2,7 @@ package com.bsth.service.forms.impl; | ||
| 2 | 2 | ||
| 3 | import java.sql.ResultSet; | 3 | import java.sql.ResultSet; |
| 4 | import java.sql.SQLException; | 4 | import java.sql.SQLException; |
| 5 | +import java.text.DecimalFormat; | ||
| 5 | import java.text.NumberFormat; | 6 | import java.text.NumberFormat; |
| 6 | import java.text.ParseException; | 7 | import java.text.ParseException; |
| 7 | import java.text.SimpleDateFormat; | 8 | import java.text.SimpleDateFormat; |
| @@ -23,6 +24,7 @@ import com.bsth.entity.mcy_forms.Singledata; | @@ -23,6 +24,7 @@ import com.bsth.entity.mcy_forms.Singledata; | ||
| 23 | import com.bsth.entity.mcy_forms.Turnoutrate; | 24 | import com.bsth.entity.mcy_forms.Turnoutrate; |
| 24 | import com.bsth.entity.mcy_forms.Vehicleloading; | 25 | import com.bsth.entity.mcy_forms.Vehicleloading; |
| 25 | import com.bsth.entity.mcy_forms.Waybillday; | 26 | import com.bsth.entity.mcy_forms.Waybillday; |
| 27 | +import com.bsth.data.BasicData; | ||
| 26 | import com.bsth.entity.mcy_forms.Allline; | 28 | import com.bsth.entity.mcy_forms.Allline; |
| 27 | import com.bsth.entity.mcy_forms.Changetochange; | 29 | import com.bsth.entity.mcy_forms.Changetochange; |
| 28 | import com.bsth.entity.mcy_forms.Daily; | 30 | import com.bsth.entity.mcy_forms.Daily; |
| @@ -47,33 +49,33 @@ public class FormsServiceImpl implements FormsService { | @@ -47,33 +49,33 @@ public class FormsServiceImpl implements FormsService { | ||
| 47 | @Override | 49 | @Override |
| 48 | public List<Waybillday> waybillday(Map<String, Object> map) { | 50 | public List<Waybillday> waybillday(Map<String, Object> map) { |
| 49 | 51 | ||
| 50 | - String sql ="select x.j_gh,x.cl_zbh,z.JZL,z.YH,z.personnel_name,x.schedule_date,x.gs_bm,x.gs_name,x.fgs_bm,x.fgs_name " | ||
| 51 | - + " from bsth_c_s_sp_info_real x INNER join " | ||
| 52 | - + " ( select y.RQ,y.XLBM,y.NBBM,y.JSY,y.JZL,y.YH,c.personnel_name from" | ||
| 53 | - + " bsth_c_ylb y LEFT JOIN bsth_c_personnel c ON c.job_code=y.JSY " | ||
| 54 | - + " where 1=1 "; | ||
| 55 | - if(map.get("date").toString()!=""){ | ||
| 56 | - sql+=" and to_days(y.RQ)=to_days('"+map.get("date").toString() + "') "; | ||
| 57 | - } | ||
| 58 | - if( map.get("line").toString()!=""){ | ||
| 59 | - sql+=" and y.XLBM= '"+ map.get("line").toString()+"' GROUP BY y.NBBM) "; | ||
| 60 | - } | ||
| 61 | - sql+= " z on x.cl_zbh=z.nbbm where to_days( x.schedule_date)=to_days('"+map.get("date").toString()+"') "; | ||
| 62 | - if(map.get("gsdmWaybillday").toString()!=""){ | ||
| 63 | - sql+=" and x.gs_bm='"+map.get("gsdmWaybillday").toString()+"'"; | ||
| 64 | - } | ||
| 65 | - if(map.get("fgsdmWaybillday").toString()!=""){ | ||
| 66 | - sql+=" and x.fgs_bm='"+map.get("fgsdmWaybillday").toString()+"'"; | ||
| 67 | - } | ||
| 68 | - sql += " GROUP BY x.j_gh,x.cl_zbh,z.JZL,z.YH,z.personnel_name,x.schedule_date,x.gs_bm,x.gs_name,x.fgs_bm,x.fgs_name "; | 52 | + |
| 53 | + | ||
| 54 | + String sql=" select t.*,z.jzl,z.yh from (" | ||
| 55 | + + " select x.j_gh,x.cl_zbh,x.j_name,x.schedule_date," | ||
| 56 | + + " x.gs_bm,x.gs_name,x.fgs_bm,x.fgs_name from bsth_c_s_sp_info_real x " | ||
| 57 | + + " where to_days( x.schedule_date)=to_days('"+map.get("date").toString() + "') " | ||
| 58 | + + " and x.gs_bm='"+map.get("gsdmWaybillday").toString()+"' " | ||
| 59 | + + " and x.fgs_bm='"+map.get("fgsdmWaybillday").toString()+"' " | ||
| 60 | + + " and xl_bm like '%"+ map.get("line").toString().trim()+"%'" | ||
| 61 | + + " GROUP BY x.j_gh,x.cl_zbh,x.j_name," | ||
| 62 | + + " x.schedule_date,x.gs_bm,x.gs_name,x.fgs_bm,x.fgs_name ) t" | ||
| 63 | + + " LEFT join (select y.rq,y.xlbm,y.nbbm,y.jsy,y.jzl,y.yh from" | ||
| 64 | + + " bsth_c_ylb y where 1=1 " | ||
| 65 | + + " and to_days(y.RQ)=to_days('"+map.get("date").toString() + "') " | ||
| 66 | + + " and y.XLBM like '%"+ map.get("line").toString().trim()+"%'" | ||
| 67 | + + " and y.ssgsdm='"+map.get("gsdmWaybillday").toString()+"'" | ||
| 68 | + + " and y.fgsdm='"+map.get("gsdmWaybillday").toString()+"') z " | ||
| 69 | + + " on t.cl_zbh=z.nbbm "; | ||
| 70 | + | ||
| 69 | List<Waybillday> list = jdbcTemplate.query(sql, new RowMapper<Waybillday>() { | 71 | List<Waybillday> list = jdbcTemplate.query(sql, new RowMapper<Waybillday>() { |
| 70 | @Override | 72 | @Override |
| 71 | public Waybillday mapRow(ResultSet arg0, int arg1) throws SQLException { | 73 | public Waybillday mapRow(ResultSet arg0, int arg1) throws SQLException { |
| 72 | Waybillday wbd = new Waybillday(); | 74 | Waybillday wbd = new Waybillday(); |
| 73 | wbd.setCarPlate(arg0.getString("cl_zbh")); | 75 | wbd.setCarPlate(arg0.getString("cl_zbh")); |
| 74 | - wbd.setJzl(arg0.getString("JZL")); | ||
| 75 | - wbd.setYh(arg0.getString("YH")); | ||
| 76 | - wbd.setjName(arg0.getString("personnel_name")); | 76 | + wbd.setJzl(arg0.getString("jzl")); |
| 77 | + wbd.setYh(arg0.getString("yh")); | ||
| 78 | + wbd.setjName(arg0.getString("j_name")); | ||
| 77 | wbd.setRq(arg0.getString("schedule_date")); | 79 | wbd.setRq(arg0.getString("schedule_date")); |
| 78 | wbd.setJgh(arg0.getString("j_gh")); | 80 | wbd.setJgh(arg0.getString("j_gh")); |
| 79 | return wbd; | 81 | return wbd; |
| @@ -193,7 +195,15 @@ public class FormsServiceImpl implements FormsService { | @@ -193,7 +195,15 @@ public class FormsServiceImpl implements FormsService { | ||
| 193 | // 班次车辆人员日统计 | 195 | // 班次车辆人员日统计 |
| 194 | @Override | 196 | @Override |
| 195 | public List<Shifday> shifday(Map<String, Object> map) { | 197 | public List<Shifday> shifday(Map<String, Object> map) { |
| 196 | - String sql = " select r.schedule_date,r.lp_name,r.xl_name,r.j_name,r.s_name, r.cl_zbh,r.xl_bm," | 198 | + |
| 199 | + String sql ="select t.* from (select r.schedule_date,r.j_name,IFNULL(r.s_name,'')as s_name," | ||
| 200 | + + " r.cl_zbh,r.xl_bm, r.j_gh,r.gs_bm,r.fgs_bm FROM bsth_c_s_sp_info_real r where 1=1 " | ||
| 201 | + + " and to_days(r.schedule_date)=to_days('"+ map.get("date").toString() + "') " | ||
| 202 | + + " and r.xl_bm like '%"+map.get("line").toString()+"%' " | ||
| 203 | + + " and r.gs_bm='"+map.get("gsdmShif").toString()+"' " | ||
| 204 | + + " and r.fgs_bm='"+map.get("fgsdmShif").toString()+"' ) t" | ||
| 205 | + + " GROUP BY t.schedule_date,t.j_name,t.s_name, t.cl_zbh,t.xl_bm,t.j_gh,t.gs_bm,t.fgs_bm "; | ||
| 206 | + /*String sql = " select r.schedule_date,r.lp_name,r.xl_name,r.j_name,r.s_name, r.cl_zbh,r.xl_bm," | ||
| 197 | + " r.cl_zbh,r.j_gh,r.j_gh,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name,r.bc_type " | 207 | + " r.cl_zbh,r.j_gh,r.j_gh,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name,r.bc_type " |
| 198 | + " FROM bsth_c_s_sp_info_real r " | 208 | + " FROM bsth_c_s_sp_info_real r " |
| 199 | + " where 1=1 "; | 209 | + " where 1=1 "; |
| @@ -211,20 +221,18 @@ public class FormsServiceImpl implements FormsService { | @@ -211,20 +221,18 @@ public class FormsServiceImpl implements FormsService { | ||
| 211 | sql+=" and r.fgs_bm='"+map.get("fgsdmShif").toString()+"'"; | 221 | sql+=" and r.fgs_bm='"+map.get("fgsdmShif").toString()+"'"; |
| 212 | } | 222 | } |
| 213 | sql += " GROUP BY r.schedule_date,r.lp_name,r.xl_name,r.j_name,r.s_name, r.cl_zbh,r.xl_bm,r.cl_zbh,r.j_gh,r.j_gh,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name " | 223 | sql += " GROUP BY r.schedule_date,r.lp_name,r.xl_name,r.j_name,r.s_name, r.cl_zbh,r.xl_bm,r.cl_zbh,r.j_gh,r.j_gh,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name " |
| 214 | - + " ORDER BY r.lp_name asc"; | 224 | + + " ORDER BY r.lp_name asc";*/ |
| 215 | 225 | ||
| 216 | List<Shifday> list = jdbcTemplate.query(sql, new RowMapper<Shifday>() { | 226 | List<Shifday> list = jdbcTemplate.query(sql, new RowMapper<Shifday>() { |
| 217 | 227 | ||
| 218 | @Override | 228 | @Override |
| 219 | public Shifday mapRow(ResultSet arg0, int arg1) throws SQLException { | 229 | public Shifday mapRow(ResultSet arg0, int arg1) throws SQLException { |
| 220 | Shifday shifday = new Shifday(); | 230 | Shifday shifday = new Shifday(); |
| 231 | + shifday.setRq(arg0.getString("schedule_date")); | ||
| 221 | shifday.setjName(arg0.getString("j_name").toString()); | 232 | shifday.setjName(arg0.getString("j_name").toString()); |
| 222 | shifday.setsName(arg0.getString("s_name") == null ? "" : arg0.getString("s_name").toString()); | 233 | shifday.setsName(arg0.getString("s_name") == null ? "" : arg0.getString("s_name").toString()); |
| 223 | - shifday.setLpName(arg0.getString("r.lp_name").toString()); | ||
| 224 | shifday.setCarPlate(arg0.getString("cl_zbh").toString()); | 234 | shifday.setCarPlate(arg0.getString("cl_zbh").toString()); |
| 225 | shifday.setJgh(arg0.getString("j_gh")); | 235 | shifday.setJgh(arg0.getString("j_gh")); |
| 226 | - shifday.setZbh(arg0.getString("cl_zbh")); | ||
| 227 | - shifday.setRq(arg0.getString("schedule_date")); | ||
| 228 | return shifday; | 236 | return shifday; |
| 229 | } | 237 | } |
| 230 | 238 | ||
| @@ -335,33 +343,28 @@ public class FormsServiceImpl implements FormsService { | @@ -335,33 +343,28 @@ public class FormsServiceImpl implements FormsService { | ||
| 335 | String rq3 = sdf1.format(d1); | 343 | String rq3 = sdf1.format(d1); |
| 336 | 344 | ||
| 337 | rq = rq2 + "-" + rq3; | 345 | rq = rq2 + "-" + rq3; |
| 338 | - | ||
| 339 | - String sql = " SELECT r.xl_bm,r.xl_name,r.cl_zbh,r.j_gh,r.j_name,y.YH,y.JZL,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name " | ||
| 340 | - + " FROM bsth_c_s_sp_info_real r " | ||
| 341 | - + " left join bsth_c_ylb y" | ||
| 342 | - + " ON r.cl_zbh = y.nbbm " | ||
| 343 | - + " where r.schedule_date_str BETWEEN '" + map.get("startDate").toString() + "'" | ||
| 344 | - + " and '"+ map.get("endDate").toString() + "'" | ||
| 345 | - + " and r.xl_bm='" + map.get("line").toString() + "'" | ||
| 346 | - + " AND r.gs_bm is not null"; | ||
| 347 | - | ||
| 348 | - if(map.get("gsdmSing").toString()!=""){ | ||
| 349 | - sql+=" and r.gs_bm='"+map.get("gsdmSing").toString()+"'"; | ||
| 350 | - } | ||
| 351 | - if(map.get("fgsdmSing").toString()!=""){ | ||
| 352 | - sql+=" and r.fgs_bm='"+map.get("fgsdmSing").toString()+"'"; | ||
| 353 | - } | ||
| 354 | - sql += " GROUP BY r.xl_bm,r.cl_zbh,r.j_gh,r.j_name,y.YH,y.JZL,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name "; | ||
| 355 | - | ||
| 356 | startDate = map.get("startDate").toString(); | 346 | startDate = map.get("startDate").toString(); |
| 357 | endDate = map.get("endDate").toString(); | 347 | endDate = map.get("endDate").toString(); |
| 348 | + String sql = "select t.*,y.yh,y.jzl from (" | ||
| 349 | + + " select r.xl_bm,r.xl_name,r.cl_zbh,r.j_gh,r.j_name,r.gs_bm,r.fgs_bm" | ||
| 350 | + + " from bsth_c_s_sp_info_real r where r.schedule_date_str " | ||
| 351 | + + " BETWEEN '"+startDate+"' and '"+endDate+"' and r.xl_bm='"+map.get("line").toString()+"' " | ||
| 352 | + + " AND r.gs_bm is not null and r.gs_bm='"+map.get("gsdmSing").toString()+"' " | ||
| 353 | + + " and r.fgs_bm='"+map.get("fgsdmSing").toString()+"' " | ||
| 354 | + + " group by r.xl_bm,r.xl_name,r.cl_zbh,r.j_gh,r.j_name,r.gs_bm,r.fgs_bm) t " | ||
| 355 | + + " LEFT JOIN (select a.nbbm,a.jsy,SUM(a.yh) as yh,SUM(a.jzl) as jzl " | ||
| 356 | + + " from bsth_c_ylb a where a.rq BETWEEN '"+startDate+"' and '"+endDate+"'and " | ||
| 357 | + + " a.ssgsdm='"+map.get("gsdmSing").toString()+"' and a.fgsdm='"+map.get("fgsdmSing").toString()+"' " | ||
| 358 | + + "group by a.nbbm,a.jsy) y" | ||
| 359 | + + " on y.nbbm=t.cl_zbh and y.jsy= t.j_gh"; | ||
| 360 | + | ||
| 358 | List<Singledata> list = jdbcTemplate.query(sql, new RowMapper<Singledata>() { | 361 | List<Singledata> list = jdbcTemplate.query(sql, new RowMapper<Singledata>() { |
| 359 | //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); | 362 | //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| 360 | @Override | 363 | @Override |
| 361 | public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException { | 364 | public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException { |
| 362 | Singledata sin = new Singledata(); | 365 | Singledata sin = new Singledata(); |
| 363 | sin.setrQ(rq); | 366 | sin.setrQ(rq); |
| 364 | - sin.setgS(arg0.getString("gs_name")); | 367 | + sin.setgS(arg0.getString("gs_bm")); |
| 365 | sin.setxL(arg0.getString("xl_name")); | 368 | sin.setxL(arg0.getString("xl_name")); |
| 366 | sin.setClzbh(arg0.getString("cl_zbh")); | 369 | sin.setClzbh(arg0.getString("cl_zbh")); |
| 367 | sin.setJsy(arg0.getString("j_gh")); | 370 | sin.setJsy(arg0.getString("j_gh")); |
| @@ -374,8 +377,13 @@ public class FormsServiceImpl implements FormsService { | @@ -374,8 +377,13 @@ public class FormsServiceImpl implements FormsService { | ||
| 374 | return sin; | 377 | return sin; |
| 375 | } | 378 | } |
| 376 | }); | 379 | }); |
| 380 | + DecimalFormat df = new DecimalFormat("0.00"); | ||
| 377 | for(int i=0;i<list.size();i++){ | 381 | for(int i=0;i<list.size();i++){ |
| 382 | + | ||
| 378 | Singledata si=list.get(i); | 383 | Singledata si=list.get(i); |
| 384 | + si.setgS(BasicData.businessCodeNameMap.get(si.getgS())); | ||
| 385 | + si.setJzl(df.format(Double.parseDouble(si.getJzl()))); | ||
| 386 | + si.setHyl(df.format(Double.parseDouble(si.getHyl()))); | ||
| 379 | Map<String, Object> maps = new HashMap<>(); | 387 | Map<String, Object> maps = new HashMap<>(); |
| 380 | maps = commonService.findKMBC1(si.getjName(),si.getClzbh(), startDate, | 388 | maps = commonService.findKMBC1(si.getjName(),si.getClzbh(), startDate, |
| 381 | endDate); | 389 | endDate); |
| @@ -712,22 +720,20 @@ public class FormsServiceImpl implements FormsService { | @@ -712,22 +720,20 @@ public class FormsServiceImpl implements FormsService { | ||
| 712 | 720 | ||
| 713 | @Override | 721 | @Override |
| 714 | public List<Daily> daily(Map<String, Object> map) { | 722 | public List<Daily> daily(Map<String, Object> map) { |
| 715 | - | ||
| 716 | - String sql ="select r.schedule_date_str,r.xl_bm,r.xl_name,r.cl_zbh,r.j_gh,r.j_name,y.YH,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name " | ||
| 717 | - + " from bsth_c_s_sp_info_real r LEFT JOIN bsth_c_ylb y ON r.cl_zbh = y.nbbm " | ||
| 718 | - + " WHERE 1 = 1" | ||
| 719 | - + " and r.xl_bm='" + map.get("line").toString() + "'" | ||
| 720 | - + " and to_days(r.schedule_date)=to_days('"+map.get("date").toString()+"')" | ||
| 721 | - + " AND r.gs_bm is not null"; | ||
| 722 | - | ||
| 723 | - if(map.get("gsdmDaily").toString()!=""){ | ||
| 724 | - sql+=" and r.gs_bm='"+map.get("gsdmDaily").toString()+"'"; | ||
| 725 | - } | ||
| 726 | - if(map.get("fgsdmDaily").toString()!=""){ | ||
| 727 | - sql+=" and r.fgs_bm='"+map.get("fgsdmDaily").toString()+"'"; | ||
| 728 | - } | ||
| 729 | - sql += " GROUP BY r.schedule_date_str,r.xl_bm,r.xl_name,r.cl_zbh,r.j_gh,r.j_name,y.YH,r.gs_bm,r.gs_name,r.fgs_bm,r.fgs_name "; | ||
| 730 | - | 723 | + String sql="select t.schedule_date_str," |
| 724 | + + " t.cl_zbh,t.j_gh,t.j_name,x.yh from (select r.schedule_date_str,r.xl_bm,r.xl_name," | ||
| 725 | + + " r.cl_zbh,r.j_gh,r.j_name from bsth_c_s_sp_info_real r WHERE " | ||
| 726 | + + " r.xl_bm='" + map.get("line").toString() + "' and to_days(r.schedule_date)=to_days('"+map.get("date").toString()+"') " | ||
| 727 | + + " and r.gs_bm like '%"+map.get("gsdmDaily").toString()+"%' " | ||
| 728 | + + " and r.fgs_bm like '%"+map.get("fgsdmDaily").toString()+"%' " | ||
| 729 | + + " GROUP BY r.schedule_date_str,r.xl_bm,r.xl_name,r.cl_zbh,r.j_gh,r.j_name) t" | ||
| 730 | + + " left join (select * from bsth_c_ylb y where " | ||
| 731 | + + " to_days(y.rq)=to_days('"+map.get("date").toString()+"') " | ||
| 732 | + + " and y.xlbm= '" + map.get("line").toString() + "'" | ||
| 733 | + + " and y.ssgsdm like '%"+map.get("gsdmDaily").toString()+"%' " | ||
| 734 | + + " and y.fgsdm like '%"+map.get("fgsdmDaily").toString()+"%'" | ||
| 735 | + + " ) x" | ||
| 736 | + + " on t.cl_zbh = x.nbbm "; | ||
| 731 | List<Daily> list = jdbcTemplate.query(sql, new RowMapper<Daily>() { | 737 | List<Daily> list = jdbcTemplate.query(sql, new RowMapper<Daily>() { |
| 732 | @Override | 738 | @Override |
| 733 | public Daily mapRow(ResultSet arg0, int arg1) throws SQLException { | 739 | public Daily mapRow(ResultSet arg0, int arg1) throws SQLException { |
| @@ -736,7 +742,7 @@ public class FormsServiceImpl implements FormsService { | @@ -736,7 +742,7 @@ public class FormsServiceImpl implements FormsService { | ||
| 736 | daily.setZbh(arg0.getString("cl_zbh")); | 742 | daily.setZbh(arg0.getString("cl_zbh")); |
| 737 | daily.setJgh(arg0.getString("j_gh")); | 743 | daily.setJgh(arg0.getString("j_gh")); |
| 738 | daily.setjName(arg0.getString("j_name")); | 744 | daily.setjName(arg0.getString("j_name")); |
| 739 | - daily.setYh(arg0.getString("YH")); | 745 | + daily.setYh(arg0.getString("yh")); |
| 740 | return daily; | 746 | return daily; |
| 741 | } | 747 | } |
| 742 | }); | 748 | }); |
src/main/java/com/bsth/service/impl/BusIntervalServiceImpl.java
| @@ -1345,8 +1345,8 @@ public class BusIntervalServiceImpl implements BusIntervalService { | @@ -1345,8 +1345,8 @@ public class BusIntervalServiceImpl implements BusIntervalService { | ||
| 1345 | Collections.sort(keyMap1.get(key), new Comparator<Map<String, Object>>() { | 1345 | Collections.sort(keyMap1.get(key), new Comparator<Map<String, Object>>() { |
| 1346 | 1346 | ||
| 1347 | public int compare(Map<String, Object> o1, Map<String, Object> o2) { | 1347 | public int compare(Map<String, Object> o1, Map<String, Object> o2) { |
| 1348 | - Integer a; | ||
| 1349 | - Integer b; | 1348 | + Long a; |
| 1349 | + Long b; | ||
| 1350 | String lp1 = o1.get("lp").toString(); | 1350 | String lp1 = o1.get("lp").toString(); |
| 1351 | String lp2 = o2.get("lp").toString(); | 1351 | String lp2 = o2.get("lp").toString(); |
| 1352 | String str1 = ""; | 1352 | String str1 = ""; |
| @@ -1358,8 +1358,8 @@ public class BusIntervalServiceImpl implements BusIntervalService { | @@ -1358,8 +1358,8 @@ public class BusIntervalServiceImpl implements BusIntervalService { | ||
| 1358 | str2 += (int)lp2.charAt(i); | 1358 | str2 += (int)lp2.charAt(i); |
| 1359 | } | 1359 | } |
| 1360 | 1360 | ||
| 1361 | - a = Integer.valueOf(str1); | ||
| 1362 | - b = Integer.valueOf(str2); | 1361 | + a = Long.valueOf(str1); |
| 1362 | + b = Long.valueOf(str2); | ||
| 1363 | 1363 | ||
| 1364 | // 升序 | 1364 | // 升序 |
| 1365 | return a.compareTo(b); | 1365 | return a.compareTo(b); |
src/main/java/com/bsth/service/impl/TrafficManageServiceImpl.java
| @@ -15,6 +15,7 @@ import com.bsth.service.TrafficManageService; | @@ -15,6 +15,7 @@ import com.bsth.service.TrafficManageService; | ||
| 15 | import com.bsth.util.TimeUtils; | 15 | import com.bsth.util.TimeUtils; |
| 16 | import com.bsth.util.db.DBUtils_MS; | 16 | import com.bsth.util.db.DBUtils_MS; |
| 17 | import com.bsth.webService.trafficManage.geotool.services.InternalPortType; | 17 | import com.bsth.webService.trafficManage.geotool.services.InternalPortType; |
| 18 | +import com.bsth.webService.trafficManage.geotool.services.Internal; | ||
| 18 | import com.bsth.webService.trafficManage.org.tempuri.WebServiceLocator; | 19 | import com.bsth.webService.trafficManage.org.tempuri.WebServiceLocator; |
| 19 | import com.bsth.webService.trafficManage.org.tempuri.WebServiceSoap; | 20 | import com.bsth.webService.trafficManage.org.tempuri.WebServiceSoap; |
| 20 | import org.apache.commons.lang.time.DateUtils; | 21 | import org.apache.commons.lang.time.DateUtils; |
| @@ -25,10 +26,7 @@ import org.springframework.data.domain.Sort; | @@ -25,10 +26,7 @@ import org.springframework.data.domain.Sort; | ||
| 25 | import org.springframework.data.domain.Sort.Direction; | 26 | import org.springframework.data.domain.Sort.Direction; |
| 26 | import org.springframework.stereotype.Service; | 27 | import org.springframework.stereotype.Service; |
| 27 | 28 | ||
| 28 | -import java.io.BufferedOutputStream; | ||
| 29 | -import java.io.File; | ||
| 30 | -import java.io.FileOutputStream; | ||
| 31 | -import java.io.IOException; | 29 | +import java.io.*; |
| 32 | import java.sql.Connection; | 30 | import java.sql.Connection; |
| 33 | import java.sql.PreparedStatement; | 31 | import java.sql.PreparedStatement; |
| 34 | import java.sql.ResultSet; | 32 | import java.sql.ResultSet; |
| @@ -188,6 +186,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -188,6 +186,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 188 | sBuffer.append("</XLs>"); | 186 | sBuffer.append("</XLs>"); |
| 189 | System.out.println(sBuffer.toString()); | 187 | System.out.println(sBuffer.toString()); |
| 190 | if(sBuffer.indexOf("<XL>") != -1){ | 188 | if(sBuffer.indexOf("<XL>") != -1){ |
| 189 | + portType = new Internal().getInternalHttpSoap11Endpoint(); | ||
| 191 | String portResult = portType.setXL(userNameXl, passwordXl, sBuffer.toString()); | 190 | String portResult = portType.setXL(userNameXl, passwordXl, sBuffer.toString()); |
| 192 | String portArray[] = portResult.split("\n"); | 191 | String portArray[] = portResult.split("\n"); |
| 193 | if(portArray.length >= 4){ | 192 | if(portArray.length >= 4){ |
| @@ -386,6 +385,24 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -386,6 +385,24 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 386 | } | 385 | } |
| 387 | 386 | ||
| 388 | /** | 387 | /** |
| 388 | + * 从文件中读取xml | ||
| 389 | + * @param fileName 例:D:/test.txt | ||
| 390 | + * @return | ||
| 391 | + * @throws Exception | ||
| 392 | + */ | ||
| 393 | + private String readXmlFromFile(String fileName) throws Exception { | ||
| 394 | + StringBuffer sf = new StringBuffer(""); | ||
| 395 | + File file = new File(fileName); | ||
| 396 | + InputStreamReader reader = new InputStreamReader(new FileInputStream(file),"utf-8"); | ||
| 397 | + BufferedReader bufferedReader = new BufferedReader(reader); | ||
| 398 | + String lineTxt = ""; | ||
| 399 | + while((lineTxt = bufferedReader.readLine()) != null){ | ||
| 400 | + sf.append(lineTxt); | ||
| 401 | + } | ||
| 402 | + reader.close(); | ||
| 403 | + return sf.toString().replaceAll("\t",""); | ||
| 404 | + } | ||
| 405 | + /** | ||
| 389 | * 上传里程油耗 | 406 | * 上传里程油耗 |
| 390 | * @return 上传成功标识 | 407 | * @return 上传成功标识 |
| 391 | */ | 408 | */ |
| @@ -890,7 +907,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -890,7 +907,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 890 | int nTotalMemory = ( int ) (currRuntime.totalMemory() / 1024 / 1024); | 907 | int nTotalMemory = ( int ) (currRuntime.totalMemory() / 1024 / 1024); |
| 891 | 908 | ||
| 892 | System.out.println("zzz:"+nFreeMemory + "M/" + nTotalMemory +"M(free/total)"); | 909 | System.out.println("zzz:"+nFreeMemory + "M/" + nTotalMemory +"M(free/total)"); |
| 893 | - | 910 | + portType = new Internal().getInternalHttpSoap11Endpoint(); |
| 894 | byte[] res = portType.downloadAllDataFile("down_pdgj", "down_pdgj123"); | 911 | byte[] res = portType.downloadAllDataFile("down_pdgj", "down_pdgj123"); |
| 895 | String filePath = "E:\\ygc"; | 912 | String filePath = "E:\\ygc"; |
| 896 | BufferedOutputStream bos = null; | 913 | BufferedOutputStream bos = null; |
src/main/java/com/bsth/service/oil/CdlService.java
0 → 100644
src/main/java/com/bsth/service/oil/DlbService.java
| 1 | package com.bsth.service.oil; | 1 | package com.bsth.service.oil; |
| 2 | 2 | ||
| 3 | +import java.util.Map; | ||
| 4 | + | ||
| 3 | import com.bsth.entity.oil.Dlb; | 5 | import com.bsth.entity.oil.Dlb; |
| 4 | import com.bsth.service.BaseService; | 6 | import com.bsth.service.BaseService; |
| 5 | 7 | ||
| 6 | public interface DlbService extends BaseService<Dlb, Integer>{ | 8 | public interface DlbService extends BaseService<Dlb, Integer>{ |
| 9 | + Map<String, Object> obtain(Map<String, Object> map); | ||
| 10 | + | ||
| 11 | + Map<String, Object> sort(Map<String, Object> map); | ||
| 12 | + | ||
| 13 | + Map<String, Object> checkDl(Map<String, Object> map); | ||
| 7 | } | 14 | } |
src/main/java/com/bsth/service/oil/YlbService.java
| @@ -7,13 +7,17 @@ import com.bsth.entity.oil.Ylb; | @@ -7,13 +7,17 @@ import com.bsth.entity.oil.Ylb; | ||
| 7 | import com.bsth.service.BaseService; | 7 | import com.bsth.service.BaseService; |
| 8 | 8 | ||
| 9 | public interface YlbService extends BaseService<Ylb, Integer>{ | 9 | public interface YlbService extends BaseService<Ylb, Integer>{ |
| 10 | - Map<String, Object> obtain(Map<String, Object> map); | ||
| 11 | - String obtainDsq(); | 10 | + Map<String, Object> obtain(Map<String, Object> map) throws Exception; |
| 11 | + String obtainDsq() throws Exception; | ||
| 12 | Map<String, Object> sort(Map<String, Object> map); | 12 | Map<String, Object> sort(Map<String, Object> map); |
| 13 | 13 | ||
| 14 | - Map<String, Object> outAndIn(Map<String, Object> map); | 14 | + Map<String, Object> outAndIn(Map<String, Object> map) throws Exception; |
| 15 | 15 | ||
| 16 | Map<String, Object> checkYl(Map<String, Object> map); | 16 | Map<String, Object> checkYl(Map<String, Object> map); |
| 17 | 17 | ||
| 18 | + Map<String, Object> sumYlb(Map<String, Object> map); | ||
| 19 | + | ||
| 18 | List<Ylb> oilListMonth(String line,String date); | 20 | List<Ylb> oilListMonth(String line,String date); |
| 21 | + | ||
| 22 | + StringBuffer checkNbmmNum(String rq, String gsbm,String fgsbm,String xlbm,String nbbm,int lx); | ||
| 19 | } | 23 | } |
src/main/java/com/bsth/service/oil/impl/CdlServiceImpl.java
0 → 100644
| 1 | +package com.bsth.service.oil.impl; | ||
| 2 | + | ||
| 3 | +import org.springframework.stereotype.Service; | ||
| 4 | + | ||
| 5 | +import com.bsth.entity.oil.Cdl; | ||
| 6 | +import com.bsth.service.impl.BaseServiceImpl; | ||
| 7 | +import com.bsth.service.oil.CdlService; | ||
| 8 | + | ||
| 9 | +@Service | ||
| 10 | +public class CdlServiceImpl extends BaseServiceImpl<Cdl,Integer> implements CdlService | ||
| 11 | +{ | ||
| 12 | + | ||
| 13 | +} |
src/main/java/com/bsth/service/oil/impl/DlbServiceImpl.java
| @@ -2,14 +2,316 @@ package com.bsth.service.oil.impl; | @@ -2,14 +2,316 @@ package com.bsth.service.oil.impl; | ||
| 2 | 2 | ||
| 3 | 3 | ||
| 4 | 4 | ||
| 5 | +import java.text.DecimalFormat; | ||
| 6 | +import java.text.ParseException; | ||
| 7 | +import java.text.SimpleDateFormat; | ||
| 8 | +import java.util.ArrayList; | ||
| 9 | +import java.util.Date; | ||
| 10 | +import java.util.HashMap; | ||
| 11 | +import java.util.Iterator; | ||
| 12 | +import java.util.List; | ||
| 13 | +import java.util.Map; | ||
| 14 | + | ||
| 15 | +import javax.transaction.Transactional; | ||
| 16 | + | ||
| 17 | +import org.slf4j.Logger; | ||
| 18 | +import org.slf4j.LoggerFactory; | ||
| 19 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 20 | +import org.springframework.data.domain.Sort; | ||
| 21 | +import org.springframework.data.domain.Sort.Direction; | ||
| 22 | +import org.springframework.jdbc.core.JdbcTemplate; | ||
| 5 | import org.springframework.stereotype.Service; | 23 | import org.springframework.stereotype.Service; |
| 6 | 24 | ||
| 25 | +import com.bsth.common.ResponseCode; | ||
| 26 | +import com.bsth.entity.Cars; | ||
| 27 | +import com.bsth.entity.oil.Cdl; | ||
| 28 | +import com.bsth.entity.oil.Cyl; | ||
| 7 | import com.bsth.entity.oil.Dlb; | 29 | import com.bsth.entity.oil.Dlb; |
| 30 | +import com.bsth.entity.oil.Jdl; | ||
| 31 | +import com.bsth.entity.oil.Ylb; | ||
| 32 | +import com.bsth.entity.oil.Ylxxb; | ||
| 33 | +import com.bsth.entity.search.CustomerSpecs; | ||
| 34 | +import com.bsth.repository.CarsRepository; | ||
| 35 | +import com.bsth.repository.oil.CdlRepository; | ||
| 36 | +import com.bsth.repository.oil.CylRepository; | ||
| 37 | +import com.bsth.repository.oil.DlbRepository; | ||
| 38 | +import com.bsth.repository.oil.JdlRepository; | ||
| 39 | +import com.bsth.repository.oil.YlbRepository; | ||
| 40 | +import com.bsth.repository.oil.YlxxbRepository; | ||
| 8 | import com.bsth.service.impl.BaseServiceImpl; | 41 | import com.bsth.service.impl.BaseServiceImpl; |
| 9 | import com.bsth.service.oil.DlbService; | 42 | import com.bsth.service.oil.DlbService; |
| 43 | +import com.bsth.service.realcontrol.ScheduleRealInfoService; | ||
| 10 | 44 | ||
| 11 | @Service | 45 | @Service |
| 12 | public class DlbServiceImpl extends BaseServiceImpl<Dlb,Integer> implements DlbService{ | 46 | public class DlbServiceImpl extends BaseServiceImpl<Dlb,Integer> implements DlbService{ |
| 47 | + @Autowired | ||
| 48 | + DlbRepository repository; | ||
| 49 | + | ||
| 50 | + @Autowired | ||
| 51 | + YlxxbRepository ylxxbRepository; | ||
| 52 | + | ||
| 53 | + @Autowired | ||
| 54 | + CdlRepository cdlRepository; | ||
| 55 | + @Autowired | ||
| 56 | + JdlRepository jdlRepository; | ||
| 57 | + @Autowired | ||
| 58 | + CarsRepository carsRepository; | ||
| 13 | 59 | ||
| 60 | + @Autowired | ||
| 61 | + ScheduleRealInfoService scheduleRealInfoService; | ||
| 62 | + | ||
| 63 | + @Autowired | ||
| 64 | + JdbcTemplate jdbcTemplate; | ||
| 65 | + | ||
| 66 | + Logger logger = LoggerFactory.getLogger(this.getClass()); | ||
| 67 | + /** | ||
| 68 | + * 获取进存油信息 | ||
| 69 | + * @Transactional 回滚事物 | ||
| 70 | + */ | ||
| 71 | + @Transactional | ||
| 72 | + @Override | ||
| 73 | + public Map<String, Object> obtain(Map<String, Object> map2) { | ||
| 74 | + List<Cars> carsList=carsRepository.findCars(); | ||
| 75 | + Map<String, Boolean> carsMap=new HashMap<String, Boolean>(); | ||
| 76 | + for (int i = 0; i < carsList.size(); i++) { | ||
| 77 | + Cars c=carsList.get(i); | ||
| 78 | + carsMap.put(c.getInsideCode(), c.getSfdc()); | ||
| 79 | + } | ||
| 80 | + String gsbm=""; | ||
| 81 | + if(map2.get("ssgsdm_like")!=null){ | ||
| 82 | + gsbm=map2.get("ssgsdm_like").toString(); | ||
| 83 | + } | ||
| 84 | + String rq=map2.get("rq").toString(); | ||
| 85 | + String line=""; | ||
| 86 | + if(map2.get("xlbm_eq")!=null){ | ||
| 87 | + line=map2.get("xlbm_eq").toString(); | ||
| 88 | + } | ||
| 89 | + | ||
| 90 | + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 91 | + //保留两位小数 | ||
| 92 | + DecimalFormat df = new DecimalFormat("#.00"); | ||
| 93 | + // TODO Auto-generated method stub | ||
| 94 | + Map<String, Object> newMap=new HashMap<String,Object>(); | ||
| 95 | + //当天DLB信息 | ||
| 96 | + List<Dlb> dlList=repository.obtainDl(rq); | ||
| 97 | + //当天YLXXB信息 | ||
| 98 | + List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq,1,gsbm); | ||
| 99 | + //当天加电信息表 | ||
| 100 | + List<Jdl> jdlList=jdlRepository.JdlList(rq); | ||
| 101 | + //前一天所有车辆最后进场班次信息 | ||
| 102 | + List<Dlb> dlListBe=repository.obtainYlbefore(rq); | ||
| 103 | + List<Cdl> cdyList=cdlRepository.obtainCdl(); | ||
| 104 | + //从排班表中计算出行驶的总里程 | ||
| 105 | + List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList(line,rq,"","","",""); | ||
| 106 | + List<Ylb> addList=new ArrayList<Ylb>(); | ||
| 107 | + List<Ylb> updateList=new ArrayList<Ylb>(); | ||
| 108 | + for(int x=0;x<listpb.size();x++){ | ||
| 109 | + String type="add"; | ||
| 110 | + boolean sfdc=false; | ||
| 111 | + Map<String, Object> map=listpb.get(x); | ||
| 112 | + if (carsMap.get(map.get("clZbh").toString())!=null) { | ||
| 113 | + sfdc= carsMap.get(map.get("clZbh").toString()); | ||
| 114 | + }else{ | ||
| 115 | + sfdc=false; | ||
| 116 | + } | ||
| 117 | + if(sfdc){ | ||
| 118 | + //判断驾驶员驾驶的该车辆是否已经存入了(查出的结果集中日期是相同的,根据驾驶员、内部编号、线路编码判断) | ||
| 119 | + Dlb t=new Dlb(); | ||
| 120 | + for(int k=0;k<dlList.size();k++){ | ||
| 121 | + Dlb t1=dlList.get(k); | ||
| 122 | + if(t1.getNbbm().equals(map.get("clZbh").toString()) | ||
| 123 | + &&t1.getJsy().equals(map.get("jGh").toString()) | ||
| 124 | + &&t1.getXlbm().equals(map.get("xlBm").toString())) | ||
| 125 | + { | ||
| 126 | + t=t1; | ||
| 127 | + type="update"; | ||
| 128 | + } | ||
| 129 | + } | ||
| 130 | + try { | ||
| 131 | + //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量 | ||
| 132 | + if(map.get("seqNumber").toString().equals("1")){ | ||
| 133 | + boolean fage=true; | ||
| 134 | + for (int i = 0; i < dlListBe.size(); i++) { | ||
| 135 | + Dlb dlb=dlListBe.get(i); | ||
| 136 | + if(map.get("clZbh").toString().equals(dlb.getNbbm())){ | ||
| 137 | + t.setCzcd(dlb.getJzcd()); | ||
| 138 | + fage=false; | ||
| 139 | + break; | ||
| 140 | + } | ||
| 141 | + } | ||
| 142 | + if(fage){ | ||
| 143 | + for (int y = 0; y < cdyList.size(); y++) { | ||
| 144 | + Cdl cdl=cdyList.get(y); | ||
| 145 | + if(map.get("clZbh").toString().equals(cdl.getNbbm())){ | ||
| 146 | + t.setCzcd(cdl.getClcd()); | ||
| 147 | + fage=false; | ||
| 148 | + break; | ||
| 149 | + } | ||
| 150 | + } | ||
| 151 | + } | ||
| 152 | + if(fage){ | ||
| 153 | + t.setCzcd(0.0); | ||
| 154 | + } | ||
| 155 | + } | ||
| 156 | + | ||
| 157 | + Double jzl=0.0; | ||
| 158 | + //把当天的YLXXB的加注量设置为当天YLB的加注量(根据车号,驾驶员判断) | ||
| 159 | + for(int j=0;j<ylxxList.size();j++){ | ||
| 160 | + Ylxxb ylxxb= ylxxList.get(j); | ||
| 161 | + if(map.get("clZbh").toString().equals(ylxxb.getNbbm()) &&map.get("jGh").toString().equals(ylxxb.getJsy())){ | ||
| 162 | + jzl+=ylxxb.getJzl(); | ||
| 163 | + } | ||
| 164 | + } | ||
| 165 | + | ||
| 166 | + //手动导入没有驾驶员工号 | ||
| 167 | + for (int i = 0; i < jdlList.size(); i++) { | ||
| 168 | + Jdl jdl=jdlList.get(i); | ||
| 169 | + if(map.get("clZbh").toString().equals(jdl.getNbbm()) ){ | ||
| 170 | + jzl+=jdl.getJdl(); | ||
| 171 | + } | ||
| 172 | + } | ||
| 173 | + t.setCdl(jzl); | ||
| 174 | + t.setJzcd(t.getCzcd()); | ||
| 175 | + t.setNbbm(map.get("clZbh").toString()); | ||
| 176 | + t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); | ||
| 177 | + t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | ||
| 178 | + t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); | ||
| 179 | + t.setHd(jzl); | ||
| 180 | + t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | ||
| 181 | + t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); | ||
| 182 | + t.setFgsdm(map.get("bCompany")==null?"":map.get("bCompany").toString()); | ||
| 183 | + t.setRq(sdf.parse(rq)); | ||
| 184 | + /*if(type.equals("add")){ | ||
| 185 | + addList.add(t); | ||
| 186 | + }else{ | ||
| 187 | + updateList.add(t); | ||
| 188 | + }*/ | ||
| 189 | + repository.save(t); | ||
| 190 | + newMap.put("status", ResponseCode.SUCCESS); | ||
| 191 | + } catch (ParseException e) { | ||
| 192 | + // TODO Auto-generated catch block | ||
| 193 | + newMap.put("status", ResponseCode.ERROR); | ||
| 194 | + e.printStackTrace(); | ||
| 195 | + } | ||
| 196 | + } | ||
| 197 | + } | ||
| 198 | + /* try { | ||
| 199 | + if(addList.size()>0){ | ||
| 200 | + new BatchSaveUtils<Ylb>().saveList(addList, Ylb.class); | ||
| 201 | + } | ||
| 202 | + | ||
| 203 | + if(updateList.size()>0){ | ||
| 204 | + | ||
| 205 | + } | ||
| 206 | + newMap.put("status", ResponseCode.SUCCESS); | ||
| 207 | + } | ||
| 208 | + catch (Exception e) { | ||
| 209 | + // TODO: handle exception | ||
| 210 | + newMap.put("status", ResponseCode.ERROR); | ||
| 211 | + }*/ | ||
| 212 | + return newMap; | ||
| 213 | + } | ||
| 214 | + | ||
| 215 | + /** | ||
| 216 | + * 拆分 | ||
| 217 | + */ | ||
| 218 | + @Transactional | ||
| 219 | + @Override | ||
| 220 | + public Map<String, Object> sort(Map<String, Object> map) { | ||
| 221 | + // TODO Auto-generated method stub | ||
| 222 | + Map<String, Object> newMap = new HashMap<String, Object>(); | ||
| 223 | + try{ | ||
| 224 | + int id=Integer.parseInt(map.get("id").toString()); | ||
| 225 | + //最后存油量 | ||
| 226 | + Double jzdl=Double.parseDouble(map.get("jzdl").toString()); | ||
| 227 | + Double hdl=Double.parseDouble(map.get("hdl").toString()); | ||
| 228 | + Dlb dlb=repository.findOne(id); | ||
| 229 | + dlb.setJzcd(jzdl); | ||
| 230 | + dlb.setHd(hdl); | ||
| 231 | + repository.save(dlb); | ||
| 232 | + newMap.put("status", ResponseCode.SUCCESS); | ||
| 233 | + }catch(Exception e){ | ||
| 234 | + newMap.put("status", ResponseCode.ERROR); | ||
| 235 | + logger.error("save erro.", e); | ||
| 236 | + } | ||
| 237 | + return newMap; | ||
| 238 | + } | ||
| 14 | 239 | ||
| 240 | + | ||
| 241 | + /** | ||
| 242 | + * 核对,有加注没里程 | ||
| 243 | + * @param map | ||
| 244 | + * @return | ||
| 245 | + */ | ||
| 246 | + @Transactional | ||
| 247 | + @Override | ||
| 248 | + public Map<String, Object> checkDl(Map<String, Object> map) { | ||
| 249 | + Map<String, Object> newMap=new HashMap<String,Object>(); | ||
| 250 | + String xlbm=map.get("xlbm_eq").toString(); | ||
| 251 | + String gsbm=""; | ||
| 252 | + if(map.get("ssgsdm_like")!=null){ | ||
| 253 | + gsbm=map.get("ssgsdm_like").toString(); | ||
| 254 | + } | ||
| 255 | + // TODO Auto-generated method stub | ||
| 256 | + try{ | ||
| 257 | + //获取车辆存油信息 | ||
| 258 | +// List<Cyl> cylList=cylRepository.findAll(new CustomerSpecs<Cyl>(newMap)); | ||
| 259 | + String rq=map.get("rq").toString(); | ||
| 260 | + List<Dlb> dlbList=repository.obtainDl(rq); | ||
| 261 | + List<Ylxxb> ylxxbList=ylxxbRepository.obtainYlxx(rq,1,gsbm); | ||
| 262 | + //当天加电信息表 | ||
| 263 | + List<Jdl> jdlList=jdlRepository.JdlList(rq); | ||
| 264 | + for (int i = 0; i < ylxxbList.size(); i++) { | ||
| 265 | + Boolean fage=true; | ||
| 266 | + Ylxxb y1=ylxxbList.get(i); | ||
| 267 | + for(int y=0;y<dlbList.size();y++){ | ||
| 268 | + Dlb y2=dlbList.get(y); | ||
| 269 | + if(y1.getNbbm().equals(y2.getNbbm())){ | ||
| 270 | + fage=false; | ||
| 271 | + break; | ||
| 272 | + } | ||
| 273 | + } | ||
| 274 | + | ||
| 275 | + if(fage){ | ||
| 276 | + Dlb t=new Dlb(); | ||
| 277 | + t.setNbbm(y1.getNbbm()); | ||
| 278 | + t.setRq(y1.getYyrq()); | ||
| 279 | + t.setJsy(y1.getJsy()); | ||
| 280 | + t.setCdl(y1.getJzl()); | ||
| 281 | + t.setSsgsdm(y1.getGsdm()); | ||
| 282 | + t.setXlbm(xlbm); | ||
| 283 | + repository.save(t); | ||
| 284 | + } | ||
| 285 | + } | ||
| 286 | + | ||
| 287 | + for (int i = 0; i < jdlList.size(); i++) { | ||
| 288 | + Boolean fage=true; | ||
| 289 | + Jdl y1=jdlList.get(i); | ||
| 290 | + for(int y=0;y<dlbList.size();y++){ | ||
| 291 | + Dlb y2=dlbList.get(y); | ||
| 292 | + if(y1.getNbbm().equals(y2.getNbbm())){ | ||
| 293 | + fage=false; | ||
| 294 | + break; | ||
| 295 | + } | ||
| 296 | + } | ||
| 297 | + | ||
| 298 | + if(fage){ | ||
| 299 | + Dlb t=new Dlb(); | ||
| 300 | + t.setNbbm(y1.getNbbm()); | ||
| 301 | + t.setRq(y1.getRq()); | ||
| 302 | +// t.setJsy(y1.getJsy()); | ||
| 303 | + t.setCdl(y1.getJdl()); | ||
| 304 | + t.setSsgsdm(y1.getGsBm()); | ||
| 305 | + t.setXlbm(xlbm); | ||
| 306 | + repository.save(t); | ||
| 307 | + } | ||
| 308 | + } | ||
| 309 | + newMap.put("status", ResponseCode.SUCCESS); | ||
| 310 | + }catch(Exception e){ | ||
| 311 | + newMap.put("status", ResponseCode.ERROR); | ||
| 312 | + logger.error("save erro.", e); | ||
| 313 | + } | ||
| 314 | + | ||
| 315 | + return newMap; | ||
| 316 | + } | ||
| 15 | } | 317 | } |
src/main/java/com/bsth/service/oil/impl/YlbServiceImpl.java
| 1 | package com.bsth.service.oil.impl; | 1 | package com.bsth.service.oil.impl; |
| 2 | 2 | ||
| 3 | +import java.sql.ResultSet; | ||
| 4 | +import java.sql.SQLException; | ||
| 5 | +import java.text.DecimalFormat; | ||
| 6 | +import java.text.ParseException; | ||
| 7 | +import java.text.SimpleDateFormat; | ||
| 8 | +import java.util.ArrayList; | ||
| 9 | +import java.util.Calendar; | ||
| 10 | +import java.util.Date; | ||
| 11 | +import java.util.HashMap; | ||
| 12 | +import java.util.Iterator; | ||
| 13 | +import java.util.List; | ||
| 14 | +import java.util.Map; | ||
| 15 | + | ||
| 16 | +import javax.transaction.Transactional; | ||
| 17 | + | ||
| 18 | +import org.slf4j.Logger; | ||
| 19 | +import org.slf4j.LoggerFactory; | ||
| 20 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 21 | +import org.springframework.data.domain.Sort; | ||
| 22 | +import org.springframework.data.domain.Sort.Direction; | ||
| 23 | +import org.springframework.jdbc.core.JdbcTemplate; | ||
| 24 | +import org.springframework.jdbc.core.RowMapper; | ||
| 25 | +import org.springframework.stereotype.Service; | ||
| 26 | + | ||
| 3 | import com.bsth.common.ResponseCode; | 27 | import com.bsth.common.ResponseCode; |
| 28 | +import com.bsth.data.BasicData; | ||
| 29 | +import com.bsth.entity.Cars; | ||
| 4 | import com.bsth.entity.oil.Cyl; | 30 | import com.bsth.entity.oil.Cyl; |
| 5 | import com.bsth.entity.oil.Ylb; | 31 | import com.bsth.entity.oil.Ylb; |
| 6 | import com.bsth.entity.oil.Ylxxb; | 32 | import com.bsth.entity.oil.Ylxxb; |
| 7 | import com.bsth.entity.search.CustomerSpecs; | 33 | import com.bsth.entity.search.CustomerSpecs; |
| 34 | +import com.bsth.repository.CarsRepository; | ||
| 8 | import com.bsth.repository.oil.CylRepository; | 35 | import com.bsth.repository.oil.CylRepository; |
| 9 | import com.bsth.repository.oil.YlbRepository; | 36 | import com.bsth.repository.oil.YlbRepository; |
| 10 | import com.bsth.repository.oil.YlxxbRepository; | 37 | import com.bsth.repository.oil.YlxxbRepository; |
| 11 | import com.bsth.service.impl.BaseServiceImpl; | 38 | import com.bsth.service.impl.BaseServiceImpl; |
| 12 | import com.bsth.service.oil.YlbService; | 39 | import com.bsth.service.oil.YlbService; |
| 13 | import com.bsth.service.realcontrol.ScheduleRealInfoService; | 40 | import com.bsth.service.realcontrol.ScheduleRealInfoService; |
| 14 | -import org.slf4j.Logger; | ||
| 15 | -import org.slf4j.LoggerFactory; | ||
| 16 | -import org.springframework.beans.factory.annotation.Autowired; | ||
| 17 | -import org.springframework.data.domain.Sort; | ||
| 18 | -import org.springframework.data.domain.Sort.Direction; | ||
| 19 | -import org.springframework.jdbc.core.JdbcTemplate; | ||
| 20 | -import org.springframework.jdbc.core.RowMapper; | ||
| 21 | -import org.springframework.stereotype.Service; | ||
| 22 | - | ||
| 23 | -import javax.transaction.Transactional; | ||
| 24 | -import java.sql.ResultSet; | ||
| 25 | -import java.sql.SQLException; | ||
| 26 | -import java.text.DecimalFormat; | ||
| 27 | -import java.text.ParseException; | ||
| 28 | -import java.text.SimpleDateFormat; | ||
| 29 | -import java.util.*; | 41 | +import com.bsth.util.Arith; |
| 42 | +import com.bsth.util.BatchSaveUtils; | ||
| 43 | +import com.github.abel533.echarts.code.Y; | ||
| 30 | 44 | ||
| 31 | @Service | 45 | @Service |
| 32 | public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbService{ | 46 | public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbService{ |
| 33 | @Autowired | 47 | @Autowired |
| 34 | YlbRepository repository; | 48 | YlbRepository repository; |
| 35 | - | 49 | + |
| 36 | @Autowired | 50 | @Autowired |
| 37 | YlxxbRepository ylxxbRepository; | 51 | YlxxbRepository ylxxbRepository; |
| 38 | - | 52 | + |
| 39 | @Autowired | 53 | @Autowired |
| 40 | CylRepository cylRepository; | 54 | CylRepository cylRepository; |
| 41 | - | 55 | + |
| 56 | + @Autowired | ||
| 57 | + CarsRepository carsRepository; | ||
| 58 | + | ||
| 42 | @Autowired | 59 | @Autowired |
| 43 | ScheduleRealInfoService scheduleRealInfoService; | 60 | ScheduleRealInfoService scheduleRealInfoService; |
| 44 | - | 61 | + |
| 45 | @Autowired | 62 | @Autowired |
| 46 | JdbcTemplate jdbcTemplate; | 63 | JdbcTemplate jdbcTemplate; |
| 47 | - | 64 | + |
| 48 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 65 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 49 | - | ||
| 50 | - | ||
| 51 | - | 66 | + |
| 67 | + | ||
| 68 | + | ||
| 52 | /** | 69 | /** |
| 53 | * 获取进存油信息 | 70 | * 获取进存油信息 |
| 54 | * @Transactional 回滚事物 | 71 | * @Transactional 回滚事物 |
| 55 | */ | 72 | */ |
| 56 | - @Transactional | 73 | + @Transactional |
| 57 | @Override | 74 | @Override |
| 58 | - public String obtainDsq() { | 75 | + public String obtainDsq() throws Exception{ |
| 59 | String result = "failure"; | 76 | String result = "failure"; |
| 60 | - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 61 | - Date dNow = new Date(); //当前时间 | ||
| 62 | - Date dBefore = new Date(); | ||
| 63 | - Calendar calendar = Calendar.getInstance(); //得到日历 | ||
| 64 | - calendar.setTime(dNow);//把当前时间赋给日历 | ||
| 65 | - calendar.add(Calendar.DAY_OF_MONTH, -1); //设置为前一天 | ||
| 66 | - dBefore = calendar.getTime(); //得到前一天的时间 | ||
| 67 | - String rq=sdf.format(dBefore); | ||
| 68 | - //保留两位小数 | ||
| 69 | - DecimalFormat df = new DecimalFormat("#.00"); | ||
| 70 | - // TODO Auto-generated method stub | ||
| 71 | - Map<String, Object> newMap=new HashMap<String,Object>(); | ||
| 72 | - //当天YLB信息 | ||
| 73 | - List<Ylb> ylList=repository.obtainYl(rq); | ||
| 74 | - //当天YLXXB信息 | ||
| 75 | -// List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq); | ||
| 76 | - //前一天所有车辆最后进场班次信息 | ||
| 77 | - List<Ylb> ylListBe=repository.obtainYlbefore(rq); | ||
| 78 | - List<Cyl> clyList=cylRepository.obtainCyl(); | ||
| 79 | - //从排班表中计算出行驶的总里程 | ||
| 80 | - List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList("",rq); | ||
| 81 | - | ||
| 82 | - for(int x=0;x<listpb.size();x++){ | ||
| 83 | - | ||
| 84 | - Map<String, Object> map=listpb.get(x); | ||
| 85 | - | ||
| 86 | - //判断驾驶员驾驶的该车辆是否已经存入了(查出的结果集中日期是相同的,根据驾驶员、内部编号、线路编码判断) | ||
| 87 | - Ylb t=new Ylb(); | ||
| 88 | - for(int k=0;k<ylList.size();k++){ | ||
| 89 | - Ylb t1=ylList.get(k); | ||
| 90 | - if(t1.getNbbm().equals(map.get("clZbh").toString()) | ||
| 91 | - &&t1.getJsy().equals(map.get("jGh").toString()) | ||
| 92 | - &&t1.getXlbm().equals(map.get("xlBm").toString())) | ||
| 93 | - { | ||
| 94 | - t=t1; | ||
| 95 | - } | 77 | + try { |
| 78 | + List<Cars> carsList=carsRepository.findCars(); | ||
| 79 | + Map<String, Boolean> carsMap=new HashMap<String, Boolean>(); | ||
| 80 | + for (int i = 0; i < carsList.size(); i++) { | ||
| 81 | + Cars c=carsList.get(i); | ||
| 82 | + carsMap.put(c.getInsideCode(), c.getSfdc()); | ||
| 96 | } | 83 | } |
| 97 | - try { | ||
| 98 | - //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量 | ||
| 99 | - if(map.get("seqNumber").toString().equals("1")){ | ||
| 100 | - for (int y = 0; y < clyList.size(); y++) { | ||
| 101 | - Cyl cyl=clyList.get(y); | ||
| 102 | - if(map.get("clZbh").toString().equals(cyl.getNbbm())){ | ||
| 103 | - t.setCzyl(cyl.getCyl()); | ||
| 104 | - break; | ||
| 105 | - }else{ | ||
| 106 | - for (int i = 0; i < ylListBe.size(); i++) { | ||
| 107 | - Ylb ylb=ylListBe.get(i); | ||
| 108 | - if(map.get("clZbh").toString().equals(ylb.getNbbm())){ | ||
| 109 | - t.setCzyl(ylb.getJzyl()); | ||
| 110 | - break; | ||
| 111 | - }else{ | ||
| 112 | - t.setCzyl(0.0); | 84 | + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); |
| 85 | + Date dNow = new Date(); //当前时间 | ||
| 86 | + Date dBefore = new Date(); | ||
| 87 | + Calendar calendar = Calendar.getInstance(); //得到日历 | ||
| 88 | + calendar.setTime(dNow);//把当前时间赋给日历 | ||
| 89 | + calendar.add(Calendar.DAY_OF_MONTH, -1); //设置为前一天 | ||
| 90 | + dBefore = calendar.getTime(); //得到前一天的时间 | ||
| 91 | + String rq=sdf.format(dBefore); | ||
| 92 | + //保留两位小数 | ||
| 93 | + DecimalFormat df = new DecimalFormat("#.00"); | ||
| 94 | + // TODO Auto-generated method stub | ||
| 95 | + Map<String, Object> newMap=new HashMap<String,Object>(); | ||
| 96 | + //当天YLB信息 | ||
| 97 | + List<Ylb> ylList=repository.obtainYl(rq,"","","","","nbbm"); | ||
| 98 | + //当天YLXXB信息 | ||
| 99 | + // List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq); | ||
| 100 | + //前一天所有车辆最后进场班次信息 | ||
| 101 | + List<Ylb> ylListBe=repository.obtainYlbefore(rq,"","","",""); | ||
| 102 | + List<Cyl> clyList=cylRepository.obtainCyl("",""); | ||
| 103 | + //从排班表中计算出行驶的总里程 | ||
| 104 | + List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList("", rq, "", "", "", ""); | ||
| 105 | + | ||
| 106 | + for(int x=0;x<listpb.size();x++){ | ||
| 107 | + boolean sfdc=true; | ||
| 108 | + Map<String, Object> map=listpb.get(x); | ||
| 109 | + if (carsMap.get(map.get("clZbh").toString())!=null) { | ||
| 110 | + sfdc= carsMap.get(map.get("clZbh").toString()); | ||
| 111 | + }else{ | ||
| 112 | + sfdc=true; | ||
| 113 | + } | ||
| 114 | + if(!sfdc){ | ||
| 115 | + //判断驾驶员驾驶的该车辆是否已经存入了(查出的结果集中日期是相同的,根据驾驶员、内部编号、线路编码判断) | ||
| 116 | + Ylb t=new Ylb(); | ||
| 117 | + for(int k=0;k<ylList.size();k++){ | ||
| 118 | + Ylb t1=ylList.get(k); | ||
| 119 | + if(t1.getNbbm().equals(map.get("clZbh").toString()) | ||
| 120 | + &&t1.getJsy().equals(map.get("jGh").toString()) | ||
| 121 | + &&t1.getXlbm().equals(map.get("xlBm").toString())) | ||
| 122 | + { | ||
| 123 | + t=t1; | ||
| 124 | + } | ||
| 125 | + } | ||
| 126 | + | ||
| 127 | + //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量 | ||
| 128 | + if(map.get("seqNumber").toString().equals("1")){ | ||
| 129 | + boolean fage=true; | ||
| 130 | + for (int i = 0; i < ylListBe.size(); i++) { | ||
| 131 | + Ylb ylb=ylListBe.get(i); | ||
| 132 | + if(map.get("clZbh").toString().equals(ylb.getNbbm())){ | ||
| 133 | + if(ylb.getJzyl()!=null){ | ||
| 134 | + if(ylb.getJzyl()>0){ | ||
| 135 | + t.setCzyl(ylb.getJzyl()); | ||
| 136 | + fage=false; | ||
| 137 | + break; | ||
| 138 | + } | ||
| 113 | } | 139 | } |
| 140 | + | ||
| 114 | } | 141 | } |
| 115 | } | 142 | } |
| 143 | + if(fage){ | ||
| 144 | + for (int y = 0; y < clyList.size(); y++) { | ||
| 145 | + Cyl cyl=clyList.get(y); | ||
| 146 | + if(map.get("clZbh").toString().equals(cyl.getNbbm())){ | ||
| 147 | + if(cyl.getCyl()!=null){ | ||
| 148 | + t.setCzyl(cyl.getCyl()); | ||
| 149 | + fage=false; | ||
| 150 | + break; | ||
| 151 | + } | ||
| 152 | + } | ||
| 153 | + } | ||
| 154 | + } | ||
| 155 | + if(fage){ | ||
| 156 | + t.setCzyl(0.0); | ||
| 157 | + } | ||
| 116 | } | 158 | } |
| 159 | + | ||
| 160 | + /*Double jzl=0.0; | ||
| 161 | + //把当天的YLXXB的加注量设置为当天YLB的加注量(根据车号,驾驶员判断) | ||
| 162 | + for(int j=0;j<ylxxList.size();j++){ | ||
| 163 | + Ylxxb ylxxb= ylxxList.get(j); | ||
| 164 | + if(map.get("clZbh").toString().equals(ylxxb.getNbbm()) &&map.get("jGh").toString().equals(ylxxb.getJsy())){ | ||
| 165 | + jzl+=ylxxb.getJzl(); | ||
| 166 | + } | ||
| 167 | + } | ||
| 168 | + t.setJzl(jzl);*/ | ||
| 169 | + t.setNbbm(map.get("clZbh").toString()); | ||
| 170 | + t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); | ||
| 171 | + t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | ||
| 172 | + t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); | ||
| 173 | + t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | ||
| 174 | + t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); | ||
| 175 | + t.setFgsdm(map.get("bCompany")==null?"":map.get("bCompany").toString()); | ||
| 176 | + t.setRq(sdf.parse(rq)); | ||
| 177 | + repository.save(t); | ||
| 178 | + | ||
| 117 | } | 179 | } |
| 118 | - | ||
| 119 | - /*Double jzl=0.0; | ||
| 120 | - //把当天的YLXXB的加注量设置为当天YLB的加注量(根据车号,驾驶员判断) | ||
| 121 | - for(int j=0;j<ylxxList.size();j++){ | ||
| 122 | - Ylxxb ylxxb= ylxxList.get(j); | ||
| 123 | - if(map.get("clZbh").toString().equals(ylxxb.getNbbm()) &&map.get("jGh").toString().equals(ylxxb.getJsy())){ | ||
| 124 | - jzl+=ylxxb.getJzl(); | ||
| 125 | - } | ||
| 126 | - } | ||
| 127 | - t.setJzl(jzl);*/ | ||
| 128 | - t.setNbbm(map.get("clZbh").toString()); | ||
| 129 | - t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); | ||
| 130 | - t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | ||
| 131 | - t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); | ||
| 132 | - t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | ||
| 133 | - t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); | ||
| 134 | - t.setFgsdm(map.get("bCompany")==null?"":map.get("bCompany").toString()); | ||
| 135 | - t.setRq(sdf.parse(rq)); | ||
| 136 | - repository.save(t); | ||
| 137 | result = "success"; | 180 | result = "success"; |
| 138 | - } catch (Exception e) { | ||
| 139 | - // TODO Auto-generated catch block | ||
| 140 | - e.printStackTrace(); | ||
| 141 | - }finally{ | ||
| 142 | - logger.info("setDDRB:"+result); | ||
| 143 | } | 181 | } |
| 182 | + }catch (Exception e) { | ||
| 183 | + // TODO Auto-generated catch block | ||
| 184 | + throw e; | ||
| 185 | + }finally{ | ||
| 186 | + logger.info("setDDRB:"+result); | ||
| 144 | } | 187 | } |
| 145 | - | 188 | + |
| 146 | return result; | 189 | return result; |
| 147 | } | 190 | } |
| 148 | - | 191 | + |
| 149 | /** | 192 | /** |
| 150 | * 获取进存油信息 | 193 | * 获取进存油信息 |
| 151 | * @Transactional 回滚事物 | 194 | * @Transactional 回滚事物 |
| 152 | */ | 195 | */ |
| 153 | - @Transactional | 196 | + @Transactional |
| 154 | @Override | 197 | @Override |
| 155 | - public Map<String, Object> obtain(Map<String, Object> map2) { | ||
| 156 | - String rq=map2.get("rq").toString(); | ||
| 157 | - String line=""; | ||
| 158 | - if(map2.get("xlbm_eq")!=null){ | ||
| 159 | - line=map2.get("xlbm_eq").toString(); | ||
| 160 | - } | ||
| 161 | - | ||
| 162 | - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 163 | - //保留两位小数 | ||
| 164 | - DecimalFormat df = new DecimalFormat("#.00"); | ||
| 165 | - // TODO Auto-generated method stub | ||
| 166 | - Map<String, Object> newMap=new HashMap<String,Object>(); | ||
| 167 | - //当天YLB信息 | ||
| 168 | - List<Ylb> ylList=repository.obtainYl(rq); | ||
| 169 | - //当天YLXXB信息 | ||
| 170 | - List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq); | ||
| 171 | - //前一天所有车辆最后进场班次信息 | ||
| 172 | - List<Ylb> ylListBe=repository.obtainYlbefore(rq); | ||
| 173 | - List<Cyl> clyList=cylRepository.obtainCyl(); | ||
| 174 | - //从排班表中计算出行驶的总里程 | ||
| 175 | - List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList(line,rq); | ||
| 176 | - List<Ylb> addList=new ArrayList<Ylb>(); | ||
| 177 | - List<Ylb> updateList=new ArrayList<Ylb>(); | ||
| 178 | - for(int x=0;x<listpb.size();x++){ | ||
| 179 | - String type="add"; | ||
| 180 | - Map<String, Object> map=listpb.get(x); | ||
| 181 | - | ||
| 182 | - //判断驾驶员驾驶的该车辆是否已经存入了(查出的结果集中日期是相同的,根据驾驶员、内部编号、线路编码判断) | ||
| 183 | - Ylb t=new Ylb(); | ||
| 184 | - for(int k=0;k<ylList.size();k++){ | ||
| 185 | - Ylb t1=ylList.get(k); | ||
| 186 | - if(t1.getNbbm().equals(map.get("clZbh").toString()) | ||
| 187 | - &&t1.getJsy().equals(map.get("jGh").toString()) | ||
| 188 | - &&t1.getXlbm().equals(map.get("xlBm").toString())) | ||
| 189 | - { | ||
| 190 | - t=t1; | ||
| 191 | - type="update"; | ||
| 192 | - } | 198 | + public Map<String, Object> obtain(Map<String, Object> map2) throws Exception{ |
| 199 | + Map<String, Object> newMap = new HashMap<String, Object>(); | ||
| 200 | + try { | ||
| 201 | + List<Cars> carsList = carsRepository.findCars(); | ||
| 202 | + Map<String, Boolean> carsMap = new HashMap<String, Boolean>(); | ||
| 203 | + for (int i = 0; i < carsList.size(); i++) { | ||
| 204 | + Cars c = carsList.get(i); | ||
| 205 | + carsMap.put(c.getInsideCode(), c.getSfdc()); | ||
| 193 | } | 206 | } |
| 194 | - try { | ||
| 195 | - //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量 | ||
| 196 | - if(map.get("seqNumber").toString().equals("1")){ | ||
| 197 | - for (int y = 0; y < clyList.size(); y++) { | ||
| 198 | - Cyl cyl=clyList.get(y); | ||
| 199 | - if(map.get("clZbh").toString().equals(cyl.getNbbm())){ | ||
| 200 | - t.setCzyl(cyl.getCyl()); | ||
| 201 | - break; | ||
| 202 | - }else{ | ||
| 203 | - for (int i = 0; i < ylListBe.size(); i++) { | ||
| 204 | - Ylb ylb=ylListBe.get(i); | ||
| 205 | - if(map.get("clZbh").toString().equals(ylb.getNbbm())){ | 207 | + String rq = map2.get("rq").toString(); |
| 208 | + String line = ""; | ||
| 209 | + if (map2.get("xlbm_like") != null) { | ||
| 210 | + line = map2.get("xlbm_like").toString().trim(); | ||
| 211 | + } | ||
| 212 | + String gsbm=""; | ||
| 213 | + if(map2.get("ssgsdm_like")!=null){ | ||
| 214 | + gsbm=map2.get("ssgsdm_like").toString(); | ||
| 215 | + } | ||
| 216 | + String fgsbm=""; | ||
| 217 | + if(map2.get("fgsdm_like")!=null){ | ||
| 218 | + fgsbm=map2.get("fgsdm_like").toString(); | ||
| 219 | + } | ||
| 220 | + String nbbm=""; | ||
| 221 | + if(map2.get("nbbm_eq")!=null){ | ||
| 222 | + nbbm=map2.get("nbbm_eq").toString(); | ||
| 223 | + } | ||
| 224 | + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); | ||
| 225 | + // 保留两位小数 | ||
| 226 | + DecimalFormat df = new DecimalFormat("#.00"); | ||
| 227 | + // TODO Auto-generated method stub | ||
| 228 | + // 当天YLB信息 | ||
| 229 | + List<Ylb> ylList = repository.obtainYl(rq,gsbm,fgsbm,line,nbbm,"nbbm"); | ||
| 230 | + // 当天YLXXB信息 | ||
| 231 | + List<Ylxxb> ylxxList = ylxxbRepository.obtainYlxx(rq, 0,gsbm); | ||
| 232 | + // 前一天所有车辆最后进场班次信息 | ||
| 233 | + List<Ylb> ylListBe = repository.obtainYlbefore(rq, gsbm, fgsbm, line, nbbm); | ||
| 234 | + List<Cyl> clyList = cylRepository.obtainCyl(nbbm,gsbm); | ||
| 235 | + // 从排班表中计算出行驶的总里程 | ||
| 236 | + List<Map<String, Object>> listpb = scheduleRealInfoService.yesterdayDataList(line, rq, gsbm, fgsbm, "", nbbm); | ||
| 237 | + List<Ylb> addList = new ArrayList<Ylb>(); | ||
| 238 | + List<Ylb> updateList = new ArrayList<Ylb>(); | ||
| 239 | + String ins=""; | ||
| 240 | + for (int x = 0; x < listpb.size(); x++) { | ||
| 241 | + String type = "add"; | ||
| 242 | + boolean sfdc = true; | ||
| 243 | + Map<String, Object> map = listpb.get(x); | ||
| 244 | + if (carsMap.get(map.get("clZbh").toString()) != null) { | ||
| 245 | + sfdc = carsMap.get(map.get("clZbh").toString()); | ||
| 246 | + } else { | ||
| 247 | + sfdc = true; | ||
| 248 | + } | ||
| 249 | + if (!sfdc) { | ||
| 250 | + // 判断驾驶员驾驶的该车辆是否已经存入了(查出的结果集中日期是相同的,根据驾驶员、内部编号、线路编码判断) | ||
| 251 | + Ylb t = new Ylb(); | ||
| 252 | + for (int k = 0; k < ylList.size(); k++) { | ||
| 253 | + Ylb t1 = ylList.get(k); | ||
| 254 | + if (t1.getNbbm().equals(map.get("clZbh").toString()) | ||
| 255 | + && t1.getJsy().equals(map.get("jGh").toString()) | ||
| 256 | + && t1.getXlbm().equals(map.get("xlBm").toString())) { | ||
| 257 | + t = t1; | ||
| 258 | + type = "update"; | ||
| 259 | + } | ||
| 260 | + } | ||
| 261 | + | ||
| 262 | + // 当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量 | ||
| 263 | + if (map.get("seqNumber").toString().equals("1")) { | ||
| 264 | + boolean fage = true; | ||
| 265 | + for (int i = 0; i < ylListBe.size(); i++) { | ||
| 266 | + Ylb ylb = ylListBe.get(i); | ||
| 267 | + if (map.get("clZbh").toString().equals(ylb.getNbbm())) { | ||
| 268 | + if(ylb.getJzyl()>0){ | ||
| 206 | t.setCzyl(ylb.getJzyl()); | 269 | t.setCzyl(ylb.getJzyl()); |
| 270 | + fage = false; | ||
| 207 | break; | 271 | break; |
| 208 | - }else{ | ||
| 209 | - t.setCzyl(0.0); | 272 | + } |
| 273 | + | ||
| 274 | + } | ||
| 275 | + } | ||
| 276 | + if (fage) { | ||
| 277 | + for (int y = 0; y < clyList.size(); y++) { | ||
| 278 | + Cyl cyl = clyList.get(y); | ||
| 279 | + if (map.get("clZbh").toString().equals(cyl.getNbbm())) { | ||
| 280 | + if(cyl.getCyl()>0){ | ||
| 281 | + t.setCzyl(cyl.getCyl()); | ||
| 282 | + fage = false; | ||
| 283 | + break; | ||
| 284 | + }else { | ||
| 285 | + if(cyl.getCxrl()!=null){ | ||
| 286 | + if(cyl.getCxrl()>0){ | ||
| 287 | + t.setCzyl(cyl.getCxrl()); | ||
| 288 | + fage = false; | ||
| 289 | + break; | ||
| 290 | + } | ||
| 291 | + } | ||
| 292 | + } | ||
| 210 | } | 293 | } |
| 211 | } | 294 | } |
| 212 | } | 295 | } |
| 296 | + if (fage) { | ||
| 297 | + t.setCzyl(0.0); | ||
| 298 | + } | ||
| 213 | } | 299 | } |
| 214 | - } | ||
| 215 | - | ||
| 216 | - Double jzl=0.0; | ||
| 217 | - //把当天的YLXXB的加注量设置为当天YLB的加注量(根据车号,驾驶员判断) | ||
| 218 | - for(int j=0;j<ylxxList.size();j++){ | ||
| 219 | - Ylxxb ylxxb= ylxxList.get(j); | ||
| 220 | - if(map.get("clZbh").toString().equals(ylxxb.getNbbm()) &&map.get("jGh").toString().equals(ylxxb.getJsy())){ | ||
| 221 | - jzl+=ylxxb.getJzl(); | 300 | + |
| 301 | + Double jzl = 0.0; | ||
| 302 | + // 把当天的YLXXB的加注量设置为当天YLB的加注量(根据车号,驾驶员判断) | ||
| 303 | + for (int j = 0; j < ylxxList.size(); j++) { | ||
| 304 | + Ylxxb ylxxb = ylxxList.get(j); | ||
| 305 | + if (map.get("clZbh").toString().equals(ylxxb.getNbbm()) | ||
| 306 | + && map.get("jGh").toString().equals(ylxxb.getJsy())) { | ||
| 307 | +// jzl += ylxxb.getJzl(); | ||
| 308 | + jzl =Arith.add(jzl, ylxxb.getJzl()); | ||
| 309 | + } | ||
| 310 | + } | ||
| 311 | + if(map.get("clZbh").toString().equals("W0A-212")){ | ||
| 312 | + System.out.println(); | ||
| 313 | + } | ||
| 314 | + if(map.get("clZbh").toString().equals("W0A-211")){ | ||
| 315 | + System.out.println(); | ||
| 222 | } | 316 | } |
| 317 | + t.setJzl(jzl); | ||
| 318 | + t.setNbbm(map.get("clZbh").toString()); | ||
| 319 | + t.setJsy(map.get("jGh") == null ? "" : map.get("jGh").toString()); | ||
| 320 | + t.setZlc(map.get("totalKilometers") == null ? 0.0 | ||
| 321 | + : Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | ||
| 322 | + t.setXlbm(map.get("xlBm") == null ? "" : map.get("xlBm").toString()); | ||
| 323 | + t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | ||
| 324 | + t.setSsgsdm(map.get("company") == null ? "" : map.get("company").toString()); | ||
| 325 | + t.setFgsdm(map.get("bCompany") == null ? "" : map.get("bCompany").toString()); | ||
| 326 | + t.setRq(sdf.parse(rq)); | ||
| 327 | + | ||
| 328 | + if(type.equals("add")){ | ||
| 329 | + addList.add(t); | ||
| 330 | + }else{ | ||
| 331 | + updateList.add(t); | ||
| 332 | + ins += t.getId().toString()+","; | ||
| 333 | + } | ||
| 334 | +// repository.save(t); | ||
| 335 | + newMap.put("status", ResponseCode.SUCCESS); | ||
| 336 | + | ||
| 223 | } | 337 | } |
| 224 | - t.setJzl(jzl); | ||
| 225 | - t.setNbbm(map.get("clZbh").toString()); | ||
| 226 | - t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); | ||
| 227 | - t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | ||
| 228 | - t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); | ||
| 229 | - t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | ||
| 230 | - t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); | ||
| 231 | - t.setFgsdm(map.get("bCompany")==null?"":map.get("bCompany").toString()); | ||
| 232 | - t.setRq(sdf.parse(rq)); | ||
| 233 | - /*if(type.equals("add")){ | ||
| 234 | - addList.add(t); | ||
| 235 | - }else{ | ||
| 236 | - updateList.add(t); | ||
| 237 | - }*/ | ||
| 238 | - repository.save(t); | ||
| 239 | - newMap.put("status", ResponseCode.SUCCESS); | ||
| 240 | - } catch (ParseException e) { | ||
| 241 | - // TODO Auto-generated catch block | ||
| 242 | - newMap.put("status", ResponseCode.ERROR); | ||
| 243 | - e.printStackTrace(); | ||
| 244 | } | 338 | } |
| 245 | - } | ||
| 246 | - /* try { | ||
| 247 | if(addList.size()>0){ | 339 | if(addList.size()>0){ |
| 248 | new BatchSaveUtils<Ylb>().saveList(addList, Ylb.class); | 340 | new BatchSaveUtils<Ylb>().saveList(addList, Ylb.class); |
| 249 | } | 341 | } |
| 250 | - | 342 | + |
| 251 | if(updateList.size()>0){ | 343 | if(updateList.size()>0){ |
| 252 | - | 344 | + for (int i = 0; i < updateList.size(); i++) { |
| 345 | + repository.save(updateList.get(i)); | ||
| 346 | + } | ||
| 253 | } | 347 | } |
| 254 | newMap.put("status", ResponseCode.SUCCESS); | 348 | newMap.put("status", ResponseCode.SUCCESS); |
| 255 | - } | ||
| 256 | - catch (Exception e) { | ||
| 257 | - // TODO: handle exception | 349 | + } catch (ParseException e) { |
| 350 | + // TODO Auto-generated catch block | ||
| 258 | newMap.put("status", ResponseCode.ERROR); | 351 | newMap.put("status", ResponseCode.ERROR); |
| 259 | - }*/ | 352 | + throw e; |
| 353 | + } | ||
| 354 | + | ||
| 260 | return newMap; | 355 | return newMap; |
| 261 | } | 356 | } |
| 262 | - | ||
| 263 | - | 357 | + |
| 358 | + | ||
| 264 | /** | 359 | /** |
| 265 | * 进场等于出场 | 360 | * 进场等于出场 |
| 266 | */ | 361 | */ |
| 267 | - @Transactional | 362 | + @Transactional |
| 268 | @Override | 363 | @Override |
| 269 | - public Map<String, Object> outAndIn(Map<String, Object> map){ | 364 | + public Map<String, Object> outAndIn(Map<String, Object> map) throws Exception{ |
| 270 | // TODO Auto-generated method stub | 365 | // TODO Auto-generated method stub |
| 366 | + String xlbm=""; | ||
| 367 | + if(map.get("xlbm_like")!=null){ | ||
| 368 | + xlbm= map.get("xlbm_like").toString().trim(); | ||
| 369 | + } | ||
| 370 | + String gsbm=""; | ||
| 371 | + if(map.get("ssgsdm_like")!=null){ | ||
| 372 | + gsbm=map.get("ssgsdm_like").toString(); | ||
| 373 | + } | ||
| 374 | + String fgsbm=""; | ||
| 375 | + if(map.get("fgsdm_like")!=null){ | ||
| 376 | + fgsbm=map.get("fgsdm_like").toString(); | ||
| 377 | + } | ||
| 378 | + String rq = map.get("rq").toString(); | ||
| 379 | + String nbbm=""; | ||
| 380 | + if(map.get("nbbm_eq")!=null){ | ||
| 381 | + nbbm=map.get("nbbm_eq").toString(); | ||
| 382 | + } | ||
| 383 | + | ||
| 271 | Map<String, Object> newMap=new HashMap<String,Object>(); | 384 | Map<String, Object> newMap=new HashMap<String,Object>(); |
| 272 | Map<String, Object> map2=new HashMap<String,Object>(); | 385 | Map<String, Object> map2=new HashMap<String,Object>(); |
| 273 | - String rq=map.get("rq").toString(); | ||
| 274 | - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 275 | - | ||
| 276 | try { | 386 | try { |
| 387 | + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); | ||
| 388 | + | ||
| 277 | map.put("rq_eq", sdf.parse(rq)); | 389 | map.put("rq_eq", sdf.parse(rq)); |
| 278 | - } catch (ParseException e1) { | ||
| 279 | - // TODO Auto-generated catch block | ||
| 280 | - e1.printStackTrace(); | ||
| 281 | - } | ||
| 282 | - //获取车辆存油信息 | ||
| 283 | - List<Cyl> cylList=cylRepository.findAll(new CustomerSpecs<Cyl>(newMap)); | ||
| 284 | - //指定日期YLB信息 | ||
| 285 | - Iterator<Ylb> iterator= repository.findAll(new CustomerSpecs<Ylb>(map)).iterator(); | ||
| 286 | - while(iterator.hasNext()){ | ||
| 287 | - Ylb ylb=iterator.next(); | ||
| 288 | - //判断是否已经计算过 | ||
| 289 | - if(newMap.get("nbbm"+ylb.getNbbm())==null){ | ||
| 290 | - String nbbm_eq=ylb.getNbbm(); | ||
| 291 | - Date rq_eq=ylb.getRq(); | ||
| 292 | - //得到一天总的加油和里程(根据车,时间) | ||
| 293 | - List<Object[]> sumList=repository.sumLcYl(nbbm_eq, rq_eq); | ||
| 294 | - //保存总的加油量 | ||
| 295 | - Double jzl=Double.valueOf(sumList.get(0)[0].toString()); | ||
| 296 | - //保存总的里程 | ||
| 297 | - Double zlc=Double.valueOf(sumList.get(0)[1].toString()); | ||
| 298 | - //保留两位小数 | 390 | +// List<Cyl> clyList = cylRepository.obtainCyl(); |
| 391 | + // 获取车辆存油信息 | ||
| 392 | + List<Cyl> cylList = cylRepository.obtainCyl(nbbm,gsbm); | ||
| 393 | + // 指定日期YLB信息 | ||
| 394 | + List<Ylb> ylbList =repository.obtainYl(rq,gsbm,fgsbm,xlbm,nbbm,"nbbm"); | ||
| 395 | + List<Ylb> iterator2=repository.obtainYl(rq,gsbm,fgsbm,xlbm,nbbm,"jcsx"); | ||
| 396 | + for (int i=0;i<ylbList.size();i++) { | ||
| 397 | + Ylb ylb = ylbList.get(i); | ||
| 398 | + // 判断是否已经计算过 | ||
| 399 | + if (newMap.get("nbbm" + ylb.getNbbm()) == null) { | ||
| 400 | + String nbbm_eq = ylb.getNbbm(); | ||
| 401 | + Date rq_eq = ylb.getRq(); | ||
| 402 | + // 得到一天总的加油和里程(根据车,时间) | ||
| 403 | + List<Object[]> sumList = repository.sumLcYl(nbbm_eq, rq_eq,ylb.getXlbm()); | ||
| 404 | + // 保存总的加油量 | ||
| 405 | + Double jzl = 0.0; | ||
| 406 | + // 保存总的里程 | ||
| 407 | + Double zlc = 0.0; | ||
| 408 | + //保存总的损耗 | ||
| 409 | + Double zsh = 0.0; | ||
| 410 | + for (int j = 0; j < sumList.size(); j++) { | ||
| 411 | + jzl = Arith.add(jzl, Double.valueOf(sumList.get(j)[0].toString())); | ||
| 412 | + zlc = Arith.add(zlc, Double.valueOf(sumList.get(j)[1].toString())); | ||
| 413 | + zsh = Arith.add(zsh, Double.valueOf(sumList.get(j)[2].toString())); | ||
| 414 | + } | ||
| 415 | + jzl = Arith.sub(jzl, zsh); | ||
| 416 | + // 保留两位小数 | ||
| 299 | DecimalFormat df = new DecimalFormat("#.00"); | 417 | DecimalFormat df = new DecimalFormat("#.00"); |
| 300 | - Double zyl=0.0; | ||
| 301 | - Double nextJzyl=0.0; | ||
| 302 | - | ||
| 303 | - //保存已经计算过的车辆,相同车辆编号的车不在计算 | ||
| 304 | - newMap.put("nbbm"+ylb.getNbbm(), ylb.getNbbm()); | ||
| 305 | - | ||
| 306 | - //查询指定车辆,设置进、存、耗油量 | 418 | + Double zyl = 0.0; |
| 419 | + Double nextJzyl = 0.0; | ||
| 420 | + // 保存已经计算过的车辆,相同车辆编号的车不在计算 | ||
| 421 | + newMap.put("nbbm" + ylb.getNbbm(), ylb.getNbbm()); | ||
| 422 | + | ||
| 423 | + // 查询指定车辆,设置进、存、耗油量 | ||
| 307 | map.remove("nbbm_eq"); | 424 | map.remove("nbbm_eq"); |
| 308 | map.put("nbbm_eq", ylb.getNbbm()); | 425 | map.put("nbbm_eq", ylb.getNbbm()); |
| 309 | - Iterator<Ylb> iterator2= repository.findAll(new CustomerSpecs<Ylb>(map),new Sort(Direction.ASC, "jcsx")).iterator(); | ||
| 310 | - while(iterator2.hasNext()){ | ||
| 311 | - try{ | ||
| 312 | - Ylb t = iterator2.next(); | ||
| 313 | - if(t.getJcsx()==1){ | ||
| 314 | - //进场等于出场的操作 既 最后进场存油量等于第一次的出场存油量 | ||
| 315 | - Double yl=t.getCzyl(); | ||
| 316 | - Double jcyl=t.getCzyl(); | ||
| 317 | - zyl=jcyl+jzl-yl; | ||
| 318 | - Double yh=Double.parseDouble(df.format(zyl*(t.getZlc()/zlc))); | 426 | + map.put("xlbm_like", ylb.getXlbm()); |
| 427 | +// Iterator<Ylb> iterator2 = repository | ||
| 428 | +// .findAll(new CustomerSpecs<Ylb>(map), new Sort(Direction.ASC, "jcsx")).iterator(); | ||
| 429 | + for (int j = 0; j < iterator2.size(); j++) { | ||
| 430 | + | ||
| 431 | + Ylb t = iterator2.get(j); | ||
| 432 | + if(t.getNbbm().equals(ylb.getNbbm())){ | ||
| 433 | + if (t.getJcsx() == 1) { | ||
| 434 | + // 进场等于出场的操作 既 最后进场存油量等于第一次的出场存油量 | ||
| 435 | + Double yl = t.getCzyl(); | ||
| 436 | + Double jcyl = t.getCzyl(); | ||
| 437 | +// zyl = jcyl + jzl - yl; | ||
| 438 | + zyl =Arith.sub( Arith.add(jcyl, jzl),yl); | ||
| 439 | + Double yh = Double.parseDouble(df.format(zyl * (t.getZlc() / zlc))); | ||
| 319 | t.setYh(yh); | 440 | t.setYh(yh); |
| 320 | - nextJzyl=t.getJzl()+t.getCzyl()-yh; | ||
| 321 | - t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 322 | - }else{ | ||
| 323 | - t.setCzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 324 | - Double yh=Double.parseDouble(df.format(zyl*(t.getZlc()/zlc))); | 441 | +// nextJzyl = t.getJzl() + t.getCzyl() - yh; |
| 442 | + nextJzyl =Arith.sub( Arith.add(t.getJzl(), t.getCzyl()),yh); | ||
| 443 | +// t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 444 | + t.setJzyl(nextJzyl); | ||
| 445 | + } else { | ||
| 446 | +// t.setCzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 447 | + t.setCzyl(nextJzyl); | ||
| 448 | + Double yh = Double.parseDouble(df.format(zyl * (t.getZlc() / zlc))); | ||
| 325 | t.setYh(yh); | 449 | t.setYh(yh); |
| 326 | - nextJzyl=t.getJzl()+nextJzyl-yh; | ||
| 327 | - t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | 450 | +// nextJzyl = t.getJzl() + nextJzyl - yh; |
| 451 | + nextJzyl =Arith.sub( Arith.add(t.getJzl(),nextJzyl),yh); | ||
| 452 | +// t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 453 | + t.setJzyl(nextJzyl); | ||
| 328 | } | 454 | } |
| 329 | - | ||
| 330 | repository.save(t); | 455 | repository.save(t); |
| 331 | - //设置存油量 | ||
| 332 | - Cyl cyl=null; | ||
| 333 | - boolean fage=false; | ||
| 334 | - for(int z=0;z<cylList.size();z++){ | ||
| 335 | - cyl=cylList.get(z); | ||
| 336 | - if(t.getNbbm().equals(cyl.getNbbm())){ | ||
| 337 | - cyl.setCyl(t.getJzyl()); | ||
| 338 | - cyl.setUpdatetime(t.getRq()); | ||
| 339 | - fage=true; | ||
| 340 | - break; | ||
| 341 | - } | ||
| 342 | - } | ||
| 343 | - | ||
| 344 | - if(fage){ | ||
| 345 | - cylRepository.save(cyl); | ||
| 346 | - }else{ | ||
| 347 | - cyl=new Cyl(); | ||
| 348 | - cyl.setNbbm(t.getNbbm()); | 456 | + } |
| 457 | + | ||
| 458 | + // 设置存油量 | ||
| 459 | + Cyl cyl = null; | ||
| 460 | + boolean fage = false; | ||
| 461 | + for (int z = 0; z < cylList.size(); z++) { | ||
| 462 | + cyl = cylList.get(z); | ||
| 463 | + if (t.getNbbm().equals(cyl.getNbbm())) { | ||
| 349 | cyl.setCyl(t.getJzyl()); | 464 | cyl.setCyl(t.getJzyl()); |
| 350 | - cyl.setGsdm(t.getSsgsdm()); | ||
| 351 | cyl.setUpdatetime(t.getRq()); | 465 | cyl.setUpdatetime(t.getRq()); |
| 352 | - cylRepository.save(cyl); | 466 | + fage = true; |
| 467 | + break; | ||
| 353 | } | 468 | } |
| 354 | - | ||
| 355 | - | ||
| 356 | - map2.put("status", ResponseCode.SUCCESS); | ||
| 357 | - }catch(Exception e){ | ||
| 358 | - map2.put("status", ResponseCode.ERROR); | ||
| 359 | - logger.error("save erro.", e); | ||
| 360 | } | 469 | } |
| 470 | + if (fage) { | ||
| 471 | + cylRepository.save(cyl); | ||
| 472 | + } else { | ||
| 473 | + cyl = new Cyl(); | ||
| 474 | + cyl.setNbbm(t.getNbbm()); | ||
| 475 | + cyl.setCyl(t.getJzyl()); | ||
| 476 | + cyl.setGsdm(t.getSsgsdm()); | ||
| 477 | + cyl.setUpdatetime(t.getRq()); | ||
| 478 | + cylRepository.save(cyl); | ||
| 479 | + } | ||
| 480 | + map2.put("status", ResponseCode.SUCCESS); | ||
| 361 | } | 481 | } |
| 362 | - | ||
| 363 | - | ||
| 364 | } | 482 | } |
| 483 | + } | ||
| 484 | + } catch (Exception e) { | ||
| 485 | + map2.put("status", ResponseCode.ERROR); | ||
| 486 | + logger.error("save erro.", e); | ||
| 487 | + throw e; | ||
| 365 | } | 488 | } |
| 366 | - | ||
| 367 | return map2; | 489 | return map2; |
| 368 | } | 490 | } |
| 369 | - | 491 | + |
| 370 | /** | 492 | /** |
| 371 | * 拆分 | 493 | * 拆分 |
| 372 | */ | 494 | */ |
| 373 | - @Transactional | 495 | + @Transactional |
| 374 | @Override | 496 | @Override |
| 375 | public Map<String, Object> sort(Map<String, Object> map) { | 497 | public Map<String, Object> sort(Map<String, Object> map) { |
| 376 | // TODO Auto-generated method stub | 498 | // TODO Auto-generated method stub |
| 377 | Map<String, Object> newMap = new HashMap<String, Object>(); | 499 | Map<String, Object> newMap = new HashMap<String, Object>(); |
| 378 | - //获取车辆存油信息 | ||
| 379 | - List<Cyl> cylList=cylRepository.findAll(new CustomerSpecs<Cyl>(newMap)); | ||
| 380 | - int id=Integer.parseInt(map.get("id").toString()); | ||
| 381 | - //最后存油量 | ||
| 382 | - Double yl=Double.parseDouble(map.get("jzyl").toString()); | ||
| 383 | - Ylb ylb=repository.findOne(id); | ||
| 384 | - String nbbm_eq=ylb.getNbbm(); | ||
| 385 | - Date rq_eq=ylb.getRq(); | ||
| 386 | - //得到一天总的加油和里程(根据车,时间) | ||
| 387 | - List<Object[]> sumList=repository.sumLcYl(nbbm_eq, rq_eq); | ||
| 388 | - //保存总的加油量 | ||
| 389 | - Double jzl=Double.valueOf(sumList.get(0)[0].toString()); | ||
| 390 | - //保存总的里程 | ||
| 391 | - Double zlc=Double.valueOf(sumList.get(0)[1].toString()); | ||
| 392 | - map.put("nbbm_eq", nbbm_eq); | ||
| 393 | - map.put("rq_eq",rq_eq); | ||
| 394 | - Iterator<Ylb> iterator= repository.findAll(new CustomerSpecs<Ylb>(map),new Sort(Direction.ASC, "jcsx")).iterator(); | ||
| 395 | - //根据jcyl排序1为该车当日第一个出场,出场油量为前一天的存油 | ||
| 396 | - //保留两位小数 | ||
| 397 | - DecimalFormat df = new DecimalFormat("#.00"); | ||
| 398 | - Double zyl=0.0; | ||
| 399 | - Double nextJzyl=0.0; | ||
| 400 | - //车的,进,出油量及耗油 | ||
| 401 | - while(iterator.hasNext()){ | ||
| 402 | - try{ | ||
| 403 | - Ylb t = iterator.next(); | ||
| 404 | - if(t.getJcsx()==1){ | ||
| 405 | - Double jcyl=t.getCzyl(); | ||
| 406 | - zyl=jcyl+jzl-yl; | ||
| 407 | - Double yh=0.0; | ||
| 408 | - if(zlc>0&&t.getZlc()>0){ | ||
| 409 | - yh=Double.parseDouble(df.format(zyl*(t.getZlc()/zlc))); | 500 | + SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd"); |
| 501 | + try { | ||
| 502 | + // 获取车辆存油信息 | ||
| 503 | + List<Cyl> cylList = cylRepository.findAll(new CustomerSpecs<Cyl>(newMap)); | ||
| 504 | + int id = Integer.parseInt(map.get("id").toString()); | ||
| 505 | + // 最后存油量 | ||
| 506 | + Double yl = Double.parseDouble(map.get("jzyl").toString()); | ||
| 507 | + Double sh= Double.parseDouble(map.get("sh").toString()); | ||
| 508 | + String shyy=map.get("shyy").toString(); | ||
| 509 | + Ylb ylb = repository.findOne(id); | ||
| 510 | + | ||
| 511 | + String nbbm_eq = ylb.getNbbm(); | ||
| 512 | + Date rq_eq = ylb.getRq(); | ||
| 513 | + // 得到一天总的加油和里程(根据车,时间) | ||
| 514 | + List<Object[]> sumList = repository.sumLcYl(nbbm_eq, rq_eq,ylb.getXlbm()); | ||
| 515 | + // 保存总的加油量 | ||
| 516 | + Double jzl = 0.0; | ||
| 517 | + // 保存总的里程 | ||
| 518 | + Double zlc = 0.0; | ||
| 519 | + //保存总的损耗 | ||
| 520 | + Double zsh = 0.0; | ||
| 521 | + for (int j = 0; j < sumList.size(); j++) { | ||
| 522 | + jzl = Arith.add(jzl, Double.valueOf(sumList.get(j)[0].toString())); | ||
| 523 | + zlc = Arith.add(zlc, Double.valueOf(sumList.get(j)[1].toString())); | ||
| 524 | + zsh = Arith.add(zsh, Double.valueOf(sumList.get(j)[2].toString())); | ||
| 525 | + } | ||
| 526 | + jzl = Arith.sub(jzl, zsh); | ||
| 527 | + | ||
| 528 | + //新的 损耗不等于 旧的损耗 总损耗从新算 | ||
| 529 | + if(Arith.sub(ylb.getSh(),sh )!=0){ | ||
| 530 | +// zsh =zsh-ylb.getSh()+sh; | ||
| 531 | + zsh =Arith.add(Arith.sub(zsh, ylb.getSh()), sh); | ||
| 532 | +// jzl =jzl-zsh; | ||
| 533 | + jzl =Arith.sub(jzl, zsh); | ||
| 534 | + }else{ | ||
| 535 | +// jzl=jzl-zsh; | ||
| 536 | + jzl =Arith.sub(jzl, zsh); | ||
| 537 | + } | ||
| 538 | + map.put("nbbm_eq", nbbm_eq); | ||
| 539 | + map.put("rq_eq", rq_eq); | ||
| 540 | + List<Ylb> iterator2=repository.obtainYl(sdf.format(rq_eq),ylb.getSsgsdm(),ylb.getFgsdm(),ylb.getXlbm(), | ||
| 541 | + ylb.getNbbm(),"jcsx"); | ||
| 542 | +// Iterator<Ylb> iterator = repository.findAll(new CustomerSpecs<Ylb>(map), new Sort(Direction.ASC, "jcsx")) | ||
| 543 | +// .iterator(); | ||
| 544 | + // 根据jcyl排序1为该车当日第一个出场,出场油量为前一天的存油 | ||
| 545 | + // 保留两位小数 | ||
| 546 | + DecimalFormat df = new DecimalFormat("#.00"); | ||
| 547 | + Double zyl = 0.0; | ||
| 548 | + Double nextJzyl = 0.0; | ||
| 549 | + // 车的,进,出油量及耗油 | ||
| 550 | + for (int i = 0; i < iterator2.size(); i++) { | ||
| 551 | + Ylb t = iterator2.get(i); | ||
| 552 | + if (t.getJcsx() == 1) { | ||
| 553 | + if(t.getId()==id){ | ||
| 554 | + t.setSh(sh); | ||
| 555 | + t.setShyy(shyy); | ||
| 556 | + } | ||
| 557 | + Double jcyl = t.getCzyl(); | ||
| 558 | +// zyl = jcyl + jzl - yl; | ||
| 559 | + zyl = Arith.sub(Arith.add(jcyl, jzl), yl); | ||
| 560 | + Double yh = 0.0; | ||
| 561 | + if (zlc > 0 && t.getZlc() > 0) { | ||
| 562 | + yh = Double.parseDouble(df.format(zyl * (t.getZlc() / zlc))); | ||
| 410 | } | 563 | } |
| 411 | t.setYh(yh); | 564 | t.setYh(yh); |
| 412 | - nextJzyl=t.getJzl()+t.getCzyl()-yh; | ||
| 413 | - t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 414 | - }else{ | ||
| 415 | - if(t.getZlc()!=0){ | ||
| 416 | - t.setCzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 417 | - Double yh=Double.parseDouble(df.format(zyl*(t.getZlc()/zlc))); | 565 | +// nextJzyl = t.getJzl() + t.getCzyl() - yh-t.getSh(); |
| 566 | + nextJzyl =Arith.sub(Arith.add(t.getJzl(), t.getCzyl()), Arith.add(yh, t.getSh())); | ||
| 567 | +// t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 568 | + t.setJzyl(nextJzyl); | ||
| 569 | + } else { | ||
| 570 | + if(t.getId()==id){ | ||
| 571 | + t.setSh(sh); | ||
| 572 | + t.setShyy(shyy); | ||
| 573 | + } | ||
| 574 | + if (t.getZlc() != 0) { | ||
| 575 | +// t.setCzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 576 | + t.setCzyl(nextJzyl); | ||
| 577 | + Double yh = Double.parseDouble(df.format(zyl * (t.getZlc() / zlc))); | ||
| 418 | t.setYh(yh); | 578 | t.setYh(yh); |
| 419 | - nextJzyl=t.getJzl()+nextJzyl-yh; | ||
| 420 | - t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | 579 | +// nextJzyl = t.getJzl() + nextJzyl - yh-t.getSh(); |
| 580 | + nextJzyl = Arith.sub(Arith.add(t.getJzl(), nextJzyl), Arith.add(yh, t.getSh())); | ||
| 581 | +// t.setJzyl(Double.parseDouble(df.format(nextJzyl))); | ||
| 582 | + t.setJzyl(nextJzyl); | ||
| 421 | } | 583 | } |
| 422 | - | 584 | + |
| 423 | } | 585 | } |
| 424 | repository.save(t); | 586 | repository.save(t); |
| 425 | - | ||
| 426 | - //设置存油量 | ||
| 427 | - Cyl cyl=null; | ||
| 428 | - boolean fage=false; | ||
| 429 | - for(int z=0;z<cylList.size();z++){ | ||
| 430 | - cyl=cylList.get(z); | ||
| 431 | - if(t.getNbbm().equals(cyl.getNbbm())){ | 587 | + |
| 588 | + // 设置存油量 | ||
| 589 | + Cyl cyl = null; | ||
| 590 | + boolean fage = false; | ||
| 591 | + for (int z = 0; z < cylList.size(); z++) { | ||
| 592 | + cyl = cylList.get(z); | ||
| 593 | + if (t.getNbbm().equals(cyl.getNbbm())) { | ||
| 432 | cyl.setCyl(t.getJzyl()); | 594 | cyl.setCyl(t.getJzyl()); |
| 433 | cyl.setUpdatetime(t.getRq()); | 595 | cyl.setUpdatetime(t.getRq()); |
| 434 | - fage=true; | 596 | + fage = true; |
| 435 | break; | 597 | break; |
| 436 | } | 598 | } |
| 437 | } | 599 | } |
| 438 | - if(fage){ | 600 | + if (fage) { |
| 439 | cylRepository.save(cyl); | 601 | cylRepository.save(cyl); |
| 440 | - }else{ | ||
| 441 | - cyl=new Cyl(); | 602 | + } else { |
| 603 | + cyl = new Cyl(); | ||
| 442 | cyl.setNbbm(t.getNbbm()); | 604 | cyl.setNbbm(t.getNbbm()); |
| 443 | cyl.setCyl(t.getJzyl()); | 605 | cyl.setCyl(t.getJzyl()); |
| 444 | cyl.setGsdm(t.getSsgsdm()); | 606 | cyl.setGsdm(t.getSsgsdm()); |
| 445 | cyl.setUpdatetime(t.getRq()); | 607 | cyl.setUpdatetime(t.getRq()); |
| 446 | cylRepository.save(cyl); | 608 | cylRepository.save(cyl); |
| 447 | } | 609 | } |
| 448 | - | 610 | + |
| 449 | newMap.put("status", ResponseCode.SUCCESS); | 611 | newMap.put("status", ResponseCode.SUCCESS); |
| 450 | - }catch(Exception e){ | ||
| 451 | - newMap.put("status", ResponseCode.ERROR); | ||
| 452 | - logger.error("save erro.", e); | ||
| 453 | } | 612 | } |
| 613 | + } catch (Exception e) { | ||
| 614 | + newMap.put("status", ResponseCode.ERROR); | ||
| 615 | + logger.error("save erro.", e); | ||
| 454 | } | 616 | } |
| 455 | return newMap; | 617 | return newMap; |
| 456 | } | 618 | } |
| @@ -464,14 +626,33 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | @@ -464,14 +626,33 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | ||
| 464 | @Override | 626 | @Override |
| 465 | public Map<String, Object> checkYl(Map<String, Object> map) { | 627 | public Map<String, Object> checkYl(Map<String, Object> map) { |
| 466 | Map<String, Object> newMap=new HashMap<String,Object>(); | 628 | Map<String, Object> newMap=new HashMap<String,Object>(); |
| 467 | - String xlbm=map.get("xlbm_eq").toString(); | 629 | +// String xlbm=""; |
| 630 | +// if(map.get("xlbm_like")!=null){ | ||
| 631 | +// xlbm=map.get("xlbm_like").toString(); | ||
| 632 | +// } | ||
| 468 | // TODO Auto-generated method stub | 633 | // TODO Auto-generated method stub |
| 469 | try{ | 634 | try{ |
| 470 | //获取车辆存油信息 | 635 | //获取车辆存油信息 |
| 471 | List<Cyl> cylList=cylRepository.findAll(new CustomerSpecs<Cyl>(newMap)); | 636 | List<Cyl> cylList=cylRepository.findAll(new CustomerSpecs<Cyl>(newMap)); |
| 472 | String rq=map.get("rq").toString(); | 637 | String rq=map.get("rq").toString(); |
| 473 | - List<Ylb> ylbList=repository.obtainYl(rq); | ||
| 474 | - List<Ylxxb> ylxxbList=ylxxbRepository.obtainYlxx(rq); | 638 | + String xlbm=""; |
| 639 | + if(map.get("xlbm_like")!=null){ | ||
| 640 | + xlbm= map.get("xlbm_like").toString().trim(); | ||
| 641 | + } | ||
| 642 | + String gsbm=""; | ||
| 643 | + if(map.get("ssgsdm_like")!=null){ | ||
| 644 | + gsbm=map.get("ssgsdm_like").toString(); | ||
| 645 | + } | ||
| 646 | + String fgsbm=""; | ||
| 647 | + if(map.get("fgsdm_like")!=null){ | ||
| 648 | + fgsbm=map.get("fgsdm_like").toString(); | ||
| 649 | + } | ||
| 650 | + String nbbm=""; | ||
| 651 | + if(map.get("nbbm_eq")!=null){ | ||
| 652 | + nbbm=map.get("nbbm_eq").toString(); | ||
| 653 | + } | ||
| 654 | + List<Ylb> ylbList=repository.obtainYl(rq,gsbm,fgsbm,xlbm,nbbm,"nbbm"); | ||
| 655 | + List<Ylxxb> ylxxbList=ylxxbRepository.obtainYlxx(rq,0,gsbm); | ||
| 475 | for (int i = 0; i < ylxxbList.size(); i++) { | 656 | for (int i = 0; i < ylxxbList.size(); i++) { |
| 476 | Boolean fage=true; | 657 | Boolean fage=true; |
| 477 | Ylxxb y1=ylxxbList.get(i); | 658 | Ylxxb y1=ylxxbList.get(i); |
| @@ -482,7 +663,7 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | @@ -482,7 +663,7 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | ||
| 482 | break; | 663 | break; |
| 483 | } | 664 | } |
| 484 | } | 665 | } |
| 485 | - | 666 | + |
| 486 | if(fage){ | 667 | if(fage){ |
| 487 | Ylb t=new Ylb(); | 668 | Ylb t=new Ylb(); |
| 488 | t.setNbbm(y1.getNbbm()); | 669 | t.setNbbm(y1.getNbbm()); |
| @@ -492,14 +673,15 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | @@ -492,14 +673,15 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | ||
| 492 | t.setSsgsdm(y1.getGsdm()); | 673 | t.setSsgsdm(y1.getGsdm()); |
| 493 | t.setXlbm(xlbm); | 674 | t.setXlbm(xlbm); |
| 494 | repository.save(t); | 675 | repository.save(t); |
| 495 | - | 676 | + |
| 496 | //设置存油量 | 677 | //设置存油量 |
| 497 | Cyl cyl=null; | 678 | Cyl cyl=null; |
| 498 | boolean status=false; | 679 | boolean status=false; |
| 499 | for(int z=0;z<cylList.size();z++){ | 680 | for(int z=0;z<cylList.size();z++){ |
| 500 | cyl=cylList.get(z); | 681 | cyl=cylList.get(z); |
| 501 | if(t.getNbbm().equals(cyl.getNbbm())){ | 682 | if(t.getNbbm().equals(cyl.getNbbm())){ |
| 502 | - cyl.setCyl(cyl.getCyl()+t.getJzl()); | 683 | +// cyl.setCyl(cyl.getCyl()+t.getJzl()); |
| 684 | + cyl.setCyl(Arith.add(cyl.getCyl(),t.getJzl())); | ||
| 503 | cyl.setUpdatetime(t.getRq()); | 685 | cyl.setUpdatetime(t.getRq()); |
| 504 | status=true; | 686 | status=true; |
| 505 | break; | 687 | break; |
| @@ -515,16 +697,17 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | @@ -515,16 +697,17 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | ||
| 515 | cyl.setUpdatetime(t.getRq()); | 697 | cyl.setUpdatetime(t.getRq()); |
| 516 | cylRepository.save(cyl); | 698 | cylRepository.save(cyl); |
| 517 | } | 699 | } |
| 518 | - | ||
| 519 | - | 700 | + |
| 701 | + | ||
| 520 | } | 702 | } |
| 521 | } | 703 | } |
| 522 | newMap.put("status", ResponseCode.SUCCESS); | 704 | newMap.put("status", ResponseCode.SUCCESS); |
| 523 | }catch(Exception e){ | 705 | }catch(Exception e){ |
| 524 | newMap.put("status", ResponseCode.ERROR); | 706 | newMap.put("status", ResponseCode.ERROR); |
| 525 | logger.error("save erro.", e); | 707 | logger.error("save erro.", e); |
| 708 | + throw e; | ||
| 526 | } | 709 | } |
| 527 | - | 710 | + |
| 528 | return newMap; | 711 | return newMap; |
| 529 | } | 712 | } |
| 530 | 713 | ||
| @@ -540,28 +723,128 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | @@ -540,28 +723,128 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | ||
| 540 | " select x.nbbm,max(x.rq) as rq,max(x.jcsx) as jcsx from " | 723 | " select x.nbbm,max(x.rq) as rq,max(x.jcsx) as jcsx from " |
| 541 | + "(select nbbm,rq,max(jcsx) as jcsx from bsth_c_ylb where rq between '" | 724 | + "(select nbbm,rq,max(jcsx) as jcsx from bsth_c_ylb where rq between '" |
| 542 | + date2 +"' and '" + date+"' "+lineStr | 725 | + date2 +"' and '" + date+"' "+lineStr |
| 543 | - + "group by nbbm,rq) x group by x.nbbm ) b" | 726 | + + "group by nbbm,rq) x group by x.nbbm ) b" |
| 544 | + " left join (select nbbm,rq,jzyl,jcsx FROM bsth_c_ylb " | 727 | + " left join (select nbbm,rq,jzyl,jcsx FROM bsth_c_ylb " |
| 545 | + " where rq between '" | 728 | + " where rq between '" |
| 546 | + date2 +"' and '" + date+"' "+lineStr | 729 | + date2 +"' and '" + date+"' "+lineStr |
| 547 | + ") a " | 730 | + ") a " |
| 548 | + " on a.nbbm =b.nbbm and a.jcsx=b.jcsx and a.rq=b.rq " | 731 | + " on a.nbbm =b.nbbm and a.jcsx=b.jcsx and a.rq=b.rq " |
| 549 | + " where a.nbbm is not null order by a.nbbm"; | 732 | + " where a.nbbm is not null order by a.nbbm"; |
| 550 | - | 733 | + |
| 551 | // TODO Auto-generated method stub | 734 | // TODO Auto-generated method stub |
| 552 | - List<Ylb> list =jdbcTemplate.query(sql, | ||
| 553 | - new RowMapper<Ylb>(){ | ||
| 554 | - @Override | ||
| 555 | - public Ylb mapRow(ResultSet rs, int rowNum) throws SQLException { | ||
| 556 | - Ylb s = new Ylb(); | ||
| 557 | - s.setNbbm(rs.getString("nbbm")); | ||
| 558 | - s.setRq(rs.getDate("rq")); | ||
| 559 | - s.setJzyl(rs.getDouble("jzyl")); | ||
| 560 | - return s; | ||
| 561 | - } | ||
| 562 | - }); | 735 | + List<Ylb> list =jdbcTemplate.query(sql, |
| 736 | + new RowMapper<Ylb>(){ | ||
| 737 | + @Override | ||
| 738 | + public Ylb mapRow(ResultSet rs, int rowNum) throws SQLException { | ||
| 739 | + Ylb s = new Ylb(); | ||
| 740 | + s.setNbbm(rs.getString("nbbm")); | ||
| 741 | + s.setRq(rs.getDate("rq")); | ||
| 742 | + s.setJzyl(rs.getDouble("jzyl")); | ||
| 743 | + return s; | ||
| 744 | + } | ||
| 745 | + }); | ||
| 563 | return list; | 746 | return list; |
| 564 | } | 747 | } |
| 565 | - | ||
| 566 | 748 | ||
| 567 | -} | 749 | + @Override |
| 750 | + public StringBuffer checkNbmmNum(String rq, String gsbm, String fgsbm, String xlbm,String nbbm,int lx) { | ||
| 751 | + StringBuffer stringList =new StringBuffer(); | ||
| 752 | + List<Object[]> objectList=repository.checkNbmmNum(rq, gsbm, fgsbm, xlbm,nbbm); | ||
| 753 | + for (int i = 0; i < objectList.size(); i++) { | ||
| 754 | + String clbm=objectList.get(i)[0].toString()+","; | ||
| 755 | + int cs=Integer.parseInt(objectList.get(i)[1].toString()); | ||
| 756 | + //一车一单 | ||
| 757 | + if(lx==1){ | ||
| 758 | + if(cs==1){ | ||
| 759 | + stringList.append(clbm); | ||
| 760 | + } | ||
| 761 | + } | ||
| 762 | + //一车多单 | ||
| 763 | + if(lx==2){ | ||
| 764 | + if(cs>1){ | ||
| 765 | + stringList.append(clbm); | ||
| 766 | + } | ||
| 767 | + | ||
| 768 | + } | ||
| 769 | + } | ||
| 770 | + return stringList; | ||
| 771 | + } | ||
| 772 | + | ||
| 773 | + | ||
| 774 | + | ||
| 775 | + @Override | ||
| 776 | + public Map<String, Object> sumYlb(Map<String, Object> map) { | ||
| 777 | + // TODO Auto-generated method stub | ||
| 778 | + List<String> stringList=new ArrayList<String>(); | ||
| 779 | + String rq=map.get("rq").toString(); | ||
| 780 | + String gsbm=map.get("ssgsdm_like").toString(); | ||
| 781 | + String fgsbm=map.get("fgsdm_like").toString(); | ||
| 782 | + String xlbm=map.get("xlbm_like").toString().trim(); | ||
| 783 | + String nbbm=map.get("nbbm_eq").toString(); | ||
| 784 | + String sxtj=map.get("sxtj").toString(); | ||
| 785 | + if(nbbm.trim()!=""){ | ||
| 786 | + stringList.add(nbbm); | ||
| 787 | + }else{ | ||
| 788 | + if(!sxtj.equals("0")){ | ||
| 789 | + List<Object[]> objectLists=repository.checkNbmmNum(rq, gsbm, fgsbm, xlbm,nbbm); | ||
| 790 | + for (int i = 0; i < objectLists.size(); i++) { | ||
| 791 | + String clbm=objectLists.get(i)[0].toString(); | ||
| 792 | + int cs=Integer.parseInt(objectLists.get(i)[1].toString()); | ||
| 793 | + //一车一单 | ||
| 794 | + | ||
| 795 | + if(sxtj.equals("1")){ | ||
| 796 | + if(cs==1){ | ||
| 797 | + stringList.add(clbm); | ||
| 798 | + } | ||
| 799 | + } | ||
| 800 | + //一车多单 | ||
| 801 | + if(sxtj.equals("2")){ | ||
| 802 | + if(cs>1){ | ||
| 803 | + stringList.add(clbm); | ||
| 804 | + } | ||
| 805 | + } | ||
| 806 | + } | ||
| 807 | + } | ||
| 808 | + } | ||
| 809 | + List<Object[]> sumYlbList=new ArrayList<Object[]>(); | ||
| 810 | + if(sxtj.equals("0")){ | ||
| 811 | + sumYlbList=repository.sumYlb2(rq, gsbm, fgsbm, xlbm,nbbm); | ||
| 812 | + }else{ | ||
| 813 | + if(stringList.size()>0){ | ||
| 814 | + | ||
| 815 | +// String strings[]=new String[stringList.size()]; | ||
| 816 | +// for(int i=0;i<stringList.size();i++){ | ||
| 817 | +// strings[i]=stringList.get(i); | ||
| 818 | +// } | ||
| 819 | + sumYlbList=repository.sumYlb(rq, gsbm, fgsbm, xlbm, stringList); | ||
| 820 | + }else{ | ||
| 821 | + sumYlbList=repository.sumYlb2(rq, gsbm, fgsbm, xlbm, nbbm); | ||
| 822 | + } | ||
| 823 | + | ||
| 824 | + } | ||
| 825 | + | ||
| 826 | + Double jzl=0.0,yh=0.0,sh=0.0; | ||
| 827 | + for (int i = 0; i < sumYlbList.size(); i++) { | ||
| 828 | + jzl = Arith.add(jzl, Double.valueOf(sumYlbList.get(i)[0].toString())); | ||
| 829 | + yh = Arith.add(yh, Double.valueOf(sumYlbList.get(i)[1].toString())); | ||
| 830 | + sh = Arith.add(sh, Double.valueOf(sumYlbList.get(i)[2].toString())); | ||
| 831 | + } | ||
| 832 | + | ||
| 833 | + Map<String, Object> sumMap=new HashMap<String,Object>(); | ||
| 834 | + sumMap.put("jzl", jzl); | ||
| 835 | + sumMap.put("yh", yh); | ||
| 836 | + sumMap.put("sh", sh); | ||
| 837 | +// String sql="select sum(jzl),sum(yh),sum(sh) from bsth_c_ylb " | ||
| 838 | +// + " where to_days('"+map.get("rq").toString()+"')=to_days(rq) " | ||
| 839 | +// + " and ssgsdm like '%"+map.get("ssgsdm_like").toString()+"%' " | ||
| 840 | +// + " and fgsdm like '%"+map.get("fgsdm_like").toString()+"%' " | ||
| 841 | +// + " and xlbm like '%"+map.get("xlbm_like").toString()+ "%'" | ||
| 842 | +// + " and nbbm like '%"+map.get("nbbm_eq").toString()+"% '"; | ||
| 843 | +// if(map.get("nbbm_in")!=null){ | ||
| 844 | +//// sql +=" and nbbm in (" | ||
| 845 | +// } | ||
| 846 | + return sumMap; | ||
| 847 | + } | ||
| 848 | + | ||
| 849 | + | ||
| 850 | +} | ||
| 568 | \ No newline at end of file | 851 | \ No newline at end of file |
src/main/java/com/bsth/service/realcontrol/OilStationSocietyService.java
0 → 100644
src/main/java/com/bsth/service/realcontrol/ScheduleRealInfoService.java
| @@ -112,6 +112,8 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | @@ -112,6 +112,8 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | ||
| 112 | 112 | ||
| 113 | List<Map<String,Object>> statisticsDaily(String line, String date, String xlName, String type); | 113 | List<Map<String,Object>> statisticsDaily(String line, String date, String xlName, String type); |
| 114 | 114 | ||
| 115 | + List<Map<String,Object>> statisticsDailyTj(String line, String date,String date2, String xlName, String type); | ||
| 116 | + | ||
| 115 | //List<Object> scheduleDaily(String line,String date); | 117 | //List<Object> scheduleDaily(String line,String date); |
| 116 | 118 | ||
| 117 | int countByLineCodeAndDate(String xlBm, String schDate); | 119 | int countByLineCodeAndDate(String xlBm, String schDate); |
| @@ -126,7 +128,7 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | @@ -126,7 +128,7 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | ||
| 126 | List<ScheduleRealInfo> realScheduleList(String line,String date); | 128 | List<ScheduleRealInfo> realScheduleList(String line,String date); |
| 127 | List<ScheduleRealInfo> realScheduleListQp(String line,String date); | 129 | List<ScheduleRealInfo> realScheduleListQp(String line,String date); |
| 128 | 130 | ||
| 129 | - List<Map<String,Object>> yesterdayDataList(String line,String date); | 131 | + List<Map<String,Object>> yesterdayDataList(String line,String date,String gsbm,String fgsbm,String jGh,String nbbm); |
| 130 | 132 | ||
| 131 | List<Map<String,Object>> yesterdayDataList(String line); | 133 | List<Map<String,Object>> yesterdayDataList(String line); |
| 132 | 134 | ||
| @@ -156,7 +158,7 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | @@ -156,7 +158,7 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | ||
| 156 | 158 | ||
| 157 | Map<String,Object> lpChangeMulti(String leftIdx, String rightIdx, int type); | 159 | Map<String,Object> lpChangeMulti(String leftIdx, String rightIdx, int type); |
| 158 | 160 | ||
| 159 | - void lpChange(ScheduleRealInfo leftSch, ScheduleRealInfo rightSch, int type, boolean changeRealTime); | 161 | + void lpChange(ScheduleRealInfo leftSch, ScheduleRealInfo rightSch, int type); |
| 160 | 162 | ||
| 161 | Map<String,Object> revokeRealArrive(Long id); | 163 | Map<String,Object> revokeRealArrive(Long id); |
| 162 | } | 164 | } |
src/main/java/com/bsth/service/realcontrol/impl/ChildTaskPlanServiceImpl.java
| @@ -9,6 +9,7 @@ import com.bsth.repository.realcontrol.ChildTaskPlanRepository; | @@ -9,6 +9,7 @@ import com.bsth.repository.realcontrol.ChildTaskPlanRepository; | ||
| 9 | import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; | 9 | import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; |
| 10 | import com.bsth.service.impl.BaseServiceImpl; | 10 | import com.bsth.service.impl.BaseServiceImpl; |
| 11 | import com.bsth.service.realcontrol.ChildTaskPlanService; | 11 | import com.bsth.service.realcontrol.ChildTaskPlanService; |
| 12 | +import org.apache.commons.lang3.StringUtils; | ||
| 12 | import org.springframework.beans.factory.annotation.Autowired; | 13 | import org.springframework.beans.factory.annotation.Autowired; |
| 13 | import org.springframework.jdbc.core.JdbcTemplate; | 14 | import org.springframework.jdbc.core.JdbcTemplate; |
| 14 | import org.springframework.stereotype.Service; | 15 | import org.springframework.stereotype.Service; |
| @@ -45,8 +46,11 @@ public class ChildTaskPlanServiceImpl extends BaseServiceImpl<ChildTaskPlan, Lon | @@ -45,8 +46,11 @@ public class ChildTaskPlanServiceImpl extends BaseServiceImpl<ChildTaskPlan, Lon | ||
| 45 | //保存起终点名称 | 46 | //保存起终点名称 |
| 46 | String prefix = sch.getXlBm() + "_" + sch.getXlDir() + "_"; | 47 | String prefix = sch.getXlBm() + "_" + sch.getXlDir() + "_"; |
| 47 | 48 | ||
| 48 | - t.setStartStationName(BasicData.getStationNameByCode(t.getStartStation(), prefix)); | ||
| 49 | - t.setEndStationName(BasicData.getStationNameByCode(t.getEndStation(), prefix)); | 49 | + if(StringUtils.isEmpty(t.getStartStationName())) |
| 50 | + t.setStartStationName(BasicData.getStationNameByCode(t.getStartStation(), prefix)); | ||
| 51 | + | ||
| 52 | + if(StringUtils.isEmpty(t.getEndStationName())) | ||
| 53 | + t.setEndStationName(BasicData.getStationNameByCode(t.getEndStation(), prefix)); | ||
| 50 | //先持久化子任务 | 54 | //先持久化子任务 |
| 51 | rs = super.save(t); | 55 | rs = super.save(t); |
| 52 | //再关联主任务 | 56 | //再关联主任务 |
src/main/java/com/bsth/service/realcontrol/impl/OilStationSocietyServiceImpl.java
0 → 100644
| 1 | +package com.bsth.service.realcontrol.impl; | ||
| 2 | + | ||
| 3 | +import com.bsth.entity.realcontrol.OilStationSociety; | ||
| 4 | +import com.bsth.service.impl.BaseServiceImpl; | ||
| 5 | +import com.bsth.service.realcontrol.OilStationSocietyService; | ||
| 6 | +import org.springframework.stereotype.Service; | ||
| 7 | + | ||
| 8 | +/** | ||
| 9 | + * Created by panzhao on 2017/3/16. | ||
| 10 | + */ | ||
| 11 | +@Service | ||
| 12 | +public class OilStationSocietyServiceImpl extends BaseServiceImpl<OilStationSociety, String> implements OilStationSocietyService { | ||
| 13 | +} |
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
| @@ -179,6 +179,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -179,6 +179,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 179 | schedule.setBcType(bcType); | 179 | schedule.setBcType(bcType); |
| 180 | } | 180 | } |
| 181 | 181 | ||
| 182 | + //重新计算是否误点 | ||
| 183 | + schedule.reCalcLate(); | ||
| 184 | + | ||
| 182 | // 持久化到数据库 | 185 | // 持久化到数据库 |
| 183 | dayOfSchedule.save(schedule); | 186 | dayOfSchedule.save(schedule); |
| 184 | 187 | ||
| @@ -338,7 +341,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -338,7 +341,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 338 | t.setLate(false); | 341 | t.setLate(false); |
| 339 | t.setDfsj(t.getFcsj()); | 342 | t.setDfsj(t.getFcsj()); |
| 340 | t.setZdsjT(sdfyyyyMMddHHmm.parse(schDate + t.getZdsj()).getTime()); | 343 | t.setZdsjT(sdfyyyyMMddHHmm.parse(schDate + t.getZdsj()).getTime()); |
| 341 | - | 344 | + t.setJhlcOrig(t.getJhlc()); |
| 342 | 345 | ||
| 343 | //班次历时 | 346 | //班次历时 |
| 344 | t.setBcsj(DateUtils.calcHHmmDiff(t.getFcsj(), t.getZdsj()) / 1000 / 60); | 347 | t.setBcsj(DateUtils.calcHHmmDiff(t.getFcsj(), t.getZdsj()) / 1000 / 60); |
| @@ -391,14 +394,15 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -391,14 +394,15 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 391 | return rs; | 394 | return rs; |
| 392 | } | 395 | } |
| 393 | 396 | ||
| 394 | - dayOfSchedule.delete(sch); | ||
| 395 | - //ScheduleRealInfo sch = dayOfSchedule.delete(id); | ||
| 396 | //数据库删除 | 397 | //数据库删除 |
| 397 | rs = super.delete(id); | 398 | rs = super.delete(id); |
| 398 | - //更新起点应到时间 | ||
| 399 | - List<ScheduleRealInfo> ts = dayOfSchedule.updateQdzTimePlan(sch.getClZbh()); | ||
| 400 | - rs.put("ts", ts); | ||
| 401 | - rs.put("delete", sch); | 399 | + if(rs.get("status").equals(ResponseCode.SUCCESS)){ |
| 400 | + dayOfSchedule.delete(sch); | ||
| 401 | + //更新起点应到时间 | ||
| 402 | + List<ScheduleRealInfo> ts = dayOfSchedule.updateQdzTimePlan(sch.getClZbh()); | ||
| 403 | + rs.put("ts", ts); | ||
| 404 | + rs.put("delete", sch); | ||
| 405 | + } | ||
| 402 | 406 | ||
| 403 | return rs; | 407 | return rs; |
| 404 | } | 408 | } |
| @@ -853,6 +857,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -853,6 +857,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 853 | rs.put("msg", "未烂班,无法撤销!"); | 857 | rs.put("msg", "未烂班,无法撤销!"); |
| 854 | } else { | 858 | } else { |
| 855 | sch.setStatus(0); | 859 | sch.setStatus(0); |
| 860 | + sch.setRemarks("");//清空备注 | ||
| 861 | + sch.setJhlc(sch.getJhlcOrig()); | ||
| 856 | rs.put("status", ResponseCode.SUCCESS); | 862 | rs.put("status", ResponseCode.SUCCESS); |
| 857 | rs.put("t", sch); | 863 | rs.put("t", sch); |
| 858 | 864 | ||
| @@ -1057,9 +1063,12 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1057,9 +1063,12 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1057 | 1063 | ||
| 1058 | //修改班次里程 | 1064 | //修改班次里程 |
| 1059 | String jhlc = map.get("jhlc"); | 1065 | String jhlc = map.get("jhlc"); |
| 1060 | - if (StringUtils.isNotEmpty(jhlc) | ||
| 1061 | - && Double.parseDouble(jhlc) != sch.getJhlc()) { | ||
| 1062 | - sch.setJhlc(Double.parseDouble(jhlc)); | 1066 | + if (StringUtils.isNotEmpty(jhlc)) { |
| 1067 | + if(Double.parseDouble(jhlc) == 0 && sch.getJhlcOrig() != 0) | ||
| 1068 | + destroy(sch.getId() + "", "", map.get("adjustExps").toString()); | ||
| 1069 | + else{ | ||
| 1070 | + sch.setJhlc(Double.parseDouble(jhlc)); | ||
| 1071 | + } | ||
| 1063 | } | 1072 | } |
| 1064 | } | 1073 | } |
| 1065 | 1074 | ||
| @@ -1097,6 +1106,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1097,6 +1106,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1097 | schedule = dayOfSchedule.get(jsonObj.getLong("id")); | 1106 | schedule = dayOfSchedule.get(jsonObj.getLong("id")); |
| 1098 | //设置待发时间 | 1107 | //设置待发时间 |
| 1099 | schedule.setDfsjAll(dfsj); | 1108 | schedule.setDfsjAll(dfsj); |
| 1109 | + //重新计算是否误点 | ||
| 1110 | + schedule.reCalcLate(); | ||
| 1100 | 1111 | ||
| 1101 | dayOfSchedule.save(schedule); | 1112 | dayOfSchedule.save(schedule); |
| 1102 | } | 1113 | } |
| @@ -1215,7 +1226,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1215,7 +1226,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1215 | 1226 | ||
| 1216 | @Override | 1227 | @Override |
| 1217 | public Map<String, Object> findKMBC2(String jName, String clZbh, String date) { | 1228 | public Map<String, Object> findKMBC2(String jName, String clZbh, String date) { |
| 1218 | - List<ScheduleRealInfo> list = scheduleRealInfoRepository.queryListWaybill3(jName, clZbh, date); | 1229 | + List<ScheduleRealInfo> list = scheduleRealInfoRepository.queryListWaybill3(jName, clZbh, date,"",""); |
| 1219 | 1230 | ||
| 1220 | DecimalFormat format = new DecimalFormat("0.00"); | 1231 | DecimalFormat format = new DecimalFormat("0.00"); |
| 1221 | // int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); | 1232 | // int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); |
| @@ -1290,7 +1301,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1290,7 +1301,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1290 | // int ljbc = scheduleRealInfoRepository.findLjbc(jName, clZbh, lpName); | 1301 | // int ljbc = scheduleRealInfoRepository.findLjbc(jName, clZbh, lpName); |
| 1291 | int jhbc = 0, cjbc = 0, ljbc = 0; | 1302 | int jhbc = 0, cjbc = 0, ljbc = 0; |
| 1292 | double jhlc = 0, yygl = 0, ksgl = 0, tempJhlc = 0, jcclc = 0; | 1303 | double jhlc = 0, yygl = 0, ksgl = 0, tempJhlc = 0, jcclc = 0; |
| 1293 | - float addMileage = 0l, remMileage = 0l; | 1304 | + float addMileage = 0l, remMileage = 0l,addMileageYy = 0l,addMileageJc =0l; |
| 1294 | Map<String, Object> map = new HashMap<String, Object>(); | 1305 | Map<String, Object> map = new HashMap<String, Object>(); |
| 1295 | for (ScheduleRealInfo scheduleRealInfo : list) { | 1306 | for (ScheduleRealInfo scheduleRealInfo : list) { |
| 1296 | if (scheduleRealInfo != null) { | 1307 | if (scheduleRealInfo != null) { |
| @@ -1301,18 +1312,25 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1301,18 +1312,25 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1301 | tempJhlc = scheduleRealInfo.getJhlc() == null ? 0 : scheduleRealInfo.getJhlc(); | 1312 | tempJhlc = scheduleRealInfo.getJhlc() == null ? 0 : scheduleRealInfo.getJhlc(); |
| 1302 | if (scheduleRealInfo.isSflj()) { | 1313 | if (scheduleRealInfo.isSflj()) { |
| 1303 | addMileage += tempJhlc; | 1314 | addMileage += tempJhlc; |
| 1304 | - ljbc++; | 1315 | + if (scheduleRealInfo.getBcType().equals("in") |
| 1316 | + || scheduleRealInfo.getBcType().equals("out")) { | ||
| 1317 | + addMileageJc +=tempJhlc; | ||
| 1318 | + }else{ | ||
| 1319 | + ljbc++; | ||
| 1320 | + addMileageYy +=tempJhlc; | ||
| 1321 | + } | ||
| 1322 | + | ||
| 1305 | } else { | 1323 | } else { |
| 1306 | if (!(scheduleRealInfo.getBcType().equals("in") | 1324 | if (!(scheduleRealInfo.getBcType().equals("in") |
| 1307 | || scheduleRealInfo.getBcType().equals("out"))) { | 1325 | || scheduleRealInfo.getBcType().equals("out"))) { |
| 1308 | - jhbc++; | ||
| 1309 | - jhlc += tempJhlc; | 1326 | + jhbc++; |
| 1327 | + jhlc += tempJhlc; | ||
| 1328 | + if (scheduleRealInfo.getStatus() == -1) { | ||
| 1329 | + remMileage += tempJhlc; | ||
| 1330 | + cjbc++; | ||
| 1331 | + } | ||
| 1310 | } | 1332 | } |
| 1311 | 1333 | ||
| 1312 | - if (scheduleRealInfo.getStatus() == -1) { | ||
| 1313 | - remMileage += tempJhlc; | ||
| 1314 | - cjbc++; | ||
| 1315 | - } | ||
| 1316 | } | 1334 | } |
| 1317 | Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); | 1335 | Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); |
| 1318 | //计算营运里程,空驶里程 | 1336 | //计算营运里程,空驶里程 |
| @@ -1358,15 +1376,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1358,15 +1376,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1358 | map.put("jhlc", format.format(jhlc)); | 1376 | map.put("jhlc", format.format(jhlc)); |
| 1359 | map.put("remMileage", format.format(remMileage)); | 1377 | map.put("remMileage", format.format(remMileage)); |
| 1360 | map.put("addMileage", format.format(addMileage)); | 1378 | map.put("addMileage", format.format(addMileage)); |
| 1361 | - map.put("yygl", format.format(yygl)); | 1379 | + map.put("yygl", format.format(yygl+addMileageYy)); |
| 1362 | map.put("ksgl", format.format(ksgl)); | 1380 | map.put("ksgl", format.format(ksgl)); |
| 1363 | - map.put("realMileage", format.format(yygl + ksgl + jcclc)); | 1381 | + map.put("realMileage", format.format(yygl + ksgl + jcclc+addMileageYy)); |
| 1382 | +// map.put("realMileage", format.format(yygl + ksgl + jcclc+addMileage)); | ||
| 1364 | map.put("jhbc", jhbc); | 1383 | map.put("jhbc", jhbc); |
| 1365 | map.put("cjbc", cjbc); | 1384 | map.put("cjbc", cjbc); |
| 1366 | map.put("ljbc", ljbc); | 1385 | map.put("ljbc", ljbc); |
| 1367 | map.put("sjbc", jhbc - cjbc + ljbc); | 1386 | map.put("sjbc", jhbc - cjbc + ljbc); |
| 1368 | map.put("jcclc", jcclc); | 1387 | map.put("jcclc", jcclc); |
| 1369 | map.put("zkslc", format.format(ksgl + jcclc)); | 1388 | map.put("zkslc", format.format(ksgl + jcclc)); |
| 1389 | +// map.put("zkslc", format.format(ksgl + jcclc+addMileageJc)); | ||
| 1370 | return map; | 1390 | return map; |
| 1371 | } | 1391 | } |
| 1372 | 1392 | ||
| @@ -1436,140 +1456,681 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1436,140 +1456,681 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1436 | List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); | 1456 | List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); |
| 1437 | Map<String, Object> m = new HashMap<String, Object>(); | 1457 | Map<String, Object> m = new HashMap<String, Object>(); |
| 1438 | ReportUtils ee = new ReportUtils(); | 1458 | ReportUtils ee = new ReportUtils(); |
| 1439 | - m.put("dates", startDate + " 至 " + endDate); | ||
| 1440 | - List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>(); | ||
| 1441 | - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); | ||
| 1442 | - for (ScheduleRealInfo schedule : list) { | ||
| 1443 | - Map<String, Object> tempMap = new HashMap<String, Object>(); | ||
| 1444 | - tempMap.put("xlName", schedule.getXlName() != null ? schedule.getXlName() : ""); | ||
| 1445 | - tempMap.put("lpName", schedule.getLpName() != null ? schedule.getLpName() : ""); | ||
| 1446 | - tempMap.put("clZbh", schedule.getClZbh() != null ? schedule.getClZbh() : ""); | ||
| 1447 | - tempMap.put("jName", schedule.getjName() != null ? schedule.getjName() : ""); | ||
| 1448 | - tempMap.put("sName", schedule.getsName() != null ? schedule.getsName() : ""); | ||
| 1449 | - tempMap.put("fcsj", schedule.getFcsj() != null ? schedule.getFcsj() : ""); | ||
| 1450 | - tempMap.put("fcsjActual", schedule.getFcsjActual() != null ? schedule.getFcsjActual() : ""); | ||
| 1451 | - tempMap.put("zdsj", schedule.getZdsj() != null ? schedule.getZdsj() : ""); | ||
| 1452 | - tempMap.put("zdsjActual", schedule.getZdsjActual() != null ? schedule.getZdsjActual() : ""); | ||
| 1453 | - if (schedule.getUpdateBy() != null) { | ||
| 1454 | - if (schedule.getUpdateBy().getName() != null) | ||
| 1455 | - tempMap.put("userName", schedule.getUpdateBy().getName()); | ||
| 1456 | - else | ||
| 1457 | - tempMap.put("userName", ""); | ||
| 1458 | - } else { | ||
| 1459 | - tempMap.put("userName", ""); | ||
| 1460 | - } | ||
| 1461 | - if (schedule.getUpdateDate() != null) { | ||
| 1462 | - tempMap.put("updateDate", sdf.format(schedule.getUpdateDate())); | ||
| 1463 | - } else { | ||
| 1464 | - tempMap.put("updateDate", ""); | ||
| 1465 | - } | ||
| 1466 | - tempMap.put("remarks", schedule.getRemarks() != null ? schedule.getRemarks() : ""); | ||
| 1467 | - tempList.add(tempMap); | ||
| 1468 | - } | 1459 | + m.put("dates", startDate + " 至 " + endDate); |
| 1460 | + List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>(); | ||
| 1461 | + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); | ||
| 1462 | + for (ScheduleRealInfo schedule : list) { | ||
| 1463 | + Map<String, Object> tempMap = new HashMap<String, Object>(); | ||
| 1464 | + tempMap.put("xlName", schedule.getXlName() != null ? schedule.getXlName() : ""); | ||
| 1465 | + tempMap.put("lpName", schedule.getLpName() != null ? schedule.getLpName() : ""); | ||
| 1466 | + tempMap.put("clZbh", schedule.getClZbh() != null ? schedule.getClZbh() : ""); | ||
| 1467 | + tempMap.put("jName", schedule.getjName() != null ? schedule.getjName() : ""); | ||
| 1468 | + tempMap.put("sName", schedule.getsName() != null ? schedule.getsName() : ""); | ||
| 1469 | + tempMap.put("fcsj", schedule.getFcsj() != null ? schedule.getFcsj() : ""); | ||
| 1470 | + tempMap.put("fcsjActual", schedule.getFcsjActual() != null ? schedule.getFcsjActual() : ""); | ||
| 1471 | + tempMap.put("zdsj", schedule.getZdsj() != null ? schedule.getZdsj() : ""); | ||
| 1472 | + tempMap.put("zdsjActual", schedule.getZdsjActual() != null ? schedule.getZdsjActual() : ""); | ||
| 1473 | + if (schedule.getUpdateBy() != null) { | ||
| 1474 | + if (schedule.getUpdateBy().getName() != null) | ||
| 1475 | + tempMap.put("userName", schedule.getUpdateBy().getName()); | ||
| 1476 | + else | ||
| 1477 | + tempMap.put("userName", ""); | ||
| 1478 | + } else { | ||
| 1479 | + tempMap.put("userName", ""); | ||
| 1480 | + } | ||
| 1481 | + if (schedule.getUpdateDate() != null) { | ||
| 1482 | + tempMap.put("updateDate", sdf.format(schedule.getUpdateDate())); | ||
| 1483 | + } else { | ||
| 1484 | + tempMap.put("updateDate", ""); | ||
| 1485 | + } | ||
| 1486 | + tempMap.put("remarks", schedule.getRemarks() != null ? schedule.getRemarks() : ""); | ||
| 1487 | + tempList.add(tempMap); | ||
| 1488 | + } | ||
| 1489 | + try { | ||
| 1490 | + listI.add(tempList.iterator()); | ||
| 1491 | + String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; | ||
| 1492 | + ee.excelReplace(listI, new Object[]{m}, path + "mould/correctForm.xls", | ||
| 1493 | + path + "export/修正报表" + sdfSimple.format(sdfMonth.parse(startDate)) + "-" + sdfSimple.format(sdfMonth.parse(endDate)) + ".xls"); | ||
| 1494 | + } catch (Exception e) { | ||
| 1495 | + // TODO: handle exception | ||
| 1496 | + e.printStackTrace(); | ||
| 1497 | + } | ||
| 1498 | + Map<String, Object> map = tempList.get(tempList.size() - 1); | ||
| 1499 | + System.out.println("tempMap:" + map); | ||
| 1500 | + } | ||
| 1501 | + | ||
| 1502 | + return list; | ||
| 1503 | + } | ||
| 1504 | + | ||
| 1505 | + @Override | ||
| 1506 | + public List<ScheduleRealInfo> queryListWaybill(String jName, String clZbh, | ||
| 1507 | + String lpName, String date, String line) { | ||
| 1508 | + List<ScheduleRealInfo> listSchedule = new ArrayList<ScheduleRealInfo>(); | ||
| 1509 | + List<ScheduleRealInfo> list = null; | ||
| 1510 | + list = scheduleRealInfoRepository.queryListWaybill(jName, clZbh, lpName, date, line); | ||
| 1511 | + for (int i = 0; i < list.size(); i++) { | ||
| 1512 | + ScheduleRealInfo s = list.get(i); | ||
| 1513 | + s.setAdjustExps(i + 1 + ""); | ||
| 1514 | + String remarks = ""; | ||
| 1515 | + if (s.getRemarks() != null) { | ||
| 1516 | + remarks += s.getRemarks(); | ||
| 1517 | + } | ||
| 1518 | + | ||
| 1519 | + Set<ChildTaskPlan> childTaskPlans = s.getcTasks(); | ||
| 1520 | + if (!childTaskPlans.isEmpty()) { | ||
| 1521 | + s.setFcsjActual(""); | ||
| 1522 | + s.setZdsjActual(""); | ||
| 1523 | + s.setJhlc(0.0); | ||
| 1524 | + } | ||
| 1525 | + | ||
| 1526 | + if (s.isDestroy()) { | ||
| 1527 | + s.setFcsjActual(""); | ||
| 1528 | + s.setZdsjActual(""); | ||
| 1529 | + s.setJhlc(0.0); | ||
| 1530 | + remarks += "(烂班)"; | ||
| 1531 | + s.setRemarks(remarks); | ||
| 1532 | + } | ||
| 1533 | + listSchedule.add(s); | ||
| 1534 | + //计算营运里程,空驶里程 | ||
| 1535 | + if (!childTaskPlans.isEmpty()) { | ||
| 1536 | + Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); | ||
| 1537 | + while (it.hasNext()) { | ||
| 1538 | + ScheduleRealInfo t = new ScheduleRealInfo(); | ||
| 1539 | + ChildTaskPlan childTaskPlan = it.next(); | ||
| 1540 | + if (childTaskPlan.isDestroy()) { | ||
| 1541 | + t.setFcsjActual(""); | ||
| 1542 | + t.setZdsjActual(""); | ||
| 1543 | + t.setJhlc(0.0); | ||
| 1544 | + } else { | ||
| 1545 | + t.setFcsjActual(childTaskPlan.getStartDate()); | ||
| 1546 | + t.setZdsjActual(childTaskPlan.getEndDate()); | ||
| 1547 | + t.setJhlc(Double.parseDouble(String.valueOf(childTaskPlan.getMileage()))); | ||
| 1548 | + } | ||
| 1549 | + t.setQdzName(childTaskPlan.getStartStationName()); | ||
| 1550 | + t.setZdzName(childTaskPlan.getEndStationName()); | ||
| 1551 | + t.setRemarks(childTaskPlan.getRemarks()); | ||
| 1552 | + t.setAdjustExps("子"); | ||
| 1553 | + listSchedule.add(t); | ||
| 1554 | + } | ||
| 1555 | + /* String sqlPc = "select * from bsth_c_s_child_task where schedule=" + s.getId() + " order by start_date "; | ||
| 1556 | + List<ScheduleRealInfo> lists = jdbcTemplate.query(sqlPc, | ||
| 1557 | + new RowMapper<ScheduleRealInfo>() { | ||
| 1558 | + @Override | ||
| 1559 | + public ScheduleRealInfo mapRow(ResultSet rs, int rowNum) throws SQLException { | ||
| 1560 | + ScheduleRealInfo t = new ScheduleRealInfo(); | ||
| 1561 | + if (rs.getInt("destroy") == 0) { | ||
| 1562 | + t.setFcsjActual(rs.getString("start_date")); | ||
| 1563 | + t.setZdsjActual(rs.getString("end_date")); | ||
| 1564 | + t.setJhlc(rs.getDouble("mileage")); | ||
| 1565 | + } else { | ||
| 1566 | + t.setFcsjActual(""); | ||
| 1567 | + t.setZdsjActual(""); | ||
| 1568 | + t.setJhlc(0.0); | ||
| 1569 | + } | ||
| 1570 | + t.setQdzName(rs.getString("start_station_name")); | ||
| 1571 | + t.setZdzName(rs.getString("end_station_name")); | ||
| 1572 | + t.setRemarks(rs.getString("remarks")); | ||
| 1573 | + t.setAdjustExps("子"); | ||
| 1574 | + return t; | ||
| 1575 | + } | ||
| 1576 | + }); | ||
| 1577 | + for (int j = 0; j < lists.size(); j++) { | ||
| 1578 | + ScheduleRealInfo t = lists.get(j); | ||
| 1579 | + listSchedule.add(t); | ||
| 1580 | + }*/ | ||
| 1581 | + } | ||
| 1582 | + } | ||
| 1583 | + | ||
| 1584 | + return listSchedule; | ||
| 1585 | + } | ||
| 1586 | + | ||
| 1587 | + @Override | ||
| 1588 | + public Map<String, Object> removeChildTask(Long taskId) { | ||
| 1589 | + Map<String, Object> rs = new HashMap<>(); | ||
| 1590 | + ChildTaskPlan chTask = cTaskPlanRepository.findOne(taskId); | ||
| 1591 | + | ||
| 1592 | + ScheduleRealInfo sch = dayOfSchedule.get(chTask.getSchedule().getId()); | ||
| 1593 | + try { | ||
| 1594 | + | ||
| 1595 | + sch.getcTasks().remove(chTask); | ||
| 1596 | + scheduleRealInfoRepository.save(sch); | ||
| 1597 | + rs.put("status", ResponseCode.SUCCESS); | ||
| 1598 | + } catch (Exception e) { | ||
| 1599 | + logger.error("", e); | ||
| 1600 | + rs.put("status", ResponseCode.ERROR); | ||
| 1601 | + } | ||
| 1602 | + return rs; | ||
| 1603 | + } | ||
| 1604 | + | ||
| 1605 | + @Override | ||
| 1606 | + public List<Map<String, Object>> statisticsDaily(String line, String date, | ||
| 1607 | + String xlName, String type) { | ||
| 1608 | + List<ScheduleRealInfo> list = new ArrayList<ScheduleRealInfo>(); | ||
| 1609 | + if (date.length() == 10) | ||
| 1610 | + list = scheduleRealInfoRepository.scheduleByDateAndLine2(line, date); | ||
| 1611 | + else if (date.length() == 7) | ||
| 1612 | + list = scheduleRealInfoRepository.scheduleByDateAndLine3(line, date); | ||
| 1613 | + | ||
| 1614 | + List<Map<String, Object>> lMap = new ArrayList<Map<String, Object>>(); | ||
| 1615 | + DecimalFormat format = new DecimalFormat("0.00"); | ||
| 1616 | + double jhlc = 0, tempJhlc = 0, childMileage = 0; | ||
| 1617 | + float sjgl = 0f, ssgl = 0f, ssgl_lz = 0f, ssgl_dm = 0f, ssgl_gz = 0f, ssgl_jf = 0f, ssgl_zs = 0f, ssgl_qr = 0f, ssgl_qc = 0f, ssgl_kx = 0f, ssgl_qh = 0f, ssgl_yw = 0f, ssgl_other = 0f, ljgl = 0f; | ||
| 1618 | + //班次 | ||
| 1619 | + int ssbc = 0, ssbc_lz = 0, ssbc_dm = 0, ssbc_gz = 0, ssbc_jf = 0, ssbc_zs = 0, ssbc_qr = 0, ssbc_qc = 0, ssbc_kx = 0, ssbc_qh = 0, ssbc_yw = 0, ssbc_other = 0; | ||
| 1620 | + int sj_0 = 6 * 60 + 31, sj_1 = 8 * 60 + 30, sj_2 = 16 * 60 + 1, sj_3 = 18 * 60; | ||
| 1621 | + int jhbc = 0, jhbc_m = 0, jhbc_a = 0; | ||
| 1622 | + int sjbc = 0, sjbc_m = 0, sjbc_a = 0; | ||
| 1623 | + int ljbc = 0, ljbc_m = 0, ljbc_a = 0; | ||
| 1624 | + int fzbc = 0, fzbc_m = 0, fzbc_a = 0; | ||
| 1625 | + int dtbc = 0, dtbc_m = 0, dtbc_a = 0; | ||
| 1626 | + int djg = 0, djg_m = 0, djg_a = 0, djg_time = 0; | ||
| 1627 | + | ||
| 1628 | + double jhlcZ = 0, tempJhlcZ = 0, childMileageZ = 0; | ||
| 1629 | + float sjglZ = 0f, ssglZ = 0f, ssgl_lzZ = 0f, ssgl_dmZ = 0f, | ||
| 1630 | + ssgl_gzZ = 0f, ssgl_jfZ = 0f, ssgl_zsZ = 0f, ssgl_qrZ = 0f, ssgl_qcZ = 0f, | ||
| 1631 | + ssgl_kxZ = 0f, ssgl_qhZ = 0f, ssgl_ywZ = 0f, ssgl_otherZ = 0f, ljglZ = 0f; | ||
| 1632 | + //班次 | ||
| 1633 | + int ssbcZ = 0, ssbc_lzZ = 0, ssbc_dmZ = 0, ssbc_gzZ = 0, ssbc_jfZ = 0, ssbc_zsZ = 0, ssbc_qrZ = 0, ssbc_qcZ = 0, ssbc_kxZ = 0, ssbc_qhZ = 0, ssbc_ywZ = 0, ssbc_otherZ = 0; | ||
| 1634 | + int jhbcZ = 0, jhbc_mZ = 0, jhbc_aZ = 0; | ||
| 1635 | + int sjbcZ = 0, sjbc_mZ = 0, sjbc_aZ = 0; | ||
| 1636 | + int ljbcZ = 0, ljbc_mZ = 0, ljbc_aZ = 0; | ||
| 1637 | + int fzbcZ = 0, fzbc_mZ = 0, fzbc_aZ = 0; | ||
| 1638 | + int dtbcZ = 0, dtbc_mZ = 0, dtbc_aZ = 0; | ||
| 1639 | + int djgZ = 0, djg_mZ = 0, djg_aZ = 0, djg_timeZ = 0; | ||
| 1640 | + Map<String, Object> map = null; | ||
| 1641 | + for (int i = 0; i < list.size(); i++) { | ||
| 1642 | + ScheduleRealInfo scheduleRealInfo = list.get(i); | ||
| 1643 | + if (scheduleRealInfo != null) { | ||
| 1644 | + Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); | ||
| 1645 | + //计算实际里程,少驶里程,计划里程=实际里程+少驶里程 | ||
| 1646 | + if (childTaskPlans.isEmpty()) { | ||
| 1647 | + tempJhlc = scheduleRealInfo.getJhlc() == null ? 0 : scheduleRealInfo.getJhlc(); | ||
| 1648 | + //临加公里 | ||
| 1649 | + if (scheduleRealInfo.isSflj()) { | ||
| 1650 | + ljgl += tempJhlc; | ||
| 1651 | + ljglZ += tempJhlc; | ||
| 1652 | + } else { | ||
| 1653 | + jhlc += tempJhlc; | ||
| 1654 | + jhlcZ += tempJhlc; | ||
| 1655 | + } | ||
| 1656 | + if (scheduleRealInfo.getStatus() == -1) { | ||
| 1657 | + ssgl += tempJhlc; | ||
| 1658 | + ssglZ += tempJhlc; | ||
| 1659 | + ssbc++; | ||
| 1660 | + ssbcZ++; | ||
| 1661 | + if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("路阻") != -1) { | ||
| 1662 | + ssgl_lz += tempJhlc; | ||
| 1663 | + ssgl_lzZ += tempJhlc; | ||
| 1664 | + ssbc_lz++; | ||
| 1665 | + ssbc_lzZ++; | ||
| 1666 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("吊慢") != -1) { | ||
| 1667 | + ssgl_dm += tempJhlc; | ||
| 1668 | + ssgl_dmZ += tempJhlc; | ||
| 1669 | + ssbc_dm++; | ||
| 1670 | + ssbc_dmZ++; | ||
| 1671 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("故障") != -1) { | ||
| 1672 | + ssgl_gz += tempJhlc; | ||
| 1673 | + ssgl_gzZ += tempJhlc; | ||
| 1674 | + ssbc_gz++; | ||
| 1675 | + ssbc_gzZ++; | ||
| 1676 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("纠纷") != -1) { | ||
| 1677 | + ssgl_jf += tempJhlc; | ||
| 1678 | + ssgl_jfZ += tempJhlc; | ||
| 1679 | + ssbc_jf++; | ||
| 1680 | + ssbc_jfZ++; | ||
| 1681 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("肇事") != -1) { | ||
| 1682 | + ssgl_zs += tempJhlc; | ||
| 1683 | + ssgl_zsZ += tempJhlc; | ||
| 1684 | + ssbc_zs++; | ||
| 1685 | + ssbc_zsZ++; | ||
| 1686 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("缺人") != -1) { | ||
| 1687 | + ssgl_qr += tempJhlc; | ||
| 1688 | + ssgl_qrZ += tempJhlc; | ||
| 1689 | + ssbc_qr++; | ||
| 1690 | + ssbc_qrZ++; | ||
| 1691 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("缺车") != -1) { | ||
| 1692 | + ssgl_qc += tempJhlc; | ||
| 1693 | + ssgl_qcZ += tempJhlc; | ||
| 1694 | + ssbc_qc++; | ||
| 1695 | + ssbc_qcZ++; | ||
| 1696 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("客稀") != -1) { | ||
| 1697 | + ssgl_kx += tempJhlc; | ||
| 1698 | + ssgl_kxZ += tempJhlc; | ||
| 1699 | + ssbc_kx++; | ||
| 1700 | + ssbc_kxZ++; | ||
| 1701 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("气候") != -1) { | ||
| 1702 | + ssgl_qh += tempJhlc; | ||
| 1703 | + ssgl_qhZ += tempJhlc; | ||
| 1704 | + ssbc_qh++; | ||
| 1705 | + ssbc_qhZ++; | ||
| 1706 | + } else if ((scheduleRealInfo.getRemarks() == null ? "" : scheduleRealInfo.getRemarks()).indexOf("援外") != -1) { | ||
| 1707 | + ssgl_yw += tempJhlc; | ||
| 1708 | + ssgl_ywZ += tempJhlc; | ||
| 1709 | + ssbc_yw++; | ||
| 1710 | + ssbc_ywZ++; | ||
| 1711 | + } else { | ||
| 1712 | + ssgl_other += tempJhlc; | ||
| 1713 | + ssgl_otherZ += tempJhlc; | ||
| 1714 | + ssbc_other++; | ||
| 1715 | + ssbc_otherZ++; | ||
| 1716 | + } | ||
| 1717 | + } else { | ||
| 1718 | + sjgl += tempJhlc; | ||
| 1719 | + sjglZ += tempJhlc; | ||
| 1720 | + } | ||
| 1721 | + } else { | ||
| 1722 | + Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); | ||
| 1723 | + while (it.hasNext()) { | ||
| 1724 | + ChildTaskPlan childTaskPlan = it.next(); | ||
| 1725 | + childMileage = childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 1726 | + jhlc += childMileage; | ||
| 1727 | + jhlcZ += childMileage; | ||
| 1728 | + if (childTaskPlan.isDestroy()) { | ||
| 1729 | + ssgl += childMileage; | ||
| 1730 | + ssglZ += childMileage; | ||
| 1731 | + ssbc++; | ||
| 1732 | + ssbcZ++; | ||
| 1733 | + if (childTaskPlan.getDestroyReason().equals("路阻")) { | ||
| 1734 | + ssgl_lz += childTaskPlan.getMileage(); | ||
| 1735 | + ssgl_lzZ += childTaskPlan.getMileage(); | ||
| 1736 | + ssbc_lzZ++; | ||
| 1737 | + ssbc_lzZ++; | ||
| 1738 | + } else if (childTaskPlan.getDestroyReason().equals("吊慢")) { | ||
| 1739 | + ssgl_dm += childTaskPlan.getMileage(); | ||
| 1740 | + ssgl_dmZ += childTaskPlan.getMileage(); | ||
| 1741 | + ssbc_dm++; | ||
| 1742 | + ssbc_dmZ++; | ||
| 1743 | + } else if (childTaskPlan.getDestroyReason().equals("故障")) { | ||
| 1744 | + ssgl_gz += childTaskPlan.getMileage(); | ||
| 1745 | + ssgl_gzZ += childTaskPlan.getMileage(); | ||
| 1746 | + ssbc_gz++; | ||
| 1747 | + ssbc_gzZ++; | ||
| 1748 | + } else if (childTaskPlan.getDestroyReason().equals("纠纷")) { | ||
| 1749 | + ssgl_jf += childTaskPlan.getMileage(); | ||
| 1750 | + ssgl_jfZ += childTaskPlan.getMileage(); | ||
| 1751 | + ssbc_jf++; | ||
| 1752 | + ssbc_jfZ++; | ||
| 1753 | + } else if (childTaskPlan.getDestroyReason().equals("肇事")) { | ||
| 1754 | + ssgl_zs += childTaskPlan.getMileage(); | ||
| 1755 | + ssgl_zsZ += childTaskPlan.getMileage(); | ||
| 1756 | + ssbc_zs++; | ||
| 1757 | + ssbc_zsZ++; | ||
| 1758 | + } else if (childTaskPlan.getDestroyReason().equals("缺人")) { | ||
| 1759 | + ssgl_qr += childTaskPlan.getMileage(); | ||
| 1760 | + ssgl_qrZ += childTaskPlan.getMileage(); | ||
| 1761 | + ssbc_qr++; | ||
| 1762 | + ssbc_qrZ++; | ||
| 1763 | + } else if (childTaskPlan.getDestroyReason().equals("缺车")) { | ||
| 1764 | + ssgl_qc += childTaskPlan.getMileage(); | ||
| 1765 | + ssgl_qcZ += childTaskPlan.getMileage(); | ||
| 1766 | + ssbc_qc++; | ||
| 1767 | + ssbc_qcZ++; | ||
| 1768 | + } else if (childTaskPlan.getDestroyReason().equals("客稀")) { | ||
| 1769 | + ssgl_kx += childTaskPlan.getMileage(); | ||
| 1770 | + ssgl_kxZ += childTaskPlan.getMileage(); | ||
| 1771 | + ssbc_kx++; | ||
| 1772 | + ssbc_kxZ++; | ||
| 1773 | + } else if (childTaskPlan.getDestroyReason().equals("气候")) { | ||
| 1774 | + ssgl_qh += childTaskPlan.getMileage(); | ||
| 1775 | + ssgl_qhZ += childTaskPlan.getMileage(); | ||
| 1776 | + ssbc_qh++; | ||
| 1777 | + ssbc_qhZ++; | ||
| 1778 | + } else if (childTaskPlan.getDestroyReason().equals("援外")) { | ||
| 1779 | + ssgl_yw += childTaskPlan.getMileage(); | ||
| 1780 | + ssgl_ywZ += childTaskPlan.getMileage(); | ||
| 1781 | + ssbc_yw++; | ||
| 1782 | + ssbc_ywZ++; | ||
| 1783 | + } else { | ||
| 1784 | + ssgl_other += childTaskPlan.getMileage(); | ||
| 1785 | + ssgl_otherZ += childTaskPlan.getMileage(); | ||
| 1786 | + ssbc_other++; | ||
| 1787 | + ssbc_otherZ++; | ||
| 1788 | + } | ||
| 1789 | + } else { | ||
| 1790 | + sjgl += childMileage; | ||
| 1791 | + sjglZ += childMileage; | ||
| 1792 | + } | ||
| 1793 | + } | ||
| 1794 | + } | ||
| 1795 | + | ||
| 1796 | + //班次 | ||
| 1797 | + jhbc++; | ||
| 1798 | + jhbcZ++; | ||
| 1799 | + String[] fcsj = scheduleRealInfo.getFcsj().split(":"); | ||
| 1800 | + String[] fcsjActual = (scheduleRealInfo.getFcsjActual() == null ? "0:00" : scheduleRealInfo.getFcsjActual()).split(":"); | ||
| 1801 | + if ((Integer.parseInt(fcsj[0]) * 60 + Integer.parseInt(fcsj[1])) > sj_0 && (Integer.parseInt(fcsj[0]) * 60 + Integer.parseInt(fcsj[1])) < sj_1) { | ||
| 1802 | + jhbc_m++; | ||
| 1803 | + jhbc_mZ++; | ||
| 1804 | + } else if ((Integer.parseInt(fcsj[0]) * 60 + Integer.parseInt(fcsj[1])) > sj_2 && (Integer.parseInt(fcsj[0]) * 60 + Integer.parseInt(fcsj[1])) < sj_3) { | ||
| 1805 | + jhbc_a++; | ||
| 1806 | + jhbc_aZ++; | ||
| 1807 | + } | ||
| 1808 | + if (scheduleRealInfo.getStatus() != -1) { | ||
| 1809 | + sjbc++; | ||
| 1810 | + sjbcZ++; | ||
| 1811 | + if ((Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) > sj_0 && (Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) < sj_1) { | ||
| 1812 | + sjbc_m++; | ||
| 1813 | + sjbc_mZ++; | ||
| 1814 | + } else if ((Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) > sj_2 && (Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) < sj_3) { | ||
| 1815 | + sjbc_a++; | ||
| 1816 | + sjbc_aZ++; | ||
| 1817 | + } | ||
| 1818 | + } | ||
| 1819 | + if (scheduleRealInfo.isSflj()) { | ||
| 1820 | + ljbc++; | ||
| 1821 | + ljbcZ++; | ||
| 1822 | + if ((Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) > sj_0 && (Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) < sj_1) { | ||
| 1823 | + ljbc_m++; | ||
| 1824 | + ljbc_mZ++; | ||
| 1825 | + } else if ((Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) > sj_2 && (Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) < sj_3) { | ||
| 1826 | + ljbc_a++; | ||
| 1827 | + ljbc_aZ++; | ||
| 1828 | + } | ||
| 1829 | + } | ||
| 1830 | + if (scheduleRealInfo.getBcType().equals("venting")) { | ||
| 1831 | + fzbc++; | ||
| 1832 | + fzbcZ++; | ||
| 1833 | + if ((Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) > sj_0 && (Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) < sj_1) { | ||
| 1834 | + fzbc_m++; | ||
| 1835 | + fzbc_mZ++; | ||
| 1836 | + } else if ((Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) > sj_2 && (Integer.parseInt(fcsjActual[0]) * 60 + Integer.parseInt(fcsjActual[1])) < sj_3) { | ||
| 1837 | + fzbc_a++; | ||
| 1838 | + fzbc_aZ++; | ||
| 1839 | + } | ||
| 1840 | + } | ||
| 1841 | + | ||
| 1842 | + if (i < list.size() - 1) { | ||
| 1843 | + if (!scheduleRealInfo.getXlBm().equals(list.get(i + 1).getXlBm())) { | ||
| 1844 | + map = new HashMap<String, Object>(); | ||
| 1845 | + map.put("xlName", scheduleRealInfo.getXlName()); | ||
| 1846 | + map.put("jhlc", format.format(jhlc)); | ||
| 1847 | + map.put("sjgl", format.format(sjgl)); | ||
| 1848 | + map.put("ssgl", format.format(ssgl)); | ||
| 1849 | + map.put("ssgl_lz", ssgl_lz == 0 ? 0 : format.format(ssgl_lz)); | ||
| 1850 | + map.put("ssgl_dm", ssgl_dm == 0 ? 0 : format.format(ssgl_dm)); | ||
| 1851 | + map.put("ssgl_gz", ssgl_gz == 0 ? 0 : format.format(ssgl_gz)); | ||
| 1852 | + map.put("ssgl_jf", ssgl_jf == 0 ? 0 : format.format(ssgl_jf)); | ||
| 1853 | + map.put("ssgl_zs", ssgl_zs == 0 ? 0 : format.format(ssgl_zs)); | ||
| 1854 | + map.put("ssgl_qr", ssgl_qr == 0 ? 0 : format.format(ssgl_qr)); | ||
| 1855 | + map.put("ssgl_qc", ssgl_qc == 0 ? 0 : format.format(ssgl_qc)); | ||
| 1856 | + map.put("ssgl_kx", ssgl_kx == 0 ? 0 : format.format(ssgl_kx)); | ||
| 1857 | + map.put("ssgl_qh", ssgl_qh == 0 ? 0 : format.format(ssgl_qh)); | ||
| 1858 | + map.put("ssgl_yw", ssgl_yw == 0 ? 0 : format.format(ssgl_yw)); | ||
| 1859 | + map.put("ssgl_other", ssgl_other == 0 ? 0 : format.format(ssgl_other)); | ||
| 1860 | + map.put("ssbc", ssbc); | ||
| 1861 | + map.put("ssbc_lz", ssbc_lz); | ||
| 1862 | + map.put("ssbc_dm", ssbc_dm); | ||
| 1863 | + map.put("ssbc_gz", ssbc_gz); | ||
| 1864 | + map.put("ssbc_jf", ssbc_jf); | ||
| 1865 | + map.put("ssbc_zs", ssbc_zs); | ||
| 1866 | + map.put("ssbc_qr", ssbc_qr); | ||
| 1867 | + map.put("ssbc_qc", ssbc_qc); | ||
| 1868 | + map.put("ssbc_kx", ssbc_kx); | ||
| 1869 | + map.put("ssbc_qh", ssbc_qh); | ||
| 1870 | + map.put("ssbc_yw", ssbc_yw); | ||
| 1871 | + map.put("ssbc_other", ssbc_other); | ||
| 1872 | + map.put("ljgl", ljgl == 0 ? 0 : format.format(ljgl)); | ||
| 1873 | + map.put("jhbc", jhbc); | ||
| 1874 | + map.put("jhbc_m", jhbc_m); | ||
| 1875 | + map.put("jhbc_a", jhbc_a); | ||
| 1876 | + map.put("sjbc", sjbc); | ||
| 1877 | + map.put("sjbc_m", sjbc_m); | ||
| 1878 | + map.put("sjbc_a", sjbc_a); | ||
| 1879 | + map.put("ljbc", ljbc); | ||
| 1880 | + map.put("ljbc_m", ljbc_m); | ||
| 1881 | + map.put("ljbc_a", ljbc_a); | ||
| 1882 | + map.put("fzbc", fzbc); | ||
| 1883 | + map.put("fzbc_m", fzbc_m); | ||
| 1884 | + map.put("fzbc_a", fzbc_a); | ||
| 1885 | + map.put("dtbc", dtbc); | ||
| 1886 | + map.put("dtbc_m", dtbc_m); | ||
| 1887 | + map.put("dtbc_a", dtbc_a); | ||
| 1888 | + map.put("djg", djg); | ||
| 1889 | + map.put("djg_m", djg_m); | ||
| 1890 | + map.put("djg_a", djg_a); | ||
| 1891 | + map.put("djg_time", djg_time); | ||
| 1892 | + lMap.add(map); | ||
| 1893 | + jhlc = 0; | ||
| 1894 | + tempJhlc = 0; | ||
| 1895 | + childMileage = 0; | ||
| 1896 | + sjgl = 0f; | ||
| 1897 | + ssgl = 0f; | ||
| 1898 | + ssgl_lz = 0f; | ||
| 1899 | + ssgl_dm = 0f; | ||
| 1900 | + ssgl_gz = 0f; | ||
| 1901 | + ssgl_jf = 0f; | ||
| 1902 | + ssgl_zs = 0f; | ||
| 1903 | + ssgl_qr = 0f; | ||
| 1904 | + ssgl_qc = 0f; | ||
| 1905 | + ssgl_kx = 0f; | ||
| 1906 | + ssgl_qh = 0f; | ||
| 1907 | + ssgl_yw = 0f; | ||
| 1908 | + ssgl_other = 0f; | ||
| 1909 | + ljgl = 0f; | ||
| 1910 | + //班次 | ||
| 1911 | + jhbc = 0; | ||
| 1912 | + jhbc_m = 0; | ||
| 1913 | + jhbc_a = 0; | ||
| 1914 | + sjbc = 0; | ||
| 1915 | + sjbc_m = 0; | ||
| 1916 | + sjbc_a = 0; | ||
| 1917 | + ljbc = 0; | ||
| 1918 | + ljbc_m = 0; | ||
| 1919 | + ljbc_a = 0; | ||
| 1920 | + fzbc = 0; | ||
| 1921 | + fzbc_m = 0; | ||
| 1922 | + fzbc_a = 0; | ||
| 1923 | + dtbc = 0; | ||
| 1924 | + dtbc_m = 0; | ||
| 1925 | + dtbc_a = 0; | ||
| 1926 | + djg = 0; | ||
| 1927 | + djg_m = 0; | ||
| 1928 | + djg_a = 0; | ||
| 1929 | + djg_time = 0; | ||
| 1930 | + } | ||
| 1931 | + } else { | ||
| 1932 | + map = new HashMap<String, Object>(); | ||
| 1933 | + map.put("xlName", scheduleRealInfo.getXlName()); | ||
| 1934 | + map.put("jhlc", format.format(jhlc)); | ||
| 1935 | + map.put("sjgl", format.format(sjgl)); | ||
| 1936 | + map.put("ssgl", format.format(ssgl)); | ||
| 1937 | + map.put("ssgl_lz", ssgl_lz == 0 ? 0 : format.format(ssgl_lz)); | ||
| 1938 | + map.put("ssgl_dm", ssgl_dm == 0 ? 0 : format.format(ssgl_dm)); | ||
| 1939 | + map.put("ssgl_gz", ssgl_gz == 0 ? 0 : format.format(ssgl_gz)); | ||
| 1940 | + map.put("ssgl_jf", ssgl_jf == 0 ? 0 : format.format(ssgl_jf)); | ||
| 1941 | + map.put("ssgl_zs", ssgl_zs == 0 ? 0 : format.format(ssgl_zs)); | ||
| 1942 | + map.put("ssgl_qr", ssgl_qr == 0 ? 0 : format.format(ssgl_qr)); | ||
| 1943 | + map.put("ssgl_qc", ssgl_qc == 0 ? 0 : format.format(ssgl_qc)); | ||
| 1944 | + map.put("ssgl_kx", ssgl_kx == 0 ? 0 : format.format(ssgl_kx)); | ||
| 1945 | + map.put("ssgl_qh", ssgl_qh == 0 ? 0 : format.format(ssgl_qh)); | ||
| 1946 | + map.put("ssgl_yw", ssgl_yw == 0 ? 0 : format.format(ssgl_yw)); | ||
| 1947 | + map.put("ssgl_other", ssgl_other == 0 ? 0 : format.format(ssgl_other)); | ||
| 1948 | + map.put("ssbc", ssbc); | ||
| 1949 | + map.put("ssbc_lz", ssbc_lz); | ||
| 1950 | + map.put("ssbc_dm", ssbc_dm); | ||
| 1951 | + map.put("ssbc_gz", ssbc_gz); | ||
| 1952 | + map.put("ssbc_jf", ssbc_jf); | ||
| 1953 | + map.put("ssbc_zs", ssbc_zs); | ||
| 1954 | + map.put("ssbc_qr", ssbc_qr); | ||
| 1955 | + map.put("ssbc_qc", ssbc_qc); | ||
| 1956 | + map.put("ssbc_kx", ssbc_kx); | ||
| 1957 | + map.put("ssbc_qh", ssbc_qh); | ||
| 1958 | + map.put("ssbc_yw", ssbc_yw); | ||
| 1959 | + map.put("ssbc_other", ssbc_other); | ||
| 1960 | + map.put("ljgl", ljgl == 0 ? 0 : format.format(ljgl)); | ||
| 1961 | + map.put("jhbc", jhbc); | ||
| 1962 | + map.put("jhbc_m", jhbc_m); | ||
| 1963 | + map.put("jhbc_a", jhbc_a); | ||
| 1964 | + map.put("sjbc", sjbc); | ||
| 1965 | + map.put("sjbc_m", sjbc_m); | ||
| 1966 | + map.put("sjbc_a", sjbc_a); | ||
| 1967 | + map.put("ljbc", ljbc); | ||
| 1968 | + map.put("ljbc_m", ljbc_m); | ||
| 1969 | + map.put("ljbc_a", ljbc_a); | ||
| 1970 | + map.put("fzbc", fzbc); | ||
| 1971 | + map.put("fzbc_m", fzbc_m); | ||
| 1972 | + map.put("fzbc_a", fzbc_a); | ||
| 1973 | + map.put("dtbc", dtbc); | ||
| 1974 | + map.put("dtbc_m", dtbc_m); | ||
| 1975 | + map.put("dtbc_a", dtbc_a); | ||
| 1976 | + map.put("djg", djg); | ||
| 1977 | + map.put("djg_m", djg_m); | ||
| 1978 | + map.put("djg_a", djg_a); | ||
| 1979 | + map.put("djg_time", djg_time); | ||
| 1980 | + lMap.add(map); | ||
| 1981 | + jhlc = 0; | ||
| 1982 | + tempJhlc = 0; | ||
| 1983 | + childMileage = 0; | ||
| 1984 | + sjgl = 0f; | ||
| 1985 | + ssgl = 0f; | ||
| 1986 | + ssgl_lz = 0f; | ||
| 1987 | + ssgl_dm = 0f; | ||
| 1988 | + ssgl_gz = 0f; | ||
| 1989 | + ssgl_jf = 0f; | ||
| 1990 | + ssgl_zs = 0f; | ||
| 1991 | + ssgl_qr = 0f; | ||
| 1992 | + ssgl_qc = 0f; | ||
| 1993 | + ssgl_kx = 0f; | ||
| 1994 | + ssgl_qh = 0f; | ||
| 1995 | + ssgl_yw = 0f; | ||
| 1996 | + ssgl_other = 0f; | ||
| 1997 | + ljgl = 0f; | ||
| 1998 | + //班次 | ||
| 1999 | + jhbc = 0; | ||
| 2000 | + jhbc_m = 0; | ||
| 2001 | + jhbc_a = 0; | ||
| 2002 | + sjbc = 0; | ||
| 2003 | + sjbc_m = 0; | ||
| 2004 | + sjbc_a = 0; | ||
| 2005 | + ljbc = 0; | ||
| 2006 | + ljbc_m = 0; | ||
| 2007 | + ljbc_a = 0; | ||
| 2008 | + fzbc = 0; | ||
| 2009 | + fzbc_m = 0; | ||
| 2010 | + fzbc_a = 0; | ||
| 2011 | + dtbc = 0; | ||
| 2012 | + dtbc_m = 0; | ||
| 2013 | + dtbc_a = 0; | ||
| 2014 | + djg = 0; | ||
| 2015 | + djg_m = 0; | ||
| 2016 | + djg_a = 0; | ||
| 2017 | + djg_time = 0; | ||
| 2018 | + } | ||
| 2019 | + } | ||
| 2020 | + } | ||
| 2021 | + map = new HashMap<String, Object>(); | ||
| 2022 | + map.put("xlName", "合计"); | ||
| 2023 | + map.put("jhlc", format.format(jhlcZ)); | ||
| 2024 | + map.put("sjgl", format.format(sjglZ)); | ||
| 2025 | + map.put("ssgl", format.format(ssglZ)); | ||
| 2026 | + map.put("ssgl_lz", ssgl_lzZ == 0 ? 0 : format.format(ssgl_lzZ)); | ||
| 2027 | + map.put("ssgl_dm", ssgl_dmZ == 0 ? 0 : format.format(ssgl_dmZ)); | ||
| 2028 | + map.put("ssgl_gz", ssgl_gzZ == 0 ? 0 : format.format(ssgl_gzZ)); | ||
| 2029 | + map.put("ssgl_jf", ssgl_jfZ == 0 ? 0 : format.format(ssgl_jfZ)); | ||
| 2030 | + map.put("ssgl_zs", ssgl_zsZ == 0 ? 0 : format.format(ssgl_zsZ)); | ||
| 2031 | + map.put("ssgl_qr", ssgl_qrZ == 0 ? 0 : format.format(ssgl_qrZ)); | ||
| 2032 | + map.put("ssgl_qc", ssgl_qcZ == 0 ? 0 : format.format(ssgl_qcZ)); | ||
| 2033 | + map.put("ssgl_kx", ssgl_kxZ == 0 ? 0 : format.format(ssgl_kxZ)); | ||
| 2034 | + map.put("ssgl_qh", ssgl_qhZ == 0 ? 0 : format.format(ssgl_qhZ)); | ||
| 2035 | + map.put("ssgl_yw", ssgl_ywZ == 0 ? 0 : format.format(ssgl_ywZ)); | ||
| 2036 | + map.put("ssgl_other", ssgl_otherZ == 0 ? 0 : format.format(ssgl_otherZ)); | ||
| 2037 | + map.put("ssbc", ssbcZ); | ||
| 2038 | + map.put("ssbc_lz", ssbc_lzZ); | ||
| 2039 | + map.put("ssbc_dm", ssbc_lzZ); | ||
| 2040 | + map.put("ssbc_gz", ssbc_gzZ); | ||
| 2041 | + map.put("ssbc_jf", ssbc_jfZ); | ||
| 2042 | + map.put("ssbc_zs", ssbc_zsZ); | ||
| 2043 | + map.put("ssbc_qr", ssbc_qrZ); | ||
| 2044 | + map.put("ssbc_qc", ssbc_qcZ); | ||
| 2045 | + map.put("ssbc_kx", ssbc_qcZ); | ||
| 2046 | + map.put("ssbc_qh", ssbc_qhZ); | ||
| 2047 | + map.put("ssbc_yw", ssbc_ywZ); | ||
| 2048 | + map.put("ssbc_other", ssbc_otherZ); | ||
| 2049 | + map.put("ljgl", ljglZ == 0 ? 0 : format.format(ljglZ)); | ||
| 2050 | + map.put("jhbc", jhbcZ); | ||
| 2051 | + map.put("jhbc_m", jhbc_mZ); | ||
| 2052 | + map.put("jhbc_a", jhbc_aZ); | ||
| 2053 | + map.put("sjbc", sjbcZ); | ||
| 2054 | + map.put("sjbc_m", sjbc_mZ); | ||
| 2055 | + map.put("sjbc_a", sjbc_aZ); | ||
| 2056 | + map.put("ljbc", ljbcZ); | ||
| 2057 | + map.put("ljbc_m", ljbc_mZ); | ||
| 2058 | + map.put("ljbc_a", ljbc_aZ); | ||
| 2059 | + map.put("fzbc", fzbcZ); | ||
| 2060 | + map.put("fzbc_m", fzbc_mZ); | ||
| 2061 | + map.put("fzbc_a", fzbc_aZ); | ||
| 2062 | + map.put("dtbc", dtbcZ); | ||
| 2063 | + map.put("dtbc_m", dtbc_mZ); | ||
| 2064 | + map.put("dtbc_a", dtbc_aZ); | ||
| 2065 | + map.put("djg", djgZ); | ||
| 2066 | + map.put("djg_m", djg_mZ); | ||
| 2067 | + map.put("djg_a", djg_aZ); | ||
| 2068 | + map.put("djg_time", djg_timeZ); | ||
| 2069 | + lMap.add(map); | ||
| 2070 | + /* for (int i = 0; i < lMap.size(); i++) { | ||
| 2071 | + Map<String, Object> m=lMap.get(i); | ||
| 2072 | +// m.get("")) | ||
| 2073 | + jhlc += Double.parseDouble(m.get("jhlc").toString()); | ||
| 2074 | + sjgl += Double.parseDouble(m.get("sjgl").toString()); | ||
| 2075 | + ssgl += Double.parseDouble( m.get("ssgl").toString()); | ||
| 2076 | + ssgl_lz += Double.parseDouble( m.get("ssgl_lz").toString()); | ||
| 2077 | + ssgl_dm += Double.parseDouble(m.get("ssgl_dm").toString()); | ||
| 2078 | + ssgl_gz += Double.parseDouble( m.get("ssgl_gz").toString()); | ||
| 2079 | + ssgl_jf += m.get("ssgl_jf", ssgl_jf == 0 ? 0 : format.format(ssgl_jf)); | ||
| 2080 | + m.get("ssgl_zs", ssgl_zs == 0 ? 0 : format.format(ssgl_zs)); | ||
| 2081 | + m.get("ssgl_qr", ssgl_qr == 0 ? 0 : format.format(ssgl_qr)); | ||
| 2082 | + m.get("ssgl_qc", ssgl_qc == 0 ? 0 : format.format(ssgl_qc)); | ||
| 2083 | + m.get("ssgl_kx", ssgl_kx == 0 ? 0 : format.format(ssgl_kx)); | ||
| 2084 | + m.get("ssgl_qh", ssgl_qh == 0 ? 0 : format.format(ssgl_qh)); | ||
| 2085 | + m.get("ssgl_yw", ssgl_yw == 0 ? 0 : format.format(ssgl_yw)); | ||
| 2086 | + m.get("ssgl_other", ssgl_other == 0 ? 0 : format.format(ssgl_other)); | ||
| 2087 | + m.get("ljgl", ljgl == 0 ? 0 : format.format(ljgl)); | ||
| 2088 | + m.get("jhbc", jhbc); | ||
| 2089 | + m.get("jhbc_m", jhbc_m); | ||
| 2090 | + m.get("jhbc_a", jhbc_a); | ||
| 2091 | + m.get("sjbc", sjbc); | ||
| 2092 | + m.get("sjbc_m", sjbc_m); | ||
| 2093 | + m.get("sjbc_a", sjbc_a); | ||
| 2094 | + m.get("ljbc", ljbc); | ||
| 2095 | + m.get("ljbc_m", ljbc_m); | ||
| 2096 | + m.get("ljbc_a", ljbc_a); | ||
| 2097 | + m.get("fzbc", fzbc); | ||
| 2098 | + m.get("fzbc_m", fzbc_m); | ||
| 2099 | + m.get("fzbc_a", fzbc_a); | ||
| 2100 | + m.get("dtbc", dtbc); | ||
| 2101 | + m.get("dtbc_m", dtbc_m); | ||
| 2102 | + m.get("dtbc_a", dtbc_a); | ||
| 2103 | + m.get("djg", djg); | ||
| 2104 | + m.get("djg_m", djg_m); | ||
| 2105 | + m.get("djg_a", djg_a); | ||
| 2106 | + m.get("djg_time", djg_time); | ||
| 2107 | + }*/ | ||
| 2108 | + | ||
| 2109 | + if (type != null && type.length() != 0 && type.equals("export")) { | ||
| 2110 | + SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"), | ||
| 2111 | + sdfSimple = new SimpleDateFormat("yyyyMMdd"); | ||
| 2112 | + List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); | ||
| 2113 | + Map<String, Object> m = new HashMap<String, Object>(); | ||
| 2114 | + ReportUtils ee = new ReportUtils(); | ||
| 1469 | try { | 2115 | try { |
| 1470 | - listI.add(tempList.iterator()); | 2116 | + listI.add(lMap.iterator()); |
| 1471 | String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; | 2117 | String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; |
| 1472 | - ee.excelReplace(listI, new Object[]{m}, path + "mould/correctForm.xls", | ||
| 1473 | - path + "export/修正报表" + sdfSimple.format(sdfMonth.parse(startDate)) + "-" + sdfSimple.format(sdfMonth.parse(endDate)) + ".xls"); | 2118 | + ee.excelReplace(listI, new Object[]{m}, path + "mould/statisticsDaily_.xls", |
| 2119 | + path + "export/统计日报" + sdfSimple.format(sdfMonth.parse(date)) + ".xls"); | ||
| 1474 | } catch (Exception e) { | 2120 | } catch (Exception e) { |
| 1475 | // TODO: handle exception | 2121 | // TODO: handle exception |
| 1476 | e.printStackTrace(); | 2122 | e.printStackTrace(); |
| 1477 | } | 2123 | } |
| 1478 | - Map<String, Object> map = tempList.get(tempList.size() - 1); | ||
| 1479 | - System.out.println("tempMap:" + map); | ||
| 1480 | - } | ||
| 1481 | - | ||
| 1482 | - return list; | ||
| 1483 | - } | ||
| 1484 | - | ||
| 1485 | - @Override | ||
| 1486 | - public List<ScheduleRealInfo> queryListWaybill(String jName, String clZbh, | ||
| 1487 | - String lpName, String date, String line) { | ||
| 1488 | - List<ScheduleRealInfo> listSchedule = new ArrayList<ScheduleRealInfo>(); | ||
| 1489 | - List<ScheduleRealInfo> list = null; | ||
| 1490 | - list = scheduleRealInfoRepository.queryListWaybill(jName, clZbh, lpName, date, line); | ||
| 1491 | - for (int i = 0; i < list.size(); i++) { | ||
| 1492 | - ScheduleRealInfo s = list.get(i); | ||
| 1493 | - s.setAdjustExps(i + 1 + ""); | ||
| 1494 | - String remarks = ""; | ||
| 1495 | - if (s.getRemarks() != null) { | ||
| 1496 | - remarks += s.getRemarks(); | ||
| 1497 | - } | ||
| 1498 | - | ||
| 1499 | - Set<ChildTaskPlan> childTaskPlans = s.getcTasks(); | ||
| 1500 | - if (!childTaskPlans.isEmpty()) { | ||
| 1501 | - s.setFcsjActual(""); | ||
| 1502 | - s.setZdsjActual(""); | ||
| 1503 | - } | ||
| 1504 | - | ||
| 1505 | - if (s.isDestroy()) { | ||
| 1506 | - s.setFcsjActual(""); | ||
| 1507 | - s.setZdsjActual(""); | ||
| 1508 | - s.setJhlc(0.0); | ||
| 1509 | - remarks += "(烂班)"; | ||
| 1510 | - s.setRemarks(remarks); | ||
| 1511 | - } | ||
| 1512 | - listSchedule.add(s); | ||
| 1513 | - //计算营运里程,空驶里程 | ||
| 1514 | - if (!childTaskPlans.isEmpty()) { | ||
| 1515 | - String sqlPc = "select * from bsth_c_s_child_task where schedule=" + s.getId() + " order by start_date "; | ||
| 1516 | - List<ScheduleRealInfo> lists = jdbcTemplate.query(sqlPc, | ||
| 1517 | - new RowMapper<ScheduleRealInfo>() { | ||
| 1518 | - @Override | ||
| 1519 | - public ScheduleRealInfo mapRow(ResultSet rs, int rowNum) throws SQLException { | ||
| 1520 | - ScheduleRealInfo t = new ScheduleRealInfo(); | ||
| 1521 | - if (rs.getInt("destroy") == 0) { | ||
| 1522 | - t.setFcsjActual(rs.getString("start_date")); | ||
| 1523 | - t.setZdsjActual(rs.getString("end_date")); | ||
| 1524 | - t.setJhlc(rs.getDouble("mileage")); | ||
| 1525 | - } else { | ||
| 1526 | - t.setFcsjActual(""); | ||
| 1527 | - t.setZdsjActual(""); | ||
| 1528 | - t.setJhlc(0.0); | ||
| 1529 | - } | ||
| 1530 | - t.setQdzName(rs.getString("start_station_name")); | ||
| 1531 | - t.setZdzName(rs.getString("end_station_name")); | ||
| 1532 | - t.setRemarks(rs.getString("remarks")); | ||
| 1533 | - t.setAdjustExps("子"); | ||
| 1534 | - return t; | ||
| 1535 | - } | ||
| 1536 | - }); | ||
| 1537 | - for (int j = 0; j < lists.size(); j++) { | ||
| 1538 | - ScheduleRealInfo t = lists.get(j); | ||
| 1539 | - listSchedule.add(t); | ||
| 1540 | - } | ||
| 1541 | - } | ||
| 1542 | } | 2124 | } |
| 1543 | 2125 | ||
| 1544 | - return listSchedule; | ||
| 1545 | - } | ||
| 1546 | - | ||
| 1547 | - @Override | ||
| 1548 | - public Map<String, Object> removeChildTask(Long taskId) { | ||
| 1549 | - Map<String, Object> rs = new HashMap<>(); | ||
| 1550 | - ChildTaskPlan chTask = cTaskPlanRepository.findOne(taskId); | ||
| 1551 | - | ||
| 1552 | - ScheduleRealInfo sch = dayOfSchedule.get(chTask.getSchedule().getId()); | ||
| 1553 | - try { | ||
| 1554 | - | ||
| 1555 | - sch.getcTasks().remove(chTask); | ||
| 1556 | - scheduleRealInfoRepository.save(sch); | ||
| 1557 | - rs.put("status", ResponseCode.SUCCESS); | ||
| 1558 | - } catch (Exception e) { | ||
| 1559 | - logger.error("", e); | ||
| 1560 | - rs.put("status", ResponseCode.ERROR); | ||
| 1561 | - } | ||
| 1562 | - return rs; | 2126 | + return lMap; |
| 1563 | } | 2127 | } |
| 1564 | - | 2128 | + |
| 1565 | @Override | 2129 | @Override |
| 1566 | - public List<Map<String, Object>> statisticsDaily(String line, String date, | 2130 | + public List<Map<String, Object>> statisticsDailyTj(String line, String date,String date2, |
| 1567 | String xlName, String type) { | 2131 | String xlName, String type) { |
| 1568 | List<ScheduleRealInfo> list = new ArrayList<ScheduleRealInfo>(); | 2132 | List<ScheduleRealInfo> list = new ArrayList<ScheduleRealInfo>(); |
| 1569 | - if (date.length() == 10) | ||
| 1570 | - list = scheduleRealInfoRepository.scheduleByDateAndLine2(line, date); | ||
| 1571 | - else if (date.length() == 7) | ||
| 1572 | - list = scheduleRealInfoRepository.scheduleByDateAndLine3(line, date); | 2133 | + list = scheduleRealInfoRepository.scheduleByDateAndLineTj(line, date,date2); |
| 1573 | 2134 | ||
| 1574 | List<Map<String, Object>> lMap = new ArrayList<Map<String, Object>>(); | 2135 | List<Map<String, Object>> lMap = new ArrayList<Map<String, Object>>(); |
| 1575 | DecimalFormat format = new DecimalFormat("0.00"); | 2136 | DecimalFormat format = new DecimalFormat("0.00"); |
| @@ -2331,117 +2892,113 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -2331,117 +2892,113 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 2331 | return list; | 2892 | return list; |
| 2332 | } | 2893 | } |
| 2333 | 2894 | ||
| 2334 | - public List<Map<String, Object>> yesterdayDataList(String line, String date) { | 2895 | + public List<Map<String, Object>> yesterdayDataList(String line, String date,String gsbm,String fgsbm,String jGh,String nbbm) { |
| 2896 | +// Arith arith=new Arith(); | ||
| 2335 | //前一天日期 | 2897 | //前一天日期 |
| 2336 | // String date = sdfMonth.format(org.apache.commons.lang.time.DateUtils.addDays(new Date(), -1)); | 2898 | // String date = sdfMonth.format(org.apache.commons.lang.time.DateUtils.addDays(new Date(), -1)); |
| 2337 | // String date = "2016-09-20"; | 2899 | // String date = "2016-09-20"; |
| 2338 | - List<Map<String, Object>> yesterdayDataList = scheduleRealInfoRepository.yesterdayDataList(line, date); | ||
| 2339 | -// List<ScheduleRealInfo> list = scheduleRealInfoRepository.scheduleByDateAndLine(line, date); | 2900 | + System.out.println("shijian1:"+new Date()); |
| 2901 | + List<Map<String, Object>> yesterdayDataList = scheduleRealInfoRepository.yesterdayDataList(line, date,gsbm,fgsbm); | ||
| 2902 | + System.out.println("shijian2:"+new Date()); | ||
| 2903 | + // List<ScheduleRealInfo> list = scheduleRealInfoRepository.scheduleByDateAndLine(line, date); | ||
| 2904 | + List<ScheduleRealInfo> lists = scheduleRealInfoRepository.queryListWaybill3(jGh, nbbm, date,gsbm,fgsbm); | ||
| 2905 | + System.out.println("shijian3:"+new Date()); | ||
| 2340 | for (int x = 0; x < yesterdayDataList.size(); x++) { | 2906 | for (int x = 0; x < yesterdayDataList.size(); x++) { |
| 2341 | String jName = yesterdayDataList.get(x).get("jGh").toString(); | 2907 | String jName = yesterdayDataList.get(x).get("jGh").toString(); |
| 2342 | String clZbh = yesterdayDataList.get(x).get("clZbh").toString(); | 2908 | String clZbh = yesterdayDataList.get(x).get("clZbh").toString(); |
| 2343 | - List<ScheduleRealInfo> lists = scheduleRealInfoRepository.queryListWaybill3(jName, clZbh, date); | 2909 | + |
| 2344 | double jhlc = 0, yygl = 0, ksgl = 0, tempJhlc = 0, jcclc = 0; | 2910 | double jhlc = 0, yygl = 0, ksgl = 0, tempJhlc = 0, jcclc = 0; |
| 2345 | - float addMileage = 0l, remMileage = 0l; | 2911 | + double addMileage = 0, remMileage = 0; |
| 2346 | Map<String, Object> map = new HashMap<String, Object>(); | 2912 | Map<String, Object> map = new HashMap<String, Object>(); |
| 2347 | boolean fage = true; | 2913 | boolean fage = true; |
| 2914 | + String company=""; | ||
| 2915 | + String bCompany=""; | ||
| 2348 | for (ScheduleRealInfo scheduleRealInfo : lists) { | 2916 | for (ScheduleRealInfo scheduleRealInfo : lists) { |
| 2349 | - if (fage) { | ||
| 2350 | - //根据线路代码获取公司 | ||
| 2351 | - Line li = lineRepository.findByLineCode(scheduleRealInfo.getXlBm()); | ||
| 2352 | - yesterdayDataList.get(x).put("company", li.getCompany()); | ||
| 2353 | - yesterdayDataList.get(x).put("bCompany", li.getBrancheCompany()); | ||
| 2354 | - fage = false; | ||
| 2355 | - } | ||
| 2356 | - if (scheduleRealInfo != null) { | ||
| 2357 | - //计划里程(主任务过滤掉临加班次), | ||
| 2358 | - //烂班里程(主任务烂班), | ||
| 2359 | - //临加里程(主任务临加), | ||
| 2360 | - //计划班次,烂班班次,增加班次 | ||
| 2361 | - tempJhlc = scheduleRealInfo.getJhlc() == null ? 0 : scheduleRealInfo.getJhlc(); | ||
| 2362 | - if (scheduleRealInfo.isSflj()) { | ||
| 2363 | - addMileage += tempJhlc; | ||
| 2364 | - } else { | ||
| 2365 | - if (!(scheduleRealInfo.getBcType().equals("in") | ||
| 2366 | - || scheduleRealInfo.getBcType().equals("out"))) { | ||
| 2367 | - jhlc += tempJhlc; | ||
| 2368 | - } | ||
| 2369 | - | ||
| 2370 | - if (scheduleRealInfo.getStatus() == -1) { | ||
| 2371 | - remMileage += tempJhlc; | ||
| 2372 | - } | ||
| 2373 | - } | ||
| 2374 | - Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); | ||
| 2375 | - //计算营运里程,空驶里程 | ||
| 2376 | - if (childTaskPlans.isEmpty()) { | ||
| 2377 | - if (scheduleRealInfo.getBcType().equals("in") || | ||
| 2378 | - scheduleRealInfo.getBcType().equals("out")) { | ||
| 2379 | - jcclc += tempJhlc; | ||
| 2380 | - } | ||
| 2381 | - //主任务 放空班次属于营运 | ||
| 2382 | -// else if(scheduleRealInfo.getBcType().equals("venting")){ | ||
| 2383 | -// ksgl += tempJhlc; | ||
| 2384 | -// } | ||
| 2385 | - else { | ||
| 2386 | - if (scheduleRealInfo.getStatus() != -1) { | ||
| 2387 | - yygl += tempJhlc; | ||
| 2388 | - } | ||
| 2389 | - } | ||
| 2390 | - } else { | ||
| 2391 | - Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); | ||
| 2392 | - while (it.hasNext()) { | ||
| 2393 | - ChildTaskPlan childTaskPlan = it.next(); | ||
| 2394 | - if (childTaskPlan.getMileageType().equals("empty")) { | ||
| 2395 | - if (childTaskPlan.isDestroy()) { | ||
| 2396 | - remMileage += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2397 | - } else { | ||
| 2398 | - ksgl += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2399 | - } | ||
| 2400 | - } else { | ||
| 2401 | - if (childTaskPlan.isDestroy()) { | ||
| 2402 | - remMileage += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2403 | - } else { | ||
| 2404 | - yygl += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2405 | - } | ||
| 2406 | - } | ||
| 2407 | - } | ||
| 2408 | - } | ||
| 2409 | - } | 2917 | + if(scheduleRealInfo.getjGh().equals(jName) && scheduleRealInfo.getClZbh().equals(clZbh)){ |
| 2918 | + if (fage) { | ||
| 2919 | + //根据线路代码获取公司 | ||
| 2920 | + company=scheduleRealInfo.getGsBm(); | ||
| 2921 | + bCompany=scheduleRealInfo.getFgsBm(); | ||
| 2922 | + fage = false; | ||
| 2923 | + } | ||
| 2924 | + if (scheduleRealInfo != null) { | ||
| 2925 | + //计划里程(主任务过滤掉临加班次), | ||
| 2926 | + //烂班里程(主任务烂班), | ||
| 2927 | + //临加里程(主任务临加), | ||
| 2928 | + //计划班次,烂班班次,增加班次 | ||
| 2929 | + tempJhlc = scheduleRealInfo.getJhlc() == null ? 0 : scheduleRealInfo.getJhlc(); | ||
| 2930 | + if (scheduleRealInfo.isSflj()) { | ||
| 2931 | + if(scheduleRealInfo.getStatus() == -1){ | ||
| 2932 | +// addMileage += tempJhlc; | ||
| 2933 | + addMileage =Arith.add(addMileage, tempJhlc); | ||
| 2934 | + } | ||
| 2935 | + } else { | ||
| 2936 | + if (!(scheduleRealInfo.getBcType().equals("in") | ||
| 2937 | + || scheduleRealInfo.getBcType().equals("out"))) { | ||
| 2938 | +// jhlc += tempJhlc; | ||
| 2939 | + jhlc =Arith.add(jhlc,tempJhlc); | ||
| 2940 | + } | ||
| 2941 | + | ||
| 2942 | + if (scheduleRealInfo.getStatus() == -1) { | ||
| 2943 | +// remMileage += tempJhlc; | ||
| 2944 | + remMileage =Arith.add(remMileage,tempJhlc); | ||
| 2945 | + } | ||
| 2946 | + } | ||
| 2947 | + Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); | ||
| 2948 | + //计算营运里程,空驶里程 | ||
| 2949 | + if (childTaskPlans.isEmpty()) { | ||
| 2950 | + if (scheduleRealInfo.getBcType().equals("in") || | ||
| 2951 | + scheduleRealInfo.getBcType().equals("out")) { | ||
| 2952 | + if (scheduleRealInfo.getStatus() != -1) { | ||
| 2953 | +// jcclc += tempJhlc; | ||
| 2954 | + jcclc=Arith.add(jcclc,tempJhlc); | ||
| 2955 | + } | ||
| 2956 | + } | ||
| 2957 | + //主任务 放空班次属于营运 | ||
| 2958 | + // else if(scheduleRealInfo.getBcType().equals("venting")){ | ||
| 2959 | + // ksgl += tempJhlc; | ||
| 2960 | + // } | ||
| 2961 | + else { | ||
| 2962 | + if (scheduleRealInfo.getStatus() != -1) { | ||
| 2963 | +// yygl += tempJhlc; | ||
| 2964 | + yygl=Arith.add(yygl,tempJhlc); | ||
| 2965 | + } | ||
| 2966 | + } | ||
| 2967 | + } else { | ||
| 2968 | + Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); | ||
| 2969 | + while (it.hasNext()) { | ||
| 2970 | + ChildTaskPlan childTaskPlan = it.next(); | ||
| 2971 | + if (childTaskPlan.getMileageType().equals("empty")) { | ||
| 2972 | + if (childTaskPlan.isDestroy()) { | ||
| 2973 | +// remMileage += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2974 | + remMileage=Arith.add(remMileage,childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage()); | ||
| 2975 | + } else { | ||
| 2976 | +// ksgl += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2977 | + ksgl += Arith.add(ksgl,childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage()); | ||
| 2978 | + } | ||
| 2979 | + } else { | ||
| 2980 | + if (childTaskPlan.isDestroy()) { | ||
| 2981 | +// remMileage += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2982 | + remMileage=Arith.add(remMileage,childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage()); | ||
| 2983 | + | ||
| 2984 | + } else { | ||
| 2985 | +// yygl += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 2986 | + yygl=Arith.add(yygl,childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage()); | ||
| 2987 | + | ||
| 2988 | + } | ||
| 2989 | + } | ||
| 2990 | + } | ||
| 2991 | + } | ||
| 2992 | + } | ||
| 2993 | + } | ||
| 2410 | } | 2994 | } |
| 2995 | + yesterdayDataList.get(x).put("company", company); | ||
| 2996 | + yesterdayDataList.get(x).put("bCompany", bCompany); | ||
| 2997 | + Double zgl=Arith.add(yygl,ksgl); | ||
| 2998 | + yesterdayDataList.get(x).put("totalKilometers", Arith.add(zgl, jcclc)); | ||
| 2411 | 2999 | ||
| 2412 | - yesterdayDataList.get(x).put("totalKilometers", yygl + ksgl + jcclc); | ||
| 2413 | - | ||
| 2414 | - } | ||
| 2415 | - | ||
| 2416 | - /* for(ScheduleRealInfo scheduleRealInfo:list){ | ||
| 2417 | - if(scheduleRealInfo != null){ | ||
| 2418 | - for(int i=0;i<yesterdayDataList.size();i++){ | ||
| 2419 | - if(scheduleRealInfo.getXlBm().equals(yesterdayDataList.get(i).get("xlBm")) && scheduleRealInfo.getClZbh().equals(yesterdayDataList.get(i).get("clZbh")) | ||
| 2420 | - && scheduleRealInfo.getjGh().equals(yesterdayDataList.get(i).get("jGh"))){ | ||
| 2421 | - //根据线路代码获取公司 | ||
| 2422 | - Line li = lineRepository.findByLineCode(scheduleRealInfo.getXlBm()); | ||
| 2423 | - yesterdayDataList.get(i).put("company", li.getCompany()); | ||
| 2424 | - yesterdayDataList.get(i).put("bCompany", li.getBrancheCompany()); | ||
| 2425 | - //计算总公里 | ||
| 2426 | - Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); | ||
| 2427 | - //如果没有子任务,里程就是已执行(Status=2);有子任务的,忽略主任务,子任务的烂班 | ||
| 2428 | - if(childTaskPlans.isEmpty()){ | ||
| 2429 | - if(scheduleRealInfo.getStatus() == 2){ | ||
| 2430 | - 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"))); | ||
| 2431 | - } | ||
| 2432 | - }else{ | ||
| 2433 | - Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); | ||
| 2434 | - while(it.hasNext()){ | ||
| 2435 | - ChildTaskPlan childTaskPlan = it.next(); | ||
| 2436 | - if(!childTaskPlan.isDestroy()){ | ||
| 2437 | - 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"))); | ||
| 2438 | - } | ||
| 2439 | - } | ||
| 2440 | - } | ||
| 2441 | - } | ||
| 2442 | - } | ||
| 2443 | - } | ||
| 2444 | - }*/ | 3000 | + } |
| 3001 | + System.out.println(); | ||
| 2445 | //增加顺序号 | 3002 | //增加顺序号 |
| 2446 | for (int i = 0; i < yesterdayDataList.size(); i++) { | 3003 | for (int i = 0; i < yesterdayDataList.size(); i++) { |
| 2447 | if (i == 0) { | 3004 | if (i == 0) { |
| @@ -3116,7 +3673,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3116,7 +3673,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3116 | } | 3673 | } |
| 3117 | 3674 | ||
| 3118 | if (!c.isDestroy()) { | 3675 | if (!c.isDestroy()) { |
| 3119 | - sjlc += c.getMileage() == null ? 0 : c.getMileage(); | 3676 | + if(c.getMileageType().equals("service")){ |
| 3677 | + sjlc += c.getMileage() == null ? 0 : c.getMileage(); | ||
| 3678 | + } | ||
| 3120 | } | 3679 | } |
| 3121 | 3680 | ||
| 3122 | } | 3681 | } |
| @@ -3143,7 +3702,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3143,7 +3702,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3143 | ScheduleRealInfo s = scheduleRealInfoRepository.findOne(id); | 3702 | ScheduleRealInfo s = scheduleRealInfoRepository.findOne(id); |
| 3144 | String xlbm = s.getXlBm(); | 3703 | String xlbm = s.getXlBm(); |
| 3145 | String fcrq = s.getScheduleDateStr(); | 3704 | String fcrq = s.getScheduleDateStr(); |
| 3146 | - | 3705 | + //保留两位小数 |
| 3706 | + DecimalFormat df = new DecimalFormat("#.00"); | ||
| 3147 | List<Ylxxb> listYlxxb = ylxxbRepository.queryListYlxxb(s.getClZbh(), fcrq); | 3707 | List<Ylxxb> listYlxxb = ylxxbRepository.queryListYlxxb(s.getClZbh(), fcrq); |
| 3148 | Double jzl = 0.0; | 3708 | Double jzl = 0.0; |
| 3149 | for (int t = 0; t < listYlxxb.size(); t++) { | 3709 | for (int t = 0; t < listYlxxb.size(); t++) { |
| @@ -3162,7 +3722,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3162,7 +3722,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3162 | yh += y.getYh(); | 3722 | yh += y.getYh(); |
| 3163 | 3723 | ||
| 3164 | } | 3724 | } |
| 3165 | - map.put("jzl", jzl); | 3725 | + map.put("jzl", df.format(jzl)); |
| 3166 | map.put("yh", yh); | 3726 | map.put("yh", yh); |
| 3167 | map.put("ccyl", ccyl); | 3727 | map.put("ccyl", ccyl); |
| 3168 | map.put("jcyl", jcyl); | 3728 | map.put("jcyl", jcyl); |
| @@ -3590,17 +4150,21 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3590,17 +4150,21 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3590 | } | 4150 | } |
| 3591 | 4151 | ||
| 3592 | ScheduleRealInfo leftSch, rightSch = null; | 4152 | ScheduleRealInfo leftSch, rightSch = null; |
| 3593 | - boolean changeRealTime = true; | ||
| 3594 | for (int i = 0; i < largeList.size(); i++) { | 4153 | for (int i = 0; i < largeList.size(); i++) { |
| 3595 | leftSch = largeList.get(i); | 4154 | leftSch = largeList.get(i); |
| 3596 | if (i < smallList.size()) { | 4155 | if (i < smallList.size()) { |
| 3597 | rightSch = smallList.get(i); | 4156 | rightSch = smallList.get(i); |
| 3598 | ts.add(rightSch); | 4157 | ts.add(rightSch); |
| 3599 | - } else | ||
| 3600 | - changeRealTime = false; | 4158 | + } else{ |
| 4159 | + //不对称时多出来的 | ||
| 4160 | + lpChangeByLeft(leftSch, largeList.get(i - 1), type); | ||
| 4161 | + ts.add(leftSch); | ||
| 4162 | + cars.add(leftSch.getClZbh()); | ||
| 4163 | + continue; | ||
| 4164 | + } | ||
| 3601 | 4165 | ||
| 3602 | //调换路牌 | 4166 | //调换路牌 |
| 3603 | - lpChange(leftSch, rightSch, type, changeRealTime); | 4167 | + lpChange(leftSch, rightSch, type); |
| 3604 | ts.add(leftSch); | 4168 | ts.add(leftSch); |
| 3605 | 4169 | ||
| 3606 | cars.add(leftSch.getClZbh()); | 4170 | cars.add(leftSch.getClZbh()); |
| @@ -3636,19 +4200,38 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3636,19 +4200,38 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3636 | } | 4200 | } |
| 3637 | 4201 | ||
| 3638 | @Override | 4202 | @Override |
| 3639 | - public void lpChange(ScheduleRealInfo leftSch, ScheduleRealInfo rightSch, int type, boolean changeRealTime) { | 4203 | + public void lpChange(ScheduleRealInfo leftSch, ScheduleRealInfo rightSch, int type) { |
| 3640 | LpData leftData = new LpData(leftSch); | 4204 | LpData leftData = new LpData(leftSch); |
| 3641 | LpData rightData = new LpData(rightSch); | 4205 | LpData rightData = new LpData(rightSch); |
| 3642 | 4206 | ||
| 3643 | - leftData.appendTo(rightSch, type, changeRealTime); | ||
| 3644 | - rightData.appendTo(leftSch, type, changeRealTime); | 4207 | + leftData.appendTo(rightSch, type); |
| 4208 | + rightData.appendTo(leftSch, type); | ||
| 4209 | + | ||
| 4210 | + if(type > 0){ | ||
| 4211 | + //更新车辆和班次映射信息 | ||
| 4212 | + dayOfSchedule.removeNbbm2SchMapp(leftSch, leftData.getNbbm()); | ||
| 4213 | + dayOfSchedule.removeNbbm2SchMapp(rightSch, rightData.getNbbm()); | ||
| 3645 | 4214 | ||
| 3646 | - //更新车辆和班次映射信息 | ||
| 3647 | - dayOfSchedule.removeNbbm2SchMapp(leftSch, leftData.getNbbm()); | ||
| 3648 | - dayOfSchedule.removeNbbm2SchMapp(rightSch, rightData.getNbbm()); | 4215 | + dayOfSchedule.addNbbm2SchMapp(leftSch, rightData.getNbbm()); |
| 4216 | + dayOfSchedule.addNbbm2SchMapp(rightSch, leftData.getNbbm()); | ||
| 4217 | + } | ||
| 4218 | + } | ||
| 4219 | + | ||
| 4220 | + /** | ||
| 4221 | + * 更换左边班次的路牌,右边不变 | ||
| 4222 | + * @param leftSch | ||
| 4223 | + * @param rightSch | ||
| 4224 | + * @param type | ||
| 4225 | + */ | ||
| 4226 | + public void lpChangeByLeft(ScheduleRealInfo leftSch, ScheduleRealInfo rightSch, int type) { | ||
| 4227 | + LpData rightData = new LpData(rightSch); | ||
| 3649 | 4228 | ||
| 3650 | - dayOfSchedule.addNbbm2SchMapp(leftSch, rightData.getNbbm()); | ||
| 3651 | - dayOfSchedule.addNbbm2SchMapp(rightSch, leftData.getNbbm()); | 4229 | + rightData.appendTo(leftSch, type); |
| 4230 | + | ||
| 4231 | + if(type > 0){ | ||
| 4232 | + //更新车辆和班次映射信息 | ||
| 4233 | + dayOfSchedule.addNbbm2SchMapp(leftSch, rightData.getNbbm()); | ||
| 4234 | + } | ||
| 3652 | } | 4235 | } |
| 3653 | 4236 | ||
| 3654 | @Override | 4237 | @Override |
src/main/java/com/bsth/service/schedule/PeopleCarPlanServiceImpl.java
| @@ -229,22 +229,22 @@ public class PeopleCarPlanServiceImpl implements PeopleCarPlanService { | @@ -229,22 +229,22 @@ public class PeopleCarPlanServiceImpl implements PeopleCarPlanService { | ||
| 229 | temp.get(key).add(m); | 229 | temp.get(key).add(m); |
| 230 | } | 230 | } |
| 231 | for(String key : temp.keySet()){ | 231 | for(String key : temp.keySet()){ |
| 232 | - Map<Integer, List<Map<String, Object>>> tempList = new HashMap<Integer, List<Map<String,Object>>>(); | ||
| 233 | - List<Integer> keyList = new ArrayList<Integer>(); | 232 | + Map<Long, List<Map<String, Object>>> tempList = new HashMap<Long, List<Map<String,Object>>>(); |
| 233 | + List<Long> keyList = new ArrayList<Long>(); | ||
| 234 | for(Map<String, Object> m : temp.get(key)){ | 234 | for(Map<String, Object> m : temp.get(key)){ |
| 235 | String lp = m.get("lp").toString(); | 235 | String lp = m.get("lp").toString(); |
| 236 | String str = ""; | 236 | String str = ""; |
| 237 | for(int i = 0; i < lp.length(); i++){ | 237 | for(int i = 0; i < lp.length(); i++){ |
| 238 | str += (int)lp.charAt(i); | 238 | str += (int)lp.charAt(i); |
| 239 | } | 239 | } |
| 240 | - int i = Integer.valueOf(str); | 240 | + Long i = Long.valueOf(str); |
| 241 | if(!tempList.containsKey(i)) | 241 | if(!tempList.containsKey(i)) |
| 242 | tempList.put(i, new ArrayList<Map<String, Object>>()); | 242 | tempList.put(i, new ArrayList<Map<String, Object>>()); |
| 243 | tempList.get(i).add(m); | 243 | tempList.get(i).add(m); |
| 244 | keyList.add(i); | 244 | keyList.add(i); |
| 245 | } | 245 | } |
| 246 | Collections.sort(keyList); | 246 | Collections.sort(keyList); |
| 247 | - for(Integer i : keyList){ | 247 | + for(Long i : keyList){ |
| 248 | for(Map<String, Object> m : tempList.get(i)){ | 248 | for(Map<String, Object> m : tempList.get(i)){ |
| 249 | resList.add(m); | 249 | resList.add(m); |
| 250 | } | 250 | } |