コード例 #1
0
        private void updateDataGridView()
        {
            dataGridViewJournalShow.Rows.Clear();
            dataGridViewJournalShow.SelectAll();
            dataGridViewJournalShow.ClearSelection();
            dataGridViewJournalShow.Columns.Clear();

            dataGridViewJournalShow.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dataGridViewJournalShow.Columns.Add("Column1", "Код");
            dataGridViewJournalShow.Columns.Add("Column2", "Цена");


            using (var context = new LombardContext())
            {
                var allJournals = from query in context.Journals
                                  select new
                {
                    OrderId = query.Order,
                    Summa   = query.Summa
                };

                foreach (var el in allJournals.ToList())
                {
                    dataGridViewJournalShow.Rows.Add(el.OrderId, el.Summa);
                }
            }

            dataGridViewJournalShow.AllowUserToAddRows = false;
        }
コード例 #2
0
        private void updateDataGridView()
        {
            dataGridViewShowCategory.Rows.Clear();
            dataGridViewShowCategory.SelectAll();
            dataGridViewShowCategory.ClearSelection();
            dataGridViewShowCategory.Columns.Clear();

            dataGridViewShowCategory.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dataGridViewShowCategory.Columns.Add("Column1", "Название");
            dataGridViewShowCategory.Columns.Add("Column2", "Описание");


            using (var context = new LombardContext())
            {
                var allCat = from query in context.Categories
                             select new
                {
                    Name        = query.Name,
                    Discription = query.Discription
                };

                foreach (var el in allCat.ToList())
                {
                    dataGridViewShowCategory.Rows.Add(el.Name, el.Discription);
                }
            }

            dataGridViewShowCategory.AllowUserToAddRows = false;
        }
コード例 #3
0
ファイル: Register.cs プロジェクト: Iliays/.Net
        public void addUser()
        {
            using (var context = new LombardContext())
            {
                var query = context.Users.Where(x => x.Login == textBoxLogin.Text && x.Password == textBoxPassword.Text);

                var user = new User()
                {
                    Login    = textBoxLogin.Text,
                    Password = textBoxPassword.Text
                };

                if (query.ToList().Count < 1)
                {
                    context.Users.Add(user);
                    context.SaveChanges();
                    MessageBox.Show("Пользователь успешно добавлен");
                    this.Close();
                }

                else if (query.ToList().Count > 0)
                {
                    MessageBox.Show("Логин или пароль уже есть в базе данных");
                }

                textBoxLogin.Clear();
                textBoxPassword.Clear();
            }
        }
コード例 #4
0
        private void buttonAutorize_Click(object sender, EventArgs e)
        {
            using (var context = new LombardContext())
            {
                var query = context.Users.Where(x => x.Login == textBoxLogin.Text && x.Password == textBoxPassword.Text);

                if (textBoxLogin.Text == "Admin" && textBoxPassword.Text == "Admin")
                {
                    Admin.admin = true;
                    MainForm first = new MainForm();
                    first.Show();
                    this.Hide();
                }
                else if (query.ToList().Count > 0)
                {
                    Admin.admin = false;
                    MainForm first = new MainForm();
                    first.Show();
                    this.Hide();
                }
                //else
                //{
                //	TBError.Text = "Вы ввели логин/пароль неправильно";
                //	TBError.Visible = true;
                //}
            }
        }
コード例 #5
0
ファイル: Export.cs プロジェクト: Iliays/.Net
        private void updateDataGridView()
        {
            using (var context = new LombardContext())
            {
                var allCat = from query in context.Categories
                             select new
                {
                    CategoryId  = query.CategoryId,
                    Name        = query.Name,
                    Discription = query.Discription
                };

                foreach (var el in allCat.ToList())
                {
                    comboBoxCat.Items.Add(el.Name);
                }
            }

            dataGridViewAddClient.Rows.Clear();
            dataGridViewAddClient.SelectAll();
            dataGridViewAddClient.ClearSelection();
            dataGridViewAddClient.Columns.Clear();

            dataGridViewAddClient.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dataGridViewAddClient.Columns.Add("Column1", "Код");
            dataGridViewAddClient.Columns.Add("Column2", "Фамилия");
            dataGridViewAddClient.Columns.Add("Column3", "Имя");
            dataGridViewAddClient.Columns.Add("Column4", "Отчество");
            dataGridViewAddClient.Columns.Add("Column5", "Номер паспорта");
            dataGridViewAddClient.Columns.Add("Column6", "Серия паспорта");
            dataGridViewAddClient.Columns.Add("Column7", "Дата выдачи");


            using (var context = new LombardContext())
            {
                var allClient = from query in context.Clients
                                select new
                {
                    ClientId   = query.ClientId,
                    Surname    = query.Surname,
                    Name       = query.Name,
                    Patronimic = query.Patronimic,
                    Number     = query.Number,
                    Seria      = query.Seria,
                    DatePas    = query.DatePas
                };

                foreach (var el in allClient.ToList())
                {
                    dataGridViewAddClient.Rows.Add(el.ClientId, el.Surname, el.Name, el.Patronimic, el.Number, el.Seria, el.DatePas.ToShortDateString());
                }
            }

            dataGridViewAddClient.AllowUserToAddRows = false;
        }
コード例 #6
0
ファイル: FirstQuery.cs プロジェクト: Iliays/.Net
        private void buttonUpload_Click(object sender, EventArgs e)
        {
            dataGridViewShowQuery.Rows.Clear();
            dataGridViewShowQuery.SelectAll();
            dataGridViewShowQuery.ClearSelection();
            dataGridViewShowQuery.Columns.Clear();

            dataGridViewShowQuery.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dataGridViewShowQuery.Columns.Add("Column1", "Название категории");
            dataGridViewShowQuery.Columns.Add("Column2", "Фамилия клиента");
            dataGridViewShowQuery.Columns.Add("Column3", "Имя клиента");
            dataGridViewShowQuery.Columns.Add("Column4", "Отчество клиента");
            dataGridViewShowQuery.Columns.Add("Column5", "Описание");
            dataGridViewShowQuery.Columns.Add("Column6", "Дата сдачи");
            dataGridViewShowQuery.Columns.Add("Column7", "Дата возврата");
            dataGridViewShowQuery.Columns.Add("Column8", "Сумма");
            dataGridViewShowQuery.Columns.Add("Column9", "Коммисионные");

            using (var context = new LombardContext())
            {
                var query = context.Categories.Where(x => x.Name == comboBoxCategory.SelectedItem.ToString());
                int id    = 0;
                foreach (var x in query.ToList())
                {
                    id = x.CategoryId;
                }

                var queryFirst = from order in context.Orders
                                 from category in context.Categories
                                 from client in context.Clients
                                 where order.CategoryId == id && order.ClientId == client.ClientId && order.CategoryId == category.CategoryId
                                 select new
                {
                    categoryName     = category.Name,
                    Surname          = client.Surname,
                    Name             = client.Name,
                    Patronimic       = client.Patronimic,
                    DiscriptionOrder = order.DiscriptionOrder,
                    DateGive         = order.DateGive,
                    DateTake         = order.DateTake,
                    Summa            = order.Summa,
                    Comission        = order.Comission
                };

                foreach (var el in queryFirst.ToList())
                {
                    dataGridViewShowQuery.Rows.Add(el.categoryName, el.Surname, el.Name, el.Patronimic, el.DiscriptionOrder, el.DateGive.ToShortDateString(), el.DateTake.ToShortDateString(), el.Summa, el.Comission);
                }
            }
            dataGridViewShowQuery.AllowUserToAddRows = false;
        }
コード例 #7
0
 public void addCategory()
 {
     using (var context = new LombardContext())
     {
         var category = new Category()
         {
             Name        = textBoxName.Text,
             Discription = textBoxDiscription.Text
         };
         context.Categories.Add(category);
         context.SaveChanges();
         textBoxName.Clear();
         textBoxDiscription.Clear();
     }
 }
コード例 #8
0
ファイル: FirstQuery.cs プロジェクト: Iliays/.Net
        private void FirstQuery_Load(object sender, EventArgs e)
        {
            using (var context = new LombardContext())
            {
                var allCat = from query in context.Categories
                             select new
                {
                    CategoryId  = query.CategoryId,
                    Name        = query.Name,
                    Discription = query.Discription
                };

                foreach (var el in allCat.ToList())
                {
                    comboBoxCategory.Items.Add(el.Name);
                }
            }
        }
コード例 #9
0
ファイル: OrderFormDelete.cs プロジェクト: Iliays/.Net
        private void updateDataGridView()
        {
            dataGridViewShowOrder.Rows.Clear();
            dataGridViewShowOrder.SelectAll();
            dataGridViewShowOrder.ClearSelection();
            dataGridViewShowOrder.Columns.Clear();

            dataGridViewShowOrder.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dataGridViewShowOrder.Columns.Add("Column1", "Номер");
            dataGridViewShowOrder.Columns.Add("Column2", "Категория");
            dataGridViewShowOrder.Columns.Add("Column3", "Клиент");
            dataGridViewShowOrder.Columns.Add("Column4", "Описание");
            dataGridViewShowOrder.Columns.Add("Column5", "Дата сдачи");
            dataGridViewShowOrder.Columns.Add("Column6", "Дата возврата");
            dataGridViewShowOrder.Columns.Add("Column7", "Сумма");
            dataGridViewShowOrder.Columns.Add("Column8", "Коммисионные");


            using (var context = new LombardContext())
            {
                var allOrder = from query in context.Orders
                               select new
                {
                    OrderId          = query.OrderId,
                    CategoryId       = query.CategoryId,
                    ClientId         = query.ClientId,
                    DiscriptionOrder = query.DiscriptionOrder,
                    DateGive         = query.DateGive,
                    DateTake         = query.DateTake,
                    Summa            = query.Summa,
                    Comission        = query.Comission
                };

                foreach (var el in allOrder.ToList())
                {
                    dataGridViewShowOrder.Rows.Add(el.OrderId, el.CategoryId, el.ClientId, el.DiscriptionOrder, el.DateGive.ToShortDateString(), el.DateTake.ToShortDateString(), el.Summa, el.Comission);
                }
            }

            dataGridViewShowOrder.AllowUserToAddRows = false;
        }
コード例 #10
0
ファイル: ClientFormAdd.cs プロジェクト: Iliays/.Net
 public void addClient()
 {
     using (var context = new LombardContext())
     {
         var client = new Client()
         {
             Surname    = textBoxSurname.Text,
             Name       = textBoxName.Text,
             Patronimic = textBoxPatronimic.Text,
             Number     = int.Parse(textBoxNumber.Text.ToString()),
             Seria      = int.Parse(textBoxSeria.Text.ToString()),
             DatePas    = dateTimePickerDatePas.Value
         };
         context.Clients.Add(client);
         context.SaveChanges();
     }
     textBoxSurname.Clear();
     textBoxName.Clear();
     textBoxPatronimic.Clear();
     textBoxNumber.Clear();
     textBoxSeria.Clear();
 }
コード例 #11
0
ファイル: OrderFormAdd.cs プロジェクト: Iliays/.Net
        private void buttonAddOrder_Click(object sender, EventArgs e)
        {
            using (var context = new LombardContext())
            {
                var query = context.Categories.Where(x => x.Name == comboBoxCategory.SelectedItem.ToString());
                int id    = 0;
                foreach (var x in query.ToList())
                {
                    id = x.CategoryId;
                }

                var order = new Order()
                {
                    CategoryId       = id,
                    ClientId         = clientid,
                    DiscriptionOrder = textBoxDiscriptionOrder.Text,
                    DateGive         = dateTimePickerDateGive.Value,
                    DateTake         = dateTimePickerDateTake.Value,
                    Summa            = int.Parse(textBoxSumma.Text.ToString()),
                    Comission        = int.Parse(textBoxComission.Text.ToString())
                };
                context.Orders.Add(order);
                context.SaveChanges();

                var journal = new Journal()
                {
                    Order = order.OrderId,
                    Summa = int.Parse(textBoxSumma.Text.ToString())
                };
                context.Journals.Add(journal);
                context.SaveChanges();

                textBoxDiscriptionOrder.Clear();
                textBoxSumma.Clear();
                textBoxComission.Clear();
                MessageBox.Show("Запись успешно добавлена");
            }
        }
コード例 #12
0
ファイル: Export.cs プロジェクト: Iliays/.Net
        private void buttonExportData_Click(object sender, EventArgs e)
        {
            using (var context = new LombardContext())
            {
                var clients = context.Clients.ToList();

                var wasCategory = new List <string>();

                var wasOrder = new List <OrderTest>();

                var wasJournal = new List <JournalTest>();

                string categoryname = "";

                if (clientid > 0)
                {
                    clients = context.Clients.Where(x => x.ClientId == clientid).ToList();
                }

                int       key = 0;
                XDocument doc = new XDocument(new XElement("CLIENT"));
                for (int i = 0; i < clients.Count(); i++)
                {
                    wasCategory.Clear();


                    doc.Element("CLIENT").Add(
                        new XElement("Client",
                                     new XElement("surname", clients[i].Surname.Trim()),
                                     new XElement("name", clients[i].Name.Trim()),
                                     new XElement("patronimic", clients[i].Patronimic.Trim()),
                                     new XElement("number", clients[i].Number.ToString().Trim()),
                                     new XElement("seria", clients[i].Seria.ToString().Trim()),
                                     new XElement("datePas", clients[i].DatePas.ToString("dd.MM.yyyy").Trim())
                                     )
                        );

                    var orders = context.Orders.ToList();

                    if (dateTimePickerDateGive.Value != null && checkBoxDate.Checked == true)
                    {
                        DateTime dateGive = dateTimePickerDateGive.Value;
                        orders = context.Orders.Where(x => x.DateGive <= dateGive).ToList();
                    }

                    foreach (var order in orders)
                    {
                        if (clients[i].ClientId == order.ClientId)
                        {
                            var categories = context.Categories.ToList();

                            if (comboBoxCat.SelectedItem.ToString() == "All")
                            {
                            }
                            else
                            {
                                categories = context.Categories.Where(x => x.Name == comboBoxCat.SelectedItem.ToString()).ToList();
                            }

                            foreach (var category in categories)
                            {
                                bool check = false;

                                foreach (var s in wasCategory)
                                {
                                    if (category.Name.ToString() == s)
                                    {
                                        check = true;
                                    }
                                    categoryname = categories.Where(x => x.CategoryId == category.CategoryId).Select(x => x.Name).First().Trim().ToString();
                                }

                                wasCategory.Add(category.Name);

                                if (check == false)
                                {
                                    var CategoryXml = new XElement("Category",
                                                                   new XElement("name", category.Name.Trim()),
                                                                   new XElement("discription", category.Discription.Trim())
                                                                   );

                                    var ourClient = doc.Descendants("Client")
                                                    .Where(x => x.Element("name")
                                                           .Value.Equals(clients[i].Name.Trim())).FirstOrDefault();



                                    if (ourClient != null)
                                    {
                                        if (!ourClient.Elements("CLIENT").Any())
                                        {
                                            ourClient.Add(new XElement("CLIENT"));
                                        }

                                        bool duplicateClient = false;
                                        foreach (var elem in ourClient.Element("CLIENT").Elements("Category"))
                                        {
                                            duplicateClient = XNode.DeepEquals(elem, CategoryXml);
                                            if (duplicateClient)
                                            {
                                                break;
                                            }
                                        }

                                        if (!duplicateClient)
                                        {
                                            ourClient.Add(CategoryXml);
                                        }
                                    }
                                }


                                if (clients[i].ClientId == order.ClientId)
                                {
                                    bool checkOrder = false;
                                    bool let        = false;

                                    int      clientid2 = clients[i].ClientId;
                                    DateTime DateTake  = order.DateTake;
                                    DateTime DateGive  = order.DateGive;
                                    decimal  Summa     = Convert.ToDecimal(order.Summa);
                                    decimal  Comission = Convert.ToDecimal(order.Comission);

                                    foreach (var s in wasOrder)
                                    {
                                        var querys = context.Orders.Where(x => x.ClientId == clientid2 && x.CategoryId == category.CategoryId && x.DiscriptionOrder == order.DiscriptionOrder && x.DateGive == DateGive && x.DateTake == DateTake && x.Summa == Summa && x.Comission == Comission);

                                        if (querys.ToList().Count() < 1)
                                        {
                                            checkOrder = true;
                                        }

                                        if (clientid2 == s.ClientId && category.CategoryId == s.CategoryId && order.DiscriptionOrder == s.DiscriptionOrder && DateGive == s.DateGive && DateTake == s.DateTake && Summa == s.Summa && Comission == s.Comission)
                                        {
                                            checkOrder = true;
                                        }
                                    }

                                    var query2 = context.Orders.Where(x => x.ClientId == clientid2 && x.CategoryId == category.CategoryId && x.DiscriptionOrder == order.DiscriptionOrder && x.DateGive == DateGive && x.DateTake == DateTake && x.Summa == Summa && x.Comission == Comission);

                                    if (query2.ToList().Count() > 0)
                                    {
                                        let = true;
                                    }

                                    if (checkOrder == false && let == true)
                                    {
                                        categoryname = categories.Where(x => x.CategoryId == category.CategoryId).Select(x => x.Name).First().Trim().ToString();
                                        wasOrder.Add(new OrderTest(clientid2, category.CategoryId, order.DiscriptionOrder, DateGive, DateTake, Summa, Comission));
                                        var OrderXml = new XElement("Order",
                                                                    new XElement("name", category.Name.Trim()),
                                                                    new XElement("number", clients[i].Number.ToString().Trim()),
                                                                    new XElement("seria", clients[i].Seria.ToString().Trim()),
                                                                    new XElement("discriptionOrder", order.DiscriptionOrder.Trim()),
                                                                    new XElement("dateGive", order.DateGive.ToString("dd.MM.yyyy").Trim()),
                                                                    new XElement("dateTake", order.DateTake.ToString("dd.MM.yyyy").Trim()),
                                                                    new XElement("summa", order.Summa.ToString().Trim()),
                                                                    new XElement("comission", order.Comission.ToString().Trim())
                                                                    );

                                        var ourOrder = doc.Descendants("Client")
                                                       .Where(x => x.Element("name")
                                                              .Value.Equals(clients[i].Name.Trim())).FirstOrDefault().Descendants("Category")
                                                       .Where(x => x.Element("name")
                                                              .Value.Equals(categoryname)).FirstOrDefault();

                                        if (ourOrder != null)
                                        {
                                            ourOrder.Add(OrderXml);
                                        }

                                        var journals = context.Journals.ToList();

                                        foreach (var journal in journals)
                                        {
                                            if (journal.Order == order.OrderId)
                                            {
                                                bool checkes = false;

                                                foreach (var s in wasJournal)
                                                {
                                                    if (s.Order == journal.Order && s.Summa == journal.Summa && s.Name == category.Name && s.Number == clients[i].Number && s.Seria == clients[i].Seria)
                                                    {
                                                        checkes = true;
                                                    }
                                                }

                                                var queryJournal = context.Journals.Where(x => x.Order == journal.Order && x.Summa == journal.Summa);

                                                if (queryJournal.ToList().Count() < 0)
                                                {
                                                    checkes = true;
                                                }

                                                if (checkes == false)
                                                {
                                                    wasJournal.Add(new JournalTest(journal.Order, journal.Summa, category.Name, clients[i].Number, clients[i].Seria));

                                                    var JournalXml = new XElement("Journal",
                                                                                  new XElement("name", category.Name.Trim()),
                                                                                  new XElement("number", clients[i].Number.ToString().Trim()),
                                                                                  new XElement("seria", clients[i].Seria.ToString().Trim()),
                                                                                  new XElement("summa", journal.Summa.ToString().Trim()),
                                                                                  new XElement("discriptionOrder", order.DiscriptionOrder.ToString().Trim()),
                                                                                  new XElement("dateGive", order.DateGive.ToString("dd.MM.yyyy").Trim()),
                                                                                  new XElement("dateTake", order.DateTake.ToString("dd.MM.yyyy").Trim())
                                                                                  );

                                                    var orderName = clients[i].Number.ToString();

                                                    var ourJournal = doc.Descendants("Client")
                                                                     .Where(x => x.Element("name")
                                                                            .Value.Equals(clients[i].Name.Trim())).FirstOrDefault().Descendants("Category")
                                                                     .Where(x => x.Element("name")
                                                                            .Value.Equals(categoryname)).FirstOrDefault().Descendants("Order")
                                                                     .Where(x => x.Element("number")
                                                                            .Value.Equals(orderName)).FirstOrDefault();

                                                    if (ourJournal != null)
                                                    {
                                                        ourJournal.Add(JournalXml);
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    key++;
                }
                string filePath = @"export.xml";
                doc.Save(filePath);

                MessageBox.Show("Экспорт завершен !");
            }
        }
コード例 #13
0
ファイル: Export.cs プロジェクト: Iliays/.Net
        private void buttonImport_Click(object sender, EventArgs e)
        {
            XmlSerialization <CLIENT> xmlSerialization = new XmlSerialization <CLIENT>();

            CLIENT cl = new CLIENT(); // путь к файлу

            string filePath = @"import.xml";

            cl = (CLIENT)xmlSerialization.ReadData(filePath, cl); //дерсериализация

            for (int i = 0; i < cl.Client.Count; i++)
            {
                string clientName       = cl.Client[i].Name;
                string clientSurname    = cl.Client[i].Surname;
                string clientPatronimic = cl.Client[i].Patronimic;
                string clientNumber     = cl.Client[i].Number;
                string clientSeria      = cl.Client[i].Seria;
                string clientDatePas    = cl.Client[i].DatePas;

                //добавление
                using (var context = new LombardContext())
                {
                    int      number  = Convert.ToInt32(clientNumber);
                    int      seria   = Convert.ToInt32(clientSeria);
                    DateTime datePas = DateTime.Parse(clientDatePas);
                    var      query   = context.Clients.Where(x => x.Name == clientName && x.Surname == clientSurname && x.Patronimic == clientPatronimic && x.Number == number && x.Seria == seria && x.DatePas == datePas);

                    var clients = new Client()
                    {
                        Name       = clientName.ToString(),
                        Surname    = clientSurname.ToString(),
                        Patronimic = clientPatronimic.ToString(),
                        Number     = number,
                        Seria      = seria,
                        DatePas    = datePas
                    };

                    if (query.ToList().Count < 1)
                    {
                        context.Clients.Add(clients);
                        context.SaveChanges();
                    }
                }

                for (int j = 0; j < cl.Client[i].Category.Count; j++)
                {
                    string categoryname = cl.Client[i].Category[j].Name;
                    string categorydisc = cl.Client[i].Category[j].Discription;


                    using (var context = new LombardContext())
                    {
                        var category = context.Categories.Where(x => x.Name == categoryname && x.Discription == categorydisc);

                        var categorys = new Category()
                        {
                            Name        = categoryname,
                            Discription = categorydisc
                        };

                        if (category.ToList().Count < 1)
                        {
                            context.Categories.Add(categorys);
                            context.SaveChanges();
                        }
                    }

                    for (int y = 0; y < cl.Client[i].Category[j].Order.Count; y++)
                    {
                        string orderdisc      = cl.Client[i].Category[j].Order[y].DiscriptionOrder;
                        string orderdategive  = cl.Client[i].Category[j].Order[y].DateGive;
                        string orderdatetake  = cl.Client[i].Category[j].Order[y].DateTake;
                        string ordersumma     = cl.Client[i].Category[j].Order[y].Summa;
                        string ordercomission = cl.Client[i].Category[j].Order[y].Comission;

                        using (var context = new LombardContext())
                        {
                            int      number  = Convert.ToInt32(clientNumber);
                            int      seria   = Convert.ToInt32(clientSeria);
                            DateTime datePas = DateTime.Parse(clientDatePas);

                            var categoryid = context.Categories.Where(x => x.Name == categoryname && x.Discription == categorydisc).Select(x => x.CategoryId).First();
                            var clientid   = context.Clients.Where(x => x.Name == clientName && x.Surname == clientSurname && x.Patronimic == clientPatronimic && x.Number == number && x.Seria == seria && x.DatePas == datePas).Select(x => x.ClientId).First();

                            DateTime dateGive  = DateTime.Parse(orderdategive);
                            DateTime dateTake  = DateTime.Parse(orderdatetake);
                            decimal  summa     = Convert.ToDecimal(ordersumma);
                            decimal  comission = Convert.ToDecimal(ordercomission);

                            var query = context.Orders.Where(x => x.CategoryId == categoryid && x.ClientId == clientid && x.DiscriptionOrder == orderdisc && x.DateGive == dateGive && x.DateTake == dateTake && x.Summa == summa && x.Comission == comission);

                            var order = new Order()
                            {
                                CategoryId       = categoryid,
                                ClientId         = clientid,
                                DiscriptionOrder = orderdisc,
                                DateGive         = dateGive,
                                DateTake         = dateTake,
                                Summa            = summa,
                                Comission        = comission
                            };

                            if (query.ToList().Count < 1)
                            {
                                context.Orders.Add(order);
                                context.SaveChanges();
                            }
                        }

                        for (int m = 0; m < cl.Client[i].Category[j].Order[y].Journal.Count; m++)
                        {
                            using (var context = new LombardContext())
                            {
                                int number = Convert.ToInt32(cl.Client[i].Number);
                                int seria  = Convert.ToInt32(cl.Client[i].Seria);

                                DateTime dateGive  = DateTime.Parse(cl.Client[i].Category[j].Order[y].DateGive);
                                DateTime dateTake  = DateTime.Parse(cl.Client[i].Category[j].Order[y].DateTake);
                                decimal  summa     = Convert.ToDecimal(cl.Client[i].Category[j].Order[y].Summa);
                                decimal  summa2    = Convert.ToDecimal(cl.Client[i].Category[j].Order[y].Journal[m].Summa);
                                decimal  comission = Convert.ToDecimal(cl.Client[i].Category[j].Order[y].Comission);

                                var    getClientid      = context.Clients.Where(x => x.Number == number && x.Seria == seria).Select(x => x.ClientId).First();
                                string categoryname2    = cl.Client[i].Category[j].Name;
                                string discriptionname2 = cl.Client[i].Category[j].Discription;

                                var getCategoryId = context.Categories.Where(x => x.Name == categoryname2 && x.Discription == discriptionname2).Select(x => x.CategoryId).First();
                                var getOrderId    = context.Orders.Where(x => x.CategoryId == getCategoryId && x.ClientId == getClientid && x.DiscriptionOrder == orderdisc && x.DateGive == dateGive && x.DateTake == dateTake && x.Summa == summa && x.Comission == comission).Select(x => x.OrderId).First();


                                var journal = new Journal()
                                {
                                    Order = getOrderId,
                                    Summa = summa2
                                };

                                context.Journals.Add(journal);
                                context.SaveChanges();
                            }
                        }
                    }
                }
            }
            MessageBox.Show("Импорт завершён");
        }
コード例 #14
0
ファイル: OrderFormUpdate.cs プロジェクト: Iliays/.Net
        private void buttonUpdate_Click(object sender, EventArgs e)
        {
            int indexRow = dataGridViewAddOrder.CurrentCell.RowIndex;

            int id = Convert.ToInt32(dataGridViewAddOrder.Rows[indexRow].Cells[0].Value);

            Order order = db.Orders.Find(id);

            UpdateOrder editOrder = new UpdateOrder();

            using (var context = new LombardContext())
            {
                var allCat = from query in context.Categories
                             select new
                {
                    CategoryId  = query.CategoryId,
                    Name        = query.Name,
                    Discription = query.Discription
                };

                foreach (var el in allCat.ToList())
                {
                    editOrder.comboBoxCategory.Items.Add(el.Name);
                }

                var orderGetName = context.Categories.Where(x => x.CategoryId == order.CategoryId);

                string name;
                foreach (var x in orderGetName.ToList())
                {
                    name = x.Name;
                    editOrder.comboBoxCategory.Text = name.ToString();
                }

                editOrder.clientid = order.ClientId;
                editOrder.textBoxDiscriptionOrder.Text = order.DiscriptionOrder;
                editOrder.dateTimePickerDateGive.Text  = order.DateGive.ToString();
                editOrder.dateTimePickerDateTake.Text  = order.DateTake.ToString();
                editOrder.textBoxSumma.Text            = Convert.ToString(order.Summa);      // что бы поля были видны в свойствах нужно было поменять private на internal
                editOrder.textBoxComission.Text        = Convert.ToString(order.Comission);


                DialogResult result = editOrder.ShowDialog(this);                 // в свойствах DialogRisult надо указать ОК

                if (result == DialogResult.Cancel)
                {
                    return;
                }

                var getId = context.Categories.Where(x => x.Name == editOrder.comboBoxCategory.SelectedItem.ToString());

                foreach (var x in getId.ToList())
                {
                    order.CategoryId = x.CategoryId;
                }

                editOrder.textBoxSumma_TextChanged(editOrder.originalText, e);
                if (editOrder.textBoxSumma.Modified == true)
                {
                    using (var context2 = new LombardContext())
                    {
                        var journal = new Journal()
                        {
                            Order = order.OrderId,
                            Summa = Convert.ToDecimal(editOrder.textBoxSumma.Text)
                        };
                        context2.Journals.Add(journal);
                        context2.SaveChanges();
                    }
                }

                order.ClientId         = editOrder.clientid;
                order.DiscriptionOrder = editOrder.textBoxDiscriptionOrder.Text;
                order.DateGive         = DateTime.Parse(editOrder.dateTimePickerDateGive.Text);
                order.DateTake         = DateTime.Parse(editOrder.dateTimePickerDateTake.Text);
                order.Summa            = Convert.ToDecimal(editOrder.textBoxSumma.Text);
                order.Comission        = Convert.ToDecimal(editOrder.textBoxComission.Text);
            }

            db.SaveChanges();
            updateDataGridView();             // обновляем грид
            MessageBox.Show("Объект изменён");
        }