package com.mzl.flower.web.content; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.mzl.flower.base.BaseController; import com.mzl.flower.base.R; import com.mzl.flower.base.ReturnDataDTO; import com.mzl.flower.constant.Constants; import com.mzl.flower.dto.BatchDTO; import com.mzl.flower.dto.request.content.QueryBannerDTO; import com.mzl.flower.dto.response.content.BannerDTO; import com.mzl.flower.entity.content.Banner; import com.mzl.flower.service.content.BannerService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.math3.analysis.function.Constant; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.constraints.NotNull; import java.util.List; @RestController @RequestMapping("/api/banner") @Api(value = "运营-banner管理", tags = "运营-banner管理") @Validated @Slf4j public class BannerController extends BaseController { private final BannerService bannerService; public BannerController(BannerService bannerService) { this.bannerService = bannerService; } @PostMapping("/page/new") @ApiOperation(value = "新增", notes = "新增") public ResponseEntity add(@Validated @RequestBody Banner dto) { bannerService.add(dto); return returnData(R.SUCCESS.getCode(),null); } @PostMapping("/page/edit") @ApiOperation(value = "修改", notes = "修改") public ResponseEntity update(@Validated @RequestBody Banner dto) { bannerService.update(dto); return returnData(R.SUCCESS.getCode(),null); } @GetMapping("/page/delete") @ApiOperation(value = "删除", notes = "删除") public ResponseEntity delete(@NotNull(message = "id不能为空") Long id) { bannerService.delete(id); return returnData(R.SUCCESS.getCode(),null); } @GetMapping("/page/view") @ApiOperation(value = "详情", notes = "详情") public ResponseEntity> detail(@NotNull(message = "id不能为空") Long id) { return returnData(R.SUCCESS.getCode(),bannerService.detail(id)); } @GetMapping("/page") @ApiOperation(value = "查询-分页", notes = "查询-分页") public ResponseEntity>> queryPage(QueryBannerDTO dto, Page page) { return returnData(R.SUCCESS.getCode(), bannerService.queryPage(dto,page)); } @GetMapping("/page/changeStatus") @ApiOperation(value = "修改状态", notes = "修改状态") public ResponseEntity changeStatus(@NotNull(message = "id不能为空") Long id) { bannerService.changeStatus(id); return returnData(R.SUCCESS.getCode(), null); } @PostMapping("/page/delete/batch") @ApiOperation(value = "批量删除", notes = "批量删除") public ResponseEntity batchDelete(@Validated @RequestBody BatchDTO dto) { bannerService.batchDelete(dto); return returnData(R.SUCCESS.getCode(),null); } @PostMapping("/page/publish/batch") @ApiOperation(value = "批量发布", notes = "批量发布") public ResponseEntity batchPublish(@Validated @RequestBody BatchDTO dto) { bannerService.batchPublish(dto); return returnData(R.SUCCESS.getCode(),null); } @GetMapping("/list") @ApiOperation(value = "用户端-查询banner", notes = "用户端-查询banner") public ResponseEntity>> queryList(QueryBannerDTO dto) { dto.setStatus(Constants.COMMON_PUBLISH_STATUS.published.name()); return returnData(R.SUCCESS.getCode(), bannerService.queryList(dto)); } }