public async Task <Model.Identity> GetIdentityByID(Guid id) { var param = new DynamicParameters(); param.Add("@ID", id); var mapper = new IdentityMapper(); return((await SqlMapper.QueryAsync(_unitOfWork.Connection, "GetIdentityByID", new[] { typeof(Model.Identity), typeof(RequestType?), typeof(Cluster), typeof(string), typeof(Log) }, obj => { var identity = obj[0] as Model.Identity; var requestType = obj[1] as RequestType?; var cluster = obj[2] as Cluster; var node = obj[3] as string; var log = obj[4] as Log; return mapper.Map(identity, requestType, cluster, node, log); }, param, splitOn: "ID,RequestType,ClusterID,Node,LogID", commandType: CommandType.StoredProcedure, transaction: _unitOfWork.Transaction)).FirstOrDefault()); }
public void Logout() { if (Client == null) { return; } Client.Token = null; Database.Clients.Update(IdentityMapper.Map(Client)); }
private void Login(Client client) { if (client == null) { Client = null; return; } var now = DateTime.Now; Client = IdentityMapper.MapToDTO(client); Client.Token = CreateToken(Client, now.ToLongTimeString() + now.ToLongDateString()); Client.LoginDate = now; if (Database.Clients.FindById(client.Id) == null) { Database.Clients.Insert(IdentityMapper.Map(Client)); } else { Database.Clients.Update(IdentityMapper.Map(Client)); } }
public async Task <List <Model.Identity> > GetAllIdentityDetails(long id) { var param = new DynamicParameters(); param.Add("@ID", id); var mapper = new IdentityMapper(); return((await SqlMapper.QueryAsync( _unitOfWork.Connection, "GetAllIdentity", new[] { typeof(Model.Identity) }, obj => { var A = obj[0] as Model.Identity; return mapper.Map(A); }, param, commandType: CommandType.StoredProcedure, transaction: _unitOfWork.Transaction)).ToList()); }
public void SignUp(ClientDTO client) { Login(IdentityMapper.Map(client)); }
public async Task <IList <Model.Identity> > Query(IdentityFilter filter) { var requestTypes = new DataTable(); requestTypes.Columns.Add("Val", typeof(int)); if ((filter.RequestTypes?.Length ?? 0) > 0) { foreach (var requestType in filter.RequestTypes) { requestTypes.Rows.Add((int)requestType); } } var clusters = new DataTable(); clusters.Columns.Add("Val", typeof(long)); if ((filter.Clusters?.Length ?? 0) > 0) { foreach (var cluster in filter.Clusters) { clusters.Rows.Add(cluster); } } var permissions = new DataTable(); permissions.Columns.Add("Val", typeof(int)); if ((filter.Permissions?.Length ?? 0) > 0) { foreach (var permission in filter.Permissions) { permissions.Rows.Add((int)permission); } } var ids = new DataTable(); ids.Columns.Add("Val", typeof(Guid)); if ((filter.IDs?.Length ?? 0) > 0) { foreach (var id in filter.IDs) { ids.Rows.Add(id); } } var nodes = new DataTable(); nodes.Columns.Add("Val", typeof(string)); if ((filter.Nodes?.Length ?? 0) > 0) { foreach (var node in filter.Nodes) { nodes.Rows.Add(node); } } var param = new DynamicParameters(); param.Add("@Name", filter.Name); param.Add("@Email", filter.Email); param.Add("@Status", filter.Status); param.Add("Permissions", permissions.AsTableValuedParameter("dbo.SmallIntType")); param.Add("IDs", ids.AsTableValuedParameter("dbo.UniqueIdentifierType")); param.Add("RequestTypes", requestTypes.AsTableValuedParameter("dbo.SmallIntType")); param.Add("Clusters", clusters.AsTableValuedParameter("dbo.BigIntType")); param.Add("Nodes", nodes.AsTableValuedParameter("dbo.NvarcharType")); var mapper = new IdentityMapper(); return((await SqlMapper.QueryAsync(_unitOfWork.Connection, "SelectIdentity", new[] { typeof(Model.Identity), typeof(RequestType?), typeof(Cluster), typeof(string) }, obj => { var identity = obj[0] as Model.Identity; var requestType = obj[1] as RequestType?; var cluster = obj[2] as Cluster; var node = obj[3] as string; return mapper.Map(identity, requestType, cluster, node); }, param, splitOn: "ID,RequestType,ClusterID,Node", commandType: CommandType.StoredProcedure, transaction: _unitOfWork.Transaction)).Distinct().ToList()); }