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
|
{
|
/// <summary>
|
/// 用户信息资格证书
|
/// </summary>
|
public class UserCredential : CommonEntity, IEntityTypeBuilder<UserCredential>
|
{
|
/// <summary>
|
/// 用户信息Id
|
/// </summary>
|
public Guid UserId { get; set; }
|
|
/// <summary>
|
/// 用户信息
|
/// </summary>
|
public User User { get; set; }
|
|
/// <summary>
|
/// 证书类型编号
|
/// </summary>
|
[Required]
|
public string TypeCode { get; set; }
|
|
/// <summary>
|
/// 证书类型
|
/// </summary>
|
public DictionaryData Type { get; set; }
|
|
/// <summary>
|
/// 证书编号
|
/// </summary>
|
[MaxLength(128)]
|
public string Code { get; set; }
|
|
/// <summary>
|
/// 永久证书
|
/// </summary>
|
public bool IsForever { get; set; }
|
|
/// <summary>
|
/// 开始日期
|
/// </summary>
|
public DateTime? StartDate { get; set; }
|
|
/// <summary>
|
/// 结束日期
|
/// </summary>
|
public DateTime? EndDate { get; set; }
|
|
/// <summary>
|
/// 发证单位
|
/// </summary>
|
public string IssueUnit { get; set; }
|
|
/// <summary>
|
/// 证书正面照片
|
/// </summary>
|
public string Img { get; set; }
|
|
/// <summary>
|
/// 证书反面照片
|
/// </summary>
|
public string BackImg { get; set; }
|
|
public void Configure(EntityTypeBuilder<UserCredential> entityBuilder, DbContext dbContext, Type dbContextLocator)
|
{
|
entityBuilder
|
.HasOne(it => it.Type)
|
.WithMany()
|
.HasForeignKey(it => it.TypeCode)
|
.HasPrincipalKey(it => it.Code)
|
.IsRequired()
|
.OnDelete(DeleteBehavior.Restrict);
|
}
|
}
|
}
|