fix: 优化redis数据存储
This commit is contained in:
parent
f1588a6f7a
commit
0c0178c78a
|
|
@ -8,7 +8,7 @@ import com.nflg.mobilebroken.common.pojo.request.WXQrcodeRequest;
|
|||
import com.nflg.mobilebroken.common.pojo.request.WXQrcodeScene;
|
||||
import com.nflg.mobilebroken.common.pojo.vo.WXQrcodeVO;
|
||||
import com.nflg.mobilebroken.common.util.QRCodeUtil;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
|
@ -20,14 +20,14 @@ import java.util.Objects;
|
|||
public class WXQRCodeService {
|
||||
|
||||
@Resource
|
||||
private RedisTemplate<String, String> redisTemplate;
|
||||
private StringRedisTemplate stringRedisTemplate;
|
||||
|
||||
public byte[] generateQRCode(Integer userId) throws Exception {
|
||||
return QRCodeUtil.generateQRCode(getFollowUrl(userId), 200, 200);
|
||||
}
|
||||
|
||||
public String getFollowUrl(Integer userId) {
|
||||
Object obj = redisTemplate.opsForHash().get("wx:url:follow:admin", userId);
|
||||
Object obj = stringRedisTemplate.opsForHash().get("wx:url:follow:admin", String.valueOf(userId));
|
||||
if (Objects.isNull(obj)) {
|
||||
RestTemplate restTemplate = new RestTemplate();
|
||||
ResponseEntity<String> response1 = restTemplate.getForEntity(Constant.WX_TOKEN_URL, String.class);
|
||||
|
|
@ -39,7 +39,7 @@ public class WXQRCodeService {
|
|||
WXQrcodeRequest req = new WXQrcodeRequest().setAction_info(new WXQrcodeActionInfo().setScene(new WXQrcodeScene().setScene_str(scene_str)));
|
||||
WXQrcodeVO qvo = restTemplate.postForObject(url, req, WXQrcodeVO.class);
|
||||
obj = qvo.getUrl();
|
||||
redisTemplate.opsForHash().put("wx:url:follow:admin", userId, obj);
|
||||
stringRedisTemplate.opsForHash().put("wx:url:follow:admin", String.valueOf(userId), obj);
|
||||
}
|
||||
return obj.toString();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import com.nflg.mobilebroken.common.pojo.request.WXQrcodeRequest;
|
|||
import com.nflg.mobilebroken.common.pojo.request.WXQrcodeScene;
|
||||
import com.nflg.mobilebroken.common.pojo.vo.WXQrcodeVO;
|
||||
import com.nflg.mobilebroken.common.util.QRCodeUtil;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
|
@ -20,14 +20,14 @@ import java.util.Objects;
|
|||
public class WXQRCodeService {
|
||||
|
||||
@Resource
|
||||
private RedisTemplate<String, String> redisTemplate;
|
||||
private StringRedisTemplate stringRedisTemplate;
|
||||
|
||||
public byte[] generateQRCode(Integer userId) throws Exception {
|
||||
return QRCodeUtil.generateQRCode(getFollowUrl(userId), 200, 200);
|
||||
}
|
||||
|
||||
public String getFollowUrl(Integer userId) {
|
||||
Object obj = redisTemplate.opsForHash().get("wx:url:follow:app", userId);
|
||||
Object obj = stringRedisTemplate.opsForHash().get("wx:url:follow:app", String.valueOf(userId));
|
||||
if (Objects.isNull(obj)) {
|
||||
RestTemplate restTemplate = new RestTemplate();
|
||||
ResponseEntity<String> response1 = restTemplate.getForEntity(Constant.WX_TOKEN_URL, String.class);
|
||||
|
|
@ -39,7 +39,7 @@ public class WXQRCodeService {
|
|||
WXQrcodeRequest req = new WXQrcodeRequest().setAction_info(new WXQrcodeActionInfo().setScene(new WXQrcodeScene().setScene_str(scene_str)));
|
||||
WXQrcodeVO qvo = restTemplate.postForObject(url, req, WXQrcodeVO.class);
|
||||
obj = qvo.getUrl();
|
||||
redisTemplate.opsForHash().put("wx:url:follow:app", userId, obj);
|
||||
stringRedisTemplate.opsForHash().put("wx:url:follow:app", String.valueOf(userId), obj);
|
||||
}
|
||||
return obj.toString();
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue