package com.jeesharp.business.modules.food.service;

import com.jeesharp.business.modules.food.entity.FoodMealOrder;
import com.jeesharp.business.modules.food.vo.FoodMealOrderQueryVO;
import com.jeesharp.framework.mybatis.core.service.BaseInterface;
import com.jeesharp.framework.pojo.Page;

import java.util.List;

public interface FoodMealOrderService extends BaseInterface<FoodMealOrder, FoodMealOrderQueryVO> {

    FoodMealOrder lockById(String id, String tenantCode);

    FoodMealOrder lockByTradeOrderId(String tradeOrderId);

    FoodMealOrder lockByUnifiedOrderId(String unifiedOrderId);

    FoodMealOrder lockByTradeCenterOrderId(String tradeCenterOrderId);

    List<FoodMealOrder> listActiveByMemberIdAndMenuId(String memberId, String menuId, List<String> orderStatuses);

    Page<FoodMealOrder> findOrderPage(Page<FoodMealOrder> page, FoodMealOrderQueryVO query);

    void insertOrder(FoodMealOrder order);

    void updateOrder(FoodMealOrder order);
}
