完善航班动态信息服务
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package com.gzzn.omms.msgexchangeapi.redis;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
@@ -64,13 +65,9 @@ public final class RedisService {
|
||||
* @param key 可以传一个值 或多个
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public void del(String... key) {
|
||||
if (key != null && key.length > 0) {
|
||||
if (key.length == 1) {
|
||||
redisTemplate.delete(key[0]);
|
||||
} else {
|
||||
redisTemplate.delete(CollectionUtils.arrayToList(key));
|
||||
}
|
||||
public void del(Collection<String> keys) {
|
||||
if (keys != null && keys.size() > 0) {
|
||||
redisTemplate.delete(keys);
|
||||
}
|
||||
}
|
||||
// ============================String=============================
|
||||
@@ -498,4 +495,14 @@ public final class RedisService {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 返回指定模式的keys
|
||||
* @param patten
|
||||
* @return
|
||||
*/
|
||||
public Set<String> keys(String pattern)
|
||||
{
|
||||
return redisTemplate.keys(pattern);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.gzzn.omms.msgexchangeapi.service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -13,10 +14,11 @@ import com.gzzn.omms.msgexchangeapi.redis.RedisService;
|
||||
|
||||
@Service
|
||||
public class FlightInfoServiceImpl implements IFlightInfoService {
|
||||
private static final String redisKey="FlightInfo:";
|
||||
|
||||
@Autowired
|
||||
RedisService redisService;
|
||||
|
||||
|
||||
@Autowired
|
||||
IExchangeService exchangeService;
|
||||
|
||||
@@ -28,13 +30,15 @@ public class FlightInfoServiceImpl implements IFlightInfoService {
|
||||
String clobMsg = cminmsg.getCminmsgsClobMsg();
|
||||
DnldMsg dnldMsg = exchangeService.xmlstrToObject(clobMsg, DnldMsg.class);
|
||||
|
||||
this.removeAll();
|
||||
|
||||
//
|
||||
List<FLTR> lsFltr = dnldMsg
|
||||
.getSchd()
|
||||
.getFltr();
|
||||
|
||||
for(FLTR fltr : lsFltr)
|
||||
{
|
||||
redisService.set(fltr.getFlid(), fltr);
|
||||
redisSet(fltr);
|
||||
}
|
||||
|
||||
return true;
|
||||
@@ -52,7 +56,35 @@ public class FlightInfoServiceImpl implements IFlightInfoService {
|
||||
|
||||
|
||||
}
|
||||
|
||||
return null;
|
||||
}//end function
|
||||
|
||||
/**
|
||||
* 重新包装的set
|
||||
* @param fltr
|
||||
* @return
|
||||
*/
|
||||
private boolean redisSet(FLTR fltr)
|
||||
{
|
||||
return redisService.set(redisKey + fltr.getFlid(), fltr);
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新包装的get
|
||||
* @param flid
|
||||
* @return
|
||||
*/
|
||||
private Object redisGet(String flid)
|
||||
{
|
||||
return redisService.get(redisKey + flid);
|
||||
}
|
||||
|
||||
/**
|
||||
* 情况所有动态航班信息
|
||||
*/
|
||||
private void removeAll()
|
||||
{
|
||||
Set<String> keys = redisService.keys(redisKey + "*");
|
||||
redisService.del(keys);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user