public JsonResult JsGetItens(int idProduto) { try { LogBLL.Insert(new LogDado("JsGetItens", "ProdutoMaterial", _idUsuario)); using (var db = new Context()) { var _bll = new BLL.ProdutoMaterialBLL(db, _idUsuario); var list = _bll.Find(u => u.idProduto == idProduto, u => u.Material).ToList(); var result = list.Select(s => new { s.idMaterial, s.idProduto, s.quantidade, s.margemGanho, s.valor, s.Material.nome, s.idProdutoMaterial, totalCusto = s.valor * s.quantidade, totalGanho = ((s.margemGanho / 100) * (s.valor * s.quantidade)) + (s.valor * s.quantidade), totalLiquido = (((s.margemGanho / 100) * (s.valor * s.quantidade)) + (s.valor * s.quantidade)) - (s.valor * s.quantidade) }); return Json(new RP.Util.Class.JsonCollection { result = result, count = result.Count() }, JsonRequestBehavior.AllowGet); } } catch (Exception ex) { Response.StatusCode = 500; return Json(RP.Util.Exception.Message.Get(ex), JsonRequestBehavior.AllowGet); } }
public ActionResult Produto(int idProduto) { try { using (var db = new Context()) { var _produtoBLL = new BLL.ProdutoBLL(db, _idUsuario); var _materialBLL = new BLL.ProdutoMaterialBLL(db, _idUsuario); var _produto = _produtoBLL.Find(e => e.idProduto == idProduto) .Select(u => new Models.Orcamento.ProdutoVM { idProjeto = u.idProjeto, nome = u.nome, idProduto = u.idProduto, descricao = u.descricao, }).FirstOrDefault(); _produto.Itens = _materialBLL.Find(u => u.idProduto == idProduto) .Select(k => new Models.Orcamento.ProdutoVM.MaterialVM { idMaterial = k.idMaterial, nome = k.Material.nome, quantidade = k.quantidade }).ToList(); return View(_produto); } } catch (Exception ex) { RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario); return RedirectToAction("Index", "Erro", new { area = string.Empty }); } }