update users.ts and user controller to allow duplicate email and username

This commit is contained in:
wayanrivan
2026-05-28 13:56:36 +07:00
parent 2abf238b1a
commit 9e0ff46801

View File

@ -14,6 +14,7 @@ import path from "path";
import fileUpload from "express-fileupload";
import { v4 as uuidv4 } from "uuid";
import config from "../../config/stag.json";
import { IsNull } from "typeorm";
const log: Logger<ILogObj> = new Logger({
name: "[UserController]",
type: "pretty",
@ -501,6 +502,28 @@ export class UserController {
data.email = param.email;
data.status = param.status;
const email = await OrmHelper.DB.getRepository(User).findOne({
where: {
email: param.email,
deleted_at: IsNull()
}
});
const username = await OrmHelper.DB.getRepository(User).findOne({
where: {
username: param.username,
deleted_at: IsNull()
}
});
if (email) {
throw { message: "Email already exists" };
}
if (username) {
throw { message: "Username already exists" };
}
if (param.employee_id && param.employee_id != "") {
const employee = await OrmHelper.DB.manager.getRepository(HrmsEmployee).findOneByOrFail({ id: param.employee_id });
data.employee = employee;