@SuppressWarnings("unchecked")
  public Usuario obtUsuario(Integer id) {
    System.out.println("INI: Ejecutando metodo obtUsuario");
    List<Usuario> usr = null;
    MapSqlParameterSource in = null;

    SimpleJdbcCall call = null;
    Map<String, Object> out = null;
    in = new MapSqlParameterSource();

    call =
        JdbcHelper.initializeSimpleJdbcCallProcedure(
            getJdbcTemplate(), "BBVA", "pq_del_usuario", "sp_obt_usuario");

    JdbcHelper.setInOutParameter(call, in, "a_idusuario", Types.NUMERIC, id);

    JdbcHelper.setOutParameter(call, "a_cursor", OracleTypes.CURSOR, Usuario.class);

    out = call.execute(in);

    usr = (List<Usuario>) out.get("a_cursor");

    System.out.println("FIN: Ejecutando metodo obtUsuario");

    return usr.get(0);
  }
  public Usuario addUsuario(Usuario usuario) {
    System.out.println("INI: Ejecutando metodo addUsuario");
    Usuario usr = new Usuario();
    MapSqlParameterSource in = null;

    SimpleJdbcCall call = null;
    Map<String, Object> out = null;
    in = new MapSqlParameterSource();

    call =
        JdbcHelper.initializeSimpleJdbcCallProcedure(
            getJdbcTemplate(), "BBVA", "pq_del_usuario", "sp_mnt_usuario");

    JdbcHelper.setInOutParameter(call, in, "a_idusuario", Types.NUMERIC, usuario.getIdeusuario());
    JdbcHelper.setInParameter(
        call, in, "a_contrasena", OracleTypes.VARCHAR, usuario.getContrasena());
    JdbcHelper.setInParameter(call, in, "a_idtercero", OracleTypes.NUMERIC, usuario.getIdtercero());
    JdbcHelper.setInParameter(call, in, "a_idperfil", OracleTypes.NUMERIC, usuario.getIdperfil());
    JdbcHelper.setInParameter(call, in, "a_idpestado", OracleTypes.NUMERIC, usuario.getIdpestado());
    JdbcHelper.setInParameter(
        call, in, "a_codusuario", OracleTypes.VARCHAR, usuario.getCodusuario());
    JdbcHelper.setInParameter(call, in, "a_historial", OracleTypes.VARCHAR, usuario.getHistorial());
    JdbcHelper.setInParameter(
        call, in, "a_comentario", OracleTypes.VARCHAR, usuario.getComentario());
    JdbcHelper.setInParameter(call, in, "a_usuario", OracleTypes.VARCHAR, usuario.getUsuario());
    //		JdbcHelper.setOutParameter(call, "a_cursor", OracleTypes.CURSOR, Usuario.class);

    out = call.execute(in);

    usr.setIdeusuario(Integer.parseInt(((BigDecimal) out.get("a_idusuario")).toString()));
    System.out.println("FIN: Ejecutando metodo addUsuario");

    return usr;
  }
  // trae un usuario
  @SuppressWarnings("unchecked")
  public Usuario getUsuario(Usuario usuario) {

    System.out.println("INI: Ejecutando metodo getUsuario");
    List<Usuario> usr = null;
    MapSqlParameterSource in = null;

    SimpleJdbcCall call = null;
    Map<String, Object> out = null;
    in = new MapSqlParameterSource();

    call =
        JdbcHelper.initializeSimpleJdbcCallProcedure(
            getJdbcTemplate(), "BBVA", "PQ_DEL_SERVICIOS", "sp_obt_usuario_servicio");

    JdbcHelper.setInOutParameter(call, in, "a_codusuario", Types.VARCHAR, usuario.getCodusuario());
    JdbcHelper.setOutParameter(call, "a_cursor", OracleTypes.CURSOR, Usuario.class);

    out = call.execute(in);

    usr = (List<Usuario>) out.get("a_cursor");

    System.out.println("FIN: Ejecutando metodo getUsuario");

    return usr.get(0);

    //		Usuario j = new Usuario();
    //		j.setContrasena("en2wrf7xCzW4AauuAHCgvQ==");
    //		j.setCodusuario("Android");
    //		return j;
  }
  @SuppressWarnings("unchecked")
  public List<Delivery> lstDelivery(Delivery param) {
    System.out.println("INI: Ejecutando metodo lstDelivery");
    List<Delivery> lista = null;

    MapSqlParameterSource in = null;

    SimpleJdbcCall call = null;
    Map<String, Object> out = null;
    in = new MapSqlParameterSource();

    call =
        JdbcHelper.initializeSimpleJdbcCallProcedure(
            getJdbcTemplate(), "BBVA", "pq_del_courier", "sp_lst_delivery");

    JdbcHelper.setInParameter(
        call, in, "a_nrodocumentocli", OracleTypes.VARCHAR, param.getNrodocumentocli());
    JdbcHelper.setInParameter(call, in, "a_nombrescli", OracleTypes.VARCHAR, param.getNombrescli());
    JdbcHelper.setInParameter(
        call, in, "a_nrodocumentocou", OracleTypes.VARCHAR, param.getNrodocumentocli());
    JdbcHelper.setInParameter(call, in, "a_nombrecou", OracleTypes.VARCHAR, param.getNombrescli());
    JdbcHelper.setOutParameter(call, "a_cursor", OracleTypes.CURSOR, Delivery.class);

    out = call.execute(in);

    lista = (List<Delivery>) out.get("a_cursor");
    System.out.println("FIN: Ejecutando metodo lstDelivery");
    return lista;
  }
  @SuppressWarnings("unchecked")
  public List<Courier> obtenerListaCourier() {
    System.out.println("INI: Ejecutando metodo obtenerListaCourier");
    List<Courier> lista = null;

    MapSqlParameterSource in = null;

    SimpleJdbcCall call = null;
    Map<String, Object> out = null;
    in = new MapSqlParameterSource();

    call =
        JdbcHelper.initializeSimpleJdbcCallProcedure(
            getJdbcTemplate(), "BBVA", "pq_del_servicios", "sp_lst_courier_servicio");

    JdbcHelper.setOutParameter(call, "a_cursor", OracleTypes.CURSOR, Courier.class);

    out = call.execute(in);

    lista = (List<Courier>) out.get("a_cursor");
    System.out.println("FIN: Ejecutando metodo obtenerListaCourier");
    return lista;
  }