using System.ComponentModel.DataAnnotations; using JOBot.Proto; using Microsoft.EntityFrameworkCore; namespace JOBot.Backend.DAL.Models; [PrimaryKey(nameof(Id))] public class User { public Guid Id { get; set; } [Key] public required long UserId { get; set; } [MaxLength(255)] public string? Username { get; set; } public DateTime CreatedAt { get; set; } = DateTime.UtcNow; [MaxLength(255)] public string? AccessToken { get; set; } = null; [MaxLength(255)] public string? RefreshToken { get; set; } = null; public bool Eula { get; set; } = false; [MaxLength(255)] public string? CvUrl { get; set; } = null; } //TODO: Негоже это маппинги в DAL ложить public static class UserMap { public static GetUserResponse MapToResponse(this User user) { return new GetUserResponse { UserId = user.UserId, Username = user.Username, Eula = user.Eula, IsLogged = user.RefreshToken != null, CVUrl = user.CvUrl }; } }