public async Task <IActionResult> EditProduto(int id) { string statusModel = null; var marcas = await _marcaAppServices.GetAllAsync(); var materiais = await _materialAppServices.GetAllAsync(); var listaFotos = await _produtoFotoAppServices.RetornarListaFotoInput(id); var cores = await _produtoCorAppServices.GetByProdutoAsync(id, null); var listaCores = await _produtoCorAppServices.RetornarListaDeCorDoProduto(id, null); var produto = await _produtoAppServices.GetByIdAsync(id); var corSelect = await _corAppServices.GetAllAsync(); if (TempData["Error"] != null) { statusModel = "Error"; ModelState.AddModelError(string.Empty, TempData["Error"].ToString()); } else if (TempData["Success"] != null) { statusModel = "Success"; ModelState.AddModelError(string.Empty, TempData["Success"].ToString()); } return(View("Edit", new ProdutoEditViewModel(marcas, materiais, listaFotos, cores, listaCores, corSelect, produto, id, statusModel))); }
public async Task <IActionResult> Details(int id, int idCor, string returnUrl = null) { var produtoViewModel = await _produtoAppServices.GetByIdAsync(id); var produtoFotoViewModel = await _produtoFotoAppServices.GetFotosByCorAsync(idCor); var produtoCorViewModel = await _produtoCorAppServices.GetByProdutoAsync(id, "AT"); var lancamento = await _produtoAppServices.GetCategoryForHomeAsync("lancamento", 0); var logado = _signInManager.IsSignedIn(User); var statusModel = "success"; if (TempData["Error"] != null) { statusModel = "Error"; ModelState.AddModelError(string.Empty, TempData["Error"].ToString()); } else if (TempData["Success"] != null) { statusModel = "Success"; ModelState.AddModelError(string.Empty, TempData["Success"].ToString()); } returnUrl ??= Request.Headers["Referer"].ToString(); return(View(new ProdutoDetailsViewModel(produtoViewModel, produtoFotoViewModel, produtoCorViewModel, statusModel, logado, lancamento, idCor, returnUrl))); }
public async Task <ActionResult> GetCorProduto(string idProduto) { var identificacao = idProduto.Split(',')[1].Trim(); var id = idProduto.Split(',')[0].Trim(); if (identificacao != "produto") { return(Content(string.Join("", ""))); } try { var produtoCor = await _produtoCorAppServices.GetByProdutoAsync(int.Parse(id), null); var result = (from t in produtoCor select new { Cores = $"<option value= {t.Id}> {t.Descricao} </option>" }).ToList(); return(Content(string.Join("", result))); } catch (Exception) { TempData["ErrorModel"] = "Erro ao atualizar pedido"; } return(Content(string.Join("", ""))); }
public async Task <IViewComponentResult> InvokeAsync(ProdutoViewModel produtoViewModel, bool exibirPreco) { var logado = _signInManager.IsSignedIn(new ClaimsPrincipal(User)); var produtoCorViewModel = await _produtoCorAppServices.GetByProdutoAsync(produtoViewModel.Id, "AT"); var quantidadeCores = produtoCorViewModel.Count(); var quantidadeCoresIndisponiveis = produtoCorViewModel.Count(item => item.Estoque == 0); if (quantidadeCores == quantidadeCoresIndisponiveis) { produtoViewModel.StatusProduto = "indisponivel"; } return(View(new ProdutoComponentViewModel(produtoViewModel, produtoCorViewModel, logado, exibirPreco))); }