コード例 #1
0
ファイル: VideoEntity.cs プロジェクト: crmjunior/TestJenkins
        public VideoUrlDTO GetVideoPorVideoID(int idVideo, Contracts.Business.IChaveamentoVimeo ObjChaveamentoVimeo, int idAplicacao = (int)Aplicacoes.MsProMobile, string versaoApp = "")
        {
            VideoUrlDTO videoRetorno = new VideoUrlDTO
            {
                Url = string.Empty
            };

            tblVideo video = new tblVideo();

            using (var ctx = new AcademicoContext())
            {
                video = ctx.tblVideo.Where(b => b.intVideoID == idVideo).FirstOrDefault();
            }

            bool chaveamentoVimeo;

            chaveamentoVimeo = ObjChaveamentoVimeo.GetChaveamento();

            if (chaveamentoVimeo)
            {
                if (idAplicacao == (int)Aplicacoes.MEDSOFT_PRO_ELECTRON || idAplicacao == (int)Aplicacoes.AreaRestrita)
                {
                    videoRetorno.Url = video.txtUrlStreamVimeo;
                }
                else
                {
                    videoRetorno.Url = video.txtUrlVimeo;
                }
            }

            if (String.IsNullOrEmpty(videoRetorno.Url))
            {
                videoRetorno.Url = GetUrlPlataformaVideo(video, chaveamentoVimeo, idAplicacao);
            }

            if (idAplicacao == (int)(Aplicacoes.MsProMobile))
            {
                videoRetorno.Links = GetLinksVideoVariasQualidades(video.txtVideoInfo, videoRetorno.Url);
            }


            int duracao = 0;

            Int32.TryParse(video.intDuracao, out duracao);
            videoRetorno.Duracao = duracao;

            return(videoRetorno);
        }
コード例 #2
0
        public VideoUrlDTO GetVideoUrlComUltimaPosicao(int idVideo, int idAplicacao, string versaoApp, int clientId)
        {
            using (MiniProfiler.Current.Step("Obtendo url do video com útima posição"))
            {
                VideoUrlDTO retorno = new VideoUrlDTO();

                retorno = _mednetRepository.GetVideoInfo(idVideo, idAplicacao, versaoApp);

                retorno.UltimaPosicaoAluno = UltimaPosicaoVideoAulaRevisaoAluno(clientId, idVideo, retorno.Duracao);

                if (idAplicacao == (int)Aplicacoes.MsProMobile)
                {
                    retorno.Url += string.Concat("#t=", retorno.UltimaPosicaoAluno);
                }

                return(retorno);
            }
        }
コード例 #3
0
        public List <Video> GetByVideoMiolo(VideoMiolo vm, string matricula = null, Aplicacoes IdAplicacao = Aplicacoes.MsProMobile, string VersaoApp = "")
        {
            var lstVideosMiolo = new VideosMiolo();
            var videos         = _vimeoRepository.GetByFilters(vm).ToList();
            var chaveamento    = new ChaveamentoVimeoMediMiolo();

            foreach (var item in videos)
            {
                VideoMiolo v = new VideoMiolo()
                {
                    ID          = item.IDApostila.ToString(),
                    VideoID     = item.VideoID,
                    IDApostila  = item.IDApostila,
                    CodigoVideo = item.CodigoVideo,
                    BorKey      = _vimeoRepository.GetBorKey(item.CodigoVideo, item.Ano, item.IDApostila),
                    Qualidade   = vm.Qualidade,
                };

                tblVideo    video        = _vimeoRepository.GetVideoVimeo(null, Convert.ToInt32(item.VideoID));
                VideoUrlDTO videoRetorno = new VideoUrlDTO
                {
                    Url = string.Empty
                };

                var chaveamentoVimeo = chaveamento.GetChaveamento();
                if (chaveamentoVimeo)
                {
                    if ((int)IdAplicacao == (int)Aplicacoes.MEDSOFT_PRO_ELECTRON || (int)IdAplicacao == (int)Aplicacoes.AreaRestrita)
                    {
                        v.URL = video.txtUrlStreamVimeo;
                    }
                    else
                    {
                        v.URL = video.txtUrlVimeo;
                    }
                }

                if (video.intVimeoID == null)
                {
                    ValidarEnvioEmailVideoDefeituoso(video);
                }
                else if (v.URL == null)
                {
                    v.URL = _vimeoRepository.GetUrlPlataformaVideo(video, chaveamentoVimeo, (int)IdAplicacao);
                    if (v.URL == string.Empty)
                    {
                        ValidarEnvioEmailVideoDefeituoso(video);
                    }
                }

                v.HTTPURL  = v.URL;
                v.URLThumb = _vimeoRepository.GetUrlThumb(video, new ChaveamentoVimeoMediMiolo(), VersaoApp);
                v.Links    = _vimeoRepository.GetLinksVideoVariasQualidades(video.txtVideoInfo, v.URL);

                lstVideosMiolo.Add(v);
            }

            var lstv = new Videos();

            foreach (var valor in lstVideosMiolo)
            {
                if (!lstv.Any(i => i.Url.Equals(valor.HTTPURL)))
                {
                    var video = new Video();
                    video.ID      = Convert.ToInt32(valor.ID);
                    video.VideoId = valor.VideoID;
                    video.Url     = valor.HTTPURL;
                    video.Thumb   = valor.URLThumb;
                    video.Links   = valor.Links;
                    video         = _vimeoRepository.CreateVideoObject(video, matricula);
                    lstv.Add(video);
                }
            }

            return(lstv);
        }