fixing login employee
This commit is contained in:
@ -11,7 +11,7 @@ import dayjs from "dayjs"
|
|||||||
import jwt from "jsonwebtoken"
|
import jwt from "jsonwebtoken"
|
||||||
import fs from "fs"
|
import fs from "fs"
|
||||||
import { v4 as uuidv4 } from "uuid"
|
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 axios from "axios"
|
||||||
import CommonHelper from "../helpers/common"
|
import CommonHelper from "../helpers/common"
|
||||||
import { MoreThan } from "typeorm"
|
import { MoreThan } from "typeorm"
|
||||||
@ -47,7 +47,7 @@ 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", "employee.department", "employee.position"],
|
||||||
select: ["id", "email", "name", "password", "username", "roles"],
|
select: ["id", "email", "name", "password", "username", "roles"],
|
||||||
where: { username: param.username },
|
where: { username: param.username },
|
||||||
})
|
})
|
||||||
@ -98,6 +98,19 @@ export class AuthController {
|
|||||||
level_name: null,
|
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 privateKey = fs.readFileSync("src/helpers/key/private.key")
|
||||||
|
|
||||||
var token = jwt.sign(
|
var token = jwt.sign(
|
||||||
|
|||||||
@ -260,8 +260,11 @@ export class UserController {
|
|||||||
data.email = param.email
|
data.email = param.email
|
||||||
data.status = param.status
|
data.status = param.status
|
||||||
|
|
||||||
if (param.employee && param.employee.id! + "") {
|
if (param.employee_id && param.employee_id != "") {
|
||||||
data.employee = param.employee
|
const employee = await OrmHelper.DB.manager.getRepository(HrmsEmployee).findOneByOrFail({ id: param.employee_id })
|
||||||
|
data.employee = employee
|
||||||
|
} else {
|
||||||
|
data.employee = null
|
||||||
}
|
}
|
||||||
|
|
||||||
data.hashPassword()
|
data.hashPassword()
|
||||||
@ -585,13 +588,15 @@ export class UserController {
|
|||||||
|
|
||||||
if (data != null) {
|
if (data != null) {
|
||||||
data.name = param.name
|
data.name = param.name
|
||||||
data.employee = param.employee
|
|
||||||
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 && param.employee.id != "") {
|
if (param.employee_id && param.employee_id != "") {
|
||||||
data.employee = param.employee
|
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) {
|
||||||
|
|||||||
Reference in New Issue
Block a user