/**
* 分页 查询成员列表
* @param params
* @param queryInfo
* @return
*/
public PartialCollection list(Map<String, String> params,QueryInfo queryInfo) {
String groupId=params.get("groupId");
String isAuth=params.get("isAuth");
String isInstall=params.get("isInstall");
String nameOrMdn=params.get("nameOrMdn");
String contactsId=params.get("contactsId");
String spId="";//params.get("spId");
String isAll=params.get("isAll");
MongoQuery query = createMongoQuery(MONGO_CONTACTS_COLLECTION);
BasicDBObject conds = new BasicDBObject();
conds.put("contactsId", contactsId);
if(StringUtil.isNullOrEmpty(spId)){
spId=getSpId();
}
conds.put("spId",spId);
conds.put("status", Constants.CONTACTS_MEMBER_STATUS_NORMAL);
BasicDBObject listMatch=new BasicDBObject();
if(StringUtil.isNotNullOrEmpty(groupId)){
if(Constants.CONTACTS_UNGROUPED_ID.equals(groupId)){//未分组 特殊处理
conds.put("status", Constants.CONTACTS_MEMBER_STATUS_NORMAL);
listMatch.put(QueryOperators.ELEM_MATCH, new BasicDBObject("id",groupId));
query.addAll(new BasicDBObject("groupList", listMatch));
}else{
conds.put("status", Constants.CONTACTS_MEMBER_STATUS_NORMAL);
List<String> gIdList = new ArrayList<String>();
if(Constants.YES.equals(isAll)){
List<Map<String,String>> gList = getGroupChildren(groupId,"3");
if(gList!=null){
for (Map<String,String> group : gList) {
gIdList.add(group.get("id"));
}
}
}else{
gIdList.add(groupId);
}
listMatch.put(QueryOperators.ELEM_MATCH, new BasicDBObject("id", new BasicDBObject(QueryOperators.IN,gIdList)));
query.addAll(new BasicDBObject("groupList", listMatch));
}
}
;
if(StringUtil.isNotNullOrEmpty(isAuth)){
if(Constants.YXT_NOT_AUTH.equals(isAuth)){
BasicDBObject queryObject = new BasicDBObject().append(
QueryOperators.OR,
new BasicDBObject[] { new BasicDBObject("yxtMap", new BasicDBObject(QueryOperators.EXISTS,false)),
new BasicDBObject("yxtMap.isAuth", isAuth)});
query.addAll(queryObject);
}else{
conds.put("yxtMap.isAuth",isAuth);
}
}
if(StringUtil.isNotNullOrEmpty(isInstall)){
if(Constants.YXT_NOT_INSTALL.equals(isInstall)){
conds.append(QueryOperators.OR,
new BasicDBObject[] { new BasicDBObject("yxtMap", new BasicDBObject(QueryOperators.EXISTS,false)),
new BasicDBObject("yxtMap.isInstall", isInstall)});
}else{
conds.put("yxtMap.isInstall",isInstall);
}
}
if(StringUtil.isNotNullOrEmpty(nameOrMdn)){
BasicDBObject queryObject = new BasicDBObject()
.append(QueryOperators.OR, new BasicDBObject[] { new BasicDBObject("name", getLikeBsonObj(nameOrMdn)), new BasicDBObject("mdn", nameOrMdn) });
query.addAll(queryObject);
}
query.addAll(conds);
query.setQueryInfo(queryInfo);
query.sort(new BasicDBObject());
logger.info("list member conds info"+query.getCondsObject().toString());
return query.listPartial();
}
- 浏览: 305945 次
- 性别:
- 来自: 上海
最新评论
-
NEOGX:
http://www.tuicool.com/articles ...
Json转换利器Gson之实例一-简单对象转化和带泛型的List转化 -
么可k:
可以喔
Can not find the tag library descriptor for "http://java.sun.com/j... -
tianyi_qingwu:
解决了我的一个问题,学习了,谢谢!
Ant+Flex: Java Heap Space -
ldci3gandroid:
if(month==0){ year-=1;mont ...
java获取当前日期一个月后的日期 -
djcbpl:
好像不行啊!我放进去了,还是错的啊
Can not find the tag library descriptor for "http://java.sun.com/j...
相关推荐
Python or的写法,希望对你有帮助,建议多查查,扎实下语法再来下载,省的浪费积分,要50个字实在很难受,快写不下去了
MongoDB高级查询,许多有用的查询函数,相信大家会用得到的
一、MongoDB简介 3 二、MongoDB结构 3 二、MongoDB 数据库关系型(这里并不是值关系型数据库的关系) 3 1、MongoDB一对一关系型 3 2、MongoDB一对多关系型 4 3、MongoDB多对多关系型 4 三、创建数据库(mongodb_test...
sudo vim /etc/yum.repos.d/mongodb-org-4.2.repo 写入: [mongodb-org-4.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/ gpgcheck=1 enabled=1 gpg...
本课程是一套关于MongoDB应用开发的实战性教程,名为《深入浅出MongoDB应用实战开发(基础、开发指南、系统管理、集群及系统架构)》,教程侧重于讲解MongoDB的常用特性及高级特性,从实际开发的角度出发对MongoDB...
Skills in these areas are in demand, making this book essential reading for those who want to work more productively or break into big data work. It will prove equally useful for entrepreneurs and ...
资源名称:MongoDB应用设计模式内容简介:无论是在构建社交媒体网站,还是在开发一个仅在内部使用的企业应用程序,《MongoDB应用设计模式》展示了MongoDB需要解决的商业问题之间的连接。你将学到如何把MongoDB设计...
MongoDB 学习PPT
MongoDB图形化管理工具 MongoDB Compass
【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT...
主要介绍了Thinkphp使用mongodb数据库实现多条件查询方法,修改了mongodb驱动文件来实现复合查询、多条件查询,需要的朋友可以参考下
mongodb,下载mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,mongodb,
教程名称:MongoDB教程基础入门 课程目录:【】MongoDB教程基础入门-代码【】MongoDB教程基础入门01第一讲上【】MongoDB教程基础入门02第一讲下【】MongoDB教程基础入门03第二讲上【】MongoDB教程基础入门04第二讲...
MongoDB 5.0.6 windows版本
mv mongodb-linux-x86_64-4.0.18 mongodb 3、进入 mongodb 目录创建目录 db 和 logs cd /usr/local/mongodb mkdir db mkdir logs 4、进入到 bin 目录下,编辑 mongodb.conf 文件,内容如下: dbpath=/usr/local/...
The next part deals with the administration of MongoDB installations on-premise or in the cloud. We deal with database internals in the next section, explaining storage systems and how they can ...
MongoDB4.2分片及副本集群搭建 MongoDB集群 MongoDB分片 MongoDB副本 MongoDB副本集群
MongoDB学习MongoDB学习MongoDB学习
MongoDB win 32位,MongoDB win 32位,MongoDB win 32位
mongodb-win32-x86_64-2008plus-ssl-v4.0-latest-signed.msi