private ElementFilter<ClientCompanyColumnName, ClientCompany, ClientCompaniesListFilter> BuildFilter(ClientCompaniesListFilter filter) { var companyActiveStatus = ClientCompanyStatus.Active.ToString(); var companyInactiveStatus = ClientCompanyStatus.Inactive.ToString(); IEnumerable<string> filterStatuses = new[] { companyActiveStatus, companyInactiveStatus }; if (filter.FilterByActiveStatus || filter.FilterByInactiveStatus) { if (!filter.FilterByActiveStatus) { filterStatuses = filterStatuses.Where(e => e != companyActiveStatus); } if (!filter.FilterByInactiveStatus) { filterStatuses = filterStatuses.Where(e => e != companyInactiveStatus); } } return ShorFilter.AddFilter<ClientCompanyColumnName, ClientCompany, ClientCompaniesListFilter>(f => !string.IsNullOrWhiteSpace(f.CompanyName), c => c.CompanyName.ToUpper().Contains(filter.CompanyName.ToUpper())). AddFilter(f => !string.IsNullOrWhiteSpace(f.CompanyId), c => c.CompanyId.ToUpper().Contains(filter.CompanyId.ToUpper())). AddFilter(f => true, c => filterStatuses.Contains(c.StatusId)). AddFilter(f => filter.IsWholesaleChannel, c => c.Profile.IsWholesale). AddFilter(f => filter.IsLender, c => c.Profile.IsLender). AddOrders(ClientCompanyColumnName.CompanyNameOrder, c => c.CompanyName). AddOrders(ClientCompanyColumnName.CompanyIdOrder, c => c.CompanyId). AddOrders(ClientCompanyColumnName.Status, c => c.StatusId); }
public IEnumerable<ClientCompanyViewModel> GetClientCompanies(ClientCompaniesListFilter filter) { var companyFilter = BuildFilter(filter); return _clientCompanyManagement.GetCompanies(companyFilter.ToFuncWithPagging(filter)).ToArray() .Select(e => new ClientCompanyViewModel(e, e.Profile != null ? _referenceManagement.FindState(e.Profile.Address.State) : "")); }
private Dictionary<string, string> GetCompanies() { var filter = new ClientCompaniesListFilter { FilterByActiveStatus = true, ItemsPerPage = int.MaxValue, PageNumber = 1, IsWholesaleChannel = true, IsLender = true }; var companies = _clientCompaniesService.GetCompaniesDictionary(filter, string.Empty); var dict = new Dictionary<string, string> { { string.Empty, Constants.Text.NoSelection } }; foreach (var cmp in companies) { dict.Add(cmp.Key.ToString(), cmp.Value); } return dict; }
public int GetCountClientCompanies(ClientCompaniesListFilter filter) { var companyFilter = BuildFilter(filter); return _clientCompanyManagement.GetCompaniesCount(companyFilter.ToFunc(filter)); }
public Dictionary<int, string> GetCompaniesDictionary(ClientCompaniesListFilter filter, string currentCompanyId, bool withNoSelection = false) { var dict = new Dictionary<int, string>(); if (withNoSelection) { dict.Add(Constants.Text.NoSelectionKey, Constants.Text.NoSelection); } var companies = !string.IsNullOrEmpty(currentCompanyId) ? GetClientCompanies(filter).Where(c => !c.CompanyId.ToUpper().Equals(currentCompanyId.ToUpper())).ToDictionary(c => c.Id, c => c.CompanyName) : GetClientCompanies(filter).ToDictionary(c => c.Id, c => c.CompanyName); foreach (var company in companies) { dict.Add(company.Key, company.Value); } return dict; }
public JsonResult CheckClientCompanyName([CompanyNameCustomBinder]string companyName) { try { if (String.IsNullOrWhiteSpace(companyName)) { return Json("Required.", JsonRequestBehavior.AllowGet); } var filter = new ClientCompaniesListFilter { ItemsPerPage = Int32.MaxValue, PageNumber = 1, CompanyName = companyName }; var companies = _clientCompanyService.GetClientCompanies(filter); var isExists = companies.Any(e => e.CompanyName.Equals(companyName, StringComparison.CurrentCultureIgnoreCase)); return isExists ? Json(true, JsonRequestBehavior.AllowGet) : Json("Specified company name doesn’t exist in the system. Please, check and try again.", JsonRequestBehavior.AllowGet); } catch (Exception ex) { ex.Data.Add(Constants.AjaxErrorType.RemoteAttributeValidationError, null); throw; } }
private Dictionary<int, string> GetCompanies() { var filter = new ClientCompaniesListFilter { FilterByActiveStatus = true, ItemsPerPage = int.MaxValue, PageNumber = 1, IsWholesaleChannel = true, IsLender = true }; var companies = _clientCompaniesService.GetCompaniesDictionary(filter, PluginResults.Find<UserAccessPluginResult>().CompnayId, true); return companies; }