package cc.mrbird.febs.mall.controller.member;
|
|
import cc.mrbird.febs.common.entity.FebsResponse;
|
import cc.mrbird.febs.mall.dto.CommissionChangeDto;
|
import cc.mrbird.febs.mall.dto.sale.ApiSaleListInfoDto;
|
import cc.mrbird.febs.mall.dto.sale.ApiSaleRecordInfoDto;
|
import cc.mrbird.febs.mall.dto.sale.ApiTeamListInfoDto;
|
import cc.mrbird.febs.mall.service.ApiSaleService;
|
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
|
import cc.mrbird.febs.mall.vo.MallMemberVo;
|
import cc.mrbird.febs.mall.vo.sale.*;
|
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.*;
|
|
@Slf4j
|
@RestController
|
@Validated
|
@RequestMapping(value = "/api/sale")
|
@RequiredArgsConstructor
|
@Api(value = "ApiSaleController", tags = "365我的推广")
|
public class ApiSaleController {
|
|
private final ApiSaleService apiSaleService;
|
private final IApiMallMemberWalletService walletService;
|
|
@ApiOperation(value = "我的推广", notes = "我的推广")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiSaleInfoVo.class)
|
})
|
@GetMapping(value = "/saleInfo")
|
public FebsResponse saleInfo() {
|
|
return apiSaleService.saleInfo();
|
}
|
|
@ApiOperation(value = "我的团队(头部)", notes = "我的团队(头部)")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiTeamHeaderInfoVo.class)
|
})
|
@GetMapping(value = "/teamHeader")
|
public FebsResponse teamHeader() {
|
|
return apiSaleService.teamHeader();
|
}
|
|
@ApiOperation(value = "我的团队(团队明细)", notes = "我的团队(团队明细)")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiTeamListInfoVo.class)
|
})
|
@PostMapping(value = "/teamList")
|
public FebsResponse teamList(@RequestBody @Validated ApiTeamListInfoDto dto) {
|
|
return apiSaleService.teamList(dto);
|
}
|
|
@ApiOperation(value = "分销订单(头部)", notes = "分销订单(头部)")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiSaleHeaderInfoVo.class)
|
})
|
@GetMapping(value = "/saleHeader")
|
public FebsResponse saleHeader() {
|
|
return apiSaleService.saleHeader();
|
}
|
|
@ApiOperation(value = "分销订单(分销明细)", notes = "分销订单(分销明细)")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiSaleListInfoVo.class)
|
})
|
@PostMapping(value = "/saleList")
|
public FebsResponse saleList(@RequestBody @Validated ApiSaleListInfoDto dto) {
|
|
return apiSaleService.saleList(dto);
|
}
|
|
@ApiOperation(value = "等级说明", notes = "等级说明")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiLevelListInfoVo.class)
|
})
|
@PostMapping(value = "/levelInfoList")
|
public FebsResponse levelInfoList() {
|
|
return apiSaleService.levelInfoList();
|
}
|
|
@ApiOperation(value = "佣金排行榜", notes = "佣金排行榜")
|
@ApiResponses({
|
@ApiResponse(code = 200, message = "success", response = ApiSaleRecordInfoVo.class)
|
})
|
@PostMapping(value = "/saleRecord")
|
public FebsResponse saleRecord(@RequestBody @Validated ApiSaleRecordInfoDto dto) {
|
|
return apiSaleService.saleRecord(dto);
|
}
|
|
@ApiOperation(value = "佣金划转")
|
@PostMapping(value = "/commissionChange")
|
public FebsResponse commissionChange(@RequestBody @Validated CommissionChangeDto commissionChange) {
|
walletService.commissionChange(commissionChange);
|
return new FebsResponse().success();
|
}
|
}
|