Guest User

Untitled

a guest
Dec 17th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.23 KB | None | 0 0
  1. //
  2. // UserRepositoryMySQL factory implementing UserRepository interface
  3. //
  4. export default conn => {
  5. const create = user => {
  6. const { userId, userName, userEmail } = user
  7. return new Promise((resolve, reject) => {
  8. conn.query(`INSERT INTO users (userId, userName, userEmail) VALUES (${userId}, '${userName}', '${userEmail}')`, function (error) {
  9. if (error) {
  10. return reject(error)
  11. }
  12. resolve()
  13. })
  14. })
  15. }
  16. const getById = userId => {
  17. return new Promise((resolve, reject) => {
  18. conn.query(`SELECT userId, userName, userEmail FROM users WHERE userId=${userId}`, function (error, results, fields) {
  19. if (error) {
  20. return reject(error)
  21. }
  22. if (!results.length) {
  23. reject(new UserNotFoundException())
  24. }
  25. resolve(results[0])
  26. })
  27. })
  28. }
  29. const save = user => {
  30. const { userId, userName, userEmail } = user
  31. return new Promise((resolve, reject) => {
  32. conn.query(`UPDATE users SET userName='${userName}', userEmail='${userEmail}' WHERE userId='${userId}'`, function (error) {
  33. if (error) {
  34. return reject(error)
  35. }
  36. resolve()
  37. })
  38. })
  39. }
  40. return {
  41. create,
  42. getById,
  43. save
  44. }
  45. }
Add Comment
Please, Sign In to add comment