feat: add user relation on query

This commit is contained in:
Methapon2001 2024-07-01 14:38:07 +07:00
parent 2bd30b735d
commit 9f3b8cd290
14 changed files with 259 additions and 41 deletions

View file

@ -35,6 +35,10 @@ export class EmployeeWorkController extends Controller {
@Get()
async list(@Path() employeeId: string) {
return prisma.employeeWork.findMany({
include: {
createdBy: true,
updatedBy: true,
},
orderBy: { createdAt: "asc" },
where: { employeeId },
});
@ -43,6 +47,10 @@ export class EmployeeWorkController extends Controller {
@Get("{workId}")
async getById(@Path() employeeId: string, @Path() workId: string) {
const record = await prisma.employeeWork.findFirst({
include: {
createdBy: true,
updatedBy: true,
},
where: { id: workId, employeeId },
});
if (!record) {
@ -65,6 +73,10 @@ export class EmployeeWorkController extends Controller {
throw new HttpError(HttpStatus.BAD_REQUEST, "Employee cannot be found.", "employeeBadReq");
const record = await prisma.employeeWork.create({
include: {
createdBy: true,
updatedBy: true,
},
data: {
...body,
employee: { connect: { id: employeeId } },
@ -94,6 +106,10 @@ export class EmployeeWorkController extends Controller {
}
const record = await prisma.employeeWork.update({
include: {
createdBy: true,
updatedBy: true,
},
where: { id: workId, employeeId },
data: { ...body, updatedByUserId: req.user.sub },
});
@ -105,7 +121,13 @@ export class EmployeeWorkController extends Controller {
@Delete("{workId}")
async deleteById(@Path() employeeId: string, @Path() workId: string) {
const record = await prisma.employeeWork.findFirst({ where: { id: workId, employeeId } });
const record = await prisma.employeeWork.findFirst({
include: {
createdBy: true,
updatedBy: true,
},
where: { id: workId, employeeId },
});
if (!record) {
throw new HttpError(