Files
FrameTour-BE/src/main/java/com/ycwl/basic/controller/mobile/AppOrderController.java
2025-01-05 16:28:22 +08:00

83 lines
3.1 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.ycwl.basic.controller.mobile;
import com.github.pagehelper.PageInfo;
import com.ycwl.basic.biz.OrderBiz;
import com.ycwl.basic.constant.BaseContextHandler;
import com.ycwl.basic.model.jwt.JwtInfo;
import com.ycwl.basic.model.mobile.goods.GoodsPriceQueryReq;
import com.ycwl.basic.model.mobile.order.IsBuyRespVO;
import com.ycwl.basic.model.mobile.order.OrderAppPageReq;
import com.ycwl.basic.model.mobile.order.RefundOrderReq;
import com.ycwl.basic.model.pc.order.req.CreateOrderReqVO;
import com.ycwl.basic.model.pc.order.req.OrderAddReq;
import com.ycwl.basic.model.pc.order.resp.OrderAppRespVO;
import com.ycwl.basic.model.wx.WxPayRespVO;
import com.ycwl.basic.repository.OrderRepository;
import com.ycwl.basic.service.mobile.GoodsService;
import com.ycwl.basic.service.pc.OrderService;
import com.ycwl.basic.utils.ApiResponse;
import com.ycwl.basic.utils.JwtTokenUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @Authorlongbinbin
* @Date2024/12/4 17:16
*/
@RestController
@RequestMapping("/api/mobile/order/v1")
@Api(tags = "订单相关接口")
public class AppOrderController {
@Autowired
private OrderService orderService;
@Autowired
private OrderRepository orderRepository;
@Autowired
private OrderBiz orderBiz;
@ApiOperation("用户端订单列表查询")
@PostMapping("/page")
public ApiResponse<PageInfo<OrderAppRespVO>> pageQuery(@RequestBody OrderAppPageReq orderReqQuery) {
String userId = BaseContextHandler.getUserId();
orderReqQuery.setMemberId(Long.valueOf(userId));
return orderService.appPageQuery(orderReqQuery);
}
@ApiOperation("用户端订单详情查询")
@GetMapping("getOrderDetails/{id}")
public ApiResponse<OrderAppRespVO> getOrderDetails(@PathVariable("id") Long id) {
return orderService.appDetail(id);
}
@ApiOperation("用户端订单新增")
@PostMapping("/addOrder")
public ApiResponse<WxPayRespVO> addOrder(@RequestBody CreateOrderReqVO orderAddReq) throws Exception {
JwtInfo worker = JwtTokenUtil.getWorker();
return orderService.createOrder(worker.getUserId(), orderAddReq);
}
@ApiOperation("获取用户订单数量")
@GetMapping("/getUserOrderCount")
public ApiResponse<Integer> getUserOrderCount() {
Long userId = Long.parseLong(BaseContextHandler.getUserId());
return orderService.getOrderCountByUserId(userId);
}
@ApiOperation(value = "发起退款", notes = "发起退款")
@PostMapping("/refundOrder")
public ApiResponse<?> refundOrder(@RequestBody RefundOrderReq refundOrderReq) {
return orderService.refundOrder(refundOrderReq);
}
@GetMapping("/scenic/{scenicId}/query")
public ApiResponse<IsBuyRespVO> isBuy(@PathVariable("scenicId") Long scenicId, @RequestParam("type") Integer type, @RequestParam("goodsId") Long goodsId) {
Long userId = Long.parseLong(BaseContextHandler.getUserId());
return ApiResponse.success(orderBiz.isBuy(userId, type, goodsId));
}
}