auth
This commit is contained in:
@@ -6,24 +6,24 @@ import { CategoryRepository } from '../repositories/category.repository';
|
||||
import { EntityManager } from '@mikro-orm/postgresql';
|
||||
import { RequiredEntityData } from '@mikro-orm/core';
|
||||
import { Food } from '../entities/food.entity';
|
||||
import { FoodMessage } from 'src/common/enums/message.enum';
|
||||
// import { RestRepository } from 'src/modules/restaurants/repositories/rest.repository';
|
||||
import { FoodMessage, RestMessage } from 'src/common/enums/message.enum';
|
||||
import { RestRepository } from 'src/modules/restaurants/repositories/rest.repository';
|
||||
|
||||
@Injectable()
|
||||
export class FoodService {
|
||||
constructor(
|
||||
private readonly foodRepository: FoodRepository,
|
||||
private readonly categoryRepository: CategoryRepository,
|
||||
// private readonly restRepository: RestRepository,
|
||||
private readonly restRepository: RestRepository,
|
||||
private readonly em: EntityManager,
|
||||
) {}
|
||||
|
||||
async create(createFoodDto: CreateFoodDto): Promise<Food> {
|
||||
async create(restId: string, createFoodDto: CreateFoodDto): Promise<Food> {
|
||||
const { categoryIds, ...rest } = createFoodDto;
|
||||
// const restaurant = await this.restRepository.findOne({ id: createFoodDto.restId });
|
||||
// if (!restaurant) {
|
||||
// throw new NotFoundException(RestMessage.NOT_FOUND);
|
||||
// }
|
||||
const restaurant = await this.restRepository.findOne({ id: restId });
|
||||
if (!restaurant) {
|
||||
throw new NotFoundException(RestMessage.NOT_FOUND);
|
||||
}
|
||||
// prepare data with defaults for required fields so repository.create typing is satisfied
|
||||
const data: RequiredEntityData<Food> = {
|
||||
// boolean/day flags
|
||||
@@ -48,9 +48,10 @@ export class FoodService {
|
||||
points: rest.points ?? 0,
|
||||
prepareTime: rest.prepareTime ?? 0,
|
||||
images: rest.images ?? undefined,
|
||||
} as RequiredEntityData<Food>;
|
||||
restaurant: restaurant,
|
||||
};
|
||||
|
||||
const food = this.foodRepository.create(data) as Food;
|
||||
const food = this.foodRepository.create(data);
|
||||
if (!food) {
|
||||
throw new Error('Failed to create food entity');
|
||||
}
|
||||
@@ -65,8 +66,8 @@ export class FoodService {
|
||||
return food;
|
||||
}
|
||||
|
||||
findAll(dto: FindFoodsDto) {
|
||||
return this.foodRepository.findAllPaginated(dto);
|
||||
findAll(restId: string, dto: FindFoodsDto) {
|
||||
return this.foodRepository.findAllPaginated(restId, dto);
|
||||
}
|
||||
|
||||
findOne(id: string) {
|
||||
|
||||
Reference in New Issue
Block a user