非羁押人员管理平台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

231 lines
6.7 KiB

3 months ago
using ATS.NonCustodial.Application.Contracts.Interfaces.Admins.Auth.Output;
using ATS.NonCustodial.Application.Contracts.Interfaces.Admins.User.Input;
using ATS.NonCustodial.Application.Contracts.Interfaces.Admins.User.Output;
using ATS.NonCustodial.Domain.Shared.AggRootEntities.Dtos;
using ATS.NonCustodial.Domain.Shared.Attributes;
using ATS.NonCustodial.Shared.Common.Dtos;
using ATS.NonCustodial.Shared.Common.Dtos.Query;
using ATS.NonCustodial.Shared.Common.Enums;
using ATS.NonCustodial.Shared.Common.UnifiedResults;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace ATS.NonCustodial.Application.Contracts.Interfaces.Admins.User
{
/// <summary>
/// <EFBFBD>û<EFBFBD><EFBFBD>ӿ<EFBFBD>
/// </summary>
public interface IUserService
{
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<ResultOutput<AuthLoginOutput>> GetLoginUserAsync(long? id);
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<IResultOutput> GetAsync(long id);
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<IResultOutput> GetuserroleAsync(long id);
/// <summary>
///
/// </summary>
/// <returns></returns>
Task<IResultOutput> GetSelectAsync();
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>Id<EFBFBD><EFBFBD>ȡ<EFBFBD>û<EFBFBD><EFBFBD>б<EFBFBD>
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<List<AuthLoginOutput>> GetAllByConditionAsync(BatchIdsInput input);
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<IResultOutput> GetcurrentAsync();
/// <summary>
/// ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>û<EFBFBD>
/// </summary>
/// <returns></returns>
Task<List<AuthLoginOutput>> GetAllByConditionAsync(CmShopTListSearchDto<SearchUserEnum, string> input);
/// <summary>
///
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<IResultOutput> GetPageAsync(UserGetPageDto input);
/// <summary>
///
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[UnitOfWork]
Task<IResultOutput> AddAsync(UserAddInput input);
/// <summary>
///
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<IResultOutput> AdduserroleAsync(List<UserRoleAddInput> inputlist);
/// <summary>
///
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[UnitOfWork]
Task<IResultOutput> UpdateAsync(UserUpdateInput input);
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<IResultOutput> DeleteAsync(long id);
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[UnitOfWork]
Task<IResultOutput> SoftDeleteAsync(long id);
/// <summary>
///
/// </summary>
/// <param name="ids"></param>
/// <returns></returns>
[UnitOfWork]
Task<IResultOutput> BatchSoftDeleteAsync(long[] ids);
/// <summary>
///
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<IResultOutput> ChangePasswordAsync(UserChangePasswordInput input);
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
Task<IResultOutput> BatchResetPassword(BatchResetPasswordInput input);
/// <summary>
///
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<IResultOutput> UpdateBasicAsync(UserUpdateBasicInput input);
/// <summary>
///
/// </summary>
/// <returns></returns>
Task<IResultOutput> GetBasicAsync();
/// <summary>
///
/// </summary>
/// <returns></returns>
Task<IList<UserPermissionsOutput>> GetPermissionsAsync();
/// <summary>
/// <EFBFBD>ϴ<EFBFBD>ͷ<EFBFBD><EFBFBD>
/// </summary>
/// <param name="file"></param>
/// <returns></returns>
Task<IResultOutput> AvatarUpload([FromForm] IFormFile file);
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>״̬
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<IResultOutput> BatchChangeStatus(BatchChangeStatusInput input);
/// <summary>
/// <EFBFBD>жϵ<EFBFBD>ǰ<EFBFBD><EFBFBD>¼<EFBFBD>û<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD>ǹ<EFBFBD><EFBFBD><EFBFBD>Ա
/// </summary>
/// <param name="userId"><EFBFBD>տ<EFBFBD>ʼ<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>user<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>null</param>
/// <returns></returns>
Task<IsAdminDto> IsAdmin(long? userId);
/// <summary>
/// ͨ<EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><EFBFBD>֣<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD>š<EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD>ţ<EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>Ϣ
/// </summary>
/// <param name="keyword"></param>
/// <returns></returns>
Task<IResultOutput> GetUserInfoByKeyword(string keyword);
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>
/// </summary>
/// <param name="userAddInputs"></param>
/// <returns></returns>
Task<List<GetUserInfoByKeywordDto>> BatchAddAsync(List<SupervisedPersonAddInput> userAddInputs);
/// <summary>
///
/// </summary>
/// <param name="userUpdateInputs"></param>
/// <returns></returns>
Task<int> BatchUpdateAsync(List<SupervisedPersonUpdateInput> userUpdateInputs);
/// <summary>
/// У<EFBFBD>鵱ǰ<EFBFBD>û<EFBFBD><EFBFBD>Ƿ񱻽<EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
Task<bool> CheckUserStatus();
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>Id<EFBFBD><EFBFBD>ѯ<EFBFBD>û<EFBFBD>ͷ<EFBFBD><EFBFBD>
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<List<UserAvatarListOutput>> UserAvatarList(BatchIdsInput input);
/// <summary>
/// <EFBFBD>ж<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <param name="keyWord"><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD></param>
/// <returns></returns>
Task<bool> UserIsExist(string keyWord);
/// <summary>
/// <EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ǰ<EFBFBD><EFBFBD>¼<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
/// </summary>
/// <returns></returns>
Task<ResultOutput<List<KeyValueDto>>> GetUserSelectList(int isCourt = 0);
3 months ago
Task<ResultOutput<List<KeyValueDto>>> GetNewUserSelectList();
3 months ago
/// <summary>
/// <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>еĹ<EFBFBD><EFBFBD><EFBFBD>Ա
/// </summary>
/// <returns></returns>
Task<List<AuthLoginOutput>> GetAllAdminUserIds();
}
}