This commit is contained in:
Narul Hidayah
2026-01-02 23:24:58 +07:00
parent 293df9046a
commit a578dc5c66
3 changed files with 15 additions and 12 deletions

View File

@ -47,8 +47,8 @@ export class AuthController {
const userRefreshTokenRepository = OrmHelper.DB.getRepository(UserRefreshToken) const userRefreshTokenRepository = OrmHelper.DB.getRepository(UserRefreshToken)
const user = await userRepository.findOne({ const user = await userRepository.findOne({
relations: ["roles", "roles.application"], relations: ["roles", "roles.application", "employee"],
select: ["id", "email", "name", "employee_id", "password", "username", "roles"], select: ["id", "email", "name", "password", "username", "roles"],
where: { username: param.username }, where: { username: param.username },
}) })
@ -109,7 +109,7 @@ export class AuthController {
name: user.name, name: user.name,
id_role: role_id, id_role: role_id,
roles: roles.roles, roles: roles.roles,
employee_id: user.employee_id, employee_id: user.employee?.id || null,
hrms: hrms, hrms: hrms,
}, },
}, },

View File

@ -1,6 +1,6 @@
import axios from "axios" import axios from "axios"
import config from "config" import config from "config"
import { Paging, User, UserRefreshToken, UserRole } from "entity" import { Paging, User, UserRefreshToken, UserRole, HrmsEmployee } from "entity"
import exceljs from "exceljs" import exceljs from "exceljs"
import { NextFunction, Response } from "express" import { NextFunction, Response } from "express"
import { Request } from "express-jwt" import { Request } from "express-jwt"
@ -251,7 +251,7 @@ export class UserController {
status: Joi.string().required().label("Status"), status: Joi.string().required().label("Status"),
}) })
const param: User = await schema.validateAsync(req.body) const param: any = await schema.validateAsync(req.body)
const data = new User() const data = new User()
data.name = param.name data.name = param.name
@ -260,8 +260,9 @@ export class UserController {
data.email = param.email data.email = param.email
data.status = param.status data.status = param.status
if (param.employee_id && param.employee_id! + "") { if (param.employee_id && param.employee_id != "") {
data.employee_id = param.employee_id const employee = await OrmHelper.DB.manager.getRepository(HrmsEmployee).findOneByOrFail({ id: param.employee_id })
data.employee = employee
} }
data.hashPassword() data.hashPassword()
@ -577,7 +578,7 @@ export class UserController {
req.body.id = req.params["id"] req.body.id = req.params["id"]
const param: User = await schema.validateAsync(req.body) const param: any = await schema.validateAsync(req.body)
const userRepository = OrmHelper.DB.getRepository(User) const userRepository = OrmHelper.DB.getRepository(User)
@ -585,13 +586,15 @@ export class UserController {
if (data != null) { if (data != null) {
data.name = param.name data.name = param.name
data.employee_id = param.employee_id
data.username = param.username data.username = param.username
data.email = param.email data.email = param.email
data.status = param.status data.status = param.status
if (param.employee_id && param.employee_id != "") { if (param.employee_id && param.employee_id != "") {
data.employee_id = param.employee_id const employee = await OrmHelper.DB.manager.getRepository(HrmsEmployee).findOneByOrFail({ id: param.employee_id })
data.employee = employee
} else {
data.employee = null
} }
if (param.password) { if (param.password) {

View File

@ -1,6 +1,6 @@
import config from 'config'; import config from 'config';
import { DataSource } from "typeorm"; import { DataSource } from "typeorm";
import { Application, Menu, User, UserActivity, UserRefreshToken, UserRole } from "entity"; import { Application, Menu, User, UserActivity, UserRefreshToken, UserRole, HrmsEmployee, Nationality, Aldeia, Suco, Administrativu, Munisipo, HrmsAirport, HrmsDepartment, HrmsPosition, HrmsShift } from "entity";
import { ILogObj, Logger } from 'tslog'; import { ILogObj, Logger } from 'tslog';
export class OrmHelper { export class OrmHelper {
@ -20,7 +20,7 @@ export class OrmHelper {
database: String(config.get("database.database")), database: String(config.get("database.database")),
synchronize: true, synchronize: true,
logging: config.get('database.logging'), logging: config.get('database.logging'),
entities: [User, UserRole, UserActivity, UserRefreshToken, Menu, Application], entities: [User, UserRole, UserActivity, UserRefreshToken, Menu, Application, HrmsEmployee, Nationality, Aldeia, Suco, Administrativu, Munisipo, HrmsAirport, HrmsDepartment, HrmsPosition, HrmsShift ],
subscribers: [], subscribers: [],
migrations: [], migrations: [],
}) })