Browse Source

Address Schema 생성 및 API 추가

kiboky 5 years ago
parent
commit
d9dc85df41
3 changed files with 68 additions and 1 deletions
  1. 17 0
      server/models/address.js
  2. 49 0
      server/routes/address.js
  3. 2 1
      server/server.js

+ 17 - 0
server/models/address.js

@@ -0,0 +1,17 @@
+const mongoose = require('mongoose')
+const Schema = mongoose.Schema
+
+const AddressSchema = new Schema({
+  user: { type: Schema.Types.ObjectId, ref: 'User'},
+  country: String,
+  fullName: String,
+  streetAddress: String,
+  city: String,
+  state: String,
+  zipCode: String,
+  phoneNumber: String,
+  deliverInstructions: String,
+  securityCode: String
+})
+
+module.exports = mongoose.model('Address', AddressSchema)

+ 49 - 0
server/routes/address.js

@@ -0,0 +1,49 @@
+const router = require('express').Router()
+const address = require('../models/Address')
+const virifyToken = require('../middlewares/verify-token')
+
+router.post('/address/', virifyToken, async (req, res) => {
+  try {
+    let address = new Address()
+    address.user = req.decoded._id
+    address.country = req.body.country
+    address.fullName = req.body.fullName
+    address.streetAddress = req.body.streetAddress
+    address.city = req.body.city
+    address.state = req.body.state
+    address.zipCode = req.body.zipCode
+    address.phoneNumber = req.body.phoneNumber
+    address.deliverInstructions = req.body.deliverInstructions
+    address.securityCode = req.body.securityCode
+
+    await address.save()
+    res.json({
+      success: true,
+      message: 'Success added an address'
+    })
+  } catch (err) {
+    res.status(500).json({
+      success: false,
+      message: err.message
+    })
+  }
+})
+
+router.get('/address', virifyToken, async (req, res) => {
+  try {
+    let addresses = await Address.find({ user: req.decoded._id })
+
+    res.json({
+      success: true,
+      addresses
+    })
+
+  } catch (err) {
+    res.status(500).json({
+      success: false,
+      message: err.message
+    })
+  }
+})
+
+module.exports = router

+ 2 - 1
server/server.js

@@ -30,7 +30,7 @@ const categoryRouters = require('./routes/category')
 const ownerRouters = require('./routes/owner')
 const userRouters = require('./routes/auth')
 const reviewRouters = require('./routes/review')
-
+const addressRouters = require('./routes/address')
 
 
 app.use('/api', productRouters)
@@ -38,6 +38,7 @@ app.use('/api', categoryRouters)
 app.use('/api', ownerRouters)
 app.use('/api', userRouters)
 app.use('/api', reviewRouters)
+app.use('/api', addressRouters)
 
 app.listen(3000, (err) => {
   if (err) {