/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void mB_Save_Click(object sender, EventArgs e) { using (DatabaseContext db = new DatabaseContext()) { if (mTC_Accounting.SelectedTab == mTP_Customer) { Customer obj_Customer = customerBindingSource.Current as Customer; if (obj_Customer != null) { if (db.Entry <Customer>(obj_Customer).State == System.Data.Entity.EntityState.Detached) { db.Set <Customer>().Attach(obj_Customer); } if (obj_Customer.ObjectState == 1) { db.Entry <Customer>(obj_Customer).State = System.Data.Entity.EntityState.Added; } else if (obj_Customer.ObjectState == 2) { db.Entry <Customer>(obj_Customer).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Customer.Enabled = false; obj_Customer.ObjectState = 0; TabControl.AddCustomer(List_Customer, obj_Customer); } } else if (mTC_Accounting.SelectedTab == mTP_Income) { Income obj_Income = incomeBindingSource.Current as Income; if (obj_Income != null) { obj_Income.Customer = db.Customers.First(c => c.Id == obj_Income.Customer_Id); foreach (var item in mlV_Products_Income.CheckedIndices) { string a = mlV_Products_Income.Items[Convert.ToInt32(item)].Text; obj_Income.Products = obj_Income.Products + a + ", "; } if (db.Entry <Income>(obj_Income).State == System.Data.Entity.EntityState.Detached) { db.Set <Income>().Attach(obj_Income); } if (obj_Income.ObjectState == 1) { db.Entry <Income>(obj_Income).State = System.Data.Entity.EntityState.Added; } else if (obj_Income.ObjectState == 2) { db.Entry <Income>(obj_Income).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Income.Enabled = false; obj_Income.ObjectState = 0; TabControl.AddIncome(List_Income, obj_Income); return; } } else if (mTC_Accounting.SelectedTab == mTP_Expenses) { Expense obj_Expense = expensesBindingSource.Current as Expense; if (obj_Expense != null) { if (db.Entry <Expense>(obj_Expense).State == System.Data.Entity.EntityState.Detached) { db.Set <Expense>().Attach(obj_Expense); } if (obj_Expense.ObjectState == 1) { db.Entry <Expense>(obj_Expense).State = System.Data.Entity.EntityState.Added; } else if (obj_Expense.ObjectState == 2) { db.Entry <Expense>(obj_Expense).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Expenses.Enabled = false; obj_Expense.ObjectState = 0; TabControl.AddExpenses(List_Expenses, obj_Expense); return; } } else if (mTC_Accounting.SelectedTab == mTP_Produkts) { Produkt obj_Produkt = produktBindingSource.Current as Produkt; if (obj_Produkt != null) { obj_Produkt.Unit = mCB_Produkts_Unit.SelectedIndex; if (db.Entry <Produkt>(obj_Produkt).State == System.Data.Entity.EntityState.Detached) { db.Set <Produkt>().Attach(obj_Produkt); } if (obj_Produkt.ObjectState == 1) { db.Entry <Produkt>(obj_Produkt).State = System.Data.Entity.EntityState.Added; } if (obj_Produkt.ObjectState == 2) { db.Entry <Produkt>(obj_Produkt).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Produkts.Enabled = false; obj_Produkt.ObjectState = 0; TabControl.RefreshProdukt(List_Produkts, mlV_Products_Income); } } } }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void mB_Save_Click(object sender, EventArgs e) { using (DatabaseContext db = new DatabaseContext()) { if (mTC_Accounting.SelectedTab == mTP_Customer) { Customer obj_Customer = customerBindingSource.Current as Customer; if (obj_Customer != null) { if (db.Entry <Customer>(obj_Customer).State == System.Data.Entity.EntityState.Detached) { db.Set <Customer>().Attach(obj_Customer); } if (obj_Customer.ObjectState == 1) { db.Entry <Customer>(obj_Customer).State = System.Data.Entity.EntityState.Added; } else if (obj_Customer.ObjectState == 2) { db.Entry <Customer>(obj_Customer).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Customer.Enabled = false; obj_Customer.ObjectState = 0; TabControl.RefreshCustomer(List_Customer); } } else if (mTC_Accounting.SelectedTab == mTP_Income) { Income obj_Income = incomeBindingSource.Current as Income; if (obj_Income != null) { try { obj_Income.Customer = db.Customers.First(c => c.Id == obj_Income.Customer_Id); } catch (Exception) { MetroMessageBox.Show(this, "Pleaser enter one Cutomer Name \n\r " + e.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (mlV_Products_Income.CheckedItems.Count != 0) { foreach (var item in mlV_Products_Income.CheckedIndices) { string a = mlV_Products_Income.Items[Convert.ToInt32(item)].Text; obj_Income.Products = obj_Income.Products + a + ", "; } } else { obj_Income.Products = " "; } if (db.Entry <Income>(obj_Income).State == System.Data.Entity.EntityState.Detached) { db.Set <Income>().Attach(obj_Income); } if (obj_Income.ObjectState == 1) { db.Entry <Income>(obj_Income).State = System.Data.Entity.EntityState.Added; } else if (obj_Income.ObjectState == 2) { db.Entry <Income>(obj_Income).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Income.Enabled = false; obj_Income.ObjectState = 0; TabControl.RefreshIncome(List_Income); return; } } else if (mTC_Accounting.SelectedTab == mTP_Expenses) { Expense obj_Expense = expensesBindingSource.Current as Expense; if (obj_Expense != null) { if (obj_Expense.Details == null) { obj_Expense.Details = "No Details "; } if (db.Entry <Expense>(obj_Expense).State == System.Data.Entity.EntityState.Detached) { db.Set <Expense>().Attach(obj_Expense); } if (obj_Expense.ObjectState == 1) { db.Entry <Expense>(obj_Expense).State = System.Data.Entity.EntityState.Added; } else if (obj_Expense.ObjectState == 2) { db.Entry <Expense>(obj_Expense).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Expenses.Enabled = false; obj_Expense.ObjectState = 0; TabControl.RefreshExpenses(List_Expenses); return; } } else if (mTC_Accounting.SelectedTab == mTP_Produkts) { Produkt obj_Produkt = produktBindingSource.Current as Produkt; if ((obj_Produkt.Unit < 0) && (obj_Produkt.Unit > obj_Produkt.Units.Count)) { MetroMessageBox.Show(this, "Pleaser select one Unit\n\r " + e.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (obj_Produkt != null) { obj_Produkt.Unit = mCB_Produkts_Unit.SelectedIndex; if (db.Entry <Produkt>(obj_Produkt).State == System.Data.Entity.EntityState.Detached) { db.Set <Produkt>().Attach(obj_Produkt); } if (obj_Produkt.ObjectState == 1) { db.Entry <Produkt>(obj_Produkt).State = System.Data.Entity.EntityState.Added; } if (obj_Produkt.ObjectState == 2) { db.Entry <Produkt>(obj_Produkt).State = System.Data.Entity.EntityState.Modified; } db.SaveChanges(); mP_Produkts.Enabled = false; obj_Produkt.ObjectState = 0; TabControl.RefreshProdukt(List_Produkts, mlV_Products_Income); } } } }