seed/data Seeder Sectors

This commit is contained in:
Sedat ÖZTÜRK 2026-09-04 14:18:26 +03:00
parent 9e99475a3e
commit 7c9934f56e
5 changed files with 208 additions and 172 deletions

View file

@ -1197,7 +1197,7 @@ Kök menü `App.Administration`. Bu menünün tabloları `Adm_T_*` — yani **ki
| Ekran | Kod / route | Tablo | Komponent üretirken ne işe yarar | | Ekran | Kod / route | Tablo | Komponent üretirken ne işe yarar |
| --- | --- | --- | --- | | --- | --- | --- | --- |
| **Definitions Sector** | `App.Definitions.Sector` | `Adm_T_Sector` | Sektör lookup'ı. | | **Definitions Sector** | `App.Definitions.Sector` | `Adm_T_Sector` | Sektör lookupı. Veri `configs/seeds/host/data/App.Definitions.Sector.json` dosyasından seed edilir. |
| **Definitions Department** | `App.Definitions.Department` | `Adm_T_Department` | `ParentId` ile **ağaç (TreeList) düzeninin** referansı; personel/onay ekranlarının departman lookup'ı. | | **Definitions Department** | `App.Definitions.Department` | `Adm_T_Department` | `ParentId` ile **ağaç (TreeList) düzeninin** referansı; personel/onay ekranlarının departman lookup'ı. |
| **Definitions Job Position** | `App.Definitions.JobPosition` | `Adm_T_JobPosition` | Ünvan ağacı (`ParentId` + `DepartmentId`) — departmana bağlı cascade örneği. | | **Definitions Job Position** | `App.Definitions.JobPosition` | `Adm_T_JobPosition` | Ünvan ağacı (`ParentId` + `DepartmentId`) — departmana bağlı cascade örneği. |
| **Definitions Org Chart** | `App.Definitions.OrgChart` · `/admin/organization` | `Adm_T_Department` | Departman/ünvan verisinin organizasyon şeması görünümü. | | **Definitions Org Chart** | `App.Definitions.OrgChart` · `/admin/organization` | `Adm_T_Department` | Departman/ünvan verisinin organizasyon şeması görünümü. |

View file

@ -1918,6 +1918,10 @@ public class ListFormSeeder_Administration : IDataSeedContributor, ITransientDep
ColumnOptionJson = DefaultColumnOptionJson(), ColumnOptionJson = DefaultColumnOptionJson(),
PermissionJson = DefaultPermissionJson(listFormName), PermissionJson = DefaultPermissionJson(listFormName),
DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.Sector)), DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.Sector)),
SeedFilePath = SeedPathResolver.GetDataFilePath(listFormName),
SeedSyncInsert = false,
SeedSyncUpdate = false,
SeedSyncDelete = false,
DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(), DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(),
PagerOptionJson = DefaultPagerOptionJson, PagerOptionJson = DefaultPagerOptionJson,
InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(), InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson(),

View file

@ -1,153 +1,4 @@
{ {
"Sectors": [
{
"Name": "Adalet ve Güvenlik"
},
{
"Name": "Ağaç İşleri, Kağıt ve Kağıt Ürünleri"
},
{
"Name": "Ambalaj"
},
{
"Name": "Bilişim Teknolojileri"
},
{
"Name": "Cam, Çimento ve Toprak"
},
{
"Name": "Çevre"
},
{
"Name": "Demir Çelik"
},
{
"Name": "Diğer"
},
{
"Name": "Eğitim"
},
{
"Name": "Elektrik ve Elektronik"
},
{
"Name": "Enerji"
},
{
"Name": "Finans"
},
{
"Name": "Gıda"
},
{
"Name": "Giyim"
},
{
"Name": "Güvenlik"
},
{
"Name": "Hizmet-servis"
},
{
"Name": "Hırdavat ve Nalburiye"
},
{
"Name": "Isıtma, Soğutma ve Havalandırma"
},
{
"Name": "İnşaat"
},
{
"Name": "İş ve Yönetim"
},
{
"Name": "Kantar"
},
{
"Name": "Kimya, Petrol, Lastik ve Plastik"
},
{
"Name": "Kimyasal"
},
{
"Name": "Kırtasiye"
},
{
"Name": "Kültür, Sanat ve Tasarım"
},
{
"Name": "Laboratuar ve Test Ürünleri"
},
{
"Name": "Maden"
},
{
"Name": "Makine"
},
{
"Name": "Makina"
},
{
"Name": "Matbaa"
},
{
"Name": "Medya, İletişim ve Yayıncılık"
},
{
"Name": "Metal"
},
{
"Name": "Ofis"
},
{
"Name": "Otomotiv"
},
{
"Name": "Oto Tamir-Servis"
},
{
"Name": "Pnomatik"
},
{
"Name": "Sağlık"
},
{
"Name": "Sağlık ve Sosyal Hizmetler"
},
{
"Name": "Sarf"
},
{
"Name": "Spor ve Rekreasyon"
},
{
"Name": "Tarım, Avcılık ve Balıılık"
},
{
"Name": "Tartı"
},
{
"Name": "Tekstil, Hazır Giyim, Deri"
},
{
"Name": "Ticaret (Satış ve Pazarlama)"
},
{
"Name": "Toplumsal ve Kişisel Hizmetler"
},
{
"Name": "Transpalet"
},
{
"Name": "Turizm, Konaklama, Yiyecek-İçecek Hizmetleri"
},
{
"Name": "Ulaştırma, Lojistik ve Haberleşme"
},
{
"Name": "Yedek Parça"
}
],
"BlogCategories": [ "BlogCategories": [
{ {
"Name": "App.BlogCategories.Technology", "Name": "App.BlogCategories.Technology",

View file

@ -26,7 +26,6 @@ public class TenantSeederDto
public List<SequenceSeedDto> Sequences { get; set; } public List<SequenceSeedDto> Sequences { get; set; }
//Definitions //Definitions
public List<SectorSeedDto> Sectors { get; set; }
public List<WorkHourSeedDto> WorkHours { get; set; } public List<WorkHourSeedDto> WorkHours { get; set; }
public List<UomCategorySeedDto> UomCategories { get; set; } public List<UomCategorySeedDto> UomCategories { get; set; }
public List<UomSeedDto> Uoms { get; set; } public List<UomSeedDto> Uoms { get; set; }
@ -236,11 +235,6 @@ public class GlobalSearchSeedDto
public string Url { get; set; } public string Url { get; set; }
} }
public class SectorSeedDto
{
public string Name { get; set; }
}
public class UomCategorySeedDto public class UomCategorySeedDto
{ {
public Guid Id { get; set; } public Guid Id { get; set; }
@ -474,7 +468,6 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
private readonly IRepository<BlogCategory, Guid> _blogCategoryRepository; private readonly IRepository<BlogCategory, Guid> _blogCategoryRepository;
private readonly IRepository<BlogPost, Guid> _blogPostsRepository; private readonly IRepository<BlogPost, Guid> _blogPostsRepository;
private readonly IRepository<Contact, Guid> _contactRepository; private readonly IRepository<Contact, Guid> _contactRepository;
private readonly IRepository<Sector, Guid> _sectorRepository;
private readonly IRepository<SkillType, string> _skillTypeRepository; private readonly IRepository<SkillType, string> _skillTypeRepository;
private readonly IRepository<Skill, string> _skillRepository; private readonly IRepository<Skill, string> _skillRepository;
private readonly IRepository<SkillLevel, string> _skillLevelRepository; private readonly IRepository<SkillLevel, string> _skillLevelRepository;
@ -507,7 +500,6 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
IIdentityUserRepository repositoryUser, IIdentityUserRepository repositoryUser,
IRepository<Branch, Guid> branchRepository, IRepository<Branch, Guid> branchRepository,
IRepository<GlobalSearch, int> globalSearch, IRepository<GlobalSearch, int> globalSearch,
IRepository<Sector, Guid> sectorRepository,
IRepository<UomCategory, string> uomCategoryRepository, IRepository<UomCategory, string> uomCategoryRepository,
IRepository<Uom, string> uomRepository, IRepository<Uom, string> uomRepository,
IRepository<SkillType, string> skillTypeRepository, IRepository<SkillType, string> skillTypeRepository,
@ -549,7 +541,6 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
_repositoryUser = repositoryUser; _repositoryUser = repositoryUser;
_branchRepository = branchRepository; _branchRepository = branchRepository;
_globalSearch = globalSearch; _globalSearch = globalSearch;
_sectorRepository = sectorRepository;
_uomCategoryRepository = uomCategoryRepository; _uomCategoryRepository = uomCategoryRepository;
_uomRepository = uomRepository; _uomRepository = uomRepository;
_skillTypeRepository = skillTypeRepository; _skillTypeRepository = skillTypeRepository;
@ -615,19 +606,6 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
} }
} }
foreach (var item in items.Sectors)
{
var exists = await _sectorRepository.AnyAsync(x => x.Name == item.Name);
if (!exists)
{
await _sectorRepository.InsertAsync(new Sector
{
Name = item.Name,
}, autoSave: true);
}
}
foreach (var item in items.UomCategories) foreach (var item in items.UomCategories)
{ {
var exists = await _uomCategoryRepository.AnyAsync(x => x.Name == item.Name); var exists = await _uomCategoryRepository.AnyAsync(x => x.Name == item.Name);

View file

@ -0,0 +1,203 @@
{
"ListFormCode": "App.Definitions.Sector",
"KeyFieldName": "Id",
"GeneratedAt": "2026-09-04T11:17:53.5160069Z",
"Rows": [
{
"Id": "b8a3e638-1fb5-5933-84b5-865d1fff88ab",
"Name": "Adalet ve Güvenlik"
},
{
"Id": "e6d2204b-6bc1-5f22-85b2-cc90539904a1",
"Name": "Ağaç İşleri, Kağıt ve Kağıt Ürünleri"
},
{
"Id": "74407722-37fa-51c6-af99-6e9fd3b088e3",
"Name": "Ambalaj"
},
{
"Id": "76bba8d4-fc0a-5607-a5d0-6b7e24e3f67b",
"Name": "Bilişim Teknolojileri"
},
{
"Id": "53c6da43-c8cb-56e1-b9d2-6cad7e3056ed",
"Name": "Cam, Çimento ve Toprak"
},
{
"Id": "b0b655a8-34e9-5509-a993-9964000385af",
"Name": "Çevre"
},
{
"Id": "554bb3d3-7b61-5f79-b2c6-348eefe069fb",
"Name": "Demir Çelik"
},
{
"Id": "5deda98f-c6e8-55a6-80a3-884019439546",
"Name": "Diğer"
},
{
"Id": "5058eda3-f83b-5e74-855f-4750ab6b0143",
"Name": "Eğitim"
},
{
"Id": "a763b241-5aa3-5eb8-a5fc-fd7521ca8c41",
"Name": "Elektrik ve Elektronik"
},
{
"Id": "1615321e-3fd5-59e6-b221-614e337c73ac",
"Name": "Enerji"
},
{
"Id": "90d8f813-6e3a-53ef-9732-656584d9db1c",
"Name": "Finans"
},
{
"Id": "1bd34326-ad8e-500c-a6ba-449dcca7ae91",
"Name": "Gıda"
},
{
"Id": "21c83dec-6ada-50ed-b930-76577393f5c7",
"Name": "Giyim"
},
{
"Id": "de924df2-7590-588b-8ba5-f8c5d97e38a7",
"Name": "Güvenlik"
},
{
"Id": "71f400f5-eaee-590c-b0c5-4f3cb68304c6",
"Name": "Hizmet-servis"
},
{
"Id": "1d690bfe-f4c4-521f-8035-f16e7f21090a",
"Name": "Hırdavat ve Nalburiye"
},
{
"Id": "85de9622-9bcc-50cb-91ea-630c1e5bdd66",
"Name": "Isıtma, Soğutma ve Havalandırma"
},
{
"Id": "4bcaf05e-4c16-533f-922c-744aa3cbe678",
"Name": "İnşaat"
},
{
"Id": "d9ebb35a-8fe0-5906-892b-f2a89ab59e67",
"Name": "İş ve Yönetim"
},
{
"Id": "a5137d95-8a08-5410-8291-e83383cbab9e",
"Name": "Kantar"
},
{
"Id": "ba768916-63fe-5040-9b1f-d09275be450d",
"Name": "Kimya, Petrol, Lastik ve Plastik"
},
{
"Id": "5a0b1fbe-be9b-5eb2-8974-e76cbc48a60a",
"Name": "Kimyasal"
},
{
"Id": "4df23bc9-265c-5864-ba6b-c3da86e30100",
"Name": "Kırtasiye"
},
{
"Id": "90a7eb83-48c7-523d-8bf6-e94fbb223daa",
"Name": "Kültür, Sanat ve Tasarım"
},
{
"Id": "dcbf7eaf-7b34-57a9-a468-4cc53b6210c7",
"Name": "Laboratuar ve Test Ürünleri"
},
{
"Id": "46f57117-a2f8-5f27-af89-73ea0c6969e8",
"Name": "Maden"
},
{
"Id": "1bda840e-0062-50a8-b5a3-00cf7b563cec",
"Name": "Makine"
},
{
"Id": "cd86f142-5fd3-5753-98c8-c23043192fff",
"Name": "Makina"
},
{
"Id": "b180d623-ebfa-5d9a-b7b4-2dde2fe4b16c",
"Name": "Matbaa"
},
{
"Id": "6637edab-edf5-5661-b20a-f241ab03c217",
"Name": "Medya, İletişim ve Yayıncılık"
},
{
"Id": "5a8e4461-91fa-59be-a840-9f51e65ed031",
"Name": "Metal"
},
{
"Id": "ba089d5d-401c-5895-a816-f1b99afe6a58",
"Name": "Ofis"
},
{
"Id": "115173e9-9d3f-5dbd-85db-72145e355e69",
"Name": "Otomotiv"
},
{
"Id": "a41d869c-3e6f-5ef4-b211-c660bbf0a106",
"Name": "Oto Tamir-Servis"
},
{
"Id": "055360c3-c38c-5fee-a639-9cca875be82a",
"Name": "Pnomatik"
},
{
"Id": "eea289a7-2377-5349-97f1-b6ac20b0460c",
"Name": "Sağlık"
},
{
"Id": "42008abb-8945-584e-afa1-fa9767b6406c",
"Name": "Sağlık ve Sosyal Hizmetler"
},
{
"Id": "8495154c-d016-5efe-9348-e3d946c40eb9",
"Name": "Sarf"
},
{
"Id": "3fbb59ef-a14c-55f3-b083-d1f7bcdaf71d",
"Name": "Spor ve Rekreasyon"
},
{
"Id": "6b363435-b2de-5144-8a68-2d913f5e44a7",
"Name": "Tarım, Avcılık ve Balıılık"
},
{
"Id": "31f1ace2-e3af-56e1-b00a-664656249d55",
"Name": "Tartı"
},
{
"Id": "d3f770c1-ab8a-5dea-b7f9-f3f3b79765b5",
"Name": "Tekstil, Hazır Giyim, Deri"
},
{
"Id": "19fb8bd2-d867-5297-8805-fabc77a059db",
"Name": "Ticaret (Satış ve Pazarlama)"
},
{
"Id": "1838c013-03a1-540b-b641-9b9c8c7f253f",
"Name": "Toplumsal ve Kişisel Hizmetler"
},
{
"Id": "0115c3c6-2c97-5323-a201-e654e28282a5",
"Name": "Transpalet"
},
{
"Id": "1fe5aab6-3838-5630-8009-538f7e2954e4",
"Name": "Turizm, Konaklama, Yiyecek-İçecek Hizmetleri"
},
{
"Id": "f7a405ee-4736-5484-a8b2-77d8d5a18537",
"Name": "Ulaştırma, Lojistik ve Haberleşme"
},
{
"Id": "dcf7ac57-c5a5-5cfa-b4a8-37aa90c65229",
"Name": "Yedek Parça"
}
]
}