-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnote.js
More file actions
75 lines (61 loc) · 1.35 KB
/
Copy pathnote.js
File metadata and controls
75 lines (61 loc) · 1.35 KB
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
const Sequelize = require( 'sequelize' );
const { eq } = Sequelize.Op;
const SQL = require( './sql' );
const Note = SQL.define( 'note',
{
user_id: { type: Sequelize.INTEGER },
title: { type: Sequelize.STRING },
content: { type: Sequelize.TEXT('medium') }
}
);
const printErrJSON = err => ( { error: `Error!:\n${err}` } );
const create = async ( userId, noteTitle, noteContent ) => {
try {
await Note.sync();
let instNote = await Note.create({
user_id: userId,
title: noteTitle,
content: noteContent
});
return instNote.dataValues;
} catch( err ) {
console.log( 'Error!:', err );
return printErrJSON( err );
}
}
exports.create = create;
const getByUserId = async ( user_id ) => {
try {
await Note.sync();
let noteData = await Note.findAll(
{
where: { user_id: { [eq]:user_id } }
}
);
return noteData;
} catch( err ) {
return printErrJSON( err );
}
}
exports.getByUserId = getByUserId;
const update = async ( noteId, noteTitle, noteContent ) => {
try {
await Note.sync();
let updated = await Note.update(
{
title: noteTitle,
content: noteContent
},
{
where: {
id: { [eq]:noteId }
}
}
);
return { updated: updated[0] };
} catch( err ) {
console.log( 'Error!:', err );
return printErrJSON( err );
}
}
exports.update = update;