xiaoyong931011
2022-07-27 3280d1bd977e8fb5c9c60e615612fabb7b99c3e3
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package cc.mrbird.febs.mall.controller;
 
import cc.mrbird.febs.common.annotation.ControllerEndpoint;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.service.IApiMallTeamLeaderService;
import cc.mrbird.febs.mall.vo.ApiLeaderInfoVo;
import cc.mrbird.febs.mall.vo.ApiLeaderListVo;
import cc.mrbird.febs.mall.vo.ApiMallleaderStateVo;
import cc.mrbird.febs.mall.vo.OrderListVo;
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.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
 
import javax.validation.Valid;
 
@Slf4j
@Validated
@RestController
@RequiredArgsConstructor
@RequestMapping(value = "/api/leader")
@Api(value = "ApiMallTeamLeaderController", tags = "团长接口类")
public class ApiMallTeamLeaderController {
 
    private final IApiMallTeamLeaderService iApiMallTeamLeaderService;
 
    /**
     * 申请团长
     */
    @ApiOperation(value = "申请团长", notes = "申请团长")
    @PostMapping(value = "/applyLeader")
    public FebsResponse applyLeader(@RequestBody @Valid ApiApplayLeaderDto apiApplayLeaderDto) {
        return iApiMallTeamLeaderService.applyLeader(apiApplayLeaderDto);
    }
 
    /**
     * 团长列表
     */
    @ApiOperation(value = "团长列表", notes = "团长列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiLeaderListVo.class)
    })
    @PostMapping(value = "/leaderList")
    public FebsResponse leaderList(@RequestBody @Valid ApiLeaderListDto apiLeaderListDto) {
        return new FebsResponse().success().data(iApiMallTeamLeaderService.findLeaderListInPage(apiLeaderListDto));
    }
 
    /**
     *是否允许申请团长
     */
    @ApiOperation(value = "是否允许申请团长", notes = "是否允许申请团长")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiMallleaderStateVo.class)
    })
    @GetMapping(value = "/leaderState")
    public FebsResponse leaderState() {
        return iApiMallTeamLeaderService.leaderState();
    }
 
 
    /**
     *选择团长
     */
    @ApiOperation(value = "选择团长", notes = "选择团长")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiLeaderInfoVo.class)
    })
    @GetMapping(value = "/leaderChoose/{id}")
    public FebsResponse leaderChoose(@PathVariable(value = "id") Long id) {
        return iApiMallTeamLeaderService.getApiLeaderInfoVoById(id);
    }
 
    /**
     * 团长查看自提点订单列表
     */
    @ApiOperation(value = "团长查看自提点订单列表", notes = "团长查看自提点订单列表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = OrderListVo.class)
    })
    @PostMapping(value = "/leaderOrderList")
    public FebsResponse leaderOrderList(@RequestBody ApiLeaderOrderListDto apiLeaderOrderListDto) {
        return new FebsResponse().success().data(iApiMallTeamLeaderService.findLeaderOrderListInPage(apiLeaderOrderListDto));
    }
 
    /**
     * 团长点击到货确认,订单从状态 2 变更到状态 3 ,即待提货
     */
    @ApiOperation(value = "团长点击到货确认,订单从状态 2 变更到状态 3 ,即待提货", notes = "团长点击到货确认,订单从状态 2 变更到状态 3 ,即待提货")
    @PostMapping("/leaderOrderConfirm")
    public FebsResponse leaderOrderConfirm(@Valid ApiLeaderOrderConfirmDto apiLeaderOrderConfirmDto) {
        return iApiMallTeamLeaderService.leaderOrderConfirm(apiLeaderOrderConfirmDto);
    }
 
    /**
     * 商品列表页的团长信息
     * 有团长特征码直接显示该团长,
     * 有经纬度,按照经纬度选择距离最近的
     * 没有选择团长列表的第一个
     */
    @ApiOperation(value = "商品列表页的团长信息", notes = "商品列表页的团长信息")
    @ApiResponses({
            @ApiResponse(code = 200, message = "success", response = ApiLeaderInfoVo.class)
    })
    @PostMapping("/leaderTitle")
    public FebsResponse leaderTitle(@RequestBody ApiLeaderTitleDto apiLeaderTitleDto) {
        return iApiMallTeamLeaderService.leaderTitle(apiLeaderTitleDto);
    }
 
 
}