KKSU
2023-11-22 c3793ad938cefba5fa76258d70e0cbc37bcf151c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
package cc.mrbird.febs.mall.controller;
 
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.service.IApiMallProductService;
import cc.mrbird.febs.mall.vo.ApiOrderBuyInfoVo;
import cc.mrbird.febs.mall.vo.ApiOrderSellInfoVo;
import cc.mrbird.febs.mall.vo.ApiOrderListVo;
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.springframework.web.bind.annotation.*;
 
import javax.validation.Valid;
 
@Slf4j
@RestController
@CrossOrigin("*")
@RequestMapping(value = "/api/product")
@RequiredArgsConstructor
@Api(value = "ApiMallProductController", tags = "NFT/FCM")
public class ApiMallProductController {
 
    private final IApiMallProductService iApiMallProductService;
 
    @ApiOperation(value = "FCM-预约产品列表", notes = "FCM-预约产品列表")
    @GetMapping(value = "/productNFTList")
    public FebsResponse productNFTList() {
        return new FebsResponse().success().data(iApiMallProductService.productNFTList());
    }
 
    @ApiOperation(value = "FCM-预约", notes = "FCM-预约")
    @PostMapping(value = "/createNFT")
    public FebsResponse createNFT(@RequestBody @Valid ApiCreateNFTDto createNFTDto) {
        return iApiMallProductService.createNFT(createNFTDto);
    }
 
    @ApiOperation(value = "FCM-订单管理-列表", notes = "FCM-订单管理-列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiOrderListVo.class)
    })
    @PostMapping(value = "/orderList")
    public FebsResponse orderList(@RequestBody @Valid ApiOrderListDto apiOrderListDto) {
        return iApiMallProductService.orderList(apiOrderListDto);
    }
 
    @ApiOperation(value = "FCM-订单管理-查看提现详情", notes = "FCM-订单管理-查看提现详情")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiOrderSellInfoVo.class)
    })
    @PostMapping(value = "/orderSell")
    public FebsResponse orderSell(@RequestBody @Valid ApiOrderSellInfoDto apiOrderSellInfoDto) {
        return iApiMallProductService.orderSell(apiOrderSellInfoDto);
    }
 
    @ApiOperation(value = "FCM-订单管理-查看预约详情", notes = "FCM-订单管理-查看预约详情")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiOrderBuyInfoVo.class)
    })
    @PostMapping(value = "/orderBuy")
    public FebsResponse orderBuy(@RequestBody @Valid ApiOrderBuyInfoDto apiOrderBuyInfoDto) {
        return iApiMallProductService.orderBuy(apiOrderBuyInfoDto);
    }
 
    @ApiOperation(value = "FCM-订单管理-查看预约详情-打款", notes = "FCM-订单管理-查看预约详情-打款")
    @PostMapping(value = "/orderBuyInsure")
    public FebsResponse orderBuyInsure(@RequestBody @Valid ApiOrderBuyInsureDto apiOrderBuyInsureDto) {
        return iApiMallProductService.orderBuyInsure(apiOrderBuyInsureDto);
    }
 
    @ApiOperation(value = "FCM-订单管理-查看提现详情-确认", notes = "FCM-订单管理-查看提现详情-确认")
    @PostMapping(value = "/orderSellInsure")
    public FebsResponse orderSellInsure(@RequestBody @Valid ApiOrderSellInsureDto apiOrderSellInsureDto) {
        return iApiMallProductService.orderSellInsure(apiOrderSellInsureDto);
    }
 
    @ApiOperation(value = "FCM-FCM提现", notes = "FCM-FCM提现")
    @PostMapping(value = "/outFcm")
    public FebsResponse outFcm(@RequestBody @Valid ApiOutFcmDto outFcmDto) {
        return iApiMallProductService.outFcm(outFcmDto);
    }
 
    @ApiOperation(value = "FCM-NFT提现", notes = "FCM-NFT提现")
    @PostMapping(value = "/outNFT")
    public FebsResponse outNFT(@RequestBody @Valid ApiOutNFTDto outNFTDto) {
        return iApiMallProductService.outNFT(outNFTDto);
    }
 
}