src/request/request.service.ts
Methods |
constructor(requestModel: Model<RequestDocument>)
|
||||||
|
Defined in src/request/request.service.ts:12
|
||||||
|
Parameters :
|
| Async create | |||||||||
create(createRequestDto: CreateRequestDto, email: string)
|
|||||||||
|
Defined in src/request/request.service.ts:18
|
|||||||||
|
Parameters :
Returns :
Promise<RequestDocument>
|
| Async findAll | ||||||
findAll(filterFundDTO: FilterRequestDto)
|
||||||
|
Defined in src/request/request.service.ts:30
|
||||||
|
Parameters :
Returns :
Promise<RequestDocument[]>
|
| Async findByIds | ||||||
findByIds(ids: string[])
|
||||||
|
Defined in src/request/request.service.ts:34
|
||||||
|
Parameters :
Returns :
Promise<RequestDocument[]>
|
| Async findOne | ||||||
findOne(id: string)
|
||||||
|
Defined in src/request/request.service.ts:37
|
||||||
|
Parameters :
Returns :
unknown
|
| Async update | |||||||||
update(id: string, updateRequestDto: UpdateRequestDto)
|
|||||||||
|
Defined in src/request/request.service.ts:41
|
|||||||||
|
Parameters :
Returns :
Promise<RequestDocument>
|
import { Model } from "mongoose";
import { InjectModel } from "@nestjs/mongoose";
import { Injectable } from "@nestjs/common";
import { CreateRequestDto } from "./dto/create-request.dto";
import { UpdateRequestDto } from "./dto/update-request.dto";
import { Request, RequestDocument } from "./schemas/request.schema";
import { Status } from "./entities/request.entity";
import { FilterRequestDto } from "./dto/filter-requesr.dto";
@Injectable()
export class RequestService {
constructor(
@InjectModel(Request.name)
private readonly requestModel: Model<RequestDocument>,
) {}
async create(
createRequestDto: CreateRequestDto,
email: string,
): Promise<RequestDocument> {
const request = new this.requestModel({
...createRequestDto,
submitterEmail: email,
status: Status.review,
});
return request.save();
}
async findAll(filterFundDTO: FilterRequestDto): Promise<RequestDocument[]> {
return this.requestModel.find(filterFundDTO);
}
async findByIds(ids: string[]): Promise<RequestDocument[]> {
return this.requestModel.find({ _id: { $in: ids } });
}
async findOne(id: string) {
return this.requestModel.findById(id);
}
async update(
id: string,
updateRequestDto: UpdateRequestDto,
): Promise<RequestDocument> {
return this.requestModel.findByIdAndUpdate(id, updateRequestDto);
}
}