package com.ruoyi.web.modules.freight.service;

import java.util.List;
import java.util.Map;
import com.ruoyi.web.modules.freight.dto.FreightTemplateSaveDTO;
import com.ruoyi.web.modules.freight.vo.FreightTemplateDetailVO;
import com.ruoyi.web.modules.freight.vo.FreightTemplateListVO;
import com.ruoyi.web.modules.freight.vo.FreightTemplateOptionVO;

/**
 * 运费模版 Service
 */
public interface IFreightTemplateService
{
    List<FreightTemplateListVO> selectTemplateList(String keyword);

    FreightTemplateDetailVO selectTemplateDetail(Long templateId);

    int insertTemplate(FreightTemplateSaveDTO dto, String operator);

    int updateTemplate(FreightTemplateSaveDTO dto, String operator);

    Map<String, Object> setDefaultTemplate(Long templateId, String operator);

    void deleteTemplateByIds(Long[] templateIds, String operator);

    List<FreightTemplateOptionVO> selectOptions();

    List<FreightTemplateOptionVO> selectOptionsByShopId(Long shopId);

    FreightTemplateDetailVO selectDetailForGoods(Long templateId, Long shopId);

    FreightTemplateOptionVO getDefaultTemplate(Long shopId);
}
