using Microsoft.Extensions.Configuration; using MySqlConnector; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using uWine.Core.Domain.Entities; using uWine.Core.Domain.Repositories; namespace uWine.Core.Infrastructure.Repository { public class MariaDbUserRepository : MariaDbServerRepository, IUserRepository { public MariaDbUserRepository(IConfiguration configuration) : base(configuration) { } public User UserById(int userId) { using (var conn = Connection()) { conn.Open(); var cmd = new MySqlCommand($@"SELECT u.id, username, u.role as role_id, r.role as name, description FROM t_users u JOIN t_role r on r.id = u.role WHERE u.id = @userId ", conn); cmd.Parameters.AddWithValue("userId", userId); using (var reader = cmd.ExecuteReader()) { if (reader.Read()) { return User.LoginUser(reader); } } } return new User(); } } }