This commit is contained in:
777
2025-12-23 17:10:31 +08:00
parent 20457a3801
commit 56203a5895
15 changed files with 714 additions and 32 deletions

View File

@@ -0,0 +1,95 @@
package com.ruoyi.cai.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.domain.PrizeInfo;
import com.ruoyi.cai.service.PrizeInfoService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
/**
* 抽奖奖品
*
* @author 77
* @date 2025-12-23
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/cai/prizeInfo")
public class PrizeInfoController extends BaseController {
private final PrizeInfoService prizeInfoService;
/**
* 查询抽奖奖品列表
*/
@SaCheckPermission("cai:prizeInfo:list")
@GetMapping("/list")
public TableDataInfo<PrizeInfo> list(PrizeInfo bo, PageQuery pageQuery) {
Page<PrizeInfo> page = prizeInfoService.page(pageQuery.build(), Wrappers.lambdaQuery(PrizeInfo.class));
return TableDataInfo.build(page);
}
/**
* 获取抽奖奖品详细信息
*
* @param id 主键
*/
@SaCheckPermission("cai:prizeInfo:query")
@GetMapping("/{id}")
public R<PrizeInfo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(prizeInfoService.getById(id));
}
/**
* 新增抽奖奖品
*/
@SaCheckPermission("cai:prizeInfo:add")
@Log(title = "抽奖奖品", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PrizeInfo bo) {
return toAjax(prizeInfoService.save(bo));
}
/**
* 修改抽奖奖品
*/
@SaCheckPermission("cai:prizeInfo:edit")
@Log(title = "抽奖奖品", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PrizeInfo bo) {
return toAjax(prizeInfoService.updateById(bo));
}
/**
* 删除抽奖奖品
*
* @param ids 主键串
*/
@SaCheckPermission("cai:prizeInfo:remove")
@Log(title = "抽奖奖品", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(prizeInfoService.removeBatchByIds(Arrays.asList(ids), true));
}
}

View File

@@ -0,0 +1,95 @@
package com.ruoyi.cai.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.domain.PrizeOnline;
import com.ruoyi.cai.service.PrizeOnlineService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
/**
* 已发布奖品
*
* @author ruoyi
* @date 2025-12-23
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/cai/prizeOnline")
public class PrizeOnlineController extends BaseController {
private final PrizeOnlineService prizeOnlineService;
/**
* 查询已发布奖品列表
*/
@SaCheckPermission("cai:prizeOnline:list")
@GetMapping("/list")
public TableDataInfo<PrizeOnline> list(PrizeOnline bo, PageQuery pageQuery) {
Page<PrizeOnline> page = prizeOnlineService.page(pageQuery.build(), Wrappers.lambdaQuery(PrizeOnline.class));
return TableDataInfo.build(page);
}
/**
* 获取已发布奖品详细信息
*
* @param id 主键
*/
@SaCheckPermission("cai:prizeOnline:query")
@GetMapping("/{id}")
public R<PrizeOnline> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(prizeOnlineService.getById(id));
}
/**
* 新增已发布奖品
*/
@SaCheckPermission("cai:prizeOnline:add")
@Log(title = "已发布奖品", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody PrizeOnline bo) {
return toAjax(prizeOnlineService.save(bo));
}
/**
* 修改已发布奖品
*/
@SaCheckPermission("cai:prizeOnline:edit")
@Log(title = "已发布奖品", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody PrizeOnline bo) {
return toAjax(prizeOnlineService.updateById(bo));
}
/**
* 删除已发布奖品
*
* @param ids 主键串
*/
@SaCheckPermission("cai:prizeOnline:remove")
@Log(title = "已发布奖品", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(prizeOnlineService.removeBatchByIds(Arrays.asList(ids), true));
}
}