Exemple #1
0
        private void listOrders_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            List <OrderDescr> lst = new List <OrderDescr>();

            //opened current documet
            if (listOrders.SelectedItems.Count > 0)
            {
                for (int i = 0; i < listOrders.SelectedItems.Count; i++)
                {
                    OrdersDescr currentItem = listOrders.SelectedItems[i] as OrdersDescr;
                    if (currentItem != null)
                    {
                        NewOrder openWindow = new NewOrder(true);
                        openWindow.txtNumber.Text   = currentItem.OrderId.ToString();
                        openWindow.txtDateTime.Text = currentItem.OrderDate.ToString();
                        string model = currentItem.OrderAuto + " " + currentItem.OrderAutoNumber;
                        openWindow.comCar.Items.Add(model);
                        openWindow.comCar.SelectedItem = model;
                        //auto select customer
                        int    CarOwnerID = sto.car.Where(a => a.carModel.Name + " " + a.carNumber == model.ToString()).Single().customerId;
                        string strCust    = (sc.customers.Where(a => a.ID == CarOwnerID).Single().LastName + " "
                                             + sc.customers.Where(a => a.ID == CarOwnerID).Single().Name);
                        openWindow.comCustomer.Items.Add(strCust);
                        openWindow.comCustomer.SelectedItem = strCust;
                        openWindow.comCustomer.IsEnabled    = false;
                        openWindow.txtDateTime.IsEnabled    = false;
                        openWindow.txtNumber.IsEnabled      = false;
                        openWindow.btnDelStr.IsEnabled      = false;
                        openWindow.btnInsert.IsEnabled      = false;
                        openWindow.btnAdd.IsEnabled         = false;

                        //sto.ordersContext.Where(i => i.OrderId == currentItem.OrderId).SelectMany( (lst);
                        if (openWindow.ShowDialog() == true)
                        {
                        }
                    }
                }
            }
        }
Exemple #2
0
        //method determines what user add want, this method call new form with some parameters, which describe UI in AddForm
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            //work with STO context
            if (rbValue == "rbtnOrder")
            {
                //create new window for added new Order
                NewOrder insOrder = new NewOrder(false);
                insOrder.Owner = this;

                STOContext strContext = new STOContext();
                #region order
                if (insOrder.ShowDialog() == true)
                {
                    //find car id from add order dialog
                    int CarID = strContext.car.Where(
                        a => a.carModel.Name + " " + a.carNumber == insOrder.comCar.SelectedItem.ToString()
                        ).Single().ID;

                    //add new order into db
                    Orders ord = new Orders()
                    {
                        carId = CarID, Date = DateTime.Parse(insOrder.txtDateTime.Text)
                    };
                    sc.orders.Add(ord);
                    sc.SaveChanges();
                    //add order context into db table
                    foreach (OrderDescr item in insOrder.listOrders.ItemsSource)
                    {
                        OrderCotnext orderTable = new OrderCotnext()
                        {
                            OrderId = ord.ID,
                            goodsID = item.GoodsId,
                            Count   = item.Count,
                            Price   = item.Price,
                            Suma    = item.Summa
                        };
                        sc.ordersContext.Add(orderTable);
                        sc.SaveChanges();
                    }
                    //add last added order into listOrders - this described above
                    int    iCustID      = sto.car.Where(n => n.ID == ord.carId).Single().customerId;
                    string strCarNumber = sto.car.Where(n => n.ID == ord.carId).Single().carNumber;
                    int    iCarModel    = sto.car.Where(n => n.ID == ord.carId).Single().carmodelId;
                    string strCarModel  = sto.carModel.Where(m => m.ID == iCarModel).Single().Name;
                    string strCustName  = sto.customers.Where(n => n.ID == iCustID).Single().LastName +
                                          " " + sto.customers.Where(n => n.ID == iCustID).Single().Name;
                    string strPhone = sto.customers.Where(n => n.ID == iCustID).Single().Phone;

                    OrderItems.Add(new OrdersDescr(ord.Date, ord.ID, strCustName, strPhone, strCarModel, strCarNumber, 0));

                    this.listOrders.Items.Refresh();
                    this.listOrders.ItemsSource = OrderItems;
                }
                #endregion
            }
            else
            {
                //add new customer
                AddWindow addWnd = new AddWindow(rbValue);
                if (addWnd.ShowDialog() == true)
                {
                    #region customer
                    if (rbValue == "rbtnCustomer")
                    {
                        Customers cust = new Customers()
                        {
                            Name = addWnd.txtBox1.Text, LastName = addWnd.txtBox2.Text, Phone = addWnd.txtBox3.Text
                        };
                        sc.customers.Add(cust);
                        sc.SaveChanges();
                        this.selCustomers.Items.Add(cust.LastName + " " + cust.Name);
                    }
                    #endregion
                    //add new car
                    #region car
                    if (rbValue == "rbtnCar")
                    {
                        Car car = new Car();
                        car.carNumber   = addWnd.txtBox1.Text;
                        car.carmodelId  = sc.carModel.Where(a => a.Name == addWnd.txtBox2.Text).Single().ID;
                        car.customerId  = sc.customers.Where(a => a.LastName + " " + a.Name == addWnd.txtBox3.Text).Single().ID;
                        car.YearProduce = Int32.Parse(addWnd.txtBox4.Text);
                        sc.car.Add(car);
                        sc.SaveChanges();
                    }
                    #endregion
                    //add new car model
                    #region carmodel
                    if (rbValue == "rbtnCarModel")
                    {
                        CarModel carM = new CarModel()
                        {
                            Name = addWnd.txtBox1.Text
                        };
                        sc.carModel.Add(carM);
                        sc.SaveChanges();
                        this.selCar.Items.Add(carM.Name);
                    }
                    #endregion
                    //add new godds type
                    #region GoddsType
                    if (rbValue == "rbtnGoodsType")
                    {
                        GoodsType gt = new GoodsType()
                        {
                            Name = addWnd.txtBox1.Text
                        };
                        sc.goodsType.Add(gt);
                        sc.SaveChanges();
                    }
                    #endregion
                    //add new goods
                    #region goods
                    if (rbValue == "rbtnGoods")
                    {
                        Goods goods = new Goods()
                        {
                            Name        = addWnd.txtBox1.Text,
                            GoodsTypeID = sc.goodsType.Where(a => a.Name == addWnd.txtBox4.Text).Single().ID,
                            Price       = Int32.Parse(addWnd.txtBox3.Text),
                            CarModelID  = sc.carModel.Where(a => a.Name == addWnd.txtBox2.Text).Single().ID
                        };

                        sc.goods.Add(goods);
                        sc.SaveChanges();
                    }
                    #endregion
                }
            }
        }