public async Task <IActionResult> createOrder(OrderForCreationDTO orderDTO, int custId) { Console.WriteLine(orderDTO.OrderItems[0]); // valdiate customer var customer = await _custRepo.getCustomer(orderDTO.CustomerId); if (customer != null) { var prodToSave = _mapper.Map <Order>(orderDTO); // TODO : create custom model state to check products var IsValid = valdidateItems(prodToSave.OrderItems); if (IsValid.Result == false) { return(BadRequest("Products were invalid")); } prodToSave.OrderDate = DateTime.Now; _repo.add(prodToSave); if (await _repo.SaveAll()) { return(Ok(prodToSave)); } } return(BadRequest()); }
public async Task <IActionResult> CreateOrder([FromBody] OrderForCreationDTO order) { if (order is null) { logger.LogError("Order object sent from client is null"); return(BadRequest("Order object is null")); } repository.Order.CreateOrder(mapper.Map <OrderForCreationDTO, Order>(order)); await repository.SaveAsync(); logger.LogInfo("Order succesfully created"); return(Ok()); }