/// <summary> /// Função que preenche os dados recebidos no formulário /// </summary> /// <param name="listaPresenca"></param> internal List <MOD_totalListaPresenca> preencherTotalRegiao(List <MOD_listaPresenca> listaPresenca) { try { List <MOD_totalListaPresenca> listaTotal = new List <MOD_totalListaPresenca>(); List <MOD_totalListaPresenca> listaNova = new List <MOD_totalListaPresenca>(); //BLL_regiaoAtuacao objBLL_tipoRegiao = new BLL_regiaoAtuacao(); //List<MOD_tipoReuniaoCargo> listaCargosPermitidos = new List<MOD_tipoReuniaoCargo>(); //listaCargosPermitidos = objBLL_tipoReuniao.buscarTipoReuniaoCargo(listaPresenca[0].CodTipoReuniao); foreach (DataGridViewRow row in gridRegiao.Rows) { if (row.Cells["Marcado"].Value != null) { if (Convert.ToBoolean(row.Cells["Marcado"].Value).Equals(true)) { MOD_totalListaPresenca ent = new MOD_totalListaPresenca(); ent.CodRegiao = Convert.ToString(row.Cells["CodRegiao"].Value); ent.DescRegiao = Convert.ToString(row.Cells["Descricao"].Value); listaTotal.Add(ent); } } } //Buscar os registros que estão com os cargos permitidos acima... //Tanto os da tabela lista presenca, quanto os da tabela Pessoas foreach (MOD_totalListaPresenca entTotal in listaTotal) { //Calcula o Total de irmãos presente ref esse cargo entTotal.QtdePresenteMasc = listaPresenca.Count(p => p.CodRegiaoPessoa.Equals(entTotal.CodRegiao) && p.Presente.Equals(true) && p.Sexo.Equals("Masculino")); //Calcula o Total de irmãos Totais que constam na base ref esse cargo entTotal.QtdeTotalMasc = listaPresenca.Count(p => p.CodRegiaoPessoa.Equals(entTotal.CodRegiao) && p.Sexo.Equals("Masculino")); entTotal.QtdeAusenteMasc = entTotal.QtdeTotalMasc - entTotal.QtdePresenteMasc; if (!entTotal.QtdeTotalMasc.Equals(0)) { entTotal.PercTotalMasc = entTotal.QtdeTotalMasc / entTotal.QtdeTotalMasc; entTotal.PercPresenteMasc = entTotal.QtdePresenteMasc / entTotal.QtdeTotalMasc; entTotal.PercAusenteMasc = entTotal.QtdeAusenteMasc / entTotal.QtdeTotalMasc; } //Calcula o Total de irmãs presente ref esse cargo entTotal.QtdePresenteFem = listaPresenca.Count(p => p.CodRegiaoPessoa.Equals(entTotal.CodRegiao) && p.Presente.Equals(true) && p.Sexo.Equals("Feminino")); //Calcula o Total de irmãs Totais que constam na base ref esse cargo entTotal.QtdeTotalFem = listaPresenca.Count(p => p.CodRegiaoPessoa.Equals(entTotal.CodRegiao) && p.Sexo.Equals("Feminino")); entTotal.QtdeAusenteFem = entTotal.QtdeTotalFem - entTotal.QtdePresenteFem; if (!entTotal.QtdeTotalFem.Equals(0)) { entTotal.PercTotalFem = entTotal.QtdeTotalFem / entTotal.QtdeTotalFem; entTotal.PercPresenteFem = entTotal.QtdePresenteFem / entTotal.QtdeTotalFem; entTotal.PercAusenteFem = entTotal.QtdeAusenteFem / entTotal.QtdeTotalFem; } listaNova.Add(entTotal); } return(listaNova); } catch (SqlException exl) { throw exl; } catch (Exception ex) { throw ex; } }
/// <summary> /// Função que preenche os dados recebidos no formulário /// </summary> /// <param name="listaPresenca"></param> internal List <MOD_totalListaPresenca> preencherTotalCargo(List <MOD_listaPresenca> listaPresenca) { try { List <MOD_totalListaPresenca> listaTotal = new List <MOD_totalListaPresenca>(); List <MOD_totalListaPresenca> listaNova = new List <MOD_totalListaPresenca>(); BLL_tipoReuniao objBLL_tipoReuniao = new BLL_tipoReuniao(); List <MOD_tipoReuniaoCargo> listaCargosPermitidos = new List <MOD_tipoReuniaoCargo>(); listaCargosPermitidos = objBLL_tipoReuniao.buscarTipoReuniaoCargo(listaPresenca[0].CodTipoReuniao); foreach (MOD_tipoReuniaoCargo entCargo in listaCargosPermitidos) { MOD_totalListaPresenca ent = new MOD_totalListaPresenca(); ent.CodCargo = entCargo.CodCargo; ent.DescCargo = entCargo.DescCargo; ent.OrdemCargo = entCargo.Ordem; ent.SiglaCargo = entCargo.SiglaCargo; ent.Masculino = entCargo.Masculino; ent.Feminino = entCargo.Feminino; listaTotal.Add(ent); } //Buscar os registros que estão com os cargos permitidos acima... //Tanto os da tabela lista presenca, quanto os da tabela Pessoas foreach (MOD_totalListaPresenca entTotal in listaTotal) { if (entTotal.Masculino.Equals("Sim")) { //Calcula o Total de irmãos presente ref esse cargo entTotal.QtdePresenteMasc = listaPresenca.Count(p => p.CodCargo.Equals(entTotal.CodCargo) && p.Presente.Equals(true) && p.Sexo.Equals("Masculino")); //Calcula o Total de irmãos Totais que constam na base ref esse cargo entTotal.QtdeTotalMasc = listaPresenca.Count(p => p.CodCargo.Equals(entTotal.CodCargo) && p.Sexo.Equals("Masculino")); entTotal.QtdeAusenteMasc = entTotal.QtdeTotalMasc - entTotal.QtdePresenteMasc; if (!entTotal.QtdeTotalMasc.Equals(0)) { entTotal.PercTotalMasc = entTotal.QtdeTotalMasc / entTotal.QtdeTotalMasc; entTotal.PercPresenteMasc = entTotal.QtdePresenteMasc / entTotal.QtdeTotalMasc; entTotal.PercAusenteMasc = entTotal.QtdeAusenteMasc / entTotal.QtdeTotalMasc; } } if (entTotal.Feminino.Equals("Sim")) { //Calcula o Total de irmãs presente ref esse cargo entTotal.QtdePresenteFem = listaPresenca.Count(p => p.CodCargo.Equals(entTotal.CodCargo) && p.Presente.Equals(true) && p.Sexo.Equals("Feminino")); //Calcula o Total de irmãs Totais que constam na base ref esse cargo entTotal.QtdeTotalFem = listaPresenca.Count(p => p.CodCargo.Equals(entTotal.CodCargo) && p.Sexo.Equals("Feminino")); entTotal.QtdeAusenteFem = entTotal.QtdeTotalFem - entTotal.QtdePresenteFem; if (!entTotal.QtdeTotalFem.Equals(0)) { entTotal.PercTotalFem = entTotal.QtdeTotalFem / entTotal.QtdeTotalFem; entTotal.PercPresenteFem = entTotal.QtdePresenteFem / entTotal.QtdeTotalFem; entTotal.PercAusenteFem = entTotal.QtdeAusenteFem / entTotal.QtdeTotalFem; } } listaNova.Add(entTotal); } return(listaNova); } catch (SqlException exl) { throw exl; } catch (Exception ex) { throw ex; } }