package com.gxwebsoft.shop.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.shop.entity.ExpressTemplate;
import com.gxwebsoft.shop.entity.OrderGoods;
import com.gxwebsoft.shop.entity.UserAddress;
import com.gxwebsoft.shop.param.ExpressTemplateParam;

import java.math.BigDecimal;
import java.util.List;

/**
 * 运费模板Service
 *
 * @author 科技小王子
 * @since 2024-11-05 18:03:28
 */
public interface ExpressTemplateService extends IService<ExpressTemplate> {

    /**
     * 分页关联查询
     *
     * @param param 查询参数
     * @return PageResult<ExpressTemplate>
     */
    PageResult<ExpressTemplate> pageRel(ExpressTemplateParam param);

    /**
     * 关联查询全部
     *
     * @param param 查询参数
     * @return List<ExpressTemplate>
     */
    List<ExpressTemplate> listRel(ExpressTemplateParam param);

    /**
     * 根据id查询
     *
     * @param id 
     * @return ExpressTemplate
     */
    ExpressTemplate getByIdRel(Integer id);

    BigDecimal calExpressAmount(List<OrderGoods> orderGoodsList, UserAddress userAddress);
}
