2024-02-16 15:00:07 +01:00

38 lines
1.1 KiB
TypeScript

import { Offices, Prisma } from "@prisma/client";
import OfficesRepository from "@Repositories/OfficesRepository";
import BaseService from "@Services/BaseService";
import { Service } from "typedi";
import { Office as OfficeRessource } from "le-coffre-resources/dist/Notary";
@Service()
export default class OfficesService extends BaseService {
constructor(private officeRepository: OfficesRepository) {
super();
}
/**
* @description : Get all offices
* @throws {Error} If offices cannot be get
*/
public async get(query: Prisma.OfficesFindManyArgs) {
return this.officeRepository.findMany(query);
}
/**
* @description : Get a office by uid
* @throws {Error} If office cannot be get
*/
public async getByUid(uid: string, query?: Prisma.OfficesInclude) {
return this.officeRepository.findOneByUid(uid, query);
}
/**
* @description : Modify an office
* @throws {Error} If office cannot be modified
*/
public async update(uid: string, officeEntity: OfficeRessource): Promise<Offices> {
return this.officeRepository.update(uid, officeEntity);
}
}