Commit 1244ae71fc8856721da7cfb22de25e66f86a91cb
1 parent
48a9a246
Exists in
master
new response
Showing
2 changed files
with
90 additions
and
83 deletions
Show diff stats
app/controllers/home.controller.js
1 | -'use strict' | |
1 | +"use strict" | |
2 | +var console = process.console | |
3 | +var yamlConfig = require('node-yaml-config') | |
4 | +var path = require('path') | |
5 | +var async = require('async') | |
6 | +var config = yamlConfig.load(path.join(__dirname, '/../../config/config.yml')) | |
2 | 7 | |
3 | -const console = process.console | |
4 | -const yamlConfig = require('node-yaml-config') | |
5 | -const path = require('path') | |
6 | -const async = require('async') | |
7 | -const config = yamlConfig.load(path.join(__dirname, '/../../config/config.yml')) | |
8 | - | |
9 | -const lib = require('../lib') | |
8 | +var lib = require('../lib') | |
10 | 9 | |
11 | 10 | // lib.authorize() |
12 | 11 | // lib.listEvents() |
13 | 12 | // lib.createEvent() |
14 | 13 | |
15 | -const url = config.server.url | |
16 | -const port = config.server.port | |
14 | +var url = config.server.url | |
15 | +var port = config.server.port | |
17 | 16 | |
18 | -function responseJSON(code, description, data, status) { | |
19 | - return { | |
20 | - "code": code, | |
21 | - "description": description, | |
22 | - "result": { | |
23 | - "data": data, | |
24 | - "status": status | |
25 | - } | |
17 | +function rmsRes(res) { | |
18 | + this._40401 = function (data) { | |
19 | + res.json({ | |
20 | + resultCode: '40401', | |
21 | + resultDescription: 'Data not found' | |
22 | + }).end() | |
23 | + } | |
24 | + this._50000 = function (data) { | |
25 | + console.tag('ERROR!').time().file().error(data) | |
26 | + res.json({ | |
27 | + resultCode: '50000', | |
28 | + resultDescription: 'System Error', | |
29 | + }).end() | |
30 | + } | |
31 | + this._40301 = function (data) { | |
32 | + res.json({ | |
33 | + resultCode: '40301', | |
34 | + resultDescription: 'Missing or invalid parameter' | |
35 | + }).end() | |
36 | + } | |
37 | + this._20000 = function (data) { | |
38 | + console.tag().time().file().info(data) | |
39 | + res.json({ | |
40 | + resultCode: '20000', | |
41 | + resultDescription: 'Success', | |
42 | + data: data | |
43 | + }).end() | |
26 | 44 | } |
27 | 45 | } |
28 | 46 | |
... | ... | @@ -37,7 +55,8 @@ function ggToKendo(data) { |
37 | 55 | for (var n = 0; n < data.items.length; n++) { |
38 | 56 | dataToArr.push({ |
39 | 57 | "TaskID": data.items[n].id, |
40 | - "EventTypeID": checkObjEmpty(data.items[n].extendedProperties, 'private'), | |
58 | + "EventTypeID": checkObjEmpty(data.items[n].extendedProperties, 'private', 'EventTypeID'), | |
59 | + "PropertyID": checkObjEmpty(data.items[n].extendedProperties, 'private', 'PropertyID'), | |
41 | 60 | "Title": data.items[n].summary, |
42 | 61 | "Description": data.items[n].description, |
43 | 62 | "StartTimezone": "Asia/Bangkok", |
... | ... | @@ -51,7 +70,7 @@ function ggToKendo(data) { |
51 | 70 | }) |
52 | 71 | } |
53 | 72 | } catch (error) { |
54 | - console.error(error.message) | |
73 | + console.tag().time().file().error(error.message) | |
55 | 74 | } finally { |
56 | 75 | return dataToArr |
57 | 76 | } |
... | ... | @@ -62,53 +81,49 @@ function home(req, res) { |
62 | 81 | } |
63 | 82 | |
64 | 83 | function index(req, res) { |
65 | - console.log(req.body) | |
84 | + var rms = new rmsRes(res) | |
85 | + | |
86 | + console.tag().time().file().log(req.body) | |
66 | 87 | lib.getNewToken((err, authUrl) => { |
67 | 88 | if (err) { |
68 | - console.error(err) | |
89 | + rms._50000(err) | |
69 | 90 | } else { |
70 | - console.info(authUrl) | |
71 | - res.send(authUrl) | |
91 | + rms._20000(authUrl) | |
72 | 92 | } |
73 | 93 | }) |
74 | 94 | } |
75 | 95 | |
76 | 96 | function setToken(req, res) { |
77 | - console.log(req.body) | |
97 | + var rms = new rmsRes(res) | |
98 | + | |
99 | + console.tag().time().file().log(req.body) | |
78 | 100 | var code = req.body.code |
79 | 101 | lib.setNewToken(code, (err, token) => { |
80 | 102 | if (err) { |
81 | - console.error(err) | |
82 | - res.send(err) | |
83 | - res.end() | |
103 | + rms._50000(err) | |
84 | 104 | } else { |
85 | - console.info(token) | |
86 | - res.send(token) | |
87 | - res.end() | |
105 | + rms._20000(token) | |
88 | 106 | } |
89 | 107 | }) |
90 | 108 | } |
91 | 109 | |
92 | 110 | function events(req, res) { |
93 | - // console.log(req.body) | |
111 | + var rms = new rmsRes(res) | |
112 | + | |
94 | 113 | lib.authorize((err, auth, authUrl) => { |
95 | 114 | if (err) { |
96 | - console.error(err) | |
97 | - res.send(err) | |
115 | + rms._50000(err) | |
98 | 116 | } else { |
99 | 117 | lib.listEvents(auth, (err, response) => { |
100 | 118 | if (err) { |
101 | 119 | if (authUrl) { |
102 | - console.info(authUrl) | |
103 | - res.json(responseJSON(res.code, "redirect to get auth code", authUrl, "redirect")) | |
104 | - res.end() | |
120 | + console.tag().time().file().info(authUrl) | |
121 | + rms._20000(authUrl) | |
105 | 122 | } else { |
106 | - console.error(err) | |
107 | - res.json(responseJSON(res.code, "response error", err.message, "failed")) | |
108 | - res.end() | |
123 | + rms._50000(err) | |
109 | 124 | } |
110 | 125 | } else { |
111 | - // console.info(response) | |
126 | + // console.tag().time().file().info(response) | |
112 | 127 | res.jsonp(ggToKendo(response)) |
113 | 128 | res.end() |
114 | 129 | } |
... | ... | @@ -118,53 +133,40 @@ function events(req, res) { |
118 | 133 | } |
119 | 134 | |
120 | 135 | function eventCreate(req, res) { |
121 | - console.log(req.body) | |
136 | + var rms = new rmsRes(res) | |
137 | + | |
138 | + console.tag().time().file().log(req.body) | |
122 | 139 | let payload = req.body |
123 | 140 | if (typeof payload.models == "string") { |
124 | 141 | payload.models = JSON.parse(req.body.models) |
125 | 142 | payload = payload.models[0] |
126 | 143 | } |
127 | 144 | |
128 | - // let summary = payload.summary | |
129 | - // let description = payload.description | |
130 | - // let email = payload.email | |
131 | - // let startDate = payload.startDate | |
132 | - // let startTimezone = payload.startTimezone | |
133 | - // let endDate = payload.endDate | |
134 | - // let endTimezone = payload.endTimezone | |
135 | - // // let extendedProperties = payload.extendedProperties | |
136 | - // payload.extendedProperties = { | |
137 | - // "private": { | |
138 | - // "eventTypeID": payload.EventTypeID | |
139 | - // } | |
140 | - // } | |
141 | - | |
142 | 145 | lib.authorize((err, auth) => { |
143 | 146 | let options = lib.eventBuilder(payload) |
144 | 147 | if (err) { |
145 | - res.send(err) | |
148 | + rms._50000(err) | |
146 | 149 | } else { |
147 | 150 | options.auth = auth |
148 | 151 | } |
149 | 152 | |
150 | 153 | lib.createEvent(options, (err, result) => { |
151 | 154 | if (err) { |
152 | - res.send(err) | |
155 | + rms._50000(err) | |
153 | 156 | } else { |
154 | - console.info(result) | |
155 | - res.send(result) | |
156 | - res.end() | |
157 | + rms._20000(result) | |
157 | 158 | } |
158 | 159 | }) |
159 | 160 | }) |
160 | 161 | } |
161 | 162 | |
162 | 163 | function oauth2callback(req, res) { |
164 | + var rms = new rmsRes(res) | |
165 | + | |
163 | 166 | var code = req.query.code |
164 | 167 | lib.setNewToken(code, (err, token) => { |
165 | 168 | if (err) { |
166 | - res.send(err) | |
167 | - res.end() | |
169 | + rms._50000(err) | |
168 | 170 | } else { |
169 | 171 | res.redirect('http://localhost:3030/home') |
170 | 172 | } |
... | ... | @@ -172,8 +174,9 @@ function oauth2callback(req, res) { |
172 | 174 | } |
173 | 175 | |
174 | 176 | function eventDelete(req, res) { |
175 | - console.log(req.body) | |
177 | + var rms = new rmsRes(res) | |
176 | 178 | |
179 | + console.tag().time().file().log(req.body) | |
177 | 180 | let payload = req.body |
178 | 181 | if (typeof payload.models == "string") { |
179 | 182 | payload.models = JSON.parse(req.body.models) |
... | ... | @@ -182,28 +185,26 @@ function eventDelete(req, res) { |
182 | 185 | lib.authorize((err, auth) => { |
183 | 186 | let options = lib.deleteBuilder(payload) |
184 | 187 | if (err) { |
185 | - console.error(err.message) | |
186 | - res.send(err) | |
188 | + rms._50000(err) | |
187 | 189 | } else { |
188 | - console.info(auth) | |
190 | + console.tag().time().file().info(auth) | |
189 | 191 | options.auth = auth |
190 | 192 | } |
191 | 193 | |
192 | 194 | lib.deleteEvent(options, (err, result) => { |
193 | 195 | if (err) { |
194 | - console.error(err.message) | |
195 | - res.send(err) | |
196 | + rms._50000(err) | |
196 | 197 | } else { |
197 | - console.info(result) | |
198 | - res.send(result) | |
199 | - res.end() | |
198 | + rms._20000(result) | |
200 | 199 | } |
201 | 200 | }) |
202 | 201 | }) |
203 | 202 | } |
204 | 203 | |
205 | 204 | function eventUpdate(req, res) { |
206 | - console.log(req.body) | |
205 | + var rms = new rmsRes(res) | |
206 | + | |
207 | + console.tag().time().file().log(req.body) | |
207 | 208 | let payload = req.body |
208 | 209 | if (typeof payload.models == "string") { |
209 | 210 | payload.models = JSON.parse(req.body.models) |
... | ... | @@ -212,30 +213,30 @@ function eventUpdate(req, res) { |
212 | 213 | lib.authorize((err, auth) => { |
213 | 214 | let options = lib.updateBuilder(payload) |
214 | 215 | if (err) { |
215 | - console.error(err.message) | |
216 | - res.send(err) | |
216 | + rms._50000(err) | |
217 | 217 | } else { |
218 | - console.info(auth) | |
218 | + console.tag().time().file().info(auth) | |
219 | 219 | options.auth = auth |
220 | 220 | } |
221 | 221 | |
222 | 222 | lib.updateEvent(options, (err, result) => { |
223 | 223 | if (err) { |
224 | - console.error(err) | |
225 | - res.send(err) | |
224 | + rms._50000(err) | |
226 | 225 | } else { |
227 | - console.info(result) | |
228 | - res.send(result) | |
229 | - res.end() | |
226 | + rms._20000(result) | |
230 | 227 | } |
231 | 228 | }) |
232 | 229 | }) |
233 | 230 | } |
234 | 231 | |
235 | -function checkObjEmpty(obj, parm) { | |
232 | +function checkObjEmpty(obj, parm, name) { | |
236 | 233 | if (obj) { |
237 | 234 | if (Object.getOwnPropertyNames(obj)) { |
238 | - return obj[parm].eventTypeID | |
235 | + if (name == 'EventTypeID') { | |
236 | + return obj[parm].eventTypeID | |
237 | + } else if (name == 'PropertyID') { | |
238 | + return obj[parm].propertyID | |
239 | + } | |
239 | 240 | } |
240 | 241 | } else { |
241 | 242 | return | ... | ... |
app/lib/index.js
... | ... | @@ -257,6 +257,9 @@ module.exports = { |
257 | 257 | } |
258 | 258 | } |
259 | 259 | } |
260 | + if (payload.PropertyID) { | |
261 | + buildPayload.extendedProperties.private.propertyID = payload.PropertyID; | |
262 | + } | |
260 | 263 | } catch (error) { |
261 | 264 | console.error(error.message) |
262 | 265 | } finally { |
... | ... | @@ -312,6 +315,9 @@ module.exports = { |
312 | 315 | } |
313 | 316 | } |
314 | 317 | } |
318 | + if (payload.PropertyID) { | |
319 | + buildPayload.extendedProperties.private.propertyID = payload.PropertyID; | |
320 | + } | |
315 | 321 | if (payload.extendedProperties) { |
316 | 322 | buildPayload.extendedProperties = payload.extendedProperties |
317 | 323 | } | ... | ... |