package services import ( "os" "path/filepath" "time" "github.com/pdfcpu/pdfcpu/pkg/api" ) type FileConverter struct { } func NewFileConverter() *FileConverter { return &FileConverter{} } func (c *FileConverter) MergeFiles(filenames []string) (string, error) { timestamp := time.Now().Format("20060102-150405") mergedFilename := "merged-" + timestamp + ".pdf" mergedFile := "/home/backend/var/documents/" + mergedFilename outputDir := filepath.Dir(mergedFile) if err := os.MkdirAll(outputDir, 0755); err != nil { return "", err } _ = os.Remove(mergedFile) config := api.LoadConfiguration() if err := api.MergeCreateFile(filenames, mergedFile, false, config); err != nil { return "", err } return mergedFilename, nil }