using IRaCIS.Application.Contracts; using IRaCIS.Core.Domain.Share; namespace IRaCIS.Application.Services { public interface IUserService { Task<IResponseOutput<UserAddedReturnDTO>> AddUser(UserCommand userAddModel); Task<IResponseOutput> DeleteUser(Guid userId); Task<UserDetailDTO> GetUser(Guid id); Task<PageOutput<UserListDTO>> GetUserList(UserListQueryDTO param); Task<IResponseOutput<LoginReturnDTO>> Login(string userName, string password); Task<IResponseOutput> ModifyPassword(EditPasswordCommand editPwModel); Task<IResponseOutput> ResetPassword(Guid userId); Task<IResponseOutput> UpdateUser(UserCommand model); Task<IResponseOutput> UpdateUserState(Guid userId, UserStateEnum state); //Task<IResponseOutput> SendVerificationCode(string emailOrPhone, VerifyType verificationType, bool isReviewer = false); //Task<IResponseOutput> SetNewPassword(ResetPasswordCommand resetPwdModel); } }