mirror of
https://github.com/okiba-org/backend.git
synced 2026-08-23 17:16:54 +00:00
feat: set paste route
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
import { Pool, QueryResult } from "pg";
|
||||
import { Word } from "../utils/types";
|
||||
import { Query } from "./queries";
|
||||
|
||||
// query wrappers
|
||||
export const getAvailableWord = async (db: Pool): Promise<Word | undefined> => {
|
||||
const data: void | QueryResult<Word> = await db
|
||||
.query(Query.getAvailableWord)
|
||||
.catch((err) => err);
|
||||
|
||||
if (data != undefined) {
|
||||
let word = data.rows[0];
|
||||
return word;
|
||||
}
|
||||
|
||||
return undefined;
|
||||
};
|
||||
|
||||
export const setWordTaken = async (db: Pool, id: number) => {
|
||||
await db.query(Query.setWordTaken(id)).catch((err) => err);
|
||||
};
|
||||
@@ -0,0 +1,9 @@
|
||||
// query strings
|
||||
export const Query = {
|
||||
getAvailableWord:
|
||||
"SELECT * FROM words WHERE taken = 'f' ORDER BY random() LIMIT 1;",
|
||||
|
||||
setWordTaken(id: number) {
|
||||
return `UPDATE words SET taken = 't' WHERE id = ${id}`;
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user