using CPRNIMS.Infrastructure.Models.Account; using CPRNIMS.Infrastructure.ViewModel.Account; using CPRNIMS.Infrastructure.ViewModel.Common; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CPRNIMS.Domain.UIContracts.Account { public interface IAccount { Task CreateUserAsync(RegisterVM registerModel, User user); Task CreateUpdateRole(UserRoleVM UserRoleVM, User user); Task UpdateUserProfile(UpdateUserVM viewModel, User user); Task DisableUserAsync(RegisterVM registerModel); Task> GetAllUserAsync(User user); Task> GetAllRoleAsync(User user); Task> GetLandingPageByUserId(User user); Task> GetRoles(User user); Task> GetUserProfileById(User user); Task GetUserByEmail(string email, EmailMessageDetailsVM forgotPassword); Task ValidateOTP(EmailMessageDetailsVM forgotPassword); Task ChangePassword(EmailMessageDetailsVM viewModel); Task> GetUserRights(User user, UserRightsVM viewModels); Task> GetDepartment(User user, UserRightsVM viewModels); Task PutPostUserAccess(User user, UserRightsVM viewModel); } }