package cn.estsh.i3plus.core.api.iservice.busi;

import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.model.platform.LabelTemplateModel;
import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplate;
import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplateParam;
import io.swagger.annotations.ApiOperation;

import java.util.List;

/**
 * @Description : 打印模板服务接口
 * @Reference :
 * @Author : siliter
 * @Date : 2019-03-18 9:25
 * @Modify :
 **/
public interface ISysLabelTemplateService {

    /**
     * 添加打印模板
     * @param sysLabelTemplate
     */
    @ApiOperation(value = "添加打印模板")
    void insertSysLabelTemplate(SysLabelTemplate sysLabelTemplate);

    /**
     * 删除打印模板
     * @param id
     */
    @ApiOperation(value = "删除打印模板")
    void deleteSysLabelTemplateById(Long id);

    /**
     * 修改打印模板
     * @param sysLabelTemplate
     */
    @ApiOperation(value = "修改打印模板")
    void updateSysLabelTemplate(SysLabelTemplate sysLabelTemplate);

    /**
     * 查询全部打印模板
     */
    @ApiOperation(value = "查询全部打印模板")
    List<SysLabelTemplate> ListSysLabelTemplate();

    /**
     * 根据id查询打印模板
     * @param id
     */
    @ApiOperation(value = "根据id查询打印模板")
    SysLabelTemplate getSysLabelTemplateById(Long id);

    /**
     *  打印模板复杂查询分页排序
      * @param sysLabelTemplate
     * @param pager
     * @return
     */
    @ApiOperation(value = "打印模板复杂查询分页排序")
    ListPager querySysLabelTemplateByPager(SysLabelTemplate sysLabelTemplate, Pager pager);

    /**
     * 根据模板编号查询模板参数
     */
    @ApiOperation(value = "根据模板编号查询模板参数")
    List<SysLabelTemplateParam> listSysLabelTemplateParam(String labelTemplateId);

    /**
     * 根据模板编号查询模板信息
     */
    @ApiOperation(value = "根据模板编号查询模板信息")
    LabelTemplateModel getLabelTemplateInfoById(String labelTemplateId);
}
