招聘后台
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.

109 lines
3.9 KiB

using System;
using System.Data;
using System.Threading.Tasks;
using Znyc.Recruitment.Admin.Commons.Enums;
using Znyc.Recruitment.Admin.Commons.IServices;
using Znyc.Recruitment.Admin.Commons.Pages;
using Znyc.Recruitment.Admin.Security.Dtos;
using Znyc.Recruitment.Admin.Security.Entitys;
namespace Znyc.Recruitment.Admin.Security.IServices
{
/// <summary>
/// �û������ӿ�
/// </summary>
public interface IAdminUserService : IService<AdminUserEntity, AdminUserOutputDto, long>
{
/// <summary>
/// �û���½��֤��
/// </summary>
/// <param name="userName">�û���</param>
/// <param name="password">���루��һ��md5���ܺ���</param>
/// <returns>��֤�ɹ������û�ʵ�壬��֤ʧ�ܷ���null|��ʾ��Ϣ</returns>
Task<Tuple<AdminUserEntity, string>> Validate(string userName, string password);
/// <summary>
/// �û���½��֤��
/// </summary>
/// <param name="userName">�û���</param>
/// <param name="password">���루��һ��md5���ܺ���</param>
/// <param name="userType">�û�����</param>
/// <returns>��֤�ɹ������û�ʵ�壬��֤ʧ�ܷ���null|��ʾ��Ϣ</returns>
Task<Tuple<AdminUserEntity, string>> Validate(string userName, string password, UserType userType);
/// <summary>
/// �����û��˺Ų�ѯ�û���Ϣ
/// </summary>
/// <param name="userName"></param>
/// <returns></returns>
Task<AdminUserEntity> GetByUserName(string userName);
/// <summary>
/// �����û��ֻ�������ѯ�û���Ϣ
/// </summary>
/// <param name="mobilePhone">�ֻ�����</param>
/// <returns></returns>
Task<AdminUserEntity> GetUserByMobilePhone(string mobilePhone);
/// <summary>
/// ����Account���ֻ��Ų�ѯ�û���Ϣ
/// </summary>
/// <param name="account">��¼�˺�</param>
/// <returns></returns>
Task<AdminUserEntity> GetUserByLogin(string account);
/// <summary>
/// ���ݵ�����OpenId��ѯ�û���Ϣ
/// </summary>
/// <param name="openIdType">����������</param>
/// <param name="openId">OpenIdֵ</param>
/// <returns></returns>
AdminUserEntity GetUserByOpenId(string openIdType, string openId);
/// <summary>
/// ����΢��UnionId��ѯ�û���Ϣ
/// </summary>
/// <param name="unionId">UnionIdֵ</param>
/// <returns></returns>
AdminUserEntity GetUserByUnionId(string unionId);
/// <summary>
/// ����userId��ѯ�û���Ϣ
/// </summary>
/// <param name="openIdType">����������</param>
/// <param name="userId">userId</param>
/// <returns></returns>
UserOpenIdsEntity GetUserOpenIdByuserId(string openIdType, long userId);
/// <summary>
/// �����û���Ϣ,������ƽ̨
/// </summary>
/// <param name="entity"></param>
/// <param name="userLogOnEntity"></param>
/// <param name="trans"></param>
bool UpdateUserByOpenId(AdminUserEntity entity, AdminUserLogOnEntity userLogOnEntity,
UserOpenIdsEntity userOpenIds,
IDbTransaction trans = null);
/// <summary>
/// ΢��ע����ͨ��Ա�û�
/// </summary>
/// <param name="userInPut">����������</param>
/// <returns></returns>
bool CreateUserByWxOpenId(UserInputDto userInPut);
/// <summary>
/// �����û�
/// </summary>
/// <param name="userInPut"></param>
/// <returns></returns>
bool UpdateUserByOpenId(UserInputDto userInPut);
/// <summary>
/// ����������ѯ���ݿ�,�����ض��󼯺�(���ڷ�ҳ������ʾ)
/// </summary>
/// <param name="search">��ѯ������</param>
/// <returns>ָ�������ļ���</returns>
Task<PageResult<AdminUserOutputDto>> FindWithPagerSearchAsync(SearchUserModel search);
}
}