|
@@ -0,0 +1,107 @@
|
|
|
+package com.fdkankan.fusion.service.impl;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+import cn.dev33.satoken.stp.StpUtil;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.fdkankan.fusion.common.util.UploadToOssUtil;
|
|
|
+import com.fdkankan.fusion.config.FusionConfig;
|
|
|
+import com.fdkankan.fusion.entity.CaseTag;
|
|
|
+import com.fdkankan.fusion.entity.UploadFile;
|
|
|
+import com.fdkankan.fusion.httpClient.client.FdKKClient;
|
|
|
+import com.fdkankan.fusion.httpClient.request.AddMediaLibraryParam;
|
|
|
+import com.fdkankan.fusion.mapper.IUploadFileMapper;
|
|
|
+import com.fdkankan.fusion.response.EvidenceVo;
|
|
|
+import com.fdkankan.fusion.service.IUploadFileService;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author
|
|
|
+ * @since 2025-09-15
|
|
|
+ */
|
|
|
+@Service
|
|
|
+@Slf4j
|
|
|
+public class UploadFileServiceImpl extends ServiceImpl<IUploadFileMapper, UploadFile> implements IUploadFileService {
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ FdKKClient fdKKClient;
|
|
|
+ @Autowired
|
|
|
+ FusionConfig fusionConfig;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void addFile(String oldName, String url, Long length, String fileMD5) {
|
|
|
+ UploadFile uploadFile = new UploadFile();
|
|
|
+ uploadFile.setFileName(oldName);
|
|
|
+ uploadFile.setFileUrl(url);
|
|
|
+ uploadFile.setFileSize(length.toString());
|
|
|
+ uploadFile.setFileMd5(fileMD5);
|
|
|
+ this.save(uploadFile);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public UploadFile getByMd5(String fileMD5) {
|
|
|
+ LambdaQueryWrapper<UploadFile> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(UploadFile::getFileMd5,fileMD5);
|
|
|
+ List<UploadFile> list = this.list(wrapper);
|
|
|
+ if(list == null || list.isEmpty()){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ return list.get(0);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public UploadFile getByFileUrl(String fileUrl) {
|
|
|
+ LambdaQueryWrapper<UploadFile> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(UploadFile::getFileUrl,fileUrl);
|
|
|
+ List<UploadFile> list = this.list(wrapper);
|
|
|
+ if(list == null || list.isEmpty()){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ return list.get(0);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void addMediaLiary(CaseTag caseTag) {
|
|
|
+ try {
|
|
|
+ if(StringUtils.isNotBlank(caseTag.getTagImgUrl())){
|
|
|
+ JSONArray jsonArray = JSONArray.parseArray(caseTag.getTagImgUrl());
|
|
|
+ for (Object object : jsonArray) {
|
|
|
+ String imageUrl = (String) object;
|
|
|
+ UploadFile uploadFile = this.getByFileUrl(imageUrl);
|
|
|
+ if(uploadFile != null){
|
|
|
+ String url = uploadFile.getFileUrl().replace(fusionConfig.getQueryPath(),"");
|
|
|
+ AddMediaLibraryParam addMediaLibraryParam = new AddMediaLibraryParam(uploadFile.getFileName(),url, uploadFile.getFileSize(),uploadFile.getFileMd5(), caseTag.getDictId());
|
|
|
+ EvidenceVo vo = new EvidenceVo(caseTag);
|
|
|
+ addMediaLibraryParam.setContent(vo);
|
|
|
+ fdKKClient.addMediaLibrary(addMediaLibraryParam, StpUtil.getTokenValue());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(caseTag.getAudio())) {
|
|
|
+ UploadFile uploadFile = this.getByFileUrl(caseTag.getAudio());
|
|
|
+ if(uploadFile != null){
|
|
|
+ String url = uploadFile.getFileUrl().replace(fusionConfig.getQueryPath(),"");
|
|
|
+ AddMediaLibraryParam addMediaLibraryParam = new AddMediaLibraryParam(uploadFile.getFileName(), url, uploadFile.getFileSize(),uploadFile.getFileMd5(), caseTag.getDictId());
|
|
|
+ EvidenceVo vo = new EvidenceVo(caseTag);
|
|
|
+ addMediaLibraryParam.setContent(vo);
|
|
|
+ fdKKClient.addMediaLibrary(addMediaLibraryParam, StpUtil.getTokenValue());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }catch (Exception e){
|
|
|
+ log.info("addMediaLiary-error:{}",e);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|