33 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
		
		
			
		
	
	
			33 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| 
								 | 
							
								using APT.Infrastructure.EF.Map;
							 | 
						|||
| 
								 | 
							
								using APT.BaseData.Domain.Entities.FM;
							 | 
						|||
| 
								 | 
							
								using Microsoft.EntityFrameworkCore.Metadata.Builders;
							 | 
						|||
| 
								 | 
							
								using Microsoft.EntityFrameworkCore;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace APT.BaseData.Data.Mapping.FM
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
									public class FMDepartMentMap : TreeEntityBaseMap<T_FM_DEPARTMENT>
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
										public override void Configure(EntityTypeBuilder<T_FM_DEPARTMENT> builder)
							 | 
						|||
| 
								 | 
							
										{
							 | 
						|||
| 
								 | 
							
											base.Configure(builder);
							 | 
						|||
| 
								 | 
							
											// Properties
							 | 
						|||
| 
								 | 
							
											builder.Property(t => t.NAME).HasMaxLength(50);
							 | 
						|||
| 
								 | 
							
											builder.Property(t => t.CODE).HasMaxLength(50);
							 | 
						|||
| 
								 | 
							
								            builder.Property(t => t.NAME_ACRONYM).HasMaxLength(100);
							 | 
						|||
| 
								 | 
							
								            builder.Property(t => t.REMARK).HasMaxLength(500);
							 | 
						|||
| 
								 | 
							
											builder.Property(t => t.LINE_USER).HasMaxLength(500);
							 | 
						|||
| 
								 | 
							
											builder.Property(t => t.DEPARTMENT_TYPE).HasDefaultValue(0);
							 | 
						|||
| 
								 | 
							
											//builder.HasOne(t => t.Parent).WithMany().HasForeignKey(t => t.PARENT_ID);
							 | 
						|||
| 
								 | 
							
											builder.HasOne(t => t.Nav_User).WithMany().HasForeignKey(t => t.USER_ID).OnDelete(DeleteBehavior.Restrict);
							 | 
						|||
| 
								 | 
							
											//builder.HasOne(t => t.Nav_Calendar).WithMany().HasForeignKey(t => t.CALENDAR_ID).OnDelete(DeleteBehavior.Restrict);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
											//负责人信息
							 | 
						|||
| 
								 | 
							
											builder.Property(t => t.PERSON_ID).HasMaxLength(100).IsRequired(false);
							 | 
						|||
| 
								 | 
							
											builder.HasOne(t => t.Nav_Person).WithMany().HasForeignKey(t => t.PERSON_ID).IsRequired(false)
							 | 
						|||
| 
								 | 
							
												.OnDelete(DeleteBehavior.Restrict);
							 | 
						|||
| 
								 | 
							
								            builder.HasOne(t => t.Nav_ChargeUser).WithMany().HasForeignKey(t => t.CHARGEUSER_ID).OnDelete(DeleteBehavior.Restrict);
							 | 
						|||
| 
								 | 
							
											builder.Ignore(t => t.PARENT_CODE);
							 | 
						|||
| 
								 | 
							
										}
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |