Spaces:
Running
Running
import { userRegisterSchema } from "src/modules/common/users/validation/user-register.validation"; | |
import { asyncHandler } from "../../../../helpers/async-handler"; | |
import { JwtHelper } from "../../../../helpers/jwt.helper"; | |
import { bodyValidator } from "../../../../helpers/validation.helper"; | |
import { BaseController } from "../../../../lib/controllers/controller.base"; | |
import { Prefix } from "../../../../lib/decorators/prefix.decorator"; | |
import { UsersService } from "../services/users.service"; | |
import { JsonResponse } from "src/lib/responses/json-response"; | |
const allowedRoles = ["superAdmin", "admin"]; | |
"/console/users") | (|
export class AdminUsersController extends BaseController { | |
private usersService: UsersService = new UsersService(); | |
setRoutes() { | |
this.router.post( | |
"/create", | |
JwtHelper.verifyToken(allowedRoles), | |
bodyValidator(userRegisterSchema), | |
asyncHandler(this.create) | |
); | |
} | |
create = async (req, res) => { | |
let user = await this.usersService.create(req.body); | |
return new JsonResponse({ | |
data: user, | |
}); | |
}; | |
} | |