예제 #1
0
        /// <summary>
        /// Função que carrega os Cargos
        /// </summary>
        /// <param name="CodTipoReuniao"></param>
        private void carregaCargos(string CodTipoReuniao)
        {
            try
            {
                List <MOD_tipoReuniaoCargo> listaNova = new List <MOD_tipoReuniaoCargo>();

                objBLL         = new BLL_tipoReuniao();
                listaTipoCargo = objBLL.buscarTipoReuniaoCargo(CodTipoReuniao);

                objBLL     = new BLL_tipoReuniao();
                listaCargo = objBLL.buscarCargos(CodTipoReuniao);

                foreach (MOD_cargo objEnt_Cargo in listaCargo)
                {
                    MOD_tipoReuniaoCargo ent = new MOD_tipoReuniaoCargo();

                    ent.CodCargoReuniao = "0";
                    ent.CodCargo        = objEnt_Cargo.CodCargo;
                    ent.DescCargo       = objEnt_Cargo.DescCargo;
                    ent.SiglaCargo      = objEnt_Cargo.SiglaCargo;
                    ent.Ordem           = objEnt_Cargo.Ordem;
                    ent.Marcado         = false;

                    listaNova.Add(ent);
                }

                listaTipoCargo.AddRange(listaNova);
                //chama a funcão montar grid
                new BLL_GridCargo().MontarGrid(gridCargo, "Relatorios");
                ///vincula a lista ao DataSource do DataGriView
                gridCargo.DataSource = listaTipoCargo;
            }
            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;
            }
        }