public IHttpActionResult InserirFerias(Ferias ferias) { try { IPessoaRepository pessoaRepositorio = new PessoaModel(new StudioContext()); Pessoa pessoa = pessoaRepositorio.ConsultarPessoaPorCPF(ferias.cpf); if (pessoa == null) { return(Ok("CPF não encontrado na base.")); } else if (pessoa.tipo_pagamento == "1") { return(Ok("Registro de férias não pode ser feito para clientes mensais.")); } else { if (ValidaFerias.VerificaData(ferias)) { if (feriasRepositorio.ConsultarFerias(ferias.cpf) != null && !ValidaFerias.VerificaPeriodo(ferias)) { return(Ok("A soma dos dias é maior do que 30 ou já existem 3 períodos cadastrados")); } else { feriasRepositorio.InserirFerias(ferias); } if (feriasRepositorio.Salvar() == "1") { //IPessoaRepository pessoaRepositorio = new PessoaModel(new StudioContext()); //Pessoa pessoa = pessoaRepositorio.ConsultarPessoaPorCPF(ferias.cpf); pessoa.data_pagamento = pessoa.data_pagamento.AddDays((ferias.dataFim.Subtract(ferias.dataInicio)).Days); pessoaRepositorio.AtualizaPessoa(pessoa); return(Ok(pessoaRepositorio.Salvar() == "1" ? "Registro inserido com Sucesso, nova data de pagamento será dia: " + pessoa.data_pagamento : "Registro não inserido")); } else { return(Ok("Registro não inserido")); } } else { return(Ok("Data de início ou Data de Fim já cadastrados.")); } } } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult AtualizarFerias(Ferias ferias) { try { if (ValidaFerias.VerificaData(ferias, true)) { if (feriasRepositorio.ConsultarFerias(ferias.cpf) != null && !ValidaFerias.VerificaPeriodo(ferias)) { return(Ok("A soma dos dias é maior do que 30 ou já existem 3 períodos cadastrados")); } else { feriasRepositorio.AtualizaFerias(ferias); } if (feriasRepositorio.Salvar() == "1") { IPessoaRepository pessoaRepositorio = new PessoaModel(new StudioContext()); Pessoa pessoa = pessoaRepositorio.ConsultarPessoaPorCPF(ferias.cpf); pessoa.data_pagamento = pessoa.data_pagamento.AddDays((ferias.dataFim.Subtract(ferias.dataInicio)).Days); pessoaRepositorio.AtualizaPessoa(pessoa); return(Ok(pessoaRepositorio.Salvar() == "1" ? "Registro atualizado com Sucesso" : "Registro não atualizado")); } else { return(Ok("Registro não atualizado")); } } else { return(Ok("Data de início ou Data de Fim já cadastrados.")); } } catch (Exception ex) { return(InternalServerError(ex)); } }