initial commit

This commit is contained in:
voltsrage
2026-06-26 04:20:20 +08:00
commit 869006e5e7
64 changed files with 4632 additions and 0 deletions
@@ -0,0 +1,39 @@
using Microsoft.EntityFrameworkCore;
public static class DataSeeder
{
public static async Task SeedAsync(AppDbContext db)
{
if (await db.Users.AnyAsync()) return;
var users = new[]
{
CreateUser("intake1", "Intake Clerk 1", UserRole.IntakeClerk),
CreateUser("intake2", "Intake Clerk 2", UserRole.IntakeClerk),
CreateUser("entry1", "Entry Clerk 1", UserRole.DataEntryClerk),
CreateUser("entry2", "Entry Clerk 2", UserRole.DataEntryClerk),
CreateUser("verifier1", "Verifier 1", UserRole.Verifier),
CreateUser("verifier2", "Verifier 2", UserRole.Verifier),
CreateUser("approver1", "Clinical Approver 1", UserRole.ClinicalApprover),
CreateUser("approver2", "Clinical Approver 2", UserRole.ClinicalApprover),
CreateUser("clinician1", "Dr. Tanaka", UserRole.Clinician),
CreateUser("clinician2", "Dr. Chen", UserRole.Clinician),
CreateUser("admin1", "Administrator 1", UserRole.Administrator),
CreateUser("admin2", "Administrator 2", UserRole.Administrator),
};
db.Users.AddRange(users);
await db.SaveChangesAsync();
}
private static User CreateUser(string username, string fullName, UserRole role) => new()
{
Id = Guid.NewGuid(),
Username = username,
PasswordHash = BCrypt.Net.BCrypt.HashPassword("password"),
FullName = fullName,
Role = role,
IsActive = true,
CreatedAt = DateTimeOffset.UtcNow
};
}