rk
2 天以前 996b2f16afaa271ce8aad6abf6858aa5db503eb3
server/web/src/main/java/com/doumee/api/web/ShopInfoApi.java
@@ -2,6 +2,8 @@
import com.doumee.core.annotation.LoginRequired;
import com.doumee.core.annotation.LoginShopRequired;
import com.doumee.core.annotation.trace.Trace;
import com.doumee.config.jwt.JwtTokenUtil;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
@@ -13,6 +15,7 @@
import com.doumee.dao.vo.ShopDetailVO;
import com.doumee.dao.vo.ShopCenterVO;
import com.doumee.dao.vo.ShopNearbyVO;
import com.doumee.dao.vo.ShopSalesStatsVO;
import com.doumee.dao.vo.ShopWebDetailVO;
import com.doumee.dao.vo.PayResponse;
import com.doumee.service.business.OrdersService;
@@ -30,7 +33,7 @@
 * @author rk
 * @date 2026/04/10
 */
@Api(tags = "门店入驻")
@Api(tags = "门店业务接口")
@RestController
@RequestMapping("/web/shopInfo")
public class ShopInfoApi extends ApiController {
@@ -57,6 +60,7 @@
        return ApiResponse.success(shopInfoService.getMyShop(this.getMemberId()));
    }
    @ApiOperation("附近门店分页列表")
    @PostMapping("/nearby")
    public ApiResponse<PageData<ShopNearbyVO>> nearby(@RequestBody @Validated PageWrap<ShopNearbyDTO> pageWrap) {
@@ -80,6 +84,27 @@
    }
    @LoginShopRequired
    @ApiOperation("门店端查询门店详情")
    @GetMapping("/shopDetail")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "门店token值", required = true)
    })
    public ApiResponse<ShopDetailVO> shopDetail() {
        return ApiResponse.success("查询成功", shopInfoService.getShopDetail(getShopId()));
    }
    @LoginShopRequired
    @ApiOperation("门店销售统计")
    @GetMapping("/salesStats")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "门店token值", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "period", value = "统计周期:0=今日, 1=本月, 2=上月", required = true)
    })
    public ApiResponse<ShopSalesStatsVO> salesStats(@RequestParam Integer period) {
        return ApiResponse.success("查询成功", shopInfoService.getShopSalesStats(getShopId(), period));
    }
    @LoginShopRequired
    @ApiOperation("维护门店信息(支付押金后)")
    @PostMapping("/maintain")
    public ApiResponse maintain(@RequestBody ShopInfoMaintainDTO dto) {
@@ -91,17 +116,30 @@
    @ApiOperation("查询门店维护信息")
    @PostMapping("/maintainInfo")
    public ApiResponse<ShopInfoMaintainDTO> maintainInfo() {
        return ApiResponse.success(shopInfoService.getShopMaintainInfo(this.getMemberId()));
        return ApiResponse.success(shopInfoService.getShopMaintainInfo(this.getShopId()));
    }
    @LoginShopRequired
    @LoginRequired
    @ApiOperation("门店支付押金")
    @PostMapping("/payDeposit")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "门店token值", required = true)
    })
    public ApiResponse<PayResponse> payDeposit() {
        return ApiResponse.success("操作成功", ordersService.payShopDeposit(getShopId()));
        return ApiResponse.success("操作成功", ordersService.payShopDeposit(getMemberId()));
    }
    @LoginShopRequired
    @Trace
    @ApiOperation(value = "门店修改密码", notes = "新密码必须同时包含字母和数字,修改成功后需重新登录")
    @PostMapping("/changePassword")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "门店token值", required = true),
    })
    public ApiResponse changePassword(@RequestParam String newPassword) {
        String token = this.getRequest().getHeader(JwtTokenUtil.HEADER_KEY);
        shopInfoService.changePassword(this.getShopId(), newPassword, token);
        return ApiResponse.success("密码修改成功,请重新登录");
    }
}