PromptTemplateService.java 1.5 KB
// ai/service/PromptTemplateService.java
package com.aigeo.ai.service;

import com.aigeo.ai.entity.PromptTemplate;
import com.aigeo.ai.repository.PromptTemplateRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Optional;

@Service
public class PromptTemplateService {
    
    @Autowired
    private PromptTemplateRepository promptTemplateRepository;
    
    public List<PromptTemplate> getAllTemplates() {
        return promptTemplateRepository.findAll();
    }
    
    public List<PromptTemplate> getTemplatesByCompanyId(Integer companyId) {
        return promptTemplateRepository.findByCompanyId(companyId);
    }
    
    public List<PromptTemplate> getSystemTemplates() {
        return promptTemplateRepository.findByCompanyIdIsNull();
    }
    
    public List<PromptTemplate> getActiveTemplates() {
        return promptTemplateRepository.findByIsActiveTrue();
    }
    
    public List<PromptTemplate> getActiveTemplatesByCompanyId(Integer companyId) {
        return promptTemplateRepository.findByCompanyIdAndIsActiveTrue(companyId);
    }
    
    public Optional<PromptTemplate> getTemplateById(Integer id) {
        return promptTemplateRepository.findById(id);
    }
    
    public PromptTemplate saveTemplate(PromptTemplate template) {
        return promptTemplateRepository.save(template);
    }
    
    public void deleteTemplate(Integer id) {
        promptTemplateRepository.deleteById(id);
    }
}