mart-backend/src/main/java/com/pixelai/api/pa/controller/MbConsumptionController.java
2025-01-07 22:09:19 +08:00

135 lines
5.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.pixelai.api.pa.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.base.annotation.SysLog;
import org.springframework.web.bind.annotation.RestController;
import com.base.helper.BaseController;
import com.base.helper.Result;
import com.pixelai.api.pa.entity.MbConsumption;
import com.pixelai.api.pa.service.MbConsumptionService;
import io.swagger.annotations.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataIntegrityViolationException;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import javax.validation.Valid;
import java.util.Collections;
import java.util.List;
import java.util.Map;
/**
* <p>
* 前端控制器
* </p>
*
* @author gjj
* @since 2024-12-23
*/
@Api(tags = "用户消费表")
@RestController
@RequestMapping("/mbConsumption")
public class MbConsumptionController extends BaseController {
private static final Logger LOG = LoggerFactory.getLogger(MbConsumptionController.class);
@Autowired
private MbConsumptionService entityService;
@SysLog(action = "findByPage", value = "分页查询用户消费")
@ApiOperation(value = "分页查询用户消费", notes = "分页查询用户消费")
@RequestMapping(method = RequestMethod.GET)
@ApiImplicitParams({@ApiImplicitParam(name = "size", value = "分页大小", paramType = "query"),
@ApiImplicitParam(name = "current", value = "当前页面从1开始", paramType = "query")})
public Result<IPage<MbConsumption>> findByPage(final MbConsumption example, final Page page) {
IPage<MbConsumption> records = entityService.page(example,page);
return new Result(true, records);
}
@SysLog(action = "delete", value = "删除用户消费")
@ApiOperation(value = "删除用户消费")
@RequestMapping(value = "{id}", method = {RequestMethod.DELETE})
@ApiImplicitParam(name = "id", value = "用户消费ID", required = true, paramType = "path")
public Result delete(@PathVariable final Integer id) {
try {
entityService.removeById(id);
return new Result(true, "成功删除用户消费", null);
} catch (DataIntegrityViolationException e) {
LOG.error("删除用户消费失败", e);
return new Result(false, "删除用户消费失败", "该用户消费不能删除,存在其他关联数据");
} catch (Exception e) {
LOG.error("删除用户消费失败", e);
return new Result(false, "删除用户消费失败", e.getMessage());
}
}
@SysLog(action = "one", value = "查询单个用户消费")
@ApiOperation(value = "查询单个用户消费")
@RequestMapping(value = "{id}", method = {RequestMethod.GET})
@ApiImplicitParam(name = "id", value = "用户消费ID", required = true, paramType = "path")
public Result one(@PathVariable final Integer id) {
try {
MbConsumption entity = entityService.getById(id);
return new Result(true, entity);
} catch (Exception e) {
LOG.error("查询单个用户消费失败", e);
return new Result(false, new MbConsumption());
}
}
@SysLog(action = "add", value = "添加用户消费")
@ApiOperation(value = "添加用户消费")
@RequestMapping(method = {RequestMethod.POST})
public Result add(@Valid @RequestBody final MbConsumption entity, final BindingResult result) {
try {
if (result.hasErrors()) {
Map<String, String> map = this.getErrors(result);
String errorMsg = map.entrySet().iterator().next().getValue();
return new Result(false, "保存用户消费失败", errorMsg, map);
} else {
entityService.save(entity);
return new Result(true, "成功保存用户消费", null);
}
} catch (Exception e) {
LOG.error("添加用户消费失败", e);
return new Result(false, "保存用户消费失败", e.getMessage());
}
}
@SysLog(action = "update", value = "修改用户消费")
@ApiOperation(value = "修改用户消费")
@RequestMapping(method = {RequestMethod.PUT})
public Result update(@Valid @RequestBody final MbConsumption entity, final BindingResult result) {
try {
if (result.hasErrors()) {
Map<String, String> map = this.getErrors(result);
String errorMsg = map.entrySet().iterator().next().getValue();
return new Result(false, "修改用户消费失败", errorMsg, map);
} else {
if (null == entity.getId()) {
throw new RuntimeException("id不能为空");
}
entityService.updateById(entity);
return new Result(true, "成功修改用户消费", null);
}
} catch (Exception e) {
LOG.error("修改用户消费失败", e);
return new Result(false, "修改用户消费失败", e.getMessage());
}
}
@ApiOperation(value = "全部用户消费")
@RequestMapping(value = "all", method = RequestMethod.GET)
public Result<List<MbConsumption>> all(MbConsumption example) {
List<MbConsumption> entitys = entityService.list(example);
if (null != entitys) {
return new Result<>(true, entitys);
}
return new Result<>(true, Collections.emptyList());
}
}