package com.doumee.api.web; import com.doumee.config.annotation.LoginRequired; import com.doumee.config.annotation.LoginShopRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Shop; import com.doumee.dao.business.model.WithdrawRecord; import com.doumee.dao.web.dto.shop.*; import com.doumee.dao.web.request.WithdrawApplyRequest; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.web.bind.annotation.*; import java.util.List; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2023/3/23 17:33 */ @Api(tags = "商户门面信息业务") @Trace(exclude = true) @RestController @RequestMapping("/web/shop") @Slf4j public class ShopApi extends ApiController{ /** * 获取店铺门面信息 * @param shopId * @return */ @ApiOperation(value = "获取店铺门面信息", notes = "小程序端") @GetMapping("/shopFaceDetailDTO") public ApiResponse getShopFaceDetailDTO(@RequestParam Integer shopId){ return ApiResponse.success(shopService.getShopFaceDetailDTO(shopId,getMemberId())); } /** * 推荐商铺列表 * @param pageWrap * @return */ @ApiOperation(value = "获取店铺门面信息", notes = "小程序端") @GetMapping("/findShopPage") public ApiResponse> getShopSimpleDTOList(@RequestParam PageWrap pageWrap){ return ApiResponse.success(shopService.getShopSimpleDTOList(pageWrap)); } /** * 查询店铺统计信息 * @param shopId * @return */ @ApiOperation(value = "查询店铺统计信息", notes = "小程序端") @GetMapping("/getShopDataStatisticsDTO") public ApiResponse getShopDataStatisticsDTO(@RequestParam Integer shopId){ return ApiResponse.success(shopService.getShopDataStatisticsDTO(shopId)); } /** * 支持维护店铺信息 * @param shopDTO */ @ApiOperation(value = "支持维护店铺信息", notes = "小程序端") @PostMapping("/update") public ApiResponse update(@RequestBody ShopDTO shopDTO){ Integer memberId = getMemberId(); shopService.update(shopDTO,memberId); return ApiResponse.success(null); } @LoginRequired @ApiOperation(value = "用户下单查询可选择的自提经销商", notes = "小程序端") @PostMapping("/getShopList") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse getShopList(@RequestBody ShopListDTO dto){ return ApiResponse.success(shopService.getShopList(dto)); } @LoginShopRequired @ApiOperation(value = "提现申请 - 经销商", notes = "小程序端") @PostMapping("/withdrawApply") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse withdrawApply(@RequestBody WithdrawApplyRequest request){ request.setMemberId(getShopId()); withdrawRecordService.withdrawApply(request,integralService); return ApiResponse.success("操作成功"); } @LoginShopRequired @ApiOperation("查询提现申请详情") @GetMapping("/withdrawDetail") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse withdrawDetail(@RequestParam Integer id) { return ApiResponse.success(withdrawRecordService.findById(id)); } }