From 31996612b55211a3075a403a69b96e9c5d2f5d6d Mon Sep 17 00:00:00 2001 From: Sunghee <630sunghee@gmail.com> Date: Thu, 1 Aug 2019 03:32:26 +0900 Subject: [PATCH] Add new capsule router --- routes/auth/signup.js | 2 +- routes/capsules/new.js | 47 +++++++++++++++++++++++++++++++++------ utils/response-message.js | 2 ++ 3 files changed, 43 insertions(+), 8 deletions(-) diff --git a/routes/auth/signup.js b/routes/auth/signup.js index 6998724..fd43349 100644 --- a/routes/auth/signup.js +++ b/routes/auth/signup.js @@ -9,7 +9,7 @@ const utils = require('../../utils/format'); const resMessage = require('../../utils/response-message'); const statusCode = require('../../utils/status-code'); const conn = mysql.createConnection(require('../../config/mysql-config.js')); -conn.connect() +conn.connect(); function validateForm(form) { if(!form.id) { diff --git a/routes/capsules/new.js b/routes/capsules/new.js index 8ba7d12..d963d76 100644 --- a/routes/capsules/new.js +++ b/routes/capsules/new.js @@ -1,23 +1,56 @@ var express = require('express'); +var mysql = require('mysql'); var router = express.Router(); -const util = require('../../utils/format'); -const statusCode = require('../../utils/status-code'); + +const utils = require('../../utils/format'); const resMessage = require('../../utils/response-message'); -const authUtil = require("../../utils/auth-util"); +const statusCode = require('../../utils/status-code'); +const conn = mysql.createConnection(require('../../config/mysql-config.js')); +conn.connect(); function validateForm(form) { - if(!form.text && !form.image) { - return '내용이 존재하지 않습니다.'; + if(!form.private_key) { + return 'private key 값이 없습니다.'; + } + + if(!form.capsule_address) { + return 'capsule address 값이 없습니다.'; + } + + if(!form.money) { + return '예치금 값이 없습니다.'; } return null; } -router.post('/', authUtil.isLoggedin, async(req, res) => { +router.post('/', async(req, res, next) => { var err = validateForm(req.body); if(err) { - res.status(200).send(utils.successFalse(statusCode.BAD_REQUEST, err)); + console.log(err); + return res.status(200).send(utils.successFalse(statusCode.BAD_REQUEST, err)); } + + const findIdxQuery = 'SELECT idx FROM user WHERE private_key = ?'; + conn.query(findIdxQuery, [req.body.private_key], function(err, findResult) { + if(findResult == 0) { + return res.status(200).send(utils.successFalse(statusCode.DB_ERROR, resMessage.NO_USER)); + } else { + const insertInvitationQuery = 'INSERT INTO capsule (idx, capsule_address, money) VALUES (?, ?, ?)'; + conn.query(insertInvitationQuery, [findResult[0].idx, req.body.capsule_address, req.body.money], function(err, insertResult) { + if (insertResult) { + return res.json({code: 200}); + } else { + if(err) { + console.log(err); + next(err); + } + return res.status(200).send(utils.successFalse(statusCode.DB_ERROR, resMessage.CREATED_CAPSULE_FAIL)); + } + }); + } + }) + }); diff --git a/utils/response-message.js b/utils/response-message.js index 113304f..38fd72d 100644 --- a/utils/response-message.js +++ b/utils/response-message.js @@ -20,4 +20,6 @@ module.exports = { INVITATIONS_SUCCESS: "받은 초대가 있습니다.", CREATED_INVITATION_FAIL: "초대 실패", + CREATED_CAPSULE_FAIL: "예치금 저장 실패", + } \ No newline at end of file