From 06558a1284c1e1ed5fbc4c5d5bbf06f5400fc9ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sedat=20=C3=96zt=C3=BCrk?= Date: Tue, 5 May 2026 23:17:50 +0300 Subject: [PATCH] Intranet Listeleri --- .../Seeds/LanguagesData.json | 56 +- .../Seeds/ListFormSeeder_Administration.cs | 1475 +++++++++++++++++ .../Seeds/MenusData.json | 151 +- .../Seeds/PermissionsData.json | 195 ++- .../Enums/TableNameEnum.cs | 5 +- .../PlatformConsts.cs | 25 +- .../Data/SeedConsts.cs | 20 +- .../Seeds/TenantData.json | 230 ++- 8 files changed, 2083 insertions(+), 74 deletions(-) diff --git a/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json b/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json index 0080cac..d6249cf 100644 --- a/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json +++ b/api/src/Sozsoft.Platform.DbMigrator/Seeds/LanguagesData.json @@ -2778,7 +2778,6 @@ "en": "Identity Information", "tr": "Kimlik Bilgileri" }, - { "resourceName": "Platform", "key": "App.EducationLevel.Primary", @@ -2821,7 +2820,6 @@ "en": "PhD", "tr": "Doktora" }, - { "resourceName": "Platform", "key": "Abp.Identity.User.UserInformation.AdditionalInformation", @@ -2923,19 +2921,19 @@ "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", @@ -6098,6 +6096,24 @@ "tr": "Sosyal Yorumlar", "en": "Social Comments" }, + { + "resourceName": "Platform", + "key": "App.Intranet.SurveyQuestion", + "tr": "Anket Soruları", + "en": "Survey Questions" + }, + { + "resourceName": "Platform", + "key": "App.Intranet.SurveyResponse", + "tr": "Anket Yanıtları", + "en": "Survey Responses" + }, + { + "resourceName": "Platform", + "key": "App.Intranet.Survey", + "tr": "Anketler", + "en": "Surveys" + }, { "resourceName": "Platform", "key": "App.Intranet.Events", @@ -12808,6 +12824,12 @@ "en": "Work Hour", "tr": "Çalışma Saati" }, + { + "resourceName": "Platform", + "key": "App.Listform.ListformField.UserId", + "en": "User Name", + "tr": "Kullanıcı Adı" + }, { "resourceName": "Platform", "key": "App.Listform.ListformField.ProductId", @@ -17104,7 +17126,6 @@ "en": "T-SQL Preview", "tr": "T-SQL Önizleme" }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.TableDesigner", @@ -17135,7 +17156,6 @@ "en": "Define columns, configure settings and deploy with T-SQL", "tr": "Sütunları tanımlayın, ayarları yapın ve T-SQL ile deploy edin" }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.LoadingColumns", @@ -17166,7 +17186,6 @@ "en": "Add Column", "tr": "Sütun Ekle" }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.ColumnName", @@ -17215,7 +17234,6 @@ "en": "Actions", "tr": "İşlem" }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.MoveUp", @@ -17240,7 +17258,6 @@ "en": "Edit", "tr": "Düzenle" }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.DuplicateColumnWarning", @@ -17259,7 +17276,6 @@ "en": "⛔ Full Audited Entity not selected. Go back and manually add an Id column (uniqueidentifier) as the primary key.", "tr": "⛔ Full Audited Entity seçili değil. Geri dönüp Id sütununu uniqueidentifier tipinde manuel olarak eklemelisiniz." }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.MenuName", @@ -17290,7 +17306,6 @@ "en": "Loading...", "tr": "Yükleniyor..." }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.LoadingFkConstraints", @@ -17333,7 +17348,6 @@ "en": "Required", "tr": "Zorunlu" }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.EditRelationship", @@ -17406,7 +17420,6 @@ "en": "Optional description...", "tr": "İsteğe bağlı açıklama..." }, - { "resourceName": "Platform", "key": "App.SqlQueryManager.GeneratedSqlDescription", @@ -17533,7 +17546,6 @@ "en": "Data Source", "tr": "Veri Kaynağı" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.Loading", @@ -17546,7 +17558,6 @@ "en": "Search table...", "tr": "Tablo ara..." }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.FilterAll", @@ -17565,7 +17576,6 @@ "en": "WITHOUT", "tr": "YOK" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.NoTablesFound", @@ -17590,7 +17600,6 @@ "en": "You can manage CRUD endpoints for the selected table", "tr": "Seçilen tablo için CRUD endpointlerini yönetebilirsiniz" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.DeleteAll", @@ -17609,7 +17618,6 @@ "en": "Create CRUD Endpoint", "tr": "CRUD Endpoint Oluştur" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.NoEndpointsYet", @@ -17622,7 +17630,6 @@ "en": "Click the \"Create CRUD Endpoint\" button", "tr": "\"CRUD Endpoint Oluştur\" butonuna tıklayın" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.Disable", @@ -17641,7 +17648,6 @@ "en": "Test / Details", "tr": "Test et / Detaylar" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.Parameters", @@ -17672,7 +17678,6 @@ "en": "Clear", "tr": "Temizle" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.CsharpCode", @@ -17685,7 +17690,6 @@ "en": "Copy", "tr": "Kopyala" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.CrudEndpoints.ActiveCount", @@ -17728,7 +17732,6 @@ "en": "Passive", "tr": "Pasif" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.DynamicServices.SearchPlaceholder", @@ -17753,7 +17756,6 @@ "en": "New Service", "tr": "Yeni Servis" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.DynamicServices.NoResults", @@ -17796,7 +17798,6 @@ "en": "An error occurred while deleting the service", "tr": "Servis silinirken hata oluştu" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.DynamicServices.EditTooltip", @@ -17809,7 +17810,6 @@ "en": "Delete", "tr": "Sil" }, - { "resourceName": "Platform", "key": "App.DeveloperKit.DynamicServices.Editor.EditTitle", @@ -17997,4 +17997,4 @@ "tr": "Başarıyla Kaydedildi" } ] -} +} \ No newline at end of file diff --git a/api/src/Sozsoft.Platform.DbMigrator/Seeds/ListFormSeeder_Administration.cs b/api/src/Sozsoft.Platform.DbMigrator/Seeds/ListFormSeeder_Administration.cs index 403114e..8cdac7f 100644 --- a/api/src/Sozsoft.Platform.DbMigrator/Seeds/ListFormSeeder_Administration.cs +++ b/api/src/Sozsoft.Platform.DbMigrator/Seeds/ListFormSeeder_Administration.cs @@ -2629,5 +2629,1480 @@ public class ListFormSeeder_Administration : IDataSeedContributor, ITransientDep #endregion } #endregion + + #region Announncements + listFormName = AppCodes.Intranet.Announcement; + if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + { + var listForm = await _listFormRepository.InsertAsync( + new ListForm() + { + ListFormType = ListFormTypeEnum.List, + PageSize = 10, + ExportJson = DefaultExportJson, + IsSubForm = false, + ShowNote = true, + LayoutJson = DefaultLayoutJson(), + CultureName = LanguageCodes.En, + ListFormCode = listFormName, + Name = listFormName, + Title = listFormName, + DataSourceCode = SeedConsts.DataSources.DefaultCode, + IsTenant = true, + IsBranch = false, + IsOrganizationUnit = false, + Description = listFormName, + SelectCommandType = SelectCommandTypeEnum.Table, + SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.Announcement)), + KeyFieldName = "Id", + KeyFieldDbSourceType = DbType.Guid, + DefaultFilter = DefaultFilterJson, + SortMode = GridOptions.SortModeSingle, + FilterRowJson = DefaultFilterRowJson, + HeaderFilterJson = DefaultHeaderFilterJson, + SearchPanelJson = DefaultSearchPanelJson, + GroupPanelJson = DefaultGroupPanelJson, + SelectionJson = DefaultSelectionSingleJson, + ColumnOptionJson = DefaultColumnOptionJson(), + PermissionJson = DefaultPermissionJson(listFormName), + DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.Announcement)), + DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + PagerOptionJson = DefaultPagerOptionJson, + EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 600, true, true, true, true, false), + InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + EditingFormJson = JsonSerializer.Serialize(new List() + { + new() { + Order=1, ColCount=1, ColSpan=1, ItemType="group", Items =[ + new EditingFormItemDto { Order = 1, DataField = "Title", ColSpan=1, IsRequired = true, EditorType2=EditorTypes.dxTextBox }, + new EditingFormItemDto { Order = 2, DataField = "Excerpt", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxTextBox }, + new EditingFormItemDto { Order = 3, DataField = "Content", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxHtmlEditor, EditorOptions = EditorOptionValues.HtmlEditorOptions }, + new EditingFormItemDto { Order = 4, DataField = "ImageUrl", ColSpan=1, EditorType2 = EditorTypes.dxTagBox }, + new EditingFormItemDto { Order = 5, DataField = "Category", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + new EditingFormItemDto { Order = 6, DataField = "UserId", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + new EditingFormItemDto { Order = 7, DataField = "PublishDate", ColSpan=1, EditorType2 = EditorTypes.dxDateBox }, + new EditingFormItemDto { Order = 8, DataField = "ExpiryDate", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxDateBox }, + new EditingFormItemDto { Order = 9, DataField = "IsPinned", ColSpan=1, EditorType2 = EditorTypes.dxCheckBox }, + ]} + }), + FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] + { + new() { FieldName = "IsPinned", FieldDbType = DbType.Boolean, Value = "false", CustomValueType = FieldCustomValueTypeEnum.Value }, + new() { FieldName = "PublishDate", FieldDbType = DbType.Date, Value = "@NOW", CustomValueType = FieldCustomValueTypeEnum.CustomKey } + }) + } + ); + + #region Announcement Fields + await _listFormFieldRepository.InsertManyAsync([ + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "Id", + CaptionName = "App.Listform.ListformField.Id", + Width = 100, + ListOrderNo = 1, + Visible = false, + IsActive = true, + SortIndex = 0, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Title", + CaptionName = "App.Listform.ListformField.Title", + Width = 250, + ListOrderNo = 2, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Excerpt", + CaptionName = "App.Listform.ListformField.Excerpt", + Width = 300, + ListOrderNo = 3, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Content", + CaptionName = "App.Listform.ListformField.Content", + Width = 400, + ListOrderNo = 4, + Visible = false, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "ImageUrl", + CaptionName = "App.Listform.ListformField.ImageUrl", + Width = 200, + ListOrderNo = 5, + Visible = false, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Category", + CaptionName = "App.Listform.ListformField.Category", + Width = 100, + ListOrderNo = 6, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = JsonSerializer.Serialize(new LookupDto + { + DataSourceType = UiLookupDataSourceTypeEnum.StaticData, + DisplayExpr = "name", + ValueExpr = "key", + LookupQuery = JsonSerializer.Serialize(new LookupDataDto[] { + new () { Key= "general", Name= "General" }, + new () { Key= "event", Name= "Event" }, + new () { Key= "urgent", Name= "Urgent" }, + new () { Key= "announcement", Name= "Announcement" }, + }), + }), + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "UserId", + CaptionName = "App.Listform.ListformField.UserId", + Width = 100, + ListOrderNo = 7, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = JsonSerializer.Serialize(new LookupDto { + DataSourceType = UiLookupDataSourceTypeEnum.Query, + DisplayExpr = "Name", + ValueExpr = "Key", + LookupQuery = LookupQueryValues.UserValues + }), + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.DateTime, + FieldName = "PublishDate", + CaptionName = "App.Listform.ListformField.PublishDate", + Width = 125, + ListOrderNo = 8, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.DateTime, + FieldName = "ExpiryDate", + CaptionName = "App.Listform.ListformField.ExpiryDate", + Width = 125, + ListOrderNo = 9, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Boolean, + FieldName = "IsPinned", + CaptionName = "App.Listform.ListformField.IsPinned", + Width = 100, + ListOrderNo = 10, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + ]); + #endregion + } + #endregion + + #region Survey + listFormName = AppCodes.Intranet.Survey; + if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + { + var listForm = await _listFormRepository.InsertAsync( + new ListForm() + { + ListFormType = ListFormTypeEnum.List, + PageSize = 10, + ExportJson = DefaultExportJson, + IsSubForm = false, + ShowNote = true, + LayoutJson = DefaultLayoutJson(), + CultureName = LanguageCodes.En, + ListFormCode = listFormName, + Name = listFormName, + Title = listFormName, + DataSourceCode = SeedConsts.DataSources.DefaultCode, + IsTenant = true, + IsBranch = false, + IsOrganizationUnit = false, + Description = listFormName, + SelectCommandType = SelectCommandTypeEnum.Table, + SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.Survey)), + KeyFieldName = "Id", + KeyFieldDbSourceType = DbType.Guid, + DefaultFilter = DefaultFilterJson, + SortMode = GridOptions.SortModeSingle, + FilterRowJson = DefaultFilterRowJson, + HeaderFilterJson = DefaultHeaderFilterJson, + SearchPanelJson = DefaultSearchPanelJson, + GroupPanelJson = DefaultGroupPanelJson, + SelectionJson = DefaultSelectionSingleJson, + ColumnOptionJson = DefaultColumnOptionJson(), + PermissionJson = DefaultPermissionJson(listFormName), + DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.Survey)), + DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + PagerOptionJson = DefaultPagerOptionJson, + EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 500, true, true, true, true, false, true), + InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + EditingFormJson = JsonSerializer.Serialize(new List() + { + new() { + Order=1, ColCount=2, ColSpan=1, ItemType="group", Items =[ + new EditingFormItemDto { Order = 1, DataField = "Title", ColSpan=2, IsRequired = true, EditorType2 = EditorTypes.dxTextBox }, + new EditingFormItemDto { Order = 2, DataField = "Deadline", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxDateBox }, + new EditingFormItemDto { Order = 3, DataField = "Responses", ColSpan=1, EditorType2 = EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order = 4, DataField = "Status", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + new EditingFormItemDto { Order = 5, DataField = "IsAnonymous", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxCheckBox }, + ]} + }), + FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] + { + new() { FieldName = "IsAnonymous", FieldDbType = DbType.Boolean, Value = "false", CustomValueType = FieldCustomValueTypeEnum.Value }, + new() { FieldName = "Status", FieldDbType = DbType.String, Value = "active", CustomValueType = FieldCustomValueTypeEnum.Value } + }), + SubFormsJson = JsonSerializer.Serialize(new List() { + new { + TabType = ListFormTabTypeEnum.List, + TabTitle = AppCodes.Intranet.SurveyQuestion, + Code = AppCodes.Intranet.SurveyQuestion, + Relation = new List() { + new { + ParentFieldName = "Id", + DbType = DbType.Guid, + ChildFieldName = "SurveyId" + } + } + }, + new { + TabType = ListFormTabTypeEnum.List, + TabTitle = AppCodes.Intranet.SurveyResponse, + Code = AppCodes.Intranet.SurveyResponse, + Relation = new List() { + new { + ParentFieldName = "Id", + DbType = DbType.Guid, + ChildFieldName = "SurveyId" + } + } + } + }) + }, autoSave: true + ); + + #region Survey Fields + await _listFormFieldRepository.InsertManyAsync([ + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "Id", + CaptionName = "App.Listform.ListformField.Id", + Width = 100, + ListOrderNo = 1, + Visible = false, + IsActive = true, + SortIndex = 0, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Title", + CaptionName = "App.Listform.ListformField.Title", + Width = 400, + ListOrderNo = 2, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Date, + FieldName = "Deadline", + CaptionName = "App.Listform.ListformField.Deadline", + Width = 100, + ListOrderNo = 3, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Int32, + FieldName = "Responses", + CaptionName = "App.Listform.ListformField.Responses", + Width = 100, + ListOrderNo = 4, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Status", + CaptionName = "App.Listform.ListformField.Status", + Width = 100, + ListOrderNo = 5, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = JsonSerializer.Serialize(new LookupDto + { + DataSourceType = UiLookupDataSourceTypeEnum.StaticData, + DisplayExpr = "name", + ValueExpr = "key", + LookupQuery = JsonSerializer.Serialize(new LookupDataDto[] { + new () { Key= "active", Name= "Aktif" }, + new () { Key= "passive", Name= "Kapalı" }, + }), + }), + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Boolean, + FieldName = "IsAnonymous", + CaptionName = "App.Listform.ListformField.IsAnonymous", + Width = 100, + ListOrderNo = 6, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + ], autoSave: true); + #endregion + } + #endregion + + #region Survey Question + listFormName = AppCodes.Intranet.SurveyQuestion; + if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + { + var listForm = await _listFormRepository.InsertAsync( + new ListForm() + { + ListFormType = ListFormTypeEnum.List, + PageSize = 10, + ExportJson = DefaultExportJson, + IsSubForm = true, + ShowNote = true, + LayoutJson = DefaultLayoutJson(), + CultureName = LanguageCodes.En, + ListFormCode = listFormName, + Name = listFormName, + Title = listFormName, + DataSourceCode = SeedConsts.DataSources.DefaultCode, + IsTenant = true, + IsBranch = false, + IsOrganizationUnit = false, + Description = listFormName, + SelectCommandType = SelectCommandTypeEnum.Table, + SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.SurveyQuestion)), + KeyFieldName = "Id", + KeyFieldDbSourceType = DbType.Guid, + DefaultFilter = DefaultFilterJson, + SortMode = GridOptions.SortModeSingle, + FilterRowJson = DefaultFilterRowJson, + HeaderFilterJson = DefaultHeaderFilterJson, + SearchPanelJson = DefaultSearchPanelJson, + GroupPanelJson = DefaultGroupPanelJson, + SelectionJson = DefaultSelectionSingleJson, + ColumnOptionJson = DefaultColumnOptionJson(), + PermissionJson = DefaultPermissionJson(listFormName), + DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.SurveyQuestion)), + DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + PagerOptionJson = DefaultPagerOptionJson, + EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 400, true, true, true, true, false, true), + InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + EditingFormJson = JsonSerializer.Serialize(new List() + { + new() { + Order=1, ColCount=1, ColSpan=1, ItemType="group", Items = + [ + new EditingFormItemDto { Order = 1, DataField = "Order", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order = 2, DataField = "QuestionText", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxTextBox }, + new EditingFormItemDto { Order = 3, DataField = "Type", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + new EditingFormItemDto { Order = 4, DataField = "IsRequired", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxCheckBox } + ]} + }), + FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] + { + new() { FieldName = "IsRequired", FieldDbType = DbType.Boolean, Value = "false", CustomValueType = FieldCustomValueTypeEnum.Value }, + }), + }, autoSave: true + ); + + #region Survey Question Fields + await _listFormFieldRepository.InsertManyAsync([ + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "Id", + CaptionName = "App.Listform.ListformField.Id", + Width = 100, + ListOrderNo = 1, + Visible = false, + IsActive = true, + SortIndex = 0, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Int32, + FieldName = "Order", + CaptionName = "App.Listform.ListformField.Order", + Width = 100, + ListOrderNo = 2, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "QuestionText", + CaptionName = "App.Listform.ListformField.QuestionText", + Width = 300, + ListOrderNo = 3, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Type", + CaptionName = "App.Listform.ListformField.Type", + Width = 100, + ListOrderNo = 4, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = JsonSerializer.Serialize(new LookupDto + { + DataSourceType = UiLookupDataSourceTypeEnum.StaticData, + DisplayExpr = "name", + ValueExpr = "key", + LookupQuery = JsonSerializer.Serialize(new LookupDataDto[] { + new () { Key= "rating", Name= "Rating" }, + new () { Key= "multiple-choice", Name= "Multiple Choice" }, + new () { Key= "text", Name= "Text" }, + new () { Key= "textarea", Name= "Textarea" }, + new () { Key= "yes-no", Name= "Yes/No" }, + }), + }), + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Boolean, + FieldName = "IsRequired", + CaptionName = "App.Listform.ListformField.IsRequired", + Width = 100, + ListOrderNo = 5, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "SurveyId", + CaptionName = "App.Listform.ListformField.SurveyId", + Width = 0, + ListOrderNo = 14, + Visible = false, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + ], autoSave: true); + #endregion + } + #endregion + + #region Survey Response + listFormName = AppCodes.Intranet.SurveyResponse; + if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + { + var listForm = await _listFormRepository.InsertAsync( + new ListForm() + { + ListFormType = ListFormTypeEnum.List, + PageSize = 10, + ExportJson = DefaultExportJson, + IsSubForm = true, + ShowNote = true, + LayoutJson = DefaultLayoutJson(), + CultureName = LanguageCodes.En, + ListFormCode = listFormName, + Name = listFormName, + Title = listFormName, + DataSourceCode = SeedConsts.DataSources.DefaultCode, + IsTenant = true, + IsBranch = false, + IsOrganizationUnit = false, + Description = listFormName, + SelectCommandType = SelectCommandTypeEnum.Table, + SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.SurveyResponse)), + KeyFieldName = "Id", + KeyFieldDbSourceType = DbType.Guid, + DefaultFilter = DefaultFilterJson, + SortMode = GridOptions.SortModeSingle, + FilterRowJson = DefaultFilterRowJson, + HeaderFilterJson = DefaultHeaderFilterJson, + SearchPanelJson = DefaultSearchPanelJson, + GroupPanelJson = DefaultGroupPanelJson, + SelectionJson = DefaultSelectionSingleJson, + ColumnOptionJson = DefaultColumnOptionJson(), + PermissionJson = DefaultPermissionJson(listFormName), + DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.SurveyResponse)), + DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + PagerOptionJson = DefaultPagerOptionJson, + EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 400, true, true, true, true, false, true), + InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + EditingFormJson = JsonSerializer.Serialize(new List() + { + new() { + Order=1, ColCount=1, ColSpan=1, ItemType="group", Items =[ + new EditingFormItemDto { Order = 1, DataField = "UserId", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + new EditingFormItemDto { Order = 2, DataField = "SubmissionTime", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxTextBox }, + new EditingFormItemDto { Order = 3, DataField = "CreationTime", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxDateBox } + ]} + }), + }, autoSave: true + ); + + #region Survey Response Fields + await _listFormFieldRepository.InsertManyAsync([ + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "Id", + CaptionName = "App.Listform.ListformField.Id", + Width = 100, + ListOrderNo = 1, + Visible = false, + IsActive = true, + SortIndex = 0, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "UserId", + CaptionName = "App.Listform.ListformField.UserId", + Width = 100, + ListOrderNo = 2, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = JsonSerializer.Serialize(new LookupDto { + DataSourceType = UiLookupDataSourceTypeEnum.Query, + DisplayExpr = "Name", + ValueExpr = "Key", + LookupQuery = LookupQueryValues.UserValues + }), + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.DateTime, + FieldName = "SubmissionTime", + CaptionName = "App.Listform.ListformField.SubmissionTime", + Width = 100, + ListOrderNo = 3, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.DateTime, + FieldName = "CreationTime", + CaptionName = "App.Listform.ListformField.CreationTime", + Width = 100, + ListOrderNo = 4, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "SurveyId", + CaptionName = "App.Listform.ListformField.SurveyId", + Width = 0, + ListOrderNo = 5, + Visible = false, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + ], autoSave: true); + #endregion + } + + #endregion + + #region Social Post + listFormName = AppCodes.Intranet.SocialPost; + if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + { + var listForm = await _listFormRepository.InsertAsync( + new ListForm() + { + ListFormType = ListFormTypeEnum.List, + PageSize = 10, + ExportJson = DefaultExportJson, + IsSubForm = false, + ShowNote = true, + LayoutJson = DefaultLayoutJson(), + CultureName = LanguageCodes.En, + ListFormCode = listFormName, + Name = listFormName, + Title = listFormName, + DataSourceCode = SeedConsts.DataSources.DefaultCode, + IsTenant = true, + IsBranch = false, + IsOrganizationUnit = false, + Description = listFormName, + SelectCommandType = SelectCommandTypeEnum.Table, + SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.SocialPost)), + KeyFieldName = "Id", + KeyFieldDbSourceType = DbType.Guid, + DefaultFilter = DefaultFilterJson, + SortMode = GridOptions.SortModeSingle, + FilterRowJson = DefaultFilterRowJson, + HeaderFilterJson = DefaultHeaderFilterJson, + SearchPanelJson = DefaultSearchPanelJson, + GroupPanelJson = DefaultGroupPanelJson, + SelectionJson = DefaultSelectionSingleJson, + ColumnOptionJson = DefaultColumnOptionJson(), + PermissionJson = DefaultPermissionJson(listFormName), + DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.SocialPost)), + DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + PagerOptionJson = DefaultPagerOptionJson, + EditingOptionJson = DefaultEditingOptionJson(listFormName, 700, 600, true, true, true, true, false, true), + InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + EditingFormJson = JsonSerializer.Serialize(new List() + { + new() { + Order=1, ColCount=2, ColSpan=1, ItemType="group", Items = [ + new EditingFormItemDto { Order = 1, DataField = "Content", ColSpan=2, IsRequired = true, EditorType2 = EditorTypes.dxHtmlEditor, EditorOptions = EditorOptionValues.HtmlEditorOptions }, + new EditingFormItemDto { Order = 2, DataField = "UserId", ColSpan=1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + new EditingFormItemDto { Order = 3, DataField = "LikeCount", ColSpan=1, EditorType2 = EditorTypes.dxNumberBox }, + new EditingFormItemDto { Order = 4, DataField = "IsLiked", ColSpan=1, EditorType2 = EditorTypes.dxCheckBox }, + new EditingFormItemDto { Order = 5, DataField = "IsOwnPost", ColSpan=1, EditorType2 = EditorTypes.dxCheckBox } + ]} + }), + FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] + { + new() { FieldName = "LikeCount", FieldDbType = DbType.Int32, Value = "0", CustomValueType = FieldCustomValueTypeEnum.Value }, + new() { FieldName = "IsLiked", FieldDbType = DbType.Boolean, Value = "true", CustomValueType = FieldCustomValueTypeEnum.Value }, + new() { FieldName = "IsOwnPost", FieldDbType = DbType.Boolean, Value = "true", CustomValueType = FieldCustomValueTypeEnum.Value } + }), + SubFormsJson = JsonSerializer.Serialize(new List() { + new { + TabType = ListFormTabTypeEnum.List, + TabTitle = AppCodes.Intranet.SocialComment, + Code = AppCodes.Intranet.SocialComment, + Relation = new List() { + new { + ParentFieldName = "Id", + DbType = DbType.Guid, + ChildFieldName = "SocialPostId" + } + } + } + }) + } + ); + + #region Social Post Fields + await _listFormFieldRepository.InsertManyAsync([ + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "Id", + CaptionName = "App.Listform.ListformField.Id", + Width = 100, + ListOrderNo = 1, + Visible = false, + IsActive = true, + SortIndex = 0, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "UserId", + CaptionName = "App.Listform.ListformField.UserId", + Width = 150, + ListOrderNo = 2, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = JsonSerializer.Serialize(new LookupDto { + DataSourceType = UiLookupDataSourceTypeEnum.Query, + DisplayExpr = "Name", + ValueExpr = "Key", + LookupQuery = LookupQueryValues.UserValues + }), + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Content", + CaptionName = "App.Listform.ListformField.Content", + Width = 900, + ListOrderNo = 3, + Visible = true, + IsActive = true, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Int32, + FieldName = "LikeCount", + CaptionName = "App.Listform.ListformField.LikeCount", + Width = 100, + ListOrderNo = 4, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Boolean, + FieldName = "IsLiked", + CaptionName = "App.Listform.ListformField.IsLiked", + Width = 100, + ListOrderNo = 5, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Boolean, + FieldName = "IsOwnPost", + CaptionName = "App.Listform.ListformField.IsOwnPost", + Width = 100, + ListOrderNo = 6, + Visible = true, + IsActive = true, + AllowSearch = true, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + ]); + #endregion + } + #endregion + + #region Social Comment + listFormName = AppCodes.Intranet.SocialComment; + if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + { + var listForm = await _listFormRepository.InsertAsync( + new ListForm() + { + ListFormType = ListFormTypeEnum.List, + PageSize = 10, + ExportJson = DefaultExportJson, + IsSubForm = false, + ShowNote = true, + LayoutJson = DefaultLayoutJson(), + CultureName = LanguageCodes.En, + ListFormCode = listFormName, + Name = listFormName, + Title = listFormName, + DataSourceCode = SeedConsts.DataSources.DefaultCode, + IsTenant = true, + IsBranch = false, + IsOrganizationUnit = false, + Description = listFormName, + SelectCommandType = SelectCommandTypeEnum.Table, + SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.SocialComment)), + KeyFieldName = "Id", + KeyFieldDbSourceType = DbType.Guid, + DefaultFilter = DefaultFilterJson, + SortMode = GridOptions.SortModeSingle, + FilterRowJson = DefaultFilterRowJson, + HeaderFilterJson = DefaultHeaderFilterJson, + SearchPanelJson = DefaultSearchPanelJson, + GroupPanelJson = DefaultGroupPanelJson, + SelectionJson = DefaultSelectionSingleJson, + ColumnOptionJson = DefaultColumnOptionJson(), + PermissionJson = DefaultPermissionJson(listFormName), + DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.SocialComment)), + DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + PagerOptionJson = DefaultPagerOptionJson, + EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 250, true, true, true, true, false), + EditingFormJson = JsonSerializer.Serialize(new List() { + new() { Order=1, ColCount=1, ColSpan=1, ItemType="group", Items=[ + new EditingFormItemDto { Order = 1, DataField = "Content", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextArea }, + new EditingFormItemDto { Order = 2, DataField = "SocialPostId", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + ]} + }), + InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + } + ); + + #region Social Comment Fields + await _listFormFieldRepository.InsertManyAsync([ + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "Id", + CaptionName = "App.Listform.ListformField.Id", + Width = 100, + ListOrderNo = 1, + Visible = false, + IsActive = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.String, + FieldName = "Content", + CaptionName = "App.Listform.ListformField.Content", + Width = 500, + ListOrderNo = 2, + Visible = true, + IsActive = true, + SortIndex = 1, + SortDirection = GridColumnOptions.SortOrderAsc, + AllowSearch = true, + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + }, + new() { + ListFormCode = listForm.ListFormCode, + CultureName = LanguageCodes.En, + SourceDbType = DbType.Guid, + FieldName = "SocialPostId", + CaptionName = "App.Listform.ListformField.SocialPostId", + Width = 100, + ListOrderNo = 3, + Visible = true, + IsActive = true, + AllowSearch = true, + LookupJson = LookupQueryValues.DefaultLookupQueryJson(nameof(TableNameEnum.SocialPost), "Id", "Content"), + ValidationRuleJson = DefaultValidationRuleRequiredJson, + ColumnCustomizationJson = DefaultColumnCustomizationJson, + PermissionJson = DefaultFieldPermissionJson(listForm.Name), + PivotSettingsJson = DefaultPivotSettingsJson + } + ]); + #endregion + } + #endregion + + // #region EventType + // listFormName = AppCodes.Intranet.EventType; + // if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + // { + // var listForm = await _listFormRepository.InsertAsync( + // new ListForm() + // { + // ListFormType = ListFormTypeEnum.List, + // PageSize = 10, + // ExportJson = DefaultExportJson, + // IsSubForm = false, + // ShowNote = true, + // LayoutJson = DefaultLayoutJson(), + // CultureName = LanguageCodes.En, + // ListFormCode = listFormName, + // Name = listFormName, + // Title = listFormName, + // DataSourceCode = SeedConsts.DataSources.DefaultCode, + // IsTenant = true, + // IsBranch = false, + // IsOrganizationUnit = false, + // Description = listFormName, + // SelectCommandType = SelectCommandTypeEnum.Table, + // SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.EventType)), + // KeyFieldName = "Id", + // KeyFieldDbSourceType = DbType.Guid, + // DefaultFilter = DefaultFilterJson, + // SortMode = GridOptions.SortModeSingle, + // FilterRowJson = DefaultFilterRowJson, + // HeaderFilterJson = DefaultHeaderFilterJson, + // SearchPanelJson = DefaultSearchPanelJson, + // GroupPanelJson = DefaultGroupPanelJson, + // SelectionJson = DefaultSelectionSingleJson, + // ColumnOptionJson = DefaultColumnOptionJson(), + // PermissionJson = DefaultPermissionJson(listFormName), + // DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.EventType)), + // DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + // PagerOptionJson = DefaultPagerOptionJson, + // EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 250, true, true, true, true, false), + // EditingFormJson = JsonSerializer.Serialize(new List() { + // new() { Order=1, ColCount=1, ColSpan=1, ItemType="group", Items=[ + // new EditingFormItemDto { Order = 1, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox }, + // ]} + // }), + // InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + // } + // ); + + // #region EventType Fields + // await _listFormFieldRepository.InsertManyAsync(new ListFormField[] { + // new() { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Guid, + // FieldName = "Id", + // CaptionName = "App.Listform.ListformField.Id", + // Width = 100, + // ListOrderNo = 1, + // Visible = false, + // IsActive = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // new() { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.String, + // FieldName = "Name", + // CaptionName = "App.Listform.ListformField.Name", + // Width = 500, + // ListOrderNo = 2, + // Visible = true, + // IsActive = true, + // SortIndex = 1, + // SortDirection = GridColumnOptions.SortOrderAsc, + // AllowSearch = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // } + // }); + // #endregion + // } + // #endregion + + // #region EventCategory + // listFormName = AppCodes.Intranet.EventCategory; + // if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + // { + // var listForm = await _listFormRepository.InsertAsync( + // new ListForm() + // { + // ListFormType = ListFormTypeEnum.List, + // PageSize = 10, + // ExportJson = DefaultExportJson, + // IsSubForm = false, + // ShowNote = true, + // LayoutJson = DefaultLayoutJson(), + // CultureName = LanguageCodes.En, + // ListFormCode = listFormName, + // Name = listFormName, + // Title = listFormName, + // DataSourceCode = SeedConsts.DataSources.DefaultCode, + // IsTenant = true, + // IsBranch = false, + // IsOrganizationUnit = false, + // Description = listFormName, + // SelectCommandType = SelectCommandTypeEnum.Table, + // SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.EventCategory)), + // KeyFieldName = "Id", + // KeyFieldDbSourceType = DbType.Guid, + // DefaultFilter = DefaultFilterJson, + // SortMode = GridOptions.SortModeSingle, + // FilterRowJson = DefaultFilterRowJson, + // HeaderFilterJson = DefaultHeaderFilterJson, + // SearchPanelJson = DefaultSearchPanelJson, + // GroupPanelJson = DefaultGroupPanelJson, + // SelectionJson = DefaultSelectionSingleJson, + // ColumnOptionJson = DefaultColumnOptionJson(), + // PermissionJson = DefaultPermissionJson(listFormName), + // DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.EventCategory)), + // DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + // PagerOptionJson = DefaultPagerOptionJson, + // EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 250, true, true, true, true, false), + // EditingFormJson = JsonSerializer.Serialize(new List() { + // new() { Order=1, ColCount=1, ColSpan=1,ItemType="group", Items=[ + // new EditingFormItemDto { Order = 1, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox }, + // ]} + // }), + // InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + // } + // ); + + // #region EventCategory Fields + // await _listFormFieldRepository.InsertManyAsync(new ListFormField[] { + // new() { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Guid, + // FieldName = "Id", + // CaptionName = "App.Listform.ListformField.Id", + // Width = 100, + // ListOrderNo = 1, + // Visible = false, + // IsActive = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // new() { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.String, + // FieldName = "Name", + // CaptionName = "App.Listform.ListformField.Name", + // Width = 500, + // ListOrderNo = 2, + // Visible = true, + // IsActive = true, + // SortIndex = 1, + // SortDirection = GridColumnOptions.SortOrderAsc, + // AllowSearch = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // } + // }); + // #endregion + // } + // #endregion + + // #region Event + // listFormName = AppCodes.Intranet.Event; + // if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == listFormName)) + // { + // var listForm = await _listFormRepository.InsertAsync( + // new ListForm() + // { + // ListFormType = ListFormTypeEnum.List, + // PageSize = 10, + // ExportJson = DefaultExportJson, + // IsSubForm = false, + // ShowNote = true, + // LayoutJson = DefaultLayoutJson(), + // CultureName = LanguageCodes.En, + // ListFormCode = listFormName, + // Name = listFormName, + // Title = listFormName, + // DataSourceCode = SeedConsts.DataSources.DefaultCode, + // IsTenant = true, + // IsBranch = false, + // IsOrganizationUnit = false, + // Description = listFormName, + // SelectCommandType = SelectCommandTypeEnum.Table, + // SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.Event)), + // KeyFieldName = "Id", + // KeyFieldDbSourceType = DbType.Guid, + // DefaultFilter = DefaultFilterJson, + // SortMode = GridOptions.SortModeSingle, + // FilterRowJson = DefaultFilterRowJson, + // HeaderFilterJson = DefaultHeaderFilterJson, + // SearchPanelJson = DefaultSearchPanelJson, + // GroupPanelJson = DefaultGroupPanelJson, + // SelectionJson = DefaultSelectionSingleJson, + // ColumnOptionJson = DefaultColumnOptionJson(), + // PermissionJson = DefaultPermissionJson(listFormName), + // DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.Event)), + // DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), + // PagerOptionJson = DefaultPagerOptionJson, + // EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 400, true, true, true, true, false), + // EditingFormJson = JsonSerializer.Serialize(new List() + // { + // new() { + // Order = 1, ColCount = 1, ColSpan = 1, ItemType = "group", Items = + // [ + // new EditingFormItemDto { Order = 1, DataField = "CategoryId", ColSpan = 1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + // new EditingFormItemDto { Order = 2, DataField = "TypeId", ColSpan = 1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + // new EditingFormItemDto { Order = 3, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2 = EditorTypes.dxTextBox }, + // new EditingFormItemDto { Order = 4, DataField = "Place", ColSpan = 1, IsRequired = true, EditorType2 = EditorTypes.dxTextBox }, + // new EditingFormItemDto { Order = 5, DataField = "UserId", ColSpan = 1, IsRequired = true, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + // new EditingFormItemDto { Order = 6, DataField = "Description", ColSpan = 1, EditorType2 = EditorTypes.dxTextArea }, + // new EditingFormItemDto { Order = 7, DataField = "Status", ColSpan = 1, EditorType2 = EditorTypes.dxSelectBox, EditorOptions=EditorOptionValues.ShowClearButton }, + // new EditingFormItemDto { Order = 8, DataField = "ParticipantsCount", ColSpan = 1, EditorType2 = EditorTypes.dxNumberBox }, + // new EditingFormItemDto { Order = 9, DataField = "Likes", ColSpan = 1, EditorType2 = EditorTypes.dxNumberBox }, + // ]} + // }), + // InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), + // FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] { + // new() { FieldName = "Status", FieldDbType = DbType.String, Value = "Aktif", CustomValueType = FieldCustomValueTypeEnum.Value }, + // }), + // } + // ); + + // #region Event Fields + // await _listFormFieldRepository.InsertManyAsync(new ListFormField[] + // { + // // Id + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Guid, + // FieldName = "Id", + // CaptionName = "App.Listform.ListformField.Id", + // Width = 100, + // ListOrderNo = 1, + // Visible = false, + // IsActive = true, + // SortIndex = 0, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // CategoryId + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Guid, + // FieldName = "CategoryId", + // CaptionName = "App.Listform.ListformField.CategoryId", + // Width = 150, + // ListOrderNo = 2, + // Visible = true, + // IsActive = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // LookupJson = LookupQueryValues.DefaultLookupQueryJson(nameof(TableNameEnum.EventCategory), "Id", "Name"), + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // TypeId + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Guid, + // FieldName = "TypeId", + // CaptionName = "App.Listform.ListformField.TypeId", + // Width = 150, + // ListOrderNo = 3, + // Visible = true, + // IsActive = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // LookupJson = LookupQueryValues.DefaultLookupQueryJson(nameof(TableNameEnum.EventType), "Id", "Name"), + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // Name + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.String, + // FieldName = "Name", + // CaptionName = "App.Listform.ListformField.Name", + // Width = 200, + // ListOrderNo = 4, + // Visible = true, + // IsActive = true, + // SortIndex = 1, + // SortDirection = GridColumnOptions.SortOrderAsc, + // AllowSearch = true, + // ValidationRuleJson = DefaultValidationRuleRequiredJson, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // Place + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.String, + // FieldName = "Place", + // CaptionName = "App.Listform.ListformField.Place", + // Width = 200, + // ListOrderNo = 5, + // Visible = true, + // IsActive = true, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // Description + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.String, + // FieldName = "Description", + // CaptionName = "App.Listform.ListformField.Description", + // Width = 500, + // ListOrderNo = 6, + // Visible = true, + // IsActive = true, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // OrganizerId + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Guid, + // FieldName = "UserId", + // CaptionName = "App.Listform.ListformField.UserId", + // Width = 150, + // ListOrderNo = 7, + // Visible = true, + // IsActive = true, + // LookupJson = JsonSerializer.Serialize(new LookupDto { + // DataSourceType = UiLookupDataSourceTypeEnum.Query, + // DisplayExpr = "Name", + // ValueExpr = "Key", + // LookupQuery = LookupQueryValues.UserValues + // }), + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // ParticipantsCount + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Int32, + // FieldName = "ParticipantsCount", + // CaptionName = "App.Listform.ListformField.ParticipantsCount", + // Width = 80, + // ListOrderNo = 8, + // Visible = true, + // IsActive = true, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // ParticipantsCount + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.Int32, + // FieldName = "Likes", + // CaptionName = "App.Listform.ListformField.Likes", + // Width = 80, + // ListOrderNo = 9, + // Visible = true, + // IsActive = true, + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // }, + // // Status + // new() + // { + // ListFormCode = listForm.ListFormCode, + // CultureName = LanguageCodes.En, + // SourceDbType = DbType.String, + // FieldName = "Status", + // CaptionName = "App.Listform.ListformField.Status", + // Width = 120, + // ListOrderNo = 10, + // Visible = true, + // IsActive = true, + // LookupJson = JsonSerializer.Serialize(new LookupDto { + // DataSourceType = UiLookupDataSourceTypeEnum.StaticData, + // DisplayExpr = "name", + // ValueExpr = "key", + // LookupQuery = JsonSerializer.Serialize(new LookupDataDto[] { + // new () { Key="Published",Name="Yayımlandı" }, + // new () { Key="Draft",Name="Taslak" }, + // new () { Key="Cancelled",Name="İptal" }, + // }), + // }), + // ColumnCustomizationJson = DefaultColumnCustomizationJson, + // PermissionJson = DefaultFieldPermissionJson(listForm.Name), + // PivotSettingsJson = DefaultPivotSettingsJson + // } + // }); + // #endregion + // } + // #endregion + } } diff --git a/api/src/Sozsoft.Platform.DbMigrator/Seeds/MenusData.json b/api/src/Sozsoft.Platform.DbMigrator/Seeds/MenusData.json index e9e87f6..6dbd625 100644 --- a/api/src/Sozsoft.Platform.DbMigrator/Seeds/MenusData.json +++ b/api/src/Sozsoft.Platform.DbMigrator/Seeds/MenusData.json @@ -152,21 +152,27 @@ "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/Wizard", "routeType": "protected", - "authority": ["App.Listforms.Wizard"] + "authority": [ + "App.Listforms.Wizard" + ] }, { "key": "admin.listFormManagement.wizardManager", "path": "/admin/listform/wizardManager", "componentPath": "@/views/admin/listForm/wizard/WizardFileManager", "routeType": "protected", - "authority": ["App.Listforms.Wizard"] + "authority": [ + "App.Listforms.Wizard" + ] }, { "key": "admin.listFormManagement.edit", @@ -180,14 +186,18 @@ "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": ["App.Definitions.AiBot.Asistant"] + "authority": [ + "App.Definitions.AiBot.Asistant" + ] }, { "key": "admin.profile.general", @@ -229,35 +239,45 @@ "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.hr.organization", "path": "/admin/organization", "componentPath": "@/views/admin/hr/OrgChart", "routeType": "protected", - "authority": ["App.Definitions.Department"] + "authority": [ + "App.Definitions.Department" + ] }, { "key": "admin.forum", "path": "/admin/forum", "componentPath": "@/views/forum/Forum", "routeType": "protected", - "authority": ["App.ForumManagement.Publish"] + "authority": [ + "App.ForumManagement.Publish" + ] }, { "key": "admin.list", @@ -299,70 +319,90 @@ "path": "/admin/sqlQueryManager", "componentPath": "@/views/developerKit/SqlQueryManager", "routeType": "protected", - "authority": ["App.SqlQueryManager"] + "authority": [ + "App.SqlQueryManager" + ] }, { "key": "admin.developerkit.endpoints", "path": "/admin/developerkit/endpoints", "componentPath": "@/views/developerKit/CrudEndpointManager", "routeType": "protected", - "authority": ["App.DeveloperKit.CrudEndpoints"] + "authority": [ + "App.DeveloperKit.CrudEndpoints" + ] }, { "key": "admin.developerkit.dynamic-services", "path": "/admin/developerkit/dynamic-services", "componentPath": "@/views/developerKit/DynamicServiceManager", "routeType": "protected", - "authority": ["App.DeveloperKit.DynamicServices"] + "authority": [ + "App.DeveloperKit.DynamicServices" + ] }, { "key": "admin.developerkit.dynamic-services.new", "path": "/admin/developerkit/dynamic-services/new", "componentPath": "@/views/developerKit/DynamicServiceEditor", "routeType": "protected", - "authority": ["App.DeveloperKit.DynamicServices"] + "authority": [ + "App.DeveloperKit.DynamicServices" + ] }, { "key": "admin.developerkit.dynamic-services.edit", "path": "/admin/developerkit/dynamic-services/edit/:id", "componentPath": "@/views/developerKit/DynamicServiceEditor", "routeType": "protected", - "authority": ["App.DeveloperKit.DynamicServices"] + "authority": [ + "App.DeveloperKit.DynamicServices" + ] }, { "key": "admin.developerkit.components", "path": "/admin/developerkit/components", "componentPath": "@/views/developerKit/ComponentManagerPage", "routeType": "protected", - "authority": ["App.DeveloperKit.Components"] + "authority": [ + "App.DeveloperKit.Components" + ] }, { "key": "admin.developerkit.components.new", "path": "/admin/developerkit/components/new", "componentPath": "@/views/developerKit/ComponentEditorPage", "routeType": "protected", - "authority": ["App.DeveloperKit.Components"] + "authority": [ + "App.DeveloperKit.Components" + ] }, { "key": "admin.developerkit.components.view", "path": "/admin/developerkit/components/view/:id", "componentPath": "@/views/developerKit/ComponentEditorPage", "routeType": "protected", - "authority": ["App.DeveloperKit.Components"] + "authority": [ + "App.DeveloperKit.Components" + ] }, { "key": "admin.developerkit.components.edit", "path": "/admin/developerkit/components/edit/:id", "componentPath": "@/views/developerKit/CodeLayout", "routeType": "protected", - "authority": ["App.DeveloperKit.Components"] + "authority": [ + "App.DeveloperKit.Components" + ] }, { "key": "admin.fileManagement", "path": "/admin/files", "componentPath": "@/views/admin/files/FileManager", "routeType": "protected", - "authority": ["App.Files"] + "authority": [ + "App.Files" + ] }, { "key": "admin.devexpressReportView", @@ -383,28 +423,36 @@ "path": "/admin/public/home/designer", "componentPath": "@/views/public/Home", "routeType": "protected", - "authority": ["App.Home"] + "authority": [ + "App.Home" + ] }, { "key": "aboutDesigner", "path": "/admin/public/about/designer", "componentPath": "@/views/public/About", "routeType": "protected", - "authority": ["App.About"] + "authority": [ + "App.About" + ] }, { "key": "servicesDesigner", "path": "/admin/public/services/designer", "componentPath": "@/views/public/Services", "routeType": "protected", - "authority": ["App.Services"] + "authority": [ + "App.Services" + ] }, { "key": "contactDesigner", "path": "/admin/public/contact/designer", "componentPath": "@/views/public/Contact", "routeType": "protected", - "authority": ["App.Contact"] + "authority": [ + "App.Contact" + ] } ], "MenuGroups": [ @@ -657,7 +705,6 @@ "RequiredPermissionName": "App.BackgroundWorkers", "IsDisabled": false }, - { "ParentCode": "App.Saas", "Code": "App.Public", @@ -778,7 +825,6 @@ "RequiredPermissionName": "App.Contact", "IsDisabled": false }, - { "ParentCode": "App.Saas", "Code": "App.Menus", @@ -899,7 +945,6 @@ "RequiredPermissionName": "App.Listforms.Wizard", "IsDisabled": false }, - { "ParentCode": "App.Saas", "Code": "App.ForumManagement", @@ -981,11 +1026,51 @@ "RequiredPermissionName": "App.Definitions.OrgChart", "IsDisabled": false }, + { + "ParentCode": "App.Administration", + "Code": "App.Administration.Intranet", + "DisplayName": "App.Intranet", + "Order": 3, + "Url": null, + "Icon": "FcConferenceCall", + "RequiredPermissionName": null, + "IsDisabled": false + }, + { + "ParentCode": "App.Administration.Intranet", + "Code": "App.Intranet.Announcement", + "DisplayName": "App.Intranet.Announcement", + "Order": 1, + "Url": "/admin/list/App.Intranet.Announcement", + "Icon": "FcAdvertising", + "RequiredPermissionName": "App.Intranet.Announcement", + "IsDisabled": false + }, + { + "ParentCode": "App.Administration.Intranet", + "Code": "App.Intranet.Survey", + "DisplayName": "App.Intranet.Survey", + "Order": 2, + "Url": "/admin/list/App.Intranet.Survey", + "Icon": "FcTodoList", + "RequiredPermissionName": "App.Intranet.Survey", + "IsDisabled": false + }, + { + "ParentCode": "App.Administration.Intranet", + "Code": "App.Intranet.SocialPost", + "DisplayName": "App.Intranet.SocialPost", + "Order": 3, + "Url": "/admin/list/App.Intranet.SocialPost", + "Icon": "FcComments", + "RequiredPermissionName": "App.Intranet.SocialPost", + "IsDisabled": false + }, { "ParentCode": "App.Administration", "Code": "App.Administration.Restrictions", "DisplayName": "App.Restrictions", - "Order": 3, + "Order": 4, "Url": null, "Icon": "FaLock", "RequiredPermissionName": null, @@ -1015,7 +1100,7 @@ "ParentCode": "App.Administration", "Code": "Abp.Identity", "DisplayName": "Abp.Identity", - "Order": 4, + "Order": 5, "Url": null, "Icon": "FcConferenceCall", "RequiredPermissionName": null, @@ -1105,7 +1190,7 @@ "ParentCode": "App.Administration", "Code": "App.Reports.Management", "DisplayName": "App.Reports.Management", - "Order": 5, + "Order": 6, "Url": null, "Icon": "FcDocument", "RequiredPermissionName": null, @@ -1135,7 +1220,7 @@ "ParentCode": "App.Administration", "Code": "App.Files", "DisplayName": "App.Files", - "Order": 6, + "Order": 7, "Url": "/admin/files", "Icon": "FcFolder", "RequiredPermissionName": "App.Files", @@ -1145,11 +1230,11 @@ "ParentCode": "App.Administration", "Code": "App.Forum", "DisplayName": "App.Forum", - "Order": 7, + "Order": 8, "Url": "/admin/forum", "Icon": "FcLink", "RequiredPermissionName": "App.ForumManagement.Publish", "IsDisabled": false } ] -} +} \ No newline at end of file diff --git a/api/src/Sozsoft.Platform.DbMigrator/Seeds/PermissionsData.json b/api/src/Sozsoft.Platform.DbMigrator/Seeds/PermissionsData.json index 90e9332..60c5166 100644 --- a/api/src/Sozsoft.Platform.DbMigrator/Seeds/PermissionsData.json +++ b/api/src/Sozsoft.Platform.DbMigrator/Seeds/PermissionsData.json @@ -3747,12 +3747,201 @@ }, { "GroupName": "App.Administration", - "Name": "App.Intranet.Survey.Widget", + "Name": "App.Intranet.Survey", "ParentName": "App.Intranet", - "DisplayName": "App.Intranet.Survey.Widget", + "DisplayName": "App.Intranet.Survey", "IsEnabled": true, "MultiTenancySide": 3, - "MenuGroup": "Erp|Kurs" + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Create", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Create", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Update", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Update", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Delete", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Delete", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Export", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Export", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Import", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Import", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Note", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Note", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.Survey.Widget", + "ParentName": "App.Intranet.Survey", + "DisplayName": "Widget", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion", + "ParentName": "App.Intranet", + "DisplayName": "App.Intranet.SurveyQuestion", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion.Create", + "ParentName": "App.Intranet.SurveyQuestion", + "DisplayName": "Create", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion.Update", + "ParentName": "App.Intranet.SurveyQuestion", + "DisplayName": "Update", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion.Delete", + "ParentName": "App.Intranet.SurveyQuestion", + "DisplayName": "Delete", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion.Export", + "ParentName": "App.Intranet.SurveyQuestion", + "DisplayName": "Export", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion.Import", + "ParentName": "App.Intranet.SurveyQuestion", + "DisplayName": "Import", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyQuestion.Note", + "ParentName": "App.Intranet.SurveyQuestion", + "DisplayName": "Note", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse", + "ParentName": "App.Intranet", + "DisplayName": "App.Intranet.SurveyResponse", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse.Create", + "ParentName": "App.Intranet.SurveyResponse", + "DisplayName": "Create", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse.Update", + "ParentName": "App.Intranet.SurveyResponse", + "DisplayName": "Update", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse.Delete", + "ParentName": "App.Intranet.SurveyResponse", + "DisplayName": "Delete", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse.Export", + "ParentName": "App.Intranet.SurveyResponse", + "DisplayName": "Export", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse.Import", + "ParentName": "App.Intranet.SurveyResponse", + "DisplayName": "Import", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" + }, + { + "GroupName": "App.Administration", + "Name": "App.Intranet.SurveyResponse.Note", + "ParentName": "App.Intranet.SurveyResponse", + "DisplayName": "Note", + "IsEnabled": true, + "MultiTenancySide": 3, + "MenuGroup": "Erp" } ] } \ No newline at end of file diff --git a/api/src/Sozsoft.Platform.Domain.Shared/Enums/TableNameEnum.cs b/api/src/Sozsoft.Platform.Domain.Shared/Enums/TableNameEnum.cs index a675613..ca64caf 100644 --- a/api/src/Sozsoft.Platform.Domain.Shared/Enums/TableNameEnum.cs +++ b/api/src/Sozsoft.Platform.Domain.Shared/Enums/TableNameEnum.cs @@ -75,5 +75,8 @@ public enum TableNameEnum SocialMedia, SocialPollOption, SocialComment, - SocialLike + SocialLike, + EventCategory, + EventType, + Event, } diff --git a/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs b/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs index 1360bdc..760a598 100644 --- a/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs +++ b/api/src/Sozsoft.Platform.Domain.Shared/PlatformConsts.cs @@ -343,6 +343,25 @@ public static class PlatformConsts public const string Saas = Prefix.App + ".Saas"; public const string Branches = Prefix.App + ".Branches"; + + public static class Intranet + { + public const string Default = Prefix.App + ".Intranet"; + + public const string Announcement = Default + ".Announcement"; + + public const string Survey = Default + ".Survey"; + public const string SurveyQuestion = Default + ".SurveyQuestion"; + public const string SurveyResponse = Default + ".SurveyResponse"; + + public const string SocialPost = Default + ".SocialPost"; + public const string SocialComment = Default + ".SocialComment"; + + public const string EventCategory = Default + ".EventCategory"; + public const string EventType = Default + ".EventType"; + public const string Event = Default + ".Event"; + } + public static class Definitions { public const string Default = Prefix.App + ".Definitions"; @@ -411,7 +430,7 @@ public static class PlatformConsts public const string Menu = Default + ".Menu"; public const string Manager = Default + ".Manager"; } - + public static class DeveloperKits { public const string Default = Prefix.App + ".DeveloperKit"; @@ -436,7 +455,7 @@ public static class PlatformConsts public const string ViewCode = DynamicService + ".ViewCode"; } } - + //Web Site public const string Home = Prefix.App + ".Home"; public const string About = Prefix.App + ".About"; @@ -476,7 +495,7 @@ public static class PlatformConsts public static class Reports { public const string Default = Prefix.App + ".Reports"; - + public const string Categories = Default + ".Categories"; public const string ReportTemplates = Default + ".ReportTemplates"; } diff --git a/api/src/Sozsoft.Platform.Domain/Data/SeedConsts.cs b/api/src/Sozsoft.Platform.Domain/Data/SeedConsts.cs index 96945f6..9bfc93e 100644 --- a/api/src/Sozsoft.Platform.Domain/Data/SeedConsts.cs +++ b/api/src/Sozsoft.Platform.Domain/Data/SeedConsts.cs @@ -322,6 +322,24 @@ public static class SeedConsts public const string Branches = Prefix.App + ".Branches"; + public static class Intranet + { + public const string Default = Prefix.App + ".Intranet"; + + public const string Announcement = Default + ".Announcement"; + + public const string Survey = Default + ".Survey"; + public const string SurveyQuestion = Default + ".SurveyQuestion"; + public const string SurveyResponse = Default + ".SurveyResponse"; + + public const string SocialPost = Default + ".SocialPost"; + public const string SocialComment = Default + ".SocialComment"; + + public const string EventCategory = Default + ".EventCategory"; + public const string EventType = Default + ".EventType"; + public const string Event = Default + ".Event"; + } + public static class Definitions { public const string Default = Prefix.App + ".Definitions"; @@ -443,7 +461,7 @@ public static class SeedConsts public static class Reports { public const string Default = Prefix.App + ".Reports"; - + public const string Categories = Default + ".Categories"; public const string ReportTemplates = Default + ".ReportTemplates"; } diff --git a/api/src/Sozsoft.Platform.EntityFrameworkCore/Seeds/TenantData.json b/api/src/Sozsoft.Platform.EntityFrameworkCore/Seeds/TenantData.json index 8a63afe..f375018 100644 --- a/api/src/Sozsoft.Platform.EntityFrameworkCore/Seeds/TenantData.json +++ b/api/src/Sozsoft.Platform.EntityFrameworkCore/Seeds/TenantData.json @@ -361,7 +361,9 @@ "props": null, "description": null, "isActive": true, - "dependencies": ["DynamicEntityComponent"] + "dependencies": [ + "DynamicEntityComponent" + ] } ], "Abouts": [ @@ -1306,7 +1308,7 @@ "title": "📅 Performans Değerlendirme Dönemi", "content": "Yıl sonu performans değerlendirmelerimiz 20 Ekim - 5 Kasım tarihleri arasında gerçekleştirilecektir. Lütfen formları zamanında doldurunuz.", "excerpt": "Yıl sonu performans değerlendirmeleri başlıyor.", - "category": "hr", + "category": "event", "userName": "system@sozsoft.com", "publishDate": "08-10-2024", "expiryDate": "05-11-2024", @@ -1317,7 +1319,7 @@ "title": "💻 Sistem Bakımı Duyurusu", "content": "Bu Cumartesi saat 02: 00 - 06: 00 arası sistemlerimizde bakım çalışması yapılacaktır. Bu süre içinde sistemlere erişim sağlanamayacaktır.", "excerpt": "Cumartesi gecesi planlı bakım çalışması", - "category": "it", + "category": "urgent", "userName": "system@sozsoft.com", "publishDate": "08-10-2024", "isPinned": false, @@ -1599,7 +1601,9 @@ { "postContent": "CI/CD pipeline güncellememiz tamamlandı! Deployment süremiz %40 azaldı. Otomasyonun gücü 💪", "type": "video", - "urls": ["https://www.w3schools.com/html/mov_bbb.mp4"] + "urls": [ + "https://www.w3schools.com/html/mov_bbb.mp4" + ] } ], "SocialPollOptions": [ @@ -1679,5 +1683,221 @@ "postContent": "Yeni tasarım sistemimizin ilk prototipini hazırladık! Kullanıcı deneyimini iyileştirmek için çok çalıştık. Geri bildirimlerinizi bekliyorum! 🎨", "userName": "system@sozsoft.com" } + ], + "EventTypes": [ + { + "Name": "Futbol Turnuvası" + }, + { + "Name": "Basketbol Maçı" + }, + { + "Name": "Koşu Etkinliği" + }, + { + "Name": "Tenis Turnuvası" + }, + { + "Name": "Yüzme Yarışı" + }, + { + "Name": "Bisiklet Turu" + }, + { + "Name": "Doğa Yürüyüşü" + }, + { + "Name": "Yoga Seansı" + }, + { + "Name": "Voleybol Turnuvası" + }, + { + "Name": "Kayak Gezisi" + }, + { + "Name": "Resim Sergisi" + }, + { + "Name": "Tiyatro Gösterisi" + }, + { + "Name": "Sinema Gecesi" + }, + { + "Name": "Heykel Atölyesi" + }, + { + "Name": "Fotoğraf Sergisi" + }, + { + "Name": "Ebru Atölyesi" + }, + { + "Name": "Kısa Film Yarışması" + }, + { + "Name": "Karikatür Sergisi" + }, + { + "Name": "Grafik Tasarım Workshopu" + }, + { + "Name": "Kültürel Sanat Günü" + }, + { + "Name": "Şehir Gezisi" + }, + { + "Name": "Tarihi Miras Turu" + }, + { + "Name": "Müze Ziyareti" + }, + { + "Name": "Kültürel Tanıtım Günü" + }, + { + "Name": "Yöresel Lezzetler Etkinliği" + }, + { + "Name": "Farklı Kültürlerle Tanışma" + }, + { + "Name": "Festival Katılımı" + }, + { + "Name": "Köy Gezisi" + }, + { + "Name": "Anıt ve Ören Yeri Ziyareti" + }, + { + "Name": "Uluslararası Kültür Buluşması" + }, + { + "Name": "Konser" + }, + { + "Name": "Koro Gösterisi" + }, + { + "Name": "Enstrüman Atölyesi" + }, + { + "Name": "DJ Gecesi" + }, + { + "Name": "Karaoke Yarışması" + }, + { + "Name": "Müzik Festivali" + }, + { + "Name": "Caz Akşamı" + }, + { + "Name": "Halk Müziği Gecesi" + }, + { + "Name": "Rock Konseri" + }, + { + "Name": "Müzik Dinleti Gecesi" + }, + { + "Name": "Teknik Eğitim Semineri" + }, + { + "Name": "Kariyer Gelişim Workshopu" + }, + { + "Name": "Liderlik Eğitimi" + }, + { + "Name": "İş Güvenliği Eğitimi" + }, + { + "Name": "İletişim Becerileri Atölyesi" + }, + { + "Name": "Yazılım Geliştirme Kampı" + }, + { + "Name": "Sunum Teknikleri Eğitimi" + }, + { + "Name": "Yapay Zeka Semineri" + }, + { + "Name": "Proje Yönetimi Eğitimi" + }, + { + "Name": "Yabancı Dil Workshopu" + } + ], + "EventCategories": [ + { + "Name": "Spor" + }, + { + "Name": "Sanat" + }, + { + "Name": "Kültür" + }, + { + "Name": "Müzik" + }, + { + "Name": "Eğitim" + } + ], + "Events": [ + { + "CategoryName": "Spor", + "TypeName": "Futbol Turnuvası", + "Date": "2025-11-05T10:00:00", + "Name": "Yaz Futbol Turnuvası 2025", + "Description": "Tüm departmanların katılımıyla düzenlenen geleneksel yaz futbol turnuvası.", + "Place": "Şirket Kampüsü Spor Alanı", + "Status": "Published", + "UserName": "system@sozsoft.com", + "ParticipantsCount": 64, + "IsPublished": true, + "Likes": 120, + "Photos": [], + "Comments": [] + }, + { + "CategoryName": "Kültür", + "TypeName": "Kültürel Sanat Günü", + "Date": "2025-11-01T10:00:00", + "Name": "Kültür Gezisi: Kapadokya", + "Description": "Çalışanlarımıza özel, rehber eşliğinde 2 günlük kültürel gezi.", + "Place": "Kapadokya, Nevşehir", + "Status": "Published", + "UserName": "system@sozsoft.com", + "ParticipantsCount": 25, + "IsPublished": true, + "Likes": 45, + "Photos": [], + "Comments": [] + }, + { + "CategoryName": "Müzik", + "TypeName": "Caz Akşamı", + "Date": "2025-11-09T10:00:00", + "Name": "Müzik Dinletisi: Jazz Akşamı", + "Description": "Caz müziğinin en güzel örneklerinin canlı performanslarla sunulacağı özel akşam.", + "Place": "Şirket Konferans Salonu", + "Status": "Published", + "UserName": "system@sozsoft.com", + "ParticipantsCount": 40, + "IsPublished": true, + "Likes": 85, + "Photos": [], + "Comments": [] + } ] -} +} \ No newline at end of file