Пример #1
0
        public void When_Surname_And_DateOfBirth_AreNotNullOrEmpty_Then_Filter_Message_Returns_Correct_Value()
        {
            // Arrange
            var surname     = Fixture.Create <string>();
            var dateOfBirth = Fixture.Create <string>();
            var sut         = new SearchParameterViewModel(null, surname, dateOfBirth);

            // Act
            var result = sut.FilterMessage;

            // Assert
            Assert.IsTrue(result.Contains(surname));
            Assert.IsTrue(result.Contains(dateOfBirth));
        }
Пример #2
0
        public IActionResult Get([FromQuery] SearchParameterViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(GetModelStateErrorResponse(ModelState)));
            }

            var resp = Search(model);

            if (resp.Type != ResponseType.Success)
            {
                return(BadRequest(resp));
            }

            return(Ok(resp));
        }
        internal IEnumerable <IllustrationListViewModel> GetIllustrationList(SearchParameterViewModel searchParameter, bool isSuperUser)
        {
            var IllustrationDetails = new List <IllustrationDetail>();

            if (!isSuperUser)
            {
                IllustrationDetails = _context.IllustrationDetails.Where(x => x.PartnerEmail == searchParameter.PartnerEmail && x.PartnerOrganisation == searchParameter.PartnerOrganisation).Include(x => x.IllustrationProposedPortfolio).OrderByDescending(x => x.GenerateDate).ToList();
            }
            else
            {
                IllustrationDetails = _context.IllustrationDetails.Include(x => x.IllustrationProposedPortfolio).OrderByDescending(x => x.GenerateDate).ToList();
            }

            searchParameter.IllustrationUniqueReference = string.IsNullOrEmpty(searchParameter.IllustrationUniqueReference) ? "" : searchParameter.IllustrationUniqueReference.ToLower();

            if (searchParameter.IllustrationFrom != null && searchParameter.IllustrationTo != null)
            {
                searchParameter.IllustrationTo = searchParameter.IllustrationTo.Value.AddHours(23).AddMinutes(59).AddSeconds(59);
            }

            if (!string.IsNullOrEmpty(searchParameter.ClientName) || !string.IsNullOrEmpty(searchParameter.PartnerName) || !string.IsNullOrEmpty(searchParameter.CompanyName) || !string.IsNullOrEmpty(searchParameter.IllustrationUniqueReference) || searchParameter.IllustrationTo != null || searchParameter.IllustrationFrom != null)
            {
                IllustrationDetails = IllustrationDetails.Where(f =>

                                                                //Advisor Search
                                                                (string.IsNullOrEmpty(searchParameter.PartnerName) || (!string.IsNullOrEmpty(f.PartnerName) && f.PartnerName.ToLower().Contains(searchParameter.PartnerName.ToLower())))
                                                                //Client Search
                                                                & (string.IsNullOrEmpty(searchParameter.ClientName) || f.ClientName.ToLower().Contains(searchParameter.ClientName.ToLower()))
                                                                //Company Search
                                                                & (string.IsNullOrEmpty(searchParameter.CompanyName) || f.PartnerOrganisation.ToLower().Contains(searchParameter.CompanyName.ToLower()))
                                                                //Company Search
                                                                & (string.IsNullOrEmpty(searchParameter.IllustrationUniqueReference) || f.IllustrationUniqueReference.ToLower().Contains(searchParameter.IllustrationUniqueReference.ToLower()))

                                                                & ((!searchParameter.IllustrationFrom.HasValue || f.GenerateDate >= searchParameter.IllustrationFrom.Value)
                                                                   & (!searchParameter.IllustrationTo.HasValue || f.GenerateDate <= searchParameter.IllustrationTo.Value))).ToList();
            }
            List <IllustrationListViewModel> response = new List <IllustrationListViewModel>();

            response = _mapper.Map(IllustrationDetails, response);

            return(response);
        }
Пример #4
0
        public JsonResult SearchIllustration(SearchParameterViewModel searchParams)
        {
            //check model validation for any empty waitttttttt

            //bool isNull = false;
            //if (searchParams.AdvisorName == null & searchParams.ClientName == null & searchParams.CompanyName == null
            //    & searchParams.IllustrationFrom == null & searchParams.IllustrationTo == null & searchParams.IllustrationUniqueReference == null)
            //{
            //    isNull = true;
            //    return Json(new { Error = isNull });
            //}


            if (!ModelState.IsValid)
            {
                var errors = new List <string>();
                foreach (var state in ModelState)
                {
                    foreach (var error in state.Value.Errors)
                    {
                        errors.Add(error.ErrorMessage);
                    }
                }
                return(Json(new { Data = errors, Success = false }));
            }

            if (searchParams.IllustrationFrom > searchParams.IllustrationTo)
            {
                var errors = new List <string>();
                errors.Add("To Date cannot be less than the From Date.");
                return(Json(new { Data = errors, Success = false }));
            }


            var result = _illustrationHelper.GetIllustrationList(searchParams, true);

            return(Json(new { Data = result, Success = true }));
        }
Пример #5
0
        private ApiResponse <PagedListResponse <ParameterViewModel> > Search(SearchParameterViewModel model)
        {
            var apiResp = new ApiResponse <PagedListResponse <ParameterViewModel> >
            {
                Type = ResponseType.Fail,
                Data = new PagedListResponse <ParameterViewModel>()
            };

            var request = new FilteredPagedListRequest <SearchParameterCriteria>
            {
                FilterCriteria = new SearchParameterCriteria
                {
                    Name = model.Name,
                    IncludeSystemParameters = model.IncludeSystemParameters
                },
                IncludeRecordsTotal = model.IncludeRecordsTotal,
                Limit  = model.Limit,
                Offset = model.Offset
            };

            var resp = _parameterService.Search(request);

            apiResp.Data.Items = resp.Items.Select(p => new ParameterViewModel
            {
                Id          = p.Id,
                TypeId      = p.TypeId,
                Order       = p.Order,
                Value       = p.Value,
                Description = p.Description,
                IsSystem    = p.IsSystem
            });

            apiResp.Data.RecordsTotal = resp.RecordsTotal;
            apiResp.Type = ResponseType.Success;

            return(apiResp);
        }
Пример #6
0
 ///Get all items with some search condition
 public List <TViewModel> GetAll(SearchParameterViewModel searchParameters)
 {
     throw new NotImplementedException();
 }
Пример #7
0
        public ActionResult ExportCSV(SearchParameterViewModel searchParameter)
        {
            var result = _illustrationHelper.GetIllustrationList(searchParameter, true);
            // StringBuilder sbheader = new StringBuilder();
            //StringBuilder sbheader = new StringBuilder();
            StringBuilder sb = new StringBuilder();

            sb.Append(string.Format("{0},", "Introducer"));
            sb.Append(string.Format("{0},", "Account Reference"));
            sb.Append(string.Format("{0},", "Account Name"));
            sb.Append(string.Format("{0},", "Lead Type or Name"));
            sb.Append(string.Format("{0},", "Last Name"));
            sb.Append(string.Format("{0},", "Name"));
            sb.Append(string.Format("{0},", "Adviser's Email Address"));
            sb.Append(string.Format("{0},", "Marketing Source"));
            sb.Append(string.Format("{0},", "Categories"));
            sb.Append(string.Format("{0},", "Client Category"));

            sb.Append(string.Format("{0},", "Salesperson"));
            sb.Append(string.Format("{0},", "Account Manager"));
            sb.Append(string.Format("{0},", "Minimum Deposit"));
            sb.Append(string.Format("{0},", "Maximum Deposit"));

            sb.Append(string.Format("{0},", "Source Function"));
            sb.Append(string.Format("{0},", "Advisor"));
            sb.Append(string.Format("{0},", "Introducer Account"));
            sb.Append(string.Format("{0},", "Umbrella Organisation")).AppendLine();


            foreach (var data in result)
            {
                string[] name;
                string   fname = string.Empty;
                string   LName = string.Empty;
                if (!string.IsNullOrEmpty(data.ClientName))
                {
                    if (data.ClientName.Contains(" "))
                    {
                        name = data.ClientName.Split(" ");



                        if (name.Length > 1)
                        {
                            List <string> fName = name.Take(name.Length - 1).ToList();


                            foreach (var item in fName)
                            {
                                fname += item + " ";
                            }

                            LName = name.Last();
                        }
                    }
                    else
                    {
                        fname = data.ClientName;
                    }
                }


                sb.Append(string.Format("{0},", "No"));
                sb.Append(string.Format("{0},", data.IllustrationUniqueReference));
                sb.Append(string.Format("{0},", data.ClientName));
                sb.Append(string.Format("{0},", "Personal"));
                sb.Append(string.Format("{0},", LName)); //Last Name
                sb.Append(string.Format("{0},", fname)); //First Name
                sb.Append(string.Format("{0},", data.PartnerEmail));
                sb.Append(string.Format("{0},", "Introducer Referral"));
                sb.Append(string.Format("{0},", "Client"));
                sb.Append(string.Format("{0},", data.ClientType == "0" ? "Individual" : "Joint"));
                sb.Append(string.Format("{0},", ""));
                sb.Append(string.Format("{0},", ""));
                sb.Append(string.Format("{0},", data.TotalDeposit));
                sb.Append(string.Format("{0},", data.TotalDeposit));
                sb.Append(string.Format("{0},", "Introducer"));
                sb.Append(string.Format("{0},", data.PartnerName));
                sb.Append(string.Format("{0},", data.PartnerOrganisation));
                sb.Append(string.Format("{0},", string.Empty)).AppendLine();
            }

            //  byte[] buffer = Encoding.ASCII.GetBytes();

            return(Json(new { Data = sb.ToString(), FileName = "Illustration.csv" }));
        }