using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
///
/// 任务人员信息
///
public class TaskInfoUser : CommonEntity, IEntityTypeBuilder
{
public TaskInfoUser()
{
Submits = [];
}
///
/// 任务Id
///
public Guid TaskInfoId { get; set; }
///
/// 任务
///
public TaskInfo TaskInfo { get; set; }
///
/// 灵工Id
///
public Guid EnterpriseEmployeeId { get; set; }
///
/// 灵工
///
public EnterpriseEmployee EnterpriseEmployee { get; set; }
///
/// 安排状态
///
public EnumTaskUserArrangeStatus? ArrangeStatus { get; set; }
///
/// 安排完成时间
///
public DateTime? ArrangeTime { get; set; }
///
/// 验收状态
///
public EnumTaskCheckReceiveStatus? CheckReceiveStatus { get; set; }
///
/// 验收完成时间
///
public DateTime? CheckReceiveTime { get; set; }
///
/// 最近提交时间
///
public DateTime? LastSubmitTime { get; set; }
///
/// 提交
///
public List Submits { get; set; }
public void Configure(EntityTypeBuilder entityBuilder, DbContext dbContext, Type dbContextLocator)
{
entityBuilder
.HasOne(it => it.EnterpriseEmployee)
.WithMany(it => it.TaskInfoUsers)
.HasForeignKey(it => it.EnterpriseEmployeeId)
.IsRequired()
.OnDelete(DeleteBehavior.Restrict);
}
}
}