128 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using Core.Thalos.BuildingBlocks;
 | |
| using Core.Thalos.External.Clients.Requests;
 | |
| using Microsoft.AspNetCore.Mvc;
 | |
| using Refit;
 | |
| 
 | |
| namespace Core.Thalos.External.Clients
 | |
| {
 | |
|     public interface IThalosServiceClient
 | |
|     {
 | |
|         [Get("/v1/User")]
 | |
|         Task<IEnumerable<UserAdapter>> GetAllUsersAsync(CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/User/" + Routes.Id)]
 | |
|         Task<UserAdapter> GetUserByIdAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/User/" + Routes.Email)]
 | |
|         Task<UserAdapter> GetUserByEmailAsync([FromRoute] string email, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/User/{email}/ValidateExistence")]
 | |
|         Task<UserExistenceAdapter> ValidateUserExistence([FromRoute] string email, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/User/" + Routes.Register)]
 | |
|         Task<UserAdapter> CreateUserAsync([FromBody] UserRequest newUser, [FromRoute] bool sendInvitation, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Put("/v1/User/" + Routes.Id)]
 | |
|         Task<UserAdapter> UpdateUserAsync([FromBody] UserAdapter entity, [FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Delete("/v1/User/" + Routes.Id)]
 | |
|         Task<UserAdapter> DeleteUserAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/User/" + Routes.LogIn)]
 | |
|         Task<UserAdapter> LoginUserAsync([FromRoute] string email, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/User/" + Routes.LogOut)]
 | |
|         Task<UserAdapter> LogoutUserAsync([FromRoute] string email, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/User/" + Routes.ChangeStatus)]
 | |
|         Task<UserAdapter> ChangeUserStatusAsync([FromRoute] string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/User/{email}/GetTokenAdapter")]
 | |
|         Task<TokenAdapter> GetTokenAdapter([FromRoute] string email, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Role")]
 | |
|         Task<IEnumerable<RoleAdapter>> GetAllRolesAsync(CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Role/" + Routes.Id)]
 | |
|         Task<RoleAdapter> GetRoleByIdAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Role")]
 | |
|         Task<RoleAdapter> CreateRoleAsync([FromBody] RoleRequest newRole, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Put("/v1/Role/" + Routes.Id)]
 | |
|         Task<RoleAdapter> UpdateRoleAsync([FromBody] RoleAdapter entity, [FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Delete("/v1/Role/" + Routes.Id)]
 | |
|         Task<RoleAdapter> DeleteRoleAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/Role/" + Routes.ChangeStatus)]
 | |
|         Task<RoleAdapter> ChangeRoleStatusAsync([FromRoute] string _id, [FromRoute] Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Role/" + Routes.AddApplication)]
 | |
|         Task<RoleAdapter> AddApplicationToRoleAsync([FromRoute] string RoleId, [FromRoute] ApplicationsEnum application, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Delete("/v1/Role/" + Routes.RemoveApplication)]
 | |
|         Task<RoleAdapter> RemoveApplicationToRoleAsync([FromRoute] string RoleId, [FromRoute] ApplicationsEnum application, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Permission")]
 | |
|         Task<IEnumerable<PermissionAdapter>> GetAllPermissionsAsync(CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Permission/" + Routes.GetPermissionList)]
 | |
|         Task<IEnumerable<PermissionAdapter>> GetAllPermissionsByListAsync([FromBody] string[] request, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Permission/" + Routes.Id)]
 | |
|         Task<PermissionAdapter> GetPermissionByIdAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Permission")]
 | |
|         Task<PermissionAdapter> CreatePermissionAsync([FromBody] PermissionRequest newPermission, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Put("/v1/Permission/" + Routes.Id)]
 | |
|         Task<PermissionAdapter> UpdatePermissionAsync([FromBody] PermissionAdapter entity, [FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Delete("/v1/Permission/" + Routes.Id)]
 | |
|         Task<PermissionAdapter> DeletePermissionAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/Permission/" + Routes.ChangeStatus)]
 | |
|         Task<PermissionAdapter> ChangeStatusPermissionAsync([FromRoute] string _id, [FromRoute] Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Module")]
 | |
|         Task<IEnumerable<ModuleAdapter>> GetAllModulesAsync(CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Module/" + Routes.GetModuleList)]
 | |
|         Task<IEnumerable<ModuleAdapter>> GetAllModulesByListAsync([FromBody] string[] request, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Module/" + Routes.Id)]
 | |
|         Task<ModuleAdapter> GetModuleByIdAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Module")]
 | |
|         Task<ModuleAdapter> CreateModuleAsync([FromBody] ModuleRequest newModule, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Put("/v1/Module/" + Routes.Id)]
 | |
|         Task<ModuleAdapter> UpdateModuleAsync([FromBody] ModuleAdapter entity, [FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Delete("/v1/Module/" + Routes.Id)]
 | |
|         Task<ModuleAdapter> DeleteModuleAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/Module/" + Routes.ChangeStatus)]
 | |
|         Task<ModuleAdapter> ChangeStatusModuleAsync([FromRoute] string _id, [FromRoute] Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Tenant")]
 | |
|         Task<IEnumerable<TenantAdapter>> GetAllTenantsAsync(CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Get("/v1/Tenant/" + Routes.Id)]
 | |
|         Task<TenantAdapter> GetTenantByIdAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Post("/v1/Tenant")]
 | |
|         Task<TenantAdapter> CreateTenantAsync([FromBody] TenantRequest newTenant, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Put("/v1/Tenant/" + Routes.Id)]
 | |
|         Task<TenantAdapter> UpdateTenantAsync([FromBody] TenantAdapter entity, [FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Patch("/v1/Tenant/" + Routes.ChangeStatus)]
 | |
|         Task<TenantAdapter> ChangeStatusTenantAsync([FromRoute] string _id, [FromRoute] Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken = default);
 | |
| 
 | |
|         [Delete("/v1/Tenant/" + Routes.Id)]
 | |
|         Task<TenantAdapter> DeleteTenantAsync([FromRoute] string _id, CancellationToken cancellationToken = default);
 | |
|     }
 | |
| }
 | 
