|
|
|
@@ -13,6 +13,7 @@ import com.ruoyi.platform.utils.MinioUtil; |
|
|
|
import com.ruoyi.system.api.model.LoginUser; |
|
|
|
import io.minio.MinioClient; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.BeanUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Value; |
|
|
|
import org.springframework.core.io.InputStreamResource; |
|
|
|
import org.springframework.data.domain.Page; |
|
|
|
@@ -254,9 +255,42 @@ public class ModelsServiceImpl implements ModelsService { |
|
|
|
modelsVersionDao.update(modelsVersionToUse); |
|
|
|
return "模型成功上传到: " + objectName; |
|
|
|
} catch (Exception e) { |
|
|
|
throw new Exception("上传到MinIO失败: " + e.getMessage(), e); |
|
|
|
throw new Exception("上传到模型失败: " + e.getMessage(), e); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
public String uploadModelsPipeline(ModelsVersion modelsVersion) { |
|
|
|
String username = SecurityUtils.getLoginUser().getUsername(); |
|
|
|
// 检查是否存在 |
|
|
|
ModelsVersion version = modelsVersionService.queryByModelsVersion(modelsVersion); |
|
|
|
Models models = this.queryById(modelsVersion.getModelsId()); |
|
|
|
String url = ""; |
|
|
|
if (version == null) { |
|
|
|
//插表,因为这里是一次直接插表所以这里定掉date,然后用DAO插入 |
|
|
|
Date date = new Date(); |
|
|
|
String timestamp = new SimpleDateFormat("yyyyMMdd-HHmmss").format(date); |
|
|
|
url = "models/" + username + "/" + models.getName() + "-" + timestamp + "/" + modelsVersion.getVersion() + "/" + modelsVersion.getFileName(); |
|
|
|
modelsVersion.setUrl(url); |
|
|
|
modelsVersion.setCreateBy(username); |
|
|
|
modelsVersion.setUpdateBy(username); |
|
|
|
modelsVersion.setCreateTime(date); |
|
|
|
modelsVersion.setUpdateTime(date); |
|
|
|
modelsVersion.setState(1); |
|
|
|
modelsVersionDao.insert(modelsVersion); |
|
|
|
}else { |
|
|
|
//改表 |
|
|
|
BeanUtils.copyProperties(modelsVersion, version); |
|
|
|
Date createTime = version.getCreateTime(); |
|
|
|
String timestamp = new SimpleDateFormat("yyyyMMdd-HHmmss").format(createTime); |
|
|
|
url = "models/" + username + "/" + models.getName() + "-" + timestamp + "/" + modelsVersion.getVersion() + "/" + modelsVersion.getFileName(); |
|
|
|
version.setUrl(url); |
|
|
|
modelsVersionService.update(version); |
|
|
|
} |
|
|
|
return "模型成功上传到: " + url; |
|
|
|
} |
|
|
|
|
|
|
|
private String extractFileName(String urlStr) { |
|
|
|
return urlStr.substring(urlStr.lastIndexOf('/') + 1); |
|
|
|
} |
|
|
|
|