rk
6 小时以前 c74a6f59490cfb9a0ee37f70427739b74e7fbd58
server/web/src/main/java/com/doumee/api/web/RevenueApi.java
@@ -9,8 +9,16 @@
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.Revenue;
import com.doumee.dao.dto.RevenueQueryDTO;
import com.doumee.dao.dto.ShopRevenueQueryDTO;
import com.doumee.dao.vo.LuggageTypeItem;
import com.doumee.dao.vo.RevenueSummaryVO;
import com.doumee.dao.vo.ShopKpiVO;
import com.doumee.dao.vo.DriverKpiVO;
import com.doumee.dao.vo.DriverOrderTrendVO;
import com.doumee.dao.vo.DriverRewardHallVO;
import com.doumee.dao.dto.ClaimRewardDTO;
import com.doumee.service.business.RevenueService;
import com.doumee.service.business.ShopInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -19,6 +27,9 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
@Api(tags = "交易流水")
@Trace(exclude = true)
@@ -29,6 +40,9 @@
    @Autowired
    private RevenueService revenueService;
    @Autowired
    private ShopInfoService shopInfoService;
    @LoginDriverRequired
    @ApiOperation(value = "司机流水分页", notes = "小程序端")
@@ -70,4 +84,65 @@
        return ApiResponse.success("查询成功", revenueService.getShopRevenueSummary(queryDTO, getShopId()));
    }
    @LoginShopRequired
    @ApiOperation("门店行李类型分布")
    @PostMapping("/shopLuggageType")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "门店token值", required = true),
    })
    public ApiResponse<List<LuggageTypeItem>> shopLuggageType(@RequestBody @Valid ShopRevenueQueryDTO query) {
        return ApiResponse.success("查询成功", shopInfoService.shopLuggageTypeList(getShopId(), query));
    }
    @LoginShopRequired
    @ApiOperation("门店核心业绩指标")
    @PostMapping("/shopKpi")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "门店token值", required = true),
    })
    public ApiResponse<ShopKpiVO> shopKpi(@RequestBody @Valid ShopRevenueQueryDTO query) {
        return ApiResponse.success("查询成功", shopInfoService.getShopKpi(getShopId(), query));
    }
    @LoginDriverRequired
    @ApiOperation("司机核心业绩指标")
    @PostMapping("/driverKpi")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<DriverKpiVO> driverKpi(@RequestBody @Valid ShopRevenueQueryDTO query) {
        return ApiResponse.success("查询成功", revenueService.getDriverKpi(getDriverId(), query));
    }
    @LoginDriverRequired
    @ApiOperation("司机近七日订单趋势")
    @PostMapping("/driverOrderTrend")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<List<DriverOrderTrendVO>> driverOrderTrend() {
        return ApiResponse.success("查询成功", revenueService.getDriverOrderTrend(getDriverId()));
    }
    @LoginDriverRequired
    @ApiOperation("司机奖励大厅")
    @PostMapping("/driverRewardHall")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<DriverRewardHallVO> driverRewardHall() {
        return ApiResponse.success("查询成功", revenueService.getDriverRewardHall(getDriverId()));
    }
    @LoginDriverRequired
    @ApiOperation("领取奖励金")
    @PostMapping("/claimReward")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<String> claimReward(@RequestBody @Valid ClaimRewardDTO dto) {
        revenueService.claimReward(getDriverId(), dto.getRewardRecordId());
        return ApiResponse.success("领取成功");
    }
}