using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
using System.Threading.Tasks;
using ZhonTai.Admin.Core.Dto;
using ZhonTai.Admin.Domain.User.Dto;
using ZhonTai.Admin.Services.Auth.Dto;
using ZhonTai.Admin.Services.User.Dto;
namespace ZhonTai.Admin.Services.User;
///
/// 用户接口
///
public interface IUserService
{
Task GetAsync(long id);
Task> GetPageAsync(PageInput input);
Task GetLoginUserAsync(long id);
Task GetDataPermissionAsync();
Task AddAsync(UserAddInput input);
Task UpdateAsync(UserUpdateInput input);
Task DeleteAsync(long id);
Task BatchDeleteAsync(long[] ids);
Task SoftDeleteAsync(long id);
Task BatchSoftDeleteAsync(long[] ids);
Task ChangePasswordAsync(UserChangePasswordInput input);
Task ResetPasswordAsync(UserResetPasswordInput input);
Task SetManagerAsync(UserSetManagerInput input);
Task UpdateBasicAsync(UserUpdateBasicInput input);
Task GetBasicAsync();
Task> GetPermissionsAsync();
Task AvatarUpload([FromForm] IFormFile file);
}