@@ -9,8 +9,7 @@ public sealed class GroupsController(IDispatcher dispatcher) : ControllerBase
99 [ HttpGet ]
1010 [ Authorize ( Roles = Permissions . ViewGroups ) ]
1111 [ Stability ( Stability . Stable ) ]
12- public async Task < IActionResult > GetGroupsAsync (
13- [ FromQuery ] GroupsFetchParameters request , CancellationToken cancellation )
12+ public async Task < IActionResult > GetGroupsAsync ( [ FromQuery ] GroupsFetchParameters request , CancellationToken cancellation )
1413 {
1514 var result = await dispatcher . DispatchAsync ( request , cancellation ) ;
1615
@@ -25,13 +24,13 @@ public async Task<IActionResult> GetGroupsAsync(
2524 [ HttpPost ]
2625 [ Authorize ( Roles = Permissions . CreateGroup ) ]
2726 [ Stability ( Stability . Stable ) ]
28- public async Task < IActionResult > CreateGroupAsync ( GroupCreationScheme request , CancellationToken cancellation )
27+ public async Task < IActionResult > CreateGroupAsync ( [ FromBody ] GroupCreationScheme request , CancellationToken cancellation )
2928 {
3029 var result = await dispatcher . DispatchAsync ( request , cancellation ) ;
3130
3231 return result switch
3332 {
34- { IsSuccess : true } =>
33+ { IsSuccess : true } when result . Data is not null =>
3534 StatusCode ( StatusCodes . Status201Created , result . Data ) ,
3635
3736 { IsFailure : true } when result . Error == GroupErrors . GroupAlreadyExists =>
@@ -42,13 +41,13 @@ public async Task<IActionResult> CreateGroupAsync(GroupCreationScheme request, C
4241 [ HttpPut ( "{id}" ) ]
4342 [ Authorize ( Roles = Permissions . EditGroup ) ]
4443 [ Stability ( Stability . Stable ) ]
45- public async Task < IActionResult > UpdateGroupAsync ( string id , GroupUpdateScheme request , CancellationToken cancellation )
44+ public async Task < IActionResult > UpdateGroupAsync ( [ FromRoute ] string id , [ FromBody ] GroupUpdateScheme request , CancellationToken cancellation )
4645 {
4746 var result = await dispatcher . DispatchAsync ( request with { GroupId = id } , cancellation ) ;
4847
4948 return result switch
5049 {
51- { IsSuccess : true } =>
50+ { IsSuccess : true } when result . Data is not null =>
5251 StatusCode ( StatusCodes . Status200OK , result . Data ) ,
5352
5453 { IsFailure : true } when result . Error == GroupErrors . GroupDoesNotExist =>
@@ -59,9 +58,9 @@ public async Task<IActionResult> UpdateGroupAsync(string id, GroupUpdateScheme r
5958 [ HttpDelete ( "{id}" ) ]
6059 [ Authorize ( Roles = Permissions . DeleteGroup ) ]
6160 [ Stability ( Stability . Stable ) ]
62- public async Task < IActionResult > DeleteGroupAsync ( string id , CancellationToken cancellation )
61+ public async Task < IActionResult > DeleteGroupAsync ( [ FromRoute ] string id , [ FromQuery ] GroupDeletionScheme request , CancellationToken cancellation )
6362 {
64- var result = await dispatcher . DispatchAsync ( new GroupDeletionScheme { GroupId = id } , cancellation ) ;
63+ var result = await dispatcher . DispatchAsync ( request with { GroupId = id } , cancellation ) ;
6564
6665 return result switch
6766 {
@@ -76,16 +75,14 @@ public async Task<IActionResult> DeleteGroupAsync(string id, CancellationToken c
7675 [ HttpGet ( "{id}/permissions" ) ]
7776 [ Authorize ( Roles = Permissions . ViewPermissions ) ]
7877 [ Stability ( Stability . Stable ) ]
79- public async Task < IActionResult > GetGroupsPermissionsAsync (
80- [ FromRoute ] string id ,
81- [ FromQuery ] ListGroupAssignedPermissionsParameters request , CancellationToken cancellation
82- )
78+ public async Task < IActionResult > GetGroupsPermissionsAsync ( [ FromRoute ] string id , [ FromQuery ] ListGroupAssignedPermissionsParameters request , CancellationToken cancellation )
8379 {
8480 var result = await dispatcher . DispatchAsync ( request with { GroupId = id } , cancellation ) ;
8581
8682 return result switch
8783 {
88- { IsSuccess : true } => StatusCode ( StatusCodes . Status200OK , result . Data ) ,
84+ { IsSuccess : true } when result . Data is not null =>
85+ StatusCode ( StatusCodes . Status200OK , result . Data ) ,
8986
9087 { IsFailure : true } when result . Error == GroupErrors . GroupDoesNotExist =>
9188 StatusCode ( StatusCodes . Status404NotFound , result . Error ) ,
@@ -95,14 +92,13 @@ public async Task<IActionResult> GetGroupsPermissionsAsync(
9592 [ HttpPost ( "{id}/permissions" ) ]
9693 [ Authorize ( Roles = Permissions . AssignPermissions ) ]
9794 [ Stability ( Stability . Stable ) ]
98- public async Task < IActionResult > AssignPermissionAsync (
99- string id , AssignGroupPermissionScheme request , CancellationToken cancellation )
95+ public async Task < IActionResult > AssignPermissionAsync ( [ FromRoute ] string id , [ FromBody ] AssignGroupPermissionScheme request , CancellationToken cancellation )
10096 {
10197 var result = await dispatcher . DispatchAsync ( request with { GroupId = id } , cancellation ) ;
10298
10399 return result switch
104100 {
105- { IsSuccess : true } =>
101+ { IsSuccess : true } when result . Data is not null =>
106102 StatusCode ( StatusCodes . Status200OK , result . Data ) ,
107103
108104 { IsFailure : true } when result . Error == GroupErrors . GroupDoesNotExist =>
@@ -119,7 +115,7 @@ public async Task<IActionResult> AssignPermissionAsync(
119115 [ HttpDelete ( "{id}/permissions/{permissionId}" ) ]
120116 [ Authorize ( Roles = Permissions . RevokePermissions ) ]
121117 [ Stability ( Stability . Stable ) ]
122- public async Task < IActionResult > RevokePermissionAsync ( string id , string permissionId , CancellationToken cancellation )
118+ public async Task < IActionResult > RevokePermissionAsync ( [ FromRoute ] string id , [ FromRoute ] string permissionId , CancellationToken cancellation )
123119 {
124120 var request = new RevokeGroupPermissionScheme { GroupId = id , PermissionId = permissionId } ;
125121 var result = await dispatcher . DispatchAsync ( request , cancellation ) ;
0 commit comments