package com.xcong.excoin.modules.otc.controller;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.xcong.excoin.common.response.Result;
|
import com.xcong.excoin.modules.otc.dto.HasPayDto;
|
import com.xcong.excoin.modules.otc.dto.OrderListDto;
|
import com.xcong.excoin.modules.otc.dto.OtcOrderAddDto;
|
import com.xcong.excoin.modules.otc.service.OtcOrderService;
|
import com.xcong.excoin.modules.otc.vo.BuyOrderDetailVo;
|
import com.xcong.excoin.modules.otc.vo.OrderListVo;
|
import com.xcong.excoin.modules.otc.vo.SaleOrderDetailVo;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiResponse;
|
import io.swagger.annotations.ApiResponses;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.ibatis.annotations.Param;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
@Slf4j
|
@Validated
|
@RestController
|
@RequestMapping(value = "/api/otcOrder")
|
@RequiredArgsConstructor
|
@Api(value = "OtcOrderController", tags = "otc用户订单接口类")
|
public class OtcOrderController {
|
|
private final OtcOrderService otcOrderService;
|
|
@ApiOperation(value = "我要购买")
|
@PostMapping(value = "/buy")
|
public Result buy(@RequestBody OtcOrderAddDto orderAddDto) {
|
return otcOrderService.buyOrder(orderAddDto);
|
}
|
|
@ApiOperation(value = "我要出售")
|
@PostMapping(value = "/sale")
|
public Result sale(@RequestBody OtcOrderAddDto orderAddDto) {
|
return otcOrderService.saleOrder(orderAddDto);
|
}
|
|
@ApiOperation(value = "用户订单列表")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = OrderListVo.class)
|
})
|
@PostMapping(value = "/orderList")
|
public Result orderList(@RequestBody OrderListDto orderListDto) {
|
IPage<OrderListVo> page = otcOrderService.findOrderListInPage(orderListDto);
|
return Result.ok(page.getRecords());
|
}
|
|
@ApiOperation(value = "买单 - 订单详情")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = BuyOrderDetailVo.class)
|
})
|
@GetMapping(value = "/buyOrderDetail/{id}")
|
public Result buyOrderDetail(@PathVariable("id") Long id) {
|
return otcOrderService.findBuyOrderDetail(id);
|
}
|
|
@ApiOperation(value = "卖单 - 订单详情")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = SaleOrderDetailVo.class)
|
})
|
@GetMapping(value = "/saleOrderDetail/{id}")
|
public Result saleOrderDetail(@PathVariable("id") Long id) {
|
return otcOrderService.findSaleOrderDetail(id);
|
}
|
|
@ApiOperation(value = "已付款,请放币")
|
@PostMapping(value = "/hasPay")
|
public Result hasPay(@RequestBody HasPayDto hasPayDto) {
|
otcOrderService.hasPay(hasPayDto);
|
return Result.ok("操作成功");
|
}
|
|
@ApiOperation(value = "确认收款")
|
@PostMapping(value = "/finishOrder/{id}")
|
public Result finishOrder(@PathVariable("id") Long id) {
|
otcOrderService.finishOrder(id);
|
return Result.ok("操作成功");
|
}
|
|
@ApiOperation(value = "取消订单")
|
@PostMapping(value = "/cancelUserOrder/{id}")
|
public Result cancelUserOrder(@PathVariable("id") Long id) {
|
otcOrderService.cancelOrder(id);
|
return Result.ok("操作成功");
|
}
|
}
|