package com.bonus.canteen.core.menu.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.bonus.canteen.core.menu.dto.MenuNutritionAllDTO;
import com.bonus.canteen.core.menu.dto.MenuNutritionDTO;
import com.bonus.canteen.core.menu.entity.MenuNutrition;
import com.bonus.canteen.core.menu.utils.NutritionEntity;
import com.bonus.canteen.core.menu.vo.MenuNutritionAllVO;
import com.bonus.canteen.core.menu.vo.MenuNutritionPageVO;
import com.bonus.canteen.core.menu.vo.NutritionTypeVO;

import java.util.List;

public interface MenuNutritionService extends IService<MenuNutrition> {
   List<NutritionTypeVO> getNutritionTypeList();

   List<MenuNutritionAllVO> getMenuNutritionAllList(MenuNutritionAllDTO content);

   NutritionEntity getMenuNutritionByMaterialId(Long dishesId);

   MenuNutrition getByNutritionId(Long nutritionId);

   void addMenuNutrition(MenuNutritionDTO menuNutritionDTO);

   void updateMenuNutrition(MenuNutritionDTO menuNutritionDTO);

   Page<MenuNutritionPageVO> getMenuNutritionPage(MenuNutritionDTO dto);

   void removeByNutritionCode(Long nutritionId);

   List<NutritionEntity> selectNutritionWeightList(Long dishesId);

   MenuNutrition getByNutritionName(String materialName);
}
