1
resposta

Criteria com mongoRepository

Galera to com uma dúvida, tenho o seguinte documento

  {
        "codigoUo": 1,
        "descricao": "Administração Superior da Secretaria e da Sede",
        "unidadesDespesa": [
            {
                "udCodigo": 1,
                "udDescricao": "Gabinete Secretario e Assessorias",
                "unidadesAdministrativas": [
                    {
                        "uaCodigo": 37453,
                        "uaDescricao": "GR.APOIO POLIT.PREV.PROT.SAUDE"
                    },
                    {
                        "uaCodigo": 49837,
                        "uaDescricao": "C.DISTR.LOGISTICA PF.E.JUAREZ"
                    },
                    {
                        "uaCodigo": 4655,
                        "uaDescricao": "GABIN.SECRETARIO ASSESSORIAS"
                    }
                ]
            },
            {
                "udCodigo": 2,
                "udDescricao": "Coordenadoria Geral de Administração-CGA",
                "unidadesAdministrativas": [
                    {
                        "uaCodigo": 6921,
                        "uaDescricao": "INSTITUTO ADOLFO LUTZ"
                    },
                    {
                        "uaCodigo": 7015,
                        "uaDescricao": "CLR - IAL DE SANTOS"
                    },
                    {
                        "uaCodigo": 7021,
                        "uaDescricao": "CLR - IAL DE RIBEIRAO PRETO"
                    }
                ]
            },
            {
                "udCodigo": 5,
                "udDescricao": "Coordenadoria de Recursos Humanos-CRH",
                "unidadesAdministrativas": []
            }
        ]
    }

com a query

i    Criteria findUo = Criteria.where("_id").is(uoCodigo);
        Criteria findUd = Criteria.where("unidadesDespesa").elemMatch(Criteria.where("_id").is(udCodigo));
        BasicQuery query = new BasicQuery(findUo.getCriteriaObject(), findUd.getCriteriaObject());

Eu consigo trazer a unidadesDespesa pelo código mas agora eu gostaria de navegar dentro da unidadesAdministrativas e também trazer pelo código. Uma luz por favor.

1 resposta

Oi Franklin, tudo bem ?

Cara acho que a galera não teve nenhuma demanda desse tipo até o momento, por isso ninguém conseguiu te responder.

Acho que talvez o problema esteja que você esteja usando um recurso que a galera geralmente não curte usar muito, que é a Criteria.

Talvez valha mais a pena usar jpql para fazer isso, ai eu acredito que a galera possa tentar te ajudar melhor.