diff --git a/src/main/java/com/sunyo/wlpt/dispatch/controller/DispatchNoteController.java b/src/main/java/com/sunyo/wlpt/dispatch/controller/DispatchNoteController.java index b8840e3..9c081d8 100644 --- a/src/main/java/com/sunyo/wlpt/dispatch/controller/DispatchNoteController.java +++ b/src/main/java/com/sunyo/wlpt/dispatch/controller/DispatchNoteController.java @@ -99,6 +99,7 @@ public class DispatchNoteController { String status2 = "2"; String status4 = "4"; if (status2.equals(dispatchNote.getStatus()) || status4.equals(dispatchNote.getStatus())) { + //获取车牌号 String licensePlateNumber = dispatchNote.getLicensePlateNumber(); //根据车牌号查询到车辆信息 VehicleInfo vehicleInfo = vehicleInfoService.selectByLPN(licensePlateNumber); @@ -120,6 +121,84 @@ public class DispatchNoteController { return result; } + @ApiOperation("批量删除调度记录") + @GetMapping("/batchRemove") + public ResultJson batchRemoveDispatchNote(String ids) { + /** + * 设置一个判断数值,记录删除的个数 + * 判断该个数与前端传递来的个数是否一致 + */ + int index = 0; + ResultJson<DispatchNote> result = new ResultJson<>(); + //首先判断,传递过来的是多个id还是单个id + if (ids.contains(",")) { + //现将ids根据','进行分割,获取到所有的id的数组 + String[] split = ids.split(","); + for (int i = 0; i < split.length; i++) { + //1.首先根据id值,查找出该条记录信息 + DispatchNote dispatchNote = dispatchNoteService.selectByPrimaryKey(split[i]); + /** + * 2.1、如果是该调度记录的状态为执行状态("2"),或者是待执行状态("4"), + * 代表着车辆,也是执行状态。需要现将车辆的信息修改。 + * 车辆状态=>空闲状态 + * 开始空闲时间=>new Date(); + * + * 2.2、然后删除该调度记录 + */ + String status2 = "2"; + String status4 = "4"; + if (status2.equals(dispatchNote.getStatus()) || status4.equals(dispatchNote.getStatus())) { + String licensePlateNumber = dispatchNote.getLicensePlateNumber(); + //根据车牌号查询到车辆信息 + VehicleInfo vehicleInfo = vehicleInfoService.selectByLPN(licensePlateNumber); + //设置车辆信息表,为空闲状态(1) + vehicleInfo.setVehicleStatus("1"); + //设置车辆信息,开始空闲时间 + vehicleInfo.setFreetime(new Date()); + //根据主键,选择性修改 + vehicleInfoService.updateByPrimaryKeySelective(vehicleInfo); + //删除该调度记录 + int num = dispatchNoteService.deleteByPrimaryKey(split[i]); + if (num > 0) { + index = index + num; + } + + } else { + /** + * 3、如果调度记录的状态不是执行状态("2")和待执行状态("4"), + * 即,空闲状态("1")或者是取消状态("3") + * 即,车辆的状态为空闲状态,也设置了开始空闲时间 + * 即,直接删除该记录即可 + */ + int num = dispatchNoteService.deleteByPrimaryKey(split[i]); + if (num > 0) { + index = index + num; + } + } + } + //删除的个数等于分割后数组的长度 + if (index == split.length) { + result.setCode("200"); + result.setMsg("批量删除调度记录信息,成功"); + } else { + result.setCode("400"); + result.setMsg("批量删除调度记录信息,成功"); + } + } else { + //首先判断,传递过来的id值中,没有包含"," ,即是单个id + int num = dispatchNoteService.deleteByPrimaryKey(ids); + if (num > 0) { + result.setCode("200"); + result.setMsg("删除调度记录信息,成功"); + } else { + result.setCode("400"); + result.setMsg("删除调度记录信息,失败"); + } + } + return result; + } + + @ApiOperation("编辑调度记录信息") @PutMapping("/updateDispatchNote") public ResultJson<DispatchNote> updateDispatchNote(@RequestBody DispatchNote dispatchNote) { diff --git a/src/main/java/com/sunyo/wlpt/dispatch/controller/DriverInfoController.java b/src/main/java/com/sunyo/wlpt/dispatch/controller/DriverInfoController.java index a1b2508..8235068 100644 --- a/src/main/java/com/sunyo/wlpt/dispatch/controller/DriverInfoController.java +++ b/src/main/java/com/sunyo/wlpt/dispatch/controller/DriverInfoController.java @@ -80,6 +80,22 @@ public class DriverInfoController { return result; } + @ApiOperation("批量删除驾驶员信息") + @GetMapping("/batchRemove") + public ResultJson batchRemoveDriverInfo(String ids) { + ResultJson result = new ResultJson(); + int num = driverInfoService.deleteByPrimaryKey(ids); + if (num > 0) { + result.setCode("200"); + result.setMsg("批量删除驾驶员信息,成功"); + } else { + result.setCode("400"); + result.setMsg("批量删除驾驶员信息,失败"); + } + return result; + } + + @ApiOperation("编辑驾驶员信息") @PutMapping("/updateDriverInfo") public ResultJson updateDriverInfo(@RequestBody DriverInfo driverInfo) { diff --git a/src/main/java/com/sunyo/wlpt/dispatch/controller/VehicleInfoController.java b/src/main/java/com/sunyo/wlpt/dispatch/controller/VehicleInfoController.java index b50d2c7..a9018d7 100644 --- a/src/main/java/com/sunyo/wlpt/dispatch/controller/VehicleInfoController.java +++ b/src/main/java/com/sunyo/wlpt/dispatch/controller/VehicleInfoController.java @@ -106,9 +106,7 @@ public class VehicleInfoController { return result; } - /** - * 删除 - */ + @ApiOperation("删除车辆信息") @DeleteMapping("/deleteVehicleInfo") public ResultJson deleteVehicleInfo(@RequestBody VehicleInfo vehicleInfo) { @@ -123,4 +121,19 @@ public class VehicleInfoController { } return result; } + + @ApiOperation("批量删除车辆信息") + @GetMapping("/batchRemove") + public ResultJson batchRemoveVehicleInfo(String ids) { + ResultJson result = new ResultJson<>(); + int num = vehicleInfoService.deleteByPrimaryKey(ids); + if (num > 0) { + result.setCode("200"); + result.setMsg("删除车辆信息,成功"); + } else { + result.setCode("400"); + result.setMsg("删除车辆信息,失败"); + } + return result; + } } diff --git a/src/main/java/com/sunyo/wlpt/dispatch/service/impl/DriverInfoServiceImpl.java b/src/main/java/com/sunyo/wlpt/dispatch/service/impl/DriverInfoServiceImpl.java index 943df47..af59b73 100644 --- a/src/main/java/com/sunyo/wlpt/dispatch/service/impl/DriverInfoServiceImpl.java +++ b/src/main/java/com/sunyo/wlpt/dispatch/service/impl/DriverInfoServiceImpl.java @@ -38,7 +38,22 @@ public class DriverInfoServiceImpl implements DriverInfoService { @Override public int deleteByPrimaryKey(String id) { - return driverInfoMapper.deleteByPrimaryKey(id); + //如果id,传过来多个,即批量删除 + if (id.contains(",")) { + try { + String[] split = id.split(","); + for (int i = 0; i < split.length; i++) { + driverInfoMapper.deleteByPrimaryKey(split[i]); + } + return 1; + } catch (Exception e) { + e.printStackTrace(); + return 0; + } + } else { + //如果id只有一个 + return driverInfoMapper.deleteByPrimaryKey(id); + } } @Override diff --git a/src/main/java/com/sunyo/wlpt/dispatch/service/impl/VehicleInfoServiceImpl.java b/src/main/java/com/sunyo/wlpt/dispatch/service/impl/VehicleInfoServiceImpl.java index 652ca31..90ae785 100644 --- a/src/main/java/com/sunyo/wlpt/dispatch/service/impl/VehicleInfoServiceImpl.java +++ b/src/main/java/com/sunyo/wlpt/dispatch/service/impl/VehicleInfoServiceImpl.java @@ -62,7 +62,21 @@ public class VehicleInfoServiceImpl implements VehicleInfoService { @Override public int deleteByPrimaryKey(String id) { - return vehicleInfoMapper.deleteByPrimaryKey(id); + //如果id,传过来多个,以','分割,即批量删除 + if (id.contains(",")) { + try { + String[] split = id.split(","); + for (int i = 0; i < split.length; i++) { + vehicleInfoMapper.deleteByPrimaryKey(split[i]); + } + return 1; + } catch (Exception e) { + e.printStackTrace(); + return 0; + } + } else { + return vehicleInfoMapper.deleteByPrimaryKey(id); + } } @Override