Exemplo n.º 1
0
        public ActionResult LoadProfile(string profileName)
        {
            var currentUserEmail = User.GetCurrentUserCreads().Email;

            var leadAdapter = new LeadAdapter();
            var service     = new SearchService <LeadViewModel>();

            var profiles = Mapper.Map <List <GridProfileViewModel> >(
                service.GetUserProfiles(currentUserEmail, profileName)
                );

            return(PartialView("~/Views/Grid/_GridPagePartial.cshtml", service.FillLeadModelByProfile(profiles.FirstOrDefault())));
        }
Exemplo n.º 2
0
        public SearchViewModel FillLeadModelByProfile(GridProfileViewModel profile)
        {
            var leadAdapter = new LeadAdapter();
            var model       = new SearchViewModel();

            model.Columns     = profile?.GridFields ?? new List <GridFieldViewModel>();
            model.Field       = profile?.SearchField;
            model.SearchValue = profile?.SearchValue;

            int totalItems;

            var result = leadAdapter.GetLeadsByFilter(
                model.Field,
                model.SearchValue,
                model.OrderField,
                model.Page,
                model.ItemsPerPage,
                out totalItems,
                model.OrderDirection);

            var items = Mapper.Map <List <Lead>, List <LeadViewModel> >(result);

            model.Items      = items.ToList <IUser>();
            model.ItemsCount = totalItems;

            if (!model.Columns.Any())
            {
                var columns = ReflectionService.GetModelProperties <LeadViewModel>();
                for (int i = 0; i < columns.Count; i++)
                {
                    model.Columns.Add(new GridFieldViewModel(columns[i], true, 0, i));
                }
            }

            return(model);
        }
Exemplo n.º 3
0
        public ActionResult Search(SearchViewModel model)
        {
            model.TableName = "Leads";
            var currentUserEmail = User.GetCurrentUserCreads()?.Email;

            var leadAdapter = new LeadAdapter();
            int totalItems;

            var result = leadAdapter.GetLeadsByFilter(
                model.Field,
                model.SearchValue,
                model.OrderField,
                model.Page,
                model.ItemsPerPage,
                out totalItems,
                model.OrderDirection);

            var items = Mapper.Map <List <Lead>, List <LeadViewModel> >(result);

            model.Items      = items.ToList <Interfaces.IUser>();
            model.ItemsCount = totalItems;

            return(PartialView("~/Views/Grid/_GridPagePartial.cshtml", model));
        }