private static void Main(string[] args) { // Boxing = tipo primitivo >>>>> tipo por referência. (object) // Unboxing = tipo por referência. (object) >>>>>> tipo primitivo // Variancia = Funcionario CLT >>>>> Funcionario >>>>> Entidade >>>>> Object // Contra variancia = Object >>>> Entidade ......... /* * 1ª Funcionario CLT * 2ª Autonomo * 3ª Prolabore * * Criar 10 Funcionário de cada tipo, * onde o valor do salario seja a soma de todos os salarios anteriores iniciados de * 1, somado 1 a cada novo salario. * (Ex: 2,3,6,12.........) -> Salario Contratual. * Não resetar o salário ao mudar de tipo. * Calcular a folha para esses funcionários. * Aprensentar no Console os salarios calculados "matricula: salario" Ex: 1: 200 * A matricula deve ser iniciado de 1 e cada novo somar mais 1; * (Ex: 1,2,3,4,......30) * Calcular mes 02/2021. */ var repositorioFuncionario = new RepositorioFuncionario(); var repositorioValoresCalculados = new RepositorioValoresCalculados(); var repositorioAfastamentoFuncionario = new RepositorioAfastamentoFuncionario(); var repositorioDiasTrabalhados = new RepositorioDiasTrabalhados(); var registroDiasTrabalhados = new RegistroDiasTrabalhados(repositorioDiasTrabalhados); GeradorFuncionario.GerarFuncionario(repositorioFuncionario, 40); //var relatorioFuncionarioAsc = new RelatorioCrescenteNome(repositorioFuncionario); //relatorioFuncionarioAsc.GerarRelatorio(); //var relatorioFuncionarioDesc = new RelatorioDecrescenteNome(repositorioFuncionario); //GeradorRelatorio.GerarRelatorio(new RelatorioDecrescenteNome(repositorioFuncionario)); GeradorRelatorio.GerarRelatorio(new RelatorioAdmissaoDataNome(repositorioFuncionario, true)); // relatorioFuncionarioDesc.GerarRelatorio(); /* * registroDiasTrabalhados.AdicionarRegistro(31, new DateTime(2021, 2, 5), new DateTime(2021, 2, 10)); * registroDiasTrabalhados.AdicionarRegistro(32, new DateTime(2021, 2, 5), new DateTime(2021, 2, 10)); * registroDiasTrabalhados.AdicionarRegistro(33, new DateTime(2021, 2, 5), new DateTime(2021, 2, 12)); * * repositorioFuncionario.ConsultarTodos().ForEach(funcionario => * CalculadoraSalarioFuncionario.CalculaSalario(funcionario, * repositorioValoresCalculados, * repositorioAfastamentoFuncionario, * repositorioDiasTrabalhados, * 2021, * 2)); * * repositorioValoresCalculados.ConsultarTodos().ForEach(valorCalculado => * Console.WriteLine(valorCalculado.Matricula + " : " + valorCalculado.Salario)); */ /* * Criar um relatorio com as seguites informaçoes * 1- Matricula do funcionario / Nome do funcionario / Mes e Ano calculo / Valor calculado / * -> Ordenado por matricula ou nome * lambda inner join * */ /* * O Desafio FINAL! * - Criar um novo tipo de funcionário (Menor Aprendiz) * - Esse tipo de funcionário não poderá ter mais de 21 Anos de Idade * - Para o Cálculo, terá a mesma regra do CLT, porém sem considerar Afastamentos. * - Por fim apresentar o seguinte Relatório: * - Categoria: CLT, Autonomo, Prolabore, Intermitente, Menor Aprendiz. * - Nome: * - Data Admissão: * - Valor Salario Contratual * - Valor Calculado * - Idade do funcionário * * Para Cada funcionário saltar uma linha */ Console.Read(); }
private void btnIniciar_Click(object sender, EventArgs e) { var config = ConfigExperimento.CriaPorArquivo(tbArquivoFrases.Text); if (config == null) { MessageBox.Show("Nenhum arquivo de configuração selecionado!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } var nomePesquisador = tbNomePesquisador.Text; if (nomePesquisador == "") { MessageBox.Show("O nome do pesquisador é obrigatório!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } var nomeParticipante = tbNomeParticipante.Text; if (nomeParticipante == "") { MessageBox.Show("O nome do participante é obrigatório!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } var idadeParticipante = numIdadeParticipante.Value; if (idadeParticipante == 0) { MessageBox.Show("A idade do participante é obrigatório!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } var sexoParticipante = cbSexoParticipante.SelectedItem; if (sexoParticipante == null) { MessageBox.Show("O sexo do participante é obrigatório!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } var numeroParticipante = numNumeroParticipante.Value; if (numeroParticipante == 0) { MessageBox.Show("O número do participante é obrigatório!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } var backGround = new TelaMensagem("", false); backGround.Show(); new TelaMensagem("Clique em qualquer lugar para iniciar o experimento", true).ShowDialog(); var geradorRelatorio = new GeradorRelatorio( nomePesquisador, nomeParticipante, Convert.ToInt32(idadeParticipante), sexoParticipante.ToString(), Convert.ToInt32(numeroParticipante), config ); new TelaFrase(config, geradorRelatorio).ShowDialog(); geradorRelatorio.GerarRelatorio(); new TelaMensagem("Fim do experimento, por favor chamar o experimentador", false).ShowDialog(); backGround.Close(); }