//------------------------------------------------------------------------------
// <autogenerated>
//     This code was generated by a CodeSmith Template.
//
//     DO NOT MODIFY contents of this file. Changes to this
//     file will be lost if the code is regenerated.
// </autogenerated>
//------------------------------------------------------------------------------
using APT.BaseData.Domain.Entities;
using APT.Infrastructure.EF.Map;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;

namespace APT.BaseData.Data.Mapping
{
	public partial class PFFlowInstanceMap
        : APTEntityBaseMap<T_PF_FLOW_INSTANCE>
    {
		public override void Configure(EntityTypeBuilder<T_PF_FLOW_INSTANCE> builder)
		{
			base.Configure(builder);
			builder.Property(t => t.Code)
				   .HasMaxLength(200);
			builder.Property(t => t.CustomName)
				.HasMaxLength(200);
			builder.Property(t => t.ActivityId)
				.HasMaxLength(50);
			builder.Property(t => t.ActivityType);
			builder.Property(t => t.ActivityName)
				.HasMaxLength(200);
			builder.Property(t => t.PreviousId)
				.HasMaxLength(50);
			builder.Property(t => t.SchemeContent);
			builder.Property(t => t.CreateDate)
				.IsRequired();
			builder.Property(t => t.CreateUserId)
				.HasMaxLength(50);
			builder.Property(t => t.CreateUserName)
				.HasMaxLength(50);
			builder.Property(t => t.Description)
				.HasMaxLength(200);
			builder.Property(t => t.OrderStatus);
			builder.Property(t => t.MakerList)
				.HasMaxLength(1000);
			builder.Property(t => t.EntityTypeFullName)
			   .HasMaxLength(1000);
			builder.Ignore(t => t.Vir_MakerName);
			builder.HasOne(t => t.InstanceScheme).WithMany().HasForeignKey(t => t.InstanceSchemeId).OnDelete(DeleteBehavior.Restrict);
			builder.HasOne(t => t.Form).WithMany().HasForeignKey(t => t.FrmId).OnDelete(DeleteBehavior.Restrict);
		}
		 
    }
}
