Exemplo n.º 1
0
        public AddDeliveryViewModel(DeliveryDTO delivery)
        {
            IsEdit      = true;
            ButtonLabel = "Edit";

            this.toEdit      = delivery;
            DeliveredItem    = delivery.DeliveredItem;
            ItemQuantity     = delivery.ItemQuantity;
            RecipientCompany = delivery.RecipientCompany;
            CityTown         = delivery.CityTown;
            PostalCode1      = delivery.PostalCode.Substring(0, 2);
            PostalCode2      = delivery.PostalCode.Substring(3, 3);
            StreetAddress    = delivery.StreetAddress;
            Weight           = delivery.Weight;
            Description      = delivery.Description;
            NotifyOfPropertyChange(() => DeliveredItem);
            NotifyOfPropertyChange(() => ItemQuantity);
            NotifyOfPropertyChange(() => RecipientCompany);
            NotifyOfPropertyChange(() => CityTown);
            NotifyOfPropertyChange(() => PostalCode1);
            NotifyOfPropertyChange(() => PostalCode2);
            NotifyOfPropertyChange(() => StreetAddress);
            NotifyOfPropertyChange(() => Weight);
            NotifyOfPropertyChange(() => Description);
        }
Exemplo n.º 2
0
        public ActionResult <DeliveryDTO> Edit([FromBody] DeliveryDTO deliveryDTO)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(UnprocessableEntity(ModelState));
                }

                Delivery delivery = _mapper.Map <Delivery>(_deliveryAppService.GetById(deliveryDTO.Id, this.User));

                if (delivery == null)
                {
                    return(NotFound());
                }

                var status = DeliveryStatus.Status.Where(x => x.ToString().Equals(deliveryDTO.Status));
                if (status != null)
                {
                    delivery.Status = deliveryDTO.Status;

                    _deliveryAppService.UpdateEntity(delivery);

                    return(new ObjectResult(deliveryDTO));
                }

                return(BadRequest());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }
Exemplo n.º 3
0
 public void Add()
 {
     if (IsEdit == true)
     {
         toEdit.DeliveredItem    = DeliveredItem;
         toEdit.ItemQuantity     = ItemQuantity;
         toEdit.RecipientCompany = RecipientCompany;
         toEdit.CityTown         = CityTown;
         toEdit.PostalCode       = string.Format("{0}-{1}", PostalCode1, PostalCode2);
         toEdit.StreetAddress    = StreetAddress;
         toEdit.Weight           = Weight;
         toEdit.Description      = Description;
         DeliveryService.Edit(toEdit);
     }
     else
     {
         var newDelivery = new DeliveryDTO();
         newDelivery.DeliveredItem    = DeliveredItem;
         newDelivery.ItemQuantity     = ItemQuantity;
         newDelivery.RecipientCompany = RecipientCompany;
         newDelivery.CityTown         = CityTown;
         newDelivery.PostalCode       = string.Format("{0}-{1}", PostalCode1, PostalCode2);
         newDelivery.StreetAddress    = StreetAddress;
         newDelivery.Weight           = Weight;
         newDelivery.Description      = Description;
         DeliveryService.Add(newDelivery);
     }
     TryClose();
 }
Exemplo n.º 4
0
        public static string Add(DeliveryDTO delivery)
        {
            using (WarehouseSystemContext db = new WarehouseSystemContext())
            {
                string   error       = null;
                Delivery newDelivery = new Delivery();
                newDelivery.Id               = delivery.Id;
                newDelivery.DeliveredItem    = delivery.DeliveredItem;
                newDelivery.ItemQuantity     = delivery.ItemQuantity;
                newDelivery.RecipientCompany = delivery.RecipientCompany;
                newDelivery.PostalCode       = delivery.PostalCode;
                newDelivery.CityTown         = delivery.CityTown;
                newDelivery.StreetAddress    = delivery.StreetAddress;
                newDelivery.Weight           = delivery.Weight;
                newDelivery.Description      = delivery.Description;

                var context = new ValidationContext(newDelivery, null, null);
                var result  = new List <ValidationResult>();
                Validator.TryValidateObject(newDelivery, context, result, true);

                foreach (var x in result)
                {
                    error = error + x.ErrorMessage + "\n";
                }

                if (error == null)
                {
                    db.Deliveries.Add(newDelivery);
                    db.SaveChanges();
                }
                return(error);
            }
        }
Exemplo n.º 5
0
        public static string Edit(DeliveryDTO delivery)
        {
            using (WarehouseSystemContext db = new WarehouseSystemContext())
            {
                string error = null;

                var toModify = db.Deliveries.Where(x => x.Id == delivery.Id).FirstOrDefault();

                toModify.Id               = delivery.Id;
                toModify.DeliveredItem    = delivery.DeliveredItem;
                toModify.RecipientCompany = delivery.RecipientCompany;
                toModify.ItemQuantity     = delivery.ItemQuantity;
                toModify.PostalCode       = delivery.PostalCode;
                toModify.CityTown         = delivery.CityTown;
                toModify.StreetAddress    = delivery.StreetAddress;
                toModify.Weight           = delivery.Weight;
                toModify.Description      = delivery.Description;

                var context = new ValidationContext(toModify, null, null);
                var result  = new List <ValidationResult>();
                Validator.TryValidateObject(toModify, context, result, true);

                foreach (var x in result)
                {
                    error = error + x.ErrorMessage + "\n";
                }

                if (error == null)
                {
                    db.SaveChanges();
                }
                return(error);
            }
        }
        /// <summary>
        /// Saves a new Delivery or updates an already existing Delivery.
        /// </summary>
        /// <param name="Delivery">Delivery to be saved or updated.</param>
        /// <param name="DeliveryId">DeliveryId of the Delivery creating or updating</param>
        /// <returns>DeliveryId</returns>
        public long SaveDelivery(DeliveryDTO deliveryDTO, string userId)
        {
            long deliveryId = 0;

            if (deliveryDTO.DeliveryId == 0)
            {
                var delivery = new Delivery()
                {
                    CustomerName         = deliveryDTO.CustomerName,
                    DeliveryCost         = deliveryDTO.DeliveryCost,
                    OrderId              = deliveryDTO.OrderId,
                    VehicleNumber        = deliveryDTO.VehicleNumber,
                    BranchId             = deliveryDTO.BranchId,
                    Location             = deliveryDTO.Location,
                    SectorId             = deliveryDTO.SectorId,
                    MediaId              = deliveryDTO.MediaId,
                    DriverNIN            = deliveryDTO.DriverNIN,
                    DriverName           = deliveryDTO.DriverName,
                    TransactionSubTypeId = deliveryDTO.TransactionSubTypeId,
                    CreatedOn            = DateTime.Now,
                    TimeStamp            = DateTime.Now,
                    CreatedBy            = userId,
                    Deleted              = false,
                };

                this.UnitOfWork.Get <Delivery>().AddNew(delivery);
                this.UnitOfWork.SaveChanges();
                deliveryId = delivery.DeliveryId;
                return(deliveryId);
            }

            else
            {
                var result = this.UnitOfWork.Get <Delivery>().AsQueryable()
                             .FirstOrDefault(e => e.DeliveryId == deliveryDTO.DeliveryId);
                if (result != null)
                {
                    result.DeliveryCost         = deliveryDTO.DeliveryCost;
                    result.CustomerName         = deliveryDTO.CustomerName;
                    result.OrderId              = deliveryDTO.OrderId;
                    result.TransactionSubTypeId = deliveryDTO.TransactionSubTypeId;
                    result.VehicleNumber        = deliveryDTO.VehicleNumber;
                    result.BranchId             = deliveryDTO.BranchId;
                    result.Location             = deliveryDTO.Location;
                    result.SectorId             = deliveryDTO.SectorId;
                    result.MediaId              = deliveryDTO.MediaId;
                    result.DriverName           = deliveryDTO.DriverName;
                    result.DriverNIN            = deliveryDTO.DriverNIN;
                    result.UpdatedBy            = userId;
                    result.TimeStamp            = DateTime.Now;
                    result.Deleted              = deliveryDTO.Deleted;
                    result.DeletedBy            = deliveryDTO.DeletedBy;
                    result.DeletedOn            = deliveryDTO.DeletedOn;

                    this.UnitOfWork.Get <Delivery>().Update(result);
                    this.UnitOfWork.SaveChanges();
                }
                return(deliveryDTO.DeliveryId);
            }
        }
        public async Task Cannot_add_Delivery_when_it_already_exists()
        {
            const string DELIVERY_ID     = "DL001";
            const string SITE_CODE       = "SITE001";
            const int    ORDER_REFERENCE = 1;
            const string STATUS          = "ON PROCESS";

            using (var context = new ProcurementDbContext(ContextOptions))
            {
                DeliveriesController deliveriesController = new DeliveriesController(context);

                DeliveryDTO deliveryDto = new DeliveryDTO {
                    DeliveryId = DELIVERY_ID, SiteCode = SITE_CODE, PurchaseOrder = ORDER_REFERENCE, DeliveryStatus = STATUS
                };

                try
                {
                    await deliveriesController.PostDelivery(deliveryDto);
                }
                catch (Exception exception)
                {
                    Assert.NotNull(exception);
                    return;
                }

                Assert.True(false);
            }
        }
Exemplo n.º 8
0
 public ActionResult Delivery(DeliveryVM model)
 {
     if (ModelState.IsValid)
     {
         DeliveryDTO delivery = new DeliveryDTO();
         delivery.PayType      = model.PayType;
         delivery.DeliveryType = model.DeliveryType;
         delivery.Wishes       = model.Wishes;
         if (model.Post != null && model.PostDepartment != null)
         {
             delivery.DeliveryAddress = model.Post + " | " + model.PostDepartment + " | " + model.DeliveryAddress;
         }
         else
         {
             delivery.DeliveryAddress = model.DeliveryAddress;
         }
         _clientService.MakeDelivery(model.OrderId, delivery);
         if (model.PayType == "Карта")
         {
             return(RedirectToAction("Pay", "Client", new { orderId = model.OrderId }));
         }
         else
         {
             return(RedirectToAction("Orders", "Client"));
         }
     }
     return(View());
 }
Exemplo n.º 9
0
        public ViewResult Checkout(Cart cart, DeliveryDTO deliveryDto)
        {
            if (cart.Lines.Count() == 0)
            {
                ModelState.AddModelError("", "Извините, ваша корзина пуста!");
            }

            if (ModelState.IsValid)
            {
                //todo: refactor
                var userId = User.Identity.GetUserId();
                var client = _clientLogic.Get(userId);

                foreach (var item in cart.Lines)
                {
                    var good = _goodLogic.Get(item.Good.Id);
                    if (good.Count >= item.Number)
                    {
                        good.Count     -= item.Number;
                        good.OrderItems = null;
                        _goodLogic.Edit(good);
                    }
                    else
                    {
                        return(View("GoodIsOver"));
                    }
                }

                _orderLogic.ProcessOrder(cart, deliveryDto, client);
                cart.Clear();

                return(View("Completed"));
            }
            return(View(deliveryDto));
        }
Exemplo n.º 10
0
        public void SaveDelivery(DeliveryDTO _delivery)
        {
            Mapper.CreateMap <DeliveryDTO, Delivery>();
            var delivery = Mapper.Map <DeliveryDTO, Delivery>(_delivery);

            _unitOfWork.DeliveryRepository.Create(delivery);
            _unitOfWork.Save();
        }
        public void LoadModifyDeliveryPage(DeliveryDTO client)
        {
            IWindowManager       manager = new WindowManager();
            AddDeliveryViewModel modify  = new AddDeliveryViewModel(client);

            manager.ShowDialog(modify, null, null);
            Reload();
        }
 public Task ActivateAsync(object parameter)
 {
     _currentDelivery      = (DeliveryDTO)parameter;
     DeliveryLabel.Content = "Order number: " + _currentDelivery.DeliveryNumber;
     DateLabel.Content     = "Order Date: " + _currentDelivery.DeliveryDate;
     TotalLabel.Content    = _currentDelivery.StringTotal;
     UpdateDataGrid();
     return(Task.CompletedTask);
 }
Exemplo n.º 13
0
 public ActionResult Edit(DeliveryDTO delivery)
 {
     if (ModelState.IsValid)
     {
         deliveryService.AddOrUpdate(delivery);
         return(RedirectToAction("IndexHtmlAction"));
     }
     return(View("Edit"));
 }
Exemplo n.º 14
0
        public static void Delete(DeliveryDTO delivery)
        {
            using (WarehouseSystemContext db = new WarehouseSystemContext())
            {
                var toDelete = db.Deliveries.Where(x => x.Id == delivery.Id).FirstOrDefault();
                toDelete.IsDisabled = true;

                db.SaveChanges();
            }
        }
Exemplo n.º 15
0
        public async Task <IActionResult> UpdateDeliveryAsync([FromBody] DeliveryDTO deliveryDTO)
        {
            var query  = new UpdateDeliveryCommand(deliveryDTO);
            var result = await _meadiator.Send(query);

            return(result == true ? (IActionResult)Ok(result) : BadRequest(result));
            //var delivery = _mapper.Map<Delivery>(deliveryDTO);
            //var res = await _deliveryService.UpdateDeliveryAysnc(delivery);
            //return res == true ? (IActionResult) Ok(res) : BadRequest(res);
        }
        public void Delete(DeliveryDTO client)
        {
            IWindowManager manager = new WindowManager();

            // DeleteConfirmationViewModel modify = new DeleteConfirmationViewModel();
            // bool? showDialogResult = manager.ShowDialog(modify, null, null);
            // if (showDialogResult != null && showDialogResult == true)
            // {
            DeliveryService.Delete(client);
            // }
            Reload();
        }
Exemplo n.º 17
0
        /// <summary>
        /// Create a Food Delivery in Corrals. Data will be stores in Tables ODLN and DLN1 frin SAP B1
        /// </summary>
        public static ResultDTO CreateDelivery(DeliveryDTO deliveryDTO)
        {
            var result = new ResultDTO();
            var lObjDistributionDAO = new DistributionDAO();

            try {
                SAPbobsCOM.Documents lObjDocDelivery = (SAPbobsCOM.Documents)DIApplication.Company.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oDeliveryNotes); //ODLN}

                var task = Task.Run(() => {
                    lObjDocDelivery.CardCode = deliveryDTO.CardCode;
                    lObjDocDelivery.CardName = deliveryDTO.CardName;
                    lObjDocDelivery.UserFields.Fields.Item("U_GLO_BusinessPartner").Value = deliveryDTO.CardCode;
                    lObjDocDelivery.DocDate = deliveryDTO.DocDate;
                    lObjDocDelivery.Series  = deliveryDTO.Series;
                });

                var task2 = Task.Factory.StartNew(() => {
                    foreach (var docLine in deliveryDTO.DocLines)  //DLN
                    {
                        lObjDocDelivery.Lines.ItemCode        = docLine.ItemCode;
                        lObjDocDelivery.Lines.ItemDescription = docLine.Dscription;
                        lObjDocDelivery.Lines.Quantity        = docLine.Quantity;
                        lObjDocDelivery.Lines.WarehouseCode   = docLine.WhsCode;
                        lObjDocDelivery.Lines.UserFields.Fields.Item("U_GLO_BagsBales").Value = docLine.BagsBales;
                        lObjDocDelivery.Lines.UserFields.Fields.Item("U_GLO_Corral").Value    = docLine.Corral;
                        lObjDocDelivery.Lines.CostingCode = docLine.Area;
                        lObjDocDelivery.Lines.Price       = docLine.Price;
                        lObjDocDelivery.Lines.Add();
                    }
                });

                Task.WaitAll(task, task2);

                if (lObjDocDelivery.Add() != 0)
                {
                    LogService.WriteError("DeliveryDI (CreateDocument) " + DIApplication.Company.GetLastErrorDescription());

                    result.Message = DIApplication.Company.GetLastErrorDescription();
                    result.Success = false;
                    return(result);
                }
            }
            catch (Exception ex) {
                LogService.WriteError(String.Format("{0}: {1}, {2}", "DeliveryDI(Exception)", ex.Message, ex.StackTrace));
                result.Success = false;
                result.Message = ex.Message;
                return(result);
            }

            result.Message = "La Entrega se realizó con éxito";
            result.Success = true;
            return(result);
        }
Exemplo n.º 18
0
 public ActionResult Delete(int id)
 {
     try
     {
         DeliveryDTO delivery = deliveryService.Get(id);
         deliveryService.Delete(delivery);
         return(Json("OK"));
     }
     catch
     {
         return(Json("Error"));
     }
 }
Exemplo n.º 19
0
        public DeliveryDTO Export()
        {
            var model = new DeliveryDTO()
            {
                LocationFrom      = this.LocationFrom.Export(),
                LocationTo        = this.LocationTo.Export(),
                Cost              = this.Cost,
                EstimatedDelivery = this.EstimatedDelivery.ToString(),
                Confirmed         = this.Confirmed,
                Delivered         = this.Delivered,
            };

            return(model);
        }
Exemplo n.º 20
0
        public void CreateDelivery(DeliveryDTO o)
        {
            Delivery d = new Delivery
            {
                deliveryId  = o.deliveryId,
                totalPrice  = o.totalPrice,
                paymentType = o.paymentType,
                fullName    = o.fullName,
                address     = o.address,
            };

            this.Database.Deliveries.Create(d);
            this.Database.Save();
        }
Exemplo n.º 21
0
        public static Delivery Parse(DeliveryDTO input)
        {
            var model = new Delivery()
            {
                LocationFrom      = Location.Parse(input.LocationFrom),
                LocationTo        = Location.Parse(input.LocationTo),
                Cost              = input.Cost,
                EstimatedDelivery = DateTime.Parse(input.EstimatedDelivery),
                Confirmed         = input.Confirmed,
                Delivered         = input.Delivered
            };

            return(model);
        }
Exemplo n.º 22
0
        public void ProcessOrder(Cart cart, DeliveryDTO deliveryDto)
        {
            var orderItemsDto = cart.Lines;
            var orderItems    = Mapper.Map <IEnumerable <OrderItemDTO>, IEnumerable <OrderItem> >(orderItemsDto);

            var order = new Order();

            order.OrderItems   = orderItems;
            order.DateCreation = DateTime.Now;
            order.DateSale     = DateTime.Now;
            //order.User
            //order.Status;

            _repository.Add(order);
        }
Exemplo n.º 23
0
        public void Add()
        {
            var newDelivery = new DeliveryDTO();

            newDelivery.DeliveredItem    = DeliveredItem;
            newDelivery.ItemQuantity     = ItemQuantity;
            newDelivery.RecipientCompany = RecipientCompany;
            newDelivery.CityTown         = CityTown;
            newDelivery.PostalCode       = string.Format("{0}-{1}", PostalCode1, PostalCode2);
            newDelivery.StreetAddress    = StreetAddress;
            newDelivery.Weight           = Weight;
            newDelivery.Description      = Description;
            DeliveryService.Add(newDelivery);
            TryClose();
        }
        public async Task <ActionResult <Delivery> > PostDelivery(DeliveryDTO deliveryDTO)
        {
            PurchaseOrder purchaseOrder = _context.PurchaseOrders.Include(e => e.Supplier).FirstOrDefault(e => e.OrderReference == deliveryDTO.PurchaseOrder);
            Site          site          = _context.Sites.FirstOrDefault(e => e.SiteCode == deliveryDTO.SiteCode);

            Delivery delivery = new Delivery
            {
                DeliveryId     = deliveryDTO.DeliveryId,
                DeliveryMethod = deliveryDTO.DeliveryMethod,
                OnSiteDelivery = true,
                DeliveryStatus = deliveryDTO.DeliveryStatus,
                PayableAmount  = purchaseOrder.TotalCost,
                IsFullDelivery = true,
                PurchaseOrder  = purchaseOrder,
                Site           = site
            };

            GoodsReceipt goodsReceipt = new GoodsReceipt
            {
                PurchaseOrder = purchaseOrder,
                Supplier      = purchaseOrder.Supplier,
                Site          = purchaseOrder.Site,
                Delivery      = delivery,
                DateDelivered = DateTime.UtcNow
            };

            _context.Deliveries.Add(delivery);
            _context.GoodsReceipt.Add(goodsReceipt);

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (DeliveryExists(delivery.DeliveryId))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetDelivery", new { id = delivery.DeliveryId }, delivery));
        }
Exemplo n.º 25
0
        public OperationDetails SetDelivery(DeliveryDTO delivery, int orderId)
        {
            if (delivery == null)
            {
                return(new OperationDetails(false, "Не удалось найти объект", this.ToString()));
            }
            Order order = Database.Orders.Get(orderId);

            if (order == null)
            {
                return(new OperationDetails(false, "Не удалось найти объект", this.ToString()));
            }
            order.Delivery = _mappers.ToDelivery.Map <DeliveryDTO, Delivery>(delivery);
            Database.Orders.Update(order);
            Database.Save();
            return(new OperationDetails(true, "Доставка была успешно оформлена", this.ToString()));
        }
Exemplo n.º 26
0
        public OperationDetails MakeDelivery(int orderId, DeliveryDTO model)
        {
            if (orderId == 0 || model == null)
            {
                return(new OperationDetails(false, "Не удалось найти объект", this.ToString()));
            }
            Delivery delivery = _mappers.ToDelivery.Map <DeliveryDTO, Delivery>(model);
            Order    order    = Database.Orders.Get(orderId);

            if (order == null || delivery == null)
            {
                return(new OperationDetails(false, "Не удалось найти объект", this.ToString()));
            }
            order.Delivery = delivery;
            Database.Orders.Update(order);
            Database.Save();
            return(new OperationDetails(true, "Доставка была успешно оформена", this.ToString()));
        }
Exemplo n.º 27
0
        public async Task <double> CalculateDeliveryCostAndCountAsync(int cartId, double costPerDelivery, double costPerProduct, double fixedCost)
        {
            Cart cart = new Cart(_cartEFService, _mapper, _productEFService, _categoryEFService);
            IList <CartDetailDTO> cartDetailDTOs = await cart.GetCartDetailsAsync(cartId);

            int    numberOfDeliveries = cartDetailDTOs.Select(async cd => (await _productEFService.GetProductAsync(cd.ProductId)).CategoryId).Distinct().Count();
            double deliveryCost       = (costPerDelivery * numberOfDeliveries) + (costPerProduct * cartDetailDTOs.Select(cd => cd.ProductId).Distinct().Count()) + fixedCost;

            deliveryCost = Math.Round(deliveryCost, 2);
            DeliveryDTO deliveryDTO = new DeliveryDTO()
            {
                CartId = cartId,
                Cost   = deliveryCost
            };
            await _deliveryEFService.AddDeliveryAsync(_mapper.Map <DeliveryModel>(deliveryDTO));

            return(deliveryCost);
        }
Exemplo n.º 28
0
        public ActionResult <DeliveryDTO> GetById(long id)
        {
            try
            {
                DeliveryDTO deliveryDTO = _mapper.Map <DeliveryDTO>(_deliveryAppService.GetById(id, this.User));

                if (deliveryDTO == null)
                {
                    return(NotFound());
                }

                return(Ok(deliveryDTO));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }
Exemplo n.º 29
0
        public ActionResult CheckoutPay(DeliveryModel deliveryModel)
        {
            deliveryModel.deliveryId = this.orderService.FindMaxIdDelivery() + 1;
            var delDto = new DeliveryDTO(deliveryModel.deliveryId, deliveryModel.totalPrice, deliveryModel.paymentType, deliveryModel.fullName, deliveryModel.address);

            this.orderService.CreateDelivery(delDto);
            int user_session = int.Parse(Session["User_ID"].ToString());
            IEnumerable <OrderDTO> orders = this.orderService.GetAllOrders().Where(e => e.payed == false &&
                                                                                   e.userId == user_session);

            foreach (var item in orders)
            {
                orderService.Dispose(item.orderId);
                int next_id = this.orderService.FindMaxId() + 1;
                orderService.CreateOrder(new OrderDTO(next_id, user_session, item.productId, item.quantity, true));
            }
            return(this.RedirectToAction("History"));
        }
        public Tuple <string, string> CreateCounterparty(DeliveryDTO SelDelivery)
        {
            Tuple <string, string> tuple = new Tuple <string, string>("", "");

            string[] fullName = SelDelivery.CustomerName.Split(' ');

            try
            {
                var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://api.novaposhta.ua/v2.0/json/");
                httpWebRequest.ContentType = "application/json";
                httpWebRequest.Method      = "POST";

                using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
                {
                    string json = "{\"apiKey\": \"" + $"{config.ApiKeyNP}" + "\"," +
                                  "\"modelName\": \"Counterparty\"," +
                                  "\"calledMethod\": \"save\"," +
                                  "\"methodProperties\": {" +
                                  "\"FirstName\": \"" + $"{fullName[1]}" + "\"," +
                                  "\"MiddleName\": \"" + $"{fullName[2]}" + "\"," +
                                  "\"LastName\": \"" + $"{fullName[0]}" + "\"," +
                                  "\"Phone\": \"" + $"{SelDelivery.CustomerPhone}" + "\"," +
                                  "\"Email\": \"\"," +
                                  "\"CounterpartyType\": \"PrivatePerson\"," +
                                  "\"CounterpartyProperty\": \"Recipient\"" +
                                  "}" +
                                  "}";

                    streamWriter.Write(json);
                }

                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    var     str              = streamReader.ReadToEnd();
                    JObject search           = JObject.Parse(str);
                    string  refCounterparty  = (string)search["data"][0]["Ref"];
                    string  refContactPerson = (string)search["data"][0]["ContactPerson"]["data"][0]["Ref"];
                    tuple = new Tuple <string, string>(refCounterparty, refContactPerson);
                }
            }
            catch (Exception ex) { }
            return(tuple);
        }