private ReferenciaRiscoRcq GetRiscosRcq(string sexo, int idade) { ReferenciaRiscoRcq riscoRcq = new ReferenciaRiscoRcq(); decimal baixoRisco; decimal riscoMod; decimal riscoAlto; decimal riscoMuitoAlto; if (sexo.Equals("M")) { if (idade == 15) { baixoRisco = 0.729m; riscoMod = 0.789m; riscoAlto = 0.849m; riscoMuitoAlto = 1m; } else if (idade == 16) { baixoRisco = 0.749m; riscoMod = 0.809m; riscoAlto = 0.86m; riscoMuitoAlto = 1m; } else if (idade == 17) { baixoRisco = 0.759m; riscoMod = 0.819m; riscoAlto = 0.87m; riscoMuitoAlto = 1.3m; } else if (idade == 18) { baixoRisco = 0.769m; riscoMod = 0.829m; riscoAlto = 0.88m; riscoMuitoAlto = 1.3m; } else if (idade >= 19 && idade < 29) { baixoRisco = 0.829m; riscoMod = 0.88m; riscoAlto = 0.94m; riscoMuitoAlto = 1.3m; } else if (idade >= 30 && idade < 39) { baixoRisco = 0.839m; riscoMod = 0.91m; riscoAlto = 0.96m; riscoMuitoAlto = 1.3m; } else if (idade >= 40 && idade < 49) { baixoRisco = 0.879m; riscoMod = 0.95m; riscoAlto = 1m; riscoMuitoAlto = 1.3m; } else if (idade >= 50 && idade < 59) { baixoRisco = 0.899m; riscoMod = 0.96m; riscoAlto = 1.02m; riscoMuitoAlto = 1.3m; } else { baixoRisco = 0.909m; riscoMod = 0.98m; riscoAlto = 1.03m; riscoMuitoAlto = 1.3m; } } else { if (idade == 15) { baixoRisco = 0.649m; riscoMod = 0.72m; riscoAlto = 0.77m; riscoMuitoAlto = 1m; } else if (idade == 16) { baixoRisco = 0.669m; riscoMod = 0.73m; riscoAlto = 0.78m; riscoMuitoAlto = 1m; } else if (idade == 17) { baixoRisco = 0.679m; riscoMod = 0.74m; riscoAlto = 0.79m; riscoMuitoAlto = 1m; } else if (idade == 18) { baixoRisco = 0.689m; riscoMod = 0.75m; riscoAlto = 0.80m; riscoMuitoAlto = 1.3m; } else if (idade >= 19 && idade < 29) { baixoRisco = 0.709m; riscoMod = 0.77m; riscoAlto = 0.82m; riscoMuitoAlto = 1.3m; } else if (idade >= 30 && idade < 39) { baixoRisco = 0.719m; riscoMod = 0.78m; riscoAlto = 0.84m; riscoMuitoAlto = 1.3m; } else if (idade >= 40 && idade < 49) { baixoRisco = 0.729m; riscoMod = 0.79m; riscoAlto = 0.87m; riscoMuitoAlto = 1.3m; } else if (idade >= 50 && idade < 59) { baixoRisco = 0.739m; riscoMod = 0.81m; riscoAlto = 0.88m; riscoMuitoAlto = 1.3m; } else { baixoRisco = 0.759m; riscoMod = 0.83m; riscoAlto = 0.90m; riscoMuitoAlto = 1.3m; } } riscoRcq.Baixo = baixoRisco; riscoRcq.Moderado = riscoMod; riscoRcq.Alto = riscoAlto; riscoRcq.MuitoAlto = riscoMuitoAlto; return(riscoRcq); }
//############################################# GRAFICOS ###################################### private void PreencherGraficos(IEnumerable <Avaliacao> avaliacoes, string sexo, int idade, int numAvaliacoes) { try { if (avaliacoes != null && avaliacoes.Count() > 0) { avaliacoes = avaliacoes.Take(numAvaliacoes); var list = avaliacoes.ToList(); list.Reverse(); graficoTxGordura.Series["Taxa de gordura (%)"].Points.Clear(); graficoTxGordura.Series["Variação (%)"].Points.Clear(); graficoPeso.Series["Peso (Kg)"].Points.Clear(); graficoPeso.Series["Variação (%)"].Points.Clear(); graficoImc.Series["IMC"].Points.Clear(); graficoImc.Series["Variação (%)"].Points.Clear(); graficoTxMassaMusc.Series["Massa muscular (%)"].Points.Clear(); graficoTxMassaMusc.Series["Variação (%)"].Points.Clear(); graficoRiscQuadrilCintura.Series["Resultado"].Points.Clear(); graficoRiscQuadrilCintura.Series["Baixo risco"].Points.Clear(); graficoRiscQuadrilCintura.Series["Risco moderado"].Points.Clear(); graficoRiscQuadrilCintura.Series["Risco alto"].Points.Clear(); graficoRiscQuadrilCintura.Series["Risco muito alto"].Points.Clear(); ReferenciaRiscoRcq risco = GetRiscosRcq(sexo, idade); for (int i = 0; i < list.Count(); i++) { Avaliacao item = list[i]; decimal pesoInit = list[i > 0 ? i - 1 : i].Peso; decimal imcInit = list[i > 0 ? i - 1 : i].Imc; decimal gorduraInit = list[i > 0 ? i - 1 : i].GorduraCorporal; decimal massaMuscInit = list[i > 0 ? i - 1 : i].MassaMuscEsqueletica; graficoTxGordura.Series["Taxa de gordura (%)"].Points.AddXY(item.Data.ToString("MM/yy"), item.GorduraCorporal); graficoTxGordura.Series["Variação (%)"].Points.AddXY(item.Data.ToString("MM/yy"), Avaliacao.GetVariacaoCampo(gorduraInit, item.GorduraCorporal)); graficoPeso.Series["Peso (Kg)"].Points.AddXY(item.Data.ToString("MM/yy"), item.Peso); graficoPeso.Series["Variação (%)"].Points.AddXY(item.Data.ToString("MM/yy"), Avaliacao.GetVariacaoCampo(pesoInit, item.Peso)); graficoImc.Series["IMC"].Points.AddXY(item.Data.ToString("MM/yy"), item.Imc); graficoImc.Series["Variação (%)"].Points.AddXY(item.Data.ToString("MM/yy"), Avaliacao.GetVariacaoCampo(imcInit, item.Imc)); graficoTxMassaMusc.Series["Massa muscular (%)"].Points.AddXY(item.Data.ToString("MM/yy"), item.MassaMuscEsqueletica); graficoTxMassaMusc.Series["Variação (%)"].Points.AddXY(item.Data.ToString("MM/yy"), Avaliacao.GetVariacaoCampo(massaMuscInit, item.MassaMuscEsqueletica)); decimal riscoResult = item.Rcq;//Avaliacao.GetRcq(item.Cintura, item.Quadril); graficoRiscQuadrilCintura.Series["Resultado"].Points.AddXY(item.Data.ToString("MM/yy"), riscoResult); graficoRiscQuadrilCintura.Series["Baixo risco"].Points.AddXY(item.Data.ToString("MM/yy"), risco.Baixo); graficoRiscQuadrilCintura.Series["Risco moderado"].Points.AddXY(item.Data.ToString("MM/yy"), risco.Moderado); graficoRiscQuadrilCintura.Series["Risco alto"].Points.AddXY(item.Data.ToString("MM/yy"), risco.Alto); graficoRiscQuadrilCintura.Series["Risco muito alto"].Points.AddXY(item.Data.ToString("MM/yy"), risco.MuitoAlto); if (list.Count() == 1) { DateTime date = item.Data.AddDays(2); graficoRiscQuadrilCintura.Series["Baixo risco"].Points.AddXY(date.ToString("MM/yy"), risco.Baixo); graficoRiscQuadrilCintura.Series["Risco moderado"].Points.AddXY(date.ToString("MM/yy"), risco.Moderado); graficoRiscQuadrilCintura.Series["Risco alto"].Points.AddXY(date.ToString("MM/yy"), risco.Alto); graficoRiscQuadrilCintura.Series["Risco muito alto"].Points.AddXY(date.ToString("MM/yy"), risco.MuitoAlto); } } panelAvalSelect.Visible = true; lblInfoGrafico.Visible = true; graficoTxGordura.Visible = true; graficoPeso.Visible = true; graficoImc.Visible = true; graficoTxMassaMusc.Visible = true; graficoRiscQuadrilCintura.Visible = true; graficoTxGordura.Update(); graficoPeso.Update(); graficoImc.Update(); graficoTxMassaMusc.Update(); graficoRiscQuadrilCintura.Update(); } else { panelAvalSelect.Visible = false; lblInfoGrafico.Visible = false; graficoTxGordura.Visible = false; graficoPeso.Visible = false; graficoImc.Visible = false; graficoTxMassaMusc.Visible = false; graficoRiscQuadrilCintura.Visible = false; UseWaitCursor = false; } } catch (Exception ex) { UseWaitCursor = false; MessageBox.Show(ex.Message); } }