| | |
| | | package com.doumee.api.web; |
| | | |
| | | import com.doumee.core.annotation.LoginDriverRequired; |
| | | import com.doumee.core.annotation.LoginRequired; |
| | | import com.doumee.core.annotation.LoginShopRequired; |
| | | import com.doumee.core.annotation.trace.Trace; |
| | |
| | | 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; |
| | |
| | | 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) |
| | |
| | | @Autowired |
| | | private RevenueService revenueService; |
| | | |
| | | @LoginRequired |
| | | @Autowired |
| | | private ShopInfoService shopInfoService; |
| | | |
| | | @LoginDriverRequired |
| | | @ApiOperation(value = "司机流水分页", notes = "小程序端") |
| | | @PostMapping("/driverPage") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | }) |
| | | public ApiResponse<PageData<Revenue>> driverPage(@RequestBody @Validated PageWrap<RevenueQueryDTO> pageWrap) { |
| | | return ApiResponse.success("查询成功", revenueService.findDriverRevenuePage(pageWrap, getMemberId())); |
| | | return ApiResponse.success("查询成功", revenueService.findDriverRevenuePage(pageWrap, getDriverId())); |
| | | } |
| | | |
| | | @LoginRequired |
| | | @LoginDriverRequired |
| | | @ApiOperation(value = "司机流水收支统计", notes = "根据查询条件统计收入与支出") |
| | | @PostMapping("/driverSummary") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), |
| | | }) |
| | | public ApiResponse<RevenueSummaryVO> driverSummary(@RequestBody RevenueQueryDTO queryDTO) { |
| | | return ApiResponse.success("查询成功", revenueService.getDriverRevenueSummary(queryDTO, getMemberId())); |
| | | return ApiResponse.success("查询成功", revenueService.getDriverRevenueSummary(queryDTO, getDriverId())); |
| | | } |
| | | |
| | | @LoginShopRequired |
| | |
| | | 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("领取成功"); |
| | | } |
| | | |
| | | } |