public async Task Sets_schools_breadcrumb() { var model = new SchoolsViewModel(Mock.Of <IPublishedContent>(), Mock.Of <IUserService>()) { Filter = new SchoolFilter() }; var dataSource = new Mock <ISchoolDataSource>(); var listingsBuilder = new Mock <IListingsModelBuilder <School, SchoolFilter, SchoolsViewModel> >(); listingsBuilder.Setup(x => x.BuildModel( It.IsAny <Func <SchoolsViewModel> >(), dataSource.Object.ReadTotalSchools, dataSource.Object.ReadSchools, Constants.Pages.Schools, _pageUrl, _queryString )).Returns(Task.FromResult(model)); using (var controller = CreateController(dataSource.Object, listingsBuilder.Object)) { var result = await controller.Index(new ContentModel(Mock.Of <IPublishedContent>())).ConfigureAwait(false); var breadcrumbs = (((ViewResult)result).Model as BaseViewModel).Breadcrumbs; Assert.Equal(2, breadcrumbs.Count); Assert.Equal(Constants.Pages.Home, breadcrumbs[0].Name); Assert.Equal(Constants.Pages.Schools, breadcrumbs[1].Name); } }
public async Task Returns_SchoolsViewModel_from_builder() { var model = new SchoolsViewModel(Mock.Of <IPublishedContent>(), Mock.Of <IUserService>()) { Filter = new SchoolFilter() }; var dataSource = new Mock <ISchoolDataSource>(); var listingsBuilder = new Mock <IListingsModelBuilder <School, SchoolFilter, SchoolsViewModel> >(); listingsBuilder.Setup(x => x.BuildModel( It.IsAny <Func <SchoolsViewModel> >(), dataSource.Object.ReadTotalSchools, dataSource.Object.ReadSchools, Constants.Pages.Schools, _pageUrl, _queryString )).Returns(Task.FromResult(model)); using (var controller = CreateController(dataSource.Object, listingsBuilder.Object)) { var result = await controller.Index(new ContentModel(Mock.Of <IPublishedContent>())).ConfigureAwait(false); listingsBuilder.Verify(x => x.BuildModel( It.IsAny <Func <SchoolsViewModel> >(), dataSource.Object.ReadTotalSchools, dataSource.Object.ReadSchools, Constants.Pages.Schools, _pageUrl, _queryString ), Times.Once); Assert.Equal(model, ((ViewResult)result).Model); } }
public async Task <IActionResult> SearchSchools(string schoolName, string continent, string country, string city, [FromQuery] int page = 1) { SchoolsViewModel schoolsList = new SchoolsViewModel(); var query = _context.School .Include(e => e.City) .Include(e => e.Continent); var resultQuery = query.Where(e => ((string.IsNullOrEmpty(schoolName) ? e.Id > 0 : e.Name.Contains(schoolName)) && (string.IsNullOrEmpty(continent) ? e.Id > 0 : e.Continent.Name.Contains(continent)) && (string.IsNullOrEmpty(city) ? e.Id > 0 : e.City.Name.Contains(city)) && (string.IsNullOrEmpty(country) ? e.Id > 0 : e.Country.Contains(country)))) .ToList(); var limitedResult = resultQuery .Skip((page - 1) * pageSize) .Take(pageSize); schoolsList.Schools = limitedResult; schoolsList.CurrentPage = page; schoolsList.TotalPages = (resultQuery.Count() / pageSize); return(View(schoolsList)); }
public SchoolsViewModel All() { var schools = this.schoolsRepository.AllAsNoTracking() .Select(x => new SingleSchoolViewModel { Id = x.Id, Name = x.Name, Address = x.Address, }) .ToList(); foreach (var school in schools) { var posts = this.postsRepository.AllAsNoTracking() .Where(x => x.Id == school.Id) .Select(x => new SinglePostViewModel { Id = x.Id, Title = x.Title, Content = x.Content, CreatedOn = x.CreatedOn, }) .ToList(); school.Posts = posts; } var viewModel = new SchoolsViewModel { Schools = schools, }; return(viewModel); }
public SchoolSearchReturnViewModel Add([FromBody] SchoolsViewModel model) { try { Schools schools = new Schools(); model.PeriodId = _IPeriods.PeriodId; model.Active = true; schools.Type002 = "002"; schools.Type003 = "003"; schools.Type004 = "004"; schools.Type006 = "006"; Mapper.Map(model, schools); _context.Schools.Attach(schools); _context.SaveChanges(); _context.SchoolsStatus.Attach(new SchoolsStatus() { PeriodId = _IPeriods.PeriodId, Type001 = "001", PeriodYear = _IPeriods.PeriodYear, SchoolId = schools.SchoolId, StatusCode = model.StatusCode, UserID = model.UserID, }); _context.SaveChanges(); SchoolSearchReturnViewModel school = (from s in _context.Schools where s.SchoolId == schools.SchoolId select new SchoolSearchReturnViewModel { SchoolId = s.SchoolId, Name = s.Name }).First(); return(school); } catch (Exception ex) { var error = ex.InnerException; return(new SchoolSearchReturnViewModel()); } }
public void Update(SchoolsViewModel model) { var entity = new Schools(); entity.MemberID = model.MemberID; entity.TaxNumber = model.TaxNumber; entity.SchoolName = model.SchoolName; entity.ContactPerson = model.ContactPerson; entity.Country = model.Country; entity.Address = model.Address; entity.Phone = model.Phone; entity.Email = model.Email; entity.Website = model.Website; entity.SocialMedia = model.SocialMedia; entity.LoginName = model.LoginName; entities.Schools.Attach(entity); entities.Entry(entity).State = EntityState.Modified; entities.SaveChanges(); }
public void Create(SchoolsViewModel model) { Schools entity = new Schools() { MemberID = model.MemberID, TaxNumber = model.TaxNumber, SchoolName = model.SchoolName, ContactPerson = model.ContactPerson, Country = model.Country, Address = model.Address, Phone = model.Phone, Email = model.Email, Website = model.Website, SocialMedia = model.SocialMedia, LoginName = model.LoginName }; entities.Schools.Add(entity); entities.SaveChanges(); }
public IActionResult Index() { var schools = this.schoolsRepository.AllAsNoTrackingWithDeleted() .Select(x => new SingleSchoolViewModel { Id = x.Id, Name = x.Name, CreatedOn = x.CreatedOn, ModifiedOn = (System.DateTime)x.ModifiedOn, IsDeleted = x.IsDeleted, DeletedOn = (System.DateTime)x.DeletedOn, }) .ToList(); var viewModel = new SchoolsViewModel { Schools = schools, }; return(this.View(viewModel)); }
public bool Edit([FromBody] SchoolsViewModel model) { try { Schools db = _context.Schools.Where(s => s.SchoolId == model.SchoolId).FirstOrDefault(); SchoolsStatus dbSchoolsStatus = _context.SchoolsStatus.Where(s => s.PeriodId == _IPeriods.PeriodId && s.PeriodYear == _IPeriods.PeriodYear && s.SchoolId == model.SchoolId).FirstOrDefault(); SchoolsComments schoolsComments = _context.SchoolsComments.Where(s => s.PeriodId == _IPeriods.PeriodId && s.SchoolId == model.SchoolId).FirstOrDefault(); if (model.Comments != null) { if (schoolsComments == null) { schoolsComments = new SchoolsComments(); schoolsComments.Comments = model.Comments; schoolsComments.UserID = model.UserID; schoolsComments.SchoolId = model.SchoolId; schoolsComments.PeriodId = _IPeriods.PeriodId; _context.SchoolsComments.Add(schoolsComments); } else { schoolsComments.Comments = model.Comments; schoolsComments.UserID = model.UserID; _context.SchoolsComments.Attach(schoolsComments); } _context.SaveChanges(); } if (dbSchoolsStatus != null) { if (dbSchoolsStatus.SchoolId == model.SchoolId) { Mapper.Map(model, dbSchoolsStatus); dbSchoolsStatus.Type001 = "001"; dbSchoolsStatus.PeriodId = _IPeriods.PeriodId; dbSchoolsStatus.PeriodYear = _IPeriods.PeriodYear; _context.SchoolsStatus.Update(dbSchoolsStatus); _context.SaveChanges(); } } else { _context.SchoolsStatus.Add(new SchoolsStatus() { PeriodId = _IPeriods.PeriodId, PeriodYear = _IPeriods.PeriodYear, SchoolId = model.SchoolId, StatusCode = model.StatusCode, UserID = model.UserID, }); _context.SaveChanges(); } if (db.SchoolId == model.SchoolId) { Mapper.Map(model, db); db.PeriodId = _IPeriods.PeriodId; _context.Schools.Update(db); return(_context.SaveChanges() == 1 ? true : false); } else { return(false); } } catch (Exception ex) { var error = ex.InnerException; return(false); } }