initial commit
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
using Indotalent.Data.Entities;
|
||||
using Indotalent.Infrastructure.Database.Demo;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace Indotalent.Infrastructure.Database;
|
||||
|
||||
public static class DatabaseSeederDemo
|
||||
{
|
||||
public static async Task SeedAsync(IServiceProvider serviceProvider)
|
||||
{
|
||||
var roleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
|
||||
var userManager = serviceProvider.GetRequiredService<UserManager<ApplicationUser>>();
|
||||
var configuration = serviceProvider.GetRequiredService<IConfiguration>();
|
||||
var context = serviceProvider.GetRequiredService<AppDbContext>();
|
||||
|
||||
// 1. Master Data (Must be first)
|
||||
await UserSeeder.GenerateDataAsync(userManager, context, configuration);
|
||||
await UnitMeasureSeeder.GenerateDataAsync(context);
|
||||
await WarehouseSeeder.GenerateDataAsync(context);
|
||||
await PaymentMethodSeeder.GenerateDataAsync(context);
|
||||
await EmployeeGroupSeeder.GenerateDataAsync(context);
|
||||
await EmployeeCategorySeeder.GenerateDataAsync(context);
|
||||
await EmployeeSeeder.GenerateDataAsync(context);
|
||||
await SalesOrderGroupSeeder.GenerateDataAsync(context);
|
||||
await SalesOrderCategorySeeder.GenerateDataAsync(context);
|
||||
await MedicalRecordGroupSeeder.GenerateDataAsync(context);
|
||||
await MedicalRecordCategorySeeder.GenerateDataAsync(context);
|
||||
|
||||
// 2. Customer & Vendor Related
|
||||
await PatientCategorySeeder.GenerateDataAsync(context);
|
||||
await PatientGroupSeeder.GenerateDataAsync(context);
|
||||
await PatientSeeder.GenerateDataAsync(context);
|
||||
await PatientContactSeeder.GenerateDataAsync(context);
|
||||
|
||||
await VendorCategorySeeder.GenerateDataAsync(context);
|
||||
await VendorGroupSeeder.GenerateDataAsync(context);
|
||||
await VendorSeeder.GenerateDataAsync(context);
|
||||
await VendorContactSeeder.GenerateDataAsync(context);
|
||||
|
||||
// 3. Product Related
|
||||
await ProductGroupSeeder.GenerateDataAsync(context);
|
||||
await ProductSeeder.GenerateDataAsync(context);
|
||||
|
||||
// 4. Sales Related
|
||||
await SalesOrderSeeder.GenerateDataAsync(context);
|
||||
|
||||
// 5. Purchase Related
|
||||
await PurchaseOrderSeeder.GenerateDataAsync(context);
|
||||
|
||||
// 6. Inventory Operations
|
||||
|
||||
// 7. Finance & Project Related
|
||||
await InvoiceSeeder.GenerateDataAsync(context);
|
||||
await PaymentReceiveSeeder.GenerateDataAsync(context);
|
||||
await BillSeeder.GenerateDataAsync(context);
|
||||
await PaymentDisburseSeeder.GenerateDataAsync(context);
|
||||
|
||||
await BookingGroupSeeder.GenerateDataAsync(context);
|
||||
await BookingResourceSeeder.GenerateDataAsync(context);
|
||||
await BookingSeeder.GenerateDataAsync(context);
|
||||
|
||||
|
||||
// 8. Medical Record Related
|
||||
await MedicalRecordSeeder.GenerateDataAsync(context);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user