Commit b531a441 authored by 高建强's avatar 高建强

item:区域新增数据同步

parent 130d116c
......@@ -22,6 +22,8 @@ import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
import javax.servlet.http.HttpServletRequest;
import com.yeejoin.amos.fas.business.util.DataSyncUtil;
import com.yeejoin.dataprocess.common.enums.TopicName;
import org.apache.commons.lang3.ArrayUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -226,6 +228,9 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
@Autowired
private PlanDetailMapper planDetailMapper;
@Autowired
private DataSyncUtil dataSyncUtil;
public static String cacheKeyForCanBeRunning() {
return Redis.genKey(CacheType.ERASABLE.name(), "CONTINGENCYRUNING");
}
......@@ -233,6 +238,9 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
@Autowired
private IDataRefreshService iDataRefreshService;
@Autowired
private WebMqttComponent webMqttComponent;
@Override
public RiskSource editRiskSource(HashMap<String, Object> map) throws Exception {
RiskSource riskSource = (RiskSource) map.get("param");
......@@ -259,6 +267,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
riskSource.setStatus(oldRiskSource.getStatus());
}
iRiskSourceDao.saveAndFlush(riskSource);
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", TopicName.AST_SAVE.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
return riskSource;
}
......@@ -322,6 +331,9 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
fillBasicParams(userId, orgCode, synBo.getId(), riskSource);
riskSource = iRiskSourceDao.save(riskSource);
}
// redisTemplate.opsForValue().set(String.join("-", "ast_save", riskSource.getCode()), riskSource);
// webMqttComponent.publish("/ast/save", JSON.toJSONString(riskSource));
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", TopicName.AST_SAVE.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
//2.同步下级(只有一级)
if(!CollectionUtils.isEmpty(synBo.getChildren())){
RiskSource finalRiskSource = riskSource;
......@@ -333,6 +345,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
return t;
}).collect(Collectors.toList());
iRiskSourceDao.saveAll(children);
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", TopicName.AST_SAVE_ALL.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
}
return riskSource;
}
......@@ -354,6 +367,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
RiskSource riskSource = exist.get();
riskSource.setSourceId(null);
iRiskSourceDao.save(riskSource);
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", TopicName.AST_SAVE.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
}
return exist.isPresent();
}
......@@ -1293,8 +1307,6 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
// }
// }
@Autowired
private WebMqttComponent webMqttComponent;
@Value("${autoSys.push.type}")
private String pushType;
@Value("${spring.application.name}")
......@@ -1831,6 +1843,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
}
}
iRiskSourceDao.save(riskSource);
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", TopicName.AST_SAVE.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
this.updateParentRpn(riskSource.getParentId());
}
}
......
......@@ -16,6 +16,7 @@ import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
import com.yeejoin.amos.fas.business.util.DataSyncUtil;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -118,6 +119,9 @@ public class View3dServiceImpl implements IView3dService {
@Autowired
private RemoteSecurityService remoteSecurityService;
@Autowired
private DataSyncUtil dataSyncUtil;
@Override
@Transactional(rollbackFor = Exception.class)
public CommonResponse setPoint3dPosition(List<BindPointBo> pointBoList) {
......@@ -248,6 +252,7 @@ public class View3dServiceImpl implements IView3dService {
if(ue4Rotation != null) riskSource.setUe4Rotation(pointBo.getUe4Rotation());
if(position3d != null) riskSource.setPosition3d(position3d);
iRiskSourceDao.save(riskSource);
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.TopicName.AST_SAVE.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
}
}
......
package com.yeejoin.amos.fas.business.util;
import com.yeejoin.amos.fas.business.action.mq.WebMqttComponent;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
/**
* @ProjectName: YeeAmosFireAutoSysRoot
* @Package: com.yeejoin.amos.fas.business.util
* @ClassName: DataSyncUtil
* @Author: Jianqiang Gao
* @Description: 数据同步工具类
* @Date: 2021/3/24 15:31
* @Version: 1.0
*/
@Component
public class DataSyncUtil {
@Autowired
private RedisTemplate redisTemplate;
@Autowired
private WebMqttComponent webMqttComponent;
// RedisTemplate redisTemplate = SpringContextHolder.getApplicationContext().getBean(RedisTemplate.class);
//
// WebMqttComponent webMqttComponent = SpringContextHolder.getApplicationContext().getBean(WebMqttComponent.class);
public void astGeographicalRegionDataSync(String topic, String message) {
redisTemplate.opsForValue().set(topic, message);
webMqttComponent.publish(topic.substring(0, topic.lastIndexOf("_")), message);
}
}
\ No newline at end of file
package com.yeejoin.dataprocess.common.enums;
/**
* @ProjectName: YeeFireDataProcessRoot
* @Package: com.yeejoin.dataprocess.common.enums
* @ClassName: TopicName
* @Author: Jianqiang Gao
* @Description: TopicName
* @Date: 2021/3/23 15:55
* @Version: 1.0
*/
public enum TopicName {
ROLL_CALL_DEFAULT(1, "listenDefault"),
AST_SAVE(2, "ast_save"),
AST_SAVE_ALL(3, "ast_save_all");
private final Integer key;
private final String value;
private TopicName(Integer key, String value) {
this.key = key;
this.value = value;
}
public Integer getKey() {
return key;
}
public String getValue() {
return value;
}
@Override
public String toString() {
return this.value;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment