Billing docs improvement + build opt
This commit is contained in:
@@ -9,6 +9,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/shopspring/decimal"
|
||||
"github.com/tech/sendico/billing/documents/internal/content"
|
||||
"github.com/tech/sendico/billing/documents/renderer"
|
||||
"github.com/tech/sendico/billing/documents/storage/model"
|
||||
)
|
||||
@@ -17,6 +18,11 @@ type templateRenderer struct {
|
||||
tpl *template.Template
|
||||
}
|
||||
|
||||
type acceptanceTemplateData struct {
|
||||
model.ActSnapshot
|
||||
Content content.AcceptanceTemplateContent
|
||||
}
|
||||
|
||||
func newTemplateRenderer(path string) (*templateRenderer, error) {
|
||||
data, err := os.ReadFile(path)
|
||||
if err != nil {
|
||||
@@ -38,7 +44,12 @@ func newTemplateRenderer(path string) (*templateRenderer, error) {
|
||||
|
||||
func (r *templateRenderer) Render(snapshot model.ActSnapshot) ([]renderer.Block, error) {
|
||||
var buf bytes.Buffer
|
||||
if err := r.tpl.Execute(&buf, snapshot); err != nil {
|
||||
data := acceptanceTemplateData{
|
||||
ActSnapshot: snapshot,
|
||||
Content: content.AcceptanceTemplate,
|
||||
}
|
||||
|
||||
if err := r.tpl.Execute(&buf, data); err != nil {
|
||||
return nil, fmt.Errorf("execute template: %w", err)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user