...
|
...
|
@@ -4,20 +4,81 @@ import com.github.pagehelper.PageHelper; |
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import com.sunyo.wlpt.message.bus.service.mapper.MessageRouterMapper;
|
|
|
import com.sunyo.wlpt.message.bus.service.model.MessageRouter;
|
|
|
import com.sunyo.wlpt.message.bus.service.model.MessageRouterReciver;
|
|
|
import com.sunyo.wlpt.message.bus.service.model.MessageRouterReciverFilter;
|
|
|
import com.sunyo.wlpt.message.bus.service.service.MessageRouterReciverFilterService;
|
|
|
import com.sunyo.wlpt.message.bus.service.service.MessageRouterReciverService;
|
|
|
import com.sunyo.wlpt.message.bus.service.service.MessageRouterService;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.util.List;
|
|
|
import java.util.UUID;
|
|
|
|
|
|
@Service
|
|
|
public class MessageRouterImpl implements MessageRouterService {
|
|
|
@Autowired
|
|
|
|
|
|
@Resource
|
|
|
MessageRouterMapper messageRouterMapper;
|
|
|
|
|
|
@Autowired
|
|
|
MessageRouterReciverService messageRouterReciverService;
|
|
|
|
|
|
@Autowired
|
|
|
MessageRouterReciverFilterService messageRouterReciverFilterService;
|
|
|
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public int addRouter(MessageRouter messageRouter) throws Exception {
|
|
|
return messageRouterMapper.insertSelective(messageRouter);
|
|
|
|
|
|
String routerid=UUID.randomUUID().toString();
|
|
|
String reciverid=UUID.randomUUID().toString();
|
|
|
|
|
|
/**
|
|
|
* 先添加路由,在根据路由添加路由接收者
|
|
|
*/
|
|
|
messageRouter.setId(routerid);
|
|
|
messageRouterMapper.insertSelective(messageRouter);
|
|
|
|
|
|
/**
|
|
|
* 没有指定接收者只添加路由,单个增加接收者
|
|
|
*/
|
|
|
if(messageRouter.getReciver()!=null && messageRouter.getReciver().getRcvrTopic()!=null && messageRouter.getReciver().getRcvrTopic()!=""){
|
|
|
MessageRouterReciver routerReciver=new MessageRouterReciver();
|
|
|
routerReciver.setId(reciverid);
|
|
|
routerReciver.setMessageRouterId(routerid);
|
|
|
routerReciver.setRcvrTopic(messageRouter.getReciver().getRcvrTopic());
|
|
|
messageRouterReciverService.addMessageRouterReciver(routerReciver);
|
|
|
if(messageRouter.getReciver().getReciverFilter()!=null && messageRouter.getReciver().getReciverFilter().getFilter()!=null&& messageRouter.getReciver().getReciverFilter().getFilter()!=""){
|
|
|
MessageRouterReciverFilter routerReciverFilter=new MessageRouterReciverFilter();
|
|
|
routerReciverFilter.setId(UUID.randomUUID().toString());
|
|
|
routerReciverFilter.setMessageRouterReciverId(reciverid);
|
|
|
routerReciverFilter.setFilter(messageRouter.getReciver().getReciverFilter().getFilter());
|
|
|
messageRouterReciverFilterService.addMessageRouterReciverFilter(routerReciverFilter);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 一个路由增加多个接收者
|
|
|
*/
|
|
|
if(messageRouter.getRcvrList()!=null && !messageRouter.getRcvrList().isEmpty()){
|
|
|
for (
|
|
|
MessageRouterReciver routerReciver:messageRouter.getRcvrList()
|
|
|
) {
|
|
|
if (StringUtils.isNotBlank(routerReciver.getRcvrTopic())){
|
|
|
String batchAddRevrId =UUID.randomUUID().toString();
|
|
|
routerReciver.setId(batchAddRevrId);
|
|
|
routerReciver.setMessageRouterId(routerid);
|
|
|
messageRouterReciverService.addMessageRouterReciver(routerReciver);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
|
@Override
|
...
|
...
|
|