AdminRiderLevelController.java
2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.diligrp.rider.controller;
import com.diligrp.rider.common.exception.BizException;
import com.diligrp.rider.common.result.Result;
import com.diligrp.rider.dto.AdminRiderLevelSaveDTO;
import com.diligrp.rider.entity.RiderLevel;
import com.diligrp.rider.service.AdminRiderLevelService;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/api/admin/rider/level")
@RequiredArgsConstructor
public class AdminRiderLevelController {
private final AdminRiderLevelService adminRiderLevelService;
@GetMapping("/list")
public Result<List<RiderLevel>> list(@RequestParam(required = false) Long cityId, HttpServletRequest request) {
return Result.success(adminRiderLevelService.list(resolveCityId(cityId, request)));
}
@PostMapping("/add")
public Result<Void> add(@Valid @RequestBody AdminRiderLevelSaveDTO dto, HttpServletRequest request) {
adminRiderLevelService.add(dto, resolveCityId(dto.getCityId(), request));
return Result.success();
}
@PutMapping("/edit")
public Result<Void> edit(@Valid @RequestBody AdminRiderLevelSaveDTO dto, HttpServletRequest request) {
adminRiderLevelService.edit(dto, resolveCityId(dto.getCityId(), request));
return Result.success();
}
@PostMapping("/setDefault")
public Result<Void> setDefault(@RequestParam Long id,
@RequestParam(required = false) Long cityId,
HttpServletRequest request) {
adminRiderLevelService.setDefault(id, resolveCityId(cityId, request));
return Result.success();
}
@DeleteMapping("/del")
public Result<Void> delete(@RequestParam Long id,
@RequestParam(required = false) Long cityId,
HttpServletRequest request) {
adminRiderLevelService.delete(id, resolveCityId(cityId, request));
return Result.success();
}
private Long resolveCityId(Long cityId, HttpServletRequest request) {
if ("substation".equals(request.getAttribute("role"))) {
Long requestCityId = (Long) request.getAttribute("cityId");
if (requestCityId == null || requestCityId < 1) {
throw new BizException("当前账号未绑定城市");
}
return requestCityId;
}
if (cityId == null || cityId < 1) {
throw new BizException("城市不能为空");
}
return cityId;
}
}