Skip to content

Commit

Permalink
Updating to latest GOBL
Browse files Browse the repository at this point in the history
  • Loading branch information
samlown committed Jan 9, 2024
1 parent e9bbc21 commit 4e1746f
Show file tree
Hide file tree
Showing 7 changed files with 68 additions and 13 deletions.
26 changes: 26 additions & 0 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Lint
on:
push:
tags:
- v*
branches:
- main
pull_request:
jobs:
lint:
name: golangci-lint
runs-on: ubuntu-latest

steps:
- uses: actions/setup-go@v4
with:
go-version: "1.18"
cache: false

- name: Check out code
uses: actions/checkout@v3

- name: Lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.55
24 changes: 24 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Test Go
on: [push]
jobs:
test:
name: Test
runs-on: ubuntu-latest

steps:
- name: Set up Go
uses: actions/setup-go@v1
with:
go-version: "1.19"
id: go

- name: Check out code
uses: actions/checkout@v2

- name: Install Dependencies
env:
GOPROXY: https://proxy.golang.org,direct
run: go mod download

- name: Test
run: go test -tags unit -race ./...
8 changes: 4 additions & 4 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module github.com/invopop/gobl.ksef
go 1.20

require (
github.com/invopop/gobl v0.61.0
github.com/invopop/gobl v0.65.1
github.com/joho/godotenv v1.5.1
github.com/magefile/mage v1.15.0
github.com/spf13/cobra v1.7.0
Expand All @@ -30,12 +30,12 @@ require (
github.com/Masterminds/semver/v3 v3.2.1 // indirect
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
github.com/google/uuid v1.3.0 // indirect
github.com/invopop/jsonschema v0.9.0 // indirect
github.com/invopop/jsonschema v0.12.0 // indirect
github.com/invopop/validation v0.3.0 // indirect
github.com/lestrrat-go/libxml2 v0.0.0-20201123224832-e6d9de61b80d
github.com/square/go-jose/v3 v3.0.0-20200630053402-0a67ce9b0693 // indirect
github.com/stretchr/testify v1.8.4
golang.org/x/crypto v0.9.0 // indirect
golang.org/x/crypto v0.17.0 // indirect
)

// replace github.com/invopop/gobl => ../gobl
// replace github.com/invopop/gobl => ../gobl
8 changes: 7 additions & 1 deletion go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,12 @@ github.com/invopop/gobl v0.60.0 h1:BRnpt3FzOmIpCDstJfQLaapOCLhBeqIjpsdsgQTtaB4=
github.com/invopop/gobl v0.60.0/go.mod h1:kt3cQtFSOhPCYVlgiaRI267syjI+X1VRW7QHTmitc+Q=
github.com/invopop/gobl v0.61.0 h1:gFLX/VTCrn3BH5QMk7mR58lCTPIV1EDJdXEni3Zi5+g=
github.com/invopop/gobl v0.61.0/go.mod h1:kt3cQtFSOhPCYVlgiaRI267syjI+X1VRW7QHTmitc+Q=
github.com/invopop/gobl v0.65.1 h1:hiyEIXXoQkA1hr8KKyKvULC6WgF+nzqkulmuUDDbe1k=
github.com/invopop/gobl v0.65.1/go.mod h1:Jau+ajdfUCBPVH9VMor6aeYq3S9o7HuSNm07QxxxomE=
github.com/invopop/jsonschema v0.9.0 h1:m1Fe5PN4X9V7P1TCF+pA8Xly3Vj3pY905klC++8oOpM=
github.com/invopop/jsonschema v0.9.0/go.mod h1:uMhbTEOXoPcOKzdYRfk914W6UTGA/cVcgEQxXh1MJ7g=
github.com/invopop/jsonschema v0.12.0 h1:6ovsNSuvn9wEQVOyc72aycBMVQFKz7cPdMJn10CvzRI=
github.com/invopop/jsonschema v0.12.0/go.mod h1:ffZ5Km5SWWRAIN6wbDXItl95euhFz2uON45H2qjYt+0=
github.com/invopop/validation v0.3.0 h1:o260kbjXzoBO/ypXDSSrCLL7SxEFUXBsX09YTE9AxZw=
github.com/invopop/validation v0.3.0/go.mod h1:qIBG6APYLp2Wu3/96p3idYjP8ffTKVmQBfKiZbw0Hts=
github.com/invopop/yaml v0.1.0 h1:YW3WGUoJEXYfzWBjn00zIlrw7brGVD0fUKRYDPAPhrc=
Expand Down Expand Up @@ -78,6 +82,8 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.9.0 h1:LF6fAI+IutBocDJ2OT0Q1g8plpYljMZ4+lty+dsqw3g=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.10.0 h1:X2//UzNDwYmtCLn7To6G58Wr6f5ahEAQgKNzv9Y951M=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
Expand All @@ -92,4 +98,4 @@ gopkg.in/xmlpath.v1 v1.0.0-20140413065638-a146725ea6e7 h1:zibSPXbkfB1Dwl76rJgLa6
gopkg.in/xmlpath.v1 v1.0.0-20140413065638-a146725ea6e7/go.mod h1:wo0SW5T6XqIKCCAge330Cd5sm+7VI6v85OrQHIk50KM=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
Binary file added gobl.ksef
Binary file not shown.
13 changes: 6 additions & 7 deletions invoice.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,8 @@ package ksef
/**/
import (
"github.com/invopop/gobl/bill"
"github.com/invopop/gobl/num"
"github.com/invopop/gobl/regimes/common"
"github.com/invopop/gobl/regimes/pl"
"github.com/invopop/gobl/tax"
)

type Inv struct {
Expand Down Expand Up @@ -89,24 +88,24 @@ func NewInv(inv *bill.Invoice) *Inv {
}

ss := inv.ScenarioSummary()
Inv.InvoiceType = ss.Codes[pl.KeyFacturaEInvoiceClass].String()
Inv.InvoiceType = ss.Codes[pl.KeyFAVATInvoiceType].String()
if inv.OperationDate != nil {
Inv.CompletionDate = inv.OperationDate.String()
}
for _, cat := range inv.Totals.Taxes.Categories {
if cat.Code != common.TaxCategoryVAT {
if cat.Code != tax.CategoryVAT {
continue
}

for _, rate := range cat.Rates {
if rate.Percent != nil {
if rate.Percent.Amount.Compare(num.MakePercentage(15, 0).Amount) == 1 {
if rate.Percent.Amount.Float64() >= 0.15 {
Inv.StandardRateNetSale = rate.Base.Rescale(cu).String()
Inv.StandardRateTax = rate.Amount.Rescale(cu).String()
} else if rate.Percent.Amount.Compare(num.MakePercentage(6, 0).Amount) == 1 {
} else if rate.Percent.Amount.Float64() >= 0.06 {
Inv.ReducedRateNetSale = rate.Base.Rescale(cu).String()
Inv.ReducedRateTax = rate.Amount.Rescale(cu).String()
} else if rate.Percent.Amount.Compare(num.MakePercentage(4, 0).Amount) == 1 {
} else if rate.Percent.Amount.Float64() >= 0.04 {
Inv.SuperReducedRateNetSale = rate.Base.Rescale(cu).String()
Inv.SuperReducedRateTax = rate.Amount.Rescale(cu).String()
}
Expand Down
2 changes: 1 addition & 1 deletion payments.go
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ func findPaymentMeansCode(key cbc.Key) (string, error) {
return "", fmt.Errorf("FormaPlatnosci Code not found for payment method key '%s'", key)
}

code := keyDef.Map[pl.KeyFA_VATPaymentType]
code := keyDef.Map[pl.KeyFAVATPaymentType]
if code == "" {
return "", fmt.Errorf("FormaPlatnosci Code not found for payment method key '%s'", key)
}
Expand Down

0 comments on commit 4e1746f

Please sign in to comment.