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