Browse Source

update dataset version

dev-restore_mount
fanshuai 1 year ago
parent
commit
6fdb5bcf78
4 changed files with 73 additions and 32 deletions
  1. +4
    -4
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/NewDatasetFromGitController.java
  2. +2
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/GitService.java
  3. +59
    -26
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetServiceImpl.java
  4. +8
    -2
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/GitServiceImpl.java

+ 4
- 4
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/dataset/NewDatasetFromGitController.java View File

@@ -70,16 +70,16 @@ public class NewDatasetFromGitController {

@GetMapping("/getVersionList")
@ApiOperation(value = "获取分支列表")
public AjaxResult getVersionList(@RequestParam("repo") String repo,@RequestParam("owner")String owner) throws Exception {
public AjaxResult getVersionList(@RequestParam("identifier") String repo,@RequestParam("owner")String owner) throws Exception {
return AjaxResult.success(this.datasetService.getVersionList(repo,owner));
}

@GetMapping("/getdatasetDetail")
@GetMapping("/getDatasetDetail")
@ApiOperation(value = "获取数据集详情")
public AjaxResult getDatasetVersions(@RequestParam("name") String name,
@RequestParam("repo_id") Integer repoId,
@RequestParam("owner")String owner,
@RequestParam(value = "identifier") String repo,
@RequestParam(value ="owner",required = false)String owner,
@RequestParam(value = "identifier",required = false) String repo,
@RequestParam(value = "version",required = false)String version) throws Exception {
return AjaxResult.success(this.datasetService.getNewDatasetDesc(repoId,name,repo,owner,version));
}


+ 2
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/GitService.java View File

@@ -22,4 +22,6 @@ public interface GitService {
void deleteProject(String token, String owner, String projectName) throws Exception;

void deleteBranch(String token, String owner,String projectName ,String branchName) throws Exception;

Map getUserInfo(String token) throws Exception;
}

+ 59
- 26
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/DatasetServiceImpl.java View File

@@ -464,13 +464,13 @@ public class DatasetServiceImpl implements DatasetService {
public CompletableFuture<String> newCreateDataset(NewDatasetVo datasetVo) {
return CompletableFuture.supplyAsync(() -> {
try {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String ci4sUsername = loginUser.getUsername();
String token = jedis.get(ci4sUsername+"_gitToken");
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);

String ci4sUsername = loginUser.getUsername();
Jedis jedis = new Jedis(redisHost);
String userReq = jedis.get(ci4sUsername + "_gitUserInfo");
Map<String, Object> userInfo = JsonUtils.jsonToMap(userReq);
Integer userId = (Integer) userInfo.get("user_id");
@@ -541,12 +541,13 @@ public class DatasetServiceImpl implements DatasetService {
public CompletableFuture<String> newCreateVersion(NewDatasetVo datasetVo) {
return CompletableFuture.supplyAsync(() -> {
try {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String ci4sUsername = loginUser.getUsername();
String token = jedis.get(ci4sUsername+"_gitToken");
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
Jedis jedis = new Jedis(redisHost);
String userReq = jedis.get(ci4sUsername + "_gitUserInfo");
Map<String, Object> userInfo = JsonUtils.jsonToMap(userReq);
// 创建分支
@@ -610,12 +611,11 @@ public class DatasetServiceImpl implements DatasetService {

@Override
public Page<NewDatasetVo> newPersonalQueryByPage(Dataset dataset, PageRequest pageRequest) throws Exception {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
Jedis jedis = new Jedis(redisHost);
String token = jedis.get(ci4sUsername+"_gitToken");
String userReq = jedis.get(ci4sUsername + "_gitUserInfo");
Map<String, Object> userInfo = JsonUtils.jsonToMap(userReq);
//拼接查询url
@@ -634,12 +634,11 @@ public class DatasetServiceImpl implements DatasetService {

@Override
public Page<NewDatasetVo> newPubilcQueryByPage(Dataset dataset, PageRequest pageRequest) throws Exception {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
Jedis jedis = new Jedis(redisHost);
String token = jedis.get(ci4sUsername+"_gitToken");
String userReq = jedis.get(ci4sUsername + "_gitUserInfo");
Map<String, Object> userInfo = JsonUtils.jsonToMap(userReq);
Integer userId = (Integer) userInfo.get("user_id");
@@ -655,8 +654,10 @@ public class DatasetServiceImpl implements DatasetService {
Map<String, Object> stringObjectMap = JacksonUtil.parseJSONStr2Map(req);
Integer total = (Integer) stringObjectMap.get("total_count");
List<Map<String, Object>> projects = (List<Map<String, Object>>) stringObjectMap.get("projects");
if (projects == null){
return new PageImpl<>(new ArrayList<>(), pageRequest, 0);
}
return new PageImpl<>(convert(projects), pageRequest, total);

}

@Override
@@ -694,10 +695,11 @@ public class DatasetServiceImpl implements DatasetService {

@Override
public List<Map<String, Object>> getVersionList(String repo, String owner) throws Exception {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
String token = jedis.get(ci4sUsername+"_gitToken");
List<Map<String, Object>> brancheList = gitService.getBrancheList(token, owner, repo);
return brancheList.stream()
.filter(branch -> "master".equals(branch.get("name")))
@@ -706,19 +708,21 @@ public class DatasetServiceImpl implements DatasetService {

@Override
public void deleteDatasetNew(String repo, String owner) throws Exception {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
String token = jedis.get(ci4sUsername+"_gitToken");
gitService.deleteProject(token, owner, repo);
}

@Override
public void deleteDatasetVersionNew(String repo, String owner, String version) throws Exception {
checkoutToken();
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
String token = jedis.get(ci4sUsername+"_gitToken");
gitService.deleteBranch(token, owner, repo, version);
}

@@ -774,10 +778,10 @@ public class DatasetServiceImpl implements DatasetService {
@Override
public ResponseEntity<InputStreamResource> downloadAllDatasetFilesNew(String repositoryName, String version) throws Exception {
// 命令行操作 git clone 项目地址
checkoutToken();
LoginUser loginUser = SecurityUtils.getLoginUser();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();
String token = gitService.login(gitLinkUsername, gitLinkPassword);
String ci4sUsername = loginUser.getUsername();
Jedis jedis = new Jedis(redisHost);
String userReq = jedis.get(ci4sUsername + "_gitUserInfo");
@@ -867,4 +871,33 @@ public class DatasetServiceImpl implements DatasetService {
return new ArrayList<>();
}

private String checkoutToken(){
Jedis jedis = new Jedis(redisHost);
LoginUser loginUser = SecurityUtils.getLoginUser();
String ci4sUsername = loginUser.getUsername();
String token = jedis.get(ci4sUsername+"_gitToken");
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
String gitLinkPassword = loginUser.getSysUser().getGitLinkPassword();

if(StringUtils.isEmpty(token)){
gitService.login(gitLinkUsername, gitLinkPassword);
token = jedis.get(ci4sUsername+"_gitToken");
}else {
try {
Map userInfo = gitService.getUserInfo(token);
if (userInfo == null ||(userInfo.get("status")!=null&&401==(Integer) userInfo.get("status"))){
gitService.login(gitLinkUsername, gitLinkPassword);
token = jedis.get(ci4sUsername+"_gitToken");
}
} catch (Exception e) {
throw new RuntimeException(e);
}

}
return token;

}



}

+ 8
- 2
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/GitServiceImpl.java View File

@@ -15,6 +15,7 @@ import org.springframework.stereotype.Service;
import redis.clients.jedis.Jedis;

import java.io.IOException;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -85,7 +86,6 @@ public class GitServiceImpl implements GitService {
resMap.put("new_branch_name", branchName);
resMap.put("old_branch_name", oldBranchName);
String req = HttpUtils.sendPostWithToken(createBranchUrl,JsonUtils.objectToJson(resMap),token);
System.out.println(req);
}

@Override
@@ -95,7 +95,6 @@ public class GitServiceImpl implements GitService {
resMap.put("project_id", id);
resMap.put("name", topicName);
String req = HttpUtils.sendPostWithToken("https://www.gitlink.org.cn/api/v1/project_topics.json",JsonUtils.objectToJson(resMap),token);
System.out.println(req);
}

@Override
@@ -119,4 +118,11 @@ public class GitServiceImpl implements GitService {
public void deleteBranch(String token, String owner, String projectName, String branchName) throws Exception {
HttpUtils.sendDeleteRequest("https://www.gitlink.org.cn/api/v1/"+owner+"/"+projectName+"/branches/"+branchName+".json", token);
}

@Override
public Map getUserInfo(String token) throws Exception {
String userReq = HttpUtils.sendGetWithToken("https://www.gitlink.org.cn/api/users/get_user_info.json",null, token);
Map<String, Object> runResMap = JsonUtils.jsonToMap(userReq);
return runResMap;
}
}

Loading…
Cancel
Save