package com.ruoyi.order.controller;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.order.api.model.TExchangeOrder;
import com.ruoyi.order.api.model.TShoppingOrder;
import com.ruoyi.order.dto.*;
import com.ruoyi.order.service.TShoppingOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
*
* 前端控制器
*
*
* @author xiaochen
* @since 2024-08-07
*/
@Api(tags = "购物订单")
@RestController
@RequestMapping("/t-shopping-order")
public class TShoppingOrderController {
@Resource
private TShoppingOrderService shoppingOrderService;
@GetMapping("/getMyShoppingOrderList")
@ApiOperation(value = "获取购买订单列表", tags = {"小程序-商城购买订单"})
public AjaxResult> getMyShoppingOrderList(GetMyShoppingOrderList query){
List list = shoppingOrderService.getMyShoppingOrderList(query);
return AjaxResult.success(list);
}
@GetMapping("/getMyShoppingOrderInfo/{id}")
@ApiOperation(value = "获取购买订单详情", tags = {"小程序-商城购买订单"})
public AjaxResult getMyShoppingOrderInfo(@PathVariable String id){
MyShoppingOrderInfo info = shoppingOrderService.getMyShoppingOrderInfo(id);
return AjaxResult.success(info);
}
@PutMapping("/confirmReceipt/{id}")
@ApiOperation(value = "确认收货操作", tags = {"小程序-商城购买订单"})
public AjaxResult confirmReceipt(@PathVariable String id){
TShoppingOrder shoppingOrder = shoppingOrderService.getById(id);
if(shoppingOrder.getStatus() == 3){
return AjaxResult.error("不能重复确认收货");
}
if(shoppingOrder.getStatus() == 1){
return AjaxResult.error("订单还未发货呢");
}
if(shoppingOrder.getStatus() == 4){
return AjaxResult.error("订单已取消,不允许操作。");
}
shoppingOrder.setStatus(3);
shoppingOrderService.updateById(shoppingOrder);
return AjaxResult.success();
}
@PutMapping("/cancelOrder/{id}")
@ApiOperation(value = "取消订单操作", tags = {"小程序-商城购买订单"})
public AjaxResult cancelOrder(@PathVariable String id){
return shoppingOrderService.cancelOrder(id);
}
@ResponseBody
@GetMapping(value = "/getNoInvoicedOrder")
@ApiOperation(value = "获取未开票的订单数据", tags = {"小程序-充电发票"})
public AjaxResult> getNoInvoicedOrder(GetNoInvoicedOrder query){
List list = shoppingOrderService.getNoInvoicedOrder(query);
return AjaxResult.success(list);
}
}