Hr Employee

This commit is contained in:
Sedat ÖZTÜRK 2025-10-21 17:32:50 +03:00
parent 7e74237d80
commit 40e90e97ae
24 changed files with 2258 additions and 168 deletions

View file

@ -8,8 +8,8 @@ public class BankDto : AuditedEntityDto<Guid>
public string Name { get; set; }
public string IdentifierCode { get; set; }
public string AddressLine1 { get; set; }
public string AddressLine2 { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string District { get; set; }
public string City { get; set; }
public string PostalCode { get; set; }

View file

@ -16,7 +16,7 @@ public class CustomTenantDto
public string City { get; set; }
public string District { get; set; }
public string Street { get; set; }
public string Address { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string PostalCode { get; set; }
public string Phone { get; set; }

View file

@ -121,7 +121,7 @@ public class ListFormDynamicApiAppService : PlatformAppService, IListFormDynamic
entity.SetCity(input.Data.City);
entity.SetDistrict(input.Data.District);
entity.SetStreet(input.Data.Street);
entity.SetAddress(input.Data.Address);
entity.SetAddress1(input.Data.Address);
entity.SetAddress2(input.Data.Address2);
entity.SetPostalCode(input.Data.PostalCode);
entity.SetPhone(input.Data.Phone);
@ -156,7 +156,7 @@ public class ListFormDynamicApiAppService : PlatformAppService, IListFormDynamic
entity.SetCity(input.Data.City);
entity.SetDistrict(input.Data.District);
entity.SetStreet(input.Data.Street);
entity.SetAddress(input.Data.Address);
entity.SetAddress1(input.Data.Address);
entity.SetAddress2(input.Data.Address2);
entity.SetPostalCode(input.Data.PostalCode);
entity.SetPhone(input.Data.Phone);

View file

@ -229,7 +229,7 @@ public class PublicAppService : PlatformAppService
Founder = input.Tenant.Founder,
VknTckn = input.Tenant.VknTckn,
TaxOffice = input.Tenant.TaxOffice,
Address = input.Tenant.Address,
Address1 = input.Tenant.Address1,
Address2 = input.Tenant.Address2,
District = input.Tenant.District,
Country = input.Tenant.Country,

View file

@ -83,7 +83,7 @@ public class PlatformTenantAppService : TenantAppService, IPlatformTenantAppServ
dto.City = tenant.GetCity();
dto.District = tenant.GetDistrict();
dto.Street = tenant.GetStreet();
dto.Address = tenant.GetAddress();
dto.Address = tenant.GetAddress1();
dto.Address2 = tenant.GetAddress2();
dto.PostalCode = tenant.GetPostalCode();
dto.Phone = tenant.GetPhone();

View file

@ -14998,7 +14998,7 @@
"Code": "App.Hr.Employee",
"DisplayName": "App.Hr.Employee",
"Order": 6,
"Url": "/admin/hr/employees",
"Url": "/admin/list/list-employee",
"Icon": "FcConferenceCall",
"RequiredPermissionName": "App.Hr.Employee",
"IsDisabled": false

File diff suppressed because it is too large Load diff

View file

@ -226,6 +226,13 @@ public static class LookUpQueryValues
$"FROM \"{FullNameTable(TableNameEnum.Bank)}\" " +
$"WHERE \"IsDeleted\" = 'false' ";
public static string BankAccountValues =
$"SELECT " +
$"\"Id\" AS \"Key\", " +
$"\"AccountNumber\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.BankAccount)}\" " +
$"WHERE \"IsDeleted\" = 'false' ";
public static string CurrencyValues =
$"SELECT " +
$"\"Id\" AS \"Key\", " +
@ -239,7 +246,7 @@ public static class LookUpQueryValues
$"\"Name\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.Department)}\" " +
$"WHERE \"IsDeleted\" = 'false' " +
$"ORDER BY \"Name\";";
$"ORDER BY \"Name\";";
public static string CostCenterValues =
$"SELECT " +
@ -247,5 +254,36 @@ public static class LookUpQueryValues
$"\"Name\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.CostCenter)}\" " +
$"WHERE \"IsDeleted\" = 'false' " +
$"ORDER BY \"Name\";";
$"ORDER BY \"Name\";";
public static string EmployeeValues =
$"SELECT " +
$"\"Id\" AS \"Key\", " +
$"\"FullName\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.Employee)}\" " +
$"WHERE \"IsDeleted\" = 'false' " +
$"ORDER BY \"FullName\";";
public static string EmploymentTypeValues =
$"SELECT " +
$"\"Id\" AS \"Key\", " +
$"\"Name\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.EmploymentType)}\" " +
$"WHERE \"IsDeleted\" = 'false' " +
$"ORDER BY \"Name\";";
public static string JobPositionValues =
$"SELECT " +
$"\"Id\" AS \"Key\", " +
$"\"Name\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.JobPosition)}\" " +
$"WHERE \"IsDeleted\" = 'false' " +
$"ORDER BY \"Name\";";
public static string BadgeValues =
$"SELECT " +
$"\"Id\" AS \"Key\", " +
$"\"Name\" AS \"Name\" " +
$"FROM \"{FullNameTable(TableNameEnum.Badge)}\" " +
$"WHERE \"IsDeleted\" = 'false' ";
}

View file

@ -76,7 +76,7 @@ public static class PlatformConsts
public const string City = "City";
public const string District = "District";
public const string Street = "Street";
public const string Address = "Address";
public const string Address1 = "Address1";
public const string Address2 = "Address2";
public const string PostalCode = "PostalCode";
public const string Phone = "Phone";

View file

@ -11,8 +11,8 @@ public class Bank : FullAuditedEntity<Guid>, IMultiTenant
public string Name { get; set; }
public string IdentifierCode { get; set; }
public string AddressLine1 { get; set; }
public string AddressLine2 { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string Country { get; set; }
public string City { get; set; }
public string District { get; set; }

View file

@ -1,5 +1,4 @@
using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities.Auditing;
namespace Kurs.Platform.Entities;
@ -16,7 +15,7 @@ public class Branch : FullAuditedEntity<Guid>
public string City { get; set; }
public string District { get; set; }
public string Street { get; set; }
public string Address { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string PostalCode { get; set; }
public string Phone { get; set; }

View file

@ -18,7 +18,7 @@ public class CostCenter : FullAuditedEntity<Guid>, IMultiTenant
public ICollection<CostCenter> SubCostCenters { get; set; }
public Guid? ResponsibleEmployeeId { get; set; }
// public HrEmployee ResponsibleEmployee { get; set; }
public Employee ResponsibleEmployee { get; set; }
public Guid? DepartmentId { get; set; }
public Department Department { get; set; }

View file

@ -19,10 +19,10 @@ public class Department : FullAuditedEntity<Guid>, IMultiTenant
public ICollection<Department> SubDepartments { get; set; }
public Guid? ManagerId { get; set; }
//public HrEmployee Manager { get; set; }
public Employee Manager { get; set; }
public Guid? CostCenterId { get; set; }
//public HrCostCenter CostCenter { get; set; }
public CostCenter CostCenter { get; set; }
public int Budget { get; set; }
public bool IsActive { get; set; }

View file

@ -0,0 +1,67 @@
using System;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;
namespace Kurs.Platform.Entities;
public class Employee : FullAuditedEntity<Guid>, IMultiTenant
{
public Guid? TenantId { get; set; }
public string Code { get; set; }
public string FullName { get; set; }
public string Avatar { get; set; }
public string NationalId { get; set; }
public DateTime BirthDate { get; set; }
public string Gender { get; set; }
public string MaritalStatus { get; set; }
// Embedded Address
public string Country { get; set; }
public string City { get; set; }
public string District { get; set; }
public string Street { get; set; }
public string PostalCode { get; set; }
public string Phone { get; set; }
public string PersonalPhone { get; set; }
public string Email { get; set; }
public string Address { get; set; }
public string Address2 { get; set; }
// Emergency contact
public string EmergencyContactName { get; set; }
public string EmergencyContactRelationship { get; set; }
public string EmergencyContactPhone { get; set; }
public DateTime HireDate { get; set; }
public DateTime? TerminationDate { get; set; }
public Guid EmploymentTypeId { get; set; }
public Guid JobPositionId { get; set; }
public JobPosition JobPosition { get; set; }
public Guid DepartmantId { get; set; }
public Department Department { get; set; }
public string WorkLocation { get; set; }
public Guid? ManagerId { get; set; }
public Employee Manager { get; set; }
public int BaseSalary { get; set; }
public Guid CurrencyId { get; set; }
public string PayrollGroup { get; set; }
public Guid BankAccountId { get; set; }
public BankAccount BankAccount { get; set; }
public Guid BadgeId { get; set; }
public Badge Badge { get; set; }
public string EmployeeStatus { get; set; }
public bool IsActive { get; set; }
// Navigation lists (placeholders)
// public ICollection<HrLeave> Leaves { get; set; }
// public ICollection<HrPerformanceEvaluation> Evaluations { get; set; }
// public ICollection<HrTraining> Trainings { get; set; }
// public ICollection<HrDisciplinaryAction> DisciplinaryActions { get; set; }
}

View file

@ -16,7 +16,7 @@ public class Order : FullAuditedEntity<Guid>, IMultiTenant
public string Founder { get; set; }
public long VknTckn { get; set; }
public string TaxOffice { get; set; }
public string Address { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string District { get; set; }
public string Country { get; set; }

View file

@ -86,13 +86,13 @@ public static class AbpTenantExtensions
return tenant.GetProperty<string>(PlatformConsts.Tenants.Street);
}
public static void SetAddress(this Tenant tenant, string address)
public static void SetAddress1(this Tenant tenant, string address)
{
tenant.SetProperty(PlatformConsts.Tenants.Address, address);
tenant.SetProperty(PlatformConsts.Tenants.Address1, address);
}
public static string GetAddress(this Tenant tenant)
public static string GetAddress1(this Tenant tenant)
{
return tenant.GetProperty<string>(PlatformConsts.Tenants.Address);
return tenant.GetProperty<string>(PlatformConsts.Tenants.Address1);
}
public static void SetAddress2(this Tenant tenant, string address2)

View file

@ -238,7 +238,7 @@ public class PlatformDbContext :
b.Property(a => a.City).HasMaxLength(128);
b.Property(a => a.District).HasMaxLength(128);
b.Property(a => a.Street).HasMaxLength(256);
b.Property(a => a.Address).HasMaxLength(512);
b.Property(a => a.Address1).HasMaxLength(512);
b.Property(a => a.Address2).HasMaxLength(512);
b.Property(a => a.PostalCode).HasMaxLength(16);
b.Property(a => a.Phone).HasMaxLength(20);
@ -1376,7 +1376,7 @@ public class PlatformDbContext :
b.Property(o => o.OrganizationName).HasMaxLength(128);
b.Property(o => o.Founder).HasMaxLength(128);
b.Property(o => o.TaxOffice).HasMaxLength(128);
b.Property(o => o.Address).HasMaxLength(512);
b.Property(o => o.Address1).HasMaxLength(512);
b.Property(o => o.Address2).HasMaxLength(512);
b.Property(o => o.District).HasMaxLength(128);
b.Property(o => o.Country).HasMaxLength(128);
@ -1599,8 +1599,8 @@ public class PlatformDbContext :
b.Property(x => x.Name).IsRequired().HasMaxLength(128);
b.Property(x => x.IdentifierCode).HasMaxLength(64);
b.Property(x => x.AddressLine1).HasMaxLength(256);
b.Property(x => x.AddressLine2).HasMaxLength(256);
b.Property(x => x.Address1).HasMaxLength(256);
b.Property(x => x.Address2).HasMaxLength(256);
b.Property(x => x.District).HasMaxLength(128);
b.Property(x => x.City).HasMaxLength(128);
b.Property(x => x.PostalCode).HasMaxLength(16);
@ -1690,17 +1690,17 @@ public class PlatformDbContext :
.HasForeignKey(x => x.ParentDepartmentId)
.OnDelete(DeleteBehavior.Restrict);
// b.HasOne(x => x.Manager)
// .WithMany()
// .HasForeignKey(x => x.ManagerId)
// .OnDelete(DeleteBehavior.Restrict);
b.HasOne(x => x.Manager)
.WithMany()
.HasForeignKey(x => x.ManagerId)
.OnDelete(DeleteBehavior.Restrict);
// b.HasOne(x => x.CostCenter)
// .WithMany()
// .HasForeignKey(x => x.CostCenterId)
// .OnDelete(DeleteBehavior.Restrict);
b.HasOne(x => x.CostCenter)
.WithMany()
.HasForeignKey(x => x.CostCenterId)
.OnDelete(DeleteBehavior.Restrict);
});
builder.Entity<CostCenter>(b =>
{
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.CostCenter)), Prefix.DbSchema);
@ -1716,13 +1716,50 @@ public class PlatformDbContext :
.WithMany(x => x.SubCostCenters)
.HasForeignKey(x => x.ParentCostCenterId);
// b.HasOne(x => x.ResponsibleEmployee)
// .WithMany()
// .HasForeignKey(x => x.ResponsibleEmployeeId);
b.HasOne(x => x.ResponsibleEmployee)
.WithMany()
.HasForeignKey(x => x.ResponsibleEmployeeId);
b.HasOne(x => x.Department)
.WithMany()
.HasForeignKey(x => x.DepartmentId);
});
builder.Entity<Employee>(b =>
{
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.Employee)), Prefix.DbSchema);
b.ConfigureByConvention();
b.Property(x => x.Code).IsRequired().HasMaxLength(50);
b.Property(x => x.FullName).HasMaxLength(200);
b.Property(x => x.Email).HasMaxLength(150);
b.Property(x => x.Phone).HasMaxLength(50);
b.Property(x => x.PersonalPhone).HasMaxLength(50);
b.Property(x => x.Avatar).HasMaxLength(250);
b.Property(x => x.NationalId).HasMaxLength(20);
b.Property(x => x.PayrollGroup).HasMaxLength(50);
b.Property(x => x.WorkLocation).HasMaxLength(150);
b.Property(x => x.IsActive).HasDefaultValue(true);
b.HasOne(x => x.JobPosition)
.WithMany()
.HasForeignKey(x => x.JobPositionId);
b.HasOne(x => x.Department)
.WithMany()
.HasForeignKey(x => x.DepartmantId);
b.HasOne(x => x.Manager)
.WithMany()
.HasForeignKey(x => x.ManagerId);
b.HasOne(x => x.BankAccount)
.WithMany()
.HasForeignKey(x => x.BankAccountId)
.OnDelete(DeleteBehavior.Restrict)
.IsRequired(false);
// b.HasOne(x => x.WorkSchedule).WithMany().HasForeignKey(x => x.WorkScheduleId);
});
}
}

View file

@ -130,7 +130,7 @@ public static class PlatformEfCoreEntityExtensionMappings
ObjectExtensionManager.Instance
.MapEfCoreProperty<Tenant, string>(
PlatformConsts.Tenants.Address,
PlatformConsts.Tenants.Address1,
(entityBuilder, propertyBuilder) =>
{
propertyBuilder.HasMaxLength(256).HasDefaultValue(null);

View file

@ -13,7 +13,7 @@ using Volo.Abp.EntityFrameworkCore;
namespace Kurs.Platform.Migrations
{
[DbContext(typeof(PlatformDbContext))]
[Migration("20251021124022_Initial")]
[Migration("20251021143137_Initial")]
partial class Initial
{
/// <inheritdoc />
@ -1013,11 +1013,11 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("AddressLine1")
b.Property<string>("Address1")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.Property<string>("AddressLine2")
b.Property<string>("Address2")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
@ -1401,7 +1401,7 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
b.Property<string>("Address1")
.HasMaxLength(512)
.HasColumnType("nvarchar(512)");
@ -2387,6 +2387,8 @@ namespace Kurs.Platform.Migrations
b.HasIndex("ParentCostCenterId");
b.HasIndex("ResponsibleEmployeeId");
b.ToTable("T_Hr_CostCenter", (string)null);
});
@ -3090,6 +3092,10 @@ namespace Kurs.Platform.Migrations
b.HasKey("Id");
b.HasIndex("CostCenterId");
b.HasIndex("ManagerId");
b.HasIndex("ParentDepartmentId");
b.ToTable("T_Hr_Department", (string)null);
@ -3320,6 +3326,175 @@ namespace Kurs.Platform.Migrations
b.ToTable("T_Adm_EducationStatus", (string)null);
});
modelBuilder.Entity("Kurs.Platform.Entities.Employee", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
.HasColumnType("nvarchar(max)");
b.Property<string>("Address2")
.HasColumnType("nvarchar(max)");
b.Property<string>("Avatar")
.HasMaxLength(250)
.HasColumnType("nvarchar(250)");
b.Property<Guid>("BadgeId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("BankAccountId")
.HasColumnType("uniqueidentifier");
b.Property<int>("BaseSalary")
.HasColumnType("int");
b.Property<DateTime>("BirthDate")
.HasColumnType("datetime2");
b.Property<string>("City")
.HasColumnType("nvarchar(max)");
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("Country")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid>("CurrencyId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<Guid>("DepartmantId")
.HasColumnType("uniqueidentifier");
b.Property<string>("District")
.HasColumnType("nvarchar(max)");
b.Property<string>("Email")
.HasMaxLength(150)
.HasColumnType("nvarchar(150)");
b.Property<string>("EmergencyContactName")
.HasColumnType("nvarchar(max)");
b.Property<string>("EmergencyContactPhone")
.HasColumnType("nvarchar(max)");
b.Property<string>("EmergencyContactRelationship")
.HasColumnType("nvarchar(max)");
b.Property<string>("EmployeeStatus")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("EmploymentTypeId")
.HasColumnType("uniqueidentifier");
b.Property<string>("FullName")
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("Gender")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("HireDate")
.HasColumnType("datetime2");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<Guid>("JobPositionId")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<Guid?>("ManagerId")
.HasColumnType("uniqueidentifier");
b.Property<string>("MaritalStatus")
.HasColumnType("nvarchar(max)");
b.Property<string>("NationalId")
.HasMaxLength(20)
.HasColumnType("nvarchar(20)");
b.Property<string>("PayrollGroup")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("PersonalPhone")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("Phone")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("PostalCode")
.HasColumnType("nvarchar(max)");
b.Property<string>("Street")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.Property<DateTime?>("TerminationDate")
.HasColumnType("datetime2");
b.Property<string>("WorkLocation")
.HasMaxLength(150)
.HasColumnType("nvarchar(150)");
b.HasKey("Id");
b.HasIndex("BadgeId");
b.HasIndex("BankAccountId");
b.HasIndex("DepartmantId");
b.HasIndex("JobPositionId");
b.HasIndex("ManagerId");
b.ToTable("T_Hr_Employee", (string)null);
});
modelBuilder.Entity("Kurs.Platform.Entities.EmploymentType", b =>
{
b.Property<Guid>("Id")
@ -5190,7 +5365,7 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
b.Property<string>("Address1")
.HasMaxLength(512)
.HasColumnType("nvarchar(512)");
@ -9280,7 +9455,7 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
b.Property<string>("Address1")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
@ -9609,9 +9784,15 @@ namespace Kurs.Platform.Migrations
.WithMany("SubCostCenters")
.HasForeignKey("ParentCostCenterId");
b.HasOne("Kurs.Platform.Entities.Employee", "ResponsibleEmployee")
.WithMany()
.HasForeignKey("ResponsibleEmployeeId");
b.Navigation("Department");
b.Navigation("ParentCostCenter");
b.Navigation("ResponsibleEmployee");
});
modelBuilder.Entity("Kurs.Platform.Entities.Country", b =>
@ -9636,11 +9817,25 @@ namespace Kurs.Platform.Migrations
modelBuilder.Entity("Kurs.Platform.Entities.Department", b =>
{
b.HasOne("Kurs.Platform.Entities.CostCenter", "CostCenter")
.WithMany()
.HasForeignKey("CostCenterId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Kurs.Platform.Entities.Employee", "Manager")
.WithMany()
.HasForeignKey("ManagerId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Kurs.Platform.Entities.Department", "ParentDepartment")
.WithMany("SubDepartments")
.HasForeignKey("ParentDepartmentId")
.OnDelete(DeleteBehavior.Restrict);
b.Navigation("CostCenter");
b.Navigation("Manager");
b.Navigation("ParentDepartment");
});
@ -9651,6 +9846,46 @@ namespace Kurs.Platform.Migrations
.HasForeignKey("CityId");
});
modelBuilder.Entity("Kurs.Platform.Entities.Employee", b =>
{
b.HasOne("Kurs.Platform.Entities.Badge", "Badge")
.WithMany()
.HasForeignKey("BadgeId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kurs.Platform.Entities.BankAccount", "BankAccount")
.WithMany()
.HasForeignKey("BankAccountId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Kurs.Platform.Entities.Department", "Department")
.WithMany()
.HasForeignKey("DepartmantId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kurs.Platform.Entities.JobPosition", "JobPosition")
.WithMany()
.HasForeignKey("JobPositionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kurs.Platform.Entities.Employee", "Manager")
.WithMany()
.HasForeignKey("ManagerId");
b.Navigation("Badge");
b.Navigation("BankAccount");
b.Navigation("Department");
b.Navigation("JobPosition");
b.Navigation("Manager");
});
modelBuilder.Entity("Kurs.Platform.Entities.Event", b =>
{
b.HasOne("Kurs.Platform.Entities.EventCategory", "Category")

View file

@ -341,7 +341,7 @@ namespace Kurs.Platform.Migrations
Name = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
NormalizedName = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
EntityVersion = table.Column<int>(type: "int", nullable: false),
Address = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
Address1 = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
Address2 = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
City = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
Country = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
@ -1070,8 +1070,8 @@ namespace Kurs.Platform.Migrations
BranchId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Name = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false),
IdentifierCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
AddressLine1 = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
AddressLine2 = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
Address1 = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
Address2 = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
Country = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
City = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
District = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
@ -1380,7 +1380,7 @@ namespace Kurs.Platform.Migrations
Founder = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
VknTckn = table.Column<long>(type: "bigint", nullable: false),
TaxOffice = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
Address = table.Column<string>(type: "nvarchar(512)", maxLength: 512, nullable: true),
Address1 = table.Column<string>(type: "nvarchar(512)", maxLength: 512, nullable: true),
Address2 = table.Column<string>(type: "nvarchar(512)", maxLength: 512, nullable: true),
District = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
Country = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
@ -1778,39 +1778,6 @@ namespace Kurs.Platform.Migrations
table.PrimaryKey("PK_T_Hr_Badge", x => x.Id);
});
migrationBuilder.CreateTable(
name: "T_Hr_Department",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(20)", maxLength: 20, nullable: false),
Name = table.Column<string>(type: "nvarchar(100)", maxLength: 100, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
ParentDepartmentId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
ManagerId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CostCenterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Budget = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_Hr_Department", x => x.Id);
table.ForeignKey(
name: "FK_T_Hr_Department_T_Hr_Department_ParentDepartmentId",
column: x => x.ParentDepartmentId,
principalTable: "T_Hr_Department",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateTable(
name: "T_Hr_EmploymentType",
columns: table => new
@ -2029,7 +1996,7 @@ namespace Kurs.Platform.Migrations
City = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
District = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: true),
Street = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: true),
Address = table.Column<string>(type: "nvarchar(512)", maxLength: 512, nullable: true),
Address1 = table.Column<string>(type: "nvarchar(512)", maxLength: 512, nullable: true),
Address2 = table.Column<string>(type: "nvarchar(512)", maxLength: 512, nullable: true),
PostalCode = table.Column<string>(type: "nvarchar(16)", maxLength: 16, nullable: true),
Phone = table.Column<string>(type: "nvarchar(20)", maxLength: 20, nullable: true),
@ -3244,47 +3211,6 @@ namespace Kurs.Platform.Migrations
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "T_Hr_CostCenter",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
Name = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
ParentCostCenterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
ResponsibleEmployeeId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DepartmentId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CostCenterType = table.Column<string>(type: "nvarchar(max)", nullable: true),
BudgetedAmount = table.Column<int>(type: "int", nullable: false),
ActualAmount = table.Column<int>(type: "int", nullable: false),
CurrencyId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
FiscalYear = table.Column<string>(type: "nvarchar(10)", maxLength: 10, nullable: true),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_Hr_CostCenter", x => x.Id);
table.ForeignKey(
name: "FK_T_Hr_CostCenter_T_Hr_CostCenter_ParentCostCenterId",
column: x => x.ParentCostCenterId,
principalTable: "T_Hr_CostCenter",
principalColumn: "Id");
table.ForeignKey(
name: "FK_T_Hr_CostCenter_T_Hr_Department_DepartmentId",
column: x => x.DepartmentId,
principalTable: "T_Hr_Department",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "T_Sas_ApiEndpoint",
columns: table => new
@ -3831,6 +3757,163 @@ namespace Kurs.Platform.Migrations
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "T_Hr_CostCenter",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
Name = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
ParentCostCenterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
ResponsibleEmployeeId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DepartmentId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CostCenterType = table.Column<string>(type: "nvarchar(max)", nullable: true),
BudgetedAmount = table.Column<int>(type: "int", nullable: false),
ActualAmount = table.Column<int>(type: "int", nullable: false),
CurrencyId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
FiscalYear = table.Column<string>(type: "nvarchar(10)", maxLength: 10, nullable: true),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_Hr_CostCenter", x => x.Id);
table.ForeignKey(
name: "FK_T_Hr_CostCenter_T_Hr_CostCenter_ParentCostCenterId",
column: x => x.ParentCostCenterId,
principalTable: "T_Hr_CostCenter",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "T_Hr_Department",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(20)", maxLength: 20, nullable: false),
Name = table.Column<string>(type: "nvarchar(100)", maxLength: 100, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
ParentDepartmentId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
ManagerId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CostCenterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Budget = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_Hr_Department", x => x.Id);
table.ForeignKey(
name: "FK_T_Hr_Department_T_Hr_CostCenter_CostCenterId",
column: x => x.CostCenterId,
principalTable: "T_Hr_CostCenter",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_Hr_Department_T_Hr_Department_ParentDepartmentId",
column: x => x.ParentDepartmentId,
principalTable: "T_Hr_Department",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateTable(
name: "T_Hr_Employee",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
FullName = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: true),
Avatar = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: true),
NationalId = table.Column<string>(type: "nvarchar(20)", maxLength: 20, nullable: true),
BirthDate = table.Column<DateTime>(type: "datetime2", nullable: false),
Gender = table.Column<string>(type: "nvarchar(max)", nullable: true),
MaritalStatus = table.Column<string>(type: "nvarchar(max)", nullable: true),
Country = table.Column<string>(type: "nvarchar(max)", nullable: true),
City = table.Column<string>(type: "nvarchar(max)", nullable: true),
District = table.Column<string>(type: "nvarchar(max)", nullable: true),
Street = table.Column<string>(type: "nvarchar(max)", nullable: true),
PostalCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
Phone = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: true),
PersonalPhone = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: true),
Email = table.Column<string>(type: "nvarchar(150)", maxLength: 150, nullable: true),
Address = table.Column<string>(type: "nvarchar(max)", nullable: true),
Address2 = table.Column<string>(type: "nvarchar(max)", nullable: true),
EmergencyContactName = table.Column<string>(type: "nvarchar(max)", nullable: true),
EmergencyContactRelationship = table.Column<string>(type: "nvarchar(max)", nullable: true),
EmergencyContactPhone = table.Column<string>(type: "nvarchar(max)", nullable: true),
HireDate = table.Column<DateTime>(type: "datetime2", nullable: false),
TerminationDate = table.Column<DateTime>(type: "datetime2", nullable: true),
EmploymentTypeId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
JobPositionId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
DepartmantId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
WorkLocation = table.Column<string>(type: "nvarchar(150)", maxLength: 150, nullable: true),
ManagerId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
BaseSalary = table.Column<int>(type: "int", nullable: false),
CurrencyId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
PayrollGroup = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: true),
BankAccountId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
BadgeId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
EmployeeStatus = table.Column<string>(type: "nvarchar(max)", nullable: true),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_Hr_Employee", x => x.Id);
table.ForeignKey(
name: "FK_T_Hr_Employee_T_Acc_BankAccount_BankAccountId",
column: x => x.BankAccountId,
principalTable: "T_Acc_BankAccount",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_Hr_Employee_T_Hr_Badge_BadgeId",
column: x => x.BadgeId,
principalTable: "T_Hr_Badge",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_T_Hr_Employee_T_Hr_Department_DepartmantId",
column: x => x.DepartmantId,
principalTable: "T_Hr_Department",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_T_Hr_Employee_T_Hr_Employee_ManagerId",
column: x => x.ManagerId,
principalTable: "T_Hr_Employee",
principalColumn: "Id");
table.ForeignKey(
name: "FK_T_Hr_Employee_T_Hr_JobPosition_JobPositionId",
column: x => x.JobPositionId,
principalTable: "T_Hr_JobPosition",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateIndex(
name: "IX_AbpAuditLogActions_AuditLogId",
table: "AbpAuditLogActions",
@ -4390,11 +4473,51 @@ namespace Kurs.Platform.Migrations
table: "T_Hr_CostCenter",
column: "ParentCostCenterId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_CostCenter_ResponsibleEmployeeId",
table: "T_Hr_CostCenter",
column: "ResponsibleEmployeeId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Department_CostCenterId",
table: "T_Hr_Department",
column: "CostCenterId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Department_ManagerId",
table: "T_Hr_Department",
column: "ManagerId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Department_ParentDepartmentId",
table: "T_Hr_Department",
column: "ParentDepartmentId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Employee_BadgeId",
table: "T_Hr_Employee",
column: "BadgeId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Employee_BankAccountId",
table: "T_Hr_Employee",
column: "BankAccountId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Employee_DepartmantId",
table: "T_Hr_Employee",
column: "DepartmantId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Employee_JobPositionId",
table: "T_Hr_Employee",
column: "JobPositionId");
migrationBuilder.CreateIndex(
name: "IX_T_Hr_Employee_ManagerId",
table: "T_Hr_Employee",
column: "ManagerId");
migrationBuilder.CreateIndex(
name: "IX_T_Sas_ApiEndpoint_EntityId",
table: "T_Sas_ApiEndpoint",
@ -4424,11 +4547,49 @@ namespace Kurs.Platform.Migrations
name: "IX_T_Sas_ReportTemplate_CategoryId",
table: "T_Sas_ReportTemplate",
column: "CategoryId");
migrationBuilder.AddForeignKey(
name: "FK_T_Hr_CostCenter_T_Hr_Department_DepartmentId",
table: "T_Hr_CostCenter",
column: "DepartmentId",
principalTable: "T_Hr_Department",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_T_Hr_CostCenter_T_Hr_Employee_ResponsibleEmployeeId",
table: "T_Hr_CostCenter",
column: "ResponsibleEmployeeId",
principalTable: "T_Hr_Employee",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_T_Hr_Department_T_Hr_Employee_ManagerId",
table: "T_Hr_Department",
column: "ManagerId",
principalTable: "T_Hr_Employee",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_T_Acc_BankAccount_P_Sas_Currency_CurrencyId",
table: "T_Acc_BankAccount");
migrationBuilder.DropForeignKey(
name: "FK_T_Acc_BankAccount_T_Acc_Bank_BankId",
table: "T_Acc_BankAccount");
migrationBuilder.DropForeignKey(
name: "FK_T_Hr_CostCenter_T_Hr_Department_DepartmentId",
table: "T_Hr_CostCenter");
migrationBuilder.DropForeignKey(
name: "FK_T_Hr_Employee_T_Hr_Department_DepartmantId",
table: "T_Hr_Employee");
migrationBuilder.DropTable(
name: "AbpAuditLogActions");
@ -4573,9 +4734,6 @@ namespace Kurs.Platform.Migrations
migrationBuilder.DropTable(
name: "P_Sas_Route");
migrationBuilder.DropTable(
name: "T_Acc_BankAccount");
migrationBuilder.DropTable(
name: "T_Adm_About");
@ -4666,18 +4824,9 @@ namespace Kurs.Platform.Migrations
migrationBuilder.DropTable(
name: "T_Crd_QuestionTag");
migrationBuilder.DropTable(
name: "T_Hr_Badge");
migrationBuilder.DropTable(
name: "T_Hr_CostCenter");
migrationBuilder.DropTable(
name: "T_Hr_EmploymentType");
migrationBuilder.DropTable(
name: "T_Hr_JobPosition");
migrationBuilder.DropTable(
name: "T_P_Activity");
@ -4780,12 +4929,6 @@ namespace Kurs.Platform.Migrations
migrationBuilder.DropTable(
name: "P_Sas_ListFormImport");
migrationBuilder.DropTable(
name: "P_Sas_Currency");
migrationBuilder.DropTable(
name: "T_Acc_Bank");
migrationBuilder.DropTable(
name: "T_Adm_BlogCategory");
@ -4807,9 +4950,6 @@ namespace Kurs.Platform.Migrations
migrationBuilder.DropTable(
name: "T_Crd_Question");
migrationBuilder.DropTable(
name: "T_Hr_Department");
migrationBuilder.DropTable(
name: "T_Sas_CustomEntity");
@ -4851,6 +4991,30 @@ namespace Kurs.Platform.Migrations
migrationBuilder.DropTable(
name: "P_Sas_CountryGroup");
migrationBuilder.DropTable(
name: "P_Sas_Currency");
migrationBuilder.DropTable(
name: "T_Acc_Bank");
migrationBuilder.DropTable(
name: "T_Hr_Department");
migrationBuilder.DropTable(
name: "T_Hr_CostCenter");
migrationBuilder.DropTable(
name: "T_Hr_Employee");
migrationBuilder.DropTable(
name: "T_Acc_BankAccount");
migrationBuilder.DropTable(
name: "T_Hr_Badge");
migrationBuilder.DropTable(
name: "T_Hr_JobPosition");
}
}
}

View file

@ -1010,11 +1010,11 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("AddressLine1")
b.Property<string>("Address1")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.Property<string>("AddressLine2")
b.Property<string>("Address2")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
@ -1398,7 +1398,7 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
b.Property<string>("Address1")
.HasMaxLength(512)
.HasColumnType("nvarchar(512)");
@ -2384,6 +2384,8 @@ namespace Kurs.Platform.Migrations
b.HasIndex("ParentCostCenterId");
b.HasIndex("ResponsibleEmployeeId");
b.ToTable("T_Hr_CostCenter", (string)null);
});
@ -3087,6 +3089,10 @@ namespace Kurs.Platform.Migrations
b.HasKey("Id");
b.HasIndex("CostCenterId");
b.HasIndex("ManagerId");
b.HasIndex("ParentDepartmentId");
b.ToTable("T_Hr_Department", (string)null);
@ -3317,6 +3323,175 @@ namespace Kurs.Platform.Migrations
b.ToTable("T_Adm_EducationStatus", (string)null);
});
modelBuilder.Entity("Kurs.Platform.Entities.Employee", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
.HasColumnType("nvarchar(max)");
b.Property<string>("Address2")
.HasColumnType("nvarchar(max)");
b.Property<string>("Avatar")
.HasMaxLength(250)
.HasColumnType("nvarchar(250)");
b.Property<Guid>("BadgeId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("BankAccountId")
.HasColumnType("uniqueidentifier");
b.Property<int>("BaseSalary")
.HasColumnType("int");
b.Property<DateTime>("BirthDate")
.HasColumnType("datetime2");
b.Property<string>("City")
.HasColumnType("nvarchar(max)");
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("Country")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid>("CurrencyId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<Guid>("DepartmantId")
.HasColumnType("uniqueidentifier");
b.Property<string>("District")
.HasColumnType("nvarchar(max)");
b.Property<string>("Email")
.HasMaxLength(150)
.HasColumnType("nvarchar(150)");
b.Property<string>("EmergencyContactName")
.HasColumnType("nvarchar(max)");
b.Property<string>("EmergencyContactPhone")
.HasColumnType("nvarchar(max)");
b.Property<string>("EmergencyContactRelationship")
.HasColumnType("nvarchar(max)");
b.Property<string>("EmployeeStatus")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("EmploymentTypeId")
.HasColumnType("uniqueidentifier");
b.Property<string>("FullName")
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("Gender")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("HireDate")
.HasColumnType("datetime2");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<Guid>("JobPositionId")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<Guid?>("ManagerId")
.HasColumnType("uniqueidentifier");
b.Property<string>("MaritalStatus")
.HasColumnType("nvarchar(max)");
b.Property<string>("NationalId")
.HasMaxLength(20)
.HasColumnType("nvarchar(20)");
b.Property<string>("PayrollGroup")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("PersonalPhone")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("Phone")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("PostalCode")
.HasColumnType("nvarchar(max)");
b.Property<string>("Street")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.Property<DateTime?>("TerminationDate")
.HasColumnType("datetime2");
b.Property<string>("WorkLocation")
.HasMaxLength(150)
.HasColumnType("nvarchar(150)");
b.HasKey("Id");
b.HasIndex("BadgeId");
b.HasIndex("BankAccountId");
b.HasIndex("DepartmantId");
b.HasIndex("JobPositionId");
b.HasIndex("ManagerId");
b.ToTable("T_Hr_Employee", (string)null);
});
modelBuilder.Entity("Kurs.Platform.Entities.EmploymentType", b =>
{
b.Property<Guid>("Id")
@ -5187,7 +5362,7 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
b.Property<string>("Address1")
.HasMaxLength(512)
.HasColumnType("nvarchar(512)");
@ -9277,7 +9452,7 @@ namespace Kurs.Platform.Migrations
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Address")
b.Property<string>("Address1")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
@ -9606,9 +9781,15 @@ namespace Kurs.Platform.Migrations
.WithMany("SubCostCenters")
.HasForeignKey("ParentCostCenterId");
b.HasOne("Kurs.Platform.Entities.Employee", "ResponsibleEmployee")
.WithMany()
.HasForeignKey("ResponsibleEmployeeId");
b.Navigation("Department");
b.Navigation("ParentCostCenter");
b.Navigation("ResponsibleEmployee");
});
modelBuilder.Entity("Kurs.Platform.Entities.Country", b =>
@ -9633,11 +9814,25 @@ namespace Kurs.Platform.Migrations
modelBuilder.Entity("Kurs.Platform.Entities.Department", b =>
{
b.HasOne("Kurs.Platform.Entities.CostCenter", "CostCenter")
.WithMany()
.HasForeignKey("CostCenterId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Kurs.Platform.Entities.Employee", "Manager")
.WithMany()
.HasForeignKey("ManagerId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Kurs.Platform.Entities.Department", "ParentDepartment")
.WithMany("SubDepartments")
.HasForeignKey("ParentDepartmentId")
.OnDelete(DeleteBehavior.Restrict);
b.Navigation("CostCenter");
b.Navigation("Manager");
b.Navigation("ParentDepartment");
});
@ -9648,6 +9843,46 @@ namespace Kurs.Platform.Migrations
.HasForeignKey("CityId");
});
modelBuilder.Entity("Kurs.Platform.Entities.Employee", b =>
{
b.HasOne("Kurs.Platform.Entities.Badge", "Badge")
.WithMany()
.HasForeignKey("BadgeId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kurs.Platform.Entities.BankAccount", "BankAccount")
.WithMany()
.HasForeignKey("BankAccountId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Kurs.Platform.Entities.Department", "Department")
.WithMany()
.HasForeignKey("DepartmantId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kurs.Platform.Entities.JobPosition", "JobPosition")
.WithMany()
.HasForeignKey("JobPositionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kurs.Platform.Entities.Employee", "Manager")
.WithMany()
.HasForeignKey("ManagerId");
b.Navigation("Badge");
b.Navigation("BankAccount");
b.Navigation("Department");
b.Navigation("JobPosition");
b.Navigation("Manager");
});
modelBuilder.Entity("Kurs.Platform.Entities.Event", b =>
{
b.HasOne("Kurs.Platform.Entities.EventCategory", "Category")

View file

@ -182,7 +182,7 @@ export const PaymentForm: React.FC<PaymentFormProps> = ({
<span className="font-medium">
{translate('::Public.payment.customer.address')}:
</span>
<div>{tenant.address}</div>
<div>{tenant.address1}</div>
</div>
</div>

View file

@ -54,7 +54,7 @@ export const TenantForm: React.FC<TenantFormProps> = ({ onSubmit }) => {
founder: tenant.data.founder,
vknTckn: tenant.data.vknTckn,
taxOffice: tenant.data.taxOffice,
address: tenant.data.address,
address1: tenant.data.address1,
address2: tenant.data.address2,
district: tenant.data.district,
country: tenant.data.country,
@ -196,7 +196,7 @@ export const TenantForm: React.FC<TenantFormProps> = ({ onSubmit }) => {
<span className="font-medium">
{translate('::Public.products.tenantForm.address')}:
</span>
<div>{formData.address}</div>
<div>{formData.address1}</div>
</div>
</div>
@ -342,8 +342,8 @@ export const TenantForm: React.FC<TenantFormProps> = ({ onSubmit }) => {
<textarea
required
placeholder="Enter your address"
value={formData.address || ''}
onChange={(e) => handleInputChange('address', e.target.value)}
value={formData.address1 || ''}
onChange={(e) => handleInputChange('address1', e.target.value)}
rows={3}
className="w-full pl-10 pr-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"
/>

View file

@ -31,7 +31,7 @@ export interface CustomTenantDto extends TenantDto {
founder?: string
vknTckn: number
taxOffice: string
address: string
address1: string
address2: string
district: string
country: string