death114 发表于 2018-10-27 11:13:08

Java实现MongoDB的日期(Date)分组功能

public String getCTOStatistic() throws Exception {  String ctoTaskType = getParameterValue("ctoTaskType").toString();
  String startDate = getParameterValue("startDate").toString();
  String endDate = getParameterValue("endDate").toString();
  DBObject initial = new BasicDBObject();
  DBObject index = new BasicDBObject();
  BasicDBObject cond = new BasicDBObject();
  BasicDBObject dateCondition = new BasicDBObject();
  index.put("count", 0);
  index.put("ctoPerson", "");
  initial.put("ctoPerson", index);
  cond.put("ctoStatus", "Finished");
  if(StringUtils.isNotEmpty(ctoTaskType)){
  cond.put("taskId", ctoTaskType);
  }
  if(StringUtils.isNotEmpty(startDate)){
  dateCondition.append("$gte", DateUtil.toDate(startDate));
  }
  if(StringUtils.isNotEmpty(endDate)){
  dateCondition.append("$lt", DateUtil.toDate(endDate));
  }
  cond.put("jobCreateTime",dateCondition);
  String reduce = "function (doc, out) { "
  + " out.ctoPerson.count = out.ctoPerson.count+=1; "
  + " out.ctoPerson.ctoPerson = doc.ctoPerson;"
  + "}";
  BasicDBList group = (BasicDBList) ctoJobService.group(
  new String[] { "ctoPerson"}, cond, initial, reduce, null);
  this.jsonResult = group.toString();
  return SUCCESS;
  }


页: [1]
查看完整版本: Java实现MongoDB的日期(Date)分组功能