package com.erp.print.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.erp.print.dto.request.PrintTemplateRequest;
import com.erp.common.core.model.PageResponse;
import com.erp.print.entity.PrintTemplate;

public interface PrintTemplateService {

    PageResponse<PrintTemplate> listTemplates(Integer page, Integer limit, String templateType, String keyword);

    PrintTemplate getTemplateById(Long id);

    PrintTemplate getTemplateByCode(String templateCode);

    PrintTemplate createTemplate(PrintTemplateRequest request);

    PrintTemplate updateTemplate(PrintTemplateRequest request);

    void deleteTemplate(Long id);

    void setDefaultTemplate(Long id);

    IPage<PrintTemplate> selectTemplatePage(com.baomidou.mybatisplus.extension.plugins.pagination.Page<PrintTemplate> page, String templateType);
}
