StationTimePriceController.java 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package com.zsElectric.boot.app.controller;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.zsElectric.boot.app.model.form.StationTimePriceForm;
  4. import com.zsElectric.boot.app.model.query.StationTimePricePageQuery;
  5. import com.zsElectric.boot.app.model.vo.StationTimePricePageVO;
  6. import com.zsElectric.boot.app.service.StationTimePriceService;
  7. import com.zsElectric.boot.common.annotation.Log;
  8. import com.zsElectric.boot.common.enums.LogModuleEnum;
  9. import com.zsElectric.boot.core.web.PageResult;
  10. import com.zsElectric.boot.core.web.Result;
  11. import io.swagger.v3.oas.annotations.Operation;
  12. import io.swagger.v3.oas.annotations.Parameter;
  13. import io.swagger.v3.oas.annotations.tags.Tag;
  14. import lombok.RequiredArgsConstructor;
  15. import org.springframework.security.access.prepost.PreAuthorize;
  16. import org.springframework.web.bind.annotation.*;
  17. /**
  18. * 充电站时间段单价接口
  19. */
  20. @Tag(name = "充电站时间段单价接口")
  21. @RestController
  22. @RequestMapping("/api/v1/app/station-time-price")
  23. @RequiredArgsConstructor
  24. public class StationTimePriceController {
  25. private final StationTimePriceService stationTimePriceService;
  26. @Operation(summary = "充电站时间段单价分页列表")
  27. @GetMapping("/page")
  28. @Log(value = "充电站时间段单价分页列表", module = LogModuleEnum.OTHER)
  29. public PageResult<StationTimePricePageVO> listPagedStationTimePrices(StationTimePricePageQuery queryParams) {
  30. IPage<StationTimePricePageVO> result = stationTimePriceService.listPagedStationTimePrices(queryParams);
  31. return PageResult.success(result);
  32. }
  33. @Operation(summary = "充电站时间段单价详情")
  34. @GetMapping("/{id}")
  35. @Log(value = "充电站时间段单价详情", module = LogModuleEnum.OTHER)
  36. public Result<StationTimePriceForm> getStationTimePriceFormData(
  37. @Parameter(description = "充电站时间段单价ID") @PathVariable Long id) {
  38. StationTimePriceForm formData = stationTimePriceService.getStationTimePriceFormData(id);
  39. return Result.success(formData);
  40. }
  41. @Operation(summary = "新增充电站时间段单价")
  42. @PostMapping
  43. @PreAuthorize("hasRole('ADMIN')")
  44. @Log(value = "新增充电站时间段单价", module = LogModuleEnum.OTHER)
  45. public Result<Boolean> saveStationTimePrice(@RequestBody StationTimePriceForm formData) {
  46. boolean result = stationTimePriceService.saveStationTimePrice(formData);
  47. return Result.success(result);
  48. }
  49. @Operation(summary = "修改充电站时间段单价")
  50. @PutMapping("/{id}")
  51. @PreAuthorize("hasRole('ADMIN')")
  52. @Log(value = "修改充电站时间段单价", module = LogModuleEnum.OTHER)
  53. public Result<Boolean> updateStationTimePrice(
  54. @Parameter(description = "充电站时间段单价ID") @PathVariable Long id,
  55. @RequestBody StationTimePriceForm formData) {
  56. boolean result = stationTimePriceService.updateStationTimePrice(id, formData);
  57. return Result.success(result);
  58. }
  59. @Operation(summary = "删除充电站时间段单价")
  60. @DeleteMapping("/{ids}")
  61. @PreAuthorize("hasRole('ADMIN')")
  62. @Log(value = "删除充电站时间段单价", module = LogModuleEnum.OTHER)
  63. public Result<Boolean> deleteStationTimePrices(
  64. @Parameter(description = "充电站时间段单价ID,多个以英文逗号(,)分割") @PathVariable String ids) {
  65. boolean result = stationTimePriceService.deleteStationTimePrices(ids);
  66. return Result.success(result);
  67. }
  68. }