From 039a33d1bfa6ef041161666bbd120c34086fe7c1 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期一, 14 十月 2024 14:09:25 +0800 Subject: [PATCH] 课程代码 --- xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java | 84 +++++++++++++++++++++++++++++++++++++++++- 1 files changed, 82 insertions(+), 2 deletions(-) diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java index 97f68ce..ecbede9 100644 --- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java +++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java @@ -1,9 +1,27 @@ package com.xinquan.user.controller.client; -import org.springframework.web.bind.annotation.RequestMapping; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.xinquan.common.core.domain.R; +import com.xinquan.common.core.utils.page.CollUtils; +import com.xinquan.common.core.utils.page.PageDTO; +import com.xinquan.common.security.utils.SecurityUtils; +import com.xinquan.meditation.api.domain.Meditation; +import com.xinquan.system.api.domain.MeditationQuestion; +import com.xinquan.system.api.domain.Prize; +import com.xinquan.system.api.domain.PrizeRedemptionRecord; +import com.xinquan.user.service.PrizeRedemptionRecordService; +import com.xinquan.user.service.PrizeService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.time.LocalDateTime; +import java.util.Arrays; +import java.util.List; /** * <p> @@ -16,6 +34,68 @@ @RestController @RequestMapping("/client/prize") public class ClientPrizeController { + @Autowired + private PrizeService prizeService; + @Autowired + private PrizeRedemptionRecordService prizeRedemptionRecordService; + @PostMapping("/prizeManagementList") + @ApiOperation(value = "奖品列表-分页", tags = {"管理后台-奖品管理"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageCurr", value = "分页参数,当前页码", dataType = "Integer", required = true), + @ApiImplicitParam(name = "pageSize", value = "分页参数,每页数量", dataType = "Integer", required = true) + }) + public R<PageDTO<Prize>> prizeManagementList(@RequestParam(value = "pageCurr")Integer pageCurr, + @RequestParam(value = "pageSize")Integer pageSize) { + LambdaQueryWrapper<Prize> meditationLambdaQueryWrapper = new LambdaQueryWrapper<>(); + meditationLambdaQueryWrapper.orderByDesc(Prize::getSortNum); + Page<Prize> page = prizeService.page(new Page<>(pageCurr, pageSize), meditationLambdaQueryWrapper); + if (CollUtils.isEmpty(page.getRecords())) { + return R.ok(PageDTO.empty(page)); + } + for (Prize record : page.getRecords()) { + record.setUid(record.getId()+""); + long count = prizeRedemptionRecordService.count(new LambdaQueryWrapper<PrizeRedemptionRecord>() + .eq(PrizeRedemptionRecord::getPrizeId, record.getId())); + record.setReceiveCount(count); + } + return R.ok(PageDTO.of(page, Prize.class)); + } + + @PostMapping("/addPrize") + @ApiOperation(value = "新增奖品管理", notes = "管理后台-奖品管理") + public R addPrize(@RequestBody Prize homeBackgroundMusic) { + homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername()); + homeBackgroundMusic.setCreateTime(LocalDateTime.now()); + return R.ok(prizeService.save(homeBackgroundMusic)); + } + @GetMapping("/detailPrize") + @ApiOperation(value = "查看详情奖品管理", notes = "管理后台-奖品管理") + public R<Prize> detailPrize(String uid) { + return R.ok(prizeService.getById(uid)); + } + @GetMapping("/updateState") + @ApiOperation(value = "修改奖品管理上下架状态", notes = "管理后台-奖品管理") + public R updateState(String uid) { + Prize byId = prizeService.getById(uid); + if (byId.getStatus() == 1){ + byId.setStatus(2); + }else { + byId.setStatus(1); + } + return R.ok(); + } + @PostMapping("/updatePrize") + @ApiOperation(value = "修改奖品管理", notes = "管理后台-奖品管理") + public R updatePrize(@RequestBody Prize homeBackgroundMusic) { + homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername()); + homeBackgroundMusic.setUpdateTime(LocalDateTime.now()); + return R.ok(prizeService.updateById(homeBackgroundMusic)); + } + @PostMapping("/deletePrize") + @ApiOperation(value = "批量删除", notes = "管理后台-奖品管理") + public R deletePrize(String ids) { + return R.ok(prizeService.removeBatchByIds(Arrays.asList(ids.split(",")))); + } } -- Gitblit v1.7.1