public void Adicionar(CIPAEmpresa cIPAEmpresa) { _CIPAEmpresaRepository.Adicionar(cIPAEmpresa); }
public void Atualizar(CIPAEmpresa cIPAEmpresa) { _CIPAEmpresaRepository.Atualizar(cIPAEmpresa); }
public string VerificarFuncionarios(ref CIPAEmpresa cipaEmpresa, int[] FuncionariosEfetivos, int[] FuncionariosSuplentes) { Funcionario funcionario = new Funcionario(); if (FuncionariosEfetivos.Count() != cipaEmpresa.NumeroFuncionariosEfetivos) { return("Quantidade de funcionários efetivos selecionados incompatível com número indicado"); } if (FuncionariosSuplentes.Count() != cipaEmpresa.NumeroFuncionariosSuplentes) { return("Quantidade de funcionários suplentes selecionados incompatível com número indicado"); } foreach (var id in FuncionariosEfetivos) { bool reeleito = false; bool eleito = false; funcionario = Mapper.Map <FuncionarioViewModel, Funcionario>(_funcionarioAppService.ObterPorId(id)); if (FuncionariosSuplentes.Contains(id)) { return(funcionario.Nome + " não pode estar na lista de efetivos e suplentes da CIPA ao mesmo tempo"); } var listaFuncionariosCipa = _cipaEmpresaFuncionarioAppService.BuscarFuncionarioCIPAPorEmpresa(cipaEmpresa.EmpresaId, id); foreach (var funcionarioCipa in listaFuncionariosCipa) { if (funcionarioCipa.CipaEmpresaId != cipaEmpresa.CipaEmpresaID) { eleito = true; if (funcionarioCipa.Reeleito) { reeleito = true; } } if (reeleito) { return(funcionario.Nome + " não pode ser selecionado como efetivo pois ele já foi reeleito na cipa do ano: " + funcionarioCipa.CipaEmpresa.Ano); } } CIPAEmpresaFuncionario cipaFuncionario = new CIPAEmpresaFuncionario(); cipaFuncionario.FuncionarioId = funcionario.FuncionarioId; cipaFuncionario.Efetivo = true; cipaFuncionario.Reeleito = eleito; cipaEmpresa.CIPAEmpresaFuncionarios.Add(cipaFuncionario); } foreach (var id in FuncionariosSuplentes) { bool reeleito = false; bool eleito = false; funcionario = Mapper.Map <FuncionarioViewModel, Funcionario>(_funcionarioAppService.ObterPorId(id)); var listaFuncionariosCipa = _cipaEmpresaFuncionarioAppService.BuscarFuncionarioCIPAPorEmpresa(cipaEmpresa.EmpresaId, id); foreach (var funcionarioCipa in listaFuncionariosCipa) { if (funcionarioCipa.CipaEmpresaId != cipaEmpresa.CipaEmpresaID) { eleito = true; if (funcionarioCipa.Reeleito) { reeleito = true; } } if (reeleito) { return(funcionario.Nome + " não pode ser selecionado como suplente pois ele já foi reeleito na cipa do ano: " + funcionarioCipa.CipaEmpresa.Ano); } } CIPAEmpresaFuncionario cipaFuncionario = new CIPAEmpresaFuncionario(); cipaFuncionario.FuncionarioId = funcionario.FuncionarioId; cipaFuncionario.Efetivo = false; cipaFuncionario.Reeleito = eleito; cipaEmpresa.CIPAEmpresaFuncionarios.Add(cipaFuncionario); } return(""); }