分群id生成MongoDB查询文档
2021-04-20 10:46:05 3 举报
代码流程图,先查mysql得到条件,再生产MongoDB的查询语句
作者其他创作
大纲/内容
1932
判断编号
拼接{$and}非字符放在处理子节点的条件分支处理
返回查询文档
且
通过分群编号找到分群id
拼接{$or}
{\"id\":\"1932\
拼接{$and}
如果是空
(其他情况)有多个子节点
\"id\":\"1931\
判断操作符
实例化接收多个查询条件的对象
拿到数据层的对象DmpUserGroupTagRelation
不是空
再执行一次外层方法buildMongoDbQueryDocumentByGroupId
0
拼接BasicDBObject(MongoDB的查询条件)
返回拼接查询条件{tags:{$ne:number}}
使用stream API过滤出pid=0的结果集
判空
或
pid分组
子节点数量
递归
递归拼接mongodb的查询文档
返回null
{\"id\":\"1938\
buildMongoDbQueryDocumentByGroupId通过群id生成MongoDB的查询文档
返回拼好的查询文档
1931
在map中查找的子节点拿数据库中的id与pid分组中的map键对比如果匹配成功,说明有子节点
为“”非“”
通过群id查用户分群关系表
{\"id\":\"1933\
1933
没有子节点(只有编号)
只有一个子节点
{\"id\":\"1931\
循环每一个子节点
1937
把得到的条件添加到接收的list中
拿到这一次执行的对象与集合,再次调用本方法即(跳过这一层)
不是分群编号
非
{\"id\":\"1934\
是分群编号
把关系表中查到数据使用pid分组
不为“非”
返回{tags:number}
0 条评论
回复 删除
下一页