-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcosmetic.repository.js
40 lines (34 loc) · 1.17 KB
/
cosmetic.repository.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
const db = require('./db')
async function getAllCosmetics() {
const query = 'SELECT * FROM cosmetics';
const result = await db.getConnection.query(query);
return result.rows;
}
async function getCosmeticById(id) {
const query = `SELECT * FROM employees WHERE id = ${id} LIMIT 1`;
const result = await db.getConnection.query(query);
return result.rows;
}
async function createCosmetic(cosmetic) {
const query = `INSERT INTO cosmetics (name, type) VALUES (?, ?) RETURNING *`;
const values = [cosmetic.name, cosmetic.type];
const result = await db.getConnection.query(query, values);
return result.rows[0];
}
async function updateCosmetic(cosmetic) {
const query = 'UPDATE cosmetics SET name = $1, type = $2 WHERE id = $3 RETURNING *';
const values = [cosmetic.name, cosmetic.type, cosmetic.id];
const result = await db.getConnection.query(query, values);
return result.rows[0];
}
async function deleteCosmetic(id) {
const query = `DELETE FROM cosmetics WHERE id = ${id}`;
await db.getConnection.query(query);
}
module.exports = {
getAllCosmetics,
getCosmeticById,
createCosmetic,
updateCosmetic,
deleteCosmetic
}