From 0e102b3dfca918812d734100faeed744d33d24f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sedat=20=C3=96ZT=C3=9CRK?= <76204082+iamsedatozturk@users.noreply.github.com> Date: Tue, 5 May 2026 10:23:02 +0300 Subject: [PATCH] =?UTF-8?q?User=20i=C3=A7erisine=20t=C3=BCm=20eksik=20s?= =?UTF-8?q?=C3=BCtunlar=20dahil=20edildi.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Identity/Dto/UserInfoViewModel.cs | 46 +- .../Identity/PlatformIdentityAppService.cs | 49 ++ .../Public/PublicAppService.cs | 10 + .../Public/PublicAutoMapperProfile.cs | 1 + .../Seeds/LanguagesData.json | 242 +++++- .../PlatformConsts.cs | 26 + .../Extensions/AbpIdentityUserExtensions.cs | 240 ++++++ .../PlatformEfCoreEntityExtensionMappings.cs | 216 ++++++ ....cs => 20260505071050_Initial.Designer.cs} | 93 ++- ...7_Initial.cs => 20260505071050_Initial.cs} | 24 + .../PlatformDbContextModelSnapshot.cs | 91 +++ ui/src/components/ui/utils/constants.ts | 8 +- ui/src/proxy/admin/models.ts | 24 + ui/src/services/home.service.ts | 29 + .../views/admin/user-management/Details.tsx | 708 ++++++++++++++++-- 15 files changed, 1702 insertions(+), 105 deletions(-) rename api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/{20260504141857_Initial.Designer.cs => 20260505071050_Initial.Designer.cs} (98%) rename api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/{20260504141857_Initial.cs => 20260505071050_Initial.cs} (98%) diff --git a/api/src/Sozsoft.Platform.Application.Contracts/Identity/Dto/UserInfoViewModel.cs b/api/src/Sozsoft.Platform.Application.Contracts/Identity/Dto/UserInfoViewModel.cs index 1e7a5bf..8f9845c 100644 --- a/api/src/Sozsoft.Platform.Application.Contracts/Identity/Dto/UserInfoViewModel.cs +++ b/api/src/Sozsoft.Platform.Application.Contracts/Identity/Dto/UserInfoViewModel.cs @@ -7,49 +7,27 @@ namespace Sozsoft.Platform.Identity.Dto; public class UserInfoViewModel: ExtensibleObject { public Guid Id { get; set; } - public string ConcurrencyStamp { get; set; } - public string UserName { get; set; } - public string Name { get; set; } - public string Surname { get; set; } - public string Email { get; set; } - public string PhoneNumber { get; set; } - public bool IsActive { get; set; } - public bool TwoFactorEnabled { get; set; } - public bool LockoutEnabled { get; set; } - public DateTimeOffset? LockoutEnd { get; set; } - public DateTime? LoginEndDate { get; set; } - public bool IsVerified { get; set; } - public List userRoleNames { get; set; } - public AssignedRoleViewModel[] Roles { get; set; } - public AssignedBranchViewModel[] Branches { get; set; } - public AssignedClaimViewModel[] Claims { get; set; } - public AssignedWorkHourViewModel[] WorkHours { get; set; } - public AssignedDepartmentViewModel[] Departments { get; set; } - public AssignedJobPoisitionViewModel[] JobPositions { get; set; } - public bool LockUser { get; set; } - public DateTimeOffset? LastPasswordChangeTime { get; set; } - public bool EmailConfirmed { get; set; } public bool PhoneNumberConfirmed { get; set; } public int AccessFailedCount { get; set; } @@ -60,4 +38,28 @@ public class UserInfoViewModel: ExtensibleObject public string WorkHour { get; set; } public Guid DepartmentId { get; set; } public Guid JobPositionId { get; set; } + public string Nationality { get; set; } + public string SskNo { get; set; } + public DateTime? HireDate { get; set; } + public DateTime? TerminationDate { get; set; } + public string IdentityNumber { get; set; } + public string SerialNo { get; set; } + public string Province { get; set; } + public string District { get; set; } + public string Village { get; set; } + public string VolumeNo { get; set; } + public string FamilySequenceNo { get; set; } + public string SequenceNo { get; set; } + public string IssuedPlace { get; set; } + public DateTime? IssuedDate { get; set; } + public string BirthPlace { get; set; } + public DateTime? BirthDate { get; set; } + public string FatherName { get; set; } + public string MotherName { get; set; } + public string MaritalStatus { get; set; } + public DateTime? MarriageDate { get; set; } + public string HomeAddress { get; set; } + public string EducationLevel { get; set; } + public string GraduationSchool { get; set; } + public string BloodType { get; set; } } diff --git a/api/src/Sozsoft.Platform.Application/Identity/PlatformIdentityAppService.cs b/api/src/Sozsoft.Platform.Application/Identity/PlatformIdentityAppService.cs index a10182e..e555cbd 100644 --- a/api/src/Sozsoft.Platform.Application/Identity/PlatformIdentityAppService.cs +++ b/api/src/Sozsoft.Platform.Application/Identity/PlatformIdentityAppService.cs @@ -165,6 +165,31 @@ public class PlatformIdentityAppService : ApplicationService JobPositionId = user.GetJobPositionId(), CreationTime = user.CreationTime, LastModificationTime = user.LastModificationTime, + + IdentityNumber = user.GetIdentityNumber(), + Nationality = user.GetNationality(), + SskNo = user.GetSskNo(), + HireDate = user.GetHireDate(), + TerminationDate = user.GetTerminationDate(), + SerialNo = user.GetSerialNo(), + Province = user.GetProvince(), + District = user.GetDistrict(), + Village = user.GetVillage(), + VolumeNo = user.GetVolumeNo(), + FamilySequenceNo = user.GetFamilySequenceNo(), + SequenceNo = user.GetSequenceNo(), + IssuedPlace = user.GetIssuedPlace(), + IssuedDate = user.GetIssuedDate(), + BirthPlace = user.GetBirthPlace(), + BirthDate = user.GetBirthDate(), + FatherName = user.GetFatherName(), + MotherName = user.GetMotherName(), + MaritalStatus = user.GetMaritalStatus(), + MarriageDate = user.GetMarriageDate(), + HomeAddress = user.GetHomeAddress(), + EducationLevel = user.GetEducationLevel(), + GraduationSchool = user.GetGraduationSchool(), + BloodType = user.GetBloodType(), }; } @@ -247,6 +272,30 @@ public class PlatformIdentityAppService : ApplicationService user.SetWorkHour(UserInfo.WorkHour); user.SetDepartmentId(UserInfo.DepartmentId); user.SetJobPositionId(UserInfo.JobPositionId); + user.SetNationality(UserInfo.Nationality); + user.SetSskNo(UserInfo.SskNo); + user.SetHireDate(UserInfo.HireDate); + user.SetTerminationDate(UserInfo.TerminationDate); + user.SetIdentityNumber(UserInfo.IdentityNumber); + user.SetSerialNo(UserInfo.SerialNo); + user.SetProvince(UserInfo.Province); + user.SetDistrict(UserInfo.District); + user.SetVillage(UserInfo.Village); + user.SetVolumeNo(UserInfo.VolumeNo); + user.SetFamilySequenceNo(UserInfo.FamilySequenceNo); + user.SetSequenceNo(UserInfo.SequenceNo); + user.SetIssuedPlace(UserInfo.IssuedPlace); + user.SetIssuedDate(UserInfo.IssuedDate); + user.SetBirthPlace(UserInfo.BirthPlace); + user.SetBirthDate(UserInfo.BirthDate); + user.SetFatherName(UserInfo.FatherName); + user.SetMotherName(UserInfo.MotherName); + user.SetMaritalStatus(UserInfo.MaritalStatus); + user.SetMarriageDate(UserInfo.MarriageDate); + user.SetHomeAddress(UserInfo.HomeAddress); + user.SetEducationLevel(UserInfo.EducationLevel); + user.SetGraduationSchool(UserInfo.GraduationSchool); + user.SetBloodType(UserInfo.BloodType); await UserManager.UpdateAsync(user); } diff --git a/api/src/Sozsoft.Platform.Application/Public/PublicAppService.cs b/api/src/Sozsoft.Platform.Application/Public/PublicAppService.cs index 06d4d47..bd7e0c4 100644 --- a/api/src/Sozsoft.Platform.Application/Public/PublicAppService.cs +++ b/api/src/Sozsoft.Platform.Application/Public/PublicAppService.cs @@ -33,6 +33,7 @@ public class PublicAppService : PlatformAppService private readonly IRepository _aboutRepository; private readonly IRepository _homeRepository; private readonly IRepository _contactRepository; + private readonly IRepository _countryRepository; private readonly IIdentityUserRepository _identityUserRepository; private readonly IRepository _languageKeyRepository; private readonly IRepository _languageTextRepository; @@ -52,6 +53,7 @@ public class PublicAppService : PlatformAppService IRepository aboutRepository, IRepository homeRepository, IRepository contactRepository, + IRepository countryRepository, IIdentityUserRepository identityUserRepository, IRepository languageKeyRepository, IRepository languageTextRepository, @@ -75,6 +77,7 @@ public class PublicAppService : PlatformAppService _languageKeyRepository = languageKeyRepository; _languageTextRepository = languageTextRepository; _languageTextAppService = languageTextAppService; + _countryRepository = countryRepository; } public async Task> GetServicesListAsync() @@ -535,6 +538,13 @@ public class PublicAppService : PlatformAppService return ObjectMapper.Map(entity); } + public async Task> GetCountryAsync() + { + var entities = await _countryRepository.GetListAsync() ?? throw new EntityNotFoundException(typeof(Country)); + + return ObjectMapper.Map, List>(entities); + } + public async Task SaveContactPageAsync(SaveContactPageInput input) { var entity = await _contactRepository.FirstOrDefaultAsync() ?? throw new EntityNotFoundException(typeof(Contact)); diff --git a/api/src/Sozsoft.Platform.Application/Public/PublicAutoMapperProfile.cs b/api/src/Sozsoft.Platform.Application/Public/PublicAutoMapperProfile.cs index 7aa9f84..305ee21 100644 --- a/api/src/Sozsoft.Platform.Application/Public/PublicAutoMapperProfile.cs +++ b/api/src/Sozsoft.Platform.Application/Public/PublicAutoMapperProfile.cs @@ -20,6 +20,7 @@ public class PublicAutoMapperProfile : Profile CreateMap(); CreateMap(); CreateMap(); + CreateMap(); } } diff --git a/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json b/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json index 2a7afb2..cb9a45e 100644 --- a/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json +++ b/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json @@ -2262,6 +2262,36 @@ "en": "Email", "tr": "E-posta" }, + { + "resourceName": "Platform", + "key": "Abp.Account.HomeAddress", + "en": "Home Address", + "tr": "Ev Adresi" + }, + { + "resourceName": "Platform", + "key": "Abp.Account.BloodType", + "en": "Blood Type", + "tr": "Kan Grubu" + }, + { + "resourceName": "Platform", + "key": "Abp.Account.GraduationSchool", + "en": "Graduation School", + "tr": "Mezuniyet Okulu" + }, + { + "resourceName": "Platform", + "key": "Abp.Account.EducationLevel", + "en": "Education Level", + "tr": "Eğitim Seviyesi" + }, + { + "resourceName": "Platform", + "key": "Abp.Account.Nationality", + "en": "Nationality", + "tr": "Uyruk" + }, { "resourceName": "Platform", "key": "Abp.Account.ConfirmPassword", @@ -2739,8 +2769,208 @@ { "resourceName": "Platform", "key": "Abp.Identity.User.Permissions", - "en": "User Permissions", - "tr": "Kullanıcı Yetkileri" + "en": "Permissions", + "tr": "Yetkiler" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.WorkInformation", + "en": "Work", + "tr": "İş" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.IndentityInformation", + "en": "Identity Information", + "tr": "Kimlik Bilgileri" + }, + + { + "resourceName": "Platform", + "key": "App.EducationLevel.Primary", + "en": "Primary Education", + "tr": "İlköğretim" + }, + { + "resourceName": "Platform", + "key": "App.EducationLevel.MiddleSchool", + "en": "Middle School", + "tr": "Ortaokul" + }, + { + "resourceName": "Platform", + "key": "App.EducationLevel.HighSchool", + "en": "High School", + "tr": "Lise" + }, + { + "resourceName": "Platform", + "key": "App.EducationLevel.Associate", + "en": "Associate Degree", + "tr": "Ön Lisans" + }, + { + "resourceName": "Platform", + "key": "App.EducationLevel.Bachelor", + "en": "Bachelor's Degree", + "tr": "Lisans" + }, + { + "resourceName": "Platform", + "key": "App.EducationLevel.Master", + "en": "Master's Degree", + "tr": "Yüksek Lisans" + }, + { + "resourceName": "Platform", + "key": "App.EducationLevel.PhD", + "en": "PhD", + "tr": "Doktora" + }, + + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.AdditionalInformation", + "en": "Additional Information", + "tr": "Ek Bilgiler" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.SskNo", + "en": "SSK Number", + "tr": "SSK No" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.HireDate", + "en": "Hire Date", + "tr": "İşe Başlama Tarihi" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.TerminationDate", + "en": "Termination Date", + "tr": "İşten Ayrılma Tarihi" + }, + { + "resourceName": "Platform", + "key": "App.MaritalStatus.Single", + "en": "Single", + "tr": "Bekar" + }, + { + "resourceName": "Platform", + "key": "App.MaritalStatus.Married", + "en": "Married", + "tr": "Evli" + }, + { + "resourceName": "Platform", + "key": "App.MaritalStatus.Divorced", + "en": "Divorced", + "tr": "Boşanmış" + }, + { + "resourceName": "Platform", + "key": "App.MaritalStatus.Widowed", + "en": "Widowed", + "tr": "Dul" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.IdentityNumber", + "en": "Identity Number", + "tr": "Kimlik No" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.SerialNo", + "en": "Serial Number", + "tr": "Seri No" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.Province", + "en": "Province", + "tr": "İl" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.District", + "en": "District", + "tr": "İlçe" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.Village", + "en": "Village", + "tr": "Köy" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.VolumeNo", + "en": "Volume Number", + "tr": "Cilt No" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.FamilySequenceNo", + "en": "Family Sequence Number", + "tr": "Aile Sıra No" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.SequenceNo", + "en": "Sequence Number", + "tr": "Sıra No" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.IssuedPlace", + "en": "Issued Place", + "tr": "Veriliş Yeri" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.IssuedDate", + "en": "Issued Date", + "tr": "Veriliş Tarihi" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.BirthPlace", + "en": "Birth Place", + "tr": "Doğum Yeri" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.BirthDate", + "en": "Birth Date", + "tr": "Doğum Tarihi" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.FatherName", + "en": "Father Name", + "tr": "Baba Adı" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.MotherName", + "en": "Mother Name", + "tr": "Anne Adı" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.MaritalStatus", + "en": "Marital Status", + "tr": "Medeni Durum" + }, + { + "resourceName": "Platform", + "key": "Abp.Identity.User.UserInformation.MarriageDate", + "en": "Marriage Date", + "tr": "Evlenme Tarihi" }, { "resourceName": "Platform", @@ -3203,7 +3433,7 @@ "key": "Abp.Identity.ConcurrentUserLimitError", "en": "The maximum number of simultaneous users has been reached.", "tr": "Eş zamanlı kullanıcı limiti dolmuştur." - }, + }, { "resourceName": "Platform", "key": "Abp.Identity.IpRestrictionError", @@ -3324,7 +3554,7 @@ "en": "Grid State Saved", "tr": "Tablo Yapısı Kaydedildi" }, - { + { "resourceName": "Platform", "key": "ListForms.ListForm.FitColumns", "en": "Fit Columns", @@ -5747,13 +5977,13 @@ "key": "App.Definitions.Department", "tr": "Departmanlar", "en": "Departments" - }, + }, { "resourceName": "Platform", "key": "App.Definitions.JobPosition", "tr": "Pozisyonlar", "en": "Job Positions" - }, + }, { "resourceName": "Platform", "key": "App.Definitions.ContactTag", diff --git a/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs b/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs index 3b63c3e..1360bdc 100644 --- a/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs +++ b/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs @@ -112,9 +112,35 @@ public static class PlatformConsts public const string RoleNames = "RoleNames"; public const string IsVerified = "IsVerified"; public const string RocketUsername = "RocketUsername"; + public const string HomeAddress = "HomeAddress"; + public const string EducationLevel = "EducationLevel"; + public const string GraduationSchool = "GraduationSchool"; + public const string BloodType = "BloodType"; + public const string Nationality = "Nationality"; + public const string WorkHour = "WorkHour"; public const string DepartmentId = "DepartmentId"; public const string JobPositionId = "JobPositionId"; + public const string SskNo = "SskNo"; + public const string HireDate = "HireDate"; + public const string TerminationDate = "TerminationDate"; + + public const string IdentityNumber = "IdentityNumber"; + public const string SerialNo = "SerialNo"; + public const string Province = "Province"; + public const string District = "District"; + public const string Village = "Village"; + public const string VolumeNo = "VolumeNo"; + public const string FamilySequenceNo = "FamilySequenceNo"; + public const string SequenceNo = "SequenceNo"; + public const string IssuedPlace = "IssuedPlace"; + public const string IssuedDate = "IssuedDate"; + public const string BirthPlace = "BirthPlace"; + public const string BirthDate = "BirthDate"; + public const string FatherName = "FatherName"; + public const string MotherName = "MotherName"; + public const string MaritalStatus = "MaritalStatus"; + public const string MarriageDate = "MarriageDate"; public const string UserLockedOutMessage = GroupName + ".UserLockedOutMessage"; public const string InvalidUserNameOrPassword = GroupName + ".InvalidUserNameOrPassword"; diff --git a/api/src/Sozsoft.Platform.Domain/Extensions/AbpIdentityUserExtensions.cs b/api/src/Sozsoft.Platform.Domain/Extensions/AbpIdentityUserExtensions.cs index 26adc97..097522e 100644 --- a/api/src/Sozsoft.Platform.Domain/Extensions/AbpIdentityUserExtensions.cs +++ b/api/src/Sozsoft.Platform.Domain/Extensions/AbpIdentityUserExtensions.cs @@ -70,5 +70,245 @@ public static class AbpIdentityUserExtensions { return user.GetProperty(PlatformConsts.AbpIdentity.User.JobPositionId); } + + //Nationality + public static void SetNationality(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.Nationality, value); + } + public static string GetNationality(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.Nationality); + } + + //SskNo + public static void SetSskNo(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.SskNo, value); + } + public static string GetSskNo(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.SskNo); + } + + //HireDate + public static void SetHireDate(this IdentityUser user, DateTime? value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.HireDate, value); + } + public static DateTime? GetHireDate(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.HireDate); + } + + //TerminationDate + public static void SetTerminationDate(this IdentityUser user, DateTime? value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.TerminationDate, value); + } + public static DateTime? GetTerminationDate(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.TerminationDate); + } + + //IdentityNumber + public static void SetIdentityNumber(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.IdentityNumber, value); + } + public static string GetIdentityNumber(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.IdentityNumber); + } + + //SerialNo + public static void SetSerialNo(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.SerialNo, value); + } + public static string GetSerialNo(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.SerialNo); + } + + //Province + public static void SetProvince(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.Province, value); + } + public static string GetProvince(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.Province); + } + + //District + public static void SetDistrict(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.District, value); + } + public static string GetDistrict(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.District); + } + + //Village + public static void SetVillage(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.Village, value); + } + public static string GetVillage(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.Village); + } + + //VolumeNo + public static void SetVolumeNo(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.VolumeNo, value); + } + public static string GetVolumeNo(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.VolumeNo); + } + + //FamilySequenceNo + public static void SetFamilySequenceNo(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.FamilySequenceNo, value); + } + public static string GetFamilySequenceNo(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.FamilySequenceNo); + } + + //SequenceNo + public static void SetSequenceNo(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.SequenceNo, value); + } + public static string GetSequenceNo(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.SequenceNo); + } + + //IssuedPlace + public static void SetIssuedPlace(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.IssuedPlace, value); + } + public static string GetIssuedPlace(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.IssuedPlace); + } + + //IssuedDate + public static void SetIssuedDate(this IdentityUser user, DateTime? value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.IssuedDate, value); + } + public static DateTime? GetIssuedDate(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.IssuedDate); + } + + //BirthPlace + public static void SetBirthPlace(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.BirthPlace, value); + } + public static string GetBirthPlace(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.BirthPlace); + } + + //BirthDate + public static void SetBirthDate(this IdentityUser user, DateTime? value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.BirthDate, value); + } + public static DateTime? GetBirthDate(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.BirthDate); + } + + //FatherName + public static void SetFatherName(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.FatherName, value); + } + public static string GetFatherName(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.FatherName); + } + + //MotherName + public static void SetMotherName(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.MotherName, value); + } + public static string GetMotherName(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.MotherName); + } + + //MaritalStatus + public static void SetMaritalStatus(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.MaritalStatus, value); + } + public static string GetMaritalStatus(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.MaritalStatus); + } + + //MarriageDate + public static void SetMarriageDate(this IdentityUser user, DateTime? value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.MarriageDate, value); + } + public static DateTime? GetMarriageDate(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.MarriageDate); + } + + //HomeAddress + public static void SetHomeAddress(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.HomeAddress, value); + } + public static string GetHomeAddress(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.HomeAddress); + } + + //EducationLevel + public static void SetEducationLevel(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.EducationLevel, value); + } + public static string GetEducationLevel(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.EducationLevel); + } + + //GraduationSchool + public static void SetGraduationSchool(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.GraduationSchool, value); + } + public static string GetGraduationSchool(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.GraduationSchool); + } + + //BloodType + public static void SetBloodType(this IdentityUser user, string value) + { + user.SetProperty(PlatformConsts.AbpIdentity.User.BloodType, value); + } + public static string GetBloodType(this IdentityUser user) + { + return user.GetProperty(PlatformConsts.AbpIdentity.User.BloodType); + } } diff --git a/api/src/Sozsoft.Platform.EntityFrameworkCore/EntityFrameworkCore/PlatformEfCoreEntityExtensionMappings.cs b/api/src/Sozsoft.Platform.EntityFrameworkCore/EntityFrameworkCore/PlatformEfCoreEntityExtensionMappings.cs index 34a3b9f..8ffe540 100644 --- a/api/src/Sozsoft.Platform.EntityFrameworkCore/EntityFrameworkCore/PlatformEfCoreEntityExtensionMappings.cs +++ b/api/src/Sozsoft.Platform.EntityFrameworkCore/EntityFrameworkCore/PlatformEfCoreEntityExtensionMappings.cs @@ -73,6 +73,222 @@ public static class PlatformEfCoreEntityExtensionMappings } ); + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.Nationality, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.SskNo, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(32).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.HireDate, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.TerminationDate, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.IdentityNumber, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(15).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.SerialNo, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(32).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.Province, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.District, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.Village, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.VolumeNo, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(32).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.FamilySequenceNo, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(32).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.SequenceNo, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(32).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.IssuedPlace, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(256).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.IssuedDate, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.BirthPlace, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(256).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.BirthDate, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.FatherName, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.MotherName, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.MaritalStatus, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(32).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.MarriageDate, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.HomeAddress, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(512).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.EducationLevel, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(128).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.GraduationSchool, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(256).HasDefaultValue(null); + } + ); + + ObjectExtensionManager.Instance + .MapEfCoreProperty( + PlatformConsts.AbpIdentity.User.BloodType, + (entityBuilder, propertyBuilder) => + { + propertyBuilder.HasMaxLength(16).HasDefaultValue(null); + } + ); + ObjectExtensionManager.Instance .MapEfCoreProperty( PlatformConsts.Tenants.IsActive, diff --git a/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260504141857_Initial.Designer.cs b/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260505071050_Initial.Designer.cs similarity index 98% rename from api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260504141857_Initial.Designer.cs rename to api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260505071050_Initial.Designer.cs index 60fee9c..5276f3c 100644 --- a/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260504141857_Initial.Designer.cs +++ b/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260505071050_Initial.Designer.cs @@ -13,7 +13,7 @@ using Volo.Abp.EntityFrameworkCore; namespace Sozsoft.Platform.Migrations { [DbContext(typeof(PlatformDbContext))] - [Migration("20260504141857_Initial")] + [Migration("20260505071050_Initial")] partial class Initial { /// @@ -5049,6 +5049,17 @@ namespace Sozsoft.Platform.Migrations .HasDefaultValue(0) .HasColumnName("AccessFailedCount"); + b.Property("BirthDate") + .HasColumnType("datetime2"); + + b.Property("BirthPlace") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("BloodType") + .HasMaxLength(16) + .HasColumnType("nvarchar(16)"); + b.Property("ConcurrencyStamp") .IsConcurrencyToken() .IsRequired() @@ -5075,6 +5086,14 @@ namespace Sozsoft.Platform.Migrations b.Property("DepartmentId") .HasColumnType("uniqueidentifier"); + b.Property("District") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("EducationLevel") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("Email") .IsRequired() .HasMaxLength(256) @@ -5095,6 +5114,29 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("nvarchar(max)") .HasColumnName("ExtraProperties"); + b.Property("FamilySequenceNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property("FatherName") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("GraduationSchool") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("HireDate") + .HasColumnType("datetime2"); + + b.Property("HomeAddress") + .HasMaxLength(512) + .HasColumnType("nvarchar(512)"); + + b.Property("IdentityNumber") + .HasMaxLength(15) + .HasColumnType("nvarchar(15)"); + b.Property("IsActive") .HasColumnType("bit") .HasColumnName("IsActive"); @@ -5116,6 +5158,13 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("bit") .HasDefaultValue(false); + b.Property("IssuedDate") + .HasColumnType("datetime2"); + + b.Property("IssuedPlace") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + b.Property("JobPositionId") .HasColumnType("uniqueidentifier"); @@ -5142,11 +5191,26 @@ namespace Sozsoft.Platform.Migrations b.Property("LoginEndDate") .HasColumnType("datetime2"); + b.Property("MaritalStatus") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property("MarriageDate") + .HasColumnType("datetime2"); + + b.Property("MotherName") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("Name") .HasMaxLength(64) .HasColumnType("nvarchar(64)") .HasColumnName("Name"); + b.Property("Nationality") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("NormalizedEmail") .IsRequired() .HasMaxLength(256) @@ -5175,6 +5239,10 @@ namespace Sozsoft.Platform.Migrations .HasDefaultValue(false) .HasColumnName("PhoneNumberConfirmed"); + b.Property("Province") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("RocketUsername") .HasColumnType("nvarchar(max)"); @@ -5184,9 +5252,21 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("nvarchar(256)") .HasColumnName("SecurityStamp"); + b.Property("SequenceNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property("SerialNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + b.Property("ShouldChangePasswordOnNextLogin") .HasColumnType("bit"); + b.Property("SskNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + b.Property("Surname") .HasMaxLength(64) .HasColumnType("nvarchar(64)") @@ -5196,6 +5276,9 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("uniqueidentifier") .HasColumnName("TenantId"); + b.Property("TerminationDate") + .HasColumnType("datetime2"); + b.Property("TwoFactorEnabled") .ValueGeneratedOnAdd() .HasColumnType("bit") @@ -5208,6 +5291,14 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("nvarchar(256)") .HasColumnName("UserName"); + b.Property("Village") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("VolumeNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + b.Property("WorkHour") .HasColumnType("nvarchar(max)"); diff --git a/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260504141857_Initial.cs b/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260505071050_Initial.cs similarity index 98% rename from api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260504141857_Initial.cs rename to api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260505071050_Initial.cs index 5159cb9..87f83b4 100644 --- a/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260504141857_Initial.cs +++ b/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/20260505071050_Initial.cs @@ -417,11 +417,35 @@ namespace Sozsoft.Platform.Migrations ShouldChangePasswordOnNextLogin = table.Column(type: "bit", nullable: false), EntityVersion = table.Column(type: "int", nullable: false), LastPasswordChangeTime = table.Column(type: "datetimeoffset", nullable: true), + BirthDate = table.Column(type: "datetime2", nullable: true), + BirthPlace = table.Column(type: "nvarchar(256)", maxLength: 256, nullable: true), + BloodType = table.Column(type: "nvarchar(16)", maxLength: 16, nullable: true), DepartmentId = table.Column(type: "uniqueidentifier", nullable: false), + District = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), + EducationLevel = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), + FamilySequenceNo = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), + FatherName = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), + GraduationSchool = table.Column(type: "nvarchar(256)", maxLength: 256, nullable: true), + HireDate = table.Column(type: "datetime2", nullable: true), + HomeAddress = table.Column(type: "nvarchar(512)", maxLength: 512, nullable: true), + IdentityNumber = table.Column(type: "nvarchar(15)", maxLength: 15, nullable: true), IsVerified = table.Column(type: "bit", nullable: false, defaultValue: false), + IssuedDate = table.Column(type: "datetime2", nullable: true), + IssuedPlace = table.Column(type: "nvarchar(256)", maxLength: 256, nullable: true), JobPositionId = table.Column(type: "uniqueidentifier", nullable: false), LoginEndDate = table.Column(type: "datetime2", nullable: true), + MaritalStatus = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), + MarriageDate = table.Column(type: "datetime2", nullable: true), + MotherName = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), + Nationality = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), + Province = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), RocketUsername = table.Column(type: "nvarchar(max)", nullable: true), + SequenceNo = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), + SerialNo = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), + SskNo = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), + TerminationDate = table.Column(type: "datetime2", nullable: true), + Village = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: true), + VolumeNo = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), WorkHour = table.Column(type: "nvarchar(max)", nullable: true), ExtraProperties = table.Column(type: "nvarchar(max)", nullable: false), ConcurrencyStamp = table.Column(type: "nvarchar(40)", maxLength: 40, nullable: false), diff --git a/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs b/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs index 038ef66..eb5b672 100644 --- a/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs +++ b/api/src/Sozsoft.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs @@ -5046,6 +5046,17 @@ namespace Sozsoft.Platform.Migrations .HasDefaultValue(0) .HasColumnName("AccessFailedCount"); + b.Property("BirthDate") + .HasColumnType("datetime2"); + + b.Property("BirthPlace") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("BloodType") + .HasMaxLength(16) + .HasColumnType("nvarchar(16)"); + b.Property("ConcurrencyStamp") .IsConcurrencyToken() .IsRequired() @@ -5072,6 +5083,14 @@ namespace Sozsoft.Platform.Migrations b.Property("DepartmentId") .HasColumnType("uniqueidentifier"); + b.Property("District") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("EducationLevel") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("Email") .IsRequired() .HasMaxLength(256) @@ -5092,6 +5111,29 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("nvarchar(max)") .HasColumnName("ExtraProperties"); + b.Property("FamilySequenceNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property("FatherName") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("GraduationSchool") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("HireDate") + .HasColumnType("datetime2"); + + b.Property("HomeAddress") + .HasMaxLength(512) + .HasColumnType("nvarchar(512)"); + + b.Property("IdentityNumber") + .HasMaxLength(15) + .HasColumnType("nvarchar(15)"); + b.Property("IsActive") .HasColumnType("bit") .HasColumnName("IsActive"); @@ -5113,6 +5155,13 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("bit") .HasDefaultValue(false); + b.Property("IssuedDate") + .HasColumnType("datetime2"); + + b.Property("IssuedPlace") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + b.Property("JobPositionId") .HasColumnType("uniqueidentifier"); @@ -5139,11 +5188,26 @@ namespace Sozsoft.Platform.Migrations b.Property("LoginEndDate") .HasColumnType("datetime2"); + b.Property("MaritalStatus") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property("MarriageDate") + .HasColumnType("datetime2"); + + b.Property("MotherName") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("Name") .HasMaxLength(64) .HasColumnType("nvarchar(64)") .HasColumnName("Name"); + b.Property("Nationality") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("NormalizedEmail") .IsRequired() .HasMaxLength(256) @@ -5172,6 +5236,10 @@ namespace Sozsoft.Platform.Migrations .HasDefaultValue(false) .HasColumnName("PhoneNumberConfirmed"); + b.Property("Province") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + b.Property("RocketUsername") .HasColumnType("nvarchar(max)"); @@ -5181,9 +5249,21 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("nvarchar(256)") .HasColumnName("SecurityStamp"); + b.Property("SequenceNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property("SerialNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + b.Property("ShouldChangePasswordOnNextLogin") .HasColumnType("bit"); + b.Property("SskNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + b.Property("Surname") .HasMaxLength(64) .HasColumnType("nvarchar(64)") @@ -5193,6 +5273,9 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("uniqueidentifier") .HasColumnName("TenantId"); + b.Property("TerminationDate") + .HasColumnType("datetime2"); + b.Property("TwoFactorEnabled") .ValueGeneratedOnAdd() .HasColumnType("bit") @@ -5205,6 +5288,14 @@ namespace Sozsoft.Platform.Migrations .HasColumnType("nvarchar(256)") .HasColumnName("UserName"); + b.Property("Village") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("VolumeNo") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + b.Property("WorkHour") .HasColumnType("nvarchar(max)"); diff --git a/ui/src/components/ui/utils/constants.ts b/ui/src/components/ui/utils/constants.ts index 21bda34..6dfa188 100644 --- a/ui/src/components/ui/utils/constants.ts +++ b/ui/src/components/ui/utils/constants.ts @@ -6,10 +6,10 @@ export enum SIZES { } export const CONTROL_SIZES = { - [SIZES.XS]: 7, - [SIZES.SM]: 9, - [SIZES.MD]: 11, - [SIZES.LG]: 14, + [SIZES.XS]: 6, + [SIZES.SM]: 8, + [SIZES.MD]: 10, + [SIZES.LG]: 12, } export const LAYOUT = { diff --git a/ui/src/proxy/admin/models.ts b/ui/src/proxy/admin/models.ts index 90d12fa..cb3ed35 100644 --- a/ui/src/proxy/admin/models.ts +++ b/ui/src/proxy/admin/models.ts @@ -140,6 +140,30 @@ export interface UserInfoViewModel extends ExtensibleObject { workHour?: string departmentId?: string jobPositionId?: string + nationality?: string + sskNo?: string + hireDate?: Date | string + terminationDate?: Date | string + identityNumber?: string + serialNo?: string + province?: string + district?: string + village?: string + volumeNo?: string + familySequenceNo?: string + sequenceNo?: string + issuedPlace?: string + issuedDate?: Date | string + birthPlace?: string + birthDate?: Date | string + fatherName?: string + motherName?: string + maritalStatus?: string + marriageDate?: Date | string + homeAddress?: string + educationLevel?: string + graduationSchool?: string + bloodType?: string } export interface AssignedRoleViewModel { diff --git a/ui/src/services/home.service.ts b/ui/src/services/home.service.ts index 342130d..7966776 100644 --- a/ui/src/services/home.service.ts +++ b/ui/src/services/home.service.ts @@ -128,6 +128,25 @@ export interface SaveHomePageInput { solutions: SaveHomeSolutionInput[] } +export interface CountryDto { + id: string; + + name: string; + groupName: string; + currency: string; + phoneCode: number; + taxLabel: string; + zipRequired: boolean; + stateRequired: boolean; + + cities: CityDto[]; +} + +export interface CityDto { + id: string; + name: string; +} + export function getHome() { return apiService.fetchData( { @@ -138,6 +157,16 @@ export function getHome() { ) } +export function getCountry() { + return apiService.fetchData( + { + method: 'GET', + url: '/api/app/public/country', + }, + { apiName: 'Default' }, + ) +} + export function saveHomePage(input: SaveHomePageInput) { return apiService.fetchData( { diff --git a/ui/src/views/admin/user-management/Details.tsx b/ui/src/views/admin/user-management/Details.tsx index af42d47..fa0900e 100644 --- a/ui/src/views/admin/user-management/Details.tsx +++ b/ui/src/views/admin/user-management/Details.tsx @@ -29,12 +29,21 @@ import { putUserLookout, putUserPermission, } from '@/services/identity.service' +import { CountryDto, getCountry } from '@/services/home.service' import { useLocalization } from '@/utils/hooks/useLocalization' import dayjs from 'dayjs' import { Field, FieldArray, FieldProps, Form, Formik, FormikHelpers } from 'formik' import { useEffect, useState } from 'react' import { Helmet } from 'react-helmet' -import { FaLockOpen, FaUser, FaFileAlt, FaTrashAlt, FaCheckCircle } from 'react-icons/fa' +import { + FaBuilding, + FaLockOpen, + FaUser, + FaFileAlt, + FaTrashAlt, + FaCheckCircle, + FaUserAstronaut, +} from 'react-icons/fa' import { useParams } from 'react-router-dom' import * as Yup from 'yup' import { SelectBoxOption, SelectBoxOptionWithGroup } from '@/types/shared' @@ -54,6 +63,7 @@ function UserDetails() { const [loading, setLoading] = useState(true) const [open, setOpen] = useState(false) const [confirmDeleteClaim, setConfirmDeleteClaim] = useState(null) + const [countries, setCountries] = useState([]) const getUser = async () => { const { data } = await getUserDetail(userId || '') @@ -62,6 +72,7 @@ function UserDetails() { useEffect(() => { getUser() + getCountry().then(({ data }) => setCountries(data)) }, []) const scheme = Yup.object().shape({ @@ -119,6 +130,12 @@ function UserDetails() { }> {translate('::Abp.Identity.User.Permissions')} + }> + {translate('::Abp.Identity.User.WorkInformation')} + + }> + {translate('::Abp.Identity.User.IndentityInformation')} + }> {translate('::Abp.Identity.User.LockoutManagement')} @@ -136,7 +153,7 @@ function UserDetails() { toast.push( - {translate('Kaydet')} + {translate('::Kaydet')} , { placement: 'top-end', @@ -148,22 +165,6 @@ function UserDetails() { }} > {({ isSubmitting, values }) => { - const departments = values.departments - const jobPositions = values.jobPositions - - const departmentOptions: SelectBoxOption[] = departments.map((department) => ({ - value: department.id, - label: department.name, - })) - - const jobPositionOptions: SelectBoxOptionWithGroup[] = jobPositions.map( - (jobPosition) => ({ - value: jobPosition.id, - label: jobPosition.name, - group: jobPosition.departmentId, - }), - ) - return (
@@ -196,59 +197,6 @@ function UserDetails() {
-
- - - {({ field, form }: FieldProps) => ( - option.group === values.departmentId, - )} - isClearable={true} - value={jobPositionOptions.filter( - (option) => option.value === values.jobPositionId, - )} - onChange={(option) => - form.setFieldValue(field.name, option?.value) - } - /> - )} - - -
-
{translate( @@ -276,7 +224,15 @@ function UserDetails() { component={Input} /> - + + + +
+
+
+ {translate( + '::Abp.Identity.User.UserInformation.AdditionalInformation', + )} +
+ + + {({ field, form }: FieldProps) => { + const nationalityOptions: SelectBoxOption[] = countries.map( + (c) => ({ value: c.name, label: c.name }), + ) + return ( + o.value === values.educationLevel, + )} + onChange={(option) => + form.setFieldValue(field.name, option?.value ?? null) + } + /> + ) + }} + + + + + + + + {({ field, form }: FieldProps) => { + const bloodTypeOptions: SelectBoxOption[] = [ + { value: 'A Rh+', label: 'A Rh+' }, + { value: 'A Rh-', label: 'A Rh-' }, + { value: 'B Rh+', label: 'B Rh+' }, + { value: 'B Rh-', label: 'B Rh-' }, + { value: 'AB Rh+', label: 'AB Rh+' }, + { value: 'AB Rh-', label: 'AB Rh-' }, + { value: '0 Rh+', label: '0 Rh+' }, + { value: '0 Rh-', label: '0 Rh-' }, + ] + return ( + option.value === values.departmentId, + )} + onChange={(option) => { + form.setFieldValue(field.name, option?.value) + form.setFieldValue('jobPositionId', null) + }} + /> + )} + + +
+ +
+ + + {({ field, form }: FieldProps) => ( + o.value === values.maritalStatus, + )} + onChange={(option) => + form.setFieldValue(field.name, option?.value ?? null) + } + /> + )} + + +
+ +
+ + + {({ field, form }: FieldProps) => ( + { + form.setFieldValue( + field.name, + date ? dayjs(date).format('YYYY-MM-DDTHH:mm:ss') : null, + ) + }} + /> + )} + + +
+ + + + +
+ +
+
+ ) + }} + + + +
+