public async Task Excute(RegisterDeliveryInput _input) { if (_input == null) { _outputHandler.Error("Input is null."); return; } var delivery = new Delivery() { OrderId = _input.OrderId, DriverId = _input.DriverId, StartPlace = _input.StartPlace, FinishPlace = _input.FinishPlace }; await _parcelRepository.SetWeight(_input.OrderId, _input.Weight); await _deliveryRepository.AddDelivery(delivery); var order = _orderRepository.GetOrderById(_input.OrderId); var driver = _driverRepository.GetDriverById(_input.DriverId); var deliveryOutput = new RegisterDeliveryOutput(order.Result, driver.Result, _input.StartPlace, _input.FinishPlace); _outputHandler.Standard(deliveryOutput); }
public IActionResult PostDelivery([FromBody] DeliveryForOperationsDto deli, int accountId = -1) { if (deli is null) { return(BadRequest()); } if (!_arepo.AuthorizeUser(accountId, Permission.EditInventoryDetail)) { return(Unauthorized()); } var(isValid, errors) = deli.Validate(); if (!isValid) { return(BadRequest(errors)); } foreach (var item in deli.Shipments) { (isValid, errors) = item.Validate(); if (!isValid) { return(BadRequest(errors)); } (isValid, errors) = item.ProductDetail.Validate(); if (!isValid) { return(BadRequest(errors)); } if (_prepo.ProductDetailExists(item.ProductDetail.BarCode)) { return(new StatusCodeResult(StatusCodes.Status409Conflict)); } } var deliToPost = Mapper.Map <Delivery>(deli); return(_repo.AddDelivery(deliToPost) ? new StatusCodeResult(StatusCodes.Status201Created) : new StatusCodeResult(StatusCodes.Status500InternalServerError)); }
public ActionResult FinalizeOrder(OrderModel orderdetails) //Finalizowanie zamówienia. { cart = (Cart)Session["cart"]; //Przypisanie koszyka użytkownika. bool AnyValueIsNull = orderdetails.DeliveryDetails.GetType().GetProperties().All(p => p.GetValue(orderdetails.DeliveryDetails) != null); //Sprawdza czy wszystkie dane adresowe zostały uzupełnione. if (cart.Products.Count() != 0 && AnyValueIsNull == false) //Jeżeli koszyk nie jest pusty i wszystkie dane adresowe zostały uzupełnione. { int id = ordersRepository.Orders.Select(x => x.Delivery_ID).DefaultIfEmpty().Max() + 1; //ID nowego zamówienia. int user_id = (int)Session["ID_User"]; //Przypisanie ID użytkownika. ordersRepository.AddOrder(user_id, cart.ComputeTotalValue()); //Dodanie nowego zamówienia. foreach (var item in cart.Products) //Dla każdego produktu w koszyku. { orderDetails = new OrderDetails //Nowy szczegół zamówienia. { Order_ID = id, Product_ID = item.ProductID, User_ID = user_id, Quantity = item.Quantity, Category = item.Category }; productRepository.SellProduct(orderDetails); //Usuwanie przedmiotu z magazynu. orderDetailsRepository.AddOrderDetail(orderDetails); //Dodanie nowego szczegółu zamówienia. } deliveryRepository.AddDelivery(orderdetails.DeliveryDetails); //Dodanie danych adresowych zamówienia. Session["cart"] = new Cart(); //Wyczyszczenie koszyka. return(View("Success")); //Wygenerowanie widoku potwierdzającego złożenie zamówienia. } else if (AnyValueIsNull == true) //Jeżeli nie wszystkie wartości zostały uzupełnione. { orderdetails.Cart = cart; //Przypisanie wartości do modelu return(View(orderdetails)); //Wygenerowanie widoku z przekazaniem modelu. } else { return(RedirectToAction("Index", "Home")); //W każdym innym przypadku. } }
public HttpResponseMessage Post([FromBody] DeliveryModel deliveryModel) { try { //if (string.IsNullOrEmpty(deliveryModel.DeliveryMasterData.delivery_date)) //{ // var formatter = RequestFormat.JsonFormaterString(); // return Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Delivery Date Empty !!" }, formatter); //} if (string.IsNullOrEmpty(deliveryModel.DeliveryMasterData.party_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Please Select Party !!" }, formatter)); } if (string.IsNullOrEmpty(deliveryModel.DeliveryMasterData.requisition_master_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Please Select Requisition No !!" }, formatter)); } if (string.IsNullOrEmpty(deliveryModel.DeliveryMasterData.from_warehouse_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Please Select From Warehouse !!" }, formatter)); } if (string.IsNullOrEmpty(deliveryModel.DeliveryMasterData.to_warehouse_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Please Select To Warehouse !!" }, formatter)); } //if (string.IsNullOrEmpty(deliveryModel.DeliveryMasterData.lot_no)) //{ // var formatter = RequestFormat.JsonFormaterString(); // return Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Lot No Empty !!" }, formatter); //} else { var x = deliveryRepository.AddDelivery(deliveryModel); if (x == 1) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "success", msg = "Delivery save successfully" }, formatter)); } else if (x == 0) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "IMEI Already Delivered !!!" }, formatter)); } else if (x == 3) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "IMEI Scan For Wrong Product Or Color !!!" }, formatter)); } else { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "IMEI Not Found !!!" }, formatter)); } } } catch (Exception ex) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = ex.ToString() }, formatter)); } }