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

Commit 77669d5d authored by zhengfuxin's avatar zhengfuxin

修改 搜索。

parent 6cb07c5c
......@@ -10,6 +10,7 @@ import com.liquidnet.service.goblin.constant.GoblinStatusConst;
import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.entity.*;
import com.liquidnet.service.goblin.service.GoblinFrontService;
import com.liquidnet.service.goblin.util.GoblinMongoUtils;
import com.liquidnet.service.goblin.util.GoblinRedisUtils;
import com.liquidnet.service.goblin.util.ObjectUtil;
import com.liquidnet.service.goblin.util.QueueUtils;
......@@ -43,6 +44,8 @@ public class GoblinFrontServiceImpl implements GoblinFrontService {
MongoTemplate mongoTemplate;
@Autowired
QueueUtils queueUtils;
@Autowired
GoblinMongoUtils mongoUtils;
@Override
public ArrayList<GoblinFrontBannerVo> getListBanner() {
......@@ -399,13 +402,15 @@ public class GoblinFrontServiceImpl implements GoblinFrontService {
}
public List<GoblinGoodsInfoVo> searchGoodesName(String name){
List<String> listStore=mongoUtils.getStoreInfoVoRegexName(name);
Pattern pattern = Pattern.compile("^.*"+name+".*$", Pattern.CASE_INSENSITIVE);
Query query = new Query();
query.addCriteria(new Criteria().orOperator(
Criteria.where("name").regex(pattern).and("spuAppear").is("0").and("delFlg").is("0").and("shelvesStatus").is("3"),
Criteria.where("storeName").regex(pattern).and("spuAppear").is("0").and("delFlg").is("0").and("shelvesStatus").is("3")
Criteria.where("name").regex(pattern),
Criteria.where("storeId").in(listStore)
));
// query.addCriteria(Criteria.where("name").regex(pattern).and("spuAppear").is("0").and("delFlg").is("0").and("shelvesStatus").is("3"));
query.addCriteria(Criteria.where("spuAppear").is("0").and("delFlg").is("0").and("shelvesStatus").is("3"));
query.with(Sort.by(
Sort.Order.desc("count"),
Sort.Order.desc("createdAt")
......
......@@ -274,11 +274,15 @@ public class GoblinMongoUtils {
GoblinStoreInfoVo.class, GoblinStoreInfoVo.class.getSimpleName());
}
public String getStoreInfoVoRegexName(String storeName) {
public ArrayList<String> getStoreInfoVoRegexName(String storeName) {
Query query = Query.query(Criteria.where("storeName").regex("^.*" + storeName + ".*$").and("delFlg").is("0").and("status").in("3", "5"));
query.fields().include("storeId");
GoblinStoreInfoVo vo = mongoTemplate.findOne(query, GoblinStoreInfoVo.class, GoblinStoreInfoVo.class.getSimpleName());
return null == vo ? null : vo.getStoreId();
List<GoblinStoreInfoVo> voList = mongoTemplate.find(query, GoblinStoreInfoVo.class, GoblinStoreInfoVo.class.getSimpleName());
ArrayList<String> list=ObjectUtil.getStringList();
for(GoblinStoreInfoVo goblinStoreInfoVo:voList){
list.add(goblinStoreInfoVo.getStoreId());
}
return list;
}
public GoblinStoreInfoVo getStoreInfoVoByUid(String uid) {
......
......@@ -60,6 +60,7 @@ public class ObjectUtil {
private static final ArrayList<GoblinBackOrderVo> goblinBackOrderVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinFrontNavigationVo> goblinFrontNavigationVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinGoodsSkuInfoDetailVo> goblinGoodsSkuInfoDetailVos = new ArrayList<>();
private static final ArrayList<String> stringList = new ArrayList<>();
private static final BasicDBObject basicDBObject = new BasicDBObject();
private static final ArrayList<WriteModel<Document>> writeModelDocumentArrayList = new ArrayList<>();
......@@ -70,7 +71,9 @@ public class ObjectUtil {
public static PagedResult<GoblinStoreNoticeVo> getGoblinStoreNoticeVoPagedResult() {
return goblinStoreNoticeVoPagedResult.clone();
}
public static ArrayList<String> getStringList() {
return (ArrayList<String>) stringList.clone();
}
public static ArrayList<GoblinGoodsSkuInfoDetailVo> goblinGoodsSkuInfoDetailVos() {
return (ArrayList<GoblinGoodsSkuInfoDetailVo>) goblinGoodsSkuInfoDetailVos.clone();
}
......
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