public ValidationDictionary <ViewModelPage> SavePage(int clientId, ViewModelPage viewModelPage) { // validation first var validator = new ValidationDictionary <ViewModelPage>(); if (viewModelPage == null) { validator.IsValid = false; validator.AddError("", "Page you're trying to save is null"); return(validator); } // rule based if (viewModelPage.IsHomePage) { } DynamicPage dPage; if (viewModelPage.PageId <= 0) { // prepare object to save dPage = new DynamicPage(); dPage.InjectFrom(viewModelPage); dPage.ClientId = clientId; dPage.DateCreated = DateTime.UtcNow; dPage.DateLastUpdated = DateTime.UtcNow; _pageRepository.Add(dPage); } else { var gExpression = _dynamicPageFilters.Init() .GetByPageId(viewModelPage.PageId) .GetByClientId(clientId) .GetNotDeleted() .FilterExpression; dPage = _pageRepository.FindBy(gExpression); if (dPage != null) { // excluded fields var createdDate = dPage.DateCreated; // update data dPage.InjectFrom(viewModelPage); dPage.DateCreated = createdDate; dPage.DateLastUpdated = DateTime.UtcNow; dPage.IsDeleted = false; _pageRepository.Update(dPage); } } var pingedPaged = GetPage(clientId, dPage.PageId); validator.IsValid = true; validator.RelatedObject = pingedPaged; return(validator); }
/// <inheritdoc /> public bool Predicate(ViewModelPage viewModel) { if (Goal == null) { return(true); } return(Goal.Predicate(viewModel)); }
public ViewModelPage GetCustomerPaging(int numberPage, int perPage) { int _customersCount = GetCustomers().Count(); int _countPages = (_customersCount / perPage) + (_customersCount % perPage == 0 ? 0 : 1); var page = new ViewModelPage(); page.ActualPage = numberPage; page.CountCustomers = GetCustomers().Count(); page.CountPages = _countPages; page.customers = GetCustomers().Skip(numberPage * perPage).Take(perPage).ToList(); return(page); }
public ViewModelPage GetPageByPageUrl(int clientId, string pageUrl) { var expression = _dynamicPageFilters.Init() .GetByClientId(clientId) .GetByPageUrl(pageUrl) .FilterExpression; var pageFromDb = _pageRepository.FindBy(expression); var viewModelPage = new ViewModelPage(); viewModelPage.InjectFrom(pageFromDb); return(viewModelPage); }
public Response <DtoBuncisPage> BPInsertPage(int clientId, DtoBuncisPage page) { var service = IoC.Resolve <IDynamicPageService>(); var viewModel = new ViewModelPage().InjectFrom(page) as ViewModelPage; var result = service.SavePage(clientId, viewModel); var response = new Response <DtoBuncisPage>(); response.IsSuccess = result.IsValid; response.Message = result.ValidationSummaryToString(); if (response.IsSuccess) { var responseObject = new DtoBuncisPage().InjectFrom(result.RelatedObject) as DtoBuncisPage; response.ResponseObject = responseObject; } return(response); }
public IEnumerable <ViewModelPage> GetAvailablePages(int clientId) { var expression = _dynamicPageFilters.Init() .GetByClientId(clientId) .GetNotDeleted() .FilterExpression; var pages = _pageRepository .FilterBy(expression) .OrderBy(o => o.PageName).ToList(); var viewModels = pages.Select(o => { var viewModelPage = new ViewModelPage(); viewModelPage.InjectFrom(o); return(viewModelPage); }).ToList(); return(viewModels); }
/// <inheritdoc /> public bool Predicate(ViewModelPage viewModel) { return(viewModel.Key == Key); }