Exemple #1
0
        public void ReadAllDeliveriesWithMessageDetail()
        {
            Deliveries deliveries = new Deliveries(Login);

            StartTimer("Reading all Deliveries");
            deliveryFilter filter   = GetDeliveryDateFilter();
            readDeliveries doptions = new readDeliveries()
            {
                includeContent = false
            };
            List <deliveryObject> list = ReadDeliveriesInternal(deliveries, filter, doptions);

            Console.WriteLine(EndTimer().ToString());
            Console.WriteLine("{0} deliveries read", list.Count);
            if (list.Count > 0)
            {
                Messages messages = new Messages(Login);

                foreach (var item in list) // get message details for each delivery
                {
                    messageFilter msgFilter = new messageFilter()
                    {
                        id = new string[] { item.messageId }
                    };
                    readMessages moptions = new readMessages()
                    {
                        includeContent = true
                    };
                    List <messageObject> message = messages.Read(msgFilter, moptions);
                    WriteDeliveryAndMessageToConsole(item, message.FirstOrDefault());
                }
            }
        }
Exemple #2
0
        public async Task <IActionResult> PutDeliveries([FromRoute] int id, [FromBody] Deliveries deliveries)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != deliveries.DeliveryId)
            {
                return(BadRequest());
            }

            _context.Entry(deliveries).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DeliveriesExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        private void OnButtonDeleteClick(object sender, EventArgs e)
        {
            if (lvDeliveries.SelectedItems.Count != 1)
            {
                MessageBox.Show("Please select one delivery.", Constant.StoreAppName);
                return;
            }

            if (MessageBox.Show("Are you sure you want to delete this delivery?", Constant.StoreAppName, MessageBoxButtons.YesNo)
                != DialogResult.Yes)
            {
                return;
            }

            Deliveries delivery = (Deliveries)lvDeliveries.SelectedItems[0].Tag;

            if (delivery.DeliveryItems.Count != 0)
            {
                _unitOfWork.DeliveryItems.RemoveRange(delivery.DeliveryItems);
            }

            _unitOfWork.Deliveries.Remove(delivery);
            int entriesWritten = _unitOfWork.Complete();

            if (entriesWritten == 0)
            {
                MessageBox.Show("There was a problem deleting the product.", Constant.StoreAppName);
                return;
            }

            lvDeliveries.SelectedItems[0].Remove();
        }
        private void OnButtonUpdateClick(object sender, EventArgs e)
        {
            if (lvDeliveries.SelectedItems.Count != 1)
            {
                MessageBox.Show("Please select one delivery.", Constant.StoreAppName);
                return;
            }

            Deliveries delivery = (Deliveries)lvDeliveries.SelectedItems[0].Tag;

            UnitOfWork unitOfWork = new UnitOfWork(new StoreAppDBEntities());

            delivery = unitOfWork.Deliveries.Get(delivery.DeliveryId);

            var dialog = new FormDeliveryDialog(delivery, unitOfWork);

            DialogResult result = dialog.ShowDialog();

            if (result != DialogResult.OK)
            {
                return;
            }

            int entriesWritten = unitOfWork.Complete();

            if (entriesWritten == 0)
            {
                MessageBox.Show("There was a problem updating the delivery.", Constant.StoreAppName);
                return;
            }

            UpdateListView(delivery, ListViewAction.Update, lvDeliveries.SelectedItems[0].Index);
        }
        public async Task <IActionResult> Edit(int id, [Bind("DeliveryID,OurRef,SupplierRef,WarehouseRef,Season,TotalGarments,TotalHangers,TotalBoxes,NetAmount,DeliveryCharge,Commission,VATAmount,GrossAmount,DeliveryDate,Notes,Invoice,Shipper,ShipperInvoice,CreatedBy,CreatedDate")] Deliveries deliveries)
        {
            if (id != deliveries.DeliveryID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(deliveries);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DeliveriesExists(deliveries.DeliveryID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(deliveries));
        }
Exemple #6
0
 public void DetermineInitialDeparture()
 {
     if (Deliveries.Count > 0)
     {
         InitialDeparture = Deliveries.First().DepartureTime;
     }
 }
Exemple #7
0
 private void LoadData()
 {
     Clients.LoadClients();
     Products.LoadProducts();
     Deliveries.LoadDeliveries();
     Invoices.LoadInvoices();
     LoadCompany();
 }
        public ActionResult DeleteConfirmed(int id)
        {
            Deliveries deliveries = db.Deliveries.Find(id);

            db.Deliveries.Remove(deliveries);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #9
0
 public void Add(Consignment item)
 {
     Deliveries.Add(item);
     if (item is IValuable)
     {
         Valuables.Add((item as IValuable));
     }
 }
Exemple #10
0
 public ShowDeliveryWindow(int index)
 {
     InitializeComponent();
     Index    = index;
     Delivery = Deliveries.GetDelivery(index);
     ListViewDeliveryList.ItemsSource = Delivery.DeliveryList;
     StackPanelInfos.DataContext      = Delivery;
     StackPanelInfos2.DataContext     = Delivery;
 }
Exemple #11
0
        public void AddDelivery(Delivery delivery)
        {
            if (Deliveries == null)
            {
                Deliveries = new List <Delivery>();
            }

            Deliveries.Add(delivery);
            Refresh();
        }
Exemple #12
0
 public static bool RemoveDelivery(int deliveryID)
 {
     using (sklepEntities db = new sklepEntities())
     {
         Deliveries delivery = db.Deliveries.Where(x => x.DeliveryID == deliveryID).Single();
         db.Deliveries.Remove(delivery);
         db.SaveChanges();
         return(true);
     }
 }
Exemple #13
0
        public FormDeliveryDialog(Deliveries delivery, UnitOfWork unitOfWork)
        {
            _delivery   = delivery;
            _unitOfWork = unitOfWork;

            InitializeComponent();
            InitializeDialog();
            InitializeComboBox();
            InitializeListView();
        }
 public ActionResult Edit([Bind(Include = "Id,Date,Num_Delivery")] Deliveries deliveries)
 {
     if (ModelState.IsValid)
     {
         db.Entry(deliveries).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(deliveries));
 }
Exemple #15
0
        public void CompleteBatch(bool partial = false)
        {
            if (Deliveries.Any(d => d.Status != DeliveryStatus.Delivered && d.Status != DeliveryStatus.Rejected))
            {
                throw SheaftException.Validation("La tournée contient des livraisons en cours.");
            }

            CompletedOn = DateTimeOffset.UtcNow;
            Status      = partial ? DeliveryBatchStatus.Partial : DeliveryBatchStatus.Completed;
        }
        public frmAddEditDeliveries(Deliveries oldValue, MethodType methodType)
        {
            InitializeComponent();
            this.Icon = Resources.maintenance.ToIcon();



            this.oldValue   = oldValue;
            this.methodType = methodType;
        }
Exemple #17
0
        private void ButtonDelete_Click(object sender, RoutedEventArgs e)
        {
            var result = MessageBox.Show("Czy na pewno?", "Usuwanie", MessageBoxButton.OKCancel);

            if (result == MessageBoxResult.OK)
            {
                Deliveries.DeleteDelivery(Index);
                Close();
                MessageBox.Show("Pomyślnie usunięto dostawę", "Sukces!");
            }
        }
        public ActionResult Create([Bind(Include = "Id,Date,Num_Delivery")] Deliveries deliveries)
        {
            if (ModelState.IsValid)
            {
                db.Deliveries.Add(deliveries);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(deliveries));
        }
        public async Task <IActionResult> Create([Bind("DeliveryID,OurRef,SupplierRef,WarehouseRef,Season,TotalGarments,TotalHangers,TotalBoxes,NetAmount,DeliveryCharge,Commission,VATAmount,GrossAmount,DeliveryDate,Notes,Invoice,Shipper,ShipperInvoice,CreatedBy,CreatedDate")] Deliveries deliveries)
        {
            if (ModelState.IsValid)
            {
                _context.Add(deliveries);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(deliveries));
        }
Exemple #20
0
        private void SaveBtn_Click(object sender, RoutedEventArgs e)
        {
            if (deliver == null)
            {
                deliver = new Deliveries();

                if (CompanyNameTb.Text == "" || ProductTb.Text == "" || DeparturDateTb.Text == "" || ReceivingDateTb.Text == "" || StatusCb.Text == "")
                {
                    MessageBox.Show("Все поля должны быть заполненны!");
                    return;
                }

                deliver.CompanyName   = CompanyNameTb.Text;
                deliver.Product       = ProductTb.Text;
                deliver.DepartureDate = DeparturDateTb.SelectedDate.Value;
                deliver.ReceivingDate = ReceivingDateTb.SelectedDate.Value;
                deliver.Status        = StatusCb.Text;

                database.Deliveries.Add(deliver);
                try
                {
                    database.SaveChanges();
                    this.DialogResult = true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            else
            {
                if (CompanyNameTb.Text == "" || ProductTb.Text == "" || DeparturDateTb.Text == "" || ReceivingDateTb.Text == "" || StatusCb.Text == "")
                {
                    MessageBox.Show("Все поля должны быть заполненны!");
                    return;
                }

                deliver.CompanyName   = CompanyNameTb.Text;
                deliver.Product       = ProductTb.Text;
                deliver.DepartureDate = DeparturDateTb.SelectedDate.Value;
                deliver.ReceivingDate = ReceivingDateTb.SelectedDate.Value;
                deliver.Status        = StatusCb.Text;

                try
                {
                    database.SaveChanges();
                    this.DialogResult = true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
Exemple #21
0
        public DeliveryInfo calculateFor(CartProducts carts)
        {
            List <Carts>        cartItems        = new List <Carts>();
            List <Products>     productItems     = new List <Products>();
            List <Categories>   categoryItems    = new List <Categories>();
            List <CartProducts> cartProductItems = new List <CartProducts>();


            double costForDelivery        = 5.99; //anlaşmalı kargo teslimatı birim fiyatı
            double fixedCost              = 2.99; // sabit fiyat
            double calculatedDeliveryCost = 0.0;

            cartProductItems = _cartProductDAL.GetList();
            cartItems        = _cartDAL.GetList();
            productItems     = _productDAL.GetList();
            categoryItems    = _categoryDAL.GetList();

            var itemsInCart = //sepetteki ürünler ve kategorileri
                              from CartProduct in cartProductItems
                              join Cart in cartItems on CartProduct.CartId equals Cart.Id
                              join Product in productItems on CartProduct.ProductId equals Product.Id


                              select new { Cart.Id, CartProduct.ProductId, Product.CategoryId, Product.Price };

            var thisCartItem = itemsInCart.Where(x => x.Id == carts.CartId).ToList();                                                            // bu sepetteki ürünlerin

            var numberOfProduct  = itemsInCart.Where(x => x.Id == carts.CartId).ToList().Distinct().Select(p => p.ProductId).Count();            // sepette kaç farklı ürün var
            var numberOfDelivery = itemsInCart.Where(x => x.ProductId == carts.ProductId).ToList().Distinct().Select(c => c.CategoryId).Count(); // sepette kaç farklı ürün kategorisi var


            for (int i = 0; i < numberOfProduct; i++)
            {
                var costPerProduct = itemsInCart.Where(x => x.ProductId == carts.ProductId).ToList().Distinct().Select(p => p.Price).FirstOrDefault(); // sepetteki her bir ürünün birim fiyatı
                calculatedDeliveryCost = (costForDelivery * numberOfDelivery) + (Convert.ToDouble(costPerProduct) * numberOfProduct) + fixedCost;      // teslimat tutarının hesaplanması

                Deliveries delivery = new Deliveries()
                {
                    CartId          = itemsInCart.Select(c => c.Id).FirstOrDefault(),
                    CostPerDelivery = costForDelivery,
                    CostPerProduct  = Convert.ToDouble(costPerProduct),
                    FixedCost       = fixedCost
                };

                _deliveryDAL.Add(delivery); // teslimatın eklenmesi
            }
            DeliveryInfo deliveryInfo = new DeliveryInfo()
            {
                Info  = "Kargo Teslimat Tutarı",
                Price = calculatedDeliveryCost
            };

            return(deliveryInfo);
        }
Exemple #22
0
        public void AddDelivery(House house, List <Ingredient> pizza)
        {
            house.OnPizzaOrdered(pizza);
            Deliveries.Add(house);
            TotalNumDeliveries++;

            foreach (Ingredient ingredient in pizza)
            {
                //Debug.WriteLine(" Ingredient Pos On Grid = {0} ", ingredient.GetPositionOnGrid());
                DeliveryIngredientPositions.Add(ingredient.GetPositionOnGrid());
            }
        }
Exemple #23
0
 public static bool EditDelivery(DeliveriesViewModel delivery)
 {
     using (sklepEntities db = new sklepEntities())
     {
         Deliveries deliveryDB = db.Deliveries.Where(x => x.DeliveryID == delivery.DeliveryID).Single();
         deliveryDB.Name   = delivery.Name;
         deliveryDB.PriceN = delivery.PriceN;
         deliveryDB.Vat    = delivery.VAT;
         db.SaveChanges();
         return(true);
     }
 }
Exemple #24
0
        public async Task <IActionResult> PostDeliveries([FromBody] Deliveries deliveries)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Deliveries.Add(deliveries);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetDeliveries", new { id = deliveries.DeliveryId }, deliveries));
        }
Exemple #25
0
 internal void Refresh()
 {
     DeliveriesCount          = Deliveries.Count;
     ReturnablesCount         = Deliveries.Sum(d => d.ReturnablesCount);
     ProductsToDeliverCount   = Deliveries.Sum(d => d.ProductsToDeliverCount);
     PurchaseOrdersCount      = Deliveries.Sum(d => d.PurchaseOrdersCount);
     BrokenProductsCount      = Deliveries.Sum(d => d.BrokenProductsCount);
     MissingProductsCount     = Deliveries.Sum(d => d.MissingProductsCount);
     ImproperProductsCount    = Deliveries.Sum(d => d.ImproperProductsCount);
     ExcessProductsCount      = Deliveries.Sum(d => d.ExcessProductsCount);
     ReturnedReturnablesCount = Deliveries.Sum(d => d.ReturnedReturnablesCount);
     ProductsDeliveredCount   = Deliveries.Sum(d => d.ProductsDeliveredCount);
 }
Exemple #26
0
 public static bool AddDelivery(DeliveriesViewModel delivery)
 {
     using (sklepEntities db = new sklepEntities())
     {
         Deliveries deliveryDB = new Deliveries();
         deliveryDB.Name   = delivery.Name;
         deliveryDB.PriceN = delivery.PriceN;
         deliveryDB.Vat    = delivery.VAT;
         db.Deliveries.Add(deliveryDB);
         db.SaveChanges();
         return(true);
     }
 }
Exemple #27
0
 public static DeliveriesViewModel GetDetailsDelivery(int deliveryID)
 {
     using (sklepEntities db = new sklepEntities())
     {
         Deliveries          deliveryDB = db.Deliveries.Where(x => x.DeliveryID == deliveryID).Single();
         DeliveriesViewModel delivery   = new DeliveriesViewModel(
             deliveryDB.DeliveryID,
             deliveryDB.Name,
             deliveryDB.PriceN,
             deliveryDB.Vat,
             decimal.Round(((1 + deliveryDB.Vat) * deliveryDB.PriceN), 2, MidpointRounding.AwayFromZero));
         return(delivery);
     }
 }
        // GET: Deliveries/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Deliveries deliveries = db.Deliveries.Find(id);

            if (deliveries == null)
            {
                return(HttpNotFound());
            }
            return(View(deliveries));
        }
Exemple #29
0
        public void SetDeliveries(IEnumerable <Tuple <DeliveryMode, DateTimeOffset, string> > orderDeliveries)
        {
            if (Deliveries == null || Deliveries.Any())
            {
                Deliveries = new List <OrderDelivery>();
            }

            foreach (var orderDelivery in orderDeliveries)
            {
                Deliveries.Add(new OrderDelivery(orderDelivery.Item1, orderDelivery.Item2, orderDelivery.Item3));
            }

            DeliveryFeesWholeSalePrice = 0;
            DeliveryFeesVatPrice       = 0;
            DeliveryFeesOnSalePrice    = 0;

            foreach (var delivery in Deliveries)
            {
                var deliveryMode = delivery.DeliveryMode;

                if (deliveryMode.AcceptPurchaseOrdersWithAmountGreaterThan.HasValue &&
                    deliveryMode.AcceptPurchaseOrdersWithAmountGreaterThan.Value >
                    (TotalProductWholeSalePrice + TotalReturnableWholeSalePrice))
                {
                    throw SheaftException.Validation(
                              $"Le montant de la commande pour {deliveryMode.Producer.Name} est inférieur au palier de {deliveryMode.AcceptPurchaseOrdersWithAmountGreaterThan.Value}€ fixé par le producteur.");
                }

                if (deliveryMode.ApplyDeliveryFeesWhen is DeliveryFeesApplication.Always)
                {
                    DeliveryFeesWholeSalePrice += deliveryMode.DeliveryFeesWholeSalePrice ?? 0;
                    DeliveryFeesVatPrice       += deliveryMode.DeliveryFeesVatPrice ?? 0;
                    DeliveryFeesOnSalePrice    += deliveryMode.DeliveryFeesOnSalePrice ?? 0;
                }

                if (deliveryMode.ApplyDeliveryFeesWhen is DeliveryFeesApplication.TotalLowerThanPurchaseOrderAmount &&
                    deliveryMode.DeliveryFeesMinPurchaseOrdersAmount.HasValue &&
                    deliveryMode.DeliveryFeesMinPurchaseOrdersAmount.Value >
                    (TotalProductWholeSalePrice + TotalReturnableWholeSalePrice))
                {
                    DeliveryFeesWholeSalePrice += deliveryMode.DeliveryFeesWholeSalePrice ?? 0;
                    DeliveryFeesVatPrice       += deliveryMode.DeliveryFeesVatPrice ?? 0;
                    DeliveryFeesOnSalePrice    += deliveryMode.DeliveryFeesOnSalePrice ?? 0;
                }
            }

            DeliveriesCount = Deliveries?.Count ?? 0;
            RefreshOrder();
        }
Exemple #30
0
        public void RemoveDelivery(Delivery delivery)
        {
            if (Deliveries == null)
            {
                throw SheaftException.NotFound("Cette tournée ne contient pas de livraisons.");
            }

            Deliveries.Remove(delivery);
            Refresh();

            if (DeliveriesCount < 1)
            {
                Status = DeliveryBatchStatus.Cancelled;
            }
        }