rk
8 小时以前 c6675b55023dff3c4f441ab0bb9493198949126e
server/dmmall_web/src/main/java/com/doumee/api/web/mall/OrderApi.java
@@ -3,8 +3,10 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.doumee.api.web.ApiController;
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.core.utils.kuaidi100.DeliveryDTO;
import com.doumee.core.utils.kuaidi100.ExpressUtils;
@@ -14,22 +16,24 @@
import com.doumee.dao.business.model.MemberCoupon;
import com.doumee.dao.business.model.Shop;
import com.doumee.dao.web.dto.CouponDTO;
import com.doumee.dao.web.request.OrderPayRequest;
import com.doumee.dao.web.request.PageRequest;
import com.doumee.dao.web.request.PayDetailRequest;
import com.doumee.dao.web.request.*;
import com.doumee.dao.web.request.goods.DealOrderRequest;
import com.doumee.dao.web.request.goods.MemberOrderRequest;
import com.doumee.dao.web.request.goods.OrderCommentRequest;
import com.doumee.dao.web.response.MemberCouponResponse;
import com.doumee.dao.web.response.MyPageResponse;
import com.doumee.dao.web.response.OrderCommentResponse;
import com.doumee.dao.web.response.OrderDetailResponse;
import com.doumee.dao.web.response.goods.MemberOrderResponse;
import com.doumee.dao.web.response.goods.PayResponse;
import com.doumee.service.business.HotCityService;
import com.doumee.service.business.impl.MemberCouponServiceImpl;
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.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@@ -86,12 +90,25 @@
            @ApiImplicitParam(paramType = "query", dataType = "Long", name = "current", value = "页码", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Long", name = "size", value = "每页记录数", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "couponType", value = "优惠券类别:0商家优惠券 1平台优惠券", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "limitPrice", value = "满额", required = false)
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "limitPrice", value = "满额", required = false),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "status", value = "状态:0=未使用;1=已使用;2=已过期", required = false)
    })
    public ApiResponse<IPage<CouponDTO>> memberCouponPage(PageRequest pageable, Integer couponType, BigDecimal limitPrice) {
        IPage<CouponDTO> page = memberCouponService.memberCouponPage(pageable.toPage(),limitPrice,getMemberId(),couponType);
    public ApiResponse<IPage<MemberCouponResponse>> memberCouponPage(PageRequest pageable, Integer couponType, BigDecimal limitPrice, Integer status) {
        IPage<MemberCouponResponse> page = memberCouponService.memberCouponPage(pageable.toPage(),limitPrice,getMemberId(),couponType,status);
        return ApiResponse.success("查询成功",page);
    }
    @LoginRequired
    @ApiOperation("会员优惠券详情")
    @GetMapping("/memberCouponDetail")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "主键", required = true)
    })
    public ApiResponse<MemberCouponResponse> memberCouponDetail(Integer id) {
        return ApiResponse.success("查询成功",memberCouponService.getMemberCouponDetail(id));
    }
//    @LoginRequired
//    @ApiOperation("可用优惠券数量")
@@ -117,16 +134,16 @@
        return ApiResponse.success("查询成功", memberCouponService.getApplyCoupon(requestList,getMemberId()));
    }
    @LoginRequired
    @ApiOperation("经销商列表")
    @PostMapping("/shopPage")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<IPage<Shop>> shopPage(@RequestBody PageWrap<Shop> pageWrap) {
        IPage<Shop> page = goodsorderService.getShopPage(pageWrap);
        return ApiResponse.success("查询成功",page);
    }
//    @LoginRequired
//    @ApiOperation("经销商列表")
//    @PostMapping("/shopPage")
//    @ApiImplicitParams({
//            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
//    })
//    public ApiResponse<IPage<Shop>> shopPage(@RequestBody PageWrap<Shop> pageWrap) {
//        IPage<Shop> page = goodsorderService.getShopPage(pageWrap);
//        return ApiResponse.success("查询成功",page);
//    }
    @LoginRequired
    @ApiOperation("订单支付")
@@ -134,9 +151,9 @@
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
    })
    public ApiResponse<PayResponse> orderPay(@Valid @RequestBody  OrderPayRequest orderPayRequest) {
        orderPayRequest.setMemberId(getMemberId());
        return ApiResponse.success("操作成功", goodsorderService.orderPay(orderPayRequest));
    public ApiResponse<PayResponse> orderPay(@Valid @RequestBody  ShopOrderPayRequest request) {
        request.setMemberId(getMemberId());
        return ApiResponse.success("操作成功", goodsorderService.orderPay(request, memberCouponServiceImpl));
    }
    @LoginRequired
@@ -161,7 +178,7 @@
    }
    @LoginRequired
    @ApiOperation("我的订单列表")
    @ApiOperation("订单列表")
    @PostMapping("/orderPage")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
@@ -191,7 +208,7 @@
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse cancelOrder(@RequestBody DealOrderRequest dealOrderRequest) {
        goodsorderService.cancelOrder(dealOrderRequest.getOrderId(),getMemberId(),dealOrderRequest.getCancelInfo());
        goodsorderService.cancelOrderNew(dealOrderRequest.getOrderId(),getMemberId(),dealOrderRequest.getCancelInfo());
        return ApiResponse.success("操作成功");
    }
@@ -216,6 +233,30 @@
        goodsorderService.affirmOrder(dealOrderRequest.getOrderId(),getMemberId());
        return ApiResponse.success("操作成功");
    }
    @LoginRequired
    @ApiOperation("订单核销")
    @PostMapping("/writeOffOrder")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse writeOffOrder(@RequestBody DealOrderRequest dealOrderRequest) {
        goodsorderService.orderWriteOff(dealOrderRequest.getExchangeCode(),getMemberId());
        return ApiResponse.success("操作成功");
    }
    @LoginRequired
    @ApiOperation("订单删除")
    @PostMapping("/delOrder")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse delOrder(@RequestBody DealOrderRequest dealOrderRequest) {
        goodsorderService.delOrder(dealOrderRequest.getOrderId(),getMemberId());
        return ApiResponse.success("操作成功");
    }
    @LoginRequired
@@ -254,4 +295,30 @@
        return ApiResponse.success("操作成功",deliveryDTO);
    }
    @LoginShopRequired
    @ApiOperation("经销商订单列表")
    @PostMapping("/shopOrderPage")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<PageData<Goodsorder>> shopOrderPage(@RequestBody PageWrap<ShopOrderRequest> pageWrap) {
        pageWrap.getModel().setShopId(getShopId());
        PageData<Goodsorder> page = goodsorderService.shopOrderPage(pageWrap);
        return ApiResponse.success("查询成功",page);
    }
    @LoginShopRequired
    @ApiOperation("订单详情 - 经销商")
    @GetMapping("/shopOrderDetail")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "orderId", value = "订单主键", required = true),
    })
    public ApiResponse<MemberOrderResponse> shopOrderDetail(@RequestParam Integer orderId) {
        return ApiResponse.success("查询成功", goodsorderService.getGoodsOrderDetail(orderId));
    }
}