41 lines
1.5 KiB
TypeScript
41 lines
1.5 KiB
TypeScript
import { Injectable } from '@nestjs/common';
|
|
import { PrismaService } from '../prisma/prisma.service';
|
|
import { ChangeEquipmentStatus, Prisma } from 'generated/prisma';
|
|
|
|
@Injectable()
|
|
export class ChangeEquipmentStatusService {
|
|
constructor(private prisma: PrismaService) {}
|
|
|
|
async findAll(params: {
|
|
skip?: number;
|
|
take?: number;
|
|
where?: Prisma.ChangeEquipmentStatusWhereInput;
|
|
orderBy?: Prisma.ChangeEquipmentStatusOrderByWithRelationInput;
|
|
}): Promise<[ChangeEquipmentStatus[], number]> {
|
|
const { skip, take, where, orderBy } = params;
|
|
const [data, total] = await Promise.all([
|
|
this.prisma.changeEquipmentStatus.findMany({ skip, take, where, orderBy }),
|
|
this.prisma.changeEquipmentStatus.count({ where }),
|
|
]);
|
|
return [data, total];
|
|
}
|
|
|
|
async findOne(where: Prisma.ChangeEquipmentStatusWhereUniqueInput): Promise<ChangeEquipmentStatus | null> {
|
|
return this.prisma.changeEquipmentStatus.findUnique({ where });
|
|
}
|
|
|
|
async create(data: Prisma.ChangeEquipmentStatusCreateInput): Promise<ChangeEquipmentStatus> {
|
|
return this.prisma.changeEquipmentStatus.create({ data });
|
|
}
|
|
|
|
async update(params: {
|
|
where: Prisma.ChangeEquipmentStatusWhereUniqueInput;
|
|
data: Prisma.ChangeEquipmentStatusUpdateInput;
|
|
}): Promise<ChangeEquipmentStatus> {
|
|
return this.prisma.changeEquipmentStatus.update(params);
|
|
}
|
|
|
|
async remove(where: Prisma.ChangeEquipmentStatusWhereUniqueInput): Promise<ChangeEquipmentStatus> {
|
|
return this.prisma.changeEquipmentStatus.delete({ where });
|
|
}
|
|
} |