public async Task <SalesDashboardFiltersRes> GetSalesDashboardFiltersList([FromBody] AgentCompanyReq request) { var response = new SalesDashboardFiltersRes(); try { if (request != null) { response = await _MISRepository.GetSalesDashboardFiltersList(request); if (response == null) { response.ResponseStatus.Status = "Failure"; response.ResponseStatus.ErrorMessage = "An error."; } } else { response.ResponseStatus.Status = "Failure"; response.ResponseStatus.ErrorMessage = "Request details can not be blank."; } } catch (Exception ex) { response.ResponseStatus.Status = "Failure"; response.ResponseStatus.ErrorMessage = "An error occurs " + ex.Message.ToString(); } return(response); }
public async Task <SalesDashboardFiltersRes> GetSalesDashboardFiltersList(AgentCompanyReq request, string ticket) { SalesDashboardFiltersRes salesDashboardRes = new SalesDashboardFiltersRes(); salesDashboardRes = await serviceProxy.PostData(_configuration.GetValue <string>("ServiceMIS:GetSalesDashboardFiltersList"), request, typeof(SalesDashboardFiltersRes), ticket); return(salesDashboardRes); }
public async Task <SalesDashboardFiltersRes> GetSalesDashboardFiltersList(AgentCompanyReq request) { SalesDashboardFiltersRes response = new SalesDashboardFiltersRes(); try { #region Filters List if (!string.IsNullOrEmpty(request.CompanyId)) { if (request.SpecificFilterName?.ToUpper() == "ALL") { response.SalesOfficeList = _MongoContext.mCompanies.AsQueryable().Where(x => x.Company_Id == request.CompanyId) .Select(a => a.Branches).FirstOrDefault().OrderBy(a => a.Company_Name).ToList(); response.AgentList = _MongoContext.mQuote.AsQueryable().Where(x => x.SystemCompany_Id == request.CompanyId).Select(a => new AgentProperties { Name = a.AgentInfo.AgentName, VoyagerCompany_Id = a.AgentInfo.AgentID }).Distinct().OrderBy(a => a.Name).ToList(); } response.SalesPersonList = _MongoContext.mCompanies.AsQueryable().Where(x => x.Company_Id == request.CompanyId) .Select(a => a.ContactDetails).FirstOrDefault() .Where(a => string.IsNullOrWhiteSpace(a.STATUS) && a.Roles != null && a.Roles.Any(b => b.RoleName == "Sales Officer" || b.RoleName == "Sales")) .Select(a => new AttributeValues { AttributeValue_Id = a.MAIL, Value = a.FIRSTNAME + " " + a.LastNAME }) .OrderBy(a => a.Value).ToList(); } else { response.SalesOfficeList = new List <ChildrenCompanies>(); response.AgentList = _MongoContext.mQuote.AsQueryable().Select(a => new AgentProperties { Name = a.AgentInfo.AgentName, VoyagerCompany_Id = a.AgentInfo.AgentID }).ToList(); } #endregion } catch (Exception ex) { Console.WriteLine(ex.Message); } return(response); }