Advertisement
iawitm

Untitled

Apr 7th, 2019
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.56 KB | None | 0 0
  1. // отвечает за логику работы с моделью user
  2.  
  3.  
  4. const mongoose = require("mongoose");
  5. const bcrypt = require("bcrypt");
  6. const jwt = require("jsonwebtoken");
  7.  
  8. const User = require("../models/user");
  9.  
  10. exports.userCreate = (req, res, next) => {
  11. User.find({phone_number: req.body.phone_number}) // req - пришло с фронта, res - ответить фронту
  12. .exec() // выполнить запрос к БД
  13. .then(user => { // то, что после запроса
  14. if (user.length > 0){ // если длина жсона больше 0 -> пользователь существует
  15. return res.status(409).json({message:"user exists"});
  16. }
  17. else{
  18. bcrypt.hash(req.body.password, 10, (err, hash) => {
  19. if (err) {
  20. return res.status(500).json({
  21. error: err
  22. });
  23. } else{
  24. const user = new User({
  25. _id: new mongoose.Types.ObjectId(),
  26. phone_number: req.body.phone_number,
  27. password: hash,
  28. name: req.body.name
  29. });
  30. user.save()
  31. .then(result => {
  32. res.status(201).json({meessage:"user created"})
  33. })
  34. .catch(err => {
  35. console.log(err);
  36. res.status(500).json({
  37. error: err
  38. });
  39. });
  40. }
  41. });
  42. }
  43. });
  44. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement