package com.nova.sankuai.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.nova.sankuai.domain.entity.SyncChannelConfig; import com.nova.sankuai.domain.entity.SyncConfig; import com.nova.sankuai.infra.mapper.SyncChannelConfigMapper; import com.nova.sankuai.service.ISyncChannelConfigService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import java.util.List; import java.util.stream.Collectors; /** * @author weikangdi * @create 2022/2/21 */ @AllArgsConstructor @Service public class SyncChannelConfigServiceImpl extends ServiceImpl implements ISyncChannelConfigService { private final SyncChannelConfigMapper syncChannelConfigMapper; @Override public void updateConfig(SyncConfig syncConfig) { syncChannelConfigMapper.removeByConfigId(syncConfig.getId()); if (SyncConfig.CHANNEL_NONE == syncConfig.getChannelConfig()) { syncConfig.setChannelIds(null); } if (syncConfig.getChannelIds() != null && syncConfig.getChannelIds().size() > 0) { List channelIds = syncConfig.getChannelIds().stream().distinct().collect(Collectors.toList()); syncChannelConfigMapper.updateConfig(channelIds, syncConfig.getId()); } } @Override public List getChannelsByConfigId(Long configId) { List result = syncChannelConfigMapper.getChannelsByConfigId(configId); return result; } }