package com.sandu.ximon.admin.controller; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.sandu.common.domain.ResponseVO; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.dto.BannerDto; import com.sandu.ximon.admin.param.BannerParam; import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.security.SecurityUtils; import com.sandu.ximon.admin.service.BannerService; import com.sandu.ximon.admin.service.ClientService; import com.sandu.ximon.dao.domain.Banner; import com.sandu.ximon.dao.domain.Client; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 轮播图 */ @RestController @AllArgsConstructor @RequestMapping("/v1/content/banner") public class BannerController { private final BannerService contentBannerService; private final ClientService clientService; private PermissionConfig permissionConfig; @PostMapping("/addbanner") public ResponseVO addBanner(@Validated @RequestBody BannerParam bannerParam) { if (!permissionConfig.check(MenuEnum.BANNER_ADD.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } Client client = clientService.getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getId, bannerParam.getBinding_author())); boolean result = contentBannerService.addBanner(bannerParam, client); if (result) { return ResponseUtil.success("添加成功"); } else { return ResponseUtil.fail("添加失败"); } } // @GetMapping("/category") // public ResponseVO listPosition() { // List bannerPositionDtos = contentBannerService.listPosition(); // return ResponseUtil.success(bannerPositionDtos); // } @PostMapping("/{bannerId}") public ResponseVO updateBanner(@PathVariable Long bannerId, @Validated @RequestBody BannerParam bannerParam) { if (!permissionConfig.check(MenuEnum.BANNER_UPDATE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = contentBannerService.updateBanner(bannerId, bannerParam); if (result) { return ResponseUtil.success("更新成功"); } else { return ResponseUtil.fail("更新失败"); } } //前端并未调用 @GetMapping("/{bannerId}") public ResponseVO detailBanner(@PathVariable Long bannerId) { if (!permissionConfig.check(MenuEnum.BANNER_DETAIL.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } BannerDto result = contentBannerService.detailBanner(bannerId); return ResponseUtil.success(result); } @GetMapping public ResponseVO listMainBanner() { if (!permissionConfig.check(MenuEnum.BANNER.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } if (SecurityUtils.getClientId() != null) { List list = contentBannerService.listBanner(); return ResponseUtil.success(list); } else { return ResponseUtil.success(contentBannerService.list()); } } @PostMapping("/delete/{bannerId}") public ResponseVO deleteBanner(@PathVariable Long bannerId) { if (!permissionConfig.check(MenuEnum.BANNER_DELETE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = contentBannerService.deleteBanner(bannerId); if (result) { return ResponseUtil.success("删除成功"); } else { return ResponseUtil.fail("删除失败"); } } }