|
@@ -1,7 +1,14 @@
|
|
|
package com.ruoyi.web.controller.system;
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
import java.util.List;
|
|
|
|
|
|
+import com.ruoyi.common.utils.file.FileUploadUtils;
|
|
|
+import com.ruoyi.system.domain.SysRepoHistory;
|
|
|
+import com.ruoyi.common.utils.OfficeCompareUtils;
|
|
|
+import com.ruoyi.system.service.ISysRepoHistoryService;
|
|
|
+import org.apache.tomcat.util.http.fileupload.FileUpload;
|
|
|
+import org.apache.tomcat.util.http.fileupload.FileUtils;
|
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
@@ -16,7 +23,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
/**
|
|
|
* 仓库管理Controller
|
|
|
*
|
|
|
- * @author ruoyi
|
|
|
+ * @author lixu
|
|
|
* @date 2025-05-15
|
|
|
*/
|
|
|
@RestController
|
|
@@ -26,6 +33,8 @@ public class SysRepoController extends BaseController
|
|
|
@Autowired
|
|
|
private ISysRepoService sysRepoService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ISysRepoHistoryService sysRepoHistoryService;
|
|
|
/**
|
|
|
* 查询仓库列表
|
|
|
*/
|
|
@@ -59,25 +68,50 @@ public class SysRepoController extends BaseController
|
|
|
return toAjax(sysRepoService.insertSysRepo(sysRepo));
|
|
|
}
|
|
|
|
|
|
- @PreAuthorize("@ss.hasPermi('system:repo:addByfile')")
|
|
|
- @Log(title = "新增仓库文件", businessType = BusinessType.INSERT)
|
|
|
- public AjaxResult addByfile(@RequestParam("parent_id") Long parent_id,@RequestParam("file") MultipartFile file)
|
|
|
+ /**
|
|
|
+ * 更新文件版本
|
|
|
+ */
|
|
|
+ @PreAuthorize("@ss.hasPermi('system:repo:updateFile')")
|
|
|
+ @Log(title = "更新文件版本", businessType = BusinessType.UPDATE)
|
|
|
+ @PostMapping(value = "/upload_file")
|
|
|
+ public AjaxResult upload_file(@RequestBody SysRepo sysRepo_new)
|
|
|
{
|
|
|
- if(!file.isEmpty()){
|
|
|
- SysRepo sysRepo = new SysRepo();
|
|
|
- sysRepo.setRepoName(file.getOriginalFilename());
|
|
|
- sysRepo.setParentId(parent_id);
|
|
|
- sysRepo.setRepoType("file");
|
|
|
- sysRepo.setRepoLevel(sysRepoService.selectSysRepoByRepoId(parent_id).getRepoLevel() + 1);
|
|
|
- sysRepo.setRepoStatus("public");
|
|
|
- sysRepo.setCreateBy(getLoginUser().getUserId());
|
|
|
- return toAjax(sysRepoService.insertSysRepo(sysRepo));
|
|
|
+ if(sysRepo_new.getRepoId()==null || sysRepo_new.getUrl()==null ){
|
|
|
+ return AjaxResult.error("参数错误");
|
|
|
}else{
|
|
|
- return error("上传文件异常,请联系管理员");
|
|
|
+ Long repoId = sysRepo_new.getRepoId();
|
|
|
+ SysRepo sysRepo = sysRepoService.selectSysRepoByRepoId(repoId);
|
|
|
+ SysRepoHistory sysRepoHistory = new SysRepoHistory();
|
|
|
+ sysRepoHistory.setRepoId(sysRepo.getRepoId());
|
|
|
+ sysRepoHistory.setUrl(sysRepo.getUrl());
|
|
|
+ sysRepoHistory.setUploadBy(sysRepo.getUpdateBy());
|
|
|
+ sysRepoHistory.setFileVersion("v0.0.1");
|
|
|
+ if(sysRepoHistoryService.insertSysRepoHistory(sysRepoHistory)<1){
|
|
|
+ return AjaxResult.error("文件插入失败");
|
|
|
+ }
|
|
|
+ sysRepo.setUpdateBy(getUsername());
|
|
|
+ sysRepo.setUrl(sysRepo_new.getUrl());
|
|
|
+ if(sysRepoService.updateSysRepo(sysRepo)<1){
|
|
|
+ return AjaxResult.error("文件插入失败");
|
|
|
+ }
|
|
|
+// OfficeCompareUtils.compare(sysRepoHistory.getUrl(),sysRepo.getUrl(),"spire");
|
|
|
+ return AjaxResult.success("操作成功");
|
|
|
}
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取文件版本
|
|
|
+ */
|
|
|
+ @PreAuthorize("@ss.hasPermi('system:repo:getversion')")
|
|
|
+ @GetMapping (value = "version/{repoId}")
|
|
|
+ public AjaxResult getVersion(@PathVariable("repoId") Long repoId)
|
|
|
+ {
|
|
|
+ SysRepoHistory sysRepoHistory = new SysRepoHistory();
|
|
|
+ sysRepoHistory.setRepoId(repoId);
|
|
|
|
|
|
+ return success(sysRepoHistoryService.selectSysRepoHistoryList(sysRepoHistory));
|
|
|
}
|
|
|
|
|
|
+
|
|
|
/**
|
|
|
* 修改仓库
|
|
|
*/
|