Commit 10695ffd authored by 高建强's avatar 高建强

item:区域删除数据同步

parent b531a441
......@@ -23,7 +23,6 @@ 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;
......@@ -267,11 +266,12 @@ 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));
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE.getValue(), String.valueOf(riskSource.getId())), JSON.toJSONString(riskSource));
return riskSource;
}
@Override
@Transactional
public void deleteRiskSource(String appKey, String product, String token, String success, Long[] riskSourceId) throws Exception {
Set<Long> parentIds = new LinkedHashSet<>();
for (Long rId : riskSourceId) {
......@@ -287,6 +287,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
}
//1、删除风险点
iRiskSourceDao.deleteById(rId);
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_DELETE_BY_ID.getValue(), String.valueOf(rId)), String.valueOf(rId));
//2.删除关联建筑关系,防止对站服务有问题,捕获异常,不影响业务正常秩序
try {
rs.ifPresent(r->{
......@@ -311,6 +312,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
@Override
public void deleteById(Long id) {
iRiskSourceDao.deleteById(id);
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_DELETE_BY_ID.getValue(), String.valueOf(id)), String.valueOf(id));
}
@Override
......@@ -331,9 +333,7 @@ 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));
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE.getValue(), String.valueOf(riskSource.getId())), JSON.toJSONString(riskSource));
//2.同步下级(只有一级)
if(!CollectionUtils.isEmpty(synBo.getChildren())){
RiskSource finalRiskSource = riskSource;
......@@ -345,7 +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));
dataSyncUtil.astDataSync(com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE_ALL.getValue(), JSON.toJSONString(children));
}
return riskSource;
}
......@@ -367,7 +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));
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE.getValue(), String.valueOf(riskSource.getId())), JSON.toJSONString(riskSource));
}
return exist.isPresent();
}
......@@ -1830,6 +1830,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
riskSource.setRpni(null);
riskSource.setRiskLevelId(null);
iRiskSourceDao.save(riskSource);
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE.getValue(), String.valueOf(riskSource.getId())), JSON.toJSONString(riskSource));
return;
}
BigDecimal rpn = rpnValueBo.getRpn();
......@@ -1843,7 +1844,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
}
}
iRiskSourceDao.save(riskSource);
dataSyncUtil.astGeographicalRegionDataSync(String.join("_", TopicName.AST_SAVE.getValue(), riskSource.getCode()), JSON.toJSONString(riskSource));
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE.getValue(), String.valueOf(riskSource.getId())), JSON.toJSONString(riskSource));
this.updateParentRpn(riskSource.getParentId());
}
}
......
......@@ -252,7 +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));
dataSyncUtil.astDataSync(String.join("_", com.yeejoin.dataprocess.common.enums.AstDataSyncTopic.AST_REGION_SAVE.getValue(), String.valueOf(riskSource.getId())), JSON.toJSONString(riskSource));
}
}
......
......@@ -23,11 +23,7 @@ public class DataSyncUtil {
@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) {
public void astDataSync(String topic, String message) {
redisTemplate.opsForValue().set(topic, message);
webMqttComponent.publish(topic.substring(0, topic.lastIndexOf("_")), message);
}
......
......@@ -9,15 +9,15 @@ package com.yeejoin.dataprocess.common.enums;
* @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");
public enum AstDataSyncTopic {
AST_REGION_SAVE(10, "ast_save"),
AST_REGION_SAVE_ALL(11, "ast_save_all"),
AST_REGION_DELETE_BY_ID(12, "ast_delete_by_id");
private final Integer key;
private final String value;
private TopicName(Integer key, String value) {
private AstDataSyncTopic(Integer key, String value) {
this.key = key;
this.value = value;
}
......
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