fixing login employee
This commit is contained in:
@ -11,7 +11,7 @@ import dayjs from "dayjs"
|
||||
import jwt from "jsonwebtoken"
|
||||
import fs from "fs"
|
||||
import { v4 as uuidv4 } from "uuid"
|
||||
import { Application, EmailBody, Menu, User, UserRefreshToken, UserRole } from "entity"
|
||||
import { Application, EmailBody, HrmsEmployee, Menu, User, UserRefreshToken, UserRole } from "entity"
|
||||
import axios from "axios"
|
||||
import CommonHelper from "../helpers/common"
|
||||
import { MoreThan } from "typeorm"
|
||||
@ -47,7 +47,7 @@ export class AuthController {
|
||||
const userRefreshTokenRepository = OrmHelper.DB.getRepository(UserRefreshToken)
|
||||
|
||||
const user = await userRepository.findOne({
|
||||
relations: ["roles", "roles.application"],
|
||||
relations: ["roles", "roles.application", "employee", "employee.department", "employee.position"],
|
||||
select: ["id", "email", "name", "password", "username", "roles"],
|
||||
where: { username: param.username },
|
||||
})
|
||||
@ -98,6 +98,19 @@ export class AuthController {
|
||||
level_name: null,
|
||||
}
|
||||
|
||||
// If user has employee, populate hrms data
|
||||
if (user.employee && user.employee.id) {
|
||||
hrms.uuid = user.employee.id
|
||||
hrms.employee_id = user.employee.employee_id || null
|
||||
hrms.employeename = user.employee.name || null
|
||||
hrms.title = user.employee.position?.name || null
|
||||
hrms.department_id = user.employee.department?.id || null
|
||||
hrms.departement_uuid = user.employee.department?.id || null
|
||||
hrms.department_name = user.employee.department?.name || null
|
||||
hrms.level_id = user.employee.position?.id || null
|
||||
hrms.level_name = user.employee.position?.name || null
|
||||
}
|
||||
|
||||
var privateKey = fs.readFileSync("src/helpers/key/private.key")
|
||||
|
||||
var token = jwt.sign(
|
||||
|
||||
@ -260,8 +260,11 @@ export class UserController {
|
||||
data.email = param.email
|
||||
data.status = param.status
|
||||
|
||||
if (param.employee && param.employee.id! + "") {
|
||||
data.employee = param.employee
|
||||
if (param.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
|
||||
}
|
||||
|
||||
data.hashPassword()
|
||||
@ -585,13 +588,15 @@ export class UserController {
|
||||
|
||||
if (data != null) {
|
||||
data.name = param.name
|
||||
data.employee = param.employee
|
||||
data.username = param.username
|
||||
data.email = param.email
|
||||
data.status = param.status
|
||||
|
||||
if (param.employee && param.employee.id != "") {
|
||||
data.employee = param.employee
|
||||
if (param.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) {
|
||||
|
||||
Reference in New Issue
Block a user