Skip to content

Commit e9760ea

Browse files
committed
增加工作空间接口实现
增加用户角色管理接口实现
1 parent b76df0b commit e9760ea

File tree

29 files changed

+799
-66
lines changed

29 files changed

+799
-66
lines changed

.idea/.idea.fast-wiki/.idea/workspace.xml

Lines changed: 38 additions & 46 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/FastWiki.Application.Contract/FastWiki.Application.Contract.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
<ItemGroup>
1010
<ProjectReference Include="..\FastWiki.Core\FastWiki.Core.csproj" />
11+
<ProjectReference Include="..\FastWiki.Domain.Shared\FastWiki.Domain.Shared.csproj" />
1112
</ItemGroup>
1213

1314
</Project>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
namespace FastWiki.Application.Contract.Powers.Dto;
2+
3+
public class RoleDto
4+
{
5+
public string Id { get; set; }
6+
/// <summary>
7+
/// 角色名称
8+
/// </summary>
9+
public string Name { get; set; } = null!;
10+
11+
/// <summary>
12+
/// 描述
13+
/// </summary>
14+
public string Description { get; set; } = null!;
15+
16+
/// <summary>
17+
/// 编码
18+
/// </summary>
19+
public string Code { get; set; }
20+
21+
}
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
using FastWiki.Application.Contract.Powers.Dto;
2+
using FastWiki.Application.Contract.Powers.Input;
3+
4+
namespace FastWiki.Application.Contract.Powers;
5+
6+
public interface IPowersService
7+
{
8+
/// <summary>
9+
/// 创建角色
10+
/// </summary>
11+
/// <param name="input"></param>
12+
/// <returns></returns>
13+
Task CreateRoleAsync(RoleInput input);
14+
15+
/// <summary>
16+
/// 更新角色信息
17+
/// </summary>
18+
/// <param name="id"></param>
19+
/// <param name="input"></param>
20+
/// <returns></returns>
21+
Task UpdateRoleAsync(string id, RoleInput input);
22+
23+
/// <summary>
24+
/// 删除角色
25+
/// </summary>
26+
/// <param name="id"></param>
27+
/// <returns></returns>
28+
Task DeleteRoleAsync(string id);
29+
30+
/// <summary>
31+
/// 获取角色列表
32+
/// </summary>
33+
/// <returns></returns>
34+
Task<List<RoleDto>> GetRolesAsync();
35+
36+
/// <summary>
37+
/// 绑定用户角色
38+
/// 先删除用户所有角色,再绑定新角色
39+
/// </summary>
40+
/// <param name="userId"></param>
41+
/// <param name="roleIds"></param>
42+
/// <returns></returns>
43+
Task BindUserRoleAsync(string userId, List<string> roleIds);
44+
45+
/// <summary>
46+
/// 获取用户绑定角色
47+
/// </summary>
48+
/// <param name="userId"></param>
49+
/// <returns></returns>
50+
Task<List<RoleDto>> GetUserRolesAsync(string userId);
51+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
namespace FastWiki.Application.Contract.Powers.Input;
2+
3+
public class RoleInput
4+
{
5+
/// <summary>
6+
/// 角色名称
7+
/// </summary>
8+
public string Name { get; set; } = null!;
9+
10+
/// <summary>
11+
/// 描述
12+
/// </summary>
13+
public string Description { get; set; } = null!;
14+
15+
/// <summary>
16+
/// 编码
17+
/// </summary>
18+
public string Code { get; set; }
19+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
using FastWiki.Domain.Shared.WorkSpaces;
2+
3+
namespace FastWiki.Application.Contract.WorkSpaces.Dto;
4+
5+
public class WorkSpaceDto
6+
{
7+
public long Id { get; set; }
8+
9+
/// <summary>
10+
/// 工作空间名称
11+
/// </summary>
12+
/// <returns></returns>
13+
public string Name { get; set; } = null!;
14+
15+
/// <summary>
16+
/// 工作空间描述
17+
/// </summary>
18+
/// <returns></returns>
19+
public string? Description { get; set; }
20+
21+
/// <summary>
22+
/// 工作空间状态
23+
/// </summary>
24+
public WorkSpaceState State { get; set; }
25+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
using FastWiki.Application.Contract.WorkSpaces.Dto;
2+
using FastWiki.Application.Contract.WorkSpaces.Input;
3+
4+
namespace FastWiki.Application.Contract.WorkSpaces;
5+
6+
public interface IWorkSpacesService
7+
{
8+
/// <summary>
9+
/// 创建新的工作空间
10+
/// </summary>
11+
/// <param name="workSpacesDto"></param>
12+
/// <returns></returns>
13+
Task CreateAsync(WorkSpacesInput workSpacesDto);
14+
15+
/// <summary>
16+
/// 更新工作空间
17+
/// </summary>
18+
/// <param name="id"></param>
19+
/// <param name="workSpacesDto"></param>
20+
/// <returns></returns>
21+
Task UpdateAsync(long id, WorkSpacesInput workSpacesDto);
22+
23+
/// <summary>
24+
/// 删除工作空间
25+
/// </summary>
26+
/// <param name="id"></param>
27+
/// <returns></returns>
28+
Task DeleteAsync(long id);
29+
30+
/// <summary>
31+
/// 获取工作空间
32+
/// </summary>
33+
/// <returns></returns>
34+
Task<List<WorkSpaceDto>> GetAsync();
35+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
namespace FastWiki.Application.Contract.WorkSpaces.Input;
2+
3+
public class WorkSpacesInput
4+
{
5+
/// <summary>
6+
/// 工作空间名称
7+
/// </summary>
8+
/// <returns></returns>
9+
public string Name { get; set; } = null!;
10+
11+
/// <summary>
12+
/// 工作空间描述
13+
/// </summary>
14+
/// <returns></returns>
15+
public string? Description { get; set; }
16+
17+
}

0 commit comments

Comments
 (0)