Giter VIP home page Giter VIP logo

japi's People

Contributors

afonsohlc avatar graciano avatar mtandrade avatar pedrobarros avatar xykkong avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

japi's Issues

Order by não funcionando

Por algum motivo estranho, o order by não funciona.
Ao entrar nessa URI: /licitacoes/v1/licitacoes?order_by=uasg, no console vemos:

    SELECT modalidade,nome_modalidade,nome_uasg,numero_aviso,uasg FROM dados_abertos.vw_licitacao WHERE 1 = 1 ORDER BY ?, ? OFFSET ? LIMIT 500
    valores ORDER BY: uasg ASC
    valor OFFSET: 0
    nenhum valor no where (considerado 1=1)

Mas, dando f5, o resultado é diferente sempre
(para testar, é preciso estar no banco da prd)

session.clear() funcionando de maneira inesperada

Nesta linha, neste arquivo temos o session.clear(). A intenção disso é limpar as informações do request anterior para o atual não ter problemas. Mas o que acontece é que estamos usando a info do request anterior e limpando depois, fazendo com que o primeiro request seja sempre como se nada tivesse vindo do GET e os próximos funcionam sempre com as informações do anterior, teste só pra ver.

usar Map<String, List<String>> na classe Filter

Atualmente, temos na classe abstrata Filter o seguinte código:

    protected Class<? extends Object> valueType = String.class;
    protected List<String> parameters;
    public abstract String getStatement();
    public abstract ArrayList<String> getValues();

Estes métodos abstratos foram feitos na intenção de obrigar o Filter a enviar as informações necessárias para o Service.
Num primeiro momento, em relação ao método getValues(), achei que faria mais sentido nós termos um ArrayList<String> values como parâmetro da classe Filter e retornar o valor dele.

Depois pensei melhor e assumindo que cada filtro (ao ser adicionado na Session) pode se utilizar de vários parâmetros do banco e vários valores vindos da URL, então pensei em criar uma variável do tipo Map<String, List<String>> para isso, substituindo a values e parameters. O que acham?

Ideias de implementação

A ideia aqui é colocar tudo que for discutido e especulado sobre o projeto: frameworks, libs, como implementar tal coisa etc.

Inicialmente começamos com o que tem abaixo:
Itens a serem discutidos:
- parâmetros padrão da URI (offset e order by)
- validação dos campos de cada request
- LinkFactory e Providers (ver a questão de como serão mapeados os Resources)

O service não sabe o tipo dos dados

Colocar o tipo dos dados no service, para podermos associar os Values como dates, por exemplo. Além de facilitar a vida a hora de colocar os filtros no esquema todo.

GenericModel usando vetores de maneira errada

Ao invés de usar dois vetores, usar um objeto PairParameterValue, por exemplo, e o genericModel ser constituído de um vetor destes pares.
PairParameterValue terá uma String parameter e um Value value.

Criei a issue porque preciso ir embora, se não já tinha consertado isso.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.