Skip to content

SudoSOS Back-end API / users / UserController

Class: UserController ​

The BaseController class is responsible for:

  • Storing route definitions.
  • Generating router objects based on the policy.

Extends ​

Constructors ​

Constructor ​

ts
new UserController(options, tokenHandler): UserController;

Create a new user controller instance.

Parameters ​

ParameterTypeDescription
optionsBaseControllerOptionsThe options passed to the base controller.
tokenHandlerTokenHandler-

Returns ​

UserController

Overrides ​

BaseController.constructor

Properties ​

PropertyModifierTypeDescriptionInherited from
roleManagerprotectedRoleManagerA reference to the role manager passed in the base controller options.BaseController.roleManager
specificationpublicSwaggerSpecificationA reference to the swagger specification passed in the base controller options.BaseController.specification

Methods ​

acceptToS() ​

ts
acceptToS(req, res): Promise<void>;

POST /users/acceptTos

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - ToS accepted

Operation Id ​

acceptTos

Tags ​

users - Operations of the User controller

Security ​

JWT


addUserRole() ​

ts
addUserRole(req, res): Promise<void>;

POST /users/{id}/roles

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - Success

Tags ​

users - Operations of user controller

Operation Id ​

addUserRole

Security ​

JWT


createUser() ​

ts
createUser(req, res): Promise<void>;

POST /users

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - New user

Operation Id ​

createUser

Tags ​

users - Operations of user controller

Security ​

JWT


deleteUser() ​

ts
deleteUser(req, res): Promise<void>;

DELETE /users/

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - User successfully deleted

Operation Id ​

deleteUser

Tags ​

users - Operations of user controller

Security ​

JWT


deleteUserKey() ​

ts
deleteUserKey(req, res): Promise<void>;

Delete /users/{id}/authenticator/key

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - Deletion succesfull

Operation Id ​

deleteUserKey

Tags ​

users - Operations of user controller

Security ​

JWT


deleteUserNfc() ​

ts
deleteUserNfc(req, res): Promise<void>;

DELETE /users/{id}/authenticator/nfc

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - Delete nfc success

Operation Id ​

deleteUserNfc

Tags ​

users - Operations of user controller

Security ​

JWT


deleteUserRole() ​

ts
deleteUserRole(req, res): Promise<void>;

DELETE /users/{id}/roles/

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - Success

Tags ​

users - Operations of user controller

Operation Id ​

deleteUserRole

Security ​

JWT


findUserNfc() ​

ts
findUserNfc(req, res): Promise<void>;

GET /users/nfc/

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The requested user

Operation Id ​

findUserNfc

Tags ​

users - Operations of the user controller

Security ​

JWT


getAllUsers() ​

ts
getAllUsers(req, res): Promise<void>;

GET /users

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - A list of all users

Operation Id ​

getAllUsers

Tags ​

users - Operations of user controller

Security ​

JWT


getAllUsersOfUserType() ​

ts
getAllUsersOfUserType(req, res): Promise<void>;

GET /users/usertype/

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - A list of all users

Operation Id ​

getAllUsersOfUserType

Tags ​

users - Operations of user controller

Security ​

JWT


getIndividualUser() ​

ts
getIndividualUser(req, res): Promise<void>;

GET /users/

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - Individual user

Operation Id ​

getIndividualUser

Tags ​

users - Operations of user controller

Security ​

JWT


getOrganMembers() ​

ts
getOrganMembers(req, res): Promise<void>;

GET /users/{id}/members

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - All members of the organ

Operation Id ​

getOrganMembers

Tags ​

users - Operations of user controller

Security ​

JWT


getPolicy() ​

ts
getPolicy(): Policy;

Gets the policy defined by child classes. This policy includes all routes that the controller accepts, the authorization middleware, and the final handler function for every route.

Returns ​

Policy

The policy of this controller.

Overrides ​

BaseController.getPolicy


getRecentlyChargedUsers() ​

ts
getRecentlyChargedUsers(req, res): Promise<void>;

GET /users/recently-charged

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - List of recently charged users.

Operation Id ​

getRecentlyChargedUsers

Tags ​

users - Operations of user controller

Security ​

JWT


getRouter() ​

ts
getRouter(): Router;

Returns ​

Router

the router used by this controller.

Inherited from ​

BaseController.getRouter


getUserRoles() ​

ts
getUserRoles(req, res): Promise<void>;

GET /users/{id}/roles

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The roles of the user

Operation Id ​

getUserRoles

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersContainers() ​

ts
getUsersContainers(req, res): Promise<void>;

GET /users/{id}/containers

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - All users updated containers

Operation Id ​

getUsersContainers

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersFinancialMutations() ​

ts
getUsersFinancialMutations(req, res): Promise<void>;

GET /users/{id}/financialmutations

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The financial mutations of the user

Operation Id ​

getUsersFinancialMutations

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersPointsOfSale() ​

ts
getUsersPointsOfSale(req, res): Promise<void>;

GET /users/{id}/pointsofsale

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - All users updated point of sales

Operation Id ​

getUsersPointsOfSale

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersProcessingDeposits() ​

ts
getUsersProcessingDeposits(req, res): Promise<void>;

GET /users/{id}/deposits

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The processing deposits of a user

Operation Id ​

getUsersProcessingDeposits

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersProducts() ​

ts
getUsersProducts(req, res): Promise<void>;

GET /users/{id}/products

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - List of products.

Operation Id ​

getUsersProducts

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersPurchaseReportPdf() ​

ts
getUsersPurchaseReportPdf(req, res): Promise<void>;

GET /users/{id}/transactions/purchases/report/pdf

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

404 - User not found error.

Operation Id ​

getUsersPurchaseReportPdf

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersPurchasesReport() ​

ts
getUsersPurchasesReport(req, res): Promise<void>;

GET /users/{id}/transactions/purchases/report

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The purchases report of the user

Operation Id ​

getUsersPurchasesReport

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersSalesReport() ​

ts
getUsersSalesReport(req, res): Promise<void>;

GET /users/{id}/transactions/sales/report

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The sales report of the user

Operation Id ​

getUsersSalesReport

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersSalesReportPdf() ​

ts
getUsersSalesReportPdf(req, res): Promise<void>;

GET /users/{id}/transactions/sales/report/pdf

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

404 - User not found error.

Operation Id ​

getUsersSalesReportPdf

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersTransactions() ​

ts
getUsersTransactions(req, res): Promise<void>;

GET /users/{id}/transactions

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - List of transactions.

Operation Id ​

getUsersTransactions

Tags ​

users - Operations of user controller

Security ​

JWT


getUsersTransactionsReport() ​

ts
getUsersTransactionsReport(req, res): Promise<void>;

GET /users/{id}/transactions/report

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The transaction report of the user

Operation Id ​

getUsersTransactionsReport

Tags ​

users - Operations of user controller

Security ​

JWT

Deprecated ​

  • Use /users/{id}/transactions/sales/report or /users/{id}/transactions/purchases/report instead

getUsersTransfers() ​

ts
getUsersTransfers(req, res): Promise<void>;

GET /users/{id}/transfers

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - List of transfers.

Operation Id ​

getUsersTransfers

Tags ​

users - Operations of user controller

Security ​

JWT


updateUser() ​

ts
updateUser(req, res): Promise<void>;

PATCH /users/

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - New user

Operation Id ​

updateUser

Tags ​

users - Operations of user controller

Security ​

JWT


updateUserKey() ​

ts
updateUserKey(req, res): Promise<void>;

POST /users/{id}/authenticator/key

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

200 - The new key

Operation Id ​

updateUserKey

Tags ​

users - Operations of user controller

Security ​

JWT


updateUserLocalPassword() ​

ts
updateUserLocalPassword(req, res): Promise<void>;

PUT /users/{id}/authenticator/local

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - Update success

Operation Id ​

updateUserLocalPassword

Tags ​

users - Operations of user controller

Security ​

JWT


updateUserNfc() ​

ts
updateUserNfc(req, res): Promise<void>;

PUT /users/{id}/authenticator/nfc

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - Update success

Operation Id ​

updateUserNfc

Tags ​

users - Operations of user controller

Security ​

JWT


updateUserPin() ​

ts
updateUserPin(req, res): Promise<void>;

PUT /users/{id}/authenticator/pin

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - Update success

Operation Id ​

updateUserPin

Tags ​

users - Operations of user controller

Security ​

JWT


waiveUserFines() ​

ts
waiveUserFines(req, res): Promise<void>;

POST /users/{id}/fines/waive

Parameters ​

ParameterType
reqRequestWithToken
resResponse

Returns ​

Promise<void>

204 - Success

Tags ​

users - Operations of user controller

Operation Id ​

waiveUserFines

Security ​

JWT


getAttributes() ​

ts
static getAttributes(req): string[];

Parameters ​

ParameterType
reqRequestWithToken

Returns ​

string[]


getRelation() ​

ts
static getRelation(req): string;

Function to determine which credentials are needed to GET 'all' if user is not connected to User 'organ' if user is connected to User via organ 'own' if user is connected to User

Parameters ​

ParameterTypeDescription
reqRequestWithToken-

Returns ​

string

whether User is connected to used token