private void LimpaResultado(PlmMensalizadoDropDownDTO dto, bool historico, bool historicoLY) { BuscaPeloAcesso(historico, historicoLY); if (!(dto.Empresa == null || dto.Empresa == "")) { _plmFiltrado = (from x in _plmFiltrado where x.EmpresaNome == dto.Empresa select x).Distinct().ToList(); } if (!(dto.Centro == null || dto.Centro == "")) { _plmFiltrado = (from x in _plmFiltrado where x.CentroLogisticoCodSap == dto.Centro select x).Distinct().ToList(); } if (!(dto.Gestor == null || dto.Gestor == "")) { _plmFiltrado = (from x in _plmFiltrado where x.UserName == dto.Gestor select x).Distinct().ToList(); } if (!(dto.Familia == null || dto.Familia == "")) { _plmFiltrado = (from x in _plmFiltrado where x.FamiliaNome == dto.Familia select x).Distinct().ToList(); } if (!(dto.Material == null || dto.Material == "")) { _plmFiltrado = (from x in _plmFiltrado where x.MaterialCodSap == dto.Material select x).Distinct().ToList(); } if (!(dto.Diretoria == null || dto.Diretoria == "")) { _plmFiltrado = (from x in _plmFiltrado where x.DiretoriaNome == dto.Diretoria select x).Distinct().ToList(); } if (!(dto.SubDiretoria == null || dto.SubDiretoria == "")) { _plmFiltrado = (from x in _plmFiltrado where x.SubDiretoriaNome == dto.SubDiretoria select x).Distinct().ToList(); } }
public IHttpActionResult TrazDropDown([FromUri] PlmMensalizadoDropDownDTO dto, [FromUri] bool historico, [FromUri] bool historicoLY) { LimpaResultado(dto, historico, historicoLY); var dtoRst = new PlmMensalizadoDropDownDTORst() { Empresas = (from x in _plmFiltrado orderby x.EmpresaNome select x.EmpresaNome) .Distinct() .ToList(), Centros = (from x in _plmFiltrado orderby x.CentroLogisticoCodSap select x.CentroLogisticoCodSap) .Distinct() .ToList(), Gestores = (from x in _plmFiltrado orderby x.UserName select x.UserName) .Distinct() .ToList(), Familias = (from x in _plmFiltrado orderby x.FamiliaNome select x.FamiliaNome) .Distinct() .ToList(), Materiais = (from x in _plmFiltrado orderby x.MaterialCodSap select x.MaterialCodSap.ToString()) .Distinct() .ToList(), Diretorias = (from x in _plmFiltrado orderby x.DiretoriaNome select x.DiretoriaNome) .Distinct() .ToList(), SubDiretorias = (from x in _plmFiltrado orderby x.SubDiretoriaNome select x.SubDiretoriaNome) .Distinct() .ToList() }; return(Ok(dtoRst)); }
public IHttpActionResult GetPlmMensalizados([FromUri] PlmMensalizadoDropDownDTO dto, [FromUri] TipoDeConsultaPLM tipoC, [FromUri] bool historico, [FromUri] bool historicoLY) { LimpaResultado(dto, historico, historicoLY); var tipoConsulta = (int)tipoC; try { switch (tipoConsulta) { case 1: { var plm = (from x in _plmFiltrado orderby x.MaterialCodSap group x by new { x.MaterialCodSap, x.MaterialDescricao, x.MaterialUM, x.MaterialClasse, x.ClassificacaoNome, x.EmpresaNome, x.MGCodeCodigoSap, x.CentroLogisticoCodSap, x.UserName, x.PlmDataLanc, x.MaterialBloqueado, x.MaterialSubstituto, } into g select new { empresa = g.Key.EmpresaNome, centro = g.Key.CentroLogisticoCodSap, materia = g.Key.MaterialCodSap, descricao = g.Key.MaterialDescricao, um = g.Key.MaterialUM, classe = g.Key.MaterialClasse, classificacao = g.Key.ClassificacaoNome, mgCocde = g.Key.MGCodeCodigoSap, gestor = g.Key.UserName, plmDataLanc = g.Key.PlmDataLanc, media = g.Sum(c => c.Media), mediaEmReal = g.Sum(c => c.MediaEmReal), total = g.Sum(c => c.Total), totalEmReal = g.Sum(c => c.TotalEmReal), mes1 = g.Sum(c => c.Mes1), mes2 = g.Sum(c => c.Mes2), mes3 = g.Sum(c => c.Mes3), mes4 = g.Sum(c => c.Mes4), mes5 = g.Sum(c => c.Mes5), mes6 = g.Sum(c => c.Mes6), mes7 = g.Sum(c => c.Mes7), mes8 = g.Sum(c => c.Mes8), mes9 = g.Sum(c => c.Mes9), mes10 = g.Sum(c => c.Mes10), mes11 = g.Sum(c => c.Mes11), mes12 = g.Sum(c => c.Mes12), materialBloqueado = g.Key.MaterialBloqueado, materialSubstituto = g.Key.MaterialSubstituto, } ).ToList(); return(Ok(plm)); } case 2: { var plm = (from x in _plmFiltrado orderby x.MaterialCodSap group x by new { x.MaterialCodSap, x.MaterialDescricao, x.MaterialUM, x.MaterialClasse, x.ClassificacaoNome, x.EmpresaNome, x.MGCodeCodigoSap, x.CentroLogisticoCodSap, x.UserName, x.DiretoriaNome, x.PlmDataLanc, x.MaterialBloqueado, x.MaterialSubstituto, } into g select new { empresa = g.Key.EmpresaNome, centro = g.Key.CentroLogisticoCodSap, materia = g.Key.MaterialCodSap, descricao = g.Key.MaterialDescricao, um = g.Key.MaterialUM, classe = g.Key.MaterialClasse, classificacao = g.Key.ClassificacaoNome, mgCocde = g.Key.MGCodeCodigoSap, gestor = g.Key.UserName, diretoria = g.Key.DiretoriaNome, plmDataLanc = g.Key.PlmDataLanc, media = g.Sum(c => c.Media), mediaEmReal = g.Sum(c => c.MediaEmReal), total = g.Sum(c => c.Total), totalEmReal = g.Sum(c => c.TotalEmReal), mes1 = g.Sum(c => c.Mes1), mes2 = g.Sum(c => c.Mes2), mes3 = g.Sum(c => c.Mes3), mes4 = g.Sum(c => c.Mes4), mes5 = g.Sum(c => c.Mes5), mes6 = g.Sum(c => c.Mes6), mes7 = g.Sum(c => c.Mes7), mes8 = g.Sum(c => c.Mes8), mes9 = g.Sum(c => c.Mes9), mes10 = g.Sum(c => c.Mes10), mes11 = g.Sum(c => c.Mes11), mes12 = g.Sum(c => c.Mes12), materialBloqueado = g.Key.MaterialBloqueado, materialSubstituto = g.Key.MaterialSubstituto, } ).ToList(); return(Ok(plm)); } case 3: { var plm = (from x in _plmFiltrado orderby x.MaterialCodSap group x by new { x.MaterialCodSap, x.MaterialDescricao, x.MaterialUM, x.MaterialClasse, x.ClassificacaoNome, x.EmpresaNome, x.MGCodeCodigoSap, x.CentroLogisticoCodSap, x.UserName, x.DiretoriaNome, x.SubDiretoriaNome, x.PlmDataLanc, x.MaterialBloqueado, x.MaterialSubstituto, } into g select new { empresa = g.Key.EmpresaNome, centro = g.Key.CentroLogisticoCodSap, materia = g.Key.MaterialCodSap, descricao = g.Key.MaterialDescricao, um = g.Key.MaterialUM, classe = g.Key.MaterialClasse, classificacao = g.Key.ClassificacaoNome, mgCocde = g.Key.MGCodeCodigoSap, gestor = g.Key.UserName, diretoria = g.Key.DiretoriaNome, subDiretoria = g.Key.SubDiretoriaNome, plmDataLanc = g.Key.PlmDataLanc, media = g.Sum(c => c.Media), mediaEmReal = g.Sum(c => c.MediaEmReal), total = g.Sum(c => c.Total), totalEmReal = g.Sum(c => c.TotalEmReal), mes1 = g.Sum(c => c.Mes1), mes2 = g.Sum(c => c.Mes2), mes3 = g.Sum(c => c.Mes3), mes4 = g.Sum(c => c.Mes4), mes5 = g.Sum(c => c.Mes5), mes6 = g.Sum(c => c.Mes6), mes7 = g.Sum(c => c.Mes7), mes8 = g.Sum(c => c.Mes8), mes9 = g.Sum(c => c.Mes9), mes10 = g.Sum(c => c.Mes10), mes11 = g.Sum(c => c.Mes11), mes12 = g.Sum(c => c.Mes12), materialBloqueado = g.Key.MaterialBloqueado, materialSubstituto = g.Key.MaterialSubstituto, } ).ToList(); return(Ok(plm)); } case 4: { var plm = (from x in _plmFiltrado orderby x.MaterialCodSap group x by new { x.MaterialCodSap, x.MaterialDescricao, x.MaterialUM, x.MaterialClasse, x.ClassificacaoNome, x.EmpresaNome, x.MGCodeCodigoSap, x.CentroLogisticoCodSap, x.UserName, x.DiretoriaNome, x.SubDiretoriaNome, x.PlmProjeto, x.PlmInfoAdicional, x.PlmResponsavel, x.PlmDataLanc, x.MaterialBloqueado, x.MaterialSubstituto, } into g select new { empresa = g.Key.EmpresaNome, centro = g.Key.CentroLogisticoCodSap, materia = g.Key.MaterialCodSap, descricao = g.Key.MaterialDescricao, um = g.Key.MaterialUM, classe = g.Key.MaterialClasse, classificacao = g.Key.ClassificacaoNome, mgCocde = g.Key.MGCodeCodigoSap, gestor = g.Key.UserName, diretoria = g.Key.DiretoriaNome, subDiretoria = g.Key.SubDiretoriaNome, projeto = g.Key.PlmProjeto, infoAdicional = g.Key.PlmInfoAdicional, responsavel = g.Key.PlmResponsavel, plmDataLanc = g.Key.PlmDataLanc, media = g.Sum(c => c.Media), mediaEmReal = g.Sum(c => c.MediaEmReal), total = g.Sum(c => c.Total), totalEmReal = g.Sum(c => c.TotalEmReal), mes1 = g.Sum(c => c.Mes1), mes2 = g.Sum(c => c.Mes2), mes3 = g.Sum(c => c.Mes3), mes4 = g.Sum(c => c.Mes4), mes5 = g.Sum(c => c.Mes5), mes6 = g.Sum(c => c.Mes6), mes7 = g.Sum(c => c.Mes7), mes8 = g.Sum(c => c.Mes8), mes9 = g.Sum(c => c.Mes9), mes10 = g.Sum(c => c.Mes10), mes11 = g.Sum(c => c.Mes11), mes12 = g.Sum(c => c.Mes12), materialBloqueado = g.Key.MaterialBloqueado, materialSubstituto = g.Key.MaterialSubstituto, } ).ToList(); return(Ok(plm)); } case 5: { var plm = (from x in _plmFiltrado group x by new { x.SubDiretoriaNome } into g select new { subDiretoriaNome = g.Key.SubDiretoriaNome, mediaEmReal = g.Sum(c => c.MediaEmReal), totalEmReal = g.Sum(c => c.TotalEmReal), } ).ToList(); return(Ok(plm)); } default: { var plm = (from x in _plmFiltrado orderby x.MaterialCodSap group x by new { x.MaterialCodSap, x.MaterialDescricao, x.MaterialUM, x.MaterialClasse, x.ClassificacaoNome, x.EmpresaNome, x.MGCodeCodigoSap, x.UserName, x.PlmDataLanc, x.MaterialBloqueado, x.MaterialSubstituto, } into g select new { empresa = g.Key.EmpresaNome, materia = g.Key.MaterialCodSap, descricao = g.Key.MaterialDescricao, um = g.Key.MaterialUM, classe = g.Key.MaterialClasse, classificacao = g.Key.ClassificacaoNome, mgCocde = g.Key.MGCodeCodigoSap, gestor = g.Key.UserName, plmDataLanc = g.Key.PlmDataLanc, media = g.Sum(c => c.Media), mediaEmReal = g.Sum(c => c.MediaEmReal), total = g.Sum(c => c.Total), totalEmReal = g.Sum(c => c.TotalEmReal), mes1 = g.Sum(c => c.Mes1), mes2 = g.Sum(c => c.Mes2), mes3 = g.Sum(c => c.Mes3), mes4 = g.Sum(c => c.Mes4), mes5 = g.Sum(c => c.Mes5), mes6 = g.Sum(c => c.Mes6), mes7 = g.Sum(c => c.Mes7), mes8 = g.Sum(c => c.Mes8), mes9 = g.Sum(c => c.Mes9), mes10 = g.Sum(c => c.Mes10), mes11 = g.Sum(c => c.Mes11), mes12 = g.Sum(c => c.Mes12), materialBloqueado = g.Key.MaterialBloqueado, materialSubstituto = g.Key.MaterialSubstituto } ).ToList(); return(Ok(plm)); } } } catch (Exception msg) { return(BadRequest(msg.Message)); } }