Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- var Adapter;
- var UserTable;
- function setUser() {
- UserTable = Adapter.User;
- }
- class User {
- constructor(adapter) {
- Adapter = adapter;
- setUser();
- }
- //create
- createUser(userB) {
- return new Promise(function(resolve, reject) {
- console.log(UserTable);
- UserTable.find({
- where: {
- email: userB.email
- }
- })
- .then(function(user) {
- if (user) {
- console.log("Error! Already has user with email " + email);
- //res.send(user);
- reject("Error! Already has user with email ");
- //return ("Erro! Já existe um usuário cadastrado com o email " + email);
- } else {
- console.log("cheguei");
- UserTable.create({
- userB
- }).then((user2) => {
- console.log("created user: " + JSON.stringify(user2.dataValues));
- resolve(user2);
- });
- }
- });
- });
- }
- //TODO userB params
- readUser(email, userB) {
- return new Promise(function(resolve, reject) {
- UserTable.find({
- where: {
- email: email
- }
- }).then(function(user) {
- if (user) { // not found returns null
- console.log("found user: " + JSON.stringify(user.dataValues));
- console.log("\n\n");
- resolve(user);
- } else {
- reject("Error! Not found");
- console.log("did not found user with email " + email);
- }
- });
- });
- };
- readUsers() {
- return new Promise(function(resolve, reject) {
- UserTable.findAll({}).then(function(users) {
- resolve(users);
- });
- });
- };
- updateUser(email, userB) {
- return new Promise(function(resolve, reject) {
- UserTable.update({
- userB
- }, {
- where: {
- email: email
- }
- }).then(() => {
- UserTable.find({
- where: {
- email: email
- }
- }).then(function(user) {
- if (user)
- resolve(user);
- else
- reject("Error! No user found");
- console.log('updated %d users to: (%s,%s,%s)', user, name, email, password, address, phone);
- });
- });
- });
- }
- deleteUser(email) {
- // TODO falta verificar se a senha bate
- // TODO falta verificar se existe pedidos em andamento
- // TODO falta apagar os pedidos dependentes.
- return new Promise(function(resolve, reject) {
- UserTable.destroy({
- where: {
- email: email
- }
- }).then(function(user) {
- if(!user){
- reject("Error! no user found")
- }
- resolve(user);
- console.log("removed %d users and references with email: %s", user, email);
- });
- });
- }
- auth(userB){
- var email = userB.email;
- var senha = userB.password;
- return new Promise(function (resolve,reject){
- UserTable.find({
- where: {email:email}
- }).then(function(user){
- if(!user){
- reject("Error! No user found")
- }else{
- if(user.password==senha){
- resolve(user);
- }else{
- reject("Error! Wrong password")
- }
- }
- });
- });
- }
- socialAuth(userB){
- var email = userB.email;
- var name = userB.name;
- return new Promise(function (resolve,reject){
- UserTable.find({
- where: {email:email}
- }).then(function(user){
- if(!user){
- UserTable.create({
- name: name,
- email: email
- }).then((user2) => {
- console.log("created user: " + JSON.stringify(user2.dataValues));
- resolve(user2);
- });
- }else{
- resolve(user);
- }
- });
- });
- }
- }
- module.exports = {
- User: User
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement