Browse Source

Merge commit '4e98e1c5fd254f4c6e75ca229a6f2c1cf2239f1b' into release

release_toaliyun_real
luozukai 6 years ago
parent
commit
40d3945007
3 changed files with 65 additions and 10 deletions
  1. +49
    -0
      mallinkService/src/main/java/com/iformall/enums/EnumCacheKey.java
  2. +14
    -8
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java
  3. +2
    -2
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java

+ 49
- 0
mallinkService/src/main/java/com/iformall/enums/EnumCacheKey.java View File

@@ -0,0 +1,49 @@
package com.iformall.enums;

import java.util.HashMap;
import java.util.Map;

/**
* Created by Stormeye on 2018/08/09.
*/
public enum EnumCacheKey {

C_INDEX_PAGE_LIST(0, "couponChannelList_"),

;
private static Map<Integer,EnumCacheKey> map = new HashMap<Integer,EnumCacheKey>();
static {
for (EnumCacheKey value : values()) {
map.put(value.code, value);
}
}

public static EnumCacheKey getEnum(Integer code) {
if (code == null) return null;
return map.get(code);
}

public static String getEnumMessage(Integer code) {
if (code == null) return null;
if (map.get(code) == null)
return null;
return map.get(code).getMessage();
}

private Integer code;
private String message;


EnumCacheKey(Integer code, String message) {
this.code = code;
this.message = message;
}

public Integer getCode() {
return code;
}

public String getMessage() {
return message;
}
}

+ 14
- 8
mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java View File

@@ -18,6 +18,8 @@ import com.iformall.mapper.WxCouponChannelMapper;
import com.iformall.mapper.WxCouponMerchantMapper;
import com.iformall.mapper.WxMerchantMapper;
import com.iformall.service.*;
import com.iformall.utils.JsonUtil;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -129,8 +131,8 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService {
* @param tenantId
*/
public void clearCache(String tenantId){
for (int i = 1; i <=20 ; i++) {
String key = "couponChannelList_"+tenantId+"_" + i + ":";
for (int i = 1; i <=5 ; i++) {
String key = EnumCacheKey.C_INDEX_PAGE_LIST.getMessage()+tenantId+"_" + i + ":";
cdRedisTemplate.delete(key);
}
}
@@ -306,20 +308,24 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService {
@Override
public PageInfo<WxCouponChannelVo> listPageCVo(WxCouponChannel record, Integer pageIndex, Integer pageSize) {
PageInfo<WxCouponChannelVo> pageInfo;
//首页走缓存
if(EnumTargetAd.LIST.getCode().equals(record.getTargetAd()) && new Integer(6).equals(pageSize) && pageIndex.intValue() <=20 ) {
logger.info("---------chache");
String key = "couponChannelList_"+record.getTenantId()+"_" + pageIndex + ":";
//仅c端首页走缓存
if(EnumCouponChannelType.COUPON_CHANNEL_ID_LIST.getCode().equals(record.getTargetAd())
&& new Integer(6).equals(pageSize)
&& pageIndex.intValue() <=5
&& record.getBusiness() == null) {

logger.info("listPageCVo.chache");
String key = EnumCacheKey.C_INDEX_PAGE_LIST.getMessage() +record.getTenantId()+"_" + pageIndex + ":";
ValueOperations<String, PageInfo<WxCouponChannelVo>> operations = cdRedisTemplate.opsForValue();
boolean hasKey = cdRedisTemplate.hasKey(key);
if (hasKey) {
pageInfo = operations.get(key);
logger.info("---------get:{}",pageInfo.getList().size());
logger.info("listPageCVo.chache.get:{}", pageInfo.getList()==null?0:pageInfo.getList().size());
}else{
pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponChannelMapper.findVoList(record));
}
//插入缓存
operations.set(key, pageInfo, 3600, TimeUnit.SECONDS);
operations.set(key, pageInfo, 60, TimeUnit.SECONDS);
return pageInfo;
}



+ 2
- 2
mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java View File

@@ -446,8 +446,8 @@ public class WxCouponServiceImpl implements WxCouponService {
* @param tenantId
*/
public void clearCache(String tenantId){
for (int i = 1; i <=20 ; i++) {
String key = "couponChannelList_"+tenantId+"_" + i + ":";
for (int i = 1; i <=5 ; i++) {
String key = EnumCacheKey.C_INDEX_PAGE_LIST.getMessage() +tenantId+"_" + i + ":";
cdRedisTemplate.delete(key);
}
}


Loading…
Cancel
Save