/// <summary> /// Configures model creation /// </summary> /// <param name="modelBuilder">modelBuilder to configure Model Creation</param> protected override void OnModelCreating(ModelBuilder modelBuilder) { User.Configure(modelBuilder); Phone.Configure(modelBuilder); Address.Configure(modelBuilder); UserAddress.Configure(modelBuilder); Role.Configure(modelBuilder); Organization.Configure(modelBuilder); OrgAddress.Configure(modelBuilder); ExternalContact.Configure(modelBuilder); Membership.Configure(modelBuilder); Currency.Configure(modelBuilder); BankAccount.Configure(modelBuilder); OrgAccount.Configure(modelBuilder); Balance.Configure(modelBuilder); Target.Configure(modelBuilder); FinOp.Configure(modelBuilder); Tag.Configure(modelBuilder); TagFinOp.Configure(modelBuilder); Event.Configure(modelBuilder); EventImage.Configure(modelBuilder); Complaint.Configure(modelBuilder); GoodsType.Configure(modelBuilder); GoodsCategory.Configure(modelBuilder); OfferedItem.Configure(modelBuilder); RequestedItem.Configure(modelBuilder); BankImport.Configure(modelBuilder); BankImportDetail.Configure(modelBuilder); PasswordReset.Configure(modelBuilder); BannedUser.Configure(modelBuilder); BannedOrganization.Configure(modelBuilder); SubscribeOrganization.Configure(modelBuilder); Status.Configure(modelBuilder); OfferedItemImage.Configure(modelBuilder); RequestedItemImage.Configure(modelBuilder); UserResponse.Configure(modelBuilder); OrganizationResponse.Configure(modelBuilder); Donation.Configure(modelBuilder); Bank.Configure(modelBuilder); AutoImportIntervals.Configure(modelBuilder); }
public AutoImportIntervals Update(AutoImportIntervals autoImportIntervals) { return(_context.Update(autoImportIntervals).Entity); }
public AutoImportIntervals Create(AutoImportIntervals item) { return(_context.AutoImportInterval.Add(item).Entity); }
/// <summary> /// Registers new organization /// </summary> /// <param name="item"> Item to register </param> /// <returns>Registered item</returns> public OrganizationRegistrationViewModel RegisterOrganization(OrganizationRegistrationViewModel item) { var checkOrganization = _unitOfWork.OrganizationRepository.Read().Where(o => o.Name == item.Name).FirstOrDefault(); if (checkOrganization == null) { var user = _unitOfWork.UsersRepository.GetUser(item.AdministratorLogin); if (user != null) { var role = _unitOfWork.RoleRepository.Read().Where(r => r.Name == "admin").FirstOrDefault(); var checkMembership = _unitOfWork.MembershipRepository.Read().Where(m => (m.UserId == user.Id) && (m.RoleId == role.Id)).FirstOrDefault(); if (checkMembership == null) { var t = _imgManageService.UploadImageAsync(Convert.FromBase64String(item.LogoBase64Code), item.LogoImageExtension); Task.WhenAll(t); var organization = new Organization { Name = item.Name, Description = item.Description, LogoUrl = t.Result }; _unitOfWork.OrganizationRepository.Create(organization); var membership = new Membership { UserId = user.Id, OrgId = organization.Id, RoleId = role.Id }; _unitOfWork.MembershipRepository.Create(membership); var address = new Address { City = item.City, Street = item.Street, Country = item.Country, Building = item.House }; _unitOfWork.AddressRepository.Create(address); var orgAddres = new OrgAddress { OrgId = organization.Id, AddressId = address.Id }; _unitOfWork.OrganizationAddressRepository.Create(orgAddres); organization.OrgAddresses.Add(orgAddres); var interval = new AutoImportIntervals { OrgId = organization.Id, Interval = Constants.DefaultImportInterval, LastUpdateDate = DateTime.Now }; _unitOfWork.ImportIntervalRepository.Create(interval); _unitOfWork.SaveChanges(); var result = new OrganizationRegistrationViewModel { Name = organization.Name, AdministratorLogin = item.AdministratorLogin, City = address.City, Country = address.Country, Street = address.Street, Description = organization.Description, House = address.Building }; return(result); } else { item.UserError = "Цей користувач вже адмініструє організацію"; return(item); } } item.UserError = "Користувача з таким логіном не зареєстровано"; return(item); } item.NameError = "Організація з такою назвою вже існує"; return(item); }