| | |
| | | PageParam<Bus, BaseParam> pageParam = new PageParam<>(baseParam, Bus.class); |
| | | QueryWrapper<Bus> wrapper = pageParam.buildWrapper(true); |
| | | if (hasCreateTimeDesc(pageParam.getOrders())) { |
| | | wrapper.last(businessSortService.getOrderBySql(BusStsType.class, "bus_sts")); |
| | | // wrapper.last(businessSortService.getOrderBySql(BusStsType.class, "bus_sts")); |
| | | } |
| | | PageParam<Bus, BaseParam> page = busService.page(pageParam, wrapper); |
| | | |
| | | long taskCompleteSts = TaskStsType.COMPLETE.val(); |
| | | long taskCancelSts = TaskStsType.CANCEL.val(); |
| | | for (Bus record : page.getRecords()) { |
| | | List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getBusId, record.getId())); |
| | | if (!Cools.isEmpty(tasks)) { |
| | | record.setTaskIds(tasks.stream().map(Task::getId).collect(Collectors.toList())); |
| | | record.setTasksNum(tasks.size()); |
| | | record.setTasksNum((int)tasks.stream().filter(task -> task.getTaskSts() != taskCompleteSts && task.getTaskSts() != taskCancelSts).count()); |
| | | record.setTasksNumTotal(tasks.size()); |
| | | } |
| | | } |
| | | return R.ok().add(page); |
| | |
| | | taskService.cancel(task.getId(), getLoginUserId()); |
| | | } |
| | | } |
| | | bus.setBusSts(BusStsType.CANCEL.val()); |
| | | if (0 == taskService.count(new LambdaQueryWrapper<Task>().eq(Task::getBusId, bus.getId()).eq(Task::getTaskSts, TaskStsType.COMPLETE.val()))) { |
| | | bus.setBusSts(BusStsType.CANCEL.val()); |
| | | } else { |
| | | bus.setBusSts(BusStsType.FINISH.val()); |
| | | } |
| | | bus.setUpdateTime(new Date()); |
| | | bus.setUpdateBy(getLoginUserId()); |
| | | if (!busService.updateById(bus)) { |
| | | return R.error("Cancel Fail"); |
| | | } |
| | | |
| | | return R.ok("Cancel Success"); |
| | | } |
| | | |