package com.ruoyi.generator.service;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.generator.mapper.TemplateFileMapper;
import com.ruoyi.generator.domain.TemplateFile;

/**
 * 代码模板文件Service业务层处理
 *
 * @author ruoyi
 * @date YOUR_CURRENT_DATE
 */
@Service
public class TemplateFileServiceImpl implements ITemplateFileService
{
    @Autowired
    private TemplateFileMapper templateFileMapper;

    /**
     * 查询代码模板文件
     *
     * @param templateFileId 代码模板文件主键
     * @return 代码模板文件
     */
    @Override
    public TemplateFile selectTemplateFileByTemplateFileId(Long templateFileId)
    {
        return templateFileMapper.selectTemplateFileByTemplateFileId(templateFileId);
    }

    /**
     * 查询代码模板文件列表
     *
     * @param templateFile 代码模板文件
     * @return 代码模板文件
     */
    @Override
    public List<TemplateFile> selectTemplateFileList(TemplateFile templateFile)
    {
        return templateFileMapper.selectTemplateFileList(templateFile);
    }

    /**
     * 根据模板ID查询代码模板文件列表
     *
     * @param templateId 模板ID
     * @return 代码模板文件集合
     */
    @Override
    public List<TemplateFile> selectTemplateFilesByTemplateId(Long templateId)
    {
        return templateFileMapper.selectTemplateFilesByTemplateId(templateId);
    }

    /**
     * 新增代码模板文件
     *
     * @param templateFile 代码模板文件
     * @return 结果
     */
    @Override
    public int insertTemplateFile(TemplateFile templateFile)
    {
        templateFile.setCreateTime(DateUtils.getNowDate());
        return templateFileMapper.insertTemplateFile(templateFile);
    }

    /**
     * 修改代码模板文件
     *
     * @param templateFile 代码模板文件
     * @return 结果
     */
    @Override
    public int updateTemplateFile(TemplateFile templateFile)
    {
        templateFile.setUpdateTime(DateUtils.getNowDate());
        return templateFileMapper.updateTemplateFile(templateFile);
    }

    /**
     * 批量删除代码模板文件
     *
     * @param templateFileIds 需要删除的代码模板文件主键
     * @return 结果
     */
    @Override
    public int deleteTemplateFileByTemplateFileIds(Long[] templateFileIds)
    {
        return templateFileMapper.deleteTemplateFileByTemplateFileIds(templateFileIds);
    }

    /**
     * 删除代码模板文件信息
     *
     * @param templateFileId 代码模板文件主键
     * @return 结果
     */
    @Override
    public int deleteTemplateFileByTemplateFileId(Long templateFileId)
    {
        return templateFileMapper.deleteTemplateFileByTemplateFileId(templateFileId);
    }

     /**
     * 根据模板ID删除代码模板文件
     *
     * @param templateId 模板ID
     * @return 结果
     */
    @Override
    public int deleteTemplateFilesByTemplateId(Long templateId)
    {
        return templateFileMapper.deleteTemplateFilesByTemplateId(templateId);
    }
} 