diff options
Diffstat (limited to 'invoice/controller.go')
-rw-r--r-- | invoice/controller.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/invoice/controller.go b/invoice/controller.go index 02bbaf5..7260834 100644 --- a/invoice/controller.go +++ b/invoice/controller.go @@ -101,6 +101,19 @@ func handleSaveInvoice (ctx *gin.Context) { userId := uId.(uint) invoice.UserID = userId + // if invoice number is 0, generate one! + if invoice.InvoiceNumber == 0 { + n, err := getNewInvoiceNumber(invoice.UserID) + + if err != nil { + ctx.Error(err) + ctx.Abort() + return + } + + invoice.InvoiceNumber = n + } + err := invoice.upsert() if err != nil { ctx.Error(err) |