AppletHomeController.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package com.zsElectric.boot.business.controller.applet;
  2. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  3. import com.zsElectric.boot.business.model.entity.Advertising;
  4. import com.zsElectric.boot.business.model.query.AdvertisingQuery;
  5. import com.zsElectric.boot.business.model.vo.AdvertisingVO;
  6. import com.zsElectric.boot.business.service.AdvertisingService;
  7. import com.zsElectric.boot.business.service.UserInfoService;
  8. import com.zsElectric.boot.charging.service.ChargingReceptionService;
  9. import com.zsElectric.boot.common.constant.SystemConstants;
  10. import com.zsElectric.boot.common.util.electric.RequestParmsEntity;
  11. import com.zsElectric.boot.common.util.electric.ResponseParmsEntity;
  12. import com.zsElectric.boot.core.web.Result;
  13. import io.swagger.v3.oas.annotations.Operation;
  14. import com.baomidou.mybatisplus.core.metadata.IPage;
  15. import com.zsElectric.boot.business.model.query.StationInfoQuery;
  16. import com.zsElectric.boot.business.model.vo.BannerInfoVO;
  17. import com.zsElectric.boot.business.model.vo.StationInfoMapVO;
  18. import com.zsElectric.boot.business.model.vo.StationInfoVO;
  19. import com.zsElectric.boot.business.service.AppletHomeService;
  20. import com.zsElectric.boot.core.web.PageResult;
  21. import io.swagger.v3.oas.annotations.tags.Tag;
  22. import lombok.RequiredArgsConstructor;
  23. import lombok.extern.slf4j.Slf4j;
  24. import org.springframework.beans.factory.annotation.Autowired;
  25. import org.springframework.security.access.prepost.PreAuthorize;
  26. import org.springframework.web.bind.annotation.*;
  27. import java.math.BigDecimal;
  28. import java.util.List;
  29. @Slf4j
  30. @Tag(name = "小程序主页相关接口")
  31. @RestController
  32. @RequestMapping("/applet/v1/homePage")
  33. @RequiredArgsConstructor
  34. public class AppletHomeController {
  35. private final AppletHomeService appletHomeService;
  36. private final AdvertisingService advertisingService;
  37. private final ChargingReceptionService chargingReceptionService;
  38. /**
  39. * 用户端分页查询站点信息
  40. *
  41. * @param queryParams 查询参数
  42. * @return 站点信息分页列表
  43. */
  44. @Operation(summary = "用户端分页查询站点信息")
  45. @PostMapping("/getStationInfoPage")
  46. public PageResult<StationInfoVO> getStationInfoPage(@RequestBody StationInfoQuery queryParams) {
  47. IPage<StationInfoVO> result = appletHomeService.getStationInfoPage(queryParams);
  48. return PageResult.success(result);
  49. }
  50. /**
  51. * 首页地图模式-获取充电站列表(按距离排序)
  52. *
  53. * @param longitude 经度
  54. * @param latitude 纬度
  55. * @return 站点列表
  56. */
  57. @Operation(summary = "首页地图模式-获取充电站列表(按距离排序)")
  58. @GetMapping("/getStationInfoMapList")
  59. public Result<List<StationInfoMapVO>> getStationInfoMapList(
  60. @RequestParam BigDecimal longitude,
  61. @RequestParam BigDecimal latitude) {
  62. return Result.success(appletHomeService.getStationInfoMapList(longitude, latitude));
  63. }
  64. /**
  65. * 获取首页Banner列表
  66. *
  67. * @return Banner列表
  68. */
  69. @Operation(summary = "获取首页Banner列表")
  70. @GetMapping("/getBannerList/{location}")
  71. public Result<List<BannerInfoVO>> getBannerList(@PathVariable("location") Integer location) {
  72. return Result.success(appletHomeService.getBannerList(location));
  73. }
  74. /**
  75. * 获取首页广告弹窗列表
  76. *
  77. * @return 广告弹窗列表
  78. */
  79. @Operation(summary = "获取首页广告弹窗列表")
  80. @GetMapping("/getAdvertisingList")
  81. public Result<List<Advertising>> getAdvertisingList() {
  82. List<Advertising> list = advertisingService.list(Wrappers.lambdaQuery(Advertising.class)
  83. .eq(Advertising::getStatus, SystemConstants.STATUS_ONE)
  84. .eq(Advertising::getPosition, SystemConstants.STATUS_ONE)
  85. .orderByAsc(Advertising::getSort)
  86. );
  87. return Result.success(list);
  88. }
  89. @Operation(summary = "test")
  90. @PostMapping("/test")
  91. public ResponseParmsEntity test(@RequestBody RequestParmsEntity requestDTO) throws Exception {
  92. return chargingReceptionService.chargeOrderResponse(requestDTO);
  93. }
  94. @Autowired
  95. private UserInfoService userInfoService;
  96. @Operation(summary = "test2")
  97. @PostMapping("/test2")
  98. public void test2() throws Exception {
  99. // 调用恢复方法
  100. int restoredCount = userInfoService.restoreDeletedUsersByOrderAndAccount();
  101. log.info("恢复用户数量:{}", restoredCount);
  102. }
  103. }