Exemple #1
0
        public async Task <ReadContentDTO> GetContentWithBeacon(GetContentWithBeaconDTO input)
        {
            //Get Beacon for Major Minor and UUID.
            var beacon = await _beaconRepository.GetAll()
                         .FirstOrDefaultAsync(x => x.UUID == input.UUID && x.Major == input.Major && x.Minor == input.Minor);

            //create analytics
            // await _analyticService.CreateAnalytic (new CreateAnalyticDTO(beacon.Id));

            //Get Relation for beacon ID
            var relation = await _relationRepository.GetAll()
                           .Include(x => x.Beacon)
                           .Where(x => x.Beacon.Id == beacon.Id && GetEnumString(x.Proximity) == input.Proximity).FirstOrDefaultAsync();

            ReadContentDTO da = new ReadContentDTO();

            if (relation != null)
            {
                return(_mapper.Map <ReadContentDTO>(relation.Content));
            }
            else
            {
                return(da);
            }
        }
Exemple #2
0
        public async Task <ReadContentDTO> GetContentWithBeacon(GetContentWithBeaconDTO input)
        {
            var content = await _relationService.GetContentWithBeacon(input);

            if (content == null)
            {
                return(null);
            }
            return(content);
        }
Exemple #3
0
 public async Task <ReadArtifactAndContentDTO> GetRelationWithBeacon(GetContentWithBeaconDTO input)
 {
     try
     {
         return(await _relationService.GetRelationWithBeacon(input));
     }
     catch (Exception)
     {
         throw;
     }
 }
Exemple #4
0
        public async Task <ReadArtifactAndContentDTO> GetRelationWithBeacon(GetContentWithBeaconDTO input)
        {
            //Get Beacon for Major Minor and UUID.
            var beacon = await _beaconRepository.GetAll()
                         .FirstOrDefaultAsync(x => x.UUID == input.UUID && x.Major == input.Major && x.Minor == input.Minor);


            //Get Relation for beacon ID
            var relation = await _relationRepository.GetAll()
                           .Include(x => x.Beacon)
                           .Include(x => x.Artifact)
                           .Include(x => x.Content)
                           .Where(x => x.Beacon.Id == beacon.Id && GetEnumString(x.Proximity) == input.Proximity).FirstOrDefaultAsync();

            if (relation == null)
            {
                return(new ReadArtifactAndContentDTO());
            }
            //create analytics
            //await _analyticService.CreateAnalytic(new CreateAnalyticDTO(beacon.Id));

            ReadArtifactAndContentDTO dto = new ReadArtifactAndContentDTO()
            {
                ArtifactName  = relation.Artifact.Name,
                ContentName   = relation.Content.Name,
                Title         = relation.Content.Title,
                Description   = relation.Content.Description,
                MainImageURL  = relation.Content.MainImageURL,
                VideoURL      = relation.Content.VideoURL,
                SlideImageURL = relation.Content.SlideImageURL,
                AudioURL      = relation.Content.AudioURL,
                Text          = relation.Content.Text,
                IsHomePage    = relation.Content.IsHomePage,
                IsCampaign    = relation.Content.IsCampaign,
            };



            return(dto);
        }