@tomei/rental
Version:
Tomei Rental Package
65 lines (58 loc) • 1.88 kB
text/typescript
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
import { HirerChangeRequestNewHirerModel } from '../../models/hirer-change-request-new-hirer.entity';
export class HirerChangeRequestNewHirerRepository
extends RepositoryBase<HirerChangeRequestNewHirerModel>
implements IRepositoryBase<HirerChangeRequestNewHirerModel>
{
constructor() {
super(HirerChangeRequestNewHirerModel);
}
async findByPk(
id: string,
transaction?: any,
): Promise<HirerChangeRequestNewHirerModel | null> {
try {
const result = await HirerChangeRequestNewHirerModel.findByPk(id, {
transaction: transaction,
});
return result;
} catch (error) {
throw new Error(`An Error occured when fetching : ${error.message}`);
}
}
async delete(newHirerId: string, dbTransaction?: any) {
try {
const options = {
where: {
NewHirerId: newHirerId,
},
transaction: dbTransaction,
};
await HirerChangeRequestNewHirerModel.destroy(options);
} catch (error) {
throw new Error(`An Error occured when delete : ${error.message}`);
}
}
async findAndCountAll(options?: any) {
try {
let hcrNewHirers: any;
if (options) {
hcrNewHirers =
await HirerChangeRequestNewHirerModel.findAndCountAll(options);
} else {
hcrNewHirers = await HirerChangeRequestNewHirerModel.findAndCountAll();
}
return hcrNewHirers;
} catch (error) {
throw new Error(`An Error occured when retriving : ${error.message}`);
}
}
async findAll(options: any): Promise<HirerChangeRequestNewHirerModel[]> {
try {
const result = await HirerChangeRequestNewHirerModel.findAll(options);
return result;
} catch (error) {
throw new Error(`An Error occured when fetching : ${error.message}`);
}
}
}