Beispiel #1
0
        // TODO: Pesquisar por frameworks de injeção de dependências: Castle.Windsor, Funq, StructureMap
        public ProdutoController()
        {
            ProdutoRepository produtoRepository = new ProdutoRepository(NHIbernateBootstrap.Factory);

            _catalogoService = new CatalogoService(produtoRepository);
        }
Beispiel #2
0
        public Answer GetInfoApp(string territory, string password)
        {
            var territorio = GetTerritorio(territory, password);
            var usuario = GetUsuarioByTerritorioSimulado(territory, password);
            var linha = GetLinhaByTerritorioSimulado(territory, password);

            if (territorio == null && linha == null && usuario == null)
                return new Answer(Answer.EnumStatus.ErroLogin, "Login e/ou senha inválido(s)");

            AppDownloadRepository appDownloadRepository = new AppDownloadRepository();

            AppDownload appDownload = null;

            if (territorio != null)
            {
                appDownload = appDownloadRepository.GetAppDownloads().Where(a => a.IdProdutoLinha == territorio.ProdutoLinha.Id && a.Tipo == (char)AppDownload.EnumTipo.Ipad).FirstOrDefault();
            }
            else if (linha != null)
            {
                appDownload = appDownloadRepository.GetAppDownloads().Where(a => a.IdProdutoLinha == linha.Id && a.Tipo == (char)AppDownload.EnumTipo.Ipad).FirstOrDefault();
            }
            else if (usuario != null)
            {
                //pega o app padrao
                appDownload = appDownloadRepository.GetAppDownloads().Where(a => a.IdProdutoLinha == null && a.Tipo == (char)AppDownload.EnumTipo.Ipad).FirstOrDefault();
            }

            if(appDownload == null)
                return new Answer(Answer.EnumStatus.Erro, "Não há versão para a linha do território.");

            ProdutoRepository produtoRepository = new ProdutoRepository();

            String UrlProduto = string.Empty;

            if(produtoRepository.GetProdutosSemVerificacaoUsuario().Any(p => p.TemImagem)){

                UrlProduto = Util.Sistema.AppSettings.UrlDownloadBaseProdutosImagens + territory + "/" + Util.Sistema.GetTokenTerritorio(territory);

            }

            AppInfo appInfo = new AppInfo();

            appInfo.Version = appDownload.Versao;
            appInfo.Download = "itms-services://?action=download-manifest&url=" + appDownload.Url;
            appInfo.UrlDownloadProductImages = UrlProduto;

            List<ProductImage> productImages = new List<ProductImage>();

            foreach (var produto in produtoRepository.GetProdutosSemVerificacaoUsuario().Where(p => p.TemImagem))
            {
                ProductImage productImage = new ProductImage();
                productImage.ProductId = produto.Id.ToString();
                productImage.Url = produto.GetCaminhoImagemThumb();
                productImages.Add(productImage);
            }

            appInfo.ProductImages = productImages;

            return new Answer(Answer.EnumStatus.Ok, string.Empty, appInfo);
        }