using Apimanager_backend.Dtos; using Apimanager_backend.Models; using Apimanager_backend.Services; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; namespace Apimanager_backend.Controllers { [Route("api/[controller]/[action]")] [ApiController] public class OrderController:ControllerBase { private IOrderService _orderService; private ILogger _logger; public OrderController(IOrderService orderService,ILogger logger) { _orderService = orderService; _logger = logger; } //获取全部订单列表 [HttpGet] [Authorize(Roles = "Admin")] public async Task>>> GetOrders(int pageIndex,int pageSize,bool desc) { var orderList = await _orderService.GetOrdersAsync(pageIndex,pageSize,desc, null); var responseData = new ResponseBase>( code:1000, message:"Success", data:orderList ); return Ok(responseData); } //获取个人订单列表 [HttpGet] [Authorize(Roles = "User")] public async Task>>> GetMyOrders(int pageIndex,int pageSize,bool desc) { string userId = User.Claims.First(x => x.Type == "userId").Value; var orderList = await _orderService.GetOrdersAsync(pageIndex,pageSize,desc,int.Parse(userId)); var responseData = new ResponseBase>( code:1000, data:orderList, message:"Success" ); return Ok(responseData); } //获取订单数量 [HttpGet] [Authorize(Roles = "Admin")] public async Task>> GetOrderNum() { var num = await _orderService.GetOrderNumAsync(); var res = new ResponseBase(1000,"查询成功",num); return Ok(res); } [HttpGet] [Authorize(Roles = "User")] public async Task>> GetMyOrderNum() { string userId = User.Claims.First(x => x.Type == "userId").Value; var num = await _orderService.GetOrderNumAsync(int.Parse(userId)); var res = new ResponseBase(1000, "查询成功", num); return Ok(res); } } }