package com.younike.system.service;

import java.util.List;
import com.younike.system.domain.OrderGoods;
import com.younike.system.domain.ServerUser;
import com.younike.system.domain.vo.OrderGoodsVo;

/**
 * 订单商品Service接口
 * 
 * @author elev
 * @date 2022-01-06
 */
public interface IOrderGoodsService {
    /**
     * 查询订单商品
     * 
     * @param orderId 订单商品主键
     * @return 订单商品
     */
    OrderGoods selectOrderGoodsByOrderId(Long orderId);

    /**
     * 查询订单商品列表
     * 
     * @param orderGoods 订单商品
     * @return 订单商品集合
     */
    List<OrderGoods> selectOrderGoodsList(OrderGoods orderGoods);

    /**
     * 新增订单商品
     * 
     * @param orderGoods 订单商品
     * @return 结果
     */
    int insertOrderGoods(OrderGoods orderGoods);

    /**
     * 修改订单商品
     * 
     * @param orderGoods 订单商品
     * @return 结果
     */
    int updateOrderGoods(OrderGoods orderGoods);

    /**
     * 批量删除订单商品
     * 
     * @param orderIds 需要删除的订单商品主键集合
     * @return 结果
     */
    int deleteOrderGoodsByOrderIds(Long[] orderIds);

    /**
     * 删除订单商品信息
     * 
     * @param orderId 订单商品主键
     * @return 结果
     */
    int deleteOrderGoodsByOrderId(Long orderId);

    /**
     * 获取服务端首页本周数值
     */
    OrderGoodsVo getNowWeekDate(OrderGoodsVo orderGoodsVo);

    /**
     * 获取订单列表
     * @param orderGoodsVo
     * @return
     */
    List<OrderGoodsVo> getOrderList(OrderGoodsVo orderGoodsVo);

    /**
     * 获取订单详情
     */
    OrderGoodsVo getOrderInfo(OrderGoodsVo orderGoodsVo);

    OrderGoodsVo getOrderNumDate(OrderGoodsVo orderGoodsVo);
}
