fixed pagination and small syntax issues
This commit is contained in:
parent
027d8c7dee
commit
1e59a5a33a
|
|
@ -9,6 +9,7 @@ import {
|
||||||
import { error404, errorHandler } from "../../utils/errors.js";
|
import { error404, errorHandler } from "../../utils/errors.js";
|
||||||
import { sendResponseNotFound } from "../../utils/responses.js";
|
import { sendResponseNotFound } from "../../utils/responses.js";
|
||||||
import { noResults } from "../../validators/result-validators.js";
|
import { noResults } from "../../validators/result-validators.js";
|
||||||
|
import mysql from "../../adapters/mysql.js";
|
||||||
|
|
||||||
const getEndpointsController = (req, res, next, config) => {
|
const getEndpointsController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
|
|
@ -64,34 +65,6 @@ const getEndpointsByUuidController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const getEndpointsByRouteController = (req, res, next, config) => {
|
|
||||||
const conn = mysql.start(config)
|
|
||||||
const route = req.params.route
|
|
||||||
|
|
||||||
getEndpointsModel({ route, conn })
|
|
||||||
.then((response) => {
|
|
||||||
if (noResults(response)) {
|
|
||||||
const err = error404()
|
|
||||||
const error = errorHandler(err, config.environment)
|
|
||||||
return sendResponseNotFound(res, error)
|
|
||||||
}
|
|
||||||
|
|
||||||
const result = {
|
|
||||||
_data: {
|
|
||||||
endpoints: response
|
|
||||||
}
|
|
||||||
}
|
|
||||||
next(result)
|
|
||||||
})
|
|
||||||
.catch((err) => {
|
|
||||||
const error = errorHandler(err, config.environment)
|
|
||||||
return res.status(error.code).json(error)
|
|
||||||
})
|
|
||||||
.finally(() => {
|
|
||||||
mysql.end(conn)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const postEndpointsController = (req, res, next, config) => {
|
const postEndpointsController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
const created_by = req.auth.user || null
|
const created_by = req.auth.user || null
|
||||||
|
|
@ -172,7 +145,6 @@ const deleteEndpointsController = (req, res, next, config) => {
|
||||||
export {
|
export {
|
||||||
getEndpointsController,
|
getEndpointsController,
|
||||||
getEndpointsByUuidController,
|
getEndpointsByUuidController,
|
||||||
getEndpointsByRouteController,
|
|
||||||
postEndpointsController,
|
postEndpointsController,
|
||||||
putEndpointsController,
|
putEndpointsController,
|
||||||
softDeleteEndpointsController,
|
softDeleteEndpointsController,
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@ const getPermissionByUuidController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
const error = errorHandler(err, config.environment)
|
const error = errorHandler(err, config.environment)
|
||||||
res.status(error.code).json(error)
|
return res.status(error.code).json(error)
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
mysql.end(conn)
|
mysql.end(conn)
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ const postRefreshTokenController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
const { user } = req.auth
|
const { user } = req.auth
|
||||||
|
|
||||||
getUserListModel({ uuid: user })
|
getUserListModel({conn, uuid: user})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if (noResults(response)) {
|
if (noResults(response)) {
|
||||||
const err = error401()
|
const err = error401()
|
||||||
|
|
@ -35,9 +35,9 @@ const postRefreshTokenController = (req, res, next, config) => {
|
||||||
role: response[0].role
|
role: response[0].role
|
||||||
}
|
}
|
||||||
|
|
||||||
const {token, refreshToken} = generateTokens(tokenPayload)
|
const {accessToken, refreshToken} = generateTokens(tokenPayload)
|
||||||
//token application in frontend
|
//token application in frontend
|
||||||
next({token, refreshToken})
|
next({accessToken, refreshToken})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
|
|
|
||||||
|
|
@ -11,29 +11,40 @@ import { sendResponseNotFound } from '../../utils/responses.js'
|
||||||
import { noResults } from '../../validators/result-validators.js'
|
import { noResults } from '../../validators/result-validators.js'
|
||||||
|
|
||||||
const getRoleController = (req, res, next, config) => {
|
const getRoleController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
// Parse and validate pagination parameters with defaults
|
||||||
|
const limit = parseInt(req.query.limit, 10) || 100;
|
||||||
|
const page = parseInt(req.query.page, 10) || 1;
|
||||||
|
|
||||||
Promise.all([
|
// Create sanitized query object
|
||||||
getRoleModel({ ...req.query, conn }),
|
const queryParams = {
|
||||||
countRoleModel({ ...req.query, conn })
|
...req.query,
|
||||||
])
|
limit,
|
||||||
.then(([getResults, countResults]) =>
|
page
|
||||||
next({
|
};
|
||||||
_data: { Role: getResults },
|
|
||||||
_page: {
|
const conn = mysql.start(config)
|
||||||
totalElements: countResults,
|
|
||||||
limit: req.query.limit || 100,
|
Promise.all([
|
||||||
page: req.query.page || (countResults && 1) || 0
|
getRoleModel({ ...queryParams, conn }),
|
||||||
}
|
countRoleModel({ ...queryParams, conn })
|
||||||
})
|
])
|
||||||
)
|
.then(([getResults, countResults]) => {
|
||||||
.catch((err) => {
|
next({
|
||||||
const error = errorHandler(err, config.environment)
|
_data: {roles: getResults},
|
||||||
return res.status(error.code).json(error)
|
_page: {
|
||||||
})
|
totalElements: countResults,
|
||||||
.finally(() => {
|
limit: req.query.limit || 100,
|
||||||
mysql.end(conn)
|
page: req.query.page || (countResults && 1) || 0
|
||||||
})
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
const error = errorHandler(err, config.environment)
|
||||||
|
return res.status(error.code).json(error)
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
|
mysql.end(conn)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const getRoleInfoController = (req, res, next, config) => {
|
const getRoleInfoController = (req, res, next, config) => {
|
||||||
|
|
@ -50,35 +61,7 @@ const getRoleInfoController = (req, res, next, config) => {
|
||||||
|
|
||||||
const result = {
|
const result = {
|
||||||
_data: {
|
_data: {
|
||||||
Role: RoleInformation
|
roles: RoleInformation
|
||||||
}
|
|
||||||
}
|
|
||||||
next(result)
|
|
||||||
})
|
|
||||||
.catch((err) => {
|
|
||||||
const error = errorHandler(err, config.environment)
|
|
||||||
return res.status(error.code).json(error)
|
|
||||||
})
|
|
||||||
.finally(() => {
|
|
||||||
mysql.end(conn)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const getRoleByNameController = (req, res, next, config) => {
|
|
||||||
const conn = mysql.start(config)
|
|
||||||
const name = req.params.name
|
|
||||||
|
|
||||||
getRoleModel({ name, conn })
|
|
||||||
.then((RoleInformation) => {
|
|
||||||
if (noResults(RoleInformation)) {
|
|
||||||
const err = error404()
|
|
||||||
const error = errorHandler(err, config.environment)
|
|
||||||
return sendResponseNotFound(res, error)
|
|
||||||
}
|
|
||||||
|
|
||||||
const result = {
|
|
||||||
_data: {
|
|
||||||
Role: RoleInformation
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
next(result)
|
next(result)
|
||||||
|
|
@ -99,7 +82,7 @@ const postRoleController = (req, res, next, config) => {
|
||||||
insertRoleModel({ ...req.body, createdBy, conn })
|
insertRoleModel({ ...req.body, createdBy, conn })
|
||||||
.then((RoleInformation) => {
|
.then((RoleInformation) => {
|
||||||
const result = {
|
const result = {
|
||||||
_data: { role: RoleInformation }
|
_data: { roles: RoleInformation }
|
||||||
}
|
}
|
||||||
|
|
||||||
next(result)
|
next(result)
|
||||||
|
|
@ -122,7 +105,7 @@ const putRoleController = (req, res, next, config) => {
|
||||||
const result = {
|
const result = {
|
||||||
_data: {
|
_data: {
|
||||||
message: 'Role modified',
|
message: 'Role modified',
|
||||||
Role: RoleInformation
|
roles: RoleInformation
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
next(result)
|
next(result)
|
||||||
|
|
@ -160,6 +143,5 @@ export {
|
||||||
getRoleController,
|
getRoleController,
|
||||||
getRoleInfoController,
|
getRoleInfoController,
|
||||||
postRoleController,
|
postRoleController,
|
||||||
putRoleController,
|
putRoleController
|
||||||
getRoleByNameController
|
|
||||||
}
|
}
|
||||||
|
|
@ -1,25 +1,24 @@
|
||||||
import { error404, errorHandler } from '../../utils/errors.js'
|
|
||||||
import { sendResponseNotFound } from '../../utils/responses.js'
|
|
||||||
import { noResults } from '../../validators/result-validators.js'
|
|
||||||
import mysql from '../../adapters/mysql.js'
|
import mysql from '../../adapters/mysql.js'
|
||||||
import {
|
import {
|
||||||
getPermissionModel,
|
getRolesHasPermissionsModel,
|
||||||
countPermissionModel,
|
countRolesHasPermissionsModel,
|
||||||
insertPermissionModel,
|
insertRolesHasPermissionsModel,
|
||||||
modifyPermissionModel,
|
modifyRolesHasPermissionsModel,
|
||||||
softDeletePermissionModel
|
softDeleteRolesHasPermissionsModel
|
||||||
} from '../../models/authorization/permissionsModel.js'
|
} from '../../models/authorization/roles_has_permissionsModel.js'
|
||||||
|
import { errorHandler } from '../../utils/errors.js'
|
||||||
|
import { noResults } from '../../validators/result-validators.js'
|
||||||
|
|
||||||
const getPermissionController = (req, res, next, config) => {
|
const getRolesHasPermissionsController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
|
const uuidList = req.query.uuidList && req.query.uuidList.split(',')
|
||||||
Promise.all([
|
Promise.all([
|
||||||
getPermissionModel({...req.query, conn}),
|
getRolesHasPermissionsModel({...req.query, uuidList, conn}),
|
||||||
countPermissionModel({...req.query, conn})
|
countRolesHasPermissionsModel({...req.query, uuidList, conn})
|
||||||
])
|
])
|
||||||
.then(([getResults, countResults]) => {
|
.then(([getResults, countResults]) => {
|
||||||
next({
|
next({
|
||||||
_data: {permissions: getResults},
|
_data: {roles_has_permissions: getResults},
|
||||||
_page: {
|
_page: {
|
||||||
totalElements: countResults,
|
totalElements: countResults,
|
||||||
limit: req.query.limit || 100,
|
limit: req.query.limit || 100,
|
||||||
|
|
@ -36,11 +35,10 @@ const getPermissionController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const getPermissionByUuidController = (req, res, next, config) => {
|
const getRolesHasPermissionsByUuidController = (req, res, next, config) => {
|
||||||
const uuid_permission = req.params.uuid
|
const uuid = req.params.uuid
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
|
getRolesHasPermissionsModel({ uuid, conn })
|
||||||
getPermissionModel({ uuid_permission, conn })
|
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if (noResults(response)) {
|
if (noResults(response)) {
|
||||||
const err = error404()
|
const err = error404()
|
||||||
|
|
@ -50,7 +48,7 @@ const getPermissionByUuidController = (req, res, next, config) => {
|
||||||
|
|
||||||
const result = {
|
const result = {
|
||||||
_data: {
|
_data: {
|
||||||
permissions: response
|
roles_has_permissions: response
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
next(result)
|
next(result)
|
||||||
|
|
@ -64,16 +62,14 @@ const getPermissionByUuidController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const postPermissionController = (req, res, next, config) => {
|
const postRolesHasPermissionsController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
const created_by = req.auth.user || null
|
const createdBy = req.auth.user || null
|
||||||
|
|
||||||
insertPermissionModel({...req.body, created_by, conn})
|
insertRolesHasPermissionsModel({...req.body, createdBy, conn})
|
||||||
.then((response) => {
|
.then((roles_has_permissions) => {
|
||||||
const result = {
|
const result = {
|
||||||
_data: {
|
_data: roles_has_permissions
|
||||||
permissions: response
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
next(result)
|
next(result)
|
||||||
})
|
})
|
||||||
|
|
@ -86,16 +82,14 @@ const postPermissionController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const putPermissionController = (req, res, next, config) => {
|
const putRolesHasPermissionsController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
const uuid_permission = req.params.uuid
|
const uuid = req.params.uuid
|
||||||
|
|
||||||
modifyPermissionModel({...req.body, uuid_permission, conn})
|
modifyRolesHasPermissionsModel({ ...req.body, uuid, modifiedBy, conn })
|
||||||
.then((response) => {
|
.then((roles_has_permissions) => {
|
||||||
const result = {
|
const result = {
|
||||||
_data: {
|
_data: roles_has_permissions
|
||||||
permissions: response
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
next(result)
|
next(result)
|
||||||
})
|
})
|
||||||
|
|
@ -108,12 +102,13 @@ const putPermissionController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const softDeletePermissionController = (req, res, next, config) => {
|
const softDeleteRolesHasPermissionsController = (req, res, next, config) => {
|
||||||
const conn = mysql.start(config)
|
const conn = mysql.start(config)
|
||||||
const uuid_permission = req.params.uuid
|
const uuid = req.params.uuid
|
||||||
const deletedBy = req.auth.user || null
|
const { deleted } = req.body
|
||||||
|
const deletedby = req.auth.user || null
|
||||||
|
|
||||||
softDeletePermissionModel({uuid_permission, deletedBy, conn})
|
softDeleteRolesHasPermissionsModel({ uuid, deleted, deletedby, conn })
|
||||||
.then(() => {
|
.then(() => {
|
||||||
const result = {}
|
const result = {}
|
||||||
next(result)
|
next(result)
|
||||||
|
|
@ -128,9 +123,9 @@ const softDeletePermissionController = (req, res, next, config) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
export {
|
export {
|
||||||
getPermissionController,
|
getRolesHasPermissionsController,
|
||||||
getPermissionByUuidController,
|
getRolesHasPermissionsByUuidController,
|
||||||
postPermissionController,
|
postRolesHasPermissionsController,
|
||||||
putPermissionController,
|
softDeleteRolesHasPermissionsController,
|
||||||
softDeletePermissionController
|
putRolesHasPermissionsController,
|
||||||
}
|
}
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
import bcrypt from 'bcrypt'
|
import bcrypt from 'bcrypt'
|
||||||
import mysql from '../../adapters/mysql.js'
|
import mysql from '../../adapters/mysql.js'
|
||||||
import {
|
import {
|
||||||
|
|
@ -35,7 +34,7 @@ const getUserListController = (req, res, next, config) => {
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
const error = errorHandler(err, config.environment)
|
const error = errorHandler(err, config.environment)
|
||||||
res.status(error.code).json(error)
|
return res.status(error.code).json(error)
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
mysql.end(conn)
|
mysql.end(conn)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue