package gencsv import ( "business-engine/internal/domain" "encoding/csv" "io" "os" "github.com/gocarina/gocsv" ) func GeneratePayrollStatementCSV(stmts []domain.PayrollStatement) error { file, err := os.Create("payroll_statement.csv") if err != nil { return err } defer file.Close() gocsv.SetCSVWriter(func(out io.Writer) *gocsv.SafeCSVWriter { writer := csv.NewWriter(out) writer.Comma = ';' return gocsv.NewSafeCSVWriter(writer) }) if err := gocsv.MarshalFile(&stmts, file); err != nil { return err } return nil }