package com.ruoyi.platform.service;

import com.ruoyi.platform.vo.GitProjectVo;
import com.ruoyi.system.api.domain.SysUser;

import java.util.List;
import java.util.Map;

public interface GitService {
    //登录方法，返回token
    String login(String username, String password);

    String checkoutToken();

    //输入token，项目名，tag，创建新项目,返回项目地址
    Map createProject(String token, GitProjectVo gitProjectVo) throws Exception;

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

    void createTopic(String token, Integer id, String topicName) throws Exception;

    List<Map<String, Object>> getBrancheList(String token, String owner, String projectName) throws Exception;

    void deleteProject(String token, String owner, String projectName) throws Exception;

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

    Map getUserInfo(String token) throws Exception;

    Map getProjectDetail(String owner, String identifier, String token) throws Exception;

    void createUser(SysUser sysUser) throws Exception;

    void resetPwd(SysUser sysUser) throws Exception;

    void resetEmail(SysUser sysUser) throws Exception;

    void resetPhoneNum(SysUser sysUser) throws Exception;

    void deleteUser(SysUser sysUser) throws Exception;
}
