using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data;
using System.Linq;
using System.Windows;
namespace eCompanies
{
///
/// Логика взаимодействия для App.xaml
///
public partial class App : Application
{
public static ObservableCollection getCompanies()
{
using (var db = new CompaniesDBContext())
return new ObservableCollection(db.Company.AsEnumerable());
}
public static HashSet getUsers(int id)
{
using (var db = new CompaniesDBContext())
return new HashSet(db.Users.Where(b => b.CompanyId.Equals(id)));
}
public static void addCompany(Company c)
{
using (var db = new CompaniesDBContext())
{
c.CompanyId = 0;
db.Company.Add(c);
db.SaveChanges();
}
}
public static void updateCompany(Company c)
{
using (var db = new CompaniesDBContext())
{
db.Company.Update(c);
db.SaveChanges();
}
}
public static void removeCompany(int id)
{
using (var db = new CompaniesDBContext())
{
var x = db.Company.Where(i => i.CompanyId.Equals(id));
foreach (Company c in x) db.Company.Remove(c);
db.SaveChanges();
}
}
public static void removeUser(int id)
{
using (var db = new CompaniesDBContext())
{
var x = db.Users.Where(i => i.UserId.Equals(id));
foreach (Users u in x) db.Users.Remove(u);
db.SaveChanges();
}
}
public static MessageBoxResult saveResultsMsgBox()
{
return MessageBox.Show("Вы закрываете окно с компаниями. Хотите сохранить результаты?",
"Сохранение изменений",
MessageBoxButton.YesNoCancel);
}
public static MessageBoxResult fieldHasNotFilled()
{
return MessageBox.Show("Вы не заполнили поле [Название компании]! " +
"Вернуться к форме для исправления? (При ответе Нет все данные будут потеряны!)",
"Поле [Название компании] не может быть пустым!",
MessageBoxButton.YesNo);
}
}
}