Setting up more printful logic. Setting up db.

This commit is contained in:
Dominic Ferrando
2025-05-03 13:54:55 -04:00
parent 6cd2d72fc5
commit bb7c041c48
8 changed files with 233 additions and 1 deletions
+42
View File
@@ -0,0 +1,42 @@
import { Database } from "bun:sqlite";
interface ProductsRecord {
webflowProductId: number;
printfulProductId: number;
}
export class ProductRecords {
private db: Database;
constructor() {
this.db = new Database("./database/data.db");
}
findFromWebflow(webflowProductId: number): ProductsRecord | undefined {
const row = this.db.query(`
SELECT * FROM product_records WHERE webflowProductId = ?
`).get(webflowProductId);
return row as ProductsRecord | undefined;
}
findFromPrintful(printfulProductId: number): ProductsRecord | undefined {
const row = this.db.query(`
SELECT * FROM product_records WHERE printfulProductId = ?
`).get(printfulProductId);
return row as ProductsRecord | undefined;
}
add(record: ProductsRecord): void {
this.db.run(`
INSERT OR IGNORE INTO product_records (webflowProductId, printfulProductId)
VALUES (?, ?)
`, [record.webflowProductId, record.printfulProductId]);
}
all(): ProductsRecord[] {
return this.db.query(`SELECT * FROM product_records`).all() as ProductsRecord[];
}
}