Menü düzenlemesi
This commit is contained in:
parent
9f33c896b9
commit
11c40cb36a
7 changed files with 324 additions and 514 deletions
|
|
@ -5,9 +5,9 @@ namespace Kurs.Notifications;
|
||||||
|
|
||||||
public class NotificationDto : EntityDto<Guid>
|
public class NotificationDto : EntityDto<Guid>
|
||||||
{
|
{
|
||||||
public string NotificationChannel { get; set; }
|
public required string NotificationChannel { get; set; }
|
||||||
public string NotificationType { get; set; }
|
public required string NotificationType { get; set; }
|
||||||
public string Message { get; set; }
|
public required string Message { get; set; }
|
||||||
public bool IsRead { get; set; }
|
public bool IsRead { get; set; }
|
||||||
public bool IsSent { get; set; }
|
public bool IsSent { get; set; }
|
||||||
public DateTime? ReadTime { get; set; }
|
public DateTime? ReadTime { get; set; }
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net9.0</TargetFramework>
|
<TargetFramework>net9.0</TargetFramework>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
<RootNamespace>Kurs.Platform</RootNamespace>
|
<RootNamespace>Kurs.Platform</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -446,31 +446,31 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency
|
||||||
}),
|
}),
|
||||||
EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>()
|
EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>()
|
||||||
{
|
{
|
||||||
new() { Order=1, ColCount=1, ColSpan=2, ItemType="group", Items =
|
new() { Order=1, ColCount=1, ColSpan=2, ItemType="group", Items =
|
||||||
[
|
[
|
||||||
new EditingFormItemDto { Order=1, DataField="Name", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=1, DataField="Name", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=2, DataField="InstitutionName", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=2, DataField="InstitutionName", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=3, DataField="Founder", 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=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=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=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=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=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=9, DataField="IsActive", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxCheckBox },
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
new() { Order=2, ColCount=1, ColSpan=2, ItemType="group", Items =
|
new() { Order=2, ColCount=1, ColSpan=2, ItemType="group", Items =
|
||||||
[
|
[
|
||||||
new EditingFormItemDto { Order=1, DataField="Country", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions="{ \"showClearButton\" : true }" },
|
new EditingFormItemDto { Order=1, DataField="Country", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxSelectBox, EditorOptions="{ \"showClearButton\" : true }" },
|
||||||
new EditingFormItemDto { Order=2, DataField="City", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=2, DataField="City", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=3, DataField="District", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=3, DataField="District", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=4, DataField="Address", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=4, DataField="Address", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=5, DataField="Address2", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=5, DataField="Address2", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=6, DataField="PostalCode", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=6, DataField="PostalCode", ColSpan=2, IsRequired=false, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=7, DataField="Email", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=7, DataField="Email", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order=8, DataField="Website", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order=8, DataField="Website", ColSpan=2, IsRequired=true, EditorType2=EditorTypes.dxTextBox },
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
CommandColumnJson = JsonSerializer.Serialize(new CommandColumnDto[] {
|
CommandColumnJson = JsonSerializer.Serialize(new CommandColumnDto[] {
|
||||||
new CommandColumnDto() {
|
new CommandColumnDto() {
|
||||||
|
|
@ -483,6 +483,13 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency
|
||||||
id = "@Id"
|
id = "@Id"
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
new() {
|
||||||
|
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
||||||
|
Hint = "Branches",
|
||||||
|
Text = "Branches",
|
||||||
|
AuthName = AppCodes.Branches,
|
||||||
|
Url = "/admin/list/list-branch",
|
||||||
|
},
|
||||||
}),
|
}),
|
||||||
InsertServiceAddress = "list-form-dynamic-api/tenant-insert",
|
InsertServiceAddress = "list-form-dynamic-api/tenant-insert",
|
||||||
UpdateServiceAddress = "list-form-dynamic-api/tenant-update",
|
UpdateServiceAddress = "list-form-dynamic-api/tenant-update",
|
||||||
|
|
@ -5263,27 +5270,27 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency
|
||||||
ColumnChooserEnabled = true
|
ColumnChooserEnabled = true
|
||||||
}),
|
}),
|
||||||
CommandColumnJson = JsonSerializer.Serialize(new CommandColumnDto[] {
|
CommandColumnJson = JsonSerializer.Serialize(new CommandColumnDto[] {
|
||||||
new() {
|
new() {
|
||||||
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
||||||
Hint = "Hangfire Login",
|
Hint = "Hangfire Login",
|
||||||
Text = "Hangfire Login",
|
Text = "Hangfire Login",
|
||||||
AuthName=AppCodes.BackgroundWorkers,
|
AuthName=AppCodes.BackgroundWorkers,
|
||||||
Url= swaggerRootUrl + "/Account/Login",
|
Url= swaggerRootUrl + "/Account/Login",
|
||||||
},
|
},
|
||||||
new() {
|
new() {
|
||||||
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
||||||
Hint = "Hangfire Aç",
|
Hint = "Hangfire Aç",
|
||||||
Text = "Hangfire Aç",
|
Text = "Hangfire Aç",
|
||||||
AuthName=AppCodes.BackgroundWorkers,
|
AuthName=AppCodes.BackgroundWorkers,
|
||||||
Url= swaggerRootUrl + "/hangfire",
|
Url= swaggerRootUrl + "/hangfire",
|
||||||
},
|
},
|
||||||
new() {
|
new() {
|
||||||
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
ButtonPosition= UiCommandButtonPositionTypeEnum.Toolbar,
|
||||||
Hint = "Hangfire Tazele",
|
Hint = "Hangfire Tazele",
|
||||||
Text = "Hangfire Tazele",
|
Text = "Hangfire Tazele",
|
||||||
AuthName=AppCodes.BackgroundWorkers,
|
AuthName=AppCodes.BackgroundWorkers,
|
||||||
OnClick="UiEvalService.ApiGenerateBackgroundWorkers();"
|
OnClick="UiEvalService.ApiGenerateBackgroundWorkers();"
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
PermissionJson = JsonSerializer.Serialize(new PermissionCrudDto
|
PermissionJson = JsonSerializer.Serialize(new PermissionCrudDto
|
||||||
{
|
{
|
||||||
|
|
@ -13654,15 +13661,14 @@ public class ListFormsSeeder : IDataSeedContributor, ITransientDependency
|
||||||
ItemType = "group",
|
ItemType = "group",
|
||||||
Items =
|
Items =
|
||||||
[
|
[
|
||||||
new EditingFormItemDto { Order = 1, DataField = "Id", ColSpan = 2, IsRequired = true, EditorType2 = EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order = 1, DataField = "OrganizationName", ColSpan = 2, IsRequired = true, EditorType2 = EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order = 2, DataField = "OrganizationName", ColSpan = 2, IsRequired = true, EditorType2 = EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order = 2, DataField = "FullName", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextArea },
|
||||||
new EditingFormItemDto { Order = 3, DataField = "FullName", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextArea },
|
new EditingFormItemDto { Order = 3, DataField = "Email", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order = 4, DataField = "Email", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order = 4, DataField = "Phone", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextBox },
|
||||||
new EditingFormItemDto { Order = 5, DataField = "Phone", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextBox },
|
new EditingFormItemDto { Order = 5, DataField = "Address", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextArea },
|
||||||
new EditingFormItemDto { Order = 6, DataField = "Address", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextArea },
|
new EditingFormItemDto { Order = 6, DataField = "NumberOfBranches", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxNumberBox },
|
||||||
new EditingFormItemDto { Order = 7, DataField = "NumberOfBranches", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxNumberBox },
|
new EditingFormItemDto { Order = 7, DataField = "NumberOfUsers", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxNumberBox },
|
||||||
new EditingFormItemDto { Order = 8, DataField = "NumberOfUsers", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxNumberBox },
|
new EditingFormItemDto { Order = 8, DataField = "Message", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextArea },
|
||||||
new EditingFormItemDto { Order = 9, DataField = "Message", ColSpan = 2, IsRequired = false, EditorType2 = EditorTypes.dxTextArea },
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -82,7 +82,7 @@ define(['./workbox-54d0af47'], (function (workbox) { 'use strict';
|
||||||
"revision": "3ca0b8505b4bec776b69afdba2768812"
|
"revision": "3ca0b8505b4bec776b69afdba2768812"
|
||||||
}, {
|
}, {
|
||||||
"url": "index.html",
|
"url": "index.html",
|
||||||
"revision": "0.4fqifsv2jio"
|
"revision": "0.s0vun21q3d"
|
||||||
}], {});
|
}], {});
|
||||||
workbox.cleanupOutdatedCaches();
|
workbox.cleanupOutdatedCaches();
|
||||||
workbox.registerRoute(new workbox.NavigationRoute(workbox.createHandlerBoundToURL("index.html"), {
|
workbox.registerRoute(new workbox.NavigationRoute(workbox.createHandlerBoundToURL("index.html"), {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import React from 'react'
|
import React from 'react'
|
||||||
import { FaTachometerAlt, FaDatabase, FaBolt, FaServer, FaPuzzlePiece } from 'react-icons/fa';
|
import { FaTachometerAlt, FaDatabase, FaBolt, FaServer, FaPuzzlePiece } from 'react-icons/fa'
|
||||||
import { useLocalization } from '@/utils/hooks/useLocalization'
|
import { useLocalization } from '@/utils/hooks/useLocalization'
|
||||||
import { useLocation, useNavigate } from 'react-router-dom'
|
import { useLocation, useNavigate } from 'react-router-dom'
|
||||||
import { ROUTES_ENUM } from '@/routes/route.constant'
|
import { ROUTES_ENUM } from '@/routes/route.constant'
|
||||||
|
|
@ -51,30 +51,6 @@ const DeveloperLayout: React.FC<DeveloperLayoutProps> = ({ children }) => {
|
||||||
<Container>
|
<Container>
|
||||||
<div className="mx-auto px-4 sm:px-6 lg:px-8 py-8">
|
<div className="mx-auto px-4 sm:px-6 lg:px-8 py-8">
|
||||||
<div className="flex flex-col lg:flex-row gap-8">
|
<div className="flex flex-col lg:flex-row gap-8">
|
||||||
{/* Sidebar */}
|
|
||||||
<div className="lg:w-64 flex-shrink-0 p-4 bg-gray-50">
|
|
||||||
<nav className="space-y-2">
|
|
||||||
{navigation.map((item) => {
|
|
||||||
const Icon = item.icon
|
|
||||||
const isActive = location.pathname === item.path
|
|
||||||
return (
|
|
||||||
<button
|
|
||||||
key={item.id}
|
|
||||||
onClick={() => navigate(item.path)}
|
|
||||||
className={`w-full flex items-center space-x-3 px-4 py-3 rounded-lg text-left transition-colors ${
|
|
||||||
isActive
|
|
||||||
? 'bg-blue-100 text-blue-700'
|
|
||||||
: 'text-gray-600 hover:bg-gray-100 hover:text-gray-900'
|
|
||||||
}`}
|
|
||||||
>
|
|
||||||
<Icon className="w-5 h-5" />
|
|
||||||
<span className="font-medium">{item.label}</span>
|
|
||||||
</button>
|
|
||||||
)
|
|
||||||
})}
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Main Content */}
|
{/* Main Content */}
|
||||||
<div className="flex-1">{children}</div>
|
<div className="flex-1">{children}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue