记得上下班打卡 | git大法好,push需谨慎

Commit ab898b3f authored by jiangxiulong's avatar jiangxiulong

banners 前端列表搜索time

parent ea801a09
...@@ -251,20 +251,33 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl ...@@ -251,20 +251,33 @@ public class KylinBannersServiceImpl extends ServiceImpl<KylinBannersMapper, Kyl
query.addCriteria( query.addCriteria(
Criteria.where("isOnline").is(1).and("isDeleted").is(1) Criteria.where("isOnline").is(1).and("isDeleted").is(1)
); );
LocalDateTime nowTime = LocalDateTime.now();
String nowTimeStr = nowTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
Criteria onlineTimeBetween = Criteria.where("onlineStartTime").lte(nowTimeStr).and("onlineEndTime").gte(nowTimeStr);
Criteria onlineTimeGt = Criteria.where("onlineStartTime").lte(nowTimeStr).and("onlineEndTime").is("");
Criteria onlineTimeLt = Criteria.where("onlineStartTime").is("").and("onlineEndTime").gte(nowTimeStr);
Criteria onlineTimeEmpty = Criteria.where("onlineStartTime").is("").and("onlineEndTime").is("");
Criteria mergeCriteriaTime = new Criteria();
mergeCriteriaTime.orOperator(onlineTimeBetween, onlineTimeGt, onlineTimeLt, onlineTimeEmpty);
if (!bannersApiSearchParam.getPosition().isEmpty()) { if (!bannersApiSearchParam.getPosition().isEmpty()) {
query.addCriteria( query.addCriteria(
Criteria.where("positionList").in(bannersApiSearchParam.getPosition()) Criteria.where("positionList").in(bannersApiSearchParam.getPosition())
); );
} }
Criteria mergeCriteriaPromotion = new Criteria();
if (!bannersApiSearchParam.getProvinceCode().isEmpty()) { if (!bannersApiSearchParam.getProvinceCode().isEmpty()) {
Criteria c1 = Criteria.where("provincesList").in(bannersApiSearchParam.getProvinceCode()); Criteria promotionCity = Criteria.where("provincesList").in(bannersApiSearchParam.getProvinceCode());
Criteria c2 = Criteria.where("promotionType").is(1); Criteria promotionAll = Criteria.where("promotionType").is(1);
Criteria cr = new Criteria(); mergeCriteriaPromotion.orOperator(promotionCity, promotionAll);
}
Criteria criteria = new Criteria();
query.addCriteria( query.addCriteria(
cr.orOperator(c1, c2) criteria.andOperator(mergeCriteriaTime, mergeCriteriaPromotion)
); );
}
List bannerList = mongoTemplate.find( List bannerList = mongoTemplate.find(
query, query,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment