作者 王勇

添加批量删除功能

@@ -99,6 +99,7 @@ public class DispatchNoteController { @@ -99,6 +99,7 @@ public class DispatchNoteController {
99 String status2 = "2"; 99 String status2 = "2";
100 String status4 = "4"; 100 String status4 = "4";
101 if (status2.equals(dispatchNote.getStatus()) || status4.equals(dispatchNote.getStatus())) { 101 if (status2.equals(dispatchNote.getStatus()) || status4.equals(dispatchNote.getStatus())) {
  102 + //获取车牌号
102 String licensePlateNumber = dispatchNote.getLicensePlateNumber(); 103 String licensePlateNumber = dispatchNote.getLicensePlateNumber();
103 //根据车牌号查询到车辆信息 104 //根据车牌号查询到车辆信息
104 VehicleInfo vehicleInfo = vehicleInfoService.selectByLPN(licensePlateNumber); 105 VehicleInfo vehicleInfo = vehicleInfoService.selectByLPN(licensePlateNumber);
@@ -120,6 +121,84 @@ public class DispatchNoteController { @@ -120,6 +121,84 @@ public class DispatchNoteController {
120 return result; 121 return result;
121 } 122 }
122 123
  124 + @ApiOperation("批量删除调度记录")
  125 + @GetMapping("/batchRemove")
  126 + public ResultJson batchRemoveDispatchNote(String ids) {
  127 + /**
  128 + * 设置一个判断数值,记录删除的个数
  129 + * 判断该个数与前端传递来的个数是否一致
  130 + */
  131 + int index = 0;
  132 + ResultJson<DispatchNote> result = new ResultJson<>();
  133 + //首先判断,传递过来的是多个id还是单个id
  134 + if (ids.contains(",")) {
  135 + //现将ids根据','进行分割,获取到所有的id的数组
  136 + String[] split = ids.split(",");
  137 + for (int i = 0; i < split.length; i++) {
  138 + //1.首先根据id值,查找出该条记录信息
  139 + DispatchNote dispatchNote = dispatchNoteService.selectByPrimaryKey(split[i]);
  140 + /**
  141 + * 2.1、如果是该调度记录的状态为执行状态("2"),或者是待执行状态("4"),
  142 + * 代表着车辆,也是执行状态。需要现将车辆的信息修改。
  143 + * 车辆状态=>空闲状态
  144 + * 开始空闲时间=>new Date();
  145 + *
  146 + * 2.2、然后删除该调度记录
  147 + */
  148 + String status2 = "2";
  149 + String status4 = "4";
  150 + if (status2.equals(dispatchNote.getStatus()) || status4.equals(dispatchNote.getStatus())) {
  151 + String licensePlateNumber = dispatchNote.getLicensePlateNumber();
  152 + //根据车牌号查询到车辆信息
  153 + VehicleInfo vehicleInfo = vehicleInfoService.selectByLPN(licensePlateNumber);
  154 + //设置车辆信息表,为空闲状态(1)
  155 + vehicleInfo.setVehicleStatus("1");
  156 + //设置车辆信息,开始空闲时间
  157 + vehicleInfo.setFreetime(new Date());
  158 + //根据主键,选择性修改
  159 + vehicleInfoService.updateByPrimaryKeySelective(vehicleInfo);
  160 + //删除该调度记录
  161 + int num = dispatchNoteService.deleteByPrimaryKey(split[i]);
  162 + if (num > 0) {
  163 + index = index + num;
  164 + }
  165 +
  166 + } else {
  167 + /**
  168 + * 3、如果调度记录的状态不是执行状态("2")和待执行状态("4"),
  169 + * 即,空闲状态("1")或者是取消状态("3")
  170 + * 即,车辆的状态为空闲状态,也设置了开始空闲时间
  171 + * 即,直接删除该记录即可
  172 + */
  173 + int num = dispatchNoteService.deleteByPrimaryKey(split[i]);
  174 + if (num > 0) {
  175 + index = index + num;
  176 + }
  177 + }
  178 + }
  179 + //删除的个数等于分割后数组的长度
  180 + if (index == split.length) {
  181 + result.setCode("200");
  182 + result.setMsg("批量删除调度记录信息,成功");
  183 + } else {
  184 + result.setCode("400");
  185 + result.setMsg("批量删除调度记录信息,成功");
  186 + }
  187 + } else {
  188 + //首先判断,传递过来的id值中,没有包含"," ,即是单个id
  189 + int num = dispatchNoteService.deleteByPrimaryKey(ids);
  190 + if (num > 0) {
  191 + result.setCode("200");
  192 + result.setMsg("删除调度记录信息,成功");
  193 + } else {
  194 + result.setCode("400");
  195 + result.setMsg("删除调度记录信息,失败");
  196 + }
  197 + }
  198 + return result;
  199 + }
  200 +
  201 +
123 @ApiOperation("编辑调度记录信息") 202 @ApiOperation("编辑调度记录信息")
124 @PutMapping("/updateDispatchNote") 203 @PutMapping("/updateDispatchNote")
125 public ResultJson<DispatchNote> updateDispatchNote(@RequestBody DispatchNote dispatchNote) { 204 public ResultJson<DispatchNote> updateDispatchNote(@RequestBody DispatchNote dispatchNote) {
@@ -80,6 +80,22 @@ public class DriverInfoController { @@ -80,6 +80,22 @@ public class DriverInfoController {
80 return result; 80 return result;
81 } 81 }
82 82
  83 + @ApiOperation("批量删除驾驶员信息")
  84 + @GetMapping("/batchRemove")
  85 + public ResultJson batchRemoveDriverInfo(String ids) {
  86 + ResultJson result = new ResultJson();
  87 + int num = driverInfoService.deleteByPrimaryKey(ids);
  88 + if (num > 0) {
  89 + result.setCode("200");
  90 + result.setMsg("批量删除驾驶员信息,成功");
  91 + } else {
  92 + result.setCode("400");
  93 + result.setMsg("批量删除驾驶员信息,失败");
  94 + }
  95 + return result;
  96 + }
  97 +
  98 +
83 @ApiOperation("编辑驾驶员信息") 99 @ApiOperation("编辑驾驶员信息")
84 @PutMapping("/updateDriverInfo") 100 @PutMapping("/updateDriverInfo")
85 public ResultJson updateDriverInfo(@RequestBody DriverInfo driverInfo) { 101 public ResultJson updateDriverInfo(@RequestBody DriverInfo driverInfo) {
@@ -106,9 +106,7 @@ public class VehicleInfoController { @@ -106,9 +106,7 @@ public class VehicleInfoController {
106 return result; 106 return result;
107 } 107 }
108 108
109 - /**  
110 - * 删除  
111 - */ 109 +
112 @ApiOperation("删除车辆信息") 110 @ApiOperation("删除车辆信息")
113 @DeleteMapping("/deleteVehicleInfo") 111 @DeleteMapping("/deleteVehicleInfo")
114 public ResultJson deleteVehicleInfo(@RequestBody VehicleInfo vehicleInfo) { 112 public ResultJson deleteVehicleInfo(@RequestBody VehicleInfo vehicleInfo) {
@@ -123,4 +121,19 @@ public class VehicleInfoController { @@ -123,4 +121,19 @@ public class VehicleInfoController {
123 } 121 }
124 return result; 122 return result;
125 } 123 }
  124 +
  125 + @ApiOperation("批量删除车辆信息")
  126 + @GetMapping("/batchRemove")
  127 + public ResultJson batchRemoveVehicleInfo(String ids) {
  128 + ResultJson result = new ResultJson<>();
  129 + int num = vehicleInfoService.deleteByPrimaryKey(ids);
  130 + if (num > 0) {
  131 + result.setCode("200");
  132 + result.setMsg("删除车辆信息,成功");
  133 + } else {
  134 + result.setCode("400");
  135 + result.setMsg("删除车辆信息,失败");
  136 + }
  137 + return result;
  138 + }
126 } 139 }
@@ -38,7 +38,22 @@ public class DriverInfoServiceImpl implements DriverInfoService { @@ -38,7 +38,22 @@ public class DriverInfoServiceImpl implements DriverInfoService {
38 38
39 @Override 39 @Override
40 public int deleteByPrimaryKey(String id) { 40 public int deleteByPrimaryKey(String id) {
41 - return driverInfoMapper.deleteByPrimaryKey(id); 41 + //如果id,传过来多个,即批量删除
  42 + if (id.contains(",")) {
  43 + try {
  44 + String[] split = id.split(",");
  45 + for (int i = 0; i < split.length; i++) {
  46 + driverInfoMapper.deleteByPrimaryKey(split[i]);
  47 + }
  48 + return 1;
  49 + } catch (Exception e) {
  50 + e.printStackTrace();
  51 + return 0;
  52 + }
  53 + } else {
  54 + //如果id只有一个
  55 + return driverInfoMapper.deleteByPrimaryKey(id);
  56 + }
42 } 57 }
43 58
44 @Override 59 @Override
@@ -62,7 +62,21 @@ public class VehicleInfoServiceImpl implements VehicleInfoService { @@ -62,7 +62,21 @@ public class VehicleInfoServiceImpl implements VehicleInfoService {
62 62
63 @Override 63 @Override
64 public int deleteByPrimaryKey(String id) { 64 public int deleteByPrimaryKey(String id) {
65 - return vehicleInfoMapper.deleteByPrimaryKey(id); 65 + //如果id,传过来多个,以','分割,即批量删除
  66 + if (id.contains(",")) {
  67 + try {
  68 + String[] split = id.split(",");
  69 + for (int i = 0; i < split.length; i++) {
  70 + vehicleInfoMapper.deleteByPrimaryKey(split[i]);
  71 + }
  72 + return 1;
  73 + } catch (Exception e) {
  74 + e.printStackTrace();
  75 + return 0;
  76 + }
  77 + } else {
  78 + return vehicleInfoMapper.deleteByPrimaryKey(id);
  79 + }
66 } 80 }
67 81
68 @Override 82 @Override