package cn.com.lzt.car.road.controller; import cn.com.lzt.car.cardoc.service.impl.CarServiceImpl; import cn.com.lzt.car.carfleet.service.impl.CarFleetServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.daju.mix.dao.entity.TBArchivesRoadSection; import com.daju.mix.dao.service.impl.TBArchivesRoadSectionServiceImpl; import org.apache.commons.lang3.StringUtils; import org.apache.log4j.Logger; import org.jeecgframework.core.common.controller.BaseController; import org.jeecgframework.core.common.model.json.DataGrid; import org.jeecgframework.core.util.ResourceUtil; import org.jeecgframework.tag.core.easyui.TagUtil; import org.jeecgframework.web.system.service.SystemService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.Validator; /** * @Title: Controller * @Description: 路段管理 * @author onlineGenerator * @date 2019-10-15 09:47:08 * @version V1.0 * */ @Controller @RequestMapping("/roadSectionController") public class RoadSectionController extends BaseController { /** * Logger for this class */ private static final Logger logger = Logger.getLogger(RoadSectionController.class); @Resource private TBArchivesRoadSectionServiceImpl roadSectionService; @Resource private CarFleetServiceImpl carFleetService; @Resource private CarServiceImpl carService; @Autowired private SystemService systemService; @Autowired private Validator validator; /** * 车辆作业计划列表 页面跳转 * * @return */ @RequestMapping(params = "list") public ModelAndView list(HttpServletRequest request) { return new ModelAndView("cn/com/lzt/car/road/roadSectionList"); } @RequestMapping(params = "detailBaidu") public ModelAndView detailBaidu(HttpServletRequest request) { return new ModelAndView("cn/com/lzt/car/road/carScheduleDetailListBaidu"); } @RequestMapping(params = "listAndBaidu") public ModelAndView listAndBaidu(HttpServletRequest request) { // String scheduleid = request.getParameter("scheduleid"); // CarScheduleEntity carSchedule = roadSectionService.get(CarScheduleEntity.class, scheduleid); // request.setAttribute("schedule", carSchedule); return new ModelAndView("cn/com/lzt/car/scheduledetail/carScheduleDetailSet"); } /** * easyui AJAX请求数据 * * @param request * @param response * @param dataGrid */ @RequestMapping(params = "datagrid") public void datagrid(TBArchivesRoadSection object, HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) { if(!ResourceUtil.isLoginUserAdmin()) { } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(object.getCode())) { queryWrapper.like(TBArchivesRoadSection::getCode, object.getCode()); } if (StringUtils.isNotBlank(object.getName())) { queryWrapper.like(TBArchivesRoadSection::getName, object.getName()); } queryWrapper.orderByAsc(TBArchivesRoadSection::getId); // logger.debug("dataGrid rows=" + dataGrid.getRows()); Page page = roadSectionService.page( new Page<>(dataGrid.getPage(), dataGrid.getRows()), queryWrapper); // logger.debug(String.format("dataGrid records.size=%s total=%s", page.getRecords().size(), page.getTotal())); TagUtil.datagrid(response, dataGrid, page); } @RequestMapping(params = "selectDatagrid") public void selectDatagrid(TBArchivesRoadSection object, HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) { if(!ResourceUtil.isLoginUserAdmin()) { } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(object.getCode())) { queryWrapper.like(TBArchivesRoadSection::getCode, object.getCode()); } if (StringUtils.isNotBlank(object.getName())) { queryWrapper.like(TBArchivesRoadSection::getName, object.getName()); } queryWrapper.orderByAsc(TBArchivesRoadSection::getId); IPage page = roadSectionService.page( new Page<>(dataGrid.getPage(), dataGrid.getRows()), queryWrapper); TagUtil.datagrid(response, dataGrid, page); } // /** // * 删除车辆作业计划 // * // * @return // */ // @RequestMapping(params = "doDel") // @ResponseBody // public AjaxJson doDel(CarScheduleEntity carSchedule, HttpServletRequest request) { // String message = null; // AjaxJson j = new AjaxJson(); // carSchedule = systemService.getEntity(CarScheduleEntity.class, carSchedule.getId()); // message = "车辆作业计划删除成功"; // try{ // systemService.executeSql("delete from t_b_car_schedule_route where scheduleid = ?", carSchedule.getId()); // carScheduleService.delete(carSchedule); // systemService.addLog(message, Globals.Log_Type_DEL, Globals.Log_Leavel_INFO); // }catch(Exception e){ // e.printStackTrace(); // message = "车辆作业计划删除失败"; // throw new BusinessException(e.getMessage()); // } // j.setMsg(message); // return j; // } // // /** // * 批量删除车辆作业计划 // * // * @return // */ // @RequestMapping(params = "doBatchDel") // @ResponseBody // public AjaxJson doBatchDel(String ids,HttpServletRequest request){ // String message = null; // AjaxJson j = new AjaxJson(); // message = "车辆作业计划删除成功"; // try{ // for(String id:ids.split(",")){ // CarScheduleEntity carSchedule = systemService.getEntity(CarScheduleEntity.class, // id // ); // carScheduleService.delete(carSchedule); // systemService.addLog(message, Globals.Log_Type_DEL, Globals.Log_Leavel_INFO); // } // }catch(Exception e){ // e.printStackTrace(); // message = "车辆作业计划删除失败"; // throw new BusinessException(e.getMessage()); // } // j.setMsg(message); // return j; // } // // // /** // * 添加车辆作业计划 // * // * @param ids // * @return // */ // @RequestMapping(params = "doAdd") // @ResponseBody // public AjaxJson doAdd(CarScheduleEntity carSchedule, HttpServletRequest request) { // String message = null; // AjaxJson j = new AjaxJson(); // message = "车辆作业计划添加成功"; // if(hasCarSchedule(carSchedule)) { // message = "车辆作业计划添加失败,已经存在同一时间段的作业计划,请检查修改后在保存"; // j.setMsg(message); // j.setSuccess(false); // return j; // } // try{ // carSchedule.setCarname(systemService.get(CarEntity.class,carSchedule.getCarid()).getName()); // carScheduleService.save(carSchedule); // systemService.addLog(message, Globals.Log_Type_INSERT, Globals.Log_Leavel_INFO); // }catch(Exception e){ // e.printStackTrace(); // message = "车辆作业计划添加失败"; // throw new BusinessException(e.getMessage()); // } // j.setMsg(message); // return j; // } // // private boolean hasCarSchedule(CarScheduleEntity carSchedule) { // boolean hasSchedule = false; // String sql = "select id From t_b_Car_Schedule sche where carid = ? and ( (sche.start > ? and sche.start < ?) or ( sche.end > ? and sche.end < ?) )"; // List> scheList = systemService.findForJdbc(sql, carSchedule.getCarid(), // carSchedule.getStart(),carSchedule.getEnd(), // carSchedule.getStart(),carSchedule.getEnd()); // if(scheList.size() > 0) // hasSchedule = true; // return hasSchedule; // } // // /** // * 更新车辆作业计划 // * // * @param ids // * @return // */ // @RequestMapping(params = "doUpdate") // @ResponseBody // public AjaxJson doUpdate(CarScheduleEntity carSchedule, HttpServletRequest request) { // String message = null; // AjaxJson j = new AjaxJson(); // message = "车辆作业计划更新成功"; // CarScheduleEntity t = carScheduleService.get(CarScheduleEntity.class, carSchedule.getId()); // try { // MyBeanUtils.copyBeanNotNull2Bean(carSchedule, t); // CarEntity carEntity = systemService.get(CarEntity.class, carSchedule.getCarid()); // t.setUserId(carEntity.getDriverid()); // t.setCarname(carEntity.getName()); // carScheduleService.saveOrUpdate(t); // systemService.addLog(message, Globals.Log_Type_UPDATE, Globals.Log_Leavel_INFO); // } catch (Exception e) { // e.printStackTrace(); // message = "车辆作业计划更新失败"; // throw new BusinessException(e.getMessage()); // } // j.setMsg(message); // return j; // } // /** // * 复制车辆作业计划 // * // * @param ids // * @return // */ // @RequestMapping(params = "doClone") // @ResponseBody // public AjaxJson doClone(String scheduleid, HttpServletRequest request) { // String message = null; // AjaxJson j = new AjaxJson(); // message = "车辆作业计划复制成功"; // CarScheduleEntity t = carScheduleService.get(CarScheduleEntity.class, scheduleid); // List details = carScheduleService.findByProperty(CarScheduleRouteEntity.class, "scheduleid", scheduleid); // try { // CarScheduleEntity carSchedule = new CarScheduleEntity(); // MyBeanUtils.copyBean2Bean(carSchedule, t); // carSchedule.setId(null); // carScheduleService.save(carSchedule); // for(CarScheduleRouteEntity detail : details) { // CarScheduleRouteEntity newDetail = new CarScheduleRouteEntity(); // MyBeanUtils.copyBean2Bean(newDetail, detail); // newDetail.setScheduleid(carSchedule.getId()); // newDetail.setId(null); // systemService.save(newDetail); // } // systemService.addLog(message, Globals.Log_Type_UPDATE, Globals.Log_Leavel_INFO); // } catch (Exception e) { // e.printStackTrace(); // message = "车辆作业计划复制失败"; // throw new BusinessException(e.getMessage()); // } // j.setMsg(message); // return j; // } // // /** // * 车辆作业计划新增页面跳转 // * // * @return // */ // @RequestMapping(params = "goAdd") // public ModelAndView goAdd(CarScheduleEntity carSchedule, HttpServletRequest req) { // if (StringUtil.isNotEmpty(carSchedule.getId())) { // carSchedule = carScheduleService.getEntity(CarScheduleEntity.class, carSchedule.getId()); // req.setAttribute("carSchedulePage", carSchedule); // } // return new ModelAndView("cn/com/lzt/car/road/carSchedule-add"); // } // // /** // * 车辆作业计划编辑页面跳转 // * // * @return // */ // @RequestMapping(params = "goUpdate") // public ModelAndView goUpdate(CarScheduleEntity carSchedule, HttpServletRequest req) { // if (StringUtil.isNotEmpty(carSchedule.getId())) { // carSchedule = carScheduleService.getEntity(CarScheduleEntity.class, carSchedule.getId()); // req.setAttribute("carSchedulePage", carSchedule); // } // return new ModelAndView("cn/com/lzt/car/road/carSchedule-update"); // } // // /** // * 导入功能跳转 // * // * @return // */ // @RequestMapping(params = "upload") // public ModelAndView upload(HttpServletRequest req) { // req.setAttribute("controller_name","carScheduleController"); // return new ModelAndView("common/upload/pub_excel_upload"); // } // /** // * 导出excel // * // * @param request // * @param response // */ // @RequestMapping(params = "exportXls") // public String exportXls(CarScheduleEntity carSchedule,HttpServletRequest request,HttpServletResponse response // , DataGrid dataGrid,ModelMap modelMap) { // CriteriaQuery cq = new CriteriaQuery(CarScheduleEntity.class, dataGrid); // org.jeecgframework.core.extend.hqlsearch.HqlGenerateUtil.installHql(cq, carSchedule, request.getParameterMap()); // List carSchedules = this.carScheduleService.getListByCriteriaQuery(cq,false); // modelMap.put(NormalExcelConstants.FILE_NAME,"车辆作业计划"); // modelMap.put(NormalExcelConstants.CLASS,CarScheduleEntity.class); // modelMap.put(NormalExcelConstants.PARAMS,new ExportParams("车辆作业计划列表", "导出人:"+ResourceUtil.getSessionUser().getRealName(), // "导出信息")); // modelMap.put(NormalExcelConstants.DATA_LIST,carSchedules); // return NormalExcelConstants.JEECG_EXCEL_VIEW; // } // /** // * 导出excel 使模板 // * // * @param request // * @param response // */ // @RequestMapping(params = "exportXlsByT") // public String exportXlsByT(CarScheduleEntity carSchedule,HttpServletRequest request,HttpServletResponse response // , DataGrid dataGrid,ModelMap modelMap) { // modelMap.put(NormalExcelConstants.FILE_NAME,"车辆作业计划"); // modelMap.put(NormalExcelConstants.CLASS,CarScheduleEntity.class); // modelMap.put(NormalExcelConstants.PARAMS,new ExportParams("车辆作业计划列表", "导出人:"+ResourceUtil.getSessionUser().getRealName(), // "导出信息")); // modelMap.put(NormalExcelConstants.DATA_LIST,new ArrayList()); // return NormalExcelConstants.JEECG_EXCEL_VIEW; // } // // @SuppressWarnings("unchecked") // @RequestMapping(params = "importExcel", method = RequestMethod.POST) // @ResponseBody // public AjaxJson importExcel(HttpServletRequest request, HttpServletResponse response) { // AjaxJson j = new AjaxJson(); // // MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; // Map fileMap = multipartRequest.getFileMap(); // for (Map.Entry entity : fileMap.entrySet()) { // MultipartFile file = entity.getValue();// 获取上传文件对象 // ImportParams params = new ImportParams(); // params.setTitleRows(2); // params.setHeadRows(1); // params.setNeedSave(true); // try { // List listCarScheduleEntitys = ExcelImportUtil.importExcel(file.getInputStream(),CarScheduleEntity.class,params); // for (CarScheduleEntity carSchedule : listCarScheduleEntitys) { // carScheduleService.save(carSchedule); // } // j.setMsg("文件导入成功!"); // } catch (Exception e) { // j.setMsg("文件导入失败!"); // logger.error(ExceptionUtil.getExceptionMessage(e)); // }finally{ // try { // file.getInputStream().close(); // } catch (IOException e) { // e.printStackTrace(); // } // } // } // return j; // } // // @RequestMapping(method = RequestMethod.GET) // @ResponseBody // public List list() { // List listCarSchedules=carScheduleService.getList(CarScheduleEntity.class); // return listCarSchedules; // } // // @RequestMapping(value = "/{id}", method = RequestMethod.GET) // @ResponseBody // public ResponseEntity get(@PathVariable("id") String id) { // CarScheduleEntity task = carScheduleService.get(CarScheduleEntity.class, id); // if (task == null) { // return new ResponseEntity(HttpStatus.NOT_FOUND); // } // return new ResponseEntity(task, HttpStatus.OK); // } // // @RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE) // @ResponseBody // public ResponseEntity create(@RequestBody CarScheduleEntity carSchedule, UriComponentsBuilder uriBuilder) { // //调用JSR303 Bean Validator进行校验,如果出错返回含400错误码及json格式的错误信息. // Set> failures = validator.validate(carSchedule); // if (!failures.isEmpty()) { // return new ResponseEntity(BeanValidators.extractPropertyAndMessage(failures), HttpStatus.BAD_REQUEST); // } // // //保存 // try{ // carScheduleService.save(carSchedule); // } catch (Exception e) { // e.printStackTrace(); // return new ResponseEntity(HttpStatus.NO_CONTENT); // } // //按照Restful风格约定,创建指向新任务的url, 也可以直接返回id或对象. // String id = carSchedule.getId(); // URI uri = uriBuilder.path("/rest/carScheduleController/" + id).build().toUri(); // HttpHeaders headers = new HttpHeaders(); // headers.setLocation(uri); // // return new ResponseEntity(headers, HttpStatus.CREATED); // } // // @RequestMapping(value = "/{id}", method = RequestMethod.PUT, consumes = MediaType.APPLICATION_JSON_VALUE) // public ResponseEntity update(@RequestBody CarScheduleEntity carSchedule) { // //调用JSR303 Bean Validator进行校验,如果出错返回含400错误码及json格式的错误信息. // Set> failures = validator.validate(carSchedule); // if (!failures.isEmpty()) { // return new ResponseEntity(BeanValidators.extractPropertyAndMessage(failures), HttpStatus.BAD_REQUEST); // } // // //保存 // try{ // carScheduleService.saveOrUpdate(carSchedule); // } catch (Exception e) { // e.printStackTrace(); // return new ResponseEntity(HttpStatus.NO_CONTENT); // } // // //按Restful约定,返回204状态码, 无内容. 也可以返回200状态码. // return new ResponseEntity(HttpStatus.NO_CONTENT); // } // // @RequestMapping(value = "/{id}", method = RequestMethod.DELETE) // @ResponseStatus(HttpStatus.NO_CONTENT) // public void delete(@PathVariable("id") String id) { // carScheduleService.deleteEntityById(CarScheduleEntity.class, id); // } }