Beispiel #1
0
 private void buttonDel_Click(object sender, EventArgs e)
 {
     //пробуем совершить действие
     try
     {
         //если в listView выбран элемент
         if (listViewSyplySet.SelectedItems.Count == 1)
         {
             //ищем элемент из таблицы по тегу
             SyppySet syppy = listViewSyplySet.SelectedItems[0].Tag as SyppySet;
             //удаляем из модели базы данных
             Program.wftDb.SyppySet.Remove(syppy);
             //сохраняем изменения
             Program.wftDb.SaveChanges();
             //отображаем обновленный список
             ShowSupplySet();
         }
         //очищаем все поля
         comboBoxAgents.SelectedItem     = null;
         comboBoxClients.SelectedItem    = null;
         comboBoxRealEstate.SelectedItem = null;
         textBoxPrice.Text = "";
     }
     //если возникает какая-то ошибка
     catch
     {
         MessageBox.Show("Невозможно удалить, эта запись используются", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Beispiel #2
0
 private void buttonAdd_Click(object sender, EventArgs e)
 {
     //Проверяем, что все поля (раскрывающихся списков и текствого поля) были заполнены
     if (comboBoxAgents.SelectedItem != null && comboBoxClients.SelectedItem != null &&
         comboBoxRealEstate != null && textBoxPrice.Text != "")
     {
         //создаем новый экземпляр класса Предложение
         SyppySet supply = new SyppySet();
         //из выбранной строки в comboBoxAgents отделяем Id риэлтора (он отделен точкой) и делаем ссылку supply.IdAgent
         supply.IdAgent = Convert.ToInt32(comboBoxAgents.SelectedItem.ToString().Split('.')[0]);
         //точно также отделяем и заносим Id клиента
         supply.IdClient = Convert.ToInt32(comboBoxClients.SelectedItem.ToString().Split('.')[0]);
         //точно также отделяем и заносим Id объекта недвижимости
         supply.IdRealEstate = Convert.ToInt32(comboBoxRealEstate.SelectedItem.ToString().Split('.')[0]);
         //цена объекта недвижимости чаще всего превосходит миллион, поэтому используем Int64
         supply.Price = Convert.ToInt64(textBoxPrice.Text);
         //добавляем в таблицу SupplySet новый объект недвижимости supply
         Program.wftDb.SyppySet.Add(supply);
         //сохраняем изменения в модели wftDb
         Program.wftDb.SaveChanges();
         ShowSupplySet();
     }
     else
     {
         MessageBox.Show("Данные не выбраны", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
Beispiel #3
0
 private void buttonEdit_Click(object sender, EventArgs e)
 {
     //если в listView выбран элемент
     if (listViewSyplySet.SelectedItems.Count == 1)
     {
         //ищем элемент из таблицы по тегу
         SyppySet syppy = listViewSyplySet.SelectedItems[0].Tag as SyppySet;
         //указываем, что может быть изменено
         syppy.IdAgent      = Convert.ToInt32(comboBoxAgents.SelectedItem.ToString().Split('.')[0]);
         syppy.IdClient     = Convert.ToInt32(comboBoxClients.SelectedItem.ToString().Split('.')[0]);
         syppy.IdRealEstate = Convert.ToInt32(comboBoxRealEstate.SelectedItem.ToString().Split('.')[0]);
         syppy.Price        = Convert.ToInt64(textBoxPrice.Text);
         //Сохраняем изменения в модели wftDb (экземпляр которой был создан ранее)
         Program.wftDb.SaveChanges();
         ShowSupplySet();
     }
 }
Beispiel #4
0
 private void listViewSyplySet_SelectedIndexChanged(object sender, EventArgs e)
 {
     //если в listView выбран по тегу
     if (listViewSyplySet.SelectedItems.Count == 1)
     {
         SyppySet syppy = listViewSyplySet.SelectedItems[0].Tag as SyppySet;
         //указываем, что может быть изменено
         //находим в comboBoxAgents необходимую строку по Id риэлтора из supply.IdAgent и задаем ее отображение comboBox-y
         comboBoxAgents.SelectedIndex = comboBoxAgents.FindString(syppy.IdAgent.ToString());
         //точно также поступаем с comboBoxClients и comboBoxRealEstate
         comboBoxClients.SelectedIndex    = comboBoxClients.FindString(syppy.IdClient.ToString());
         comboBoxRealEstate.SelectedIndex = comboBoxRealEstate.FindString(syppy.IdRealEstate.ToString());
         textBoxPrice.Text = syppy.Price.ToString();
     }
     else
     {
         //если не выбран ни один элемент, задаем пустые элементы
         comboBoxAgents.SelectedItem     = null;
         comboBoxClients.SelectedItem    = null;
         comboBoxRealEstate.SelectedItem = null;
         textBoxPrice.Text = "";
     }
 }
Beispiel #5
0
 void Deductions()
 {
     if (comboBoxSupply.SelectedItem != null && comboBoxDemand.SelectedItem != null)
     {
         //находим в базе предложение и потребность с выбранными номерами
         SyppySet  syppySet  = Program.wftDb.SyppySet.Find(Convert.ToInt32(comboBoxSupply.SelectedItem.ToString().Split('.')[0]));
         DemandSet demandSet = Program.wftDb.DemandSet.Find(Convert.ToInt32(comboBoxDemand.SelectedItem.ToString().Split('.')[0]));
         //расчитываем отчисления компании для клиента-покупателя (3% от стоимости недвижимости), выводим textCustomerCompanyDeductions
         double customerCompanyDeductions = syppySet.Price * 0.03;
         textBoxCustomerCompanyDeductions.Text = customerCompanyDeductions.ToString("0.00");
         //расчитываем отчисления риелтору для клиента-покупателя (комиссия указана в таблице AgentSet), выводим в textBoxAgentCustomerDeductions
         if (demandSet.AgentSet.DealShare != null)
         {
             double agentCustomerDeductions = customerCompanyDeductions * Convert.ToDouble(demandSet.AgentSet.DealShare) / 100.00;
             textBoxAgentCustomerDeductions.Text = agentCustomerDeductions.ToString("0.00");
         }
         else
         {
             //если комиссия не указана, то автоматическуие берется 45%
             double agentCustomerDeductions = customerCompanyDeductions * 0.45;
             textBoxAgentCustomerDeductions.Text = agentCustomerDeductions.ToString("0.00");
         }
     }
     else
     {
         textBoxCustomerCompanyDeductions.Text = "";
         textBoxAgentCustomerDeductions.Text   = "";
     }
     if (comboBoxSupply.SelectedItem != null)
     {
         //находим в базе предложение с выбранным номером
         SyppySet syppySet = Program.wftDb.SyppySet.Find(Convert.ToInt32(comboBoxSupply.SelectedItem.ToString().Split('.')[0]));
         //расчитываем отчисления компании для клиента-продавца
         //если продается квартира
         double sellerCompanyDeductions;
         if (syppySet.RealEstateSet.Type == 0)
         {
             sellerCompanyDeductions             = 36000 + syppySet.Price * 0.01;
             textBoxSellerCompanyDeductions.Text = sellerCompanyDeductions.ToString("0.00");
         }
         //если продается дом
         else if (syppySet.RealEstateSet.Type == 1)
         {
             sellerCompanyDeductions             = 30000 + syppySet.Price * 0.01;
             textBoxSellerCompanyDeductions.Text = sellerCompanyDeductions.ToString("0.00");
         }
         //если продается земля
         else
         {
             sellerCompanyDeductions             = 30000 + syppySet.Price * 0.02;
             textBoxSellerCompanyDeductions.Text = sellerCompanyDeductions.ToString("0.00");
         }
         //расчитываем отчисления риелтору для клиента-покупателя (комиссия указана в таблице AgentSet)
         if (syppySet.AgentSet.DealShare != null)
         {
             double agentSellerDeductions = sellerCompanyDeductions * Convert.ToDouble(syppySet.AgentSet.DealShare) / 100.00;
             textBoxAgentSellerDeductions.Text = agentSellerDeductions.ToString("0.00");
         }
         else
         {
             //если комиссия не указана, то автоматически берется 45%
             double agentSellerDeductions = sellerCompanyDeductions * 0.45;
             textBoxAgentSellerDeductions.Text = agentSellerDeductions.ToString("0.00");
         }
     }
     else
     {
         textBoxSellerCompanyDeductions.Text   = "";
         textBoxAgentSellerDeductions.Text     = "";
         textBoxCustomerCompanyDeductions.Text = "";
         textBoxAgentCustomerDeductions.Text   = "";
     }
 }