|
@@ -2,6 +2,7 @@ package com.xc.service.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import com.jfinal.plugin.activerecord.Record;
|
|
|
import com.xc.dao.StockMapper;
|
|
@@ -52,6 +53,9 @@ public class InitStockListRedisServiceImpl implements InitStockListService {
|
|
|
String redisData = redisUtil.getItem(redisKey);
|
|
|
if (StringUtils.isEmpty(redisData) || ("[]".equals(redisData))) {
|
|
|
List<StockVO> stockVOList = getStockList();
|
|
|
+ for (int i = 0; i < stockVOList.size(); i++) {
|
|
|
+ redisUtil.saveItem(stockVOList.get(i).getCode(),JSON.toJSONString(stockVOList.get(i)),1,TimeUnit.DAYS);
|
|
|
+ }
|
|
|
redisUtil.saveItem(redisKey, JSON.toJSONString(stockVOList), 1, TimeUnit.DAYS);
|
|
|
}
|
|
|
}
|
|
@@ -101,6 +105,18 @@ public class InitStockListRedisServiceImpl implements InitStockListService {
|
|
|
@Override
|
|
|
public void updateInfo(StockVO stockVOList) {
|
|
|
String redisKey = String.format(stockVOList.getCode());
|
|
|
+ String redisData = redisUtil.getItem(redisKey);
|
|
|
+ StockVO stockRedis = new StockVO();
|
|
|
+ if (StringUtils.isNotEmpty(redisData) && !("[]".equals(redisData))&&redisData!=null) {
|
|
|
+ stockRedis = JSONObject.parseObject(redisData, StockVO.class);
|
|
|
+ }else {
|
|
|
+ initStockToRedis();
|
|
|
+ redisData = redisUtil.getItem(redisKey);
|
|
|
+ if (StringUtils.isNotEmpty(redisData) && !("[]".equals(redisData))&&redisData!=null) {
|
|
|
+ stockRedis = JSONObject.parseObject(redisData, StockVO.class);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ stockVOList.setId(stockRedis.getId());
|
|
|
redisUtil.saveItem(redisKey, JSON.toJSONString(stockVOList), 10, TimeUnit.MINUTES);
|
|
|
|
|
|
}
|