80 lines
2.1 KiB
TypeScript
80 lines
2.1 KiB
TypeScript
// app/api/user/route.ts
|
|
import { NextRequest, NextResponse } from "next/server";
|
|
|
|
export const users = [
|
|
{
|
|
merchantId: 100987998,
|
|
id: "bc6a8a55-13bc-4538-8255-cd0cec3bb4e9",
|
|
mame: "Jacob",
|
|
username: "lspaddy",
|
|
firstName: "Paddy",
|
|
lastName: "Man",
|
|
email: "patrick@omegasys.eu",
|
|
phone: "",
|
|
jobTitle: "",
|
|
enabled: true,
|
|
authorities: [
|
|
"ROLE_IIN",
|
|
"ROLE_FIRST_APPROVER",
|
|
"ROLE_RULES_ADMIN",
|
|
"ROLE_TRANSACTION_VIEWER",
|
|
"ROLE_IIN_ADMIN",
|
|
"ROLE_USER_PSP_ACCOUNT",
|
|
],
|
|
allowedMerchantIds: [100987998],
|
|
created: "2025-05-04T15:32:48.432Z",
|
|
disabledBy: null,
|
|
disabledDate: null,
|
|
disabledReason: null,
|
|
incidentNotes: false,
|
|
lastLogin: "",
|
|
lastMandatoryUpdated: "2025-05-04T15:32:48.332Z",
|
|
marketingNewsletter: false,
|
|
releaseNotes: false,
|
|
requiredActions: ["CONFIGURE_TOTP", "UPDATE_PASSWORD"],
|
|
twoFactorCondition: "required",
|
|
twoFactorCredentials: [],
|
|
},
|
|
];
|
|
|
|
export async function GET() {
|
|
return NextResponse.json(users);
|
|
}
|
|
|
|
export async function POST(request: NextRequest) {
|
|
const body = await request.json();
|
|
const { firstName, lastName, email, phone, role } = body;
|
|
|
|
// Add the new user to the existing users array (in-memory, not persistent)
|
|
const bodytoAdd = {
|
|
merchantId: 100987998,
|
|
mame: "Jacob",
|
|
id: "382eed15-1e21-41fa-b1f3-0c1adb3af714",
|
|
username: "lsterence",
|
|
firstName,
|
|
lastName,
|
|
email,
|
|
phone,
|
|
jobTitle: "",
|
|
role,
|
|
enabled: true,
|
|
authorities: ["ROLE_IIN", "ROLE_FIRST_APPROVER", "ROLE_RULES_ADMIN"],
|
|
allowedMerchantIds: [100987998],
|
|
created: "2025-05-04T15:32:48.432Z",
|
|
disabledBy: null,
|
|
disabledDate: null,
|
|
disabledReason: null,
|
|
incidentNotes: false,
|
|
lastLogin: "",
|
|
lastMandatoryUpdated: "2025-05-04T15:32:48.332Z",
|
|
marketingNewsletter: false,
|
|
releaseNotes: false,
|
|
requiredActions: ["CONFIGURE_TOTP", "UPDATE_PASSWORD"],
|
|
twoFactorCondition: "required",
|
|
twoFactorCredentials: [],
|
|
};
|
|
users.push(bodytoAdd);
|
|
|
|
return NextResponse.json(users, { status: 201 });
|
|
}
|