From ab7cc6a022fdb292af37442c4a8118476eb592eb Mon Sep 17 00:00:00 2001 From: liquanyu Date: Tue, 15 Nov 2016 14:22:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A7=E7=AD=9B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/query/SieveQuery.java | 81 ++++++++++++++++------ 1 file changed, 59 insertions(+), 22 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java index 088aaf4..24db16c 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/SieveQuery.java @@ -187,39 +187,76 @@ public class SieveQuery extends BaseQuery implements IConvertToNativeQuery { condition = condition.and("yn", yn, MongoOper.IS); } - Criteria c = null; - boolean isAddStart = Boolean.FALSE; - if (null != dueWeekStart) { - c = Criteria.where("dueWeek").gte(dueWeekStart); - isAddStart = Boolean.TRUE; + Criteria c1 = null; + if (null != lastMensesStart) { + if (null != c1) { + c1 = c1.and("lastMenses").gte(lastMensesStart); + } else { + c1 = Criteria.where("lastMenses").gte(lastMensesStart); + } } - if (null != dueWeekEnd) { - if (c!=null) { - c = c.lte(dueWeekEnd); + if (null != lastMensesEnd) { + if (c1 != null) { + c1 = c1.lte(lastMensesEnd); } else { - c = Criteria.where("dueWeek").lte(dueWeekEnd); + c1 = Criteria.where("lastMenses").lte(lastMensesEnd); } } - - if (null != lastMensesStart) { - if(c!=null){ - c = c.where("lastMenses").gte(lastMensesStart); - }else { - c = Criteria.where("lastMenses").gte(lastMensesStart); + if (null != dueWeekStart) { + if (null != c1) { + c1 = c1.and("dueWeek").gte(dueWeekStart); + } else { + c1 = Criteria.where("dueWeek").gte(dueWeekStart); } - isAddStart = Boolean.TRUE; } - if (null != lastMensesEnd) { - if (c!=null) { - c = c.lte(lastMensesEnd); + if (null != dueWeekEnd) { + if (null != c1) { + c1 = c1.lte(dueWeekEnd); } else { - c = Criteria.where("lastMenses").lte(lastMensesEnd); + c1 = Criteria.where("dueWeek").lte(dueWeekEnd); } } - if (null!=c) { - condition=condition.andCondition(new MongoCondition(c)); + + + if (null != c1) { + condition = condition.andCondition(new MongoCondition(c1)); } + + +// Criteria c = null; +// boolean isAddStart = Boolean.FALSE; +// if (null != dueWeekStart) { +// c = Criteria.where("dueWeek").gte(dueWeekStart); +// isAddStart = Boolean.TRUE; +// } +// if (null != dueWeekEnd) { +// if (c!=null) { +// c = c.lte(dueWeekEnd); +// } else { +// c = Criteria.where("dueWeek").lte(dueWeekEnd); +// } +// } +// +// +// if (null != lastMensesStart) { +// if(c!=null){ +// c = c.where("lastMenses").gte(lastMensesStart); +// }else { +// c = Criteria.where("lastMenses").gte(lastMensesStart); +// } +// isAddStart = Boolean.TRUE; +// } +// if (null != lastMensesEnd) { +// if (c!=null) { +// c = c.lte(lastMensesEnd); +// } else { +// c = Criteria.where("lastMenses").lte(lastMensesEnd); +// } +// } +// if (null!=c) { +// condition=condition.andCondition(new MongoCondition(c)); +// } return condition.toMongoQuery(); } -- 1.8.3.1