Просмотр исходного кода

/、redis

release_toaliyun_real
xhxu 4 лет назад
Родитель
Сommit
383bc94d5c
3 измененных файлов: 37 добавлений и 11 удалений
  1. +23
    -11
      mallinkCApi/src/main/java/com/iformall/controller/WxMiniappThemeController.java
  2. +12
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxMiniappThemeServiceImpl.java
  3. +2
    -0
      mallinkService/src/main/java/com/iformall/utils/Constant.java

+ 23
- 11
mallinkCApi/src/main/java/com/iformall/controller/WxMiniappThemeController.java Просмотреть файл

@@ -9,11 +9,15 @@ import com.iformall.domain.po.WxThemeMall;
import com.iformall.enums.EnumAppModelType; import com.iformall.enums.EnumAppModelType;
import com.iformall.enums.EnumThemeType; import com.iformall.enums.EnumThemeType;
import com.iformall.service.WxMiniappThemeService; import com.iformall.service.WxMiniappThemeService;
import com.iformall.utils.Constant;
import com.iformall.utils.RedisCacheUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;


import java.util.HashMap; import java.util.HashMap;
@@ -30,6 +34,10 @@ public class WxMiniappThemeController extends BaseController {
@Autowired @Autowired
WxMiniappThemeService wxMiniappThemeService; WxMiniappThemeService wxMiniappThemeService;


@Autowired
@Qualifier("objectCommonRedisTemplate")
RedisTemplate<String, Object> objectCommonRedisTemplate;

@RedisCache @RedisCache
@ApiOperation("查询MiniappTheme列表") @ApiOperation("查询MiniappTheme列表")
@GetMapping(value = "/getOne") @GetMapping(value = "/getOne")
@@ -40,17 +48,21 @@ public class WxMiniappThemeController extends BaseController {
mouldType = EnumAppModelType.CLASSICS.getCode(); mouldType = EnumAppModelType.CLASSICS.getCode();
} }
try { try {
WxThemeMall wxThemeMall = new WxThemeMall();
wxThemeMall.setTenantId(getTenantInfo().getTenantId());
wxThemeMall.setThemeType(EnumThemeType.C.getCode());
wxThemeMall.setMouldType(mouldType);
WxThemeMall themeMall = wxMiniappThemeService.findThemeMall(wxThemeMall);
List<WxMiniappThemeValue> valueList = null;
if(themeMall != null){
valueList = wxMiniappThemeService.findTheme(themeMall);
}
if(valueList == null || valueList.size() == 0){
valueList = wxMiniappThemeService.findDefaultList(EnumThemeType.C.getCode(),mouldType);
String key = Constant.theme + getTenantInfo().getTenantId() + ":" + EnumThemeType.C + mouldType;
List<WxMiniappThemeValue> valueList = RedisCacheUtils.getCacheListObject(objectCommonRedisTemplate, key, WxMiniappThemeValue.class);
if(null == valueList){
WxThemeMall wxThemeMall = new WxThemeMall();
wxThemeMall.setTenantId(getTenantInfo().getTenantId());
wxThemeMall.setThemeType(EnumThemeType.C.getCode());
wxThemeMall.setMouldType(mouldType);
WxThemeMall themeMall = wxMiniappThemeService.findThemeMall(wxThemeMall);
if(themeMall != null){
valueList = wxMiniappThemeService.findTheme(themeMall);
}
if(valueList == null || valueList.size() == 0){
valueList = wxMiniappThemeService.findDefaultList(EnumThemeType.C.getCode(),mouldType);
}
RedisCacheUtils.cache(objectCommonRedisTemplate,key,valueList,3600*24*3);
} }


Map<String,WxMiniappThemeValue> map = new HashMap<String,WxMiniappThemeValue>(); Map<String,WxMiniappThemeValue> map = new HashMap<String,WxMiniappThemeValue>();


+ 12
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxMiniappThemeServiceImpl.java Просмотреть файл

@@ -6,12 +6,17 @@ import com.iformall.common.IdWorker;
import com.iformall.domain.po.WxMiniappTheme; import com.iformall.domain.po.WxMiniappTheme;
import com.iformall.domain.po.WxMiniappThemeValue; import com.iformall.domain.po.WxMiniappThemeValue;
import com.iformall.domain.po.WxThemeMall; import com.iformall.domain.po.WxThemeMall;
import com.iformall.enums.EnumThemeType;
import com.iformall.mapper.WxMiniappThemeMapper; import com.iformall.mapper.WxMiniappThemeMapper;
import com.iformall.mapper.WxThemeMallMapper; import com.iformall.mapper.WxThemeMallMapper;
import com.iformall.service.WxMiniappThemeService; import com.iformall.service.WxMiniappThemeService;
import com.iformall.utils.Constant;
import com.iformall.utils.RedisCacheUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;


import java.util.Date; import java.util.Date;
@@ -28,6 +33,10 @@ public class WxMiniappThemeServiceImpl implements WxMiniappThemeService {
@Autowired @Autowired
WxThemeMallMapper wxThemeMallMapper; WxThemeMallMapper wxThemeMallMapper;


@Autowired
@Qualifier("objectCommonRedisTemplate")
RedisTemplate<String, Object> objectCommonRedisTemplate;

@Override @Override
public List<WxMiniappTheme> findList(WxMiniappTheme record) { public List<WxMiniappTheme> findList(WxMiniappTheme record) {
return wxMiniappThemeMapper.findList(record); return wxMiniappThemeMapper.findList(record);
@@ -64,6 +73,9 @@ public class WxMiniappThemeServiceImpl implements WxMiniappThemeService {
}else{ }else{
wxThemeMallMapper.updateType(record); wxThemeMallMapper.updateType(record);
} }
//修改主题 清除缓存
String key = Constant.theme + record.getTenantId() + ":" + EnumThemeType.getEnum(record.getThemeType()) + record.getMouldType();
RedisCacheUtils.removeCache(objectCommonRedisTemplate,key);
} }


@Override @Override


+ 2
- 0
mallinkService/src/main/java/com/iformall/utils/Constant.java Просмотреть файл

@@ -45,6 +45,8 @@ public class Constant {


public static final String cuserQr = "weapp:cuser-qr:"; public static final String cuserQr = "weapp:cuser-qr:";


public static final String theme = "weapp:theme:";

public static final String publicApi = "publicApi:"; public static final String publicApi = "publicApi:";
public static final String publicApiNonce = publicApi + "nonce:"; public static final String publicApiNonce = publicApi + "nonce:";




Загрузка…
Отмена
Сохранить