diff --git a/api/src/Kurs.Platform.Application.Contracts/Orders/InstallmentOptionDto.cs b/api/src/Kurs.Platform.Application.Contracts/Orders/InstallmentOptionDto.cs index df535440..1f7b8109 100644 --- a/api/src/Kurs.Platform.Application.Contracts/Orders/InstallmentOptionDto.cs +++ b/api/src/Kurs.Platform.Application.Contracts/Orders/InstallmentOptionDto.cs @@ -5,6 +5,8 @@ namespace Kurs.Platform.Orders; public class InstallmentOptionDto : EntityDto { + public Guid? TenantId { get; set; } + public int Installment { get; set; } public string Name { get; set; } public decimal Commission { get; set; } diff --git a/api/src/Kurs.Platform.Application.Contracts/Orders/PaymentMethodDto.cs b/api/src/Kurs.Platform.Application.Contracts/Orders/PaymentMethodDto.cs index 3fcb7d1e..896e1a50 100644 --- a/api/src/Kurs.Platform.Application.Contracts/Orders/PaymentMethodDto.cs +++ b/api/src/Kurs.Platform.Application.Contracts/Orders/PaymentMethodDto.cs @@ -5,6 +5,8 @@ namespace Kurs.Platform.Orders; public class PaymentMethodDto : EntityDto { + public Guid? TenantId { get; set; } + public string Name { get; set; } public decimal Commission { get; set; } public string Logo { get; set; } diff --git a/api/src/Kurs.Platform.Application.Contracts/Orders/ProductDto.cs b/api/src/Kurs.Platform.Application.Contracts/Orders/ProductDto.cs index 21cb9110..0207ef89 100644 --- a/api/src/Kurs.Platform.Application.Contracts/Orders/ProductDto.cs +++ b/api/src/Kurs.Platform.Application.Contracts/Orders/ProductDto.cs @@ -5,6 +5,8 @@ namespace Kurs.Platform.Orders; public class ProductDto : EntityDto { + public Guid? TenantId { get; set; } + public string Name { get; set; } public string Description { get; set; } public string Category { get; set; } diff --git a/api/src/Kurs.Platform.Application/Blog/BlogAppService.cs b/api/src/Kurs.Platform.Application/Blog/BlogAppService.cs index e71645ca..256a6cf6 100644 --- a/api/src/Kurs.Platform.Application/Blog/BlogAppService.cs +++ b/api/src/Kurs.Platform.Application/Blog/BlogAppService.cs @@ -31,21 +31,19 @@ public class BlogAppService : PlatformAppService, IBlogAppService public async Task CreatePostAsync(CreateUpdateBlogPostDto input) { - var post = new BlogPost( - GuidGenerator.Create(), - input.Title, - input.Slug, - input.ContentTr, - input.ContentEn, - input.Summary, - input.ReadTime, - input.CoverImage, - input.CategoryId, - _currentUser.Id.Value, - true, - DateTime.UtcNow, - (Guid?)CurrentTenant.Id - ); + var post = new BlogPost + { + Title = input.Title, + Slug = input.Slug, + ContentTr = input.ContentTr, + ContentEn = input.ContentEn, + Summary = input.Summary, + ReadTime = input.ReadTime, + CoverImage = input.CoverImage, + CategoryId = input.CategoryId, + AuthorId = _currentUser.Id.Value, + IsPublished = true, + }; await _postRepository.InsertAsync(post, autoSave: true); @@ -167,17 +165,15 @@ public class BlogAppService : PlatformAppService, IBlogAppService [Authorize("App.BlogManagement.Create")] public async Task CreateCategoryAsync(CreateUpdateBlogCategoryDto input) { - var category = new BlogCategory( - GuidGenerator.Create(), - input.Name, - input.Slug, - input.Description, - CurrentTenant.Id - ); - - category.Icon = input.Icon; - category.DisplayOrder = input.DisplayOrder; - category.IsActive = input.IsActive; + var category = new BlogCategory + { + Name = input.Name, + Slug = input.Slug, + Description = input.Description, + Icon = input.Icon, + DisplayOrder = input.DisplayOrder, + IsActive = input.IsActive + }; await _categoryRepository.InsertAsync(category); diff --git a/api/src/Kurs.Platform.Application/Classroom/ClassroomAppService.cs b/api/src/Kurs.Platform.Application/Classroom/ClassroomAppService.cs index 61e66ea1..bf46a4d9 100644 --- a/api/src/Kurs.Platform.Application/Classroom/ClassroomAppService.cs +++ b/api/src/Kurs.Platform.Application/Classroom/ClassroomAppService.cs @@ -85,19 +85,19 @@ public class ClassroomAppService : PlatformAppService, IClassroomAppService public async Task CreateAsync(ClassroomDto input) { - var classSession = new Classroom( - GuidGenerator.Create(), - input.Name, - input.Description, - input.Subject, - CurrentUser.Id, - CurrentUser.Name, - input.ScheduledStartTime, - input.ScheduledStartTime.AddMinutes(input.Duration), - input.Duration, - input.MaxParticipants, - input.SettingsJson = JsonSerializer.Serialize(input.SettingsDto) - ); + var classSession = new Classroom + { + Name = input.Name, + Description = input.Description, + Subject = input.Subject, + TeacherId = CurrentUser.Id, + TeacherName = CurrentUser.Name, + ScheduledStartTime = input.ScheduledStartTime, + ScheduledEndTime = input.ScheduledStartTime.AddMinutes(input.Duration), + Duration = input.Duration, + MaxParticipants = input.MaxParticipants, + SettingsJson = JsonSerializer.Serialize(input.SettingsDto) + }; await _classSessionRepository.InsertAsync(classSession); diff --git a/api/src/Kurs.Platform.Application/Forum/ForumAppService.cs b/api/src/Kurs.Platform.Application/Forum/ForumAppService.cs index bcf8dcb3..dbe46ca2 100644 --- a/api/src/Kurs.Platform.Application/Forum/ForumAppService.cs +++ b/api/src/Kurs.Platform.Application/Forum/ForumAppService.cs @@ -152,18 +152,16 @@ public class ForumAppService : PlatformAppService, IForumAppService [Authorize("App.ForumManagement.Create")] public async Task CreateCategoryAsync(CreateForumCategoryDto input) { - var category = new ForumCategory( - GuidGenerator.Create(), - input.Name, - input.Slug, - input.Description, - input.Icon, - input.DisplayOrder, - input.TenantId - ) + var category = new ForumCategory { + Name = input.Name, + Slug = input.Slug, + Description = input.Description, + Icon = input.Icon, + DisplayOrder = input.DisplayOrder, IsActive = input.IsActive, IsLocked = input.IsLocked + }; await _categoryRepository.InsertAsync(category); diff --git a/api/src/Kurs.Platform.DbMigrator/Seeds/ListFormsSeeder.cs b/api/src/Kurs.Platform.DbMigrator/Seeds/ListFormsSeeder.cs index 53759801..5d90e36a 100644 --- a/api/src/Kurs.Platform.DbMigrator/Seeds/ListFormsSeeder.cs +++ b/api/src/Kurs.Platform.DbMigrator/Seeds/ListFormsSeeder.cs @@ -1225,28 +1225,28 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency { new() { Order=1, ColCount=2, ColSpan=1, ItemType="group", Items = [ - new EditingFormItemDto { Order=1, DataField="Name", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=2, DataField="OrganizationName", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=3, DataField="Founder", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=4, DataField="VknTckn", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, - new EditingFormItemDto { Order=5, DataField="TaxOffice", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=6, DataField="Mobile", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, - new EditingFormItemDto { Order=7, DataField="Phone", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxNumberBox }, - new EditingFormItemDto { Order=8, DataField="Fax", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=9, DataField="IsActive", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxCheckBox }, + new EditingFormItemDto { Order=1, DataField="Name", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=2, DataField="OrganizationName", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=3, DataField="Founder", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=4, DataField="VknTckn", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order=5, DataField="TaxOffice", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=6, DataField="Mobile", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order=7, DataField="Phone", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order=8, DataField="Fax", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=9, DataField="IsActive", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxCheckBox }, ] }, - new() { Order=2, ColCount=1, ColSpan=1, ItemType="group", Items = + new() { Order=2, ColCount=2, ColSpan=1, ItemType="group", Items = [ - new EditingFormItemDto { Order=1, DataField="Country", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=2, DataField="City", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=3, DataField="District", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=4, DataField="Street", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=5, DataField="PostalCode", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=6, DataField="Address", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=7, DataField="Address2", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=8, DataField="Email", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=9, DataField="Website", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=1, DataField="Country", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=2, DataField="City", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=3, DataField="District", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=4, DataField="Street", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=5, DataField="PostalCode", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=6, DataField="Address", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=7, DataField="Address2", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=8, DataField="Email", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=9, DataField="Website", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, ] } }), @@ -1857,7 +1857,7 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency }) }, ]); - #endregion + #endregion } #endregion @@ -1960,30 +1960,30 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency }), EditingFormJson = JsonSerializer.Serialize(new List() { - new() { Order=1, ColCount=2, ColSpan=1, ItemType="group", Items = + new() { Order=1, ColCount=1, ColSpan=1, ItemType="group", Items = [ - new EditingFormItemDto { Order=1, DataField="Name", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=2, DataField="OrganizationName", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=3, DataField="Founder", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=4, DataField="VknTckn", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, - new EditingFormItemDto { Order=5, DataField="TaxOffice", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=6, DataField="Mobile", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, - new EditingFormItemDto { Order=7, DataField="Phone", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxNumberBox }, - new EditingFormItemDto { Order=8, DataField="Fax", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=9, DataField="IsActive", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxCheckBox }, + new EditingFormItemDto { Order=1, DataField="Name", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=2, DataField="OrganizationName", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=3, DataField="Founder", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=4, DataField="VknTckn", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order=5, DataField="TaxOffice", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=6, DataField="Mobile", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order=7, DataField="Phone", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order=8, DataField="Fax", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=9, DataField="IsActive", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxCheckBox }, ] }, - new() { Order=2, ColCount=2, ColSpan=1, ItemType="group", Items = + new() { Order=2, ColCount=1, ColSpan=1, ItemType="group", Items = [ - new EditingFormItemDto { Order=1, DataField="Country", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=2, DataField="City", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=3, DataField="District", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=4, DataField="Street", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=5, DataField="PostalCode", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox, EditorOptions=showClearButton }, - new EditingFormItemDto { Order=6, DataField="Address", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=7, DataField="Address2", ColSpan=1, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=8, DataField="Email", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, - new EditingFormItemDto { Order=9, DataField="Website", ColSpan=1, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=1, DataField="Country", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=2, DataField="City", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=3, DataField="District", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=4, DataField="Street", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxSelectBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=5, DataField="PostalCode", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox, EditorOptions=showClearButton }, + new EditingFormItemDto { Order=6, DataField="Address", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=7, DataField="Address2", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=8, DataField="Email", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order=9, DataField="Website", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox }, ] } }), diff --git a/api/src/Kurs.Platform.DbMigrator/Seeds/PlatformDataSeeder.cs b/api/src/Kurs.Platform.DbMigrator/Seeds/PlatformDataSeeder.cs index 7d79e72d..1cb57ea4 100644 --- a/api/src/Kurs.Platform.DbMigrator/Seeds/PlatformDataSeeder.cs +++ b/api/src/Kurs.Platform.DbMigrator/Seeds/PlatformDataSeeder.cs @@ -704,7 +704,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency if (!exists) { - await _uomCategoryRepository.InsertAsync(new UomCategory { Name = item.Name }); + await _uomCategoryRepository.InsertAsync(new UomCategory { Name = item.Name }, autoSave: true); } } @@ -753,13 +753,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency if (!exists) { - await _skillTypeRepository.InsertAsync - ( - new SkillType - { - Name = item.Name - } - , autoSave: true); + await _skillTypeRepository.InsertAsync(new SkillType { Name = item.Name }, autoSave: true); } } @@ -776,7 +770,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency { Name = item.Name, SkillTypeId = skillType.Id - }, autoSave: true); + }); } } } @@ -796,7 +790,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency Progress = item.Progress, IsDefault = item.IsDefault, SkillTypeId = skillType.Id, - }, autoSave: true); + }); } } } @@ -844,7 +838,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency PostCount = item.PostCount }; - await _blogCategoryRepository.InsertAsync(newCategory); + await _blogCategoryRepository.InsertAsync(newCategory, autoSave: true); } } @@ -890,7 +884,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency DisplayOrder = item.DisplayOrder }; - await _forumCategoryRepository.InsertAsync(newCategory); + await _forumCategoryRepository.InsertAsync(newCategory, autoSave: true); } } @@ -983,10 +977,12 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency if (!exists) { - await _installmentOptionRepository.InsertAsync(new InstallmentOption( - item.Installment, - item.Name, - item.Commission)); + await _installmentOptionRepository.InsertAsync(new InstallmentOption + { + Installment = item.Installment, + Name = item.Name, + Commission = item.Commission + }); } } @@ -1311,10 +1307,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency if (!exists) { - await _eventTypeRepository.InsertAsync(new EventType - { - Name = item.Name - }); + await _eventTypeRepository.InsertAsync(new EventType { Name = item.Name }, autoSave: true); } } @@ -1324,10 +1317,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency if (!exists) { - await _eventCategoryRepository.InsertAsync(new EventCategory - { - Name = item.Name - }); + await _eventCategoryRepository.InsertAsync(new EventCategory { Name = item.Name }, autoSave: true); } } @@ -1383,7 +1373,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency { Name = item.Name, Status = item.Status - }); + }, autoSave: true); } } @@ -1422,7 +1412,7 @@ public class PlatformDataSeeder : IDataSeedContributor, ITransientDependency MinStudentCount = item.MinStudentCount, MaxStudentCount = item.MaxStudentCount, Status = item.Status - }); + }, autoSave: true); } } } diff --git a/api/src/Kurs.Platform.DbMigrator/Seeds/SeederData.json b/api/src/Kurs.Platform.DbMigrator/Seeds/SeederData.json index 37215c40..7b279694 100644 --- a/api/src/Kurs.Platform.DbMigrator/Seeds/SeederData.json +++ b/api/src/Kurs.Platform.DbMigrator/Seeds/SeederData.json @@ -9209,18 +9209,14 @@ "path": "/admin/menuManager", "componentPath": "@/views/menu/MenuManager", "routeType": "protected", - "authority": [ - "App.Menus.Manager" - ] + "authority": ["App.Menus.Manager"] }, { "key": "admin.listFormManagement.wizard", "path": "/admin/listform/wizard", "componentPath": "@/views/admin/listForm/Wizard", "routeType": "protected", - "authority": [ - "App.Listforms.Wizard" - ] + "authority": ["App.Listforms.Wizard"] }, { "key": "admin.listFormManagement.edit", @@ -9234,18 +9230,14 @@ "path": "/admin/forumManagement", "componentPath": "@/views/forum/Management", "routeType": "protected", - "authority": [ - "App.ForumManagement" - ] + "authority": ["App.ForumManagement"] }, { "key": "admin.ai", "path": "/admin/ai", "componentPath": "@/views/ai/Assistant", "routeType": "protected", - "authority": [ - "Abp.Identity.Ai" - ] + "authority": ["Abp.Identity.Ai"] }, { "key": "admin.profile.general", @@ -9287,36 +9279,28 @@ "path": "/admin/settings", "componentPath": "@/views/settings/Settings", "routeType": "protected", - "authority": [ - "App.Setting" - ] + "authority": ["App.Setting"] }, { "key": "admin.identity.user.detail", "path": "/admin/users/detail/:userId", "componentPath": "@/views/admin/user-management/Details", "routeType": "protected", - "authority": [ - "AbpIdentity.Users.Update" - ] + "authority": ["AbpIdentity.Users.Update"] }, { "key": "admin.identity.ous", "path": "/admin/ous", "componentPath": "@/views/admin/organization-unit/OrganizationUnits", "routeType": "protected", - "authority": [ - "Abp.Identity.OrganizationUnits" - ] + "authority": ["Abp.Identity.OrganizationUnits"] }, { "key": "admin.forum", "path": "/admin/forum", "componentPath": "@/views/forum/Forum", "routeType": "protected", - "authority": [ - "App.ForumManagement.Publish" - ] + "authority": ["App.ForumManagement.Publish"] }, { "key": "admin.list", @@ -9365,144 +9349,112 @@ "path": "/admin/developerkit", "componentPath": "@/views/developerKit/DashboardPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit" - ] + "authority": ["App.DeveloperKit"] }, { "key": "admin.developerkit.entities", "path": "/admin/developerkit/entities", "componentPath": "@/views/developerKit/EntityPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Entity" - ] + "authority": ["App.DeveloperKit.Entity"] }, { "key": "admin.developerkit.entities.new", "path": "/admin/developerkit/entities/new", "componentPath": "@/views/developerKit/EntityDetailPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Entity" - ] + "authority": ["App.DeveloperKit.Entity"] }, { "key": "admin.developerkit.entities.edit", "path": "/admin/developerkit/entities/edit/:id", "componentPath": "@/views/developerKit/EntityDetailPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Entity" - ] + "authority": ["App.DeveloperKit.Entity"] }, { "key": "admin.developerkit.migrations", "path": "/admin/developerkit/migrations", "componentPath": "@/views/developerKit/MigrationPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Migrations" - ] + "authority": ["App.DeveloperKit.Migrations"] }, { "key": "admin.developerkit.endpoints", "path": "/admin/developerkit/endpoints", "componentPath": "@/views/developerKit/EndpointPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Endpoints" - ] + "authority": ["App.DeveloperKit.Endpoints"] }, { "key": "admin.developerkit.components", "path": "/admin/developerkit/components", "componentPath": "@/views/developerKit/ComponentPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Components" - ] + "authority": ["App.DeveloperKit.Components"] }, { "key": "admin.developerkit.components.new", "path": "/admin/developerkit/components/new", "componentPath": "@/views/developerKit/ComponentDetailPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Components" - ] + "authority": ["App.DeveloperKit.Components"] }, { "key": "admin.developerkit.components.view", "path": "/admin/developerkit/components/view/:id", "componentPath": "@/views/developerKit/ComponentDetailPage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Components" - ] + "authority": ["App.DeveloperKit.Components"] }, { "key": "admin.developerkit.components.edit", "path": "/admin/developerkit/components/edit/:id", "componentPath": "@/views/developerKit/CodePage", "routeType": "protected", - "authority": [ - "App.DeveloperKit.Components" - ] + "authority": ["App.DeveloperKit.Components"] }, { "key": "admin.reportManagement", "path": "/admin/reports/management", "componentPath": "@/views/report/DashboardPage", "routeType": "protected", - "authority": [ - "App.Reports.Management" - ] + "authority": ["App.Reports.Management"] }, { "key": "admin.reports.view", "path": "/admin/reports/:id", "componentPath": "@/views/report/ReportViewerPage", "routeType": "protected", - "authority": [ - "App.Reports.Categories" - ] + "authority": ["App.Reports.Categories"] }, { "key": "admin.classroom.dashboard", "path": "/admin/classroom/dashboard", "componentPath": "@/views/classroom/Dashboard", "routeType": "protected", - "authority": [ - "App.Classroom.Dashboard" - ] + "authority": ["App.Classroom.Dashboard"] }, { "key": "admin.classroom.classes", "path": "/admin/classroom/classes", "componentPath": "@/views/classroom/ClassList", "routeType": "protected", - "authority": [ - "App.Classroom.List" - ] + "authority": ["App.Classroom.List"] }, { "key": "admin.classroom.classroom", "path": "/admin/classroom/room/:id", "componentPath": "@/views/classroom/RoomDetail", "routeType": "protected", - "authority": [ - "App.Classroom.RoomDetail" - ] + "authority": ["App.Classroom.RoomDetail"] }, { "key": "admin.classroom.planning", "path": "/admin/classroom/planning/:id", "componentPath": "@/views/classroom/PlanningPage", "routeType": "protected", - "authority": [ - "App.Classroom.Planning" - ] + "authority": ["App.Classroom.Planning"] }, { "key": "admin.supplychain.materialTypes", @@ -21396,10 +21348,7 @@ "descriptionKey": "Abp.Localization.DefaultLanguage.Description", "defaultValue": "en", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.SiteManagement", @@ -21433,10 +21382,7 @@ "descriptionKey": "Abp.Localization.Timezone.Description", "defaultValue": "UTC", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.SiteManagement", @@ -21592,11 +21538,7 @@ "descriptionKey": "App.SiteManagement.Theme.Style.Description", "defaultValue": "dx.light.compact", "isVisibleToClients": true, - "providers": [ - "U", - "G", - "D" - ], + "providers": ["U", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.SiteManagement", @@ -21644,10 +21586,7 @@ "descriptionKey": "App.SiteManagement.General.NewMemberNotificationEmails.Description", "defaultValue": "system@sozsoft.com", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.SiteManagement", @@ -21663,10 +21602,7 @@ "descriptionKey": "App.SiteManagement.General.TimedLoginEmails.Description", "defaultValue": "system@sozsoft.com", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.SiteManagement", @@ -21682,11 +21618,7 @@ "descriptionKey": "App.Sender.Sms.PostaGuvercini.Url.Description", "defaultValue": "https://www.postaguvercini.com/api_http", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21702,11 +21634,7 @@ "descriptionKey": "App.Sender.Sms.PostaGuvercini.Username.Description", "defaultValue": "2AIlj4QlCrvlbDDBS/712A==", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": true, "mainGroupKey": "App.Sender", @@ -21722,11 +21650,7 @@ "descriptionKey": "App.Sender.Sms.PostaGuvercini.Password.Description", "defaultValue": "oTuwyZM9sxfJI+jDH5wJAw==", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": true, "mainGroupKey": "App.Sender", @@ -21742,11 +21666,7 @@ "descriptionKey": "App.Sender.WhatsApp.Url.Description", "defaultValue": "https://graph.facebook.com/v21.0", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21762,11 +21682,7 @@ "descriptionKey": "App.Sender.WhatsApp.PhoneNumberId.Description", "defaultValue": "442035112335974", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21782,11 +21698,7 @@ "descriptionKey": "App.Sender.WhatsApp.Token.Description", "defaultValue": "EAANoftqZAJ64BO5oPwXPqniUtNGF70u8TKvQVzGZBaYQh5UY8fYrgQkcXP9UbQUqT9PWRah1L7TzcBIiWQMacT8AkmZB33AP1begLoywIZCsQSdBSUz21GQaCowfVosYgBoXSyqH8irSBPQDLIjxxVxrC2n76SD9X6zPXeHgOqIPY92DqJXplstWrlhtZCAZDZD", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21802,11 +21714,7 @@ "descriptionKey": "App.Sender.WhatsApp.TemplateName.Description", "defaultValue": "kurs_platform_notification", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21822,10 +21730,7 @@ "descriptionKey": "App.Sender.Rocket.Url.Description", "defaultValue": "https://chat.sozsoft.com/api/v1", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21841,10 +21746,7 @@ "descriptionKey": "App.Sender.Rocket.UserId.Description", "defaultValue": "LfpzPjzag4QJXm84N", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21860,10 +21762,7 @@ "descriptionKey": "App.Sender.Rocket.Token.Description", "defaultValue": "jvqALawvXn0Q7c6FfHJV3h58DCHDfQLgFF5y7oIc7oc", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "App.Sender", @@ -21879,11 +21778,7 @@ "descriptionKey": "Abp.Mailing.DefaultFromDisplayName.Description", "defaultValue": "Kurs", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -21899,11 +21794,7 @@ "descriptionKey": "Abp.Mailing.DefaultFromAddress.Description", "defaultValue": "system@sozsoft.com", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -21919,11 +21810,7 @@ "descriptionKey": "Abp.Mailing.Smtp.UserName.Description", "defaultValue": "system@sozsoft.com", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -21939,11 +21826,7 @@ "descriptionKey": "Abp.Mailing.Smtp.Password.Description", "defaultValue": "QT9L7BCl1CT/1Hq19HoSlQ==", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": true, "mainGroupKey": "Abp.Mailing", @@ -21959,11 +21842,7 @@ "descriptionKey": "Abp.Mailing.Smtp.Host.Description", "defaultValue": "127.0.0.1", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -21979,11 +21858,7 @@ "descriptionKey": "Abp.Mailing.Smtp.Port.Description", "defaultValue": "25", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -21999,11 +21874,7 @@ "descriptionKey": "Abp.Mailing.Smtp.Domain.Description", "defaultValue": "sozsoft.com", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -22019,11 +21890,7 @@ "descriptionKey": "Abp.Mailing.Smtp.EnableSsl.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -22039,11 +21906,7 @@ "descriptionKey": "Abp.Mailing.AWS.Profile.Description", "defaultValue": "mail-sdk-user", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -22059,11 +21922,7 @@ "descriptionKey": "Abp.Mailing.AWS.Region.Description", "defaultValue": "eu-central-1", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -22079,11 +21938,7 @@ "descriptionKey": "Abp.Mailing.AWS.AccessKey.Description", "defaultValue": "aXW8L21rP6dPO6Txj76Be2FCpWRBa25EMrSAVL76", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -22099,11 +21954,7 @@ "descriptionKey": "Abp.Mailing.AWS.AccessKeyId.Description", "defaultValue": "AKIATULUYBLX4IY3S2P1", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Mailing", @@ -22119,10 +21970,7 @@ "descriptionKey": "Abp.Account.IsSelfRegistrationEnabled.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22138,10 +21986,7 @@ "descriptionKey": "Abp.Account.EnableLocalLogin.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22157,11 +22002,7 @@ "descriptionKey": "Abp.Account.TwoFactor.Enabled.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22177,10 +22018,7 @@ "descriptionKey": "Abp.Account.Captcha.MaxFailedAccessAttempts.Description", "defaultValue": "3", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22196,10 +22034,7 @@ "descriptionKey": "Abp.Account.Captcha.EndPoint.Description", "defaultValue": "https://challenges.cloudflare.com/turnstile/v0/siteverify", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22215,10 +22050,7 @@ "descriptionKey": "Abp.Account.Captcha.SiteKey.Description", "defaultValue": "0x4AAAAAAAGadwQME-GSYuJU", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22234,10 +22066,7 @@ "descriptionKey": "Abp.Account.Captcha.SecretKey.Description", "defaultValue": "0x4AAAAAAAGad_f_WP47IcNBs9FTu5DhNX8", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Account", @@ -22253,11 +22082,7 @@ "descriptionKey": "Abp.Identity.Profile.General.RequireVerifiedAccount.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22273,11 +22098,7 @@ "descriptionKey": "Abp.Identity.Profile.General.BlacklistedEmailProviders.Description", "defaultValue": "gmail.com\r\nyahoo.com\r\nhotmail.com", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22293,11 +22114,7 @@ "descriptionKey": "Abp.Identity.Password.ForceUsersToPeriodicallyChangePassword.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22313,11 +22130,7 @@ "descriptionKey": "Abp.Identity.Password.PasswordChangePeriodDays.Description", "defaultValue": "0", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22333,11 +22146,7 @@ "descriptionKey": "Abp.Identity.Password.RequiredLength.Description", "defaultValue": "6", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22353,11 +22162,7 @@ "descriptionKey": "Abp.Identity.Password.RequiredUniqueChars.Description", "defaultValue": "1", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22373,11 +22178,7 @@ "descriptionKey": "Abp.Identity.Password.RequireNonAlphanumeric.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22393,11 +22194,7 @@ "descriptionKey": "Abp.Identity.Password.RequireLowercase.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22413,11 +22210,7 @@ "descriptionKey": "Abp.Identity.Password.RequireUppercase.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22433,11 +22226,7 @@ "descriptionKey": "Abp.Identity.Password.RequireDigit.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22453,11 +22242,7 @@ "descriptionKey": "Abp.Identity.Lockout.AllowedForNewUsers.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22473,11 +22258,7 @@ "descriptionKey": "Abp.Identity.Lockout.LockoutDuration.Description", "defaultValue": "300", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22493,11 +22274,7 @@ "descriptionKey": "Abp.Identity.Lockout.MaxFailedAccessAttempts.Description", "defaultValue": "5", "isVisibleToClients": false, - "providers": [ - "T", - "G", - "D" - ], + "providers": ["T", "G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22513,10 +22290,7 @@ "descriptionKey": "Abp.Identity.SignIn.RequireConfirmedEmail.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22532,10 +22306,7 @@ "descriptionKey": "Abp.Identity.SignIn.RequireConfirmedPhoneNumber.Description", "defaultValue": "False", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22551,10 +22322,7 @@ "descriptionKey": "Abp.Identity.User.IsUserNameUpdateEnabled.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -22570,10 +22338,7 @@ "descriptionKey": "Abp.Identity.User.IsEmailUpdateEnabled.Description", "defaultValue": "True", "isVisibleToClients": false, - "providers": [ - "G", - "D" - ], + "providers": ["G", "D"], "isInherited": false, "isEncrypted": false, "mainGroupKey": "Abp.Identity", @@ -24188,175 +23953,173 @@ ], "SkillTypes": [ { - "Id": "1e97bf2c-dec8-50bb-af20-70e71d752874", "Name": "Diller" }, { - "Id": "2e97bf2c-dec8-50bb-af20-70e71d752874", "Name": "Soft Skills" } ], "Skills": [ { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Spanish" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Fransızca" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "English" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "German" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Filipino" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Arabic" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Bengali" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Mandarin Chinese" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Wu Chinese" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Hindi" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Russian" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Portuguese" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Indonesian" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Urdu" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Japonca" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Punjabi" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Javanese" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Telugu" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Turkish" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Korean" }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "Marathi" }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Adaptability" }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Critical Thinking" }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "İletişim" } ], "SkillLevels": [ { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "C2", "Progress": 100, "IsDefault": false }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "C1", "Progress": 85, "IsDefault": false }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "B2", "Progress": 75, "IsDefault": false }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "B1", "Progress": 60, "IsDefault": false }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "A2", "Progress": 40, "IsDefault": false }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Diller", "Name": "A1", "Progress": 10, "IsDefault": true }, { - "SkillTypeId": "1e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Expert", "Progress": 100, "IsDefault": false }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Advanced", "Progress": 80, "IsDefault": false }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Intermediate", "Progress": 50, "IsDefault": false }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Elementary", "Progress": 25, "IsDefault": false }, { - "SkillTypeId": "2e97bf2c-dec8-50bb-af20-70e71d752874", + "SkillTypeName": "Soft Skills", "Name": "Beginner", "Progress": 15, "IsDefault": true @@ -24777,9 +24540,7 @@ "props": null, "description": null, "isActive": true, - "dependencies": [ - "AxiosListComponent" - ] + "dependencies": ["AxiosListComponent"] } ], "ReportCategories": [ @@ -26394,4 +26155,4 @@ "MonthlyPaymentRate": null } ] -} \ No newline at end of file +} diff --git a/api/src/Kurs.Platform.Domain/Entities/Saas/Public/InstallmentOption.cs b/api/src/Kurs.Platform.Domain/Entities/Saas/Public/InstallmentOption.cs index 72152006..25767824 100644 --- a/api/src/Kurs.Platform.Domain/Entities/Saas/Public/InstallmentOption.cs +++ b/api/src/Kurs.Platform.Domain/Entities/Saas/Public/InstallmentOption.cs @@ -1,20 +1,14 @@ using System; -using Volo.Abp.Domain.Entities; +using Volo.Abp.Domain.Entities.Auditing; +using Volo.Abp.MultiTenancy; namespace Kurs.Platform.Entities; -public class InstallmentOption : Entity +public class InstallmentOption : FullAuditedEntity, IMultiTenant { + public Guid? TenantId { get; set; } + public int Installment { get; set; } public string Name { get; set; } public decimal Commission { get; set; } - - public InstallmentOption() { } - - public InstallmentOption(int installment, string name, decimal commission) - { - Installment = installment; - Name = name; - Commission = commission; - } } diff --git a/api/src/Kurs.Platform.Domain/Entities/Saas/Public/PaymentMethod.cs b/api/src/Kurs.Platform.Domain/Entities/Saas/Public/PaymentMethod.cs index fbf31826..759ed8e1 100644 --- a/api/src/Kurs.Platform.Domain/Entities/Saas/Public/PaymentMethod.cs +++ b/api/src/Kurs.Platform.Domain/Entities/Saas/Public/PaymentMethod.cs @@ -1,10 +1,13 @@ using System; using Volo.Abp.Domain.Entities.Auditing; +using Volo.Abp.MultiTenancy; namespace Kurs.Platform.Entities; -public class PaymentMethod : FullAuditedEntity +public class PaymentMethod : FullAuditedEntity, IMultiTenant { + public Guid? TenantId { get; set; } + public string Name { get; set; } public decimal Commission { get; set; } public string Logo { get; set; } diff --git a/api/src/Kurs.Platform.Domain/Entities/Saas/Public/Product.cs b/api/src/Kurs.Platform.Domain/Entities/Saas/Public/Product.cs index cf299246..3ed3cb68 100644 --- a/api/src/Kurs.Platform.Domain/Entities/Saas/Public/Product.cs +++ b/api/src/Kurs.Platform.Domain/Entities/Saas/Public/Product.cs @@ -1,10 +1,13 @@ using System; using Volo.Abp.Domain.Entities.Auditing; +using Volo.Abp.MultiTenancy; namespace Kurs.Platform.Entities; -public class Product : FullAuditedEntity +public class Product : FullAuditedEntity, IMultiTenant { + public Guid? TenantId { get; set; } + public string Name { get; set; } public string Description { get; set; } public string Category { get; set; } diff --git a/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251006221403_Initial.Designer.cs b/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251007062517_Initial.Designer.cs similarity index 99% rename from api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251006221403_Initial.Designer.cs rename to api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251007062517_Initial.Designer.cs index c1e0b2bf..215c56ff 100644 --- a/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251006221403_Initial.Designer.cs +++ b/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251007062517_Initial.Designer.cs @@ -13,7 +13,7 @@ using Volo.Abp.EntityFrameworkCore; namespace Kurs.Platform.Migrations { [DbContext(typeof(PlatformDbContext))] - [Migration("20251006221403_Initial")] + [Migration("20251007062517_Initial")] partial class Initial { /// @@ -3178,14 +3178,48 @@ namespace Kurs.Platform.Migrations .HasPrecision(5, 3) .HasColumnType("decimal(5,3)"); + b.Property("CreationTime") + .HasColumnType("datetime2") + .HasColumnName("CreationTime"); + + b.Property("CreatorId") + .HasColumnType("uniqueidentifier") + .HasColumnName("CreatorId"); + + b.Property("DeleterId") + .HasColumnType("uniqueidentifier") + .HasColumnName("DeleterId"); + + b.Property("DeletionTime") + .HasColumnType("datetime2") + .HasColumnName("DeletionTime"); + b.Property("Installment") .HasColumnType("int"); + b.Property("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property("LastModificationTime") + .HasColumnType("datetime2") + .HasColumnName("LastModificationTime"); + + b.Property("LastModifierId") + .HasColumnType("uniqueidentifier") + .HasColumnName("LastModifierId"); + b.Property("Name") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)"); + b.Property("TenantId") + .HasColumnType("uniqueidentifier") + .HasColumnName("TenantId"); + b.HasKey("Id"); b.ToTable("WInstallmentOption", (string)null); @@ -4748,6 +4782,10 @@ namespace Kurs.Platform.Migrations .HasMaxLength(64) .HasColumnType("nvarchar(64)"); + b.Property("TenantId") + .HasColumnType("uniqueidentifier") + .HasColumnName("TenantId"); + b.HasKey("Id"); b.ToTable("WPaymentMethod", (string)null); @@ -4816,6 +4854,10 @@ namespace Kurs.Platform.Migrations b.Property("Order") .HasColumnType("int"); + b.Property("TenantId") + .HasColumnType("uniqueidentifier") + .HasColumnName("TenantId"); + b.Property("YearlyPrice") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); diff --git a/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251006221403_Initial.cs b/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251007062517_Initial.cs similarity index 99% rename from api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251006221403_Initial.cs rename to api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251007062517_Initial.cs index 01d838a2..21b8c248 100644 --- a/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251006221403_Initial.cs +++ b/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/20251007062517_Initial.cs @@ -1890,9 +1890,17 @@ namespace Kurs.Platform.Migrations columns: table => new { Id = table.Column(type: "uniqueidentifier", nullable: false), + TenantId = table.Column(type: "uniqueidentifier", nullable: true), Installment = table.Column(type: "int", nullable: false), Name = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: false), - Commission = table.Column(type: "decimal(5,3)", precision: 5, scale: 3, nullable: false) + Commission = table.Column(type: "decimal(5,3)", precision: 5, scale: 3, nullable: false), + CreationTime = table.Column(type: "datetime2", nullable: false), + CreatorId = table.Column(type: "uniqueidentifier", nullable: true), + LastModificationTime = table.Column(type: "datetime2", nullable: true), + LastModifierId = table.Column(type: "uniqueidentifier", nullable: true), + IsDeleted = table.Column(type: "bit", nullable: false, defaultValue: false), + DeleterId = table.Column(type: "uniqueidentifier", nullable: true), + DeletionTime = table.Column(type: "datetime2", nullable: true) }, constraints: table => { @@ -1945,6 +1953,7 @@ namespace Kurs.Platform.Migrations columns: table => new { Id = table.Column(type: "uniqueidentifier", nullable: false), + TenantId = table.Column(type: "uniqueidentifier", nullable: true), Name = table.Column(type: "nvarchar(64)", maxLength: 64, nullable: false), Commission = table.Column(type: "decimal(5,3)", precision: 5, scale: 3, nullable: false), Logo = table.Column(type: "nvarchar(32)", maxLength: 32, nullable: true), @@ -1966,6 +1975,7 @@ namespace Kurs.Platform.Migrations columns: table => new { Id = table.Column(type: "uniqueidentifier", nullable: false), + TenantId = table.Column(type: "uniqueidentifier", nullable: true), Name = table.Column(type: "nvarchar(128)", maxLength: 128, nullable: false), Description = table.Column(type: "nvarchar(1000)", maxLength: 1000, nullable: true), Category = table.Column(type: "nvarchar(64)", maxLength: 64, nullable: false), diff --git a/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs b/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs index 88f9832b..5b1bcee5 100644 --- a/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs +++ b/api/src/Kurs.Platform.EntityFrameworkCore/Migrations/PlatformDbContextModelSnapshot.cs @@ -3175,14 +3175,48 @@ namespace Kurs.Platform.Migrations .HasPrecision(5, 3) .HasColumnType("decimal(5,3)"); + b.Property("CreationTime") + .HasColumnType("datetime2") + .HasColumnName("CreationTime"); + + b.Property("CreatorId") + .HasColumnType("uniqueidentifier") + .HasColumnName("CreatorId"); + + b.Property("DeleterId") + .HasColumnType("uniqueidentifier") + .HasColumnName("DeleterId"); + + b.Property("DeletionTime") + .HasColumnType("datetime2") + .HasColumnName("DeletionTime"); + b.Property("Installment") .HasColumnType("int"); + b.Property("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property("LastModificationTime") + .HasColumnType("datetime2") + .HasColumnName("LastModificationTime"); + + b.Property("LastModifierId") + .HasColumnType("uniqueidentifier") + .HasColumnName("LastModifierId"); + b.Property("Name") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)"); + b.Property("TenantId") + .HasColumnType("uniqueidentifier") + .HasColumnName("TenantId"); + b.HasKey("Id"); b.ToTable("WInstallmentOption", (string)null); @@ -4745,6 +4779,10 @@ namespace Kurs.Platform.Migrations .HasMaxLength(64) .HasColumnType("nvarchar(64)"); + b.Property("TenantId") + .HasColumnType("uniqueidentifier") + .HasColumnName("TenantId"); + b.HasKey("Id"); b.ToTable("WPaymentMethod", (string)null); @@ -4813,6 +4851,10 @@ namespace Kurs.Platform.Migrations b.Property("Order") .HasColumnType("int"); + b.Property("TenantId") + .HasColumnType("uniqueidentifier") + .HasColumnName("TenantId"); + b.Property("YearlyPrice") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)");