|
|
@@ -0,0 +1,70 @@
|
|
|
+package cn.reghao.dfs.store.rpc.media;
|
|
|
+
|
|
|
+import cn.reghao.dfs.store.db.mapper.AudioFileMapper;
|
|
|
+import cn.reghao.dfs.store.db.mapper.ImageFileMapper;
|
|
|
+import cn.reghao.dfs.store.db.mapper.VideoFileMapper;
|
|
|
+import cn.reghao.dfs.store.db.repository.ObjectRepository;
|
|
|
+import cn.reghao.dfs.store.model.po.AudioFile;
|
|
|
+import cn.reghao.dfs.store.model.po.ImageFile;
|
|
|
+import cn.reghao.dfs.store.model.po.VideoFile;
|
|
|
+import cn.reghao.oss.api.iface.media.MediaScopeService;
|
|
|
+import org.apache.dubbo.config.annotation.DubboService;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+import java.util.Set;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author reghao
|
|
|
+ * @date 2023-10-12 15:06:21
|
|
|
+ */
|
|
|
+@DubboService
|
|
|
+@Service
|
|
|
+public class MediaScopeServiceImpl implements MediaScopeService {
|
|
|
+ private final ImageFileMapper imageFileMapper;
|
|
|
+ private final AudioFileMapper audioFileMapper;
|
|
|
+ private final VideoFileMapper videoFileMapper;
|
|
|
+ private final ObjectRepository objectRepository;
|
|
|
+
|
|
|
+ public MediaScopeServiceImpl(ImageFileMapper imageFileMapper, AudioFileMapper audioFileMapper,
|
|
|
+ VideoFileMapper videoFileMapper, ObjectRepository objectRepository) {
|
|
|
+ this.imageFileMapper = imageFileMapper;
|
|
|
+ this.audioFileMapper = audioFileMapper;
|
|
|
+ this.videoFileMapper = videoFileMapper;
|
|
|
+ this.objectRepository = objectRepository;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void setVideoScope(String videoFileId, int scope) {
|
|
|
+ List<String> objectIds = videoFileMapper.findByVideoFileId(videoFileId).stream()
|
|
|
+ .map(VideoFile::getObjectId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ if (!objectIds.isEmpty()) {
|
|
|
+ List<String> objectNames = objectRepository.getObjectNames(objectIds);
|
|
|
+ objectRepository.updateObjectScope1(scope, objectNames);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void setAudioScope(String audioFileId, int scope) {
|
|
|
+ List<String> objectIds = audioFileMapper.findByAudioFileId(audioFileId).stream()
|
|
|
+ .map(AudioFile::getObjectId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ if (!objectIds.isEmpty()) {
|
|
|
+ List<String> objectNames = objectRepository.getObjectNames(objectIds);
|
|
|
+ objectRepository.updateObjectScope1(scope, objectNames);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void setImagesScope(Set<String> imageFileIds, int scope) {
|
|
|
+ List<String> objectIds = imageFileMapper.findByImageFileIds(imageFileIds).stream()
|
|
|
+ .map(ImageFile::getObjectId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ if (!objectIds.isEmpty()) {
|
|
|
+ List<String> objectNames = objectRepository.getObjectNames(objectIds);
|
|
|
+ objectRepository.updateObjectScope1(scope, objectNames);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|