package {{basePackage}}.service;

import {{basePackage}}.dto.{{ModuleName}}DTO;
import java.util.List;

/**
 * {{ModuleName}} 服务接口 — 定义 {{moduleName}} 模块的业务操作契约。
 */
public interface {{ModuleName}}Service {

    /**
     * 查询所有 {{moduleName}}。
     * @return {{moduleName}} DTO 列表
     */
    List<{{ModuleName}}DTO> list();

    /**
     * 根据 ID 查询 {{moduleName}}。
     * @param id 主键标识
     * @return {{moduleName}} DTO，不存在时返回 null
     */
    {{ModuleName}}DTO getById(Long id);

    /**
     * 创建 {{moduleName}}。
     * @param dto 创建请求数据
     * @return 创建后的 {{moduleName}} DTO
     */
    {{ModuleName}}DTO create({{ModuleName}}DTO dto);

    /**
     * 更新 {{moduleName}}。
     * @param id  主键标识
     * @param dto 更新请求数据
     * @return 更新后的 {{moduleName}} DTO
     */
    {{ModuleName}}DTO update(Long id, {{ModuleName}}DTO dto);

    /**
     * 删除 {{moduleName}}。
     * @param id 主键标识
     */
    void delete(Long id);
}
