package com.nova.sankuai.controller.v1; import com.baomidou.mybatisplus.core.metadata.IPage; import com.nova.sankuai.domain.dto.RechargePageDto; import com.nova.sankuai.domain.entity.RechargeRecord; import com.nova.sankuai.domain.enums.UserTypeEnum; import com.nova.sankuai.domain.vo.RechargeRecordVo; import com.nova.sankuai.infra.utils.PageRequest; import com.nova.sankuai.infra.utils.ResultJson; import com.nova.sankuai.infra.utils.UserUtil; import com.nova.sankuai.security.UserDetail; import com.nova.sankuai.service.IRechargeRecordService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; /** * @author weikangdi * @create 2021/11/10 */ @Api(tags = "充值记录") @RestController @RequestMapping(value = "/api/v1/rechargeRecord") @AllArgsConstructor public class RechargeRecordController { private IRechargeRecordService service; @GetMapping("/page") @ApiOperation("分页获取充值记录") @PreAuthorize("hasAuthority('rechargeRecord.page')") public ResultJson> page(PageRequest pageRequest, RechargePageDto pageDto, HttpServletRequest request) { UserDetail user = UserUtil.getUser(request.getHeader("Authorization")); if (UserTypeEnum.USER.getCode().equals(user.getType())) { pageDto.setMechanismId(user.getId()); } IPage result = service.pageModel(pageRequest, pageDto); return ResultJson.ok(result); } @PostMapping("/edit") @ApiOperation("编辑充值记录") @PreAuthorize("hasAuthority('rechargeRecord.edit')") public ResultJson edit(@RequestBody RechargeRecord rechargeRecord) { service.edit(rechargeRecord); return ResultJson.success(); } @PostMapping("/add") @ApiOperation("新增充值记录") @PreAuthorize("hasAuthority('rechargeRecord.add')") public ResultJson add(@RequestBody RechargeRecord rechargeRecord, HttpServletRequest request) { UserDetail user = UserUtil.getUser(request.getHeader("Authorization")); rechargeRecord.setCreatedBy(user.getId()); service.add(rechargeRecord); return ResultJson.success(); } }