//起售 @PutMapping("/saleOn") public Result<String> saleOn(@RequestParam("id") Long[] ids) { for (int i = 0; i < ids.length; i++) { Dish dish = dishService.getById(ids[i]); dish.setStatus(1); dishService.updateById(dish); } return Result.success(ids.length + "道菜品修改为起售"); } //停售 @PutMapping("/saleOff") public Result<String> saleOff(@RequestParam("id") Long[] ids) { for (int i = 0; i < ids.length; i++) { Dish dish = dishService.getById(ids[i]); dish.setStatus(0); dishService.updateById(dish); } return Result.success(ids.length + "道菜品修改为停售"); }这两个接口写成一个接口怎么写
时间: 2024-04-10 16:33:05 浏览: 96
基于WoodandBerry1和非耦合控制WoodandBerry2来实现控制木材和浆果蒸馏柱控制Simulink仿真.rar
如果你想将"起售"和"停售"两个接口合并成一个接口,可以考虑使用一个`status`参数来区分是起售还是停售操作。以下是一个示例:
```java
@PutMapping("/sale")
public Result<String> sale(@RequestParam("id") Long[] ids, @RequestParam("status") int status) {
for (Long id : ids) {
Dish dish = dishService.getById(id);
dish.setStatus(status);
dishService.updateById(dish);
}
String message = status == 1 ? "起售" : "停售";
return Result.success(ids.length + "道菜品修改为" + message);
}
```
在这个示例中,我们将原来的两个接口合并成了一个名为"sale"的接口。通过传入的`status`参数来确定是进行起售还是停售操作。如果`status`为1,则表示起售;如果`status`为0,则表示停售。
请注意,在这个示例中,我们使用了增强的for循环来遍历`ids`数组,而不是使用传统的for循环。这样可以使代码更简洁和易读。
当调用这个接口时,你需要传入`ids`和`status`参数。例如,对于起售操作,可以发送如下请求:
```
PUT /sale?id=1&id=2&id=3&status=1
```
这样就可以同时对id为1、2和3的菜品进行起售操作。
希望这个示例能帮助到你,如果有任何问题,请随时提问。
阅读全文