Files
accounting/pkg/invoice/resource.go

35 lines
603 B
Go

package invoice
import (
"io"
"log/slog"
"code.gitea.io/sdk/gitea"
)
type Repo struct {
Owner string `json:"owner"`
Repo string `json:"repo"`
}
type Service struct {
log *slog.Logger
gitea giteaClient
pdf pdfGenerator
}
func New(log *slog.Logger, gitea giteaClient, pdf pdfGenerator) *Service {
return &Service{
log: log,
gitea: gitea,
pdf: pdf,
}
}
type giteaClient interface {
ListRepoIssues(owner, repo string, opt gitea.ListIssueOption) ([]*gitea.Issue, *gitea.Response, error)
}
type pdfGenerator interface {
HtmlToPdf(html string) (pdf io.ReadCloser, err error)
}