public IActionResult GetInvoice(int id) { var order = OrdersRepo.Get(id); var invoice = InvoiceGenerator.GenerateInvoice(order, FeeRepository.Get()); return(new FileContentResult(Encoding.UTF8.GetBytes(invoice), InvoiceGenerator.MediaType)); }
private async Task <OrderEntity> GetOrderForBuyerToPayOrThrow(CreateCheckoutRequestModel model) { if (!ModelState.IsValid) { throw new KnownException("Invalid request model!"); } EnsureBuyerProfile(); OrdersRepo.ChainQueryable(q => q.Include(o => o.Buyer)); var order = await OrdersRepo.GetOne(model.OrderId); if (order == null) { throw new KnownException("Comanda nu a fost găsită!"); } if (order.Buyer != CurrentBuyerProfile) { throw new KnownException("Nu poți plăti această comandă deoarece nu îți aparține!"); } if (order.State == OrderState.Paid || order.State == OrderState.WaitingProcessing) { throw new KnownException("Această comandă este deja plătită!"); } return(order); }
public void DeleteOrder_Valid() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); #endregion #region ACT var taskReturn = testController.DeleteOrder(1); taskReturn.Wait(); var result = taskReturn.Result.Value; var testData = testRepo.SelectById(1).Result; #endregion #region ASSERT Assert.AreEqual(result.Id, 1); Assert.AreEqual(result.CustomerId, 1); Assert.AreEqual(result.NetPrice, 29.99M); Assert.IsTrue(result.isCompleted); Assert.IsNull(testData); #endregion }
public void DeleteOrder_Invalid() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); #endregion #region ACT var taskReturn = testController.DeleteOrder(0); taskReturn.Wait(); var result = taskReturn.Result.Result; var testData = testRepo.SelectById(1).Result; #endregion #region ASSERT Assert.IsTrue(result is NotFoundResult); Assert.AreEqual((result as NotFoundResult).StatusCode, 404); Assert.IsNotNull(testData); Assert.AreEqual(testData.Id, 1); Assert.AreEqual(testData.CustomerId, 1); Assert.AreEqual(testData.NetPrice, 29.99M); Assert.IsTrue(testData.isCompleted); #endregion }
public void GetOrderByID_Valid() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); #endregion #region ACT var taskReturn = testController.GetOrders(1); taskReturn.Wait(); var result = taskReturn.Result.Value; #endregion #region ASSERT Assert.AreEqual(result.Id, 1); Assert.AreEqual(result.CustomerId, 1); Assert.AreEqual(result.NetPrice, 29.99M); Assert.IsTrue(result.isCompleted); #endregion }
public async Task <IActionResult> PlaceOrder([FromBody] IList <CartItemViewModel> cart) { EnsureBuyerProfile(); var order = await TransposeCartToOrder(cart); order = await OrdersRepo.Add(order); return(Ok(Mapper.Map <OrderViewModel>(order))); }
public override void OnActionExecuting(ActionExecutingContext context) { base.OnActionExecuting(context); ProductsRepo.ChainQueryable(q => q.Include(p => p.Seller)); OrdersRepo.ChainQueryable(q => q .Include(o => o.Buyer) .Include(o => o.Products) .ThenInclude(p => p.Product.Seller.Address) .Include(o => o.Products) .ThenInclude(p => p.Product.Categories) .ThenInclude(c => c.Category.Parent) ); }
public void GetOrderDetails() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); #endregion #region ACT var taskReturn = testController.GetOrders(); taskReturn.Wait(); var result = taskReturn.Result.Value; List <Orders> testList = new List <Orders>(result); #endregion #region ASSERT Assert.AreEqual(testList.Count, 5); Assert.AreEqual(testList[0].Id, 1); Assert.AreEqual(testList[0].CustomerId, 1); Assert.AreEqual(testList[0].NetPrice, 29.99M); Assert.IsTrue(testList[0].isCompleted); Assert.AreEqual(testList[1].Id, 2); Assert.AreEqual(testList[1].CustomerId, 1); Assert.AreEqual(testList[1].NetPrice, 49.99M); Assert.IsFalse(testList[1].isCompleted); Assert.AreEqual(testList[2].Id, 3); Assert.AreEqual(testList[2].CustomerId, 2); Assert.AreEqual(testList[2].NetPrice, 9.99M); Assert.IsTrue(testList[2].isCompleted); Assert.AreEqual(testList[3].Id, 4); Assert.AreEqual(testList[3].CustomerId, 3); Assert.AreEqual(testList[3].NetPrice, 19.99M); Assert.IsFalse(testList[3].isCompleted); Assert.AreEqual(testList[4].Id, 5); Assert.AreEqual(testList[4].CustomerId, 3); Assert.AreEqual(testList[4].NetPrice, 39.99M); Assert.IsFalse(testList[4].isCompleted); #endregion }
public void LoadAllTests() { OrdersRepo myOrder = new OrdersRepo(); DateTime myDate = new DateTime(2013, 06, 01); var orders = myOrder.LoadAll(myDate); Assert.AreEqual(2, orders.Count); Assert.AreEqual("Wise", orders[0].CustomerName); Assert.AreEqual(2, orders[1].OrderNum); Assert.AreEqual("MN", orders[1].State.StateAbbreviation); Assert.AreEqual("Wood", orders[0].Product.ProductType); Assert.AreEqual(20, orders[1].Area); Assert.AreEqual(1051.88, orders[0].TotalCost); }
public void PostOrder_Valid() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); Orders testData = new Orders() { Id = 6, CustomerId = 5, DeliveryAddress = "221 Baker Street", isCompleted = true, NetPrice = 99.99M, TimePlaced = DateTime.Now, }; #endregion #region ACT var taskReturn = testController.PostOrder(testData); taskReturn.Wait(); var result = taskReturn.Result.Result; Orders checkData = testRepo.SelectById(6).Result; #endregion #region ASSERT Assert.IsTrue(result is CreatedAtActionResult); Assert.AreEqual((result as CreatedAtActionResult).StatusCode, 201); Assert.AreEqual((result as CreatedAtActionResult).RouteValues["id"], 6); var testReturn = ((result as CreatedAtActionResult).Value as Orders); Assert.AreEqual(testReturn.Id, 6); Assert.AreEqual(testReturn.CustomerId, 5); Assert.AreEqual(testReturn.NetPrice, 99.99M); Assert.IsTrue(testReturn.isCompleted); Assert.AreEqual(checkData.Id, 6); Assert.AreEqual(checkData.CustomerId, 5); Assert.AreEqual(checkData.NetPrice, 99.99M); Assert.IsTrue(checkData.isCompleted); #endregion }
public async Task <IActionResult> GetOne([FromRoute][Required] string id) { if (await UserManager.IsInRoleAsync(CurrentUser, "Buyer")) { EnsureBuyerProfile(); OrdersRepo.ChainQueryable(q => q.Where(o => o.Buyer == CurrentBuyerProfile)); var order = await OrdersRepo.GetOne(id); if (order == null) { return(NotFound()); } return(Ok(Mapper.Map <OrderViewModel>(order))); } return(NotFound()); }
public async Task <IActionResult> GetOwn() { if (await UserManager.IsInRoleAsync(CurrentUser, "Buyer")) { EnsureBuyerProfile(); OrdersRepo.ChainQueryable(q => q.Where(o => o.Buyer == CurrentBuyerProfile)); } if (await UserManager.IsInRoleAsync(CurrentUser, "Seller")) { EnsureSellerProfile(); throw new KnownException("Can't filter orders for a seller yet."); } var orders = await OrdersRepo.GetAll(); return(Ok(Mapper.Map <IEnumerable <OrderViewModel> >(orders))); }
public async Task <IActionResult> CheckoutRedirect([FromQuery][Required] string checkout_id) { Console.WriteLine(Request.GetEncodedUrl()); if (string.IsNullOrEmpty(checkout_id)) { throw new KnownException("Invalid checkout_id"); } var order = await OrdersRepo.FindOne(o => o.WePayCheckoutId == checkout_id); if (order == null) { throw new KnownException("Nu am găsit o comandă asociată"); } var wePayRequestBody = new { checkout_id }; var wePayRequestBodyJson = new StringContent(JsonConvert.SerializeObject(wePayRequestBody), Encoding.UTF8, "application/json"); var response = await WePayHttpClient.PostAsync("https://stage.wepayapi.com/v2/checkout", wePayRequestBodyJson); var responseText = await response.Content.ReadAsStringAsync(); try { response.EnsureSuccessStatusCode(); var responseJson = JsonConvert.DeserializeObject <Dictionary <string, object> >(responseText); var state = responseJson["state"].ToString(); if (state == "released" || state == "authorized") { order.State = OrderState.Paid; await DataLayer.SaveChangesAsync(); await ProcessOrder(); } return(Ok(state)); } catch { throw; } return(Ok()); }
public void PutOrder_InvalidID() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); Orders testData = new Orders() { Id = 1, CustomerId = 1, isCompleted = false, NetPrice = 69.99M, }; #endregion #region ACT var taskReturn = testController.PutOrder(2, testData); taskReturn.Wait(); var result = taskReturn.Result; testData = null; testData = testRepo.SelectById(1).Result; #endregion #region ASSERT Assert.IsTrue(result is BadRequestResult); Assert.AreEqual((result as BadRequestResult).StatusCode, 400); Assert.AreEqual(testData.Id, 1); Assert.AreEqual(testData.CustomerId, 1); Assert.AreEqual(testData.NetPrice, 29.99M); Assert.IsTrue(testData.isCompleted); #endregion }
public void GetCheckMultipleOpenOrders_MultipleOpenOrders() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); #endregion #region ACT var taskReturn = testController.CheckMultOpenOrders(3); taskReturn.Wait(); var result = taskReturn.Result.Value; #endregion #region ASSERT Assert.AreEqual(result, 2); #endregion }
public void GetOrderByID_NonExistingID() { #region ASSIGN OrdersRepo testRepo = new OrdersRepo(); OrdersApiController testController = new OrdersApiController(testRepo); #endregion #region ACT var taskReturn = testController.GetOrders(0); taskReturn.Wait(); var result = taskReturn.Result.Result; #endregion #region ASSERT Assert.IsTrue(result is NotFoundResult); Assert.AreEqual((result as NotFoundResult).StatusCode, 404); #endregion }
public IEnumerable <OrderDto> Get() { return(OrdersRepo.Get(CustomersRepository.GetCurrentCustomer()).Select(o => o.ToOrderDto(FeeRepository.Get()))); }
public frmOrders() { InitializeComponent(); _objOrders = new OrdersRepo(); }
public OrdersController(OrdersRepo repository, UserRepo usersRepository, RubbishRepo rubbishRepository) { _ordersRepository = repository; _usersRepository = usersRepository; _rubbishRepository = rubbishRepository; }
public OrderController(OrdersRepo orderRepo) { _orderRepo = orderRepo; }
public OrdersController() { dBContext = new MongoConnect(); ordersCollection = dBContext.database.GetCollection <OrdersMod>("orders"); ordersRepo = new OrdersRepo(); }