From 1244ae71fc8856721da7cfb22de25e66f86a91cb Mon Sep 17 00:00:00 2001 From: Apichat.Tum Date: Thu, 10 Nov 2016 18:29:12 +0700 Subject: [PATCH] new response --- app/controllers/home.controller.js | 167 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------- app/lib/index.js | 6 ++++++ 2 files changed, 90 insertions(+), 83 deletions(-) diff --git a/app/controllers/home.controller.js b/app/controllers/home.controller.js index d0e448a..ee5c993 100644 --- a/app/controllers/home.controller.js +++ b/app/controllers/home.controller.js @@ -1,28 +1,46 @@ -'use strict' +"use strict" +var console = process.console +var yamlConfig = require('node-yaml-config') +var path = require('path') +var async = require('async') +var config = yamlConfig.load(path.join(__dirname, '/../../config/config.yml')) -const console = process.console -const yamlConfig = require('node-yaml-config') -const path = require('path') -const async = require('async') -const config = yamlConfig.load(path.join(__dirname, '/../../config/config.yml')) - -const lib = require('../lib') +var lib = require('../lib') // lib.authorize() // lib.listEvents() // lib.createEvent() -const url = config.server.url -const port = config.server.port +var url = config.server.url +var port = config.server.port -function responseJSON(code, description, data, status) { - return { - "code": code, - "description": description, - "result": { - "data": data, - "status": status - } +function rmsRes(res) { + this._40401 = function (data) { + res.json({ + resultCode: '40401', + resultDescription: 'Data not found' + }).end() + } + this._50000 = function (data) { + console.tag('ERROR!').time().file().error(data) + res.json({ + resultCode: '50000', + resultDescription: 'System Error', + }).end() + } + this._40301 = function (data) { + res.json({ + resultCode: '40301', + resultDescription: 'Missing or invalid parameter' + }).end() + } + this._20000 = function (data) { + console.tag().time().file().info(data) + res.json({ + resultCode: '20000', + resultDescription: 'Success', + data: data + }).end() } } @@ -37,7 +55,8 @@ function ggToKendo(data) { for (var n = 0; n < data.items.length; n++) { dataToArr.push({ "TaskID": data.items[n].id, - "EventTypeID": checkObjEmpty(data.items[n].extendedProperties, 'private'), + "EventTypeID": checkObjEmpty(data.items[n].extendedProperties, 'private', 'EventTypeID'), + "PropertyID": checkObjEmpty(data.items[n].extendedProperties, 'private', 'PropertyID'), "Title": data.items[n].summary, "Description": data.items[n].description, "StartTimezone": "Asia/Bangkok", @@ -51,7 +70,7 @@ function ggToKendo(data) { }) } } catch (error) { - console.error(error.message) + console.tag().time().file().error(error.message) } finally { return dataToArr } @@ -62,53 +81,49 @@ function home(req, res) { } function index(req, res) { - console.log(req.body) + var rms = new rmsRes(res) + + console.tag().time().file().log(req.body) lib.getNewToken((err, authUrl) => { if (err) { - console.error(err) + rms._50000(err) } else { - console.info(authUrl) - res.send(authUrl) + rms._20000(authUrl) } }) } function setToken(req, res) { - console.log(req.body) + var rms = new rmsRes(res) + + console.tag().time().file().log(req.body) var code = req.body.code lib.setNewToken(code, (err, token) => { if (err) { - console.error(err) - res.send(err) - res.end() + rms._50000(err) } else { - console.info(token) - res.send(token) - res.end() + rms._20000(token) } }) } function events(req, res) { - // console.log(req.body) + var rms = new rmsRes(res) + lib.authorize((err, auth, authUrl) => { if (err) { - console.error(err) - res.send(err) + rms._50000(err) } else { lib.listEvents(auth, (err, response) => { if (err) { if (authUrl) { - console.info(authUrl) - res.json(responseJSON(res.code, "redirect to get auth code", authUrl, "redirect")) - res.end() + console.tag().time().file().info(authUrl) + rms._20000(authUrl) } else { - console.error(err) - res.json(responseJSON(res.code, "response error", err.message, "failed")) - res.end() + rms._50000(err) } } else { - // console.info(response) + // console.tag().time().file().info(response) res.jsonp(ggToKendo(response)) res.end() } @@ -118,53 +133,40 @@ function events(req, res) { } function eventCreate(req, res) { - console.log(req.body) + var rms = new rmsRes(res) + + console.tag().time().file().log(req.body) let payload = req.body if (typeof payload.models == "string") { payload.models = JSON.parse(req.body.models) payload = payload.models[0] } - // let summary = payload.summary - // let description = payload.description - // let email = payload.email - // let startDate = payload.startDate - // let startTimezone = payload.startTimezone - // let endDate = payload.endDate - // let endTimezone = payload.endTimezone - // // let extendedProperties = payload.extendedProperties - // payload.extendedProperties = { - // "private": { - // "eventTypeID": payload.EventTypeID - // } - // } - lib.authorize((err, auth) => { let options = lib.eventBuilder(payload) if (err) { - res.send(err) + rms._50000(err) } else { options.auth = auth } lib.createEvent(options, (err, result) => { if (err) { - res.send(err) + rms._50000(err) } else { - console.info(result) - res.send(result) - res.end() + rms._20000(result) } }) }) } function oauth2callback(req, res) { + var rms = new rmsRes(res) + var code = req.query.code lib.setNewToken(code, (err, token) => { if (err) { - res.send(err) - res.end() + rms._50000(err) } else { res.redirect('http://localhost:3030/home') } @@ -172,8 +174,9 @@ function oauth2callback(req, res) { } function eventDelete(req, res) { - console.log(req.body) + var rms = new rmsRes(res) + console.tag().time().file().log(req.body) let payload = req.body if (typeof payload.models == "string") { payload.models = JSON.parse(req.body.models) @@ -182,28 +185,26 @@ function eventDelete(req, res) { lib.authorize((err, auth) => { let options = lib.deleteBuilder(payload) if (err) { - console.error(err.message) - res.send(err) + rms._50000(err) } else { - console.info(auth) + console.tag().time().file().info(auth) options.auth = auth } lib.deleteEvent(options, (err, result) => { if (err) { - console.error(err.message) - res.send(err) + rms._50000(err) } else { - console.info(result) - res.send(result) - res.end() + rms._20000(result) } }) }) } function eventUpdate(req, res) { - console.log(req.body) + var rms = new rmsRes(res) + + console.tag().time().file().log(req.body) let payload = req.body if (typeof payload.models == "string") { payload.models = JSON.parse(req.body.models) @@ -212,30 +213,30 @@ function eventUpdate(req, res) { lib.authorize((err, auth) => { let options = lib.updateBuilder(payload) if (err) { - console.error(err.message) - res.send(err) + rms._50000(err) } else { - console.info(auth) + console.tag().time().file().info(auth) options.auth = auth } lib.updateEvent(options, (err, result) => { if (err) { - console.error(err) - res.send(err) + rms._50000(err) } else { - console.info(result) - res.send(result) - res.end() + rms._20000(result) } }) }) } -function checkObjEmpty(obj, parm) { +function checkObjEmpty(obj, parm, name) { if (obj) { if (Object.getOwnPropertyNames(obj)) { - return obj[parm].eventTypeID + if (name == 'EventTypeID') { + return obj[parm].eventTypeID + } else if (name == 'PropertyID') { + return obj[parm].propertyID + } } } else { return diff --git a/app/lib/index.js b/app/lib/index.js index 45ffebd..78ee263 100644 --- a/app/lib/index.js +++ b/app/lib/index.js @@ -257,6 +257,9 @@ module.exports = { } } } + if (payload.PropertyID) { + buildPayload.extendedProperties.private.propertyID = payload.PropertyID; + } } catch (error) { console.error(error.message) } finally { @@ -312,6 +315,9 @@ module.exports = { } } } + if (payload.PropertyID) { + buildPayload.extendedProperties.private.propertyID = payload.PropertyID; + } if (payload.extendedProperties) { buildPayload.extendedProperties = payload.extendedProperties } -- libgit2 0.21.2