Authored by hugufei

不缓存的参数全部去掉udid

... ... @@ -38,8 +38,7 @@ public class CommonPageRecallService extends BaseRecallService {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheInMinute = 3, needMd5 = false, cacheName = "COMMON_PAGE_RECALL_BATCH", cacheType = CacheType.EHCACHE, returnClass = CommonRecallResult.class, excludeParams = {
"uid", "order", "page" })
@SearchCacheAble(cacheInMinute = 3, needMd5 = false, cacheName = "COMMON_PAGE_RECALL_BATCH", cacheType = CacheType.EHCACHE, returnClass = CommonRecallResult.class, excludeParams = {"uid","udid","order", "page" })
public CommonRecallResult doCommonPageRecallBatch(Map<String, String> paramMap) {
try {
int viewNum = this.getViewNum(paramMap);
... ...
... ... @@ -40,14 +40,20 @@ public class SearchCommonHelper {
if (!searchDynamicConfigService.openPersonalized()) {
return false;
}
if (this.hasUid(paramMap) && this.isOrderEmpty(paramMap)) {
if (!this.isOrderEmpty(paramMap)) {
return false;
}
if (this.hasUid(paramMap)) {
return true;
}
if (this.hasUdid(paramMap)) {
return true;
}
return false;
}
public long getTotalPage(long total, int size) {
return PageUtils.getTotalPage(total,size);
return PageUtils.getTotalPage(total, size);
}
public int getUid(Map<String, String> paramMap) {
... ... @@ -58,10 +64,22 @@ public class SearchCommonHelper {
}
}
public String getUdid(Map<String, String> paramMap) {
try {
return MapUtils.getString(paramMap, "udid", "");
} catch (Exception e) {
return "";
}
}
public boolean hasUid(Map<String, String> paramMap) {
return this.getUid(paramMap) > 0;
}
public boolean hasUdid(Map<String, String> paramMap) {
return StringUtils.isBlank(this.getUdid(paramMap))?false:true;
}
/**
* 是否是默认的模糊搜索
... ... @@ -96,7 +114,7 @@ public class SearchCommonHelper {
if (!openPersonalized) {
return false;
}
if(!this.hasUid(paramMap)){
if (!this.hasUid(paramMap)) {
return false;
}
if (!this.isOrderEmpty(paramMap)) {
... ...
... ... @@ -42,9 +42,22 @@ public class DefaultProductListService {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheName = "PRODUCT_LIST_NOT_PERSIONAL", cacheType = CacheType.SEARCH_REDIS, cacheInMinute = 10, excludeParams = {"uid", "firstProductSkn"})
@SearchCacheAble(cacheName = "PRODUCT_LIST_NOT_PERSIONAL", cacheType = CacheType.SEARCH_REDIS, cacheInMinute = 10, excludeParams = {"uid", "udid", "firstProductSkn"})
public SearchApiResult productListNotPersional(Map<String, String> paramMap) {
return this.productList(paramMap);
try {
// 1) 构建SearchParam
SearchParam searchParam = productListHelper.buildProductListSearchParam(paramMap, false);
// 2) 执行搜索
SearchResult searchResult = searchCommonService.doSearch(ISearchConstants.INDEX_NAME_PRODUCT_INDEX, searchParam);
// 3) 构造返回结果,无需做品类品牌平衡
JSONObject productListResult = productListHelper.buildProductListResult(searchResult, searchParam.getSize(), false);
return new SearchApiResult().setData(productListResult);
} catch (Exception e) {
logger.error(e.getMessage(), e);
return new SearchApiResult().setData(null).setCode(500);
}
}
/**
... ... @@ -55,10 +68,6 @@ public class DefaultProductListService {
*/
@SearchCacheAble(cacheName = "PRODUCT_LIST_DEFAULT_PERSIONAL", cacheType = CacheType.SEARCH_REDIS, cacheInMinute = 10)
public SearchApiResult productListForDefaultPersional(Map<String, String> paramMap) {
return this.productList(paramMap);
}
private SearchApiResult productList(Map<String, String> paramMap) {
try {
// 1) 构建SearchParam
SearchParam searchParam = productListHelper.buildProductListSearchParam(paramMap, true);//这个必须用buildWithPersional构造,有些特殊的逻辑-如firstSkn在里面
... ... @@ -66,10 +75,8 @@ public class DefaultProductListService {
// 2) 执行搜索
SearchResult searchResult = searchCommonService.doSearch(ISearchConstants.INDEX_NAME_PRODUCT_INDEX, searchParam);
// 3) 构造返回结果
boolean needResort = searchCommonHelper.isOrderEmpty(paramMap);//没传order时,做下品类品牌的平衡
JSONObject productListResult = productListHelper.buildProductListResult(searchResult, searchParam.getSize() , needResort);
// 3) 构造返回结果,需做品类品牌平衡
JSONObject productListResult = productListHelper.buildProductListResult(searchResult, searchParam.getSize(), true);
return new SearchApiResult().setData(productListResult);
} catch (Exception e) {
logger.error(e.getMessage(), e);
... ...
... ... @@ -101,7 +101,7 @@ public class BreakSizeSceneService extends AbstractSceneService {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheName = "SORT_SIZES", cacheInMinute = 10, excludeParams = { "uid", "page", "viewNum", "yh_channel" })
@SearchCacheAble(cacheName = "SORT_SIZES", cacheInMinute = 10, excludeParams = { "uid","udid","page", "viewNum", "yh_channel" })
public SearchApiResult sortSizes(Map<String, String> paramMap) {
try {
this.addParamsToParamMap(paramMap);
... ...
... ... @@ -59,7 +59,7 @@ public class HotSaleRankSceneService {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheInMinute = 60, cacheName = "HOT_SALE_RANK", excludeParams = { "client_type", "yh_channel", "order", "uid" })
@SearchCacheAble(cacheInMinute = 60, cacheName = "HOT_SALE_RANK", excludeParams = { "client_type", "yh_channel", "order", "uid","udid" })
public SearchApiResult hotSaleRankProductList(Map<String, String> paramMap) {
try {
// 0)
... ...
... ... @@ -85,7 +85,7 @@ public class NewGoodProductSceneService extends AbstractCacheAbleService {
* @return
* @throws Exception
*/
@SearchCacheAble(cacheInMinute = 10, cacheName = "GOOD_PRODUCT_BY_SKN",excludeParams={ "uid" })
@SearchCacheAble(cacheInMinute = 10, cacheName = "GOOD_PRODUCT_BY_SKN",excludeParams={ "uid","udid"})
public SearchApiResult goodProductListBySkn(Map<String, String> paramMap) throws Exception {
try {
// 1、获取skn参数
... ...
... ... @@ -62,7 +62,7 @@ public class SceneAggregationsHelper {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheName = "SCENE_AGG_STANDARD", cacheInMinute = 15, excludeParams = { "uid", "order", "page", "viewNum", "yh_channel" })
@SearchCacheAble(cacheName = "SCENE_AGG_STANDARD", cacheInMinute = 15, excludeParams = { "uid","udid", "order", "page", "viewNum", "yh_channel" })
public SearchApiResult sceneAggStandard(Map<String, String> paramMap) {
try {
IAggregation standardAggregation = aggregationFactoryService.getStandardAggregation(paramMap);
... ... @@ -80,7 +80,7 @@ public class SceneAggregationsHelper {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheName = "SCENE_AGG_CUSTOMIZETAG", cacheInMinute = 15, excludeParams = { "uid", "order", "page", "viewNum", "yh_channel" })
@SearchCacheAble(cacheName = "SCENE_AGG_CUSTOMIZETAG", cacheInMinute = 15, excludeParams = { "uid","udid","order", "page", "viewNum", "yh_channel" })
public SearchApiResult sceneAggCustomizeTag(Map<String, String> paramMap) {
try {
IAggregation customizeAggregation = aggregationFactoryService.getCustomizeTagAggregation(paramMap);
... ... @@ -98,7 +98,7 @@ public class SceneAggregationsHelper {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheName = "SCENE_AGG_PROMOTION", cacheInMinute = 15, excludeParams = { "uid", "order", "page", "viewNum", "yh_channel" })
@SearchCacheAble(cacheName = "SCENE_AGG_PROMOTION", cacheInMinute = 15, excludeParams = { "uid","udid", "order", "page", "viewNum", "yh_channel" })
public SearchApiResult sceneAggPromotion(Map<String, String> paramMap) {
try {
// 1、获取aggregation
... ... @@ -148,7 +148,7 @@ public class SceneAggregationsHelper {
* @param paramMap
* @return
*/
@SearchCacheAble(cacheName = "SCENE_AGGREGATIONS", cacheInMinute = 30, excludeParams = { "uid", "order", "page", "viewNum", "yh_channel" })
@SearchCacheAble(cacheName = "SCENE_AGGREGATIONS", cacheInMinute = 30, excludeParams = { "uid","udid", "order", "page", "viewNum", "yh_channel" })
public SearchApiResult sceneAggregations(Map<String, String> paramMap) {
try {
// 1、获取筛选项列表
... ...
... ... @@ -60,7 +60,7 @@ public class BrandWithShopsServiceImpl implements IBrandWithShopsService, Applic
}
@Override
@SearchCacheAble(cacheInMinute = 30, cacheName = "BRANDS_WITH_SHOPS", excludeParams ={"viewNum","uid"})
@SearchCacheAble(cacheInMinute = 30, cacheName = "BRANDS_WITH_SHOPS", excludeParams ={"viewNum","uid","udid"})
public SearchApiResult brandsWithShops(Map<String, String> paramMap) {
try {
logger.info("[func=brandsWithShops][param={}][begin={}]", paramMap.toString(), System.currentTimeMillis());
... ...