public IActionResult FindRelatives(FindRelativeRequest request) { var response = _service.FindRelatives(request); if (response == null || response.RelativeInfo == null || response.RelativeInfo.Count <= 0) { return(NotFound()); } return(Ok(response)); }
public FindRelativeResponse FindRelatives(FindRelativeRequest request) { if (!EnumHelper.IsValid <Relationships>(request.RelationshipName)) { return(null); } var realtionship = EnumHelper.Parse <Relationships>(request.RelationshipName); var relatives = _relationshipService.FindRelatives(realtionship, request.PersonName); if (relatives == null) { return(null); } return(new FindRelativeResponse { RelativeInfo = relatives .ToList() .Select(x => new RelativeInfo { Person = new PersonInfo { PersonId = x.Person.PersonId, Name = x.Person.Name }, Relatives = x.Relatives .Select(r => new PersonInfo { PersonId = r.PersonId, Name = r.Name }). ToList() }) .ToList() }); }