private void ButtonEditObject_Click(object sender, RoutedEventArgs e)
        {
            // если ни одного объекта не выделено, выходим
            if (EstateObjectsGrid.SelectedItem == null)
            {
                CallPopup("Не выбран объект");
                return;
            }

            // редактирование
            dynamic      tempO        = EstateObjectsGrid.SelectedItem;
            ObjectEstate objectestate = new ObjectEstate();

            objectestate.address          = tempO.AddressToDispley;
            objectestate.cadastral_number = tempO.CadastralNumber;
            objectestate.object_id        = tempO.IDObject;
            objectestate.owner_id         = tempO.FIOowner_id;
            objectestate.price            = int.Parse(tempO.PriceToDispley);
            objectestate.square           = int.Parse(tempO.SquareToDispley);
            objectestate.status_id        = tempO.Status_id;

            EditObjectEstateWindow edo = new EditObjectEstateWindow(objectestate);

            edo.ShowDialog();
            FillDataGrid();
        }
Esempio n. 2
0
        private void ButtonAddObjectEstate_Click(object sender, RoutedEventArgs e)
        {
            newTrade = new Trade();
            dynamic b  = BuyerCB.SelectedItem;
            dynamic a  = AddressCB.SelectedItem;
            dynamic ag = AgentCB.SelectedItem;


            newTrade.date      = (DateTime)DateTrade.SelectedDate;
            newTrade.object_id = a.id;
            newTrade.buyer_id  = b.id;
            newTrade.agent_id  = ag.id;

            db.Trades.Add(newTrade);

            if (TBRent.IsChecked == false)
            {
                newSale         = new Sale();
                newSale.sale_id = newTrade.trade_id;
                newSale.price   = int.Parse(Price.Text);
                db.Sales.Add(newSale);

                ob                 = db.ObjectEstates.Find(a.id);
                ob.status_id       = 2;
                db.Entry(ob).State = EntityState.Modified;
            }
            else
            {
                newRent            = new Rent();
                newRent.rent_id    = newTrade.trade_id;
                newRent.date_start = (DateTime)DateStartRent.SelectedDate;
                newRent.date_end   = (DateTime)DateEndRent.SelectedDate;
                newRent.rent_price = int.Parse(PriceRent.Text);
                db.Rents.Add(newRent);
                ob                 = db.ObjectEstates.Find(a.id);
                ob.status_id       = 6;
                db.Entry(ob).State = EntityState.Modified;
            }

            db.SaveChanges();

            this.Close();
        }
        public EditObjectEstateWindow(ObjectEstate o)
        {
            db = new DBcontext();
            db.Clients.Load();
            db.Status.Load();
            db.Flats.Load();
            db.Houses.Load();

            objectestate = o;
            InitializeComponent();

            AddressObject.Text     = o.address;
            CadastralNumber.Text   = o.cadastral_number;
            Square.Text            = o.square.ToString();
            PriceObjectEstate.Text = o.price.ToString();

            OwnerCB.ItemsSource  = db.Clients.Local;
            OwnerCB.SelectedItem = db.Clients.Find(objectestate.owner_id);

            StatusCB.ItemsSource  = db.Status.Local;
            StatusCB.SelectedItem = db.Status.Find(objectestate.status_id);

            if (db.Flats.Find(o.object_id) != null)
            {
                flat = db.Flats.Find(o.object_id);
                FlatGrid.Visibility  = Visibility.Visible;
                HouseGrid.Visibility = Visibility.Collapsed;

                NumberFlat.Text    = flat.flat_number.ToString();
                NumberFloor.Text   = flat.number_floor.ToString();
                QuantityRooms.Text = flat.quantity_rooms.ToString();
            }
            else
            {
                house = db.Houses.Find(o.object_id);
                FlatGrid.Visibility  = Visibility.Collapsed;
                HouseGrid.Visibility = Visibility.Visible;

                PlotSize.Text       = house.plot_size.ToString();
                QuantityFloors.Text = house.quantity_floors.ToString();
            }
        }
        private void ButtonEditTrade_Click(object sender, RoutedEventArgs e)
        {
            trade      = db.Trades.Find(trade.trade_id);
            trade.date = (DateTime)DateTrade.SelectedDate;

            Agent a = (Agent)AgentCB.SelectedItem;

            trade.agent_id = a.agent_id;

            Client c = (Client)BuyerCB.SelectedItem;

            trade.buyer_id = c.client_id;

            ObjectEstate o = (ObjectEstate)AddressCB.SelectedItem;

            trade.object_id = o.object_id;

            db.Entry(trade).State = EntityState.Modified;

            if (db.Sales.Find(trade.trade_id) != null)
            {
                sale.sale_id = trade.trade_id;
                sale.price   = int.Parse(Price.Text);

                db.Entry(sale).State = EntityState.Modified;
            }
            else
            {
                rent.rent_id    = trade.trade_id;
                rent.date_start = (DateTime)DateStartRent.SelectedDate;
                rent.date_end   = (DateTime)DateEndRent.SelectedDate;
                rent.rent_price = int.Parse(PriceRent.Text);

                db.Entry(rent).State = EntityState.Modified;
            }

            db.SaveChanges();
            this.Close();
        }
        private void ButtonDeleteObject_Click(object sender, RoutedEventArgs e)
        {
            // если ни одного объекта не выделено, выходим
            if (EstateObjectsGrid.SelectedItem == null)
            {
                CallPopup("Не выбран объект");
                return;
            }

            // получаем выделенный объект
            dynamic deleteObject = EstateObjectsGrid.SelectedItem;
            int     IDObject     = deleteObject.IDObject;

            ObjectEstate c = db.ObjectEstates.Find(IDObject);

            if (c != null)
            {
                db.ObjectEstates.Remove(c);
                db.SaveChanges();
            }
            FillDataGrid();
        }
        private void ButtonAddObjectEstate_Click(object sender, RoutedEventArgs e)
        {
            newObjectEstate = new ObjectEstate();
            dynamic st = StatusCB.SelectedItem;
            dynamic ow = OwnerCB.SelectedItem;

            newObjectEstate.address          = AddressObject.Text;
            newObjectEstate.cadastral_number = CadastralNumber.Text;
            newObjectEstate.square           = int.Parse(Square.Text);
            newObjectEstate.price            = int.Parse(PriceObjectEstate.Text);
            newObjectEstate.status_id        = st.id;
            newObjectEstate.owner_id         = ow.id;

            db.ObjectEstates.Add(newObjectEstate);

            if (TBHouse.IsChecked == false)
            {
                newFlat                = new Flat();
                newFlat.flat_id        = newObjectEstate.object_id;
                newFlat.flat_number    = int.Parse(NumberFlat.Text);
                newFlat.number_floor   = int.Parse(NumberFloor.Text);
                newFlat.quantity_rooms = int.Parse(QuantityRooms.Text);
                db.Flats.Add(newFlat);
            }
            else
            {
                newHouse                 = new House();
                newHouse.house_id        = newObjectEstate.object_id;
                newHouse.plot_size       = int.Parse(PlotSize.Text);
                newHouse.quantity_floors = int.Parse(QuantityFloors.Text);
                db.Houses.Add(newHouse);
            }

            db.SaveChanges();

            this.Close();
        }