feat: set paste route

This commit is contained in:
2022-07-08 11:12:21 +05:30
parent 6abe5aebdf
commit e1c79a1840
10 changed files with 285 additions and 23 deletions
+21
View File
@@ -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);
};
+9
View File
@@ -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}`;
},
};