package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.mall.dto.AddOrderDto; import cc.mrbird.febs.mall.dto.PayOrderDto; import cc.mrbird.febs.mall.service.IApiMallOrderInfoService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.List; import java.util.Map; /** * @author wzy * @date 2021-09-18 **/ @Slf4j @Validated @RestController @RequiredArgsConstructor @RequestMapping(value = "/api/order") @Api(value = "ApiMallOrderController", tags = "订单接口类") public class ApiMallOrderController { private final IApiMallOrderInfoService mallOrderInfoService; @ApiOperation(value = "创建订单", notes = "创建订单") @PostMapping(value = "/createOrder") public FebsResponse createOrder(@RequestBody AddOrderDto addOrderDto) { Long orderId = mallOrderInfoService.createOrder(addOrderDto); return new FebsResponse().success().data(orderId).message("创建订单成功"); } @ApiOperation(value = "取消订单", notes = "取消订单") @PostMapping(value = "/cancelOrder/{id}") public FebsResponse cancelOrder(@PathVariable("id") Long id) { mallOrderInfoService.cancelOrder(id); return new FebsResponse().success(); } @ApiOperation(value = "支付订单", notes = "支付订单") @PostMapping(value = "/payOrder") public FebsResponse payOrder(@RequestBody PayOrderDto payOrderDto) { String result = mallOrderInfoService.payOrder(payOrderDto); Map map = new HashMap<>(); map.put("orderNo", result); map.put("type", payOrderDto.getType()); return new FebsResponse().success().data(map).message("支付成功"); } }