fix(employee): minor fix for preps setup oauth
This commit is contained in:
parent
701d1be4ab
commit
3d6bde36ae
|
|
@ -17,7 +17,8 @@ model Users {
|
|||
id String @id @default(uuid())
|
||||
first_name String
|
||||
last_name String
|
||||
email String? @unique
|
||||
email String @unique
|
||||
password String
|
||||
phone_number Int @unique
|
||||
residence String?
|
||||
role Roles @default(GUEST)
|
||||
|
|
|
|||
|
|
@ -27,25 +27,21 @@ export class EmployeesController {
|
|||
return this.employeesService.findAll();
|
||||
}
|
||||
|
||||
@Get(':employee_id')
|
||||
findOne(
|
||||
@Param('employee_id', ParseIntPipe) employee_id: number,
|
||||
): Promise<Employees> {
|
||||
return this.employeesService.findOne(employee_id);
|
||||
@Get(':id')
|
||||
findOne(@Param('id', ParseIntPipe) id: number): Promise<Employees> {
|
||||
return this.employeesService.findOne(id);
|
||||
}
|
||||
|
||||
@Patch(':employee_id')
|
||||
@Patch(':id')
|
||||
update(
|
||||
@Param('employee_id', ParseIntPipe) employee_id: number,
|
||||
@Param('id', ParseIntPipe) id: number,
|
||||
@Body() dto: UpdateEmployeeDto,
|
||||
): Promise<Employees> {
|
||||
return this.employeesService.update(employee_id, dto);
|
||||
return this.employeesService.update(id, dto);
|
||||
}
|
||||
|
||||
@Delete(':employee_id')
|
||||
remove(
|
||||
@Param('employee_id', ParseIntPipe) employee_id: number,
|
||||
): Promise<Employees> {
|
||||
return this.employeesService.remove(employee_id);
|
||||
@Delete(':id')
|
||||
remove(@Param('id', ParseIntPipe) id: number): Promise<Employees> {
|
||||
return this.employeesService.remove(id);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import {
|
|||
IsString,
|
||||
} from 'class-validator';
|
||||
import { Type } from 'class-transformer';
|
||||
import { Roles } from '@prisma/client';
|
||||
|
||||
export class CreateEmployeeDto {
|
||||
@IsString()
|
||||
|
|
@ -20,13 +21,15 @@ export class CreateEmployeeDto {
|
|||
last_name: string;
|
||||
|
||||
@IsEmail()
|
||||
@IsOptional()
|
||||
email?: string;
|
||||
@IsNotEmpty()
|
||||
email: string;
|
||||
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
password: string;
|
||||
|
||||
@Type(() => Number)
|
||||
@IsInt({
|
||||
message: 'Le numéro de téléphone doit être sans tirets ni espaces.',
|
||||
})
|
||||
@IsInt()
|
||||
@IsPositive()
|
||||
phone_number: number;
|
||||
|
||||
|
|
@ -34,6 +37,10 @@ export class CreateEmployeeDto {
|
|||
@IsOptional()
|
||||
residence?: string;
|
||||
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
role: Roles;
|
||||
|
||||
@IsInt()
|
||||
@IsPositive()
|
||||
@Type(() => Number)
|
||||
|
|
|
|||
|
|
@ -17,8 +17,10 @@ export class EmployeesService {
|
|||
first_name,
|
||||
last_name,
|
||||
email,
|
||||
password,
|
||||
phone_number,
|
||||
residence,
|
||||
role,
|
||||
external_payroll_id,
|
||||
company_code,
|
||||
first_work_day,
|
||||
|
|
@ -31,13 +33,15 @@ export class EmployeesService {
|
|||
first_name,
|
||||
last_name,
|
||||
email,
|
||||
password,
|
||||
phone_number,
|
||||
residence,
|
||||
role,
|
||||
},
|
||||
});
|
||||
return tx.employees.create({
|
||||
data: {
|
||||
user_id: user.user_id,
|
||||
user_id: user.id,
|
||||
external_payroll_id,
|
||||
company_code,
|
||||
first_work_day,
|
||||
|
|
@ -53,24 +57,24 @@ export class EmployeesService {
|
|||
});
|
||||
}
|
||||
|
||||
async findOne(employee_id: number): Promise<Employees> {
|
||||
async findOne(id: number): Promise<Employees> {
|
||||
const emp = await this.prisma.employees.findUnique({
|
||||
where: { employee_id },
|
||||
where: { id },
|
||||
include: { user: true },
|
||||
});
|
||||
if (!emp) {
|
||||
throw new NotFoundException(`Employee #${employee_id} not found`);
|
||||
throw new NotFoundException(`Employee #${id} not found`);
|
||||
}
|
||||
return emp;
|
||||
}
|
||||
|
||||
async update(
|
||||
employee_id: number,
|
||||
id: number,
|
||||
dto: UpdateEmployeeDto,
|
||||
): Promise<Employees> {
|
||||
await this.findOne(employee_id);
|
||||
await this.findOne(id);
|
||||
return this.prisma.employees.update({
|
||||
where: { employee_id },
|
||||
where: { id },
|
||||
data: {
|
||||
external_payroll_id: dto.external_payroll_id,
|
||||
company_code: dto.company_code,
|
||||
|
|
@ -80,8 +84,8 @@ export class EmployeesService {
|
|||
});
|
||||
}
|
||||
|
||||
async remove(employee_id: number): Promise<Employees> {
|
||||
await this.findOne(employee_id);
|
||||
return this.prisma.employees.delete({ where: { employee_id } });
|
||||
async remove(id: number): Promise<Employees> {
|
||||
await this.findOne(id);
|
||||
return this.prisma.employees.delete({ where: { id } });
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user