Пример #1
0
        /// <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;
            }
        }
Пример #2
0
        /// <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;
            }
        }