public List <ContractViewModel> GetFullList() { using (var context = new ComputerRepairDatabase()) { return(context.Contract .Include(rec => rec.Employee) .Include(rec => rec.ServicesContracts) .ThenInclude(rec => rec.Services) .Include(rec => rec.MaterialsContracts) .ThenInclude(rec => rec.Materials) .Include(rec => rec.Payment) .Include(rec => rec.CustomerBase) .Select(rec => new ContractViewModel { Id = rec.Id, DateOfConclusion = rec.DateOfConclusion, CustomerBaseId = rec.CustomerBase.Id, EmployeeId = rec.Employee.Id, CustomerBase = rec.CustomerBase.Surname, Employee = rec.Employee.Surname, Payment = rec.Payment.Summ, Materials = rec.MaterialsContracts .Select(rc => new MaterialsViewModel { Id = rc.Materials.Id, Name = rc.Materials.Name, Price = rc.Materials.Price }) .ToList(), Services = rec.ServicesContracts .Select(rc => new ServicesViewModel { Id = rc.Services.Id, Name = rc.Services.Name, Price = rc.Services.Price }) .ToList() }) .ToList()); } }
public void Insert(CustomerBaseBindingModel model) { using (var context = new ComputerRepairDatabase()) { context.CustomerBase.Add(CreateModel(model, new CustomerBase())); context.SaveChanges(); } }
public void Insert(EmployeeBindingModel model) { using (var context = new ComputerRepairDatabase()) { context.Employee.Add(CreateModel(model, new Employee())); context.SaveChanges(); } }
public void Insert(ServicesBindingModel model) { using (var context = new ComputerRepairDatabase()) { context.Services.Add(CreateModel(model, new Services())); context.SaveChanges(); } }
public void Insert(PaymentBindingModel model) { using (var context = new ComputerRepairDatabase()) { context.Payment.Add(CreateModel(model, new Payment())); context.SaveChanges(); } }
private Contract CreateModel(ContractBindingModel model, Contract contract, ComputerRepairDatabase context) { contract.CustomerBaseid = model.CustomerBaseId; contract.Employeeid = model.EmployeeId; contract.Paymentid = model.PaymentId; contract.DateOfConclusion = model.DateOfConclusion; if (contract.Id == 0) { context.Contract.Add(contract); context.SaveChanges(); } if (model.Id.HasValue) { List <ServicesContract> servicesContract = context.ServicesContract.Where(rec => rec.Contractid == model.Id.Value).ToList(); // удалили те, которых нет в модели context.ServicesContract.RemoveRange(servicesContract.Where(rec => !model.ServicesContract.Contains(rec.Servicesid)).ToList()); context.SaveChanges(); // обновили количество у существующих записей foreach (var updateServices in servicesContract) { model.ServicesContract.Remove(updateServices.Servicesid); } List <MaterialsContract> materialsContract = context.MaterialsContract.Where(rec => rec.Contractid == model.Id.Value).ToList(); // удалили те, которых нет в модели context.MaterialsContract.RemoveRange(materialsContract.Where(rec => !model.MaterialsContract.Contains(rec.Materialsid)).ToList()); context.SaveChanges(); // обновили количество у существующих записей foreach (var updateMaterials in materialsContract) { model.MaterialsContract.Remove(updateMaterials.Materialsid); } context.SaveChanges(); } // добавили новые foreach (var pc in model.ServicesContract) { context.ServicesContract.Add(new ServicesContract { Contractid = contract.Id, Servicesid = pc }); context.SaveChanges(); } foreach (var pc in model.MaterialsContract) { context.MaterialsContract.Add(new MaterialsContract { Contractid = contract.Id, Materialsid = pc }); context.SaveChanges(); } return(contract); }
public List <ServicesViewModel> GetFullList() { using (var context = new ComputerRepairDatabase()) { return(context.Materials.Select(rec => new ServicesViewModel { Id = rec.Id, Name = rec.Name, Price = rec.Price }).ToList()); } }
public List <PaymentViewModel> GetFullList() { using (var context = new ComputerRepairDatabase()) { return(context.Payment.Select(rec => new PaymentViewModel { Id = rec.Id, DateOfPayment = rec.DateOfPayment, Summ = rec.Summ }).ToList()); } }
public void Update(ServicesBindingModel model) { using (var context = new ComputerRepairDatabase()) { var element = context.Services.FirstOrDefault(rec => rec.Id == model.Id); if (element == null) { throw new Exception("Элемент не найден"); } CreateModel(model, element); context.SaveChanges(); } }
public List <CustomerBaseViewModel> GetFullList() { using (var context = new ComputerRepairDatabase()) { return(context.Employee.Select(rec => new CustomerBaseViewModel { Id = rec.Id, Surname = rec.Surname, Name = rec.Name, Lastname = rec.Lastname, DateOfBirthday = rec.DateOfBirthday, }).ToList()); } }
public void Delete(ContractBindingModel model) { using (var context = new ComputerRepairDatabase()) { var contract = context.Contract.FirstOrDefault(rec => rec.Id == model.Id); if (contract != null) { context.Contract.Remove(contract); context.SaveChanges(); } else { throw new Exception("Заказ не найден"); } } }
public void Delete(CustomerBaseBindingModel model) { using (var context = new ComputerRepairDatabase()) { var element = context.CustomerBase.FirstOrDefault(rec => rec.Id == model.Id); if (element != null) { context.CustomerBase.Remove(element); context.SaveChanges(); } else { throw new Exception("Элемент не найден"); } } }
public PaymentViewModel GetElement(PaymentBindingModel model) { if (model == null) { return(null); } using (var context = new ComputerRepairDatabase()) { var payment = context.Payment.FirstOrDefault(rec => rec.Id == model.Id); return(payment != null ? new PaymentViewModel { Id = payment.Id, Summ = payment.Summ, DateOfPayment = payment.DateOfPayment } : null); } }
public MaterialsViewModel GetElement(MaterialsBindingModel model) { if (model == null) { return(null); } using (var context = new ComputerRepairDatabase()) { var material = context.Materials.FirstOrDefault(rec => rec.Id == model.Id); return(material != null ? new MaterialsViewModel { Id = material.Id, Name = material.Name, Price = material.Price } : null); } }
public ServicesViewModel GetElement(ServicesBindingModel model) { if (model == null) { return(null); } using (var context = new ComputerRepairDatabase()) { var service = context.Materials.FirstOrDefault(rec => rec.Id == model.Id); return(service != null ? new ServicesViewModel { Id = service.Id, Name = service.Name, Price = service.Price } : null); } }
public void Insert(ContractBindingModel model) { using (var context = new ComputerRepairDatabase()) { using (var transaction = context.Database.BeginTransaction()) { try { CreateModel(model, new Contract(), context); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } }
public CustomerBaseViewModel GetElement(CustomerBaseBindingModel model) { if (model == null) { return(null); } using (var context = new ComputerRepairDatabase()) { var custBase = context.CustomerBase.FirstOrDefault(rec => rec.Id == model.Id); return(custBase != null ? new CustomerBaseViewModel { Id = custBase.Id, Surname = custBase.Surname, Name = custBase.Name, Lastname = custBase.Lastname, DateOfBirthday = custBase.DateOfBirthday } : null); } }
public EmployeeViewModel GetElement(EmployeeBindingModel model) { if (model == null) { return(null); } using (var context = new ComputerRepairDatabase()) { var employee = context.Employee.FirstOrDefault(rec => rec.Id == model.Id); return(employee != null ? new EmployeeViewModel { Id = employee.Id, Surname = employee.Surname, Name = employee.Name, Lastname = employee.Lastname, DateOfBirthday = employee.DateOfBirthday, Post = employee.Post } : null); } }
public ContractViewModel GetElement(ContractBindingModel model) { if (model == null) { return(null); } using (var context = new ComputerRepairDatabase()) { var contract = context.Contract .Include(rec => rec.Employee) .Include(rec => rec.ServicesContracts) .ThenInclude(rec => rec.Services) .Include(rec => rec.MaterialsContracts) .ThenInclude(rec => rec.Materials) .Include(rec => rec.Payment) .Include(rec => rec.CustomerBase) .FirstOrDefault(rec => rec.Id == model.Id); return(contract != null ? new ContractViewModel { Id = contract.Id, DateOfConclusion = contract.DateOfConclusion, CustomerBaseId = contract.CustomerBase.Id, EmployeeId = contract.Employee.Id, CustomerBase = contract.CustomerBase.Surname, Employee = contract.Employee.Surname, Payment = contract.Payment.Summ, Materials = contract.MaterialsContracts .Select(rc => new MaterialsViewModel { Id = rc.Materials.Id, Name = rc.Materials.Name, Price = rc.Materials.Price }) .ToList(), Services = contract.ServicesContracts .Select(rc => new ServicesViewModel { Id = rc.Services.Id, Name = rc.Services.Name, Price = rc.Services.Price }) .ToList() } : null); } }
public void Update(ContractBindingModel model) { using (var context = new ComputerRepairDatabase()) { using (var transaction = context.Database.BeginTransaction()) { try { var element = context.Contract.FirstOrDefault(rec => rec.Id == model.Id); if (element == null) { throw new Exception("Элемент не найден"); } CreateModel(model, element, context); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } }