Example #1
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            DamagedGood Selected = ((DamagedGood)damagedGrid.SelectedItem);

            if (Selected != null)
            {
                if (!Selected.IsRepaired)
                {
                    Selected.IsRepaired = true;
                    Item replaced = _context.Items.FirstOrDefault(i => i.Id == Selected.ItemId);
                    replaced.Quantity += Selected.Quantity;
                    _context.Entry(replaced).State = System.Data.Entity.EntityState.Modified;
                    _context.Entry(Selected).State = System.Data.Entity.EntityState.Modified;
                    _context.SaveChanges();
                }
            }
        }
Example #2
0
        private void ReturnBtn_Click(object sender, RoutedEventArgs e)
        {
            var    OneIte            = RetQuantity.SelectedItem;
            Rental OneRent           = ((Rental)OneIte);
            Item   OneItem           = OneRent.Item;
            int    RequestedQuantity = Convert.ToInt32(OneRent.Quantity);

            if (OneItem != null)
            {
                int Quantity = OneItem.RentedQuantity;
                Quantity -= RequestedQuantity;
                if (Quantity >= 0)
                {
                    OneItem.RentedQuantity        = Quantity;
                    OneRent.ReturnDate            = DateTime.Now.Date;
                    _context.Entry(OneRent).State = System.Data.Entity.EntityState.Modified;
                    _context.SaveChanges();
                    OneRent.Returned = true;
                    TimeSpan timespan   = OneRent.ReturnDate - OneRent.RentedDate;
                    double   daysRented = timespan.TotalDays;
                    double   RentMoney  = 0;
                    if (daysRented == 0)
                    {
                        RentMoney = (daysRented) * OneItem.DailyPayment;
                        if (Damaged.IsChecked.GetValueOrDefault())
                        {
                            damageFee = 0;
                            int type = DamageType.SelectedIndex;
                            if (type == 0)
                            {
                                damageFee = OneItem.SmallDamageFee;
                                DamagedGood damagedGood = new DamagedGood();
                                damagedGood.ItemId      = OneItem.Id;
                                damagedGood.RepairType  = "Slight damage";
                                damagedGood.Quantity    = RequestedQuantity;
                                damagedGood.Description = Description.Text.ToString();
                                _context.DamagedGoods.Add(damagedGood);
                                _context.SaveChanges();
                            }
                            else if (type == 1)
                            {
                                damageFee = OneItem.DamageFee;
                                DamagedGood damagedGood = new DamagedGood();
                                damagedGood.ItemId      = OneItem.Id;
                                damagedGood.RepairType  = "Moderate damage";
                                damagedGood.Quantity    = RequestedQuantity;
                                damagedGood.Description = Description.Text.ToString();
                                _context.DamagedGoods.Add(damagedGood);
                                _context.SaveChanges();
                            }
                            else if (type == 2)
                            {
                                DamagedGood damagedGood = new DamagedGood();
                                damagedGood.ItemId      = OneItem.Id;
                                damagedGood.RepairType  = "strong damage";
                                OneItem.Quantity       -= RequestedQuantity;
                                damagedGood.Quantity    = RequestedQuantity;
                                damagedGood.IsRepaired  = false;
                                damagedGood.Description = Description.Text.ToString();
                                _context.DamagedGoods.Add(damagedGood);
                                _context.SaveChanges();

                                _context.Entry(OneItem).State = System.Data.Entity.EntityState.Modified;
                                _context.SaveChanges();
                            }

                            RentMoney += damageFee;
                        }
                    }
                    else
                    {
                        RentMoney = 0;
                    }
                    _context.Entry(OneRent).State = System.Data.Entity.EntityState.Modified;
                    _context.SaveChanges();
                    _context.Entry(OneItem).State = System.Data.Entity.EntityState.Modified;
                    _context.SaveChanges();
                    SucessMessage sm = new SucessMessage();
                    sm.MessageText.Text = "Total Price: " + RentMoney;
                    sm.Show();
                }
                else
                {
                    ErrorMessage er = new ErrorMessage();
                    er.MessageText.Text = "Quantity unavailable";
                    er.Show();
                }
            }
        }