MemberGrade.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using System.ComponentModel.DataAnnotations.Schema;
  2. using System.ComponentModel.DataAnnotations;
  3. using Microsoft.EntityFrameworkCore;
  4. /// <summary>
  5. /// 사용자단 회원 등급 조건 세부 정보
  6. /// </summary>
  7. namespace bitforum.Models.User
  8. {
  9. [Table("MemberGrade")]
  10. [Comment("회원 등급")]
  11. [Index(nameof(KorName), Name = "IX_MemberGrade_KorName", IsUnique = true)]
  12. [Index(nameof(EngName), Name = "IX_MemberGrade_EngName", IsUnique = true)]
  13. public class MemberGrade
  14. {
  15. [Key]
  16. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  17. [Comment("PK")]
  18. public int ID { get; set; }
  19. [Required]
  20. [MaxLength(120)]
  21. [Comment("한글 명")]
  22. public string KorName { get; set; }
  23. [Required]
  24. [MaxLength(120)]
  25. [Comment("영문 명")]
  26. public string EngName { get; set; }
  27. [MaxLength(1000)]
  28. [Comment("설명")]
  29. public string? Description { get; set; } = null;
  30. [Required]
  31. [Comment("순서")]
  32. public short Order { get; set; } = 0;
  33. [DataType(DataType.ImageUrl)]
  34. [Comment("이미지")]
  35. public string? Image { get; set; } = null;
  36. [Required]
  37. [Comment("최소 경험치(Exp)")]
  38. public int RequiredExp { get; set; } = 0;
  39. [Required]
  40. [Comment("최소 코인(Coin)")]
  41. public int RequiredCoin { get; set; } = 0;
  42. [Comment("사용 여부")]
  43. public bool IsActive { get; set; } = false;
  44. [Comment("수정 일시")]
  45. public DateTime? UpdatedAt { get; set; } = null;
  46. [Required]
  47. [Comment("등록 일시")]
  48. public DateTime CreatedAt { get; set; }
  49. }
  50. }