FuncionarioController.java 文件源码

java
阅读 28 收藏 0 点赞 0 评论 0

项目:ponto-inteligente-api 作者:
/**
 * Atualiza os dados do funcionário com base nos dados encontrados no DTO.
 * 
 * @param funcionario
 * @param funcionarioDto
 * @param result
 * @throws NoSuchAlgorithmException
 */
private void atualizarDadosFuncionario(Funcionario funcionario, FuncionarioDto funcionarioDto, BindingResult result)
        throws NoSuchAlgorithmException {
    funcionario.setNome(funcionarioDto.getNome());

    if (!funcionario.getEmail().equals(funcionarioDto.getEmail())) {
        this.funcionarioService.buscarPorEmail(funcionarioDto.getEmail())
                .ifPresent(func -> result.addError(new ObjectError("email", "Email já existente.")));
        funcionario.setEmail(funcionarioDto.getEmail());
    }

    funcionario.setQtdHorasAlmoco(null);
    funcionarioDto.getQtdHorasAlmoco()
            .ifPresent(qtdHorasAlmoco -> funcionario.setQtdHorasAlmoco(Float.valueOf(qtdHorasAlmoco)));

    funcionario.setQtdHorasTrabalhoDia(null);
    funcionarioDto.getQtdHorasTrabalhoDia()
            .ifPresent(qtdHorasTrabDia -> funcionario.setQtdHorasTrabalhoDia(Float.valueOf(qtdHorasTrabDia)));

    funcionario.setValorHora(null);
    funcionarioDto.getValorHora().ifPresent(valorHora -> funcionario.setValorHora(new BigDecimal(valorHora)));

    if (funcionarioDto.getSenha().isPresent()) {
        funcionario.setSenha(PasswordUtils.gerarBCrypt(funcionarioDto.getSenha().get()));
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号