diff --git a/controllers/userController.js b/controllers/userController.js index 4ea22de..14ddae2 100644 --- a/controllers/userController.js +++ b/controllers/userController.js @@ -78,7 +78,7 @@ exports.getuser = async (req, res) => { exports.deluser = async (req, res) => { try { - await userServices.deleteuser(req.data.email); + await userServices.deleteuser(req.data.id); res.status(201).send({success: "true", message: "user deleted" }); } catch (error) { console.log(error) diff --git a/model/address.js b/model/address.js index f45cedd..0b23647 100644 --- a/model/address.js +++ b/model/address.js @@ -1,28 +1,36 @@ -const mongoose=require("mongoose"); -const { ObjectId } = mongoose.Schema.Types; -const user = mongoose.Schema({ - user_id:{ - type: ObjectId, - ref: "users", - required: true, +const { DataTypes } = require("sequelize"); +const sequelize = require("../dbconnection"); +const address = sequelize.define("address", + { + user_id: { + type: DataTypes.INTEGER, + allowNull: false, }, - address:{ - type:String + address: { + type: DataTypes.STRING, + allowNull: false, }, - city:{ - type:String + city: { + type: DataTypes.STRING, + allowNull: false, }, - state:{ - type:String + state: { + type: DataTypes.STRING, + allowNull: false, }, - pin_code:{ - type:Number + pin_code: { + type: DataTypes.INTEGER, + allowNull: false, }, - phone:{ - type:Number - } -}, -{timestamps:true} + phone: { + type: DataTypes.INTEGER, + allowNull: false, + }, + }, + { + tableName: "address", + timestamps: true, + } ); -module.exports = mongoose.model("useraddress",user) \ No newline at end of file +module.exports = address; \ No newline at end of file diff --git a/model/register.js b/model/register.js index 880aede..53699bc 100644 --- a/model/register.js +++ b/model/register.js @@ -1,5 +1,6 @@ const { DataTypes } = require("sequelize"); const sequelize = require("../dbconnection"); +const address = require("./address"); const User = sequelize.define("User", { username: { @@ -31,7 +32,9 @@ const User = sequelize.define("User", timestamps: true, } ); - +User.hasMany(address, { + foreignKey: 'user_id' +}); // `sequelize.define` also returns the model console.log(User === sequelize.models.User); // true diff --git a/services/userservices.js b/services/userservices.js index 5f3c040..27e49ca 100644 --- a/services/userservices.js +++ b/services/userservices.js @@ -4,12 +4,12 @@ const bcrypt = require("bcryptjs"); const users = require("../model/userModel"); const userToken = require("../model/userToken"); const DummyData = require("../model/DummyData"); -const useradd = require("../model/address"); +const User = require("../model/register"); +const address = require("../model/address"); const multer = require("multer") const nodemailer = require("nodemailer") const axios = require("axios"); const Cheerio =require("cheerio"); -const User = require("../model/register"); const transporter = nodemailer.createTransport({ @@ -24,13 +24,21 @@ const transporter = nodemailer.createTransport({ }); const getdata= async (id)=>{ - return await users.findOne({_id:id}).populate("address") + return await User.findOne({ + include:[{ + model:address + }] + },{where:{user_id:id}}) } -const deleteuser = async ()=>{ - const data = await users.findOneAndDelete(req.data.email); +const deleteuser = async (ID)=>{ + const data = await User.destroy({ + where: { + id: ID + } + }); if (data) { - res.status(200).send({success: "true", message: "User deleted" }); + return true } } @@ -110,8 +118,7 @@ const usersignup = async(data) =>{ lastname: data.lastname, email: data.email, password: data.password, - mobile: data.mobile, - address: data.address + mobile: data.mobile }); if(user){ const mailOption ={ @@ -137,7 +144,8 @@ const user_list = async (page)=>{ const useraddress = async (data,ID) => { try { - let userAdd = new useradd({ + address.sync(); + let userAdd = await address.create({ user_id: ID, address: data.address, city: data.city, @@ -145,18 +153,7 @@ const useraddress = async (data,ID) => { pin_code: data.pin_code, phone: data.phone }); - if(userAdd){ - await userAdd.save(); - - await users.findByIdAndUpdate( - ID, - { $push: { address: userAdd._id } }, - { new: true, upsert: true } - ); - return true - }else{ - return false; - } + return userAdd } catch (error) { console.error(error) }