using Furion.DatabaseAccessor; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.Core { /// /// 用户信息资格证书 /// public class UserCredential : CommonEntity, IEntityTypeBuilder { /// /// 用户信息Id /// public Guid UserId { get; set; } /// /// 用户信息 /// public User User { get; set; } /// /// 证书类型编号 /// [Required] public string TypeCode { get; set; } /// /// 证书类型 /// public DictionaryData Type { get; set; } /// /// 证书编号 /// [MaxLength(128)] public string Code { get; set; } /// /// 永久证书 /// public bool IsForever { get; set; } /// /// 开始日期 /// public DateTime? StartDate { get; set; } /// /// 结束日期 /// public DateTime? EndDate { get; set; } /// /// 发证单位 /// public string IssueUnit { get; set; } /// /// 证书正面照片 /// public string Img { get; set; } /// /// 证书反面照片 /// public string BackImg { get; set; } public void Configure(EntityTypeBuilder entityBuilder, DbContext dbContext, Type dbContextLocator) { entityBuilder .HasOne(it => it.Type) .WithMany() .HasForeignKey(it => it.TypeCode) .HasPrincipalKey(it => it.Code) .IsRequired() .OnDelete(DeleteBehavior.Restrict); } } }