Migrate to local PG & Update Solana Checkout
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { NextRequest, NextResponse } from 'next/server';
|
||||
import { supabaseAdmin } from '@/lib/supabase-admin';
|
||||
import { db } from '@/lib/db';
|
||||
|
||||
export async function POST(req: NextRequest) {
|
||||
try {
|
||||
@@ -22,24 +22,21 @@ export async function POST(req: NextRequest) {
|
||||
return result;
|
||||
};
|
||||
|
||||
const { data, error } = await supabaseAdmin
|
||||
.from('merchants')
|
||||
.insert([{
|
||||
name,
|
||||
webhook_url,
|
||||
short_id: generateShortId(),
|
||||
payment_provider: payment_provider || 'stripe',
|
||||
provider_config: provider_config || {}
|
||||
}])
|
||||
.select()
|
||||
.single();
|
||||
const shortId = generateShortId();
|
||||
const provider = payment_provider || 'stripe';
|
||||
const configStr = provider_config ? JSON.stringify(provider_config) : '{}';
|
||||
|
||||
if (error) {
|
||||
console.error('Merchant creation error:', error);
|
||||
return NextResponse.json({ error: error.message }, { status: 500 });
|
||||
const result = await db.query(
|
||||
`INSERT INTO merchants (name, webhook_url, short_id, payment_provider, provider_config)
|
||||
VALUES ($1, $2, $3, $4, $5) RETURNING *`,
|
||||
[name, webhook_url, shortId, provider, configStr]
|
||||
);
|
||||
|
||||
if (result.rows.length === 0) {
|
||||
throw new Error('Could not insert merchant');
|
||||
}
|
||||
|
||||
return NextResponse.json(data);
|
||||
return NextResponse.json(result.rows[0]);
|
||||
} catch (err: any) {
|
||||
console.error('Internal Error:', err);
|
||||
return NextResponse.json(
|
||||
@@ -51,16 +48,8 @@ export async function POST(req: NextRequest) {
|
||||
|
||||
export async function GET() {
|
||||
try {
|
||||
const { data, error } = await supabaseAdmin
|
||||
.from('merchants')
|
||||
.select('*')
|
||||
.order('created_at', { ascending: false });
|
||||
|
||||
if (error) {
|
||||
return NextResponse.json({ error: error.message }, { status: 500 });
|
||||
}
|
||||
|
||||
return NextResponse.json(data);
|
||||
const result = await db.query('SELECT * FROM merchants ORDER BY created_at DESC');
|
||||
return NextResponse.json(result.rows);
|
||||
} catch (err: any) {
|
||||
return NextResponse.json(
|
||||
{ error: `Internal Server Error: ${err.message}` },
|
||||
|
||||
Reference in New Issue
Block a user