public ICollection <DonatorViewModel> GetDonatorsWithDonations(ICollection <string> FileNames) { List <DonatorViewModel> DonatorsWithDonations = new List <DonatorViewModel>(); foreach (var donator in _context.Donators) { DonatorViewModel _donator = new DonatorViewModel() { DonatorId = donator.DonatorId, FirstName = donator.FirstName, LastName = donator.LastName, BloodGroup = donator.BloodGroup, BloodFactor = donator.BloodFactor, Donations = new List <Donation>() }; if (FileNames.Count == 0) { _donator.Donations = _context.Donations.Where(z => z.DonatorId == _donator.DonatorId).ToList(); } else { _donator.Donations = _context.Donations.Where(z => z.DonatorId == _donator.DonatorId && FileNames.Contains(z.OriginFileName)).ToList(); } DonatorsWithDonations.Add(_donator); } return(DonatorsWithDonations); }
/// <summary> /// Add an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public DonatorViewModel Add(DonatorViewModel model) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._DonatorsRepository.Add(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion this._AddresssRepository.Add(new Address { ObjectId = entity.Id, ObjectType = ObjectType.Donator, IsActive = true, IsMain = true, Description = model.Address }); this._MailsRepository.Add(new Mail { ObjectId = entity.Id, ObjectType = ObjectType.Donator, IsActive = true, IsMain = true, Email = model.Email }); this._MobilesRepository.Add(new Mobile { ObjectId = entity.Id, ObjectType = ObjectType.Donator, IsActive = true, IsMain = true, Number = model.Phone }); #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }
/// <summary> /// Delete an entity. /// </summary> /// <param name="model"></param> public void Delete(DonatorViewModel model) { var entity = model.ToEntity(); this._DonatorsRepository.Delete(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion }
/// <summary> /// Throw an exception if name is exist. /// </summary> /// <param name="model">Donator view model</param> public void ThrowExceptionIfExist(DonatorViewModel model) { ConditionFilter <Donator, long> condition = new ConditionFilter <Donator, long> { Query = (entity => entity.Name == model.Name && entity.Id != model.Id) }; var existEntity = this._DonatorsRepository.Get(condition).FirstOrDefault(); if (existEntity != null) { throw new ItemAlreadyExistException(); } }
/// <summary> /// Update an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public DonatorViewModel Update(DonatorViewModel model) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._DonatorsRepository.Update(entity); Mobile mobile = this._MobilesRepository.Get().FirstOrDefault(x => x.ObjectId == entity.Id && x.ObjectType == ObjectType.Donator); mobile.Number = model.Phone; this._MobilesRepository.Update(mobile); Mail mail = this._MailsRepository.Get().FirstOrDefault(x => x.ObjectId == entity.Id && x.ObjectType == ObjectType.Donator); mail.Email = model.Email; this._MailsRepository.Update(mail); Address address = this._AddresssRepository.Get().FirstOrDefault(x => x.ObjectId == entity.Id && x.ObjectType == ObjectType.Donator); if (address == null) { address = new Address { ObjectId = entity.Id, ObjectType = ObjectType.Donator, Description = model.Address, IsActive = true, IsMain = true }; this._AddresssRepository.Add(address); } else { address.Description = model.Address; this._AddresssRepository.Update(address); } #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }
public ActionResult Index(DonatorViewModel dvm) { if (ModelState.IsValid) { db.Donators.Add(new Donator() { FirstName = dvm.FirstName, MiddleName = dvm.MiddleName, LastName = dvm.LastName, Address = dvm.Address, ContactNo = dvm.ContactNo, Email = dvm.Email, DonatingAmount = dvm.DonatingAmount, FeildToSpend = dvm.FeildToSpend }); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(dvm)); }
public RegisterDonatorViewModel() { DonatorViewModel = new DonatorViewModel(); InstitutiiAsociate = new ObservableCollection <InstitutieAsociata>(); HandleRegisterCommand = new BasicCommandWithParameter(Register); var institutii = AppService.Instance.InstitutieAsociataService.GetAll(); institutii.ToList().ForEach(x => { InstitutiiAsociate.Add(x); }); GrupeDeSange = new ObservableCollection <GrupaDeSange>(); var grupe = AppService.Instance.GrupaDeSangeService.GetAll(); grupe.ToList().ForEach(x => { GrupeDeSange.Add(x); }); GrupaDeSange = GrupeDeSange[0]; InstitutieSelectata = InstitutiiAsociate[0]; }
public DonatorsController() { _donatorService = new DonatorService(db); _csvReaderService = new CsvReaderService(); viewModel = new DonatorViewModel(db); }