Hr Training ve Certificate
This commit is contained in:
parent
192eee46ed
commit
1806cd4b26
17 changed files with 2789 additions and 1381 deletions
|
|
@ -1179,8 +1179,8 @@
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Hr",
|
"key": "App.Hr",
|
||||||
"en": "HR",
|
"en": "Hr",
|
||||||
"tr": "İK"
|
"tr": "İk"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -7593,16 +7593,34 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Definitions.EventType",
|
"key": "App.Hr.Events",
|
||||||
|
"tr": "Etkinlikler",
|
||||||
|
"en": "Events"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "App.Hr.Events.EventType",
|
||||||
"tr": "Etkinlik Türleri",
|
"tr": "Etkinlik Türleri",
|
||||||
"en": "Event Types"
|
"en": "Event Types"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Definitions.EventCategory",
|
"key": "App.Hr.Events.EventCategory",
|
||||||
"tr": "Etkinlik Kategorisi",
|
"tr": "Etkinlik Kategorisi",
|
||||||
"en": "Event Category"
|
"en": "Event Category"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "App.Hr.Events.Event",
|
||||||
|
"tr": "Etkinlikler",
|
||||||
|
"en": "Events"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "App.Hr.Training",
|
||||||
|
"tr": "Eğitimler",
|
||||||
|
"en": "Trainings"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Definitions.Information",
|
"key": "App.Definitions.Information",
|
||||||
|
|
@ -7705,12 +7723,6 @@
|
||||||
"tr": "Avukatlar",
|
"tr": "Avukatlar",
|
||||||
"en": "Lawyers"
|
"en": "Lawyers"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"resourceName": "Platform",
|
|
||||||
"key": "App.Definitions.Event",
|
|
||||||
"tr": "Etkinlikler",
|
|
||||||
"en": "Events"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Definitions.LessonPeriod",
|
"key": "App.Definitions.LessonPeriod",
|
||||||
|
|
@ -9484,14 +9496,14 @@
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "Public.products.hr.desc",
|
"key": "Public.products.hr.desc",
|
||||||
"tr": "İK süreçlerinizi dijitalleştirin.",
|
"tr": "İk süreçlerinizi dijitalleştirin.",
|
||||||
"en": "Digitize your HR processes."
|
"en": "Digitize your Hr processes."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "Public.products.hr.features.digital",
|
"key": "Public.products.hr.features.digital",
|
||||||
"tr": "Dijital İK Süreçleri",
|
"tr": "Dijital İk Süreçleri",
|
||||||
"en": "Digital HR Processes"
|
"en": "Digital Hr Processes"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -12059,7 +12071,7 @@
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Hr.Department",
|
"key": "App.Hr.Department",
|
||||||
"tr": "Departmanlar",
|
"tr": "Departmanlar",
|
||||||
"en": "Department"
|
"en": "Departments"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -12083,7 +12095,7 @@
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Hr.Badge",
|
"key": "App.Hr.Badge",
|
||||||
"tr": "Rozetler",
|
"tr": "Rozetler",
|
||||||
"en": "Badge"
|
"en": "Badges"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -12125,7 +12137,7 @@
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Crm.Customer",
|
"key": "App.Crm.Customer",
|
||||||
"tr": "Müşteriler",
|
"tr": "Müşteriler",
|
||||||
"en": "Customer"
|
"en": "Customers"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -12143,7 +12155,7 @@
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Crm.Opportunity",
|
"key": "App.Crm.Opportunity",
|
||||||
"tr": "Fırsatlar",
|
"tr": "Fırsatlar",
|
||||||
"en": "Opportunity"
|
"en": "Opportunities"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -12167,13 +12179,13 @@
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Mrp.Workcenter",
|
"key": "App.Mrp.Workcenter",
|
||||||
"tr": "İş Merkezleri",
|
"tr": "İş Merkezleri",
|
||||||
"en": "Workcenter"
|
"en": "Workcenters"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Mrp.Operation",
|
"key": "App.Mrp.Operation",
|
||||||
"tr": "Operasyonlar",
|
"tr": "Operasyonlar",
|
||||||
"en": "Operation"
|
"en": "Operations"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -12221,13 +12233,13 @@
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Accounting.Waybill",
|
"key": "App.Accounting.Waybill",
|
||||||
"tr": "İrsaliyeler",
|
"tr": "İrsaliyeler",
|
||||||
"en": "Waybill"
|
"en": "Waybills"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "App.Accounting.Invoice",
|
"key": "App.Accounting.Invoice",
|
||||||
"tr": "Faturalar",
|
"tr": "Faturalar",
|
||||||
"en": "Invoice"
|
"en": "Invoices"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
@ -14172,36 +14184,6 @@
|
||||||
"RequiredPermissionName": "App.Definitions.EducationStatus",
|
"RequiredPermissionName": "App.Definitions.EducationStatus",
|
||||||
"IsDisabled": false
|
"IsDisabled": false
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"ParentCode": "App.Definitions",
|
|
||||||
"Code": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "App.Definitions.EventType",
|
|
||||||
"Order": 9,
|
|
||||||
"Url": "/admin/list/list-eventtype",
|
|
||||||
"Icon": "FcPlanner",
|
|
||||||
"RequiredPermissionName": "App.Definitions.EventType",
|
|
||||||
"IsDisabled": false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ParentCode": "App.Definitions",
|
|
||||||
"Code": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "App.Definitions.EventCategory",
|
|
||||||
"Order": 10,
|
|
||||||
"Url": "/admin/list/list-eventcategory",
|
|
||||||
"Icon": "FcTreeStructure",
|
|
||||||
"RequiredPermissionName": "App.Definitions.EventCategory",
|
|
||||||
"IsDisabled": false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ParentCode": "App.Definitions",
|
|
||||||
"Code": "App.Definitions.Event",
|
|
||||||
"DisplayName": "App.Definitions.Event",
|
|
||||||
"Order": 11,
|
|
||||||
"Url": "/admin/list/list-event",
|
|
||||||
"Icon": "FcCalendar",
|
|
||||||
"RequiredPermissionName": "App.Definitions.Event",
|
|
||||||
"IsDisabled": false
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"ParentCode": "App.Definitions",
|
"ParentCode": "App.Definitions",
|
||||||
"Code": "App.Definitions.Vaccine",
|
"Code": "App.Definitions.Vaccine",
|
||||||
|
|
@ -15063,6 +15045,58 @@
|
||||||
"RequiredPermissionName": "App.Hr.Performance360",
|
"RequiredPermissionName": "App.Hr.Performance360",
|
||||||
"IsDisabled": false
|
"IsDisabled": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"ParentCode": "App.Hr",
|
||||||
|
"Code": "App.Hr.Events",
|
||||||
|
"DisplayName": "App.Hr.Events",
|
||||||
|
"Order": 13,
|
||||||
|
"Url": null,
|
||||||
|
"Icon": "FcTodoList",
|
||||||
|
"RequiredPermissionName": null,
|
||||||
|
"IsDisabled": false
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ParentCode": "App.Hr.Events",
|
||||||
|
"Code": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "App.Hr.Events.EventType",
|
||||||
|
"Order": 1,
|
||||||
|
"Url": "/admin/list/list-eventtype",
|
||||||
|
"Icon": "FcPlanner",
|
||||||
|
"RequiredPermissionName": "App.Hr.Events.EventType",
|
||||||
|
"IsDisabled": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ParentCode": "App.Hr.Events",
|
||||||
|
"Code": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "App.Hr.Events.EventCategory",
|
||||||
|
"Order": 2,
|
||||||
|
"Url": "/admin/list/list-eventcategory",
|
||||||
|
"Icon": "FcTreeStructure",
|
||||||
|
"RequiredPermissionName": "App.Hr.Events.EventCategory",
|
||||||
|
"IsDisabled": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ParentCode": "App.Hr.Events",
|
||||||
|
"Code": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "App.Hr.Events.Event",
|
||||||
|
"Order": 3,
|
||||||
|
"Url": "/admin/list/list-event",
|
||||||
|
"Icon": "FcCalendar",
|
||||||
|
"RequiredPermissionName": "App.Hr.Events.Event",
|
||||||
|
"IsDisabled": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ParentCode": "App.Hr",
|
||||||
|
"Code": "App.Hr.Training",
|
||||||
|
"DisplayName": "App.Hr.Training",
|
||||||
|
"Order": 14,
|
||||||
|
"Url": "/admin/list/list-training",
|
||||||
|
"Icon": "FcGraduationCap",
|
||||||
|
"RequiredPermissionName": "App.Hr.Training",
|
||||||
|
"IsDisabled": false
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"ParentCode": null,
|
"ParentCode": null,
|
||||||
"Code": "App.Mrp",
|
"Code": "App.Mrp",
|
||||||
|
|
@ -20213,195 +20247,6 @@
|
||||||
"MultiTenancySide": 3,
|
"MultiTenancySide": 3,
|
||||||
"MenuGroup": "Kurs"
|
"MenuGroup": "Kurs"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType",
|
|
||||||
"ParentName": null,
|
|
||||||
"DisplayName": "App.Definitions.EventType",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType.Create",
|
|
||||||
"ParentName": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "Create",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType.Update",
|
|
||||||
"ParentName": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "Update",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType.Delete",
|
|
||||||
"ParentName": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "Delete",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType.Export",
|
|
||||||
"ParentName": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "Export",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType.Import",
|
|
||||||
"ParentName": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "Import",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventType.Activity",
|
|
||||||
"ParentName": "App.Definitions.EventType",
|
|
||||||
"DisplayName": "Activity",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory",
|
|
||||||
"ParentName": null,
|
|
||||||
"DisplayName": "App.Definitions.EventCategory",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory.Create",
|
|
||||||
"ParentName": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "Create",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory.Update",
|
|
||||||
"ParentName": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "Update",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory.Delete",
|
|
||||||
"ParentName": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "Delete",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory.Export",
|
|
||||||
"ParentName": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "Export",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory.Import",
|
|
||||||
"ParentName": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "Import",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.EventCategory.Activity",
|
|
||||||
"ParentName": "App.Definitions.EventCategory",
|
|
||||||
"DisplayName": "Activity",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event",
|
|
||||||
"ParentName": null,
|
|
||||||
"DisplayName": "App.Definitions.Event",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event.Create",
|
|
||||||
"ParentName": "App.Definitions.Event",
|
|
||||||
"DisplayName": "Create",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event.Update",
|
|
||||||
"ParentName": "App.Definitions.Event",
|
|
||||||
"DisplayName": "Update",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event.Delete",
|
|
||||||
"ParentName": "App.Definitions.Event",
|
|
||||||
"DisplayName": "Delete",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event.Export",
|
|
||||||
"ParentName": "App.Definitions.Event",
|
|
||||||
"DisplayName": "Export",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event.Import",
|
|
||||||
"ParentName": "App.Definitions.Event",
|
|
||||||
"DisplayName": "Import",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"GroupName": "App.Administration",
|
|
||||||
"Name": "App.Definitions.Event.Activity",
|
|
||||||
"ParentName": "App.Definitions.Event",
|
|
||||||
"DisplayName": "Activity",
|
|
||||||
"IsEnabled": true,
|
|
||||||
"MultiTenancySide": 3,
|
|
||||||
"MenuGroup": "Kurs"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"GroupName": "App.Administration",
|
"GroupName": "App.Administration",
|
||||||
"Name": "App.Definitions.Vaccine",
|
"Name": "App.Definitions.Vaccine",
|
||||||
|
|
@ -24761,6 +24606,259 @@
|
||||||
"MultiTenancySide": 3,
|
"MultiTenancySide": 3,
|
||||||
"MenuGroup": "Erp"
|
"MenuGroup": "Erp"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType",
|
||||||
|
"ParentName": null,
|
||||||
|
"DisplayName": "App.Hr.Events.EventType",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType.Create",
|
||||||
|
"ParentName": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "Create",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType.Update",
|
||||||
|
"ParentName": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "Update",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType.Delete",
|
||||||
|
"ParentName": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "Delete",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType.Export",
|
||||||
|
"ParentName": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "Export",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType.Import",
|
||||||
|
"ParentName": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "Import",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventType.Activity",
|
||||||
|
"ParentName": "App.Hr.Events.EventType",
|
||||||
|
"DisplayName": "Activity",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory",
|
||||||
|
"ParentName": null,
|
||||||
|
"DisplayName": "App.Hr.Events.EventCategory",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory.Create",
|
||||||
|
"ParentName": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "Create",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory.Update",
|
||||||
|
"ParentName": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "Update",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory.Delete",
|
||||||
|
"ParentName": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "Delete",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory.Export",
|
||||||
|
"ParentName": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "Export",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory.Import",
|
||||||
|
"ParentName": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "Import",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.EventCategory.Activity",
|
||||||
|
"ParentName": "App.Hr.Events.EventCategory",
|
||||||
|
"DisplayName": "Activity",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event",
|
||||||
|
"ParentName": null,
|
||||||
|
"DisplayName": "App.Hr.Events.Event",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event.Create",
|
||||||
|
"ParentName": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "Create",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event.Update",
|
||||||
|
"ParentName": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "Update",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event.Delete",
|
||||||
|
"ParentName": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "Delete",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event.Export",
|
||||||
|
"ParentName": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "Export",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event.Import",
|
||||||
|
"ParentName": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "Import",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Events.Event.Activity",
|
||||||
|
"ParentName": "App.Hr.Events.Event",
|
||||||
|
"DisplayName": "Activity",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Kurs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training",
|
||||||
|
"ParentName": null,
|
||||||
|
"DisplayName": "App.Hr.Training",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training.Create",
|
||||||
|
"ParentName": "App.Hr.Training",
|
||||||
|
"DisplayName": "Create",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training.Update",
|
||||||
|
"ParentName": "App.Hr.Training",
|
||||||
|
"DisplayName": "Update",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training.Delete",
|
||||||
|
"ParentName": "App.Hr.Training",
|
||||||
|
"DisplayName": "Delete",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training.Export",
|
||||||
|
"ParentName": "App.Hr.Training",
|
||||||
|
"DisplayName": "Export",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training.Import",
|
||||||
|
"ParentName": "App.Hr.Training",
|
||||||
|
"DisplayName": "Import",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"GroupName": "App.Hr",
|
||||||
|
"Name": "App.Hr.Training.Activity",
|
||||||
|
"ParentName": "App.Hr.Training",
|
||||||
|
"DisplayName": "Activity",
|
||||||
|
"IsEnabled": true,
|
||||||
|
"MultiTenancySide": 3,
|
||||||
|
"MenuGroup": "Erp"
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"GroupName": "App.Crm",
|
"GroupName": "App.Crm",
|
||||||
"Name": "App.Crm.Customer",
|
"Name": "App.Crm.Customer",
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -116,5 +116,7 @@ public enum TableNameEnum
|
||||||
Payroll,
|
Payroll,
|
||||||
PayrollItem,
|
PayrollItem,
|
||||||
Template360,
|
Template360,
|
||||||
Performance360
|
Performance360,
|
||||||
|
Training,
|
||||||
|
Certificate
|
||||||
}
|
}
|
||||||
|
|
@ -31,7 +31,7 @@ public static class PlatformConsts
|
||||||
public static class EditorScriptValues
|
public static class EditorScriptValues
|
||||||
{
|
{
|
||||||
public static string CalcTotalDaysFromDates = "(() => {const d=v=>!v?null:(v instanceof Date?v:new Date(v));const nf={...formData,[editor.dataField]:e?.value};const s=d(nf.StartDate),t=d(nf.EndDate);setFormData({...formData,TotalDays: s&&t?Math.max(0,Math.floor((Date.UTC(t.getFullYear(),t.getMonth(),t.getDate())-Date.UTC(s.getFullYear(),s.getMonth(),s.getDate()))/(24*60*60*1000))+1):null});})();";
|
public static string CalcTotalDaysFromDates = "(() => {const d=v=>!v?null:(v instanceof Date?v:new Date(v));const nf={...formData,[editor.dataField]:e?.value};const s=d(nf.StartDate),t=d(nf.EndDate);setFormData({...formData,TotalDays: s&&t?Math.max(0,Math.floor((Date.UTC(t.getFullYear(),t.getMonth(),t.getDate())-Date.UTC(s.getFullYear(),s.getMonth(),s.getDate()))/(24*60*60*1000))+1):null});})();";
|
||||||
public static string CalcTotalHoursFromTimes="(()=>{const toD=v=>!v?null:(v instanceof Date?v:new Date(v));const next={...formData,[e.dataField]:e.value};const s=toD(next.StartTime),t=toD(next.EndTime);let h=null;if(s&&t){h=(t-s)/36e5;if(h<0)h+=24;h=Math.round(h*10)/10;}setFormData({...next,TotalHours:h});})();";
|
public static string CalcTotalHoursFromTimes = "(()=>{const toD=v=>!v?null:(v instanceof Date?v:new Date(v));const next={...formData,[e.dataField]:e.value};const s=toD(next.StartTime),t=toD(next.EndTime);let h=null;if(s&&t){h=(t-s)/36e5;if(h<0)h+=24;h=Math.round(h*10)/10;}setFormData({...next,TotalHours:h});})();";
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class Prefix
|
public static class Prefix
|
||||||
|
|
@ -384,8 +384,6 @@ public static class PlatformConsts
|
||||||
public const string Disease = Default + ".Disease";
|
public const string Disease = Default + ".Disease";
|
||||||
public const string Document = Default + ".Document";
|
public const string Document = Default + ".Document";
|
||||||
public const string EducationStatus = Default + ".EducationStatus";
|
public const string EducationStatus = Default + ".EducationStatus";
|
||||||
public const string EventType = Default + ".EventType";
|
|
||||||
public const string EventCategory = Default + ".EventCategory";
|
|
||||||
public const string MeetingMethod = Default + ".MeetingMethod";
|
public const string MeetingMethod = Default + ".MeetingMethod";
|
||||||
public const string MeetingResult = Default + ".MeetingResult";
|
public const string MeetingResult = Default + ".MeetingResult";
|
||||||
public const string Program = Default + ".Program";
|
public const string Program = Default + ".Program";
|
||||||
|
|
@ -402,7 +400,6 @@ public static class PlatformConsts
|
||||||
public const string Psychologist = Default + ".Psychologist";
|
public const string Psychologist = Default + ".Psychologist";
|
||||||
public const string Meal = Default + ".Meal";
|
public const string Meal = Default + ".Meal";
|
||||||
public const string Lawyer = Default + ".Lawyer";
|
public const string Lawyer = Default + ".Lawyer";
|
||||||
public const string Event = Default + ".Event";
|
|
||||||
public const string LessonPeriod = Default + ".LessonPeriod";
|
public const string LessonPeriod = Default + ".LessonPeriod";
|
||||||
public const string RegistrationType = Default + ".RegistrationType";
|
public const string RegistrationType = Default + ".RegistrationType";
|
||||||
public const string RegistrationMethod = Default + ".RegistrationMethod";
|
public const string RegistrationMethod = Default + ".RegistrationMethod";
|
||||||
|
|
@ -410,6 +407,15 @@ public static class PlatformConsts
|
||||||
public const string Class = Default + ".Class";
|
public const string Class = Default + ".Class";
|
||||||
public const string Level = Default + ".Level";
|
public const string Level = Default + ".Level";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Hr
|
||||||
|
public static class Hr
|
||||||
|
{
|
||||||
|
public const string Default = Prefix.App + ".Hr";
|
||||||
|
public const string EventType = Default + ".EventType";
|
||||||
|
public const string EventCategory = Default + ".EventCategory";
|
||||||
|
public const string Event = Default + ".Event";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class ListFormCodes
|
public static class ListFormCodes
|
||||||
|
|
@ -520,6 +526,7 @@ public static class PlatformConsts
|
||||||
public const string Payroll = "list-payroll";
|
public const string Payroll = "list-payroll";
|
||||||
public const string Template360 = "list-template360";
|
public const string Template360 = "list-template360";
|
||||||
public const string Performance360 = "list-performance360";
|
public const string Performance360 = "list-performance360";
|
||||||
|
public const string Training = "list-training";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -68,9 +68,6 @@ public static class TableNameResolver
|
||||||
{ nameof(TableNameEnum.Uom), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
{ nameof(TableNameEnum.Uom), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
||||||
{ nameof(TableNameEnum.Behavior), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
{ nameof(TableNameEnum.Behavior), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
||||||
{ nameof(TableNameEnum.EducationStatus), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
{ nameof(TableNameEnum.EducationStatus), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
||||||
{ nameof(TableNameEnum.EventCategory), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
|
||||||
{ nameof(TableNameEnum.EventType), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
|
||||||
{ nameof(TableNameEnum.Event), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
|
||||||
{ nameof(TableNameEnum.EventPhoto), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
{ nameof(TableNameEnum.EventPhoto), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
||||||
{ nameof(TableNameEnum.EventComment), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
{ nameof(TableNameEnum.EventComment), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
||||||
{ nameof(TableNameEnum.Disease), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
{ nameof(TableNameEnum.Disease), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Administration) },
|
||||||
|
|
@ -134,6 +131,11 @@ public static class TableNameResolver
|
||||||
{ nameof(TableNameEnum.PayrollItem), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
{ nameof(TableNameEnum.PayrollItem), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
{ nameof(TableNameEnum.Template360), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
{ nameof(TableNameEnum.Template360), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
{ nameof(TableNameEnum.Performance360), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
{ nameof(TableNameEnum.Performance360), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
|
{ nameof(TableNameEnum.EventCategory), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
|
{ nameof(TableNameEnum.EventType), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
|
{ nameof(TableNameEnum.Event), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
|
{ nameof(TableNameEnum.Training), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
|
{ nameof(TableNameEnum.Certificate), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Hr) },
|
||||||
|
|
||||||
// 🔹 ACCOUNTING
|
// 🔹 ACCOUNTING
|
||||||
{ nameof(TableNameEnum.Bank), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Accounting) },
|
{ nameof(TableNameEnum.Bank), (PlatformConsts.TablePrefix.TenantByName, MenuPrefix.Accounting) },
|
||||||
|
|
|
||||||
|
|
@ -413,8 +413,6 @@ public static class SeedConsts
|
||||||
public const string Disease = Default + ".Disease";
|
public const string Disease = Default + ".Disease";
|
||||||
public const string Document = Default + ".Document";
|
public const string Document = Default + ".Document";
|
||||||
public const string EducationStatus = Default + ".EducationStatus";
|
public const string EducationStatus = Default + ".EducationStatus";
|
||||||
public const string EventType = Default + ".EventType";
|
|
||||||
public const string EventCategory = Default + ".EventCategory";
|
|
||||||
public const string MeetingMethod = Default + ".MeetingMethod";
|
public const string MeetingMethod = Default + ".MeetingMethod";
|
||||||
public const string MeetingResult = Default + ".MeetingResult";
|
public const string MeetingResult = Default + ".MeetingResult";
|
||||||
public const string Program = Default + ".Program";
|
public const string Program = Default + ".Program";
|
||||||
|
|
@ -431,7 +429,6 @@ public static class SeedConsts
|
||||||
public const string Psychologist = Default + ".Psychologist";
|
public const string Psychologist = Default + ".Psychologist";
|
||||||
public const string Meal = Default + ".Meal";
|
public const string Meal = Default + ".Meal";
|
||||||
public const string Lawyer = Default + ".Lawyer";
|
public const string Lawyer = Default + ".Lawyer";
|
||||||
public const string Event = Default + ".Event";
|
|
||||||
public const string LessonPeriod = Default + ".LessonPeriod";
|
public const string LessonPeriod = Default + ".LessonPeriod";
|
||||||
public const string RegistrationType = Default + ".RegistrationType";
|
public const string RegistrationType = Default + ".RegistrationType";
|
||||||
public const string RegistrationMethod = Default + ".RegistrationMethod";
|
public const string RegistrationMethod = Default + ".RegistrationMethod";
|
||||||
|
|
@ -462,6 +459,13 @@ public static class SeedConsts
|
||||||
public const string Payroll = Default + ".Payroll";
|
public const string Payroll = Default + ".Payroll";
|
||||||
public const string Template360 = Default + ".Template360";
|
public const string Template360 = Default + ".Template360";
|
||||||
public const string Performance360 = Default + ".Performance360";
|
public const string Performance360 = Default + ".Performance360";
|
||||||
|
|
||||||
|
public const string Events = Default + ".Events";
|
||||||
|
public const string EventType = Events + ".EventType";
|
||||||
|
public const string EventCategory = Events + ".EventCategory";
|
||||||
|
public const string Event = Events + ".Event";
|
||||||
|
|
||||||
|
public const string Training = Default + ".Training";
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class Accounting
|
public static class Accounting
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
using System;
|
||||||
|
using Volo.Abp.Domain.Entities.Auditing;
|
||||||
|
using Volo.Abp.MultiTenancy;
|
||||||
|
|
||||||
|
namespace Kurs.Platform.Entities;
|
||||||
|
|
||||||
|
public class Certificate : FullAuditedEntity<Guid>, IMultiTenant
|
||||||
|
{
|
||||||
|
public Guid? TenantId { get; set; }
|
||||||
|
|
||||||
|
public Guid TrainingId { get; set; }
|
||||||
|
public Training Training { get; set; }
|
||||||
|
|
||||||
|
public Guid EmployeeId { get; set; }
|
||||||
|
public int? Score { get; set; }
|
||||||
|
public DateTime IssueDate { get; set; }
|
||||||
|
public DateTime? ExpiryDate { get; set; }
|
||||||
|
public string CertificateUrl { get; set; }
|
||||||
|
}
|
||||||
28
api/src/Kurs.Platform.Domain/Entities/Tenant/Hr/Training.cs
Normal file
28
api/src/Kurs.Platform.Domain/Entities/Tenant/Hr/Training.cs
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
// Domain/Entities/Training.cs
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using Volo.Abp.Domain.Entities.Auditing;
|
||||||
|
using Volo.Abp.MultiTenancy;
|
||||||
|
|
||||||
|
namespace Kurs.Platform.Entities;
|
||||||
|
|
||||||
|
public class Training : FullAuditedEntity<Guid>, IMultiTenant
|
||||||
|
{
|
||||||
|
public Guid? TenantId { get; set; }
|
||||||
|
|
||||||
|
public string Title { get; set; }
|
||||||
|
public string Description { get; set; }
|
||||||
|
public string Instructor { get; set; }
|
||||||
|
public string Category { get; set; } // technical | soft-skills | management | compliance | other
|
||||||
|
public string Type { get; set; } // online | classroom | hybrid
|
||||||
|
public int Duration { get; set; }
|
||||||
|
public DateTime StartDate { get; set; }
|
||||||
|
public DateTime EndDate { get; set; }
|
||||||
|
public int MaxParticipants { get; set; }
|
||||||
|
public int Enrolled { get; set; }
|
||||||
|
public string Status { get; set; } // upcoming | ongoing | completed
|
||||||
|
public string Location { get; set; }
|
||||||
|
public string Thumbnail { get; set; }
|
||||||
|
|
||||||
|
public ICollection<Certificate> Certificates { get; set; }
|
||||||
|
}
|
||||||
|
|
@ -177,6 +177,8 @@ public class PlatformDbContext :
|
||||||
public DbSet<Leave> Leaves { get; set; }
|
public DbSet<Leave> Leaves { get; set; }
|
||||||
public DbSet<Template360> Template360s { get; set; }
|
public DbSet<Template360> Template360s { get; set; }
|
||||||
public DbSet<Performans360> Performans360s { get; set; }
|
public DbSet<Performans360> Performans360s { get; set; }
|
||||||
|
public DbSet<Training> Trainings { get; set; }
|
||||||
|
public DbSet<Certificate> Certificates { get; set; }
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
@ -1880,5 +1882,39 @@ public class PlatformDbContext :
|
||||||
.HasPrincipalKey(e => e.Id)
|
.HasPrincipalKey(e => e.Id)
|
||||||
.OnDelete(DeleteBehavior.Restrict);
|
.OnDelete(DeleteBehavior.Restrict);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
builder.Entity<Training>(b =>
|
||||||
|
{
|
||||||
|
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.Training)), Prefix.DbSchema);
|
||||||
|
b.ConfigureByConvention();
|
||||||
|
|
||||||
|
b.Property(x => x.Title).IsRequired().HasMaxLength(200);
|
||||||
|
b.Property(x => x.Description).HasMaxLength(1000);
|
||||||
|
b.Property(x => x.Instructor).IsRequired().HasMaxLength(100);
|
||||||
|
b.Property(x => x.Category).IsRequired().HasMaxLength(50);
|
||||||
|
b.Property(x => x.Type).IsRequired().HasMaxLength(50);
|
||||||
|
b.Property(x => x.Status).IsRequired().HasMaxLength(50);
|
||||||
|
b.Property(x => x.Location).IsRequired().HasMaxLength(200);
|
||||||
|
b.Property(x => x.Thumbnail).HasMaxLength(500);
|
||||||
|
b.Property(x => x.Duration).HasDefaultValue(0);
|
||||||
|
b.Property(x => x.MaxParticipants).HasDefaultValue(0);
|
||||||
|
b.Property(x => x.Enrolled).HasDefaultValue(0);
|
||||||
|
});
|
||||||
|
|
||||||
|
builder.Entity<Certificate>(b =>
|
||||||
|
{
|
||||||
|
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.Certificate)), Prefix.DbSchema);
|
||||||
|
b.ConfigureByConvention();
|
||||||
|
|
||||||
|
b.Property(x => x.EmployeeId).IsRequired();
|
||||||
|
b.Property(x => x.IssueDate).IsRequired();
|
||||||
|
b.Property(x => x.CertificateUrl).HasMaxLength(300);
|
||||||
|
|
||||||
|
b.HasOne(x => x.Training)
|
||||||
|
.WithMany(e => e.Certificates)
|
||||||
|
.HasForeignKey(x => x.TrainingId)
|
||||||
|
.HasPrincipalKey(e => e.Id)
|
||||||
|
.OnDelete(DeleteBehavior.Cascade);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ using Volo.Abp.EntityFrameworkCore;
|
||||||
namespace Kurs.Platform.Migrations
|
namespace Kurs.Platform.Migrations
|
||||||
{
|
{
|
||||||
[DbContext(typeof(PlatformDbContext))]
|
[DbContext(typeof(PlatformDbContext))]
|
||||||
[Migration("20251023210323_Initial")]
|
[Migration("20251024083852_Initial")]
|
||||||
partial class Initial
|
partial class Initial
|
||||||
{
|
{
|
||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
|
|
@ -1529,6 +1529,71 @@ namespace Kurs.Platform.Migrations
|
||||||
b.ToTable("T_Sas_BranchUsers", (string)null);
|
b.ToTable("T_Sas_BranchUsers", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Certificate", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<string>("CertificateUrl")
|
||||||
|
.HasMaxLength(300)
|
||||||
|
.HasColumnType("nvarchar(300)");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("CreationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("CreatorId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("CreatorId");
|
||||||
|
|
||||||
|
b.Property<Guid?>("DeleterId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("DeleterId");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("DeletionTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("DeletionTime");
|
||||||
|
|
||||||
|
b.Property<Guid>("EmployeeId")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("ExpiryDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<bool>("IsDeleted")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("bit")
|
||||||
|
.HasDefaultValue(false)
|
||||||
|
.HasColumnName("IsDeleted");
|
||||||
|
|
||||||
|
b.Property<DateTime>("IssueDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastModificationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("LastModificationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("LastModifierId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("LastModifierId");
|
||||||
|
|
||||||
|
b.Property<int?>("Score")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<Guid?>("TenantId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("TenantId");
|
||||||
|
|
||||||
|
b.Property<Guid>("TrainingId")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("TrainingId");
|
||||||
|
|
||||||
|
b.ToTable("T_Hr_Certificate", (string)null);
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
|
@ -3632,7 +3697,7 @@ namespace Kurs.Platform.Migrations
|
||||||
|
|
||||||
b.HasIndex("TypeId");
|
b.HasIndex("TypeId");
|
||||||
|
|
||||||
b.ToTable("T_Adm_Event", (string)null);
|
b.ToTable("T_Hr_Event", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.EventCategory", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.EventCategory", b =>
|
||||||
|
|
@ -3681,7 +3746,7 @@ namespace Kurs.Platform.Migrations
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.ToTable("T_Adm_EventCategory", (string)null);
|
b.ToTable("T_Hr_EventCategory", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.EventComment", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.EventComment", b =>
|
||||||
|
|
@ -3844,7 +3909,7 @@ namespace Kurs.Platform.Migrations
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.ToTable("T_Adm_EventType", (string)null);
|
b.ToTable("T_Hr_EventType", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.GlobalSearch", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.GlobalSearch", b =>
|
||||||
|
|
@ -7581,6 +7646,109 @@ namespace Kurs.Platform.Migrations
|
||||||
b.ToTable("T_Hr_Template360", (string)null);
|
b.ToTable("T_Hr_Template360", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Training", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<string>("Category")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(50)
|
||||||
|
.HasColumnType("nvarchar(50)");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("CreationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("CreatorId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("CreatorId");
|
||||||
|
|
||||||
|
b.Property<Guid?>("DeleterId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("DeleterId");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("DeletionTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("DeletionTime");
|
||||||
|
|
||||||
|
b.Property<string>("Description")
|
||||||
|
.HasMaxLength(1000)
|
||||||
|
.HasColumnType("nvarchar(1000)");
|
||||||
|
|
||||||
|
b.Property<int>("Duration")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int")
|
||||||
|
.HasDefaultValue(0);
|
||||||
|
|
||||||
|
b.Property<DateTime>("EndDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<int>("Enrolled")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int")
|
||||||
|
.HasDefaultValue(0);
|
||||||
|
|
||||||
|
b.Property<string>("Instructor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(100)
|
||||||
|
.HasColumnType("nvarchar(100)");
|
||||||
|
|
||||||
|
b.Property<bool>("IsDeleted")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("bit")
|
||||||
|
.HasDefaultValue(false)
|
||||||
|
.HasColumnName("IsDeleted");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastModificationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("LastModificationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("LastModifierId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("LastModifierId");
|
||||||
|
|
||||||
|
b.Property<string>("Location")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("nvarchar(200)");
|
||||||
|
|
||||||
|
b.Property<int>("MaxParticipants")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int")
|
||||||
|
.HasDefaultValue(0);
|
||||||
|
|
||||||
|
b.Property<DateTime>("StartDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<string>("Status")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(50)
|
||||||
|
.HasColumnType("nvarchar(50)");
|
||||||
|
|
||||||
|
b.Property<Guid?>("TenantId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("TenantId");
|
||||||
|
|
||||||
|
b.Property<string>("Thumbnail")
|
||||||
|
.HasMaxLength(500)
|
||||||
|
.HasColumnType("nvarchar(500)");
|
||||||
|
|
||||||
|
b.Property<string>("Title")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("nvarchar(200)");
|
||||||
|
|
||||||
|
b.Property<string>("Type")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(50)
|
||||||
|
.HasColumnType("nvarchar(50)");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.ToTable("T_Hr_Training", (string)null);
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.Uom", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.Uom", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
|
@ -10206,6 +10374,17 @@ namespace Kurs.Platform.Migrations
|
||||||
b.Navigation("Category");
|
b.Navigation("Category");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Certificate", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("Kurs.Platform.Entities.Training", "Training")
|
||||||
|
.WithMany("Certificates")
|
||||||
|
.HasForeignKey("TrainingId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Training");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Kurs.Platform.Entities.Country", null)
|
b.HasOne("Kurs.Platform.Entities.Country", null)
|
||||||
|
|
@ -10987,6 +11166,11 @@ namespace Kurs.Platform.Migrations
|
||||||
b.Navigation("Performans360s");
|
b.Navigation("Performans360s");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Training", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("Certificates");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.UomCategory", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.UomCategory", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Uoms");
|
b.Navigation("Uoms");
|
||||||
|
|
@ -1274,46 +1274,6 @@ namespace Kurs.Platform.Migrations
|
||||||
table.PrimaryKey("PK_T_Adm_EducationStatus", x => x.Id);
|
table.PrimaryKey("PK_T_Adm_EducationStatus", x => x.Id);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "T_Adm_EventCategory",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
Name = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false),
|
|
||||||
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
|
||||||
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
|
||||||
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_T_Adm_EventCategory", x => x.Id);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "T_Adm_EventType",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
Name = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false),
|
|
||||||
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
|
||||||
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
|
||||||
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_T_Adm_EventType", x => x.Id);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Adm_InstallmentOption",
|
name: "T_Adm_InstallmentOption",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -1798,6 +1758,46 @@ namespace Kurs.Platform.Migrations
|
||||||
table.PrimaryKey("PK_T_Hr_EmploymentType", x => x.Id);
|
table.PrimaryKey("PK_T_Hr_EmploymentType", x => x.Id);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Hr_EventCategory",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
Name = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Hr_EventCategory", x => x.Id);
|
||||||
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Hr_EventType",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
Name = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Hr_EventType", x => x.Id);
|
||||||
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Hr_Payroll",
|
name: "T_Hr_Payroll",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -1853,6 +1853,38 @@ namespace Kurs.Platform.Migrations
|
||||||
table.PrimaryKey("PK_T_Hr_Template360", x => x.Id);
|
table.PrimaryKey("PK_T_Hr_Template360", x => x.Id);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Hr_Training",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
Title = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
|
||||||
|
Description = table.Column<string>(type: "nvarchar(1000)", maxLength: 1000, nullable: true),
|
||||||
|
Instructor = table.Column<string>(type: "nvarchar(100)", maxLength: 100, nullable: false),
|
||||||
|
Category = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
|
||||||
|
Type = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
|
||||||
|
Duration = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
|
||||||
|
StartDate = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
EndDate = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
MaxParticipants = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
|
||||||
|
Enrolled = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
|
||||||
|
Status = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
|
||||||
|
Location = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
|
||||||
|
Thumbnail = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Hr_Training", x => x.Id);
|
||||||
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Prt_Interesting",
|
name: "T_Prt_Interesting",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -2937,47 +2969,6 @@ namespace Kurs.Platform.Migrations
|
||||||
onDelete: ReferentialAction.Restrict);
|
onDelete: ReferentialAction.Restrict);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "T_Adm_Event",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
CategoryId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
TypeId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
Name = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
|
|
||||||
Place = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: true),
|
|
||||||
Description = table.Column<string>(type: "nvarchar(1000)", maxLength: 1000, nullable: true),
|
|
||||||
Status = table.Column<string>(type: "nvarchar(20)", maxLength: 20, nullable: true),
|
|
||||||
OrganizerId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
ParticipantsCount = table.Column<int>(type: "int", nullable: false),
|
|
||||||
Likes = table.Column<int>(type: "int", nullable: false),
|
|
||||||
isPublished = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
|
||||||
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
|
||||||
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
|
||||||
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_T_Adm_Event", x => x.Id);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_T_Adm_Event_T_Adm_EventCategory_CategoryId",
|
|
||||||
column: x => x.CategoryId,
|
|
||||||
principalTable: "T_Adm_EventCategory",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_T_Adm_Event_T_Adm_EventType_TypeId",
|
|
||||||
column: x => x.TypeId,
|
|
||||||
principalTable: "T_Adm_EventType",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Restrict);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Adm_OrderItem",
|
name: "T_Adm_OrderItem",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -3235,6 +3226,47 @@ namespace Kurs.Platform.Migrations
|
||||||
onDelete: ReferentialAction.Cascade);
|
onDelete: ReferentialAction.Cascade);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Hr_Event",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
CategoryId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TypeId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
Name = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
|
||||||
|
Place = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: true),
|
||||||
|
Description = table.Column<string>(type: "nvarchar(1000)", maxLength: 1000, nullable: true),
|
||||||
|
Status = table.Column<string>(type: "nvarchar(20)", maxLength: 20, nullable: true),
|
||||||
|
OrganizerId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
ParticipantsCount = table.Column<int>(type: "int", nullable: false),
|
||||||
|
Likes = table.Column<int>(type: "int", nullable: false),
|
||||||
|
isPublished = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Hr_Event", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_T_Hr_Event_T_Hr_EventCategory_CategoryId",
|
||||||
|
column: x => x.CategoryId,
|
||||||
|
principalTable: "T_Hr_EventCategory",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_T_Hr_Event_T_Hr_EventType_TypeId",
|
||||||
|
column: x => x.TypeId,
|
||||||
|
principalTable: "T_Hr_EventType",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Restrict);
|
||||||
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Hr_PayrollItem",
|
name: "T_Hr_PayrollItem",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -3266,6 +3298,37 @@ namespace Kurs.Platform.Migrations
|
||||||
onDelete: ReferentialAction.Cascade);
|
onDelete: ReferentialAction.Cascade);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Hr_Certificate",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
TrainingId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
EmployeeId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
Score = table.Column<int>(type: "int", nullable: true),
|
||||||
|
IssueDate = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
ExpiryDate = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
CertificateUrl = table.Column<string>(type: "nvarchar(300)", maxLength: 300, nullable: true),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Hr_Certificate", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_T_Hr_Certificate_T_Hr_Training_TrainingId",
|
||||||
|
column: x => x.TrainingId,
|
||||||
|
principalTable: "T_Hr_Training",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Sas_ApiEndpoint",
|
name: "T_Sas_ApiEndpoint",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -3636,62 +3699,6 @@ namespace Kurs.Platform.Migrations
|
||||||
onDelete: ReferentialAction.Cascade);
|
onDelete: ReferentialAction.Cascade);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "T_Adm_EventComment",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
EventId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
UserId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
Comment = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
|
|
||||||
Likes = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
|
|
||||||
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
|
||||||
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
|
||||||
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_T_Adm_EventComment", x => x.Id);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_T_Adm_EventComment_T_Adm_Event_EventId",
|
|
||||||
column: x => x.EventId,
|
|
||||||
principalTable: "T_Adm_Event",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "T_Adm_EventPhoto",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
EventId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
|
||||||
Url = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
|
|
||||||
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
|
||||||
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
|
||||||
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
|
||||||
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_T_Adm_EventPhoto", x => x.Id);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_T_Adm_EventPhoto_T_Adm_Event_EventId",
|
|
||||||
column: x => x.EventId,
|
|
||||||
principalTable: "T_Adm_Event",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Crd_QuestionOption",
|
name: "T_Crd_QuestionOption",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -3721,6 +3728,62 @@ namespace Kurs.Platform.Migrations
|
||||||
onDelete: ReferentialAction.Cascade);
|
onDelete: ReferentialAction.Cascade);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Adm_EventComment",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
EventId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
UserId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
Comment = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
|
||||||
|
Likes = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Adm_EventComment", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_T_Adm_EventComment_T_Hr_Event_EventId",
|
||||||
|
column: x => x.EventId,
|
||||||
|
principalTable: "T_Hr_Event",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "T_Adm_EventPhoto",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
EventId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
|
||||||
|
Url = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
|
||||||
|
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
|
||||||
|
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
|
||||||
|
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
|
||||||
|
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_T_Adm_EventPhoto", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_T_Adm_EventPhoto_T_Hr_Event_EventId",
|
||||||
|
column: x => x.EventId,
|
||||||
|
principalTable: "T_Hr_Event",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
name: "T_Sas_ReportGenerated",
|
name: "T_Sas_ReportGenerated",
|
||||||
columns: table => new
|
columns: table => new
|
||||||
|
|
@ -4578,16 +4641,6 @@ namespace Kurs.Platform.Migrations
|
||||||
table: "T_Adm_BlogPost",
|
table: "T_Adm_BlogPost",
|
||||||
column: "Slug");
|
column: "Slug");
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_T_Adm_Event_CategoryId",
|
|
||||||
table: "T_Adm_Event",
|
|
||||||
column: "CategoryId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_T_Adm_Event_TypeId",
|
|
||||||
table: "T_Adm_Event",
|
|
||||||
column: "TypeId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
migrationBuilder.CreateIndex(
|
||||||
name: "IX_T_Adm_EventComment_EventId",
|
name: "IX_T_Adm_EventComment_EventId",
|
||||||
table: "T_Adm_EventComment",
|
table: "T_Adm_EventComment",
|
||||||
|
|
@ -4685,6 +4738,11 @@ namespace Kurs.Platform.Migrations
|
||||||
table: "T_Crd_QuestionOption",
|
table: "T_Crd_QuestionOption",
|
||||||
column: "QuestionId");
|
column: "QuestionId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_T_Hr_Certificate_TrainingId",
|
||||||
|
table: "T_Hr_Certificate",
|
||||||
|
column: "TrainingId");
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
migrationBuilder.CreateIndex(
|
||||||
name: "IX_T_Hr_CostCenter_CurrencyId",
|
name: "IX_T_Hr_CostCenter_CurrencyId",
|
||||||
table: "T_Hr_CostCenter",
|
table: "T_Hr_CostCenter",
|
||||||
|
|
@ -4755,6 +4813,16 @@ namespace Kurs.Platform.Migrations
|
||||||
table: "T_Hr_Employee",
|
table: "T_Hr_Employee",
|
||||||
column: "ManagerId");
|
column: "ManagerId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_T_Hr_Event_CategoryId",
|
||||||
|
table: "T_Hr_Event",
|
||||||
|
column: "CategoryId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_T_Hr_Event_TypeId",
|
||||||
|
table: "T_Hr_Event",
|
||||||
|
column: "TypeId");
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
migrationBuilder.CreateIndex(
|
||||||
name: "IX_T_Hr_JobPosition_CurrencyId",
|
name: "IX_T_Hr_JobPosition_CurrencyId",
|
||||||
table: "T_Hr_JobPosition",
|
table: "T_Hr_JobPosition",
|
||||||
|
|
@ -5112,6 +5180,9 @@ namespace Kurs.Platform.Migrations
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Crd_QuestionTag");
|
name: "T_Crd_QuestionTag");
|
||||||
|
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "T_Hr_Certificate");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Hr_Leave");
|
name: "T_Hr_Leave");
|
||||||
|
|
||||||
|
|
@ -5230,7 +5301,7 @@ namespace Kurs.Platform.Migrations
|
||||||
name: "T_Adm_BlogCategory");
|
name: "T_Adm_BlogCategory");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Adm_Event");
|
name: "T_Hr_Event");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Adm_Order");
|
name: "T_Adm_Order");
|
||||||
|
|
@ -5247,6 +5318,9 @@ namespace Kurs.Platform.Migrations
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Crd_Question");
|
name: "T_Crd_Question");
|
||||||
|
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "T_Hr_Training");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Hr_Payroll");
|
name: "T_Hr_Payroll");
|
||||||
|
|
||||||
|
|
@ -5281,10 +5355,10 @@ namespace Kurs.Platform.Migrations
|
||||||
name: "P_Sas_ListForm");
|
name: "P_Sas_ListForm");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Adm_EventCategory");
|
name: "T_Hr_EventCategory");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Adm_EventType");
|
name: "T_Hr_EventType");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "T_Crd_QuestionPool");
|
name: "T_Crd_QuestionPool");
|
||||||
|
|
@ -1526,6 +1526,71 @@ namespace Kurs.Platform.Migrations
|
||||||
b.ToTable("T_Sas_BranchUsers", (string)null);
|
b.ToTable("T_Sas_BranchUsers", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Certificate", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<string>("CertificateUrl")
|
||||||
|
.HasMaxLength(300)
|
||||||
|
.HasColumnType("nvarchar(300)");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("CreationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("CreatorId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("CreatorId");
|
||||||
|
|
||||||
|
b.Property<Guid?>("DeleterId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("DeleterId");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("DeletionTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("DeletionTime");
|
||||||
|
|
||||||
|
b.Property<Guid>("EmployeeId")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("ExpiryDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<bool>("IsDeleted")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("bit")
|
||||||
|
.HasDefaultValue(false)
|
||||||
|
.HasColumnName("IsDeleted");
|
||||||
|
|
||||||
|
b.Property<DateTime>("IssueDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastModificationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("LastModificationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("LastModifierId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("LastModifierId");
|
||||||
|
|
||||||
|
b.Property<int?>("Score")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<Guid?>("TenantId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("TenantId");
|
||||||
|
|
||||||
|
b.Property<Guid>("TrainingId")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("TrainingId");
|
||||||
|
|
||||||
|
b.ToTable("T_Hr_Certificate", (string)null);
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
|
@ -3629,7 +3694,7 @@ namespace Kurs.Platform.Migrations
|
||||||
|
|
||||||
b.HasIndex("TypeId");
|
b.HasIndex("TypeId");
|
||||||
|
|
||||||
b.ToTable("T_Adm_Event", (string)null);
|
b.ToTable("T_Hr_Event", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.EventCategory", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.EventCategory", b =>
|
||||||
|
|
@ -3678,7 +3743,7 @@ namespace Kurs.Platform.Migrations
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.ToTable("T_Adm_EventCategory", (string)null);
|
b.ToTable("T_Hr_EventCategory", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.EventComment", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.EventComment", b =>
|
||||||
|
|
@ -3841,7 +3906,7 @@ namespace Kurs.Platform.Migrations
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.ToTable("T_Adm_EventType", (string)null);
|
b.ToTable("T_Hr_EventType", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.GlobalSearch", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.GlobalSearch", b =>
|
||||||
|
|
@ -7578,6 +7643,109 @@ namespace Kurs.Platform.Migrations
|
||||||
b.ToTable("T_Hr_Template360", (string)null);
|
b.ToTable("T_Hr_Template360", (string)null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Training", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<string>("Category")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(50)
|
||||||
|
.HasColumnType("nvarchar(50)");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("CreationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("CreatorId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("CreatorId");
|
||||||
|
|
||||||
|
b.Property<Guid?>("DeleterId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("DeleterId");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("DeletionTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("DeletionTime");
|
||||||
|
|
||||||
|
b.Property<string>("Description")
|
||||||
|
.HasMaxLength(1000)
|
||||||
|
.HasColumnType("nvarchar(1000)");
|
||||||
|
|
||||||
|
b.Property<int>("Duration")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int")
|
||||||
|
.HasDefaultValue(0);
|
||||||
|
|
||||||
|
b.Property<DateTime>("EndDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<int>("Enrolled")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int")
|
||||||
|
.HasDefaultValue(0);
|
||||||
|
|
||||||
|
b.Property<string>("Instructor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(100)
|
||||||
|
.HasColumnType("nvarchar(100)");
|
||||||
|
|
||||||
|
b.Property<bool>("IsDeleted")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("bit")
|
||||||
|
.HasDefaultValue(false)
|
||||||
|
.HasColumnName("IsDeleted");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastModificationTime")
|
||||||
|
.HasColumnType("datetime2")
|
||||||
|
.HasColumnName("LastModificationTime");
|
||||||
|
|
||||||
|
b.Property<Guid?>("LastModifierId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("LastModifierId");
|
||||||
|
|
||||||
|
b.Property<string>("Location")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("nvarchar(200)");
|
||||||
|
|
||||||
|
b.Property<int>("MaxParticipants")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("int")
|
||||||
|
.HasDefaultValue(0);
|
||||||
|
|
||||||
|
b.Property<DateTime>("StartDate")
|
||||||
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
|
b.Property<string>("Status")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(50)
|
||||||
|
.HasColumnType("nvarchar(50)");
|
||||||
|
|
||||||
|
b.Property<Guid?>("TenantId")
|
||||||
|
.HasColumnType("uniqueidentifier")
|
||||||
|
.HasColumnName("TenantId");
|
||||||
|
|
||||||
|
b.Property<string>("Thumbnail")
|
||||||
|
.HasMaxLength(500)
|
||||||
|
.HasColumnType("nvarchar(500)");
|
||||||
|
|
||||||
|
b.Property<string>("Title")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("nvarchar(200)");
|
||||||
|
|
||||||
|
b.Property<string>("Type")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(50)
|
||||||
|
.HasColumnType("nvarchar(50)");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.ToTable("T_Hr_Training", (string)null);
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.Uom", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.Uom", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
|
@ -10203,6 +10371,17 @@ namespace Kurs.Platform.Migrations
|
||||||
b.Navigation("Category");
|
b.Navigation("Category");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Certificate", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("Kurs.Platform.Entities.Training", "Training")
|
||||||
|
.WithMany("Certificates")
|
||||||
|
.HasForeignKey("TrainingId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Training");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.City", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Kurs.Platform.Entities.Country", null)
|
b.HasOne("Kurs.Platform.Entities.Country", null)
|
||||||
|
|
@ -10984,6 +11163,11 @@ namespace Kurs.Platform.Migrations
|
||||||
b.Navigation("Performans360s");
|
b.Navigation("Performans360s");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("Kurs.Platform.Entities.Training", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("Certificates");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Kurs.Platform.Entities.UomCategory", b =>
|
modelBuilder.Entity("Kurs.Platform.Entities.UomCategory", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Uoms");
|
b.Navigation("Uoms");
|
||||||
|
|
|
||||||
|
|
@ -100,9 +100,7 @@
|
||||||
"props": null,
|
"props": null,
|
||||||
"description": null,
|
"description": null,
|
||||||
"isActive": true,
|
"isActive": true,
|
||||||
"dependencies": [
|
"dependencies": ["AxiosListComponent"]
|
||||||
"AxiosListComponent"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"ReportCategories": [
|
"ReportCategories": [
|
||||||
|
|
@ -2211,12 +2209,7 @@
|
||||||
"minSalary": 80000,
|
"minSalary": 80000,
|
||||||
"maxSalary": 120000,
|
"maxSalary": 120000,
|
||||||
"currencyCode": "USD",
|
"currencyCode": "USD",
|
||||||
"requiredSkills": [
|
"requiredSkills": ["JavaScript", "TypeScript", "React", "Node.js"],
|
||||||
"JavaScript",
|
|
||||||
"TypeScript",
|
|
||||||
"React",
|
|
||||||
"Node.js"
|
|
||||||
],
|
|
||||||
"responsibilities": [
|
"responsibilities": [
|
||||||
"Develop frontend and backend applications",
|
"Develop frontend and backend applications",
|
||||||
"Write clean and maintainable code",
|
"Write clean and maintainable code",
|
||||||
|
|
@ -3412,5 +3405,67 @@
|
||||||
"departmentCode": "KAL",
|
"departmentCode": "KAL",
|
||||||
"targetEmployees": "EMP-005|EMP-006"
|
"targetEmployees": "EMP-005|EMP-006"
|
||||||
}
|
}
|
||||||
|
],
|
||||||
|
"Trainings": [
|
||||||
|
{
|
||||||
|
"title": "React & TypeScript İleri Seviye",
|
||||||
|
"description": "Modern React uygulamaları geliştirmek için TypeScript kullanımı, hooks, context API ve performans optimizasyonu",
|
||||||
|
"instructor": "Mehmet Demir",
|
||||||
|
"category": "technical",
|
||||||
|
"type": "online",
|
||||||
|
"duration": 16,
|
||||||
|
"startDate": "01-11-2024",
|
||||||
|
"endDate": "08-11-2024",
|
||||||
|
"maxParticipants": 20,
|
||||||
|
"enrolled": 15,
|
||||||
|
"status": "upcoming",
|
||||||
|
"location": "Eğitim Salonu B",
|
||||||
|
"thumbnail": "https://images.unsplash.com/photo-1633356122544-f134324a6cee?w=400&h=300&fit=crop"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Etkili İletişim ve Sunum Teknikleri",
|
||||||
|
"description": "İş hayatında etkili iletişim kurma, profesyonel sunum hazırlama ve konuşma becerileri geliştirme",
|
||||||
|
"instructor": "Ayşe Kara",
|
||||||
|
"category": "soft-skills",
|
||||||
|
"type": "classroom",
|
||||||
|
"duration": 8,
|
||||||
|
"startDate": "05-10-2024",
|
||||||
|
"endDate": "05-10-2024",
|
||||||
|
"maxParticipants": 15,
|
||||||
|
"enrolled": 12,
|
||||||
|
"status": "ongoing",
|
||||||
|
"location": "Eğitim Salonu A",
|
||||||
|
"thumbnail": "https://images.unsplash.com/photo-1557804506-669a67965ba0?w=400&h=300&fit=crop"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Agile & Scrum Master Eğitimi",
|
||||||
|
"description": "Çevik yazılım geliştirme metodolojileri, Scrum framework ve sertifikasyon hazırlığı",
|
||||||
|
"instructor": "Can Öztürk",
|
||||||
|
"category": "management",
|
||||||
|
"type": "hybrid",
|
||||||
|
"duration": 24,
|
||||||
|
"startDate": "10-09-2024",
|
||||||
|
"endDate": "03-09-2024",
|
||||||
|
"maxParticipants": 25,
|
||||||
|
"enrolled": 25,
|
||||||
|
"status": "completed",
|
||||||
|
"location": "Eğitim Salonu C",
|
||||||
|
"thumbnail": "https://images.unsplash.com/photo-1552664730-d307ca884978?w=400&h=300&fit=crop"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Siber Güvenlik ve Veri Koruma",
|
||||||
|
"description": "KVKK uyumluluğu, siber güvenlik tehditleri ve kurumsal veri koruma stratejileri",
|
||||||
|
"instructor": "Zeynep Arslan",
|
||||||
|
"category": "compliance",
|
||||||
|
"type": "online",
|
||||||
|
"duration": 12,
|
||||||
|
"startDate": "05-11-2024",
|
||||||
|
"endDate": "02-11-2024",
|
||||||
|
"maxParticipants": 50,
|
||||||
|
"enrolled": 8,
|
||||||
|
"status": "upcoming",
|
||||||
|
"location": "Eğitim Salonu D",
|
||||||
|
"thumbnail": "https://images.unsplash.com/photo-1550751827-4bd374c3f58b?w=400&h=300&fit=crop"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,7 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
|
||||||
private readonly IRepository<Payroll, Guid> _payrollRepository;
|
private readonly IRepository<Payroll, Guid> _payrollRepository;
|
||||||
private readonly IRepository<Template360, Guid> _template360Repository;
|
private readonly IRepository<Template360, Guid> _template360Repository;
|
||||||
private readonly IRepository<Performans360, Guid> _performans360Repository;
|
private readonly IRepository<Performans360, Guid> _performans360Repository;
|
||||||
|
private readonly IRepository<Training, Guid> _trainingRepository;
|
||||||
|
|
||||||
public TenantDataSeeder(
|
public TenantDataSeeder(
|
||||||
IRepository<IdentityUser, Guid> repositoryUser,
|
IRepository<IdentityUser, Guid> repositoryUser,
|
||||||
|
|
@ -129,7 +130,8 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
|
||||||
IRepository<Overtime, Guid> overtimeRepository,
|
IRepository<Overtime, Guid> overtimeRepository,
|
||||||
IRepository<Payroll, Guid> payrollRepository,
|
IRepository<Payroll, Guid> payrollRepository,
|
||||||
IRepository<Template360, Guid> template360Repository,
|
IRepository<Template360, Guid> template360Repository,
|
||||||
IRepository<Performans360, Guid> performans360Repository
|
IRepository<Performans360, Guid> performans360Repository,
|
||||||
|
IRepository<Training, Guid> trainingRepository
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
_repositoryUser = repositoryUser;
|
_repositoryUser = repositoryUser;
|
||||||
|
|
@ -187,6 +189,7 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
|
||||||
_payrollRepository = payrollRepository;
|
_payrollRepository = payrollRepository;
|
||||||
_template360Repository = template360Repository;
|
_template360Repository = template360Repository;
|
||||||
_performans360Repository = performans360Repository;
|
_performans360Repository = performans360Repository;
|
||||||
|
_trainingRepository = trainingRepository;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static IConfigurationRoot BuildConfiguration()
|
private static IConfigurationRoot BuildConfiguration()
|
||||||
|
|
@ -1177,5 +1180,28 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
|
||||||
TargetEmployees = string.Join("|", targetEmployees.Select(e => e.Id))
|
TargetEmployees = string.Join("|", targetEmployees.Select(e => e.Id))
|
||||||
}, autoSave: true);
|
}, autoSave: true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach (var item in items.Trainings)
|
||||||
|
{
|
||||||
|
var exists = await _trainingRepository.AnyAsync(x => x.Title == item.Title);
|
||||||
|
if (exists)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
await _trainingRepository.InsertAsync(new Training
|
||||||
|
{
|
||||||
|
Title = item.Title,
|
||||||
|
Description = item.Description,
|
||||||
|
Instructor = item.Instructor,
|
||||||
|
Category = item.Category,
|
||||||
|
Type = item.Type,
|
||||||
|
Duration = item.Duration,
|
||||||
|
StartDate = item.StartDate,
|
||||||
|
EndDate = item.EndDate,
|
||||||
|
MaxParticipants = item.MaxParticipants,
|
||||||
|
Status = item.Status,
|
||||||
|
Location = item.Location,
|
||||||
|
Thumbnail = item.Thumbnail
|
||||||
|
}, autoSave: true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,23 @@ public class TenantSeederDto
|
||||||
public List<PayrollSeedDto> Payrolls { get; set; }
|
public List<PayrollSeedDto> Payrolls { get; set; }
|
||||||
public List<Template360SeedDto> Template360s { get; set; }
|
public List<Template360SeedDto> Template360s { get; set; }
|
||||||
public List<Performans360SeedDto> Performans360s { get; set; }
|
public List<Performans360SeedDto> Performans360s { get; set; }
|
||||||
|
public List<TrainingSeedDto> Trainings { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class TrainingSeedDto
|
||||||
|
{
|
||||||
|
public string Title { get; set; }
|
||||||
|
public string Description { get; set; }
|
||||||
|
public string Instructor { get; set; }
|
||||||
|
public string Category { get; set; }
|
||||||
|
public string Type { get; set; }
|
||||||
|
public string Location { get; set; }
|
||||||
|
public string Thumbnail { get; set; }
|
||||||
|
public int Duration { get; set; }
|
||||||
|
public DateTime StartDate { get; set; }
|
||||||
|
public DateTime EndDate { get; set; }
|
||||||
|
public int MaxParticipants { get; set; }
|
||||||
|
public string Status { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class Performans360SeedDto
|
public class Performans360SeedDto
|
||||||
|
|
|
||||||
|
|
@ -387,102 +387,6 @@ export const mockDocuments: Document[] = [
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
export const mockTrainings: Training[] = [
|
|
||||||
{
|
|
||||||
id: 'tr1',
|
|
||||||
title: 'React & TypeScript İleri Seviye',
|
|
||||||
description:
|
|
||||||
'Modern React uygulamaları geliştirmek için TypeScript kullanımı, hooks, context API ve performans optimizasyonu',
|
|
||||||
instructor: 'Mehmet Demir',
|
|
||||||
category: 'technical',
|
|
||||||
type: 'online',
|
|
||||||
duration: 16,
|
|
||||||
startDate: new Date('2024-11-01'),
|
|
||||||
endDate: new Date('2024-11-08'),
|
|
||||||
maxParticipants: 20,
|
|
||||||
enrolled: 15,
|
|
||||||
status: 'upcoming',
|
|
||||||
thumbnail: 'https://images.unsplash.com/photo-1633356122544-f134324a6cee?w=400&h=300&fit=crop',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'tr2',
|
|
||||||
title: 'Etkili İletişim ve Sunum Teknikleri',
|
|
||||||
description:
|
|
||||||
'İş hayatında etkili iletişim kurma, profesyonel sunum hazırlama ve konuşma becerileri geliştirme',
|
|
||||||
instructor: 'Ayşe Kara',
|
|
||||||
category: 'soft-skills',
|
|
||||||
type: 'classroom',
|
|
||||||
duration: 8,
|
|
||||||
startDate: new Date('2024-10-25'),
|
|
||||||
endDate: new Date('2024-10-25'),
|
|
||||||
maxParticipants: 15,
|
|
||||||
enrolled: 12,
|
|
||||||
status: 'ongoing',
|
|
||||||
location: 'Eğitim Salonu A',
|
|
||||||
thumbnail: 'https://images.unsplash.com/photo-1557804506-669a67965ba0?w=400&h=300&fit=crop',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'tr3',
|
|
||||||
title: 'Agile & Scrum Master Eğitimi',
|
|
||||||
description:
|
|
||||||
'Çevik yazılım geliştirme metodolojileri, Scrum framework ve sertifikasyon hazırlığı',
|
|
||||||
instructor: 'Can Öztürk',
|
|
||||||
category: 'management',
|
|
||||||
type: 'hybrid',
|
|
||||||
duration: 24,
|
|
||||||
startDate: new Date('2024-09-15'),
|
|
||||||
endDate: new Date('2024-09-30'),
|
|
||||||
maxParticipants: 25,
|
|
||||||
enrolled: 25,
|
|
||||||
status: 'completed',
|
|
||||||
thumbnail: 'https://images.unsplash.com/photo-1552664730-d307ca884978?w=400&h=300&fit=crop',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'tr4',
|
|
||||||
title: 'Siber Güvenlik ve Veri Koruma',
|
|
||||||
description: 'KVKK uyumluluğu, siber güvenlik tehditleri ve kurumsal veri koruma stratejileri',
|
|
||||||
instructor: 'Zeynep Arslan',
|
|
||||||
category: 'compliance',
|
|
||||||
type: 'online',
|
|
||||||
duration: 12,
|
|
||||||
startDate: new Date('2024-11-15'),
|
|
||||||
endDate: new Date('2024-11-22'),
|
|
||||||
maxParticipants: 50,
|
|
||||||
enrolled: 8,
|
|
||||||
status: 'upcoming',
|
|
||||||
thumbnail: 'https://images.unsplash.com/photo-1550751827-4bd374c3f58b?w=400&h=300&fit=crop',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
|
|
||||||
export const mockCertificates: Certificate[] = [
|
|
||||||
{
|
|
||||||
id: 'cert1',
|
|
||||||
employee: mockEmployees[0],
|
|
||||||
trainingTitle: 'Agile & Scrum Master Eğitimi',
|
|
||||||
issueDate: new Date('2024-09-30'),
|
|
||||||
expiryDate: new Date('2026-09-30'),
|
|
||||||
certificateUrl: '/certificates/cert1.pdf',
|
|
||||||
score: 95,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'cert2',
|
|
||||||
employee: mockEmployees[2],
|
|
||||||
trainingTitle: 'React & TypeScript İleri Seviye',
|
|
||||||
issueDate: new Date('2024-08-15'),
|
|
||||||
certificateUrl: '/certificates/cert2.pdf',
|
|
||||||
score: 88,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'cert3',
|
|
||||||
employee: mockEmployees[4],
|
|
||||||
trainingTitle: 'Siber Güvenlik ve Veri Koruma',
|
|
||||||
issueDate: new Date('2024-07-20'),
|
|
||||||
expiryDate: new Date('2025-07-20'),
|
|
||||||
certificateUrl: '/certificates/cert3.pdf',
|
|
||||||
score: 92,
|
|
||||||
},
|
|
||||||
]
|
|
||||||
|
|
||||||
export const mockReservations: Reservation[] = [
|
export const mockReservations: Reservation[] = [
|
||||||
{
|
{
|
||||||
id: 'res1',
|
id: 'res1',
|
||||||
|
|
@ -977,3 +881,102 @@ export const mockSocialPosts: SocialPost[] = [
|
||||||
isOwnPost: false,
|
isOwnPost: false,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
///////EKLENENLER//////////
|
||||||
|
export const mockTrainings: Training[] = [
|
||||||
|
{
|
||||||
|
id: 'tr1',
|
||||||
|
title: 'React & TypeScript İleri Seviye',
|
||||||
|
description:
|
||||||
|
'Modern React uygulamaları geliştirmek için TypeScript kullanımı, hooks, context API ve performans optimizasyonu',
|
||||||
|
instructor: 'Mehmet Demir',
|
||||||
|
category: 'technical',
|
||||||
|
type: 'online',
|
||||||
|
duration: 16,
|
||||||
|
startDate: new Date('2024-11-01'),
|
||||||
|
endDate: new Date('2024-11-08'),
|
||||||
|
maxParticipants: 20,
|
||||||
|
enrolled: 15,
|
||||||
|
status: 'upcoming',
|
||||||
|
thumbnail: 'https://images.unsplash.com/photo-1633356122544-f134324a6cee?w=400&h=300&fit=crop',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'tr2',
|
||||||
|
title: 'Etkili İletişim ve Sunum Teknikleri',
|
||||||
|
description:
|
||||||
|
'İş hayatında etkili iletişim kurma, profesyonel sunum hazırlama ve konuşma becerileri geliştirme',
|
||||||
|
instructor: 'Ayşe Kara',
|
||||||
|
category: 'soft-skills',
|
||||||
|
type: 'classroom',
|
||||||
|
duration: 8,
|
||||||
|
startDate: new Date('2024-10-25'),
|
||||||
|
endDate: new Date('2024-10-25'),
|
||||||
|
maxParticipants: 15,
|
||||||
|
enrolled: 12,
|
||||||
|
status: 'ongoing',
|
||||||
|
location: 'Eğitim Salonu A',
|
||||||
|
thumbnail: 'https://images.unsplash.com/photo-1557804506-669a67965ba0?w=400&h=300&fit=crop',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'tr3',
|
||||||
|
title: 'Agile & Scrum Master Eğitimi',
|
||||||
|
description:
|
||||||
|
'Çevik yazılım geliştirme metodolojileri, Scrum framework ve sertifikasyon hazırlığı',
|
||||||
|
instructor: 'Can Öztürk',
|
||||||
|
category: 'management',
|
||||||
|
type: 'hybrid',
|
||||||
|
duration: 24,
|
||||||
|
startDate: new Date('2024-09-15'),
|
||||||
|
endDate: new Date('2024-09-30'),
|
||||||
|
maxParticipants: 25,
|
||||||
|
enrolled: 25,
|
||||||
|
status: 'completed',
|
||||||
|
thumbnail: 'https://images.unsplash.com/photo-1552664730-d307ca884978?w=400&h=300&fit=crop',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'tr4',
|
||||||
|
title: 'Siber Güvenlik ve Veri Koruma',
|
||||||
|
description: 'KVKK uyumluluğu, siber güvenlik tehditleri ve kurumsal veri koruma stratejileri',
|
||||||
|
instructor: 'Zeynep Arslan',
|
||||||
|
category: 'compliance',
|
||||||
|
type: 'online',
|
||||||
|
duration: 12,
|
||||||
|
startDate: new Date('2024-11-15'),
|
||||||
|
endDate: new Date('2024-11-22'),
|
||||||
|
maxParticipants: 50,
|
||||||
|
enrolled: 8,
|
||||||
|
status: 'upcoming',
|
||||||
|
thumbnail: 'https://images.unsplash.com/photo-1550751827-4bd374c3f58b?w=400&h=300&fit=crop',
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
||||||
|
export const mockCertificates: Certificate[] = [
|
||||||
|
{
|
||||||
|
id: 'cert1',
|
||||||
|
employee: mockEmployees[0],
|
||||||
|
trainingTitle: 'Agile & Scrum Master Eğitimi',
|
||||||
|
issueDate: new Date('2024-09-30'),
|
||||||
|
expiryDate: new Date('2026-09-30'),
|
||||||
|
certificateUrl: '/certificates/cert1.pdf',
|
||||||
|
score: 95,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'cert2',
|
||||||
|
employee: mockEmployees[2],
|
||||||
|
trainingTitle: 'React & TypeScript İleri Seviye',
|
||||||
|
issueDate: new Date('2024-08-15'),
|
||||||
|
certificateUrl: '/certificates/cert2.pdf',
|
||||||
|
score: 88,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'cert3',
|
||||||
|
employee: mockEmployees[4],
|
||||||
|
trainingTitle: 'Siber Güvenlik ve Veri Koruma',
|
||||||
|
issueDate: new Date('2024-07-20'),
|
||||||
|
expiryDate: new Date('2025-07-20'),
|
||||||
|
certificateUrl: '/certificates/cert3.pdf',
|
||||||
|
score: 92,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
@ -115,6 +115,14 @@ const DialogShowComponent = (): JSX.Element => {
|
||||||
{...dialogContext.config?.props}
|
{...dialogContext.config?.props}
|
||||||
></QuestionDialog>
|
></QuestionDialog>
|
||||||
)
|
)
|
||||||
|
case 'TrainingCertificates':
|
||||||
|
return (
|
||||||
|
<QuestionDialog
|
||||||
|
open={true}
|
||||||
|
onDialogClose={handleDialogClose}
|
||||||
|
{...dialogContext.config?.props}
|
||||||
|
></QuestionDialog>
|
||||||
|
)
|
||||||
default:
|
default:
|
||||||
return <></>
|
return <></>
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue