Skip to content

Commit 2caaad8

Browse files
committed
chore(code): cleanup
1 parent 1bb4856 commit 2caaad8

File tree

9 files changed

+120
-139
lines changed

9 files changed

+120
-139
lines changed

.babelrc

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
{
22
"presets": ["@babel/react", "@babel/env"],
33
"plugins": [
4-
["@babel/plugin-proposal-decorators", {}],
4+
["@babel/plugin-proposal-decorators", {
5+
"loose": true,
6+
"decoratorsBeforeExport": true
7+
}],
58
["@babel/plugin-proposal-class-properties", { "loose": false }],
69
["@babel/plugin-proposal-private-methods", { "loose": true }],
710
["@babel/plugin-proposal-private-property-in-object", { "loose": true }]

.eslintrc.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22
"plugins": ["import", "prettier", "standard"],
33
"extends": ["standard", "prettier"],
44
"root": true,
5+
"parser": "@babel/eslint-parser",
56
"parserOptions": {
6-
"ecmaVersion": 2015
7+
"ecmaVersion": 6
78
},
89
"env": {
910
"browser": true,

package.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"version": "1.2.0-tango",
44
"private": true,
55
"engines": {
6-
"node": ">=9.10.0"
6+
"node": ">=16.14.0"
77
},
88
"bin": "./app.js",
99
"scripts": {
@@ -119,6 +119,7 @@
119119
},
120120
"devDependencies": {
121121
"@babel/core": "7.17.4",
122+
"@babel/eslint-parser": "7.17.0",
122123
"@babel/plugin-proposal-class-properties": "7.16.7",
123124
"@babel/plugin-proposal-decorators": "7.17.2",
124125
"@babel/preset-env": "7.16.11",

src/controllers/api.js

+10-10
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,17 @@
1313
*/
1414

1515
// Sub APIs
16-
var apiTicketsV1 = require('./api/v1/tickets')
17-
var apiTagsV1 = require('./api/v1/tags')
18-
var apiNoticesV1 = require('./api/v1/notices')
19-
var apiUsersV1 = require('./api/v1/users')
20-
var apiMessagesV1 = require('./api/v1/messages')
21-
var apiGroupsV1 = require('./api/v1/groups')
22-
var apiReportsV1 = require('./api/v1/reports')
23-
var apiSettingsV1 = require('./api/v1/settings')
24-
var apiPluginsV1 = require('./api/v1/plugins')
16+
const apiTicketsV1 = require('./api/v1/tickets')
17+
const apiTagsV1 = require('./api/v1/tags')
18+
const apiNoticesV1 = require('./api/v1/notices')
19+
const apiUsersV1 = require('./api/v1/users')
20+
const apiMessagesV1 = require('./api/v1/messages')
21+
const apiGroupsV1 = require('./api/v1/groups')
22+
const apiReportsV1 = require('./api/v1/reports')
23+
const apiSettingsV1 = require('./api/v1/settings')
24+
const apiPluginsV1 = require('./api/v1/plugins')
2525

26-
var apiController = {}
26+
const apiController = {}
2727

2828
apiController.index = function (req, res) {
2929
return res.json({ supported: ['v1', 'v2'] })

src/controllers/api/v2/accounts.js

+22-22
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,23 @@
1212
* Copyright (c) 2014-2019. All rights reserved.
1313
*/
1414

15-
var _ = require('lodash')
16-
var async = require('async')
17-
var Chance = require('chance')
18-
var apiUtil = require('../apiUtils')
19-
var User = require('../../../models/user')
20-
var Group = require('../../../models/group')
21-
var Team = require('../../../models/team')
22-
var Department = require('../../../models/department')
15+
const _ = require('lodash')
16+
const async = require('async')
17+
const Chance = require('chance')
18+
const apiUtil = require('../apiUtils')
19+
const User = require('../../../models/user')
20+
const Group = require('../../../models/group')
21+
const Team = require('../../../models/team')
22+
const Department = require('../../../models/department')
2323

24-
var accountsApi = {}
24+
const accountsApi = {}
2525

2626
accountsApi.create = function (req, res) {
27-
var postData = req.body
27+
const postData = req.body
2828
if (!postData) return apiUtil.sendApiError_InvalidPostData(res)
2929

30-
var savedId = null
31-
var chance = new Chance()
30+
let savedId = null
31+
const chance = new Chance()
3232
async.series(
3333
{
3434
user: function (next) {
@@ -101,7 +101,7 @@ accountsApi.create = function (req, res) {
101101
function (err, results) {
102102
if (err) return apiUtil.sendApiError(res, 500, err.message)
103103

104-
var user = results.user.toJSON()
104+
const user = results.user.toJSON()
105105
user.groups = results.groups.map(function (g) {
106106
return { _id: g._id, name: g.name }
107107
})
@@ -122,12 +122,12 @@ accountsApi.create = function (req, res) {
122122
}
123123

124124
accountsApi.get = function (req, res) {
125-
var query = req.query
126-
var type = query.type || 'customers'
127-
var limit = query.limit ? Number(query.limit) : 25
128-
var page = query.page ? Number(query.page) : 0
125+
const query = req.query
126+
const type = query.type || 'customers'
127+
const limit = query.limit ? Number(query.limit) : 25
128+
const page = query.page ? Number(query.page) : 0
129129

130-
var obj = {
130+
const obj = {
131131
limit: limit === -1 ? 999999 : limit,
132132
page: page,
133133
showDeleted: query.showDeleted && query.showDeleted === 'true'
@@ -145,14 +145,14 @@ accountsApi.get = function (req, res) {
145145
User.getCustomers(obj, function (err, accounts) {
146146
if (err) return apiUtil.sendApiError(res, 500, err.message)
147147

148-
var resAccounts = []
148+
const resAccounts = []
149149

150150
async.eachSeries(
151151
accounts,
152152
function (account, next) {
153153
Group.getAllGroupsOfUser(account._id, function (err, groups) {
154154
if (err) return next(err)
155-
var a = account.toObject()
155+
const a = account.toObject()
156156
a.groups = groups.map(function (group) {
157157
return { name: group.name, _id: group._id }
158158
})
@@ -172,11 +172,11 @@ accountsApi.get = function (req, res) {
172172
User.getAgents(obj, function (err, accounts) {
173173
if (err) return apiUtil.sendApiError(res, 500, err.message)
174174

175-
var resAccounts = []
175+
const resAccounts = []
176176
async.eachSeries(
177177
accounts,
178178
function (account, next) {
179-
var a = account.toObject()
179+
const a = account.toObject()
180180
Department.getUserDepartments(account._id, function (err, departments) {
181181
if (err) return next(err)
182182

src/controllers/api/v2/common.js

+26-25
Original file line numberDiff line numberDiff line change
@@ -12,44 +12,45 @@
1212
* Copyright (c) 2014-2019. All rights reserved.
1313
*/
1414

15-
var _ = require('lodash')
16-
var User = require('../../../models/user')
17-
var apiUtils = require('../apiUtils')
15+
const User = require('../../../models/user')
16+
const apiUtils = require('../apiUtils')
1817

19-
var commonV2 = {}
18+
const commonV2 = {}
2019

21-
commonV2.login = function (req, res) {
22-
var username = req.body.username
23-
var password = req.body.password
20+
commonV2.login = async (req, res) => {
21+
const username = req.body.username
22+
const password = req.body.password
2423

2524
if (!username || !password) return apiUtils.sendApiError_InvalidPostData(res)
2625

27-
User.getUserByUsername(username, function (err, user) {
28-
if (err) return apiUtils.sendApiError(res, 401, err.message)
26+
try {
27+
const user = await User.getUserByUsername(username)
2928
if (!user) return apiUtils.sendApiError(res, 401, 'Invalid Username/Password')
3029

31-
if (!User.validate(password, user.password))
32-
return res.status(401).json({ success: false, error: 'Invalid Username/Password' })
30+
if (!User.validate(password, user.password)) return apiUtils.sendApiError(res, 401, 'Invalid Username/Password')
3331

34-
apiUtils.generateJWTToken(user, function (err, tokens) {
35-
if (err) return apiUtils.sendApiError(res, 500, err.message)
36-
return apiUtils.sendApiSuccess(res, { token: tokens.token, refreshToken: tokens.refreshToken })
37-
})
38-
})
32+
const tokens = await apiUtils.generateJWTToken(user)
33+
34+
return apiUtils.sendApiSuccess(res, { token: tokens.token, refreshToken: tokens.refreshToken })
35+
} catch (e) {
36+
return apiUtils.sendApiError(res, 500, e.message)
37+
}
3938
}
4039

41-
commonV2.token = function (req, res) {
42-
var refreshToken = req.body.refreshToken
40+
commonV2.token = async (req, res) => {
41+
const refreshToken = req.body.refreshToken
4342
if (!refreshToken) return apiUtils.sendApiError_InvalidPostData(res)
4443

45-
User.getUserByAccessToken(refreshToken, function (err, user) {
46-
if (err || !user) return apiUtils.sendApiError(res, 401)
44+
try {
45+
const user = await User.getUserByAccessToken(refreshToken)
46+
if (!user) return apiUtils.sendApiError(res, 401)
47+
48+
const tokens = await apiUtils.generateJWTToken(user)
4749

48-
apiUtils.generateJWTToken(user, function (err, tokens) {
49-
if (err) return apiUtils.sendApiError(res, 500, err.message)
50-
return apiUtils.sendApiSuccess(res, { token: tokens.token, refreshToken: tokens.refreshToken })
51-
})
52-
})
50+
return apiUtils.sendApiSuccess(res, { token: tokens.token, refreshToken: tokens.refreshToken })
51+
} catch (e) {
52+
return apiUtils.sendApiError(res, 500, e.message)
53+
}
5354
}
5455

5556
module.exports = commonV2

src/controllers/api/v2/departments.js

+38-70
Original file line numberDiff line numberDiff line change
@@ -12,103 +12,71 @@
1212
* Copyright (c) 2014-2019. All rights reserved.
1313
*/
1414

15-
var Department = require('../../../models/department')
16-
var apiUtils = require('../apiUtils')
15+
const Department = require('../../../models/department')
16+
const apiUtils = require('../apiUtils')
1717

18-
var apiDepartments = {}
18+
const apiDepartments = {}
1919

20-
apiDepartments.get = function (req, res) {
21-
Department.find({}, function (err, departments) {
22-
if (err) return apiUtils.sendApiError(res, 500, err.message)
20+
apiDepartments.get = async (req, res) => {
21+
try {
22+
const departments = await Department.find({})
2323

24-
return apiUtils.sendApiSuccess(res, { departments: departments })
25-
})
24+
return apiUtils.sendApiSuccess(res, { departments })
25+
} catch (err) {
26+
return apiUtils.sendApiError(res, 500, err.message)
27+
}
2628
}
2729

28-
apiDepartments.create = function (req, res) {
29-
var postData = req.body
30+
apiDepartments.create = async (req, res) => {
31+
const postData = req.body
3032
if (!postData) return apiUtils.sendApiError_InvalidPostData(res)
31-
33+
3234
if (!postData.teams) postData.teams = []
3335
if (!postData.groups) postData.groups = []
3436

35-
Department.create(postData, function (err, createdDepartment) {
36-
if (err) return apiUtils.sendApiError(res, 500, err.message)
37+
try {
38+
const createdDepartment = await Department.create(postData)
3739
if (!createdDepartment) return apiUtils.sendApiError(res, 500, 'Unable to create department')
3840

39-
createdDepartment.populate('teams groups', function (err, populatedDepartment) {
40-
if (err) return apiUtils.sendApiError(res, 500, err.message)
41+
const populatedDepartment = await createdDepartment.populate('teams groups')
4142

42-
return apiUtils.sendApiSuccess(res, { department: populatedDepartment })
43-
})
44-
})
43+
return apiUtils.sendApiSuccess(res, { department: populatedDepartment })
44+
} catch (e) {
45+
return apiUtils.sendApiError(res, 500, e.message)
46+
}
4547
}
4648

47-
apiDepartments.test = function (req, res) {
48-
Department.getDepartmentGroupsOfUser(req.user._id, function (err, groups) {
49-
if (err) return apiUtils.sendApiError(res, 500, err.message)
50-
51-
return apiUtils.sendApiSuccess(res, { groups: groups, count: groups.length })
52-
})
53-
}
54-
55-
apiDepartments.update = function (req, res) {
56-
var putData = req.body
57-
var id = req.params.id
49+
apiDepartments.update = async (req, res) => {
50+
const putData = req.body
51+
const id = req.params.id
5852
if (!putData || !id) return apiUtils.sendApiError_InvalidPostData(res)
5953

6054
if (!putData.teams) putData.teams = []
6155
if (!putData.groups) putData.groups = []
6256
if (putData.allGroups) putData.groups = []
6357

64-
Department.findOneAndUpdate({ _id: id }, putData, { new: true }, function (err, department) {
65-
if (err) return apiUtils.sendApiError(res, 500, err.message)
66-
67-
department.populate('teams groups', function (err, department) {
68-
if (err) return apiUtils.sendApiError(res, 500, err.message)
69-
70-
return apiUtils.sendApiSuccess(res, { department: department })
71-
})
72-
})
73-
74-
// Department.findOne({ _id: id }, function (err, d) {
75-
// if (err) return apiUtils.sendApiError(res, 500, err.message)
76-
//
77-
// var department = d.
78-
//
79-
// if (putData.name) department.name = putData.name
80-
// if (putData.teams) department.teams = putData.teams
81-
// if (putData.allGroups) department.allGroups = putData.allGroups
82-
// if (!department.allGroups) {
83-
// if (putData.groups) department.groups = putData.groups
84-
// } else {
85-
// department.groups = []
86-
// }
87-
//
88-
// console.log(department)
89-
//
90-
// department.save(function (err, department) {
91-
// if (err) return apiUtils.sendApiError(res, 500, err.message)
92-
//
93-
// department.populate('teams groups', function (err, department) {
94-
// if (err) return apiUtils.sendApiError(res, 500, err.message)
95-
//
96-
// return apiUtils.sendApiSuccess(res, { department: department })
97-
// })
98-
// })
99-
// })
58+
try {
59+
let department = await Department.findOneAndUpdate(({ _id: id }, putData, { new: true }))
60+
department = await department.populate('teams groups')
61+
62+
return apiUtils.sendApiSuccess(res, { department })
63+
} catch (e) {
64+
return apiUtils.sendApiError(res, 500, e.message)
65+
}
10066
}
10167

102-
apiDepartments.delete = function (req, res) {
103-
var id = req.params.id
68+
apiDepartments.delete = async (req, res) => {
69+
const id = req.params.id
10470
if (!id) return apiUtils.sendApiError_InvalidPostData(res)
10571

106-
Department.deleteOne({ _id: id }, function (err, success) {
107-
if (err) return apiUtils.sendApiError(res, 500, err.message)
72+
try {
73+
const success = await Department.deleteOne({ _id: id })
10874
if (!success) return apiUtils.sendApiError(res, 500, 'Unable to delete department')
10975

11076
return apiUtils.sendApiSuccess(res)
111-
})
77+
} catch (err) {
78+
return apiUtils.sendApiError(res, 500, err.message)
79+
}
11280
}
11381

11482
module.exports = apiDepartments

0 commit comments

Comments
 (0)